[*] Binary protection state of libgstreamer-1.0.so.0.1803.0

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


[*] Function strcpy tear down of libgstreamer-1.0.so.0.1803.0

    ; assembly                                                   | /* r2dec pseudo code output */
                                                                 | /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/libgstreamer-1.0.so.0.1803.0 @ 0x2409c */
                                                                 | #include <stdint.h>
                                                                 |  
    ; (fcn) fcn.0002409c ()                                      | void fcn_0002409c (int16_t arg_1h, 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_4ch, int16_t arg_54h, int16_t arg_60h, int16_t arg_128h, uint32_t arg1, int16_t arg2) {
                                                                 |     int16_t var_1h;
                                                                 |     int16_t var_0h;
                                                                 |     int16_t var_4h;
                                                                 |     int16_t var_8h;
                                                                 |     int16_t var_ch;
                                                                 |     int16_t var_10h;
                                                                 |     int16_t var_14h;
                                                                 |     int16_t var_18h;
                                                                 |     int16_t var_1ch;
                                                                 |     int16_t var_20h;
                                                                 |     r0 = arg1;
                                                                 |     r1 = arg2;
    0x0002409c svcmi 0xf0e92d                                    |     __asm ("svcmi 0xf0e92d");
    0x000240a0 subw sp, sp, 0xa8c                                |     __asm ("subw sp, sp, 0xa8c");
    0x000240a4 strd r1, r0, [sp, 0x28]                           |     __asm ("strd r1, r0, [sp, 0x28]");
    0x000240a8 movs r3, 0                                        |     r3 = 0;
    0x000240aa mov r4, r3                                        |     r4 = r3;
    0x000240ac add r2, sp, 0x60                                  |     r2 += arg_60h;
    0x000240ae ldr.w r1, [pc, 0xb3c]                             |     
    0x000240b2 mov r7, r2                                        |     r7 = r2;
    0x000240b4 ldr.w sb, [pc, 0xb38]                             |     
    0x000240b8 add.w sl, sp, 0x128                               |     sl += arg_128h;
    0x000240bc ldr.w r5, [pc, 0xb34]                             |     
    0x000240c0 mov fp, r2                                        |     
    0x000240c2 add r1, pc                                        |     r1 = 0x48cb4;
    0x000240c4 str r3, [sp, 0x20]                                |     var_20h = r3;
    0x000240c6 str r1, [sp, 0x10]                                |     var_10h = r1;
    0x000240c8 add sb, pc                                        |     sb = 0x48cbc;
    0x000240ca ldr.w r1, [pc, 0xb2c]                             |     
    0x000240ce add r5, pc                                        |     r5 = 0x48cc6;
    0x000240d0 strb.w r3, [sp, 0x60]                             |     *(arg_60h) = r3;
    0x000240d4 movs r3, 0xc8                                     |     r3 = 0xc8;
    0x000240d6 mov r8, r3                                        |     r8 = r3;
    0x000240d8 str r2, [sp, 0x14]                                |     var_14h = r2;
    0x000240da add r1, pc                                        |     r1 = 0x48cd8;
    0x000240dc mvn r2, 1                                         |     r2 = ~1;
    0x000240e0 str r1, [sp, 0x24]                                |     *(arg_24h) = r1;
    0x000240e2 ldr.w r1, [pc, 0xb18]                             |     
    0x000240e6 str r5, [sp, 0x34]                                |     *(arg_34h) = r5;
    0x000240e8 str.w sl, [sp, 0xc]                               |     __asm ("str.w sl, [var_ch]");
    0x000240ec add r1, pc                                        |     r1 = 0x48cee;
    0x000240ee str r2, [sp, 8]                                   |     var_8h = r2;
    0x000240f0 str r1, [sp, 0x30]                                |     *(arg_30h) = r1;
                                                                 | label_1:
    0x000240f2 ldr r3, [sp, 0x10]                                |     r3 = var_10h;
    0x000240f4 add r3, r4                                        |     r3 += r4;
    0x000240f6 ldrsb.w r5, [r3, 0x18]                            |     r5 = *((r3 + 0x18));
    0x000240fa cmn.w r5, 0x14                                    |     
    0x000240fc lsrs r4, r2, 0x1c                                 |     r4 = r2 >> 0x1c;
    0x000240fe mov r6, r5                                        |     r6 = r5;
                                                                 |     if (r4 != r2) {
    0x00024100 beq 0x24176                                       |         
    0x00024102 ldr r3, [sp, 8]                                   |         r3 = var_8h;
    0x00024104 adds r3, 2                                        |         r3 += 2;
                                                                 |         if (r3 == 2) {
    0x00024106 beq.w 0x24408                                     |             goto label_41;
                                                                 |         }
                                                                 | label_5:
    0x0002410a ldr r3, [sp, 8]                                   |         r3 = var_8h;
    0x0002410c cmp r3, 0                                         |         
                                                                 |         if (r3 <= 0) {
    0x0002410e ble.w 0x2438a                                     |             goto label_42;
                                                                 |         }
    0x00024112 cmp.w r3, 0x100                                   |         
                                                                 |         if (r3 == 0x100) {
    0x00024116 beq.w 0x24442                                     |             goto label_43;
                                                                 |         }
    0x0002411a cmp.w r3, 0x10a                                   |         
    0x0002411e itt gt                                            |         
                                                                 |         if (r3 <= 0x10a) {
    0x00024120 addgt r6, r5, 2                                   |             r6 = r5 + 2;
                                                                 |         }
                                                                 |         if (r3 <= 0x10a) {
    0x00024122 movgt r2, 2                                       |             r2 = 2;
                                                                 |         }
                                                                 |         if (r3 <= 0x10a) {
    0x00024124 bgt 0x24136                                       |             
    0x00024126 ldr.w r3, [pc, 0xad8]                             |             
    0x0002412a ldr r2, [sp, 8]                                   |             r2 = var_8h;
    0x0002412c add r3, pc                                        |             r3 = 0x48d32;
    0x0002412e add r3, r2                                        |             r3 += r2;
    0x00024130 ldrsb.w r2, [r3, 0x40]                            |             r2 = *((r3 + 0x40));
    0x00024134 adds r6, r5, r2                                   |             r6 = r5 + r2;
                                                                 |         }
                                                                 | label_2:
    0x00024136 cmp r6, 0x24                                      |         
                                                                 |         if (r6 > 0x24) {
    0x00024138 bhi 0x241e6                                       |             goto label_44;
                                                                 |         }
    0x0002413a ldr.w r3, [pc, 0xac8]                             |         
    0x0002413e add r3, pc                                        |         r3 = 0x48d48;
    0x00024140 add r3, r6                                        |         r3 += r6;
    0x00024142 ldrsb.w r1, [r3, 0x14c]                           |         r1 = *((r3 + 0x14c));
    0x00024146 cmp r1, r2                                        |         
                                                                 |         if (r1 != r2) {
    0x00024148 bne 0x241e6                                       |             goto label_44;
                                                                 |         }
    0x0002414a ldrsb.w r4, [r3, 0x174]                           |         r4 = *((r3 + 0x174));
    0x0002414e cmp r4, 0                                         |         
    0x00024150 mov r3, r4                                        |         r3 = r4;
    0x00024152 it le                                             |         
                                                                 |         if (r4 <= 0) {
    0x00024154 rsble r6, r4, 0                                   |             __asm ("rsble r6, r4, 0");
                                                                 |         }
                                                                 |         if (r4 <= 0) {
    0x00024156 ble 0x24180                                       |             goto label_45;
                                                                 |         }
    0x00024158 ldr r2, [sp, 0x20]                                |         r2 = var_20h;
                                                                 |         if (r2 != 0) {
    0x0002415a cbz r2, 0x24160                                   |             
    0x0002415c subs r2, 1                                        |             r2--;
    0x0002415e str r2, [sp, 0x20]                                |             var_20h = r2;
                                                                 |         }
    0x00024160 mvn r2, 1                                         |         r2 = ~1;
    0x00024164 add.w r5, sl, 0xc                                 |         r5 = sl + 0xc;
    0x00024168 str r2, [sp, 8]                                   |         var_8h = r2;
    0x0002416a add r2, sp, 0x54                                  |         r2 += arg_54h;
    0x0002416c ldm r2, {r0, r1, r2}                              |         r0 = *(r2);
                                                                 |         r1 = *((r2 + 4));
                                                                 |         r2 = *((r2 + 8));
    0x0002416e mov sl, r5                                        |         sl = r5;
    0x00024170 stm.w r5, {r0, r1, r2}                            |         *(r5) = r0;
                                                                 |         *((r5 + 4)) = r1;
                                                                 |         *((r5 + 8)) = r2;
    0x00024174 b 0x242d0                                         |         goto label_6;
                                                                 |     }
    0x00024176 ldrsb.w r6, [r3, 0x19c]                           |     r6 = *((r3 + 0x19c));
    0x0002417a cmp r6, 0                                         |     
                                                                 |     if (r6 == 0) {
    0x0002417c beq.w 0x24392                                     |         goto label_46;
                                                                 |     }
                                                                 |     do {
                                                                 | label_45:
    0x00024180 ldr.w r3, [pc, 0xa84]                             |         
    0x00024184 add r3, pc                                        |         r3 = 0x48d90;
    0x00024186 add r3, r6                                        |         r3 += r6;
    0x00024188 ldrsb.w r5, [r3, 0x1c4]                           |         r5 = *((r3 + 0x1c4));
    0x0002418c subs r3, r6, 2                                    |         r3 = r6 - 2;
    0x0002418e rsb.w r2, r5, 1                                   |         r2 = 1 - r5;
    0x00024192 add.w r2, r2, r2, lsl 1                           |         r2 += (r2 << 1);
    0x00024196 add.w r1, sl, r2, lsl 2                           |         r1 = sl + (r2 << 2);
    0x0002419a ldr.w r4, [sl, r2, lsl 2]                         |         offset_0 = r2 << 2;
                                                                 |         r4 = *((sl + offset_0));
    0x0002419e ldr r2, [r1, 4]                                   |         r2 = *((r1 + 4));
    0x000241a0 str r2, [sp, 0x18]                                |         var_18h = r2;
    0x000241a2 ldr r2, [r1, 8]                                   |         r2 = *((r1 + 8));
    0x000241a4 str r2, [sp, 0x1c]                                |         var_1ch = r2;
    0x000241a6 cmp r3, 0x1b                                      |         
                                                                 |         if (r3 > 0x1b) {
    0x000241a8 bhi 0x2427e                                       |             goto label_7;
                                                                 |         }
                                                                 |         /* switch table (29 cases) at 0x241ae */
    0x000241aa tbh [pc, r3, lsl 1]                               |         __asm ("tbh [pc, r3, lsl 1]");
                                                                 | label_44:
    0x000241e6 ldr.w r3, [pc, 0xa24]                             |         
    0x000241ea add r3, pc                                        |         r3 = 0x48dfc;
    0x000241ec add r3, r4                                        |         r3 += r4;
    0x000241ee ldrsb.w r6, [r3, 0x19c]                           |         r6 = *((r3 + 0x19c));
    0x000241f2 cmp r6, 0                                         |         
    0x000241f4 bne 0x24180                                       |         
                                                                 |     } while (r6 != 0);
                                                                 | label_3:
    0x000241f6 ldr r3, [sp, 8]                                   |     r3 = var_8h;
    0x000241f8 cmp.w r3, 0x10a                                   |     
    0x000241fc itett ls                                          |     
                                                                 |     if (r3 > 0x10a) {
    0x000241fe ldrls r2, [sp, 0x30]                              |         r2 = *(arg_30h);
                                                                 |     }
                                                                 |     if (r3 <= 0x10a) {
    0x00024200 movhi r0, 2                                       |         r0 = 2;
                                                                 |     }
                                                                 |     if (r3 > 0x10a) {
    0x00024202 addls r3, r2, r3                                  |         r3 = r2 + r3;
                                                                 |     }
                                                                 |     if (r3 <= 0x10a) {
    0x00024204 ldrsbls r0, [r3, 0x40]                            |         __asm ("ldrsbls r0, [r3, 0x40]");
                                                                 |     }
    0x00024208 ldr r3, [sp, 0x20]                                |     r3 = var_20h;
    0x0002420a cmp r3, 3                                         |     
                                                                 |     if (r3 != 3) {
    0x0002420c bne.w 0x2439a                                     |         goto label_47;
                                                                 |     }
    0x0002420e strh r5, [r0, 6]                                  |     *((r0 + 6)) = r5;
    0x00024210 ldr r3, [sp, 8]                                   |     r3 = var_8h;
    0x00024212 cmp r3, 0                                         |     
                                                                 |     if (r3 > 0) {
    0x00024214 bgt.w 0x24432                                     |         goto label_48;
                                                                 |     }
                                                                 |     if (r3 == 0) {
    0x00024218 beq.w 0x24b52                                     |         goto label_49;
                                                                 |     }
    0x0002421c mov.w r3, -1                                      |     r3 = -1;
    0x00024220 ldr r6, [sp, 0x24]                                |     r6 = *(arg_24h);
    0x00024222 str r3, [sp, 8]                                   |     var_8h = r3;
    0x00024224 b 0x24244                                         |     
                                                                 |     while (r5 == 0x14) {
                                                                 | label_0:
    0x00024226 cmp fp, r7                                        |         
                                                                 |         if (fp == r7) {
    0x00024228 beq.w 0x2439e                                     |             goto label_50;
                                                                 |         }
    0x0002422c ldrsb.w r0, [r4, 0x224]                           |         r0 = *((r4 + 0x224));
    0x00024230 sub.w sl, sl, 0xc                                 |         sl -= 0xc;
    0x00024234 bl 0x23fd4                                        |         fcn_00023fd4 (r0);
    0x00024238 ldrsb r4, [fp, -0x1]!                             |         r4 = *((fp -= 0x1));
    0x0002423c add.w r3, sb, r4                                  |         r3 = sb + r4;
    0x00024240 ldrsb.w r5, [r3, 0x18]                            |         r5 = *((r3 + 0x18));
                                                                 | label_4:
    0x00024244 adds r3, r5, 1                                    |         r3 = r5 + 1;
    0x00024246 adds r5, 0x14                                     |         r5 += 0x14;
    0x00024248 add r4, sb                                        |         r4 += sb;
    0x0002424a mov r1, sl                                        |         r1 = sl;
    0x0002424c beq 0x24226                                       |         
                                                                 |     }
    0x0002424e cmp r3, 0x24                                      |     
    0x00024250 add.w r2, r6, r3                                  |     r2 = r6 + r3;
                                                                 |     if (r3 > 0x24) {
    0x00024254 bhi 0x24226                                       |         goto label_0;
                                                                 |     }
    0x00024256 ldrsb.w r3, [r2, 0x14c]                           |     r3 = *((r2 + 0x14c));
    0x0002425a cmp r3, 1                                         |     
                                                                 |     if (r3 != 1) {
    0x0002425c bne 0x24226                                       |         goto label_0;
                                                                 |     }
    0x0002425e ldrsb.w r3, [r2, 0x174]                           |     r3 = *((r2 + 0x174));
    0x00024262 cmp r3, 0                                         |     
                                                                 |     if (r3 <= 0) {
    0x00024264 ble 0x24226                                       |         goto label_0;
                                                                 |     }
    0x00024266 movs r2, 3                                        |     r2 = 3;
    0x00024268 add.w r5, sl, 0xc                                 |     r5 = sl + 0xc;
    0x0002426c str r2, [sp, 0x20]                                |     var_20h = r2;
    0x0002426e add r2, sp, 0x54                                  |     r2 += arg_54h;
    0x00024270 ldm r2, {r0, r1, r2}                              |     r0 = *(r2);
                                                                 |     r1 = *((r2 + 4));
                                                                 |     r2 = *((r2 + 8));
    0x00024272 mov sl, r5                                        |     sl = r5;
    0x00024274 mov r4, r3                                        |     r4 = r3;
    0x00024276 stm.w r5, {r0, r1, r2}                            |     *(r5) = r0;
                                                                 |     *((r5 + 4)) = r1;
                                                                 |     *((r5 + 8)) = r2;
    0x0002427a b 0x242d0                                         |     goto label_6;
                                                                 | label_9:
    0x0002427c movs r4, 0                                        |     r4 = 0;
                                                                 | label_7:
    0x0002427e add.w r3, r5, r5, lsl 1                           |     r3 = r5 + (r5 << 1);
    0x00024282 ldr r2, [sp, 0x18]                                |     r2 = var_18h;
    0x00024284 sub.w fp, fp, r5                                  |     
    0x00024288 sub.w r3, sl, r3, lsl 2                           |     r3 = sl - (r3 << 2);
    0x0002428c str r2, [r3, 0x10]                                |     *((r3 + 0x10)) = r2;
    0x0002428e add.w sl, r3, 0xc                                 |     sl = r3 + 0xc;
    0x00024292 ldr r2, [sp, 0x1c]                                |     r2 = var_1ch;
    0x00024294 str r4, [r3, 0xc]                                 |     *((r3 + 0xc)) = r4;
    0x00024296 str r2, [r3, 0x14]                                |     *((r3 + 0x14)) = r2;
    0x00024298 ldr.w r2, [pc, 0x974]                             |     
    0x0002429c ldrsb.w r0, [fp]                                  |     r0 = *(fp);
    0x000242a0 add r2, pc                                        |     r2 = 0x48eb4;
    0x000242a2 adds r3, r2, r6                                   |     r3 = r2 + r6;
    0x000242a4 ldrsb.w r3, [r3, 0x1e4]                           |     r3 = *((r3 + 0x1e4));
    0x000242a8 subs r3, 0x13                                     |     r3 -= 0x13;
    0x000242aa adds r1, r2, r3                                   |     r1 = r2 + r3;
    0x000242ac ldrsb.w r1, [r1, 0x204]                           |     r1 = *((r1 + 0x204));
    0x000242b0 add r1, r0                                        |     r1 += r0;
    0x000242b2 cmp r1, 0x24                                      |     
                                                                 |     if (r1 <= 0x24) {
    0x000242b4 bhi 0x242c2                                       |         
    0x000242b6 add r2, r1                                        |         r2 += r1;
    0x000242b8 ldrsb.w r1, [r2, 0x14c]                           |         r1 = *((r2 + 0x14c));
    0x000242bc cmp r1, r0                                        |         
                                                                 |         if (r1 == r0) {
    0x000242be beq.w 0x24414                                     |             goto label_51;
                                                                 |         }
                                                                 |     }
    0x000242c2 ldr.w r2, [pc, 0x950]                             |     
    0x000242c6 add r2, pc                                        |     r2 = 0x48ee0;
    0x000242c8 add r3, r2                                        |     r3 += r2;
    0x000242ca ldrsb.w r3, [r3, 0x214]                           |     r3 = *((r3 + 0x214));
    0x000242ce mov r4, r3                                        |     r4 = r3;
                                                                 | label_6:
    0x000242d0 strb.w r3, [fp, 1]                                |     *(arg_1h) = r3;
    0x000242d4 add.w r3, r8, -1                                  |     r3 = r8 + -1;
    0x000242d8 add.w fp, fp, 1                                   |     
    0x000242dc add r3, r7                                        |     r3 += r7;
    0x000242de cmp fp, r3                                        |     
                                                                 |     if (fp > r3) {
    0x000242e0 blo 0x24376                                       |         
    0x000242e2 sub.w r3, fp, r7                                  |         r3 = fp - r7;
    0x000242e6 mov r2, r3                                        |         r2 = r3;
    0x000242e8 str r3, [sp, 0x18]                                |         var_18h = r3;
    0x000242ea movw r3, 0x270f                                   |         r3 = 0x270f;
    0x000242ee adds r5, r2, 1                                    |         r5 = r2 + 1;
    0x000242f0 cmp r8, r3                                        |         
                                                                 |         if (r8 > r3) {
    0x000242f2 bgt.w 0x249ae                                     |             goto label_52;
                                                                 |         }
    0x000242f6 lsl.w r8, r8, 1                                   |         r8 <<= 1;
    0x000242fa movw r3, 0x2710                                   |         r3 = 0x2710;
    0x000242fe cmp r8, r3                                        |         
    0x00024300 it ge                                             |         
                                                                 |         if (r8 < r3) {
    0x00024302 movge r8, r3                                      |             r8 = r3;
                                                                 |         }
    0x00024304 add.w r0, r8, r8, lsl 1                           |         r0 = r8 + (r8 << 1);
    0x00024308 add.w r0, r8, r0, lsl 2                           |         r0 = r8 + (r0 << 2);
    0x0002430c adds r0, 0xb                                      |         r0 += 0xb;
    0x0002430e blx 0x20224                                       |         r0 = fcn_00020224 ();
    0x00024312 mov r6, r0                                        |         r6 = r0;
    0x00024314 cmp r0, 0                                         |         
                                                                 |         if (r0 == 0) {
    0x00024316 beq.w 0x249ae                                     |             goto label_52;
                                                                 |         }
    0x0002431a mov r2, r5                                        |         r2 = r5;
    0x0002431c mov r1, r7                                        |         r1 = r7;
    0x0002431e add.w r5, r5, r5, lsl 1                           |         r5 += (r5 << 1);
    0x00024322 blx 0x1fd64                                       |         fcn_0001fd64 ();
    0x00024326 movw r2, 0xaaab                                   |         
    0x0002432a lsl.w sl, r5, 2                                   |         sl = r5 << 2;
                                                                 |         /* if there is a right shift of 1, then it's a division by 1/3 */
    0x0002432e movt r2, 0xaaaa                                   |         r2 = 0xaaaaaaab;
    0x00024332 ldr r1, [sp, 0xc]                                 |         r1 = var_ch;
    0x00024334 add.w r5, r8, 0xb                                 |         r5 = r8 + 0xb;
    0x00024338 umull r2, r5, r2, r5                              |         r2:r5 = r2 * r5;
    0x0002433c mov r2, sl                                        |         r2 = sl;
    0x0002433e lsrs r5, r5, 3                                    |         r5 >>= 3;
    0x00024340 add.w r5, r5, r5, lsl 1                           |         r5 += (r5 << 1);
    0x00024344 add.w r5, r6, r5, lsl 2                           |         r5 = r6 + (r5 << 2);
    0x00024348 mov r0, r5                                        |         r0 = r5;
    0x0002434a blx 0x1fd64                                       |         fcn_0001fd64 ();
    0x0002434e ldr r3, [sp, 0x14]                                |         r3 = var_14h;
    0x00024350 cmp r7, r3                                        |         
                                                                 |         if (r7 != r3) {
    0x00024352 beq 0x2435a                                       |             
    0x00024354 mov r0, r7                                        |             r0 = r7;
    0x00024356 blx 0x1f97c                                       |             g_string_set_size ();
                                                                 |         }
    0x0002435a ldr r3, [sp, 0x18]                                |         r3 = var_18h;
    0x0002435c add.w r2, r8, -1                                  |         r2 = r8 + -1;
    0x00024360 add r2, r6                                        |         r2 += r6;
    0x00024362 sub.w sl, sl, 0xc                                 |         sl -= 0xc;
    0x00024366 add sl, r5                                        |         sl += r5;
    0x00024368 add r3, r6                                        |         r3 += r6;
    0x0002436a cmp r3, r2                                        |         
    0x0002436c mov fp, r3                                        |         
                                                                 |         if (r3 >= r2) {
    0x0002436e bhs.w 0x249a6                                     |             goto label_53;
                                                                 |         }
    0x00024372 mov r7, r6                                        |         r7 = r6;
    0x00024374 str r5, [sp, 0xc]                                 |         var_ch = r5;
                                                                 |     }
    0x00024376 cmp r4, 0x10                                      |     
                                                                 |     if (r4 != 0x10) {
    0x00024378 bne.w 0x240f2                                     |         goto label_1;
                                                                 |     }
    0x0002437c mov r4, fp                                        |     r4 = fp;
    0x0002437e movs r5, 0                                        |     r5 = 0;
    0x00024380 mov fp, r7                                        |     
                                                                 | label_14:
    0x00024382 ldr r3, [sp, 8]                                   |     r3 = var_8h;
    0x00024384 adds r3, 2                                        |     r3 += 2;
                                                                 |     if (r3 == 2) {
    0x00024386 beq 0x243d0                                       |         goto label_54;
                                                                 |     }
    0x00024388 b 0x243ac                                         |     goto label_55;
                                                                 | label_42:
    0x0002438a movs r3, 0                                        |     r3 = 0;
    0x0002438c mov r2, r3                                        |     r2 = r3;
    0x0002438e str r3, [sp, 8]                                   |     var_8h = r3;
    0x00024390 b 0x24136                                         |     goto label_2;
                                                                 | label_46:
    0x00024392 ldr r3, [sp, 8]                                   |     r3 = var_8h;
    0x00024394 adds r3, 2                                        |     r3 += 2;
                                                                 |     if (r3 != 2) {
    0x00024396 bne.w 0x241f6                                     |         goto label_3;
                                                                 |     }
                                                                 | label_47:
    0x0002439a ldr r6, [sp, 0x24]                                |     r6 = *(arg_24h);
    0x0002439c b 0x24244                                         |     goto label_4;
                                                                 | label_50:
    0x0002439e ldr r3, [sp, 8]                                   |     r3 = var_8h;
    0x000243a0 adds r3, 2                                        |     r3 += 2;
    0x000243a2 it eq                                             |     
                                                                 |     if (r3 != 2) {
    0x000243a4 moveq r5, 1                                       |         r5 = 1;
                                                                 |     }
                                                                 |     if (r3 == 2) {
    0x000243a6 beq 0x243f2                                       |         goto label_56;
                                                                 |     }
    0x000243a8 mov r4, fp                                        |     r4 = fp;
    0x000243aa movs r5, 1                                        |     r5 = 1;
                                                                 | label_55:
    0x000243ac ldr r2, [sp, 8]                                   |     r2 = var_8h;
    0x000243ae cmp.w r2, 0x10a                                   |     
    0x000243b2 itt hi                                            |     
                                                                 |     if (r2 <= 0x10a) {
    0x000243b4 movhi r3, 2                                       |         r3 = 2;
                                                                 |     }
                                                                 |     if (r2 <= 0x10a) {
    0x000243b6 strhi r3, [sp, 8]                                 |         var_8h = r3;
                                                                 |     }
                                                                 |     if (r2 <= 0x10a) {
    0x000243b8 bhi 0x243c8                                       |         
    0x000243ba ldr.w r3, [pc, 0x85c]                             |         
    0x000243be add r3, pc                                        |         r3 = 0x48fdc;
    0x000243c0 add r3, r2                                        |         r3 += r2;
    0x000243c2 ldrsb.w r3, [r3, 0x40]                            |         r3 = *((r3 + 0x40));
    0x000243c6 str r3, [sp, 8]                                   |         var_8h = r3;
                                                                 |     }
                                                                 | label_28:
    0x000243c8 ldr r0, [sp, 8]                                   |     r0 = var_8h;
    0x000243ca add r1, sp, 0x54                                  |     r1 += arg_54h;
    0x000243cc bl 0x23fd4                                        |     fcn_00023fd4 (r0);
    0x000243ce invalid                                           |     
                                                                 | label_54:
    0x000243d0 cmp r4, fp                                        |     
                                                                 |     if (r4 == fp) {
    0x000243d2 beq 0x243f2                                       |         goto label_56;
                                                                 |     }
    0x000243d4 ldr.w r6, [pc, 0x844]                             |     
    0x000243d8 add r6, pc                                        |     r6 = 0x48ff8;
                                                                 |     do {
    0x000243da ldrsb r3, [r4], -1                                |         r3 = *(r4);
                                                                 |         r4 += -1;
    0x000243de mov r1, sl                                        |         r1 = sl;
    0x000243e0 sub.w sl, sl, 0xc                                 |         sl -= 0xc;
    0x000243e4 add r3, r6                                        |         r3 += r6;
    0x000243e6 ldrsb.w r0, [r3, 0x224]                           |         r0 = *((r3 + 0x224));
    0x000243ea bl 0x23fd4                                        |         fcn_00023fd4 (r0);
    0x000243ee cmp r4, fp                                        |         
    0x000243f0 bne 0x243da                                       |         
                                                                 |     } while (r4 != fp);
                                                                 | label_56:
    0x000243f2 ldr r3, [sp, 0x14]                                |     r3 = var_14h;
    0x000243f4 cmp fp, r3                                        |     
                                                                 |     if (fp != r3) {
    0x000243f6 beq 0x243fe                                       |         
    0x000243f8 mov r0, fp                                        |         r0 = fp;
    0x000243fa blx 0x1f97c                                       |         g_string_set_size ();
                                                                 |     }
    0x000243fe mov r0, r5                                        |     r0 = r5;
    0x00024400 addw sp, sp, 0xa8c                                |     __asm ("addw sp, var_0h");
    0x00024404 pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}        |     
                                                                 | label_41:
    0x00024408 ldr r1, [sp, 0x2c]                                |     r1 = *(arg_2ch);
    0x0002440a add r0, sp, 0x54                                  |     r0 += arg_54h;
    0x0002440c bl 0x22bfc                                        |     fcn_00022bfc (r0, r1, r2, r3, r4, r5, r6);
    0x00024410 str r0, [sp, 8]                                   |     var_8h = r0;
    0x00024412 b 0x2410a                                         |     goto label_5;
                                                                 | label_51:
    0x00024414 ldrsb.w r3, [r2, 0x174]                           |     r3 = *((r2 + 0x174));
    0x00024418 mov r4, r3                                        |     r4 = r3;
    0x0002441a b 0x242d0                                         |     goto label_6;
    0x0002441c ldr r1, [sl, -0xc]                                |     r1 = *((sl - 0xc));
    0x00024420 ldr.w r0, [sl]                                    |     r0 = *(sl);
    0x00024424 blx 0x1fc58                                       |     r0 = g_value_set_uchar ();
    0x00024428 mov r4, r0                                        |     r4 = r0;
    0x0002442a b 0x2427e                                         |     goto label_7;
    0x0002442c ldr.w r4, [sl]                                    |     r4 = *(sl);
    0x00024430 b 0x2427e                                         |     goto label_7;
                                                                 | label_48:
    0x00024432 add r1, sp, 0x54                                  |     r1 += arg_54h;
    0x00024434 bl 0x23fd4                                        |     fcn_00023fd4 (r0);
    0x00024438 mvn r3, 1                                         |     r3 = ~1;
    0x0002443c ldr r6, [sp, 0x24]                                |     r6 = *(arg_24h);
    0x0002443e str r3, [sp, 8]                                   |     var_8h = r3;
    0x00024440 b 0x24244                                         |     goto label_4;
                                                                 | label_43:
    0x00024442 movw r3, 0x101                                    |     r3 = 0x101;
    0x00024446 ldr r6, [sp, 0x24]                                |     r6 = *(arg_24h);
    0x00024448 str r3, [sp, 8]                                   |     var_8h = r3;
    0x0002444a b 0x24244                                         |     goto label_4;
    0x0002444c movs r0, 0x1c                                     |     r0 = 0x1c;
    0x0002444e blx 0x1ff70                                       |     g_type_check_instance_is_a ();
    0x00024452 movs r3, 0                                        |     r3 = 0;
    0x00024454 mov r4, r0                                        |     r4 = r0;
    0x00024456 str r3, [r0]                                      |     *(r0) = r3;
    0x00024458 str r3, [r0, 4]                                   |     *((r0 + 4)) = r3;
    0x0002445a str r3, [r0, 8]                                   |     *((r0 + 8)) = r3;
    0x0002445c str r3, [r0, 0xc]                                 |     *((r0 + 0xc)) = r3;
    0x0002445e add.w r3, r0, 0x10                                |     r3 = r0 + 0x10;
    0x00024462 ldm.w sl, {r0, r1, r2}                            |     r0 = *(sl);
                                                                 |     r1 = *((sl + 4));
                                                                 |     r2 = *((sl + 8));
    0x00024466 stm.w r3, {r0, r1, r2}                            |     *(r3) = r0;
                                                                 |     *((r3 + 4)) = r1;
                                                                 |     *((r3 + 8)) = r2;
    0x0002446a b 0x2427e                                         |     goto label_7;
    0x0002446c ldr.w r4, [sl]                                    |     r4 = *(sl);
    0x00024470 ldr r0, [r4, 0x14]                                |     r0 = *((r4 + 0x14));
                                                                 |     if (r0 != 0) {
    0x00024472 cbz r0, 0x2448a                                   |         
    0x00024474 ldr r3, [sp, 0x28]                                |         r3 = *(arg_28h);
    0x00024476 ldr r3, [r3, 8]                                   |         r3 = *((r3 + 8));
                                                                 |         if (r3 != 0) {
    0x00024478 cbz r3, 0x24482                                   |             
    0x0002447a ldr r2, [r3]                                      |             r2 = *(r3);
    0x0002447c cmp r2, 0                                         |             
                                                                 |             if (r2 == 0) {
    0x0002447e beq.w 0x24bcc                                     |                 goto label_57;
                                                                 |             }
                                                                 |         }
                                                                 | label_29:
    0x00024482 blx 0x1f14c                                       |         fcn_0001f14c ();
    0x00024486 movs r3, 0                                        |         r3 = 0;
    0x00024488 str r3, [r4, 0x14]                                |         *((r4 + 0x14)) = r3;
                                                                 |     }
    0x0002448a ldr r0, [r4, 0x18]                                |     r0 = *((r4 + 0x18));
    0x0002448c cmp r0, 0                                         |     
                                                                 |     if (r0 == 0) {
    0x0002448e beq.w 0x2427e                                     |         goto label_7;
                                                                 |     }
    0x00024492 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024494 ldr r3, [r3, 8]                                   |     r3 = *((r3 + 8));
                                                                 |     if (r3 != 0) {
    0x00024496 cbz r3, 0x244a0                                   |         
    0x00024498 ldr r2, [r3]                                      |         r2 = *(r3);
    0x0002449a cmp r2, 0                                         |         
                                                                 |         if (r2 == 0) {
    0x0002449c beq.w 0x24c50                                     |             goto label_58;
                                                                 |         }
                                                                 |     }
                                                                 | label_30:
    0x000244a0 ldr.w r3, [pc, 0x77c]                             |     r3 = *(0x24c20);
    0x000244a4 ldr r2, [sp, 0x34]                                |     r2 = *(arg_34h);
    0x000244a6 ldr r1, [r2, r3]                                  |     r1 = *((r2 + r3));
    0x000244a8 movs r2, 0                                        |     r2 = 0;
    0x000244aa blx 0x200b4                                       |     g_initially_unowned_get_type ();
    0x000244ae ldr r0, [r4, 0x18]                                |     r0 = *((r4 + 0x18));
    0x000244b0 blx 0x1f330                                       |     fcn_0001f330 ();
    0x000244b4 movs r3, 0                                        |     r3 = 0;
    0x000244b6 str r3, [r4, 0x18]                                |     *((r4 + 0x18)) = r3;
    0x000244b8 b 0x2427e                                         |     goto label_7;
    0x000244ba ldr.w r3, [sl]                                    |     r3 = *(sl);
    0x000244be ldr r2, [sp, 0x28]                                |     r2 = *(arg_28h);
    0x000244c0 str r3, [r2]                                      |     *(r2) = r3;
    0x000244c2 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x000244c4 beq.w 0x24aaa                                     |         goto label_59;
                                                                 |     }
                                                                 | label_23:
    0x000244c8 ldr r4, [sp, 0x28]                                |     r4 = *(arg_28h);
    0x000244ca b 0x2427e                                         |     goto label_7;
    0x000244cc movs r0, 0x1c                                     |     r0 = 0x1c;
    0x000244ce blx 0x1ff70                                       |     g_type_check_instance_is_a ();
    0x000244d2 ldr.w r1, [sl]                                    |     r1 = *(sl);
    0x000244d6 movs r3, 0                                        |     r3 = 0;
    0x000244d8 mov r4, r0                                        |     r4 = r0;
    0x000244da str r3, [r0]                                      |     *(r0) = r3;
    0x000244dc str r3, [r0, 4]                                   |     *((r0 + 4)) = r3;
    0x000244de str r3, [r0, 8]                                   |     *((r0 + 8)) = r3;
    0x000244e0 str r3, [r0, 0xc]                                 |     *((r0 + 0xc)) = r3;
    0x000244e2 str r3, [r0, 0x10]                                |     *((r0 + 0x10)) = r3;
    0x000244e4 str r3, [r0, 0x14]                                |     *((r0 + 0x14)) = r3;
    0x000244e6 str r3, [r0, 0x18]                                |     *((r0 + 0x18)) = r3;
                                                                 |     if (r1 != 0) {
    0x000244e8 cbz r1, 0x24512                                   |         
    0x000244ea mov r0, r1                                        |         r0 = r1;
    0x000244ec str r1, [sp, 0x38]                                |         *(arg_38h) = r1;
    0x000244ee bl 0x26538                                        |         gst_object_ref ();
    0x000244f2 ldr r1, [sp, 0x38]                                |         r1 = *(arg_38h);
    0x000244f4 str r0, [r4, 4]                                   |         *((r4 + 4)) = r0;
    0x000244f6 mov r0, r1                                        |         r0 = r1;
    0x000244f8 bl 0x26538                                        |         gst_object_ref ();
    0x000244fc movs r3, 0                                        |         r3 = 0;
    0x000244fe ldr r1, [sp, 0x38]                                |         r1 = *(arg_38h);
    0x00024500 str r0, [r4, 0x10]                                |         *((r4 + 0x10)) = r0;
    0x00024502 mov r0, r3                                        |         r0 = r3;
    0x00024504 str r3, [r4, 0x14]                                |         *((r4 + 0x14)) = r3;
    0x00024506 str r3, [r4, 8]                                   |         *((r4 + 8)) = r3;
    0x00024508 str r3, [r4, 0x18]                                |         *((r4 + 0x18)) = r3;
    0x0002450a str r3, [r4, 0xc]                                 |         *((r4 + 0xc)) = r3;
    0x0002450c blx 0x1fc58                                       |         r0 = g_value_set_uchar ();
    0x00024510 mov r1, r0                                        |         r1 = r0;
                                                                 |     }
    0x00024512 str r1, [r4]                                      |     *(r4) = r1;
    0x00024514 b 0x2427e                                         |     goto label_7;
    0x00024516 ldr r4, [sl, -0xc]                                |     r4 = *((sl - 0xc));
    0x0002451a ldr.w r3, [sl]                                    |     r3 = *(sl);
    0x0002451c adds r0, 0                                        |     r0 += 0;
    0x0002451e str r3, [sp, 0x38]                                |     *(arg_38h) = r3;
    0x00024520 cmp r4, 0                                         |     
                                                                 |     if (r4 == 0) {
    0x00024522 beq.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x00024526 bl 0x55874                                        |     gst_preset_get_type ();
    0x0002452a ldr r3, [r4]                                      |     r3 = *(r4);
    0x0002452c mov r1, r0                                        |     r1 = r0;
                                                                 |     if (r3 != 0) {
    0x0002452e cbz r3, 0x24536                                   |         
    0x00024530 ldr r3, [r3]                                      |         r3 = *(r3);
    0x00024532 cmp r0, r3                                        |         
                                                                 |         if (r0 == r3) {
    0x00024534 beq 0x24542                                       |             goto label_60;
                                                                 |         }
                                                                 |     }
    0x00024536 mov r0, r4                                        |     r0 = r4;
    0x00024538 blx 0x20050                                       |     fcn_00020050 ();
    0x0002453a stc p8, c2, [sl]                                  |     __asm ("stc p8, c2, [sl]");
                                                                 |     if (r0 == r3) {
    0x0002453e beq.w 0x24b9e                                     |         goto label_61;
                                                                 |     }
                                                                 | label_60:
    0x00024542 ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x00024544 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x00024546 beq.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x0002454a ldrb r2, [r3]                                     |     r2 = *(r3);
    0x0002454c cmp r2, 0                                         |     
                                                                 |     if (r2 == 0) {
    0x0002454e beq.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x00024552 mov r1, r3                                        |     r1 = r3;
    0x00024554 mov.w ip, 0                                       |     
    0x00024558 b 0x24570                                         |     
                                                                 |     while (r2 != 0x5c) {
    0x0002455a cmp r2, 0x22                                      |         
    0x0002455c ldrb r0, [r3]                                     |         r0 = *(r3);
                                                                 |         if (r2 == 0x22) {
    0x0002455e beq.w 0x249b6                                     |             goto label_62;
                                                                 |         }
                                                                 | label_8:
    0x00024562 strb r0, [r1], 1                                  |         *(r1) = r0;
                                                                 |         r1++;
    0x00024566 adds r3, 1                                        |         r3++;
    0x00024568 ldrb r2, [r3]                                     |         r2 = *(r3);
    0x0002456a cmp r2, 0                                         |         
                                                                 |         if (r2 == 0) {
    0x0002456c beq.w 0x24b5a                                     |             goto label_63;
                                                                 |         }
    0x00024570 cmp r2, 0x5c                                      |         
    0x00024572 bne 0x2455a                                       |         
                                                                 |     }
    0x00024574 cmp.w ip, 0                                       |     
                                                                 |     if (ip == 0) {
    0x00024578 beq.w 0x249c2                                     |         goto label_64;
                                                                 |     }
    0x0002457c ldrb r0, [r3]                                     |     r0 = *(r3);
    0x0002457e b 0x24562                                         |     goto label_8;
    0x00024580 ldr r4, [sl, -0xc]                                |     r4 = *((sl - 0xc));
    0x00024584 ldr.w r1, [sl]                                    |     r1 = *(sl);
    0x00024588 ldr r0, [r4, 0x18]                                |     r0 = *((r4 + 0x18));
    0x0002458a blx 0x205e0                                       |     fcn_000205e0 ();
    0x0002458e str r0, [r4, 0x18]                                |     *((r4 + 0x18)) = r0;
    0x00024590 b 0x2427e                                         |     goto label_7;
    0x00024592 ldr.w r3, [sl]                                    |     r3 = *(sl);
    0x00024596 movs r0, 2                                        |     r0 = 2;
    0x00024598 mov r1, r3                                        |     r1 = r3;
    0x0002459a str r3, [sp, 0x3c]                                |     *(arg_3ch) = r3;
    0x0002459c movs r3, 0                                        |     r3 = 0;
    0x0002459e mov r2, r3                                        |     r2 = r3;
    0x000245a0 bl 0x69fe8                                        |     gst_element_make_from_uri ();
    0x000245a4 str r0, [sp, 0x38]                                |     *(arg_38h) = r0;
    0x000245a6 cmp r0, 0                                         |     
                                                                 |     if (r0 == 0) {
    0x000245a8 beq.w 0x24d8e                                     |         goto label_65;
                                                                 |     }
    0x000245ac movs r0, 0x1c                                     |     r0 = 0x1c;
    0x000245ae blx 0x1ff70                                       |     g_type_check_instance_is_a ();
    0x000245b2 movs r3, 0                                        |     r3 = 0;
    0x000245b4 mov r4, r0                                        |     r4 = r0;
    0x000245b6 str r3, [r0]                                      |     *(r0) = r3;
    0x000245b8 str r3, [r0, 4]                                   |     *((r0 + 4)) = r3;
    0x000245ba str r3, [r0, 8]                                   |     *((r0 + 8)) = r3;
    0x000245bc str r3, [r0, 0xc]                                 |     *((r0 + 0xc)) = r3;
    0x000245be str r3, [r0, 0x10]                                |     *((r0 + 0x10)) = r3;
    0x000245c0 str r3, [r0, 0x14]                                |     *((r0 + 0x14)) = r3;
    0x000245c2 str r3, [r0, 0x18]                                |     *((r0 + 0x18)) = r3;
    0x000245c4 ldr r0, [sp, 0x38]                                |     r0 = *(arg_38h);
    0x000245c6 bl 0x26538                                        |     gst_object_ref ();
    0x000245ca movs r3, 0                                        |     r3 = 0;
    0x000245cc str r0, [r4, 0x10]                                |     *((r4 + 0x10)) = r0;
    0x000245ce ldr r1, [sp, 0x38]                                |     r1 = *(arg_38h);
    0x000245d0 mov r0, r3                                        |     r0 = r3;
    0x000245d2 strd r3, r3, [r4, 0x14]                           |     __asm ("strd r3, r3, [r4, 0x14]");
    0x000245d6 blx 0x1fc58                                       |     g_value_set_uchar ();
    0x000245da str r0, [sp, 0x38]                                |     *(arg_38h) = r0;
                                                                 | label_37:
    0x000245dc ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x000245de str r3, [r4]                                      |     *(r4) = r3;
                                                                 | label_11:
    0x000245e0 ldr r0, [sp, 0x3c]                                |     r0 = *(arg_3ch);
    0x000245e2 blx 0x1f14c                                       |     fcn_0001f14c ();
    0x000245e6 b 0x2427e                                         |     goto label_7;
    0x000245e8 ldr r3, [sl, -0x24]                               |     r3 = *((sl - 0x24));
    0x000245ec movs r1, 0                                        |     r1 = 0;
    0x000245ee ldr r4, [sl, -0xc]                                |     r4 = *((sl - 0xc));
    0x000245f2 mov r0, r3                                        |     r0 = r3;
    0x000245f4 str r3, [sp, 0x3c]                                |     *(arg_3ch) = r3;
    0x000245f6 bl 0x3dcb0                                        |     gst_element_factory_make ();
    0x000245fa str r0, [sp, 0x38]                                |     *(arg_38h) = r0;
    0x000245fc cmp r4, 0                                         |     
                                                                 |     if (r4 == 0) {
    0x000245fe beq.w 0x24a82                                     |         goto label_66;
                                                                 |     }
                                                                 | label_22:
    0x00024602 ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x00024604 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x00024606 beq.w 0x24c8e                                     |         goto label_67;
                                                                 |     }
    0x0002460a ldr r3, [r4]                                      |     r3 = *(r4);
                                                                 |     if (r3 == 0) {
    0x0002460c cbz r3, 0x2462a                                   |         goto label_68;
                                                                 |     }
    0x0002460e strd r5, r4, [sp, 0x40]                           |     __asm ("strd r5, r4, [sp, 0x40]");
    0x00024612 mov r4, r3                                        |     r4 = r3;
    0x00024614 ldr r5, [sp, 0x38]                                |     r5 = *(arg_38h);
                                                                 |     do {
    0x00024616 ldr r1, [r4]                                      |         r1 = *(r4);
    0x00024618 mov r0, r5                                        |         r0 = r5;
    0x0002461a bl 0x29e28                                        |         gst_bin_add ();
    0x0002461e ldr r4, [r4, 4]                                   |         r4 = *((r4 + 4));
    0x00024620 cmp r4, 0                                         |         
    0x00024622 bne 0x24616                                       |         
                                                                 |     } while (r4 != 0);
    0x00024624 ldrd r5, r4, [sp, 0x40]                           |     __asm ("ldrd r5, r4, [arg_40h]");
    0x00024628 ldr r3, [r4]                                      |     r3 = *(r4);
                                                                 | label_68:
    0x0002462a mov r0, r3                                        |     r0 = r3;
    0x0002462c blx 0x1f330                                       |     fcn_0001f330 ();
    0x00024630 ldr r1, [sp, 0x38]                                |     r1 = *(arg_38h);
    0x00024632 movs r0, 0                                        |     r0 = 0;
    0x00024634 blx 0x1fc58                                       |     g_value_set_uchar ();
    0x00024638 ldr r3, [sl, -0x18]                               |     r3 = *((sl - 0x18));
    0x0002463c str r0, [r4]                                      |     *(r4) = r0;
    0x0002463e str r3, [sp, 0x40]                                |     *(arg_40h) = r3;
                                                                 |     if (r3 == 0) {
    0x00024640 cbz r3, 0x24664                                   |         goto label_33;
                                                                 |     }
    0x00024642 strd r5, r7, [sp, 0x44]                           |     __asm ("strd r5, r7, [sp, 0x44]");
    0x00024646 ldr r5, [sp, 0x38]                                |     r5 = *(arg_38h);
    0x00024648 ldr r7, [sp, 0x28]                                |     r7 = *(arg_28h);
    0x0002464a str r4, [sp, 0x4c]                                |     *(arg_4ch) = r4;
    0x0002464c mov r4, r3                                        |     r4 = r3;
                                                                 |     do {
    0x0002464e ldr r0, [r4]                                      |         r0 = *(r4);
    0x00024650 mov r2, r7                                        |         r2 = r7;
    0x00024652 mov r1, r5                                        |         r1 = r5;
    0x00024654 bl 0x23ca4                                        |         fcn_00023ca4 (r0, r1, r2);
    0x00024658 ldr r4, [r4, 4]                                   |         r4 = *((r4 + 4));
    0x0002465a cmp r4, 0                                         |         
    0x0002465c bne 0x2464e                                       |         
                                                                 |     } while (r4 != 0);
    0x0002465e ldrd r5, r7, [sp, 0x44]                           |     __asm ("ldrd r5, r7, [arg_44h]");
    0x00024662 ldr r4, [sp, 0x4c]                                |     r4 = *(arg_4ch);
                                                                 | label_33:
    0x00024664 ldr r0, [sp, 0x40]                                |     r0 = *(arg_40h);
    0x00024666 blx 0x1f330                                       |     fcn_0001f330 ();
    0x0002466a ldr r0, [sp, 0x3c]                                |     r0 = *(arg_3ch);
    0x0002466c blx 0x1f14c                                       |     fcn_0001f14c ();
    0x00024670 b 0x2427e                                         |     goto label_7;
    0x00024672 ldr r2, [sl, -0x30]                               |     r2 = *((sl - 0x30));
    0x00024676 ldr r3, [sl, -0x24]                               |     r3 = *((sl - 0x24));
    0x0002467a ldr r4, [sl, -0xc]                                |     r4 = *((sl - 0xc));
    0x0002467e str r2, [sp, 0x3c]                                |     *(arg_3ch) = r2;
    0x00024680 adds r2, 0x10                                     |     r2 += 0x10;
    0x00024682 ldm r2, {r0, r1, r2}                              |     r0 = *(r2);
                                                                 |     r1 = *((r2 + 4));
                                                                 |     r2 = *((r2 + 8));
    0x00024684 add.w ip, r3, 0xc                                 |     
    0x00024688 str r3, [sp, 0x38]                                |     *(arg_38h) = r3;
    0x0002468a stm.w r3, {r0, r1, r2}                            |     *(r3) = r0;
                                                                 |     *((r3 + 4)) = r1;
                                                                 |     *((r3 + 8)) = r2;
    0x0002468e adds r1, r4, 4                                    |     r1 = r4 + 4;
    0x00024690 ldm r1, {r0, r1, r2}                              |     r0 = *(r1);
                                                                 |     r1 = *((r1 + 4));
                                                                 |     r2 = *((r1 + 8));
    0x00024692 stm.w ip, {r0, r1, r2}                            |     *(ip) = r0;
                                                                 |     *((ip + 4)) = r1;
                                                                 |     *((ip + 8)) = r2;
    0x00024696 ldr r0, [sl, -0x18]                               |     r0 = *((sl - 0x18));
    0x0002469a ldr r1, [r3, 0x14]                                |     r1 = *((r3 + 0x14));
    0x0002469c blx 0x205e0                                       |     fcn_000205e0 ();
    0x000246a0 ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x000246a2 str r0, [r3, 0x14]                                |     *((r3 + 0x14)) = r0;
    0x000246a4 ldr r3, [r3]                                      |     r3 = *(r3);
    0x000246a6 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x000246a8 beq.w 0x24b10                                     |         goto label_69;
                                                                 |     }
                                                                 | label_26:
    0x000246ac ldr r2, [sp, 0x38]                                |     r2 = *(arg_38h);
    0x000246ae ldr r3, [r2, 0xc]                                 |     r3 = *((r2 + 0xc));
    0x000246b0 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x000246b2 beq.w 0x24a3c                                     |         goto label_70;
                                                                 |     }
                                                                 | label_17:
    0x000246b6 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x000246b8 ldr r1, [sp, 0x38]                                |     r1 = *(arg_38h);
    0x000246ba ldr r0, [r3, 4]                                   |     r0 = *((r3 + 4));
    0x000246bc blx 0x1f9e4                                       |     fcn_0001f9e4 ();
    0x000246c0 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x000246c2 str r0, [r3, 4]                                   |     *((r3 + 4)) = r0;
                                                                 | label_18:
    0x000246c4 ldr r3, [sp, 0x3c]                                |     r3 = *(arg_3ch);
    0x000246c6 adds r3, 4                                        |     r3 += 4;
    0x000246c8 ldm.w r3, {r0, r1, r2}                            |     r0 = *(r3);
                                                                 |     r1 = *((r3 + 4));
                                                                 |     r2 = *((r3 + 8));
    0x000246cc adds r3, r4, 4                                    |     r3 = r4 + 4;
    0x000246ce stm.w r3, {r0, r1, r2}                            |     *(r3) = r0;
                                                                 |     *((r3 + 4)) = r1;
                                                                 |     *((r3 + 8)) = r2;
    0x000246d2 ldr r3, [sp, 0x3c]                                |     r3 = *(arg_3ch);
    0x000246d4 ldr r1, [r4]                                      |     r1 = *(r4);
    0x000246d6 ldr r0, [r3]                                      |     r0 = *(r3);
    0x000246d8 blx 0x205e0                                       |     fcn_000205e0 ();
    0x000246dc ldr r1, [sp, 0x3c]                                |     r1 = *(arg_3ch);
    0x000246de str r0, [r4]                                      |     *(r4) = r0;
    0x000246e0 movs r0, 0x1c                                     |     r0 = 0x1c;
    0x000246e2 blx 0x208ec                                       |     fcn_000208ec ();
    0x000246e6 ldr.w r1, [sl]                                    |     r1 = *(sl);
    0x000246e8 asrs r0, r0, 0x20                                 |     r0 >>= 0x20;
    0x000246ea ldr r0, [r4, 0x18]                                |     r0 = *((r4 + 0x18));
    0x000246ec blx 0x205e0                                       |     fcn_000205e0 ();
    0x000246f0 str r0, [r4, 0x18]                                |     *((r4 + 0x18)) = r0;
    0x000246f2 b 0x2427e                                         |     goto label_7;
    0x000246f4 ldr r3, [sl, -0xc]                                |     r3 = *((sl - 0xc));
    0x000246f8 ldm.w sl, {r0, r1, r2}                            |     r0 = *(sl);
                                                                 |     r1 = *((sl + 4));
                                                                 |     r2 = *((sl + 8));
    0x000246fc ldr r4, [sl, -0x18]                               |     r4 = *((sl - 0x18));
    0x00024700 add.w ip, r3, 0xc                                 |     
    0x00024704 str r3, [sp, 0x38]                                |     *(arg_38h) = r3;
    0x00024706 stm.w ip, {r0, r1, r2}                            |     *(ip) = r0;
                                                                 |     *((ip + 4)) = r1;
                                                                 |     *((ip + 8)) = r2;
    0x0002470a add.w r3, r4, 0x10                                |     r3 = r4 + 0x10;
    0x0002470e ldm.w r3, {r0, r1, r2}                            |     r0 = *(r3);
                                                                 |     r1 = *((r3 + 4));
                                                                 |     r2 = *((r3 + 8));
    0x00024712 ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x00024714 stm.w r3, {r0, r1, r2}                            |     *(r3) = r0;
                                                                 |     *((r3 + 4)) = r1;
                                                                 |     *((r3 + 8)) = r2;
    0x00024718 cmp r0, 0                                         |     
                                                                 |     if (arg_24h == ) {
    0x0002471a beq.w 0x24ad2                                     |         goto label_71;
                                                                 |     }
                                                                 | label_24:
    0x0002471e ldr r2, [sp, 0x38]                                |     r2 = *(arg_38h);
    0x00024720 ldr r3, [r2, 0xc]                                 |     r3 = *((r2 + 0xc));
    0x00024722 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x00024724 beq.w 0x24a5a                                     |         goto label_72;
                                                                 |     }
                                                                 | label_19:
    0x00024728 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x0002472a ldr r1, [sp, 0x38]                                |     r1 = *(arg_38h);
    0x0002472c ldr r0, [r3, 4]                                   |     r0 = *((r3 + 4));
    0x0002472e blx 0x1f9e4                                       |     fcn_0001f9e4 ();
    0x00024732 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024734 str r0, [r3, 4]                                   |     *((r3 + 4)) = r0;
                                                                 | label_20:
    0x00024736 movs r3, 0                                        |     r3 = 0;
    0x00024738 strd r3, r3, [r4, 0x10]                           |     __asm ("strd r3, r3, [r4, 0x10]");
    0x0002473c str r3, [r4, 0x18]                                |     *((r4 + 0x18)) = r3;
    0x0002473e b 0x2427e                                         |     goto label_7;
    0x00024740 ldr.w r3, [sl]                                    |     r3 = *(sl);
    0x00024744 movs r1, 0                                        |     r1 = 0;
    0x00024746 mov r0, r3                                        |     r0 = r3;
    0x00024748 str r3, [sp, 0x38]                                |     *(arg_38h) = r3;
    0x0002474a bl 0x3dcb0                                        |     r0 = gst_element_factory_make ();
    0x0002474e mov r4, r0                                        |     r4 = r0;
    0x00024750 cmp r0, 0                                         |     
                                                                 |     if (r0 == 0) {
    0x00024752 beq.w 0x24d10                                     |         goto label_73;
                                                                 |     }
                                                                 | label_10:
    0x00024756 ldr r0, [sp, 0x38]                                |     r0 = *(arg_38h);
    0x00024758 blx 0x1f14c                                       |     fcn_0001f14c ();
    0x0002475c b 0x2427e                                         |     goto label_7;
    0x0002475e ldr r4, [sl, -0xc]                                |     r4 = *((sl - 0xc));
    0x00024762 ldr.w r0, [sl]                                    |     r0 = *(sl);
    0x00024766 ldr r2, [sp, 0x28]                                |     r2 = *(arg_28h);
    0x00024768 mov r1, r4                                        |     r1 = r4;
    0x0002476a bl 0x23ca4                                        |     fcn_00023ca4 (r0, r1, r2);
    0x0002476e b 0x2427e                                         |     goto label_7;
    0x00024770 ldr.w r0, [pc, 0x4b0]                             |     
    0x00024774 add r0, pc                                        |     r0 = 0x4939c;
    0x00024776 blx 0x1f560                                       |     r0 = fcn_0001f560 ();
    0x0002477a mov r4, r0                                        |     r4 = r0;
    0x0002477c b 0x2427e                                         |     goto label_7;
    0x0002477e ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024780 ldr r4, [sl, -0xc]                                |     r4 = *((sl - 0xc));
    0x00024784 ldr r3, [r3, 8]                                   |     r3 = *((r3 + 8));
    0x00024786 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x00024788 beq.w 0x2427e                                     |         goto label_7;
                                                                 |     }
    0x0002478c ldr r2, [r3]                                      |     r2 = *(r3);
    0x0002478e cmp r2, 0                                         |     
                                                                 |     if (r2 != 0) {
    0x00024790 bne.w 0x2427e                                     |         goto label_7;
                                                                 |     }
    0x00024794 strd r3, r2, [sp, 0x38]                           |     __asm ("strd r3, r2, [sp, 0x38]");
    0x00024798 bl 0x7a948                                        |     gst_parse_error_quark ();
    0x0002479c ldrd r3, r2, [sp, 0x38]                           |     __asm ("ldrd r3, r2, [arg_38h]");
    0x000247a0 mov r1, r0                                        |     r1 = r0;
    0x000247a2 mov r0, r3                                        |     r0 = r3;
    0x000247a4 ldr.w r3, [pc, 0x480]                             |     
    0x000247a8 add r3, pc                                        |     r3 = 0x493d4;
    0x000247aa blx 0x1fe70                                       |     fcn_0001fe70 ();
    0x000247ae b 0x2427e                                         |     goto label_7;
    0x000247b0 ldr r3, [sl, -0xc]                                |     r3 = *((sl - 0xc));
    0x000247b4 ldr.w r4, [sl]                                    |     r4 = *(sl);
    0x000247b8 str r3, [sp, 0x38]                                |     *(arg_38h) = r3;
    0x000247ba cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x000247bc beq.w 0x2427e                                     |         goto label_7;
                                                                 |     }
    0x000247c0 ldr r0, [r3, 0x10]                                |     r0 = *((r3 + 0x10));
                                                                 |     if (r0 != 0) {
    0x000247c2 cbz r0, 0x247c8                                   |         
    0x000247c4 bl 0x26570                                        |         gst_object_unref ();
                                                                 |     }
    0x000247c8 ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x000247ca ldr r0, [r3, 0x14]                                |     r0 = *((r3 + 0x14));
    0x000247cc blx 0x1f14c                                       |     fcn_0001f14c ();
    0x000247d0 ldr r2, [sp, 0x34]                                |     r2 = *(arg_34h);
    0x000247d2 ldr.w r3, [pc, 0x44c]                             |     r3 = *(0x24c22);
    0x000247d6 ldr r1, [r2, r3]                                  |     r1 = *((r2 + r3));
    0x000247d8 movs r2, 0                                        |     r2 = 0;
    0x000247da ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x000247dc str r1, [sp, 0x3c]                                |     *(arg_3ch) = r1;
    0x000247de ldr r0, [r3, 0x18]                                |     r0 = *(0x24c3a);
    0x000247e0 blx 0x200b4                                       |     g_initially_unowned_get_type ();
    0x000247e4 ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x000247e6 ldr r0, [r3, 0x18]                                |     r0 = *(0x24c3a);
    0x000247e8 blx 0x1f330                                       |     fcn_0001f330 ();
    0x000247ea stc p8, c6, [r2, 0x180]!                          |     __asm ("stc p8, c6, [r2, 0x180]!");
                                                                 |     if (r0 != 0) {
    0x000247ee cbz r0, 0x247f4                                   |         
    0x000247f0 bl 0x26570                                        |         gst_object_unref ();
                                                                 |     }
    0x000247f4 ldr r0, [r4, 8]                                   |     r0 = *((r4 + 8));
    0x000247f6 blx 0x1f14c                                       |     fcn_0001f14c ();
    0x000247fa ldr r1, [sp, 0x3c]                                |     r1 = *(arg_3ch);
    0x000247fc movs r2, 0                                        |     r2 = 0;
    0x000247fe ldr r0, [r4, 0xc]                                 |     r0 = *((r4 + 0xc));
    0x00024800 blx 0x200b4                                       |     g_initially_unowned_get_type ();
    0x00024804 ldr r0, [r4, 0xc]                                 |     r0 = *((r4 + 0xc));
    0x00024806 blx 0x1f330                                       |     fcn_0001f330 ();
    0x0002480a ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x0002480c adds r2, r3, 4                                    |     r2 = r3 + 4;
    0x0002480e adds r3, r4, 4                                    |     r3 = r4 + 4;
    0x00024810 ldm r2, {r0, r1, r2}                              |     r0 = *(r2);
                                                                 |     r1 = *((r2 + 4));
                                                                 |     r2 = *((r2 + 8));
    0x00024812 stm.w r3, {r0, r1, r2}                            |     *(r3) = r0;
                                                                 |     *((r3 + 4)) = r1;
                                                                 |     *((r3 + 8)) = r2;
    0x00024816 ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x00024818 ldr r1, [r4]                                      |     r1 = *(r4);
    0x0002481a ldr r0, [r3]                                      |     r0 = *(r3);
    0x0002481c blx 0x205e0                                       |     fcn_000205e0 ();
    0x00024820 ldr r1, [sp, 0x38]                                |     r1 = *(arg_38h);
    0x00024822 str r0, [r4]                                      |     *(r4) = r0;
    0x00024824 movs r0, 0x1c                                     |     r0 = 0x1c;
    0x00024826 blx 0x208ec                                       |     fcn_000208ec ();
    0x0002482a b 0x2427e                                         |     goto label_7;
    0x0002482c ldr r0, [sl, -0xc]                                |     r0 = *((sl - 0xc));
    0x00024830 ldr.w r3, [sl]                                    |     r3 = *(sl);
    0x00024834 str r0, [sp, 0x18]                                |     var_18h = r0;
    0x00024836 str r3, [sp, 0x1c]                                |     var_1ch = r3;
    0x00024838 cmp r0, 0                                         |     
                                                                 |     if (r0 == 0) {
    0x0002483a beq.w 0x2427c                                     |         goto label_9;
                                                                 |     }
    0x0002483e ldrb r3, [r0]                                     |     r3 = *(r0);
    0x00024840 cmp r3, 0x2e                                      |     
                                                                 |     if (r3 == 0x2e) {
    0x00024842 beq.w 0x24c8a                                     |         goto label_74;
                                                                 |     }
                                                                 |     do {
    0x00024846 ldrb r3, [r0, 1]!                                 |         r3 = *((r0 += 1));
    0x0002484a cmp r3, 0x2e                                      |         
    0x0002484c bne 0x24846                                       |         
                                                                 |     } while (r3 != 0x2e);
                                                                 | label_32:
    0x0002484e ldrb r4, [r0, 1]                                  |     r4 = *((r0 + 1));
    0x00024850 movs r2, 0                                        |     r2 = 0;
    0x00024852 strb r2, [r0]                                     |     *(r0) = r2;
    0x00024854 cmp r4, 0                                         |     
                                                                 |     if (r4 == 0) {
    0x00024856 beq.w 0x2427e                                     |         goto label_7;
                                                                 |     }
    0x0002485a adds r0, 1                                        |     r0++;
    0x0002485c mov r4, r2                                        |     r4 = r2;
    0x0002485e blx 0x1f560                                       |     r0 = fcn_0001f560 ();
    0x00024862 mov r1, r0                                        |     r1 = r0;
    0x00024864 ldr r0, [sp, 0x1c]                                |     r0 = var_1ch;
    0x00024866 blx 0x1fc58                                       |     g_value_set_uchar ();
    0x0002486a str r0, [sp, 0x1c]                                |     var_1ch = r0;
    0x0002486c b 0x2427e                                         |     goto label_7;
    0x0002486e movs r0, 0x20                                     |     r0 = 0x20;
    0x00024870 blx 0x1ff70                                       |     g_type_check_instance_is_a ();
    0x00024874 movs r2, 0x20                                     |     r2 = 0x20;
    0x00024876 movs r1, 0                                        |     r1 = 0;
    0x00024878 mov r4, r0                                        |     r4 = r0;
    0x0002487a blx 0x1f724                                       |     fsync ();
    0x0002487e ldr.w r3, [sl]                                    |     r3 = *(sl);
    0x00024882 mov r2, r3                                        |     r2 = r3;
    0x00024884 str r3, [sp, 0x38]                                |     *(arg_38h) = r3;
    0x00024886 movs r3, 1                                        |     r3 = 1;
    0x00024888 str r3, [r4, 0x1c]                                |     *((r4 + 0x1c)) = r3;
    0x0002488a cmp r2, 0                                         |     
                                                                 |     if (r2 == 0) {
    0x0002488c beq.w 0x2427e                                     |         goto label_7;
                                                                 |     }
    0x00024890 mov r0, r2                                        |     r0 = r2;
    0x00024892 bl 0x33664                                        |     gst_caps_from_string ();
    0x00024896 str r0, [r4, 0x18]                                |     *((r4 + 0x18)) = r0;
    0x00024898 cmp r0, 0                                         |     
                                                                 |     if (r0 != 0) {
    0x0002489a bne.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x0002489e ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x000248a0 ldr r3, [r3, 8]                                   |     r3 = *((r3 + 8));
    0x000248a2 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x000248a4 beq.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x000248a8 ldr r2, [r3]                                      |     r2 = *(r3);
    0x000248aa cmp r2, 0                                         |     
                                                                 |     if (r2 != 0) {
    0x000248ac bne.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x000248b0 str r3, [sp, 0x3c]                                |     *(arg_3ch) = r3;
    0x000248b2 bl 0x7a948                                        |     gst_parse_error_quark ();
    0x000248b6 ldr r3, [sp, 0x3c]                                |     r3 = *(arg_3ch);
    0x000248b8 mov r1, r0                                        |     r1 = r0;
    0x000248ba movs r2, 3                                        |     r2 = 3;
    0x000248bc mov r0, r3                                        |     r0 = r3;
    0x000248be ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x000248c0 str r3, [sp]                                      |     *(sp) = r3;
    0x000248c2 ldr r3, [pc, 0x368]                               |     
    0x000248c4 add r3, pc                                        |     r3 = 0x494f6;
    0x000248c6 blx 0x1fe70                                       |     fcn_0001fe70 ();
    0x000248ca b 0x24756                                         |     goto label_10;
    0x000248cc movs r0, 0x20                                     |     r0 = 0x20;
    0x000248ce blx 0x1ff70                                       |     g_type_check_instance_is_a ();
    0x000248d2 movs r2, 0x20                                     |     r2 = 0x20;
    0x000248d4 movs r1, 0                                        |     r1 = 0;
    0x000248d6 mov r4, r0                                        |     r4 = r0;
    0x000248d8 blx 0x1f724                                       |     fsync ();
    0x000248dc ldr.w r3, [sl]                                    |     r3 = *(sl);
    0x000248e0 str r3, [sp, 0x38]                                |     *(arg_38h) = r3;
    0x000248e2 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x000248e4 beq.w 0x2427e                                     |         goto label_7;
                                                                 |     }
    0x000248e8 mov r0, r3                                        |     r0 = r3;
    0x000248ea bl 0x33664                                        |     gst_caps_from_string ();
    0x000248ee str r0, [r4, 0x18]                                |     *((r4 + 0x18)) = r0;
    0x000248f0 cmp r0, 0                                         |     
                                                                 |     if (r0 != 0) {
    0x000248f2 bne.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x000248f6 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x000248f8 ldr r3, [r3, 8]                                   |     r3 = *((r3 + 8));
    0x000248fa cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x000248fc beq.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x00024900 ldr r2, [r3]                                      |     r2 = *(r3);
    0x00024902 cmp r2, 0                                         |     
                                                                 |     if (r2 != 0) {
    0x00024904 bne.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x00024908 str r3, [sp, 0x3c]                                |     *(arg_3ch) = r3;
    0x0002490a bl 0x7a948                                        |     gst_parse_error_quark ();
    0x0002490e ldr r3, [sp, 0x3c]                                |     r3 = *(arg_3ch);
    0x00024910 mov r1, r0                                        |     r1 = r0;
    0x00024912 movs r2, 3                                        |     r2 = 3;
    0x00024914 mov r0, r3                                        |     r0 = r3;
    0x00024916 ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x00024918 str r3, [sp]                                      |     *(sp) = r3;
    0x0002491a ldr r3, [pc, 0x314]                               |     
    0x0002491c add r3, pc                                        |     r3 = 0x49552;
    0x0002491e blx 0x1fe70                                       |     fcn_0001fe70 ();
    0x00024922 b 0x24756                                         |     goto label_10;
    0x00024924 ldr.w r3, [sl]                                    |     r3 = *(sl);
    0x00024928 movs r0, 1                                        |     r0 = 1;
    0x0002492a mov r1, r3                                        |     r1 = r3;
    0x0002492c str r3, [sp, 0x3c]                                |     *(arg_3ch) = r3;
    0x0002492e movs r3, 0                                        |     r3 = 0;
    0x00024930 mov r2, r3                                        |     r2 = r3;
    0x00024932 bl 0x69fe8                                        |     gst_element_make_from_uri ();
    0x00024936 ldr r4, [sl, -0x18]                               |     r4 = *((sl - 0x18));
    0x0002493a str r0, [sp, 0x40]                                |     *(arg_40h) = r0;
    0x0002493c cmp r0, 0                                         |     
                                                                 |     if (r0 == 0) {
    0x0002493e beq 0x249ce                                       |         goto label_75;
                                                                 |     }
    0x00024940 bl 0x26538                                        |     gst_object_ref ();
    0x00024944 ldr r2, [sl, -0xc]                                |     r2 = *((sl - 0xc));
    0x00024948 mov ip, r0                                        |     
    0x0002494a str r0, [r2, 0xc]                                 |     *((r2 + 0xc)) = r0;
    0x0002494c mov r3, r2                                        |     r3 = r2;
    0x0002494e str r2, [sp, 0x38]                                |     *(arg_38h) = r2;
    0x00024950 add.w r2, r4, 0x10                                |     r2 = r4 + 0x10;
    0x00024954 ldm r2, {r0, r1, r2}                              |     r0 = *(r2);
                                                                 |     r1 = *((r2 + 4));
                                                                 |     r2 = *((r2 + 8));
    0x00024956 stm.w r3, {r0, r1, r2}                            |     *(r3) = r0;
                                                                 |     *((r3 + 4)) = r1;
                                                                 |     *((r3 + 8)) = r2;
                                                                 |     if (r0 == 0) {
    0x0002495a cbz r0, 0x2498c                                   |         goto label_76;
                                                                 |     }
                                                                 | label_12:
    0x0002495c cmp.w ip, 0                                       |     
                                                                 |     if (ip == 0) {
    0x00024960 beq 0x249fc                                       |         goto label_77;
                                                                 |     }
                                                                 | label_15:
    0x00024962 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024964 ldr r1, [sp, 0x38]                                |     r1 = *(arg_38h);
    0x00024966 ldr r0, [r3, 4]                                   |     r0 = *((r3 + 4));
    0x00024968 blx 0x1f9e4                                       |     fcn_0001f9e4 ();
    0x0002496c ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x0002496e str r0, [r3, 4]                                   |     *((r3 + 4)) = r0;
                                                                 | label_13:
    0x00024970 movs r3, 0                                        |     r3 = 0;
    0x00024972 strd r3, r3, [r4, 0x10]                           |     __asm ("strd r3, r3, [r4, 0x10]");
    0x00024976 str r3, [r4, 0x18]                                |     *((r4 + 0x18)) = r3;
    0x00024978 ldr r3, [sp, 0x40]                                |     r3 = *(arg_40h);
    0x0002497a cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x0002497c beq.w 0x245e0                                     |         goto label_11;
                                                                 |     }
    0x00024980 ldr r0, [r4]                                      |     r0 = *(r4);
    0x00024982 mov r1, r3                                        |     r1 = r3;
    0x00024984 blx 0x1f9e4                                       |     fcn_0001f9e4 ();
    0x00024988 str r0, [r4]                                      |     *(r4) = r0;
    0x0002498a b 0x245e0                                         |     goto label_11;
                                                                 | label_76:
    0x0002498c cmp r1, 0                                         |     
                                                                 |     if (r1 != 0) {
    0x0002498e bne 0x2495c                                       |         goto label_12;
                                                                 |     }
                                                                 |     do {
    0x00024990 ldr r3, [sp, 0x28]                                |         r3 = *(arg_28h);
    0x00024992 ldr r2, [r3, 8]                                   |         r2 = *((r3 + 8));
                                                                 |         if (r2 != 0) {
    0x00024994 cbz r2, 0x2499e                                   |             
    0x00024996 ldr r3, [r2]                                      |             r3 = *(r2);
    0x00024998 cmp r3, 0                                         |             
                                                                 |             if (r3 == 0) {
    0x0002499a beq.w 0x24d46                                     |                 goto label_78;
                                                                 |             }
                                                                 |         }
                                                                 | label_16:
    0x0002499e ldr r0, [sp, 0x38]                                |         r0 = *(arg_38h);
    0x000249a0 bl 0x23efc                                        |         fcn_00023efc (r0);
    0x000249a4 b 0x24970                                         |         goto label_13;
                                                                 | label_53:
    0x000249a6 mov r4, r3                                        |         r4 = r3;
    0x000249a8 mov fp, r6                                        |         
    0x000249aa movs r5, 1                                        |         r5 = 1;
    0x000249ac b 0x24382                                         |         goto label_14;
                                                                 | label_52:
    0x000249ae mov r4, fp                                        |         r4 = fp;
    0x000249b0 movs r5, 2                                        |         r5 = 2;
    0x000249b2 mov fp, r7                                        |         
    0x000249b4 b 0x24382                                         |         goto label_14;
                                                                 | label_62:
    0x000249b6 cmp.w ip, 0                                       |         
                                                                 |         if (ip != 0) {
    0x000249ba bne 0x24a78                                       |             goto label_79;
                                                                 |         }
                                                                 | label_21:
    0x000249bc eor ip, ip, 1                                     |         
    0x000249c0 b 0x24562                                         |         goto label_8;
                                                                 | label_64:
    0x000249c2 ldrb r0, [r3, 1]                                  |         r0 = *((r3 + 1));
    0x000249c4 cmp r0, 0                                         |         
                                                                 |         if (r0 == 0) {
    0x000249c6 beq.w 0x24b5a                                     |             goto label_63;
                                                                 |         }
    0x000249ca adds r3, 1                                        |         r3++;
    0x000249cc b 0x24562                                         |         goto label_8;
                                                                 | label_75:
    0x000249ce ldr r3, [sp, 0x28]                                |         r3 = *(arg_28h);
    0x000249d0 ldr r3, [r3, 8]                                   |         r3 = *((r3 + 8));
                                                                 |         if (r3 != 0) {
    0x000249d2 cbz r3, 0x249dc                                   |             
    0x000249d4 ldr r2, [r3]                                      |             r2 = *(r3);
    0x000249d6 cmp r2, 0                                         |             
                                                                 |             if (r2 == 0) {
    0x000249d8 beq.w 0x24d6c                                     |                 goto label_80;
                                                                 |             }
                                                                 |         }
                                                                 | label_36:
    0x000249dc ldr r3, [sl, -0xc]                                |         r3 = *((sl - 0xc));
    0x000249e0 mov r2, r3                                        |         r2 = r3;
    0x000249e2 movs r3, 0                                        |         r3 = 0;
    0x000249e4 str r3, [r2, 0xc]                                 |         *((r2 + 0xc)) = r3;
    0x000249e6 add.w r3, r4, 0x10                                |         r3 = r4 + 0x10;
    0x000249ea str r2, [sp, 0x38]                                |         *(arg_38h) = r2;
    0x000249ec ldm.w r3, {r0, r1, r2}                            |         r0 = *(r3);
                                                                 |         r1 = *((r3 + 4));
                                                                 |         r2 = *((r3 + 8));
    0x000249f0 ldr r3, [sp, 0x38]                                |         r3 = *(arg_38h);
    0x000249f2 stm.w r3, {r0, r1, r2}                            |         *(r3) = r0;
                                                                 |         *((r3 + 4)) = r1;
                                                                 |         *((r3 + 8)) = r2;
                                                                 |         if (r0 != 0) {
    0x000249f6 cbnz r0, 0x249fc                                  |             goto label_77;
                                                                 |         }
    0x000249f8 cmp r1, 0                                         |         
    0x000249fa beq 0x24990                                       |         
                                                                 |     } while (r1 == 0);
                                                                 | label_77:
    0x000249fc ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x000249fe ldr r3, [r3, 0x10]                                |     r3 = *((r3 + 0x10));
    0x00024a00 cmp r3, 0                                         |     
                                                                 |     if (r3 != 0) {
    0x00024a02 bne 0x24962                                       |         goto label_15;
                                                                 |     }
    0x00024a04 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024a06 ldr r2, [r3, 8]                                   |     r2 = *((r3 + 8));
    0x00024a08 cmp r2, 0                                         |     
                                                                 |     if (r2 == 0) {
    0x00024a0a beq 0x2499e                                       |         goto label_16;
                                                                 |     }
    0x00024a0c ldr r3, [r2]                                      |     r3 = *(r2);
    0x00024a0e cmp r3, 0                                         |     
                                                                 |     if (r3 != 0) {
    0x00024a10 bne 0x2499e                                       |         goto label_16;
                                                                 |     }
    0x00024a12 str r2, [sp, 0x44]                                |     *(arg_44h) = r2;
    0x00024a14 bl 0x7a948                                        |     gst_parse_error_quark ();
    0x00024a18 ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x00024a1a mov r1, r0                                        |     r1 = r0;
    0x00024a1c ldr r2, [sp, 0x44]                                |     r2 = *(arg_44h);
    0x00024a1e ldr r3, [r3, 4]                                   |     r3 = *((r3 + 4));
    0x00024a20 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x00024a22 beq.w 0x24db2                                     |         goto label_81;
                                                                 |     }
                                                                 | label_38:
    0x00024a26 mov r0, r2                                        |     r0 = r2;
    0x00024a28 ldr r2, [sp, 0x38]                                |     r2 = *(arg_38h);
    0x00024a2a ldr r2, [r2]                                      |     r2 = *(r2);
    0x00024a2c strd r3, r2, [sp]                                 |     __asm ("strd r3, r2, [sp]");
    0x00024a30 movs r2, 3                                        |     r2 = 3;
    0x00024a32 ldr r3, [pc, 0x200]                               |     
    0x00024a34 add r3, pc                                        |     r3 = 0x4966e;
    0x00024a36 blx 0x1fe70                                       |     fcn_0001fe70 ();
    0x00024a3a b 0x2499e                                         |     goto label_16;
                                                                 | label_70:
    0x00024a3c ldr r3, [r2, 0x10]                                |     r3 = *((r2 + 0x10));
    0x00024a3e cmp r3, 0                                         |     
                                                                 |     if (r3 != 0) {
    0x00024a40 bne.w 0x246b6                                     |         goto label_17;
                                                                 |     }
    0x00024a44 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024a46 ldr r2, [r3, 8]                                   |     r2 = *((r3 + 8));
                                                                 |     if (r2 != 0) {
    0x00024a48 cbz r2, 0x24a52                                   |         
    0x00024a4a ldr r3, [r2]                                      |         r3 = *(r2);
    0x00024a4c cmp r3, 0                                         |         
                                                                 |         if (r3 == 0) {
    0x00024a4e beq.w 0x24dbe                                     |             goto label_82;
                                                                 |         }
                                                                 |     }
                                                                 | label_27:
    0x00024a52 ldr r0, [sp, 0x38]                                |     r0 = *(arg_38h);
    0x00024a54 bl 0x23efc                                        |     fcn_00023efc (r0);
    0x00024a58 b 0x246c4                                         |     goto label_18;
                                                                 | label_72:
    0x00024a5a ldr r3, [r2, 0x10]                                |     r3 = *((r2 + 0x10));
    0x00024a5c cmp r3, 0                                         |     
                                                                 |     if (r3 != 0) {
    0x00024a5e bne.w 0x24728                                     |         goto label_19;
                                                                 |     }
    0x00024a62 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024a64 ldr r2, [r3, 8]                                   |     r2 = *((r3 + 8));
                                                                 |     if (r2 != 0) {
    0x00024a66 cbz r2, 0x24a70                                   |         
    0x00024a68 ldr r3, [r2]                                      |         r3 = *(r2);
    0x00024a6a cmp r3, 0                                         |         
                                                                 |         if (r3 == 0) {
    0x00024a6c beq.w 0x24cc2                                     |             goto label_83;
                                                                 |         }
                                                                 |     }
                                                                 | label_25:
    0x00024a70 ldr r0, [sp, 0x38]                                |     r0 = *(arg_38h);
    0x00024a72 bl 0x23efc                                        |     fcn_00023efc (r0);
    0x00024a76 b 0x24736                                         |     goto label_20;
                                                                 | label_79:
    0x00024a78 ldrb r2, [r3, -0x1]                               |     r2 = *((r3 - 0x1));
    0x00024a7c cmp r2, 0x5c                                      |     
                                                                 |     if (r2 != 0x5c) {
    0x00024a7e bne 0x249bc                                       |         goto label_21;
                                                                 |     }
    0x00024a80 b 0x24562                                         |     goto label_8;
                                                                 | label_66:
    0x00024a82 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024a84 ldr r4, [r3, 8]                                   |     r4 = *((r3 + 8));
                                                                 |     if (r4 != 0) {
    0x00024a86 cbz r4, 0x24a90                                   |         
    0x00024a88 ldr r3, [r4]                                      |         r3 = *(r4);
    0x00024a8a cmp r3, 0                                         |         
                                                                 |         if (r3 == 0) {
    0x00024a8c beq.w 0x24c72                                     |             goto label_84;
                                                                 |         }
                                                                 |     }
                                                                 | label_31:
    0x00024a90 movs r0, 0x1c                                     |     r0 = 0x1c;
    0x00024a92 blx 0x1ff70                                       |     g_type_check_instance_is_a ();
    0x00024a96 movs r3, 0                                        |     r3 = 0;
    0x00024a98 mov r4, r0                                        |     r4 = r0;
    0x00024a9a str r3, [r0]                                      |     *(r0) = r3;
    0x00024a9c str r3, [r0, 4]                                   |     *((r0 + 4)) = r3;
    0x00024a9e str r3, [r0, 8]                                   |     *((r0 + 8)) = r3;
    0x00024aa0 str r3, [r0, 0xc]                                 |     *((r0 + 0xc)) = r3;
    0x00024aa2 str r3, [r0, 0x10]                                |     *((r0 + 0x10)) = r3;
    0x00024aa4 str r3, [r0, 0x14]                                |     *((r0 + 0x14)) = r3;
    0x00024aa6 str r3, [r0, 0x18]                                |     *((r0 + 0x18)) = r3;
    0x00024aa8 b 0x24602                                         |     goto label_22;
                                                                 | label_59:
    0x00024aaa ldr r4, [r2, 8]                                   |     r4 = *((r2 + 8));
    0x00024aac cmp r4, 0                                         |     
                                                                 |     if (r4 == 0) {
    0x00024aae beq.w 0x244c8                                     |         goto label_23;
                                                                 |     }
    0x00024ab2 ldr r3, [r4]                                      |     r3 = *(r4);
    0x00024ab4 cmp r3, 0                                         |     
                                                                 |     if (r3 != 0) {
    0x00024ab6 bne.w 0x244c8                                     |         goto label_23;
                                                                 |     }
    0x00024aba bl 0x7a948                                        |     gst_parse_error_quark ();
    0x00024abe ldr r3, [pc, 0x178]                               |     
    0x00024ac0 mov r1, r0                                        |     r1 = r0;
    0x00024ac2 movs r2, 6                                        |     r2 = 6;
    0x00024ac4 mov r0, r4                                        |     r0 = r4;
    0x00024ac6 add r3, pc                                        |     r3 = 0x49704;
    0x00024ac8 blx 0x1fe70                                       |     fcn_0001fe70 ();
    0x00024acc ldr r4, [sp, 0x28]                                |     r4 = *(arg_28h);
    0x00024ace b.w 0x2427e                                       |     goto label_7;
                                                                 | label_71:
    0x00024ad2 cmp r1, 0                                         |     
                                                                 |     if (r1 != 0) {
    0x00024ad4 bne.w 0x2471e                                     |         goto label_24;
                                                                 |     }
    0x00024ad6 add r6, sp, 0x8c                                  |     r6 = sp + 0x8c;
    0x00024ad8 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024ada ldr r2, [r3, 8]                                   |     r2 = *((r3 + 8));
    0x00024adc cmp r2, 0                                         |     
                                                                 |     if (r2 == 0) {
    0x00024ade beq 0x24a70                                       |         goto label_25;
                                                                 |     }
    0x00024ae0 ldr r3, [r2]                                      |     r3 = *(r2);
    0x00024ae2 cmp r3, 0                                         |     
                                                                 |     if (r3 != 0) {
    0x00024ae4 bne 0x24a70                                       |         goto label_25;
                                                                 |     }
    0x00024ae6 str r2, [sp, 0x3c]                                |     *(arg_3ch) = r2;
    0x00024ae8 bl 0x7a948                                        |     gst_parse_error_quark ();
    0x00024aec ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x00024aee mov r1, r0                                        |     r1 = r0;
    0x00024af0 ldr r2, [sp, 0x3c]                                |     r2 = *(arg_3ch);
    0x00024af2 ldr r3, [r3, 0x10]                                |     r3 = *((r3 + 0x10));
    0x00024af4 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x00024af6 beq.w 0x24db8                                     |         goto label_85;
                                                                 |     }
                                                                 | label_39:
    0x00024afa mov r0, r2                                        |     r0 = r2;
    0x00024afc ldr r2, [sp, 0x38]                                |     r2 = *(arg_38h);
    0x00024afe ldr r2, [r2, 0xc]                                 |     r2 = *((r2 + 0xc));
    0x00024b00 strd r3, r2, [sp]                                 |     __asm ("strd r3, r2, [sp]");
    0x00024b04 movs r2, 3                                        |     r2 = 3;
    0x00024b06 ldr r3, [pc, 0x134]                               |     
    0x00024b08 add r3, pc                                        |     r3 = 0x4974a;
    0x00024b0a blx 0x1fe70                                       |     fcn_0001fe70 ();
    0x00024b0e b 0x24a70                                         |     goto label_25;
                                                                 | label_69:
    0x00024b10 ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x00024b12 ldr r3, [r3, 4]                                   |     r3 = *((r3 + 4));
    0x00024b14 cmp r3, 0                                         |     
                                                                 |     if (r3 != 0) {
    0x00024b16 bne.w 0x246ac                                     |         goto label_26;
                                                                 |     }
    0x00024b1a ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024b1c ldr r2, [r3, 8]                                   |     r2 = *((r3 + 8));
    0x00024b1e cmp r2, 0                                         |     
                                                                 |     if (r2 == 0) {
    0x00024b20 beq 0x24a52                                       |         goto label_27;
                                                                 |     }
    0x00024b22 ldr r3, [r2]                                      |     r3 = *(r2);
    0x00024b24 cmp r3, 0                                         |     
                                                                 |     if (r3 != 0) {
    0x00024b26 bne 0x24a52                                       |         goto label_27;
                                                                 |     }
    0x00024b28 str r2, [sp, 0x40]                                |     *(arg_40h) = r2;
    0x00024b2a bl 0x7a948                                        |     gst_parse_error_quark ();
    0x00024b2e ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x00024b30 mov r1, r0                                        |     r1 = r0;
    0x00024b32 ldr r2, [sp, 0x40]                                |     r2 = *(arg_40h);
    0x00024b34 ldr r3, [r3, 0x10]                                |     r3 = *((r3 + 0x10));
    0x00024b36 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x00024b38 beq.w 0x24d0a                                     |         goto label_86;
                                                                 |     }
                                                                 | label_35:
    0x00024b3c mov r0, r2                                        |     r0 = r2;
    0x00024b3e ldr r2, [sp, 0x38]                                |     r2 = *(arg_38h);
    0x00024b40 ldr r2, [r2, 0xc]                                 |     r2 = *((r2 + 0xc));
    0x00024b42 strd r3, r2, [sp]                                 |     __asm ("strd r3, r2, [sp]");
    0x00024b44 adds r2, 0                                        |     r2 += 0;
    0x00024b46 movs r2, 3                                        |     r2 = 3;
    0x00024b48 ldr r3, [pc, 0xf4]                                |     
    0x00024b4a add r3, pc                                        |     r3 = 0x4978e;
    0x00024b4c blx 0x1fe70                                       |     fcn_0001fe70 ();
    0x00024b50 b 0x24a52                                         |     goto label_27;
                                                                 | label_49:
    0x00024b52 mov r4, fp                                        |     r4 = fp;
    0x00024b54 movs r5, 1                                        |     r5 = 1;
    0x00024b56 mov fp, r7                                        |     
    0x00024b58 b 0x243c8                                         |     goto label_28;
                                                                 | label_63:
    0x00024b5a movs r3, 0                                        |     r3 = 0;
    0x00024b5c mov r0, r4                                        |     r0 = r4;
    0x00024b5e strb r3, [r1]                                     |     *(r1) = r3;
    0x00024b60 ldr r1, [sp, 0x38]                                |     r1 = *(arg_38h);
    0x00024b62 bl 0x55b88                                        |     r0 = gst_preset_load_preset ();
    0x00024b66 cmp r0, 0                                         |     
                                                                 |     if (r0 != 0) {
    0x00024b68 bne.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x00024b6c ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024b6e ldr r3, [r3, 8]                                   |     r3 = *((r3 + 8));
    0x00024b70 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x00024b72 beq.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x00024b76 ldr r2, [r3]                                      |     r2 = *(r3);
    0x00024b78 cmp r2, 0                                         |     
                                                                 |     if (r2 != 0) {
    0x00024b7a bne.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x00024b7e str r3, [sp, 0x3c]                                |     *(arg_3ch) = r3;
    0x00024b80 bl 0x7a948                                        |     gst_parse_error_quark ();
    0x00024b84 ldr r3, [sp, 0x3c]                                |     r3 = *(arg_3ch);
    0x00024b86 mov r1, r0                                        |     r1 = r0;
    0x00024b88 movs r2, 4                                        |     r2 = 4;
    0x00024b8a mov r0, r3                                        |     r0 = r3;
    0x00024b8c ldr r3, [r4, 0x14]                                |     r3 = *((r4 + 0x14));
    0x00024b8e str r3, [sp, 4]                                   |     var_4h = r3;
    0x00024b90 ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x00024b92 str r3, [sp]                                      |     *(sp) = r3;
    0x00024b94 ldr r3, [pc, 0xac]                                |     
    0x00024b96 add r3, pc                                        |     r3 = 0x497de;
    0x00024b98 blx 0x1fe70                                       |     fcn_0001fe70 ();
    0x00024b9c b 0x24756                                         |     goto label_10;
                                                                 | label_61:
    0x00024b9e ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024ba0 ldr r3, [r3, 8]                                   |     r3 = *((r3 + 8));
    0x00024ba2 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x00024ba4 beq.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x00024ba8 ldr r2, [r3]                                      |     r2 = *(r3);
    0x00024baa cmp r2, 0                                         |     
                                                                 |     if (r2 != 0) {
    0x00024bac bne.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x00024bb0 str r3, [sp, 0x3c]                                |     *(arg_3ch) = r3;
    0x00024bb2 bl 0x7a948                                        |     gst_parse_error_quark ();
    0x00024bb6 ldr r3, [sp, 0x3c]                                |     r3 = *(arg_3ch);
    0x00024bb8 mov r1, r0                                        |     r1 = r0;
    0x00024bba movs r2, 4                                        |     r2 = 4;
    0x00024bbc mov r0, r3                                        |     r0 = r3;
    0x00024bbe ldr r3, [r4, 0x14]                                |     r3 = *((r4 + 0x14));
    0x00024bc0 str r3, [sp]                                      |     *(sp) = r3;
    0x00024bc2 ldr r3, [pc, 0x84]                                |     
    0x00024bc4 add r3, pc                                        |     r3 = 0x49812;
    0x00024bc6 blx 0x1fe70                                       |     fcn_0001fe70 ();
    0x00024bca b 0x24756                                         |     goto label_10;
                                                                 | label_57:
    0x00024bcc strd r3, r2, [sp, 0x38]                           |     __asm ("strd r3, r2, [sp, 0x38]");
    0x00024bd0 bl 0x7a948                                        |     gst_parse_error_quark ();
    0x00024bd4 ldrd r3, r2, [sp, 0x38]                           |     __asm ("ldrd r3, r2, [arg_38h]");
    0x00024bd8 mov r1, r0                                        |     r1 = r0;
    0x00024bda mov r0, r3                                        |     r0 = r3;
    0x00024bdc ldr r3, [r4, 0x14]                                |     r3 = *((r4 + 0x14));
    0x00024bde str r3, [sp]                                      |     *(sp) = r3;
    0x00024be0 ldr r3, [pc, 0x68]                                |     
    0x00024be2 add r3, pc                                        |     r3 = 0x49832;
    0x00024be4 blx 0x1fe70                                       |     fcn_0001fe70 ();
    0x00024be8 ldr r0, [r4, 0x14]                                |     r0 = *((r4 + 0x14));
    0x00024bea b 0x24482                                         |     goto label_29;
                                                                 | label_58:
    0x00024c50 strd r3, r2, [sp, 0x38]                           |     __asm ("strd r3, r2, [sp, 0x38]");
    0x00024c54 bl 0x7a948                                        |     gst_parse_error_quark ();
    0x00024c58 ldrd r3, r2, [sp, 0x38]                           |     __asm ("ldrd r3, r2, [arg_38h]");
    0x00024c5c mov r1, r0                                        |     r1 = r0;
    0x00024c5e mov r0, r3                                        |     r0 = r3;
    0x00024c60 ldr r3, [r4, 0x18]                                |     r3 = *((r4 + 0x18));
    0x00024c62 ldr r3, [r3]                                      |     r3 = *(r3);
    0x00024c64 str r3, [sp]                                      |     *(sp) = r3;
    0x00024c66 ldr r3, [pc, 0x19c]                               |     
    0x00024c68 add r3, pc                                        |     r3 = 0x49a72;
    0x00024c6a blx 0x1fe70                                       |     fcn_0001fe70 ();
    0x00024c6e ldr r0, [r4, 0x18]                                |     r0 = *((r4 + 0x18));
    0x00024c70 b 0x244a0                                         |     goto label_30;
                                                                 | label_84:
    0x00024c72 bl 0x7a948                                        |     gst_parse_error_quark ();
    0x00024c76 ldr r3, [sp, 0x3c]                                |     r3 = *(arg_3ch);
    0x00024c78 mov r1, r0                                        |     r1 = r0;
    0x00024c7a movs r2, 5                                        |     r2 = 5;
    0x00024c7c mov r0, r4                                        |     r0 = r4;
    0x00024c7e str r3, [sp]                                      |     *(sp) = r3;
    0x00024c80 ldr r3, [pc, 0x184]                               |     
    0x00024c82 add r3, pc                                        |     r3 = 0x49a8e;
    0x00024c84 blx 0x1fe70                                       |     fcn_0001fe70 ();
    0x00024c88 b 0x24a90                                         |     goto label_31;
                                                                 | label_74:
    0x00024c8a ldr r0, [sp, 0x18]                                |     r0 = var_18h;
    0x00024c8c b 0x2484e                                         |     goto label_32;
                                                                 | label_67:
    0x00024c8e ldr r1, [sp, 0x3c]                                |     r1 = *(arg_3ch);
    0x00024c90 ldr r0, [sp, 0x28]                                |     r0 = *(arg_28h);
    0x00024c92 bl 0x237b8                                        |     fcn_000237b8 (r0, r1);
    0x00024c96 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024c98 ldr r3, [r3, 8]                                   |     r3 = *((r3 + 8));
                                                                 |     if (r3 == 0) {
    0x00024c9a cbz r3, 0x24ca0                                   |         goto label_87;
                                                                 |     }
    0x00024c9c ldr r2, [r3]                                      |     r2 = *(r3);
    0x00024c9e cbz r2, 0x24ce8                                   |     
                                                                 |     while (1) {
                                                                 | label_87:
    0x00024ca0 ldr r3, [pc, 0x168]                               |         r3 = *(0x24e0c);
    0x00024ca2 ldr r2, [sp, 0x34]                                |         r2 = *(arg_34h);
    0x00024ca4 ldr r0, [sl, -0x18]                               |         r0 = *((sl - 0x18));
    0x00024ca8 ldr r1, [r2, r3]                                  |         r1 = *((r2 + r3));
    0x00024caa movs r2, 0                                        |         r2 = 0;
    0x00024cac str r0, [sp, 0x38]                                |         *(arg_38h) = r0;
    0x00024cae blx 0x200b4                                       |         g_initially_unowned_get_type ();
    0x00024cb2 ldr r0, [sp, 0x38]                                |         r0 = *(arg_38h);
    0x00024cb4 blx 0x1f330                                       |         fcn_0001f330 ();
    0x00024cb8 movs r3, 0                                        |         r3 = 0;
    0x00024cba str r3, [sl, -0x18]                               |         *((sl - 0x18)) = r3;
    0x00024cbe str r3, [sp, 0x40]                                |         *(arg_40h) = r3;
    0x00024cc0 b 0x24664                                         |         goto label_33;
                                                                 | label_83:
    0x00024cc2 str r2, [sp, 0x3c]                                |         *(arg_3ch) = r2;
    0x00024cc4 bl 0x7a948                                        |         gst_parse_error_quark ();
    0x00024cc8 ldr r3, [sp, 0x38]                                |         r3 = *(arg_38h);
    0x00024cca mov r1, r0                                        |         r1 = r0;
    0x00024ccc ldr r2, [sp, 0x3c]                                |         r2 = *(arg_3ch);
    0x00024cce ldr r3, [r3, 4]                                   |         r3 = *((r3 + 4));
                                                                 |         if (r3 == 0) {
    0x00024cd0 cbz r3, 0x24d04                                   |             goto label_88;
                                                                 |         }
                                                                 | label_34:
    0x00024cd2 mov r0, r2                                        |         r0 = r2;
    0x00024cd4 ldr r2, [sp, 0x38]                                |         r2 = *(arg_38h);
    0x00024cd6 ldr r2, [r2]                                      |         r2 = *(r2);
    0x00024cd8 strd r3, r2, [sp]                                 |         __asm ("strd r3, r2, [sp]");
    0x00024cdc movs r2, 3                                        |         r2 = 3;
    0x00024cde ldr r3, [pc, 0x130]                               |         
    0x00024ce0 add r3, pc                                        |         r3 = 0x49af6;
    0x00024ce2 blx 0x1fe70                                       |         fcn_0001fe70 ();
    0x00024ce6 b 0x24a70                                         |         goto label_25;
    0x00024ce8 str r3, [sp, 0x38]                                |         *(arg_38h) = r3;
    0x00024cea bl 0x7a948                                        |         gst_parse_error_quark ();
    0x00024cee ldr r3, [sp, 0x38]                                |         r3 = *(arg_38h);
    0x00024cf0 mov r1, r0                                        |         r1 = r0;
    0x00024cf2 movs r2, 1                                        |         r2 = 1;
    0x00024cf4 mov r0, r3                                        |         r0 = r3;
    0x00024cf6 ldr r3, [sp, 0x3c]                                |         r3 = *(arg_3ch);
    0x00024cf8 str r3, [sp]                                      |         *(sp) = r3;
    0x00024cfa ldr r3, [pc, 0x118]                               |         
    0x00024cfc add r3, pc                                        |         r3 = 0x49b16;
    0x00024cfe blx 0x1fe70                                       |         fcn_0001fe70 ();
    0x00024d02 b 0x24ca0                                         |         
                                                                 |     }
                                                                 | label_88:
    0x00024d04 ldr r3, [pc, 0x110]                               |     
    0x00024d06 add r3, pc                                        |     r3 = 0x49b22;
    0x00024d08 b 0x24cd2                                         |     goto label_34;
                                                                 | label_86:
    0x00024d0a ldr r3, [pc, 0x110]                               |     
    0x00024d0c add r3, pc                                        |     r3 = 0x49b2e;
    0x00024d0e b 0x24b3c                                         |     goto label_35;
                                                                 | label_73:
    0x00024d10 ldr r1, [sp, 0x38]                                |     r1 = *(arg_38h);
    0x00024d12 ldr r0, [sp, 0x28]                                |     r0 = *(arg_28h);
    0x00024d14 bl 0x237b8                                        |     fcn_000237b8 (r0, r1);
    0x00024d18 ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024d1a ldr r3, [r3, 8]                                   |     r3 = *((r3 + 8));
    0x00024d1c cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x00024d1e beq.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x00024d22 ldr r2, [r3]                                      |     r2 = *(r3);
    0x00024d24 cmp r2, 0                                         |     
                                                                 |     if (r2 != 0) {
    0x00024d26 bne.w 0x24756                                     |         goto label_10;
                                                                 |     }
    0x00024d2a str r3, [sp, 0x3c]                                |     *(arg_3ch) = r3;
    0x00024d2c bl 0x7a948                                        |     gst_parse_error_quark ();
    0x00024d30 ldr r3, [sp, 0x3c]                                |     r3 = *(arg_3ch);
    0x00024d32 mov r1, r0                                        |     r1 = r0;
    0x00024d34 movs r2, 1                                        |     r2 = 1;
    0x00024d36 mov r0, r3                                        |     r0 = r3;
    0x00024d38 ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x00024d3a str r3, [sp]                                      |     *(sp) = r3;
    0x00024d3c ldr r3, [pc, 0xe0]                                |     
    0x00024d3e add r3, pc                                        |     r3 = 0x49b62;
    0x00024d40 blx 0x1fe70                                       |     fcn_0001fe70 ();
    0x00024d44 b 0x24756                                         |     goto label_10;
                                                                 | label_78:
    0x00024d46 str r2, [sp, 0x44]                                |     *(arg_44h) = r2;
    0x00024d48 bl 0x7a948                                        |     gst_parse_error_quark ();
    0x00024d4c ldr r3, [sp, 0x38]                                |     r3 = *(arg_38h);
    0x00024d4e mov r1, r0                                        |     r1 = r0;
    0x00024d50 ldr r2, [sp, 0x44]                                |     r2 = *(arg_44h);
    0x00024d52 ldr r3, [r3, 0x10]                                |     r3 = *((r3 + 0x10));
    0x00024d54 cbz r3, 0x24d88                                   |     
                                                                 |     while (1) {
    0x00024d56 mov r0, r2                                        |         r0 = r2;
    0x00024d58 ldr r2, [sp, 0x38]                                |         r2 = *(arg_38h);
    0x00024d5a ldr r2, [r2, 0xc]                                 |         r2 = *((r2 + 0xc));
    0x00024d5c strd r3, r2, [sp]                                 |         __asm ("strd r3, r2, [sp]");
    0x00024d60 movs r2, 3                                        |         r2 = 3;
    0x00024d62 ldr r3, [pc, 0xc0]                                |         
    0x00024d64 add r3, pc                                        |         r3 = 0x49b8e;
    0x00024d66 blx 0x1fe70                                       |         fcn_0001fe70 ();
    0x00024d6a b 0x2499e                                         |         goto label_16;
                                                                 | label_80:
    0x00024d6c str r3, [sp, 0x38]                                |         *(arg_38h) = r3;
    0x00024d6e bl 0x7a948                                        |         gst_parse_error_quark ();
    0x00024d72 ldr r3, [sp, 0x38]                                |         r3 = *(arg_38h);
    0x00024d74 mov r1, r0                                        |         r1 = r0;
    0x00024d76 movs r2, 1                                        |         r2 = 1;
    0x00024d78 mov r0, r3                                        |         r0 = r3;
    0x00024d7a ldr r3, [sp, 0x3c]                                |         r3 = *(arg_3ch);
    0x00024d7c str r3, [sp]                                      |         *(sp) = r3;
    0x00024d7e ldr r3, [pc, 0xa8]                                |         
    0x00024d80 add r3, pc                                        |         r3 = 0x49bae;
    0x00024d82 blx 0x1fe70                                       |         fcn_0001fe70 ();
    0x00024d86 b 0x249dc                                         |         goto label_36;
    0x00024d88 ldr r3, [pc, 0xa0]                                |         
    0x00024d8a add r3, pc                                        |         r3 = 0x49bba;
    0x00024d8c b 0x24d56                                         |         
                                                                 |     }
                                                                 | label_65:
    0x00024d8e ldr r3, [sp, 0x28]                                |     r3 = *(arg_28h);
    0x00024d90 ldr r4, [r3, 8]                                   |     r4 = *((r3 + 8));
                                                                 |     if (r4 == 0) {
    0x00024d92 cbz r4, 0x24d98                                   |         goto label_89;
                                                                 |     }
    0x00024d94 ldr r2, [r4]                                      |     r2 = *(r4);
    0x00024d96 cbz r2, 0x24de4                                   |     
                                                                 |     while (1) {
                                                                 | label_89:
    0x00024d98 movs r0, 0x1c                                     |         r0 = 0x1c;
    0x00024d9a blx 0x1ff70                                       |         g_type_check_instance_is_a ();
    0x00024d9e movs r3, 0                                        |         r3 = 0;
    0x00024da0 mov r4, r0                                        |         r4 = r0;
    0x00024da2 str r3, [r0]                                      |         *(r0) = r3;
    0x00024da4 str r3, [r0, 4]                                   |         *((r0 + 4)) = r3;
    0x00024da6 str r3, [r0, 8]                                   |         *((r0 + 8)) = r3;
    0x00024da8 str r3, [r0, 0xc]                                 |         *((r0 + 0xc)) = r3;
    0x00024daa str r3, [r0, 0x10]                                |         *((r0 + 0x10)) = r3;
    0x00024dac str r3, [r0, 0x14]                                |         *((r0 + 0x14)) = r3;
    0x00024dae str r3, [r0, 0x18]                                |         *((r0 + 0x18)) = r3;
    0x00024db0 b 0x245dc                                         |         goto label_37;
                                                                 | label_81:
    0x00024db2 ldr r3, [pc, 0x7c]                                |         
    0x00024db4 add r3, pc                                        |         r3 = 0x49bea;
    0x00024db6 b 0x24a26                                         |         goto label_38;
                                                                 | label_85:
    0x00024db8 ldr r3, [pc, 0x78]                                |         
    0x00024dba add r3, pc                                        |         r3 = 0x49bf2;
    0x00024dbc b 0x24afa                                         |         goto label_39;
                                                                 | label_82:
    0x00024dbe str r2, [sp, 0x40]                                |         *(arg_40h) = r2;
    0x00024dc0 bl 0x7a948                                        |         gst_parse_error_quark ();
    0x00024dc4 ldr r3, [sp, 0x38]                                |         r3 = *(arg_38h);
    0x00024dc6 mov r1, r0                                        |         r1 = r0;
    0x00024dc8 ldr r2, [sp, 0x40]                                |         r2 = *(arg_40h);
    0x00024dca ldr r3, [r3, 4]                                   |         r3 = *((r3 + 4));
                                                                 |         if (r3 == 0) {
    0x00024dcc cbz r3, 0x24dfc                                   |             goto label_90;
                                                                 |         }
                                                                 | label_40:
    0x00024dce mov r0, r2                                        |         r0 = r2;
    0x00024dd0 ldr r2, [sp, 0x38]                                |         r2 = *(arg_38h);
    0x00024dd2 ldr r2, [r2]                                      |         r2 = *(r2);
    0x00024dd4 strd r3, r2, [sp]                                 |         __asm ("strd r3, r2, [sp]");
    0x00024dd8 movs r2, 3                                        |         r2 = 3;
    0x00024dda ldr r3, [pc, 0x5c]                                |         
    0x00024ddc add r3, pc                                        |         r3 = 0x49c1a;
    0x00024dde blx 0x1fe70                                       |         fcn_0001fe70 ();
    0x00024de2 b 0x24a52                                         |         goto label_27;
    0x00024de4 bl 0x7a948                                        |         gst_parse_error_quark ();
    0x00024de8 ldr r3, [sp, 0x3c]                                |         r3 = *(arg_3ch);
    0x00024dea mov r1, r0                                        |         r1 = r0;
    0x00024dec movs r2, 1                                        |         r2 = 1;
    0x00024dee mov r0, r4                                        |         r0 = r4;
    0x00024df0 str r3, [sp]                                      |         *(sp) = r3;
    0x00024df2 ldr r3, [pc, 0x48]                                |         
    0x00024df4 add r3, pc                                        |         r3 = 0x49c36;
    0x00024df6 blx 0x1fe70                                       |         fcn_0001fe70 ();
    0x00024dfa b 0x24d98                                         |         
                                                                 |     }
                                                                 | label_90:
    0x00024dfc ldr r3, [pc, 0x40]                                |     
    0x00024dfe add r3, pc                                        |     r3 = 0x49c42;
    0x00024e00 b 0x24dce                                         |     goto label_40;
    0x0004336c push {r3, r4, r5, lr}                             |     
    0x0004336e ldr r3, [r0, 0x5c]                                |     r3 = *(arg_24hx5c);
                                                                 |     if (r3 != 0) {
    0x00043370 cbz r3, 0x43374                                   |         
    0x00043372 pop {r3, r4, r5, pc}                              |         
                                                                 |     }
    0x00043374 mov r4, r0                                        |     r4 = r0;
    0x00043376 add.w r5, r1, 0x40                                |     r5 = r1 + 0x40;
    0x0004337a str r3, [r1, 0x40]                                |     *((r1 + 0x40)) = r3;
    0x0004337c mov r0, r5                                        |     r0 = r5;
    0x0004337e str r3, [r1, 0x44]                                |     *((r1 + 0x44)) = r3;
    0x00043380 str r3, [r1, 0x48]                                |     *((r1 + 0x48)) = r3;
    0x00043382 str r3, [r1, 0x4c]                                |     *((r1 + 0x4c)) = r3;
    0x00043384 str r3, [r1, 0x50]                                |     *((r1 + 0x50)) = r3;
    0x00043386 str r3, [r1, 0x54]                                |     *((r1 + 0x54)) = r3;
    0x00043388 ldr r1, [r4, 0x18]                                |     r1 = *((r4 + 0x18));
    0x0004338a blx 0x2046c                                       |     fcn_0002046c ();
    0x0004338e mov r1, r5                                        |     r1 = r5;
    0x00043390 add.w r0, r4, 0x40                                |     r0 = r4 + 0x40;
    0x00043394 pop.w {r3, r4, r5, lr}                            |     
    0x00043398 b.w 0x1faf4                                       |     return void (*0x1faf4)() ();
                                                                 | }
    ; assembly                                                       | /* r2dec pseudo code output */
                                                                     | /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/libgstreamer-1.0.so.0.1803.0 @ 0x51d88 */
                                                                     | #include <stdint.h>
                                                                     |  
    ; (fcn) fcn.00051d88 ()                                          | void fcn_00051d88 (int16_t arg_0h, uint32_t arg1) {
                                                                     |     int16_t var_0h;
                                                                     |     int16_t var_4h;
                                                                     |     int16_t var_8h;
                                                                     |     int16_t var_ch;
                                                                     |     int16_t var_14h;
                                                                     |     int16_t var_18h;
                                                                     |     int16_t var_48h;
                                                                     |     int16_t var_68h;
                                                                     |     int16_t var_84h;
                                                                     |     r0 = arg1;
    0x00051d88 push.w {r4, r5, r6, r7, r8, sb, sl, fp, lr}           |     
    0x00051d8c mov r4, r0                                            |     r4 = r0;
    0x00051d8e ldr.w fp, [pc, 0x67c]                                 |     
    0x00051d92 sub sp, 0x114                                         |     
    0x00051d94 add fp, pc                                            |     fp = 0xa41a6;
    0x00051d96 cmp r0, 0                                             |     
                                                                     |     if (arg_0h == ) {
    0x00051d98 beq.w 0x51f70                                         |         goto label_16;
                                                                     |     }
    0x00051d9c mov r6, r1                                            |     r6 = r1;
    0x00051d9e mov r8, r2                                            |     r8 = r2;
    0x00051da0 cmp r1, 0                                             |     
                                                                     |     if (r1 == 0) {
    0x00051da2 beq.w 0x52142                                         |         goto label_17;
                                                                     |     }
                                                                     | label_4:
    0x00051da6 ldr.w r7, [pc, 0x668]                                 |     
    0x00051daa add r7, pc                                            |     r7 = 0xa41c0;
    0x00051dac adds r7, 0xb4                                         |     r7 += 0xb4;
    0x00051dae mov r0, r7                                            |     r0 = r7;
    0x00051db0 blx 0x204ec                                           |     g_list_nth_data ();
    0x00051db4 mov r1, r4                                            |     r1 = r4;
    0x00051db6 mov r0, r6                                            |     r0 = r6;
    0x00051db8 bl 0x5a21c                                            |     r0 = gst_registry_lookup ();
    0x00051dbc mov r5, r0                                            |     r5 = r0;
    0x00051dbe cmp r0, 0                                             |     
                                                                     |     if (r0 == 0) {
    0x00051dc0 beq.w 0x51f94                                         |         goto label_18;
                                                                     |     }
    0x00051dc4 ldr.w r3, [r0, 0x84]                                  |     r3 = *((r0 + 0x84));
    0x00051dc8 cmp r3, 0                                             |     
                                                                     |     if (r3 != 0) {
    0x00051dca bne.w 0x51f62                                         |         goto label_19;
                                                                     |     }
    0x00051dce str r3, [sp, 8]                                       |     var_8h = r3;
    0x00051dd0 blx 0x20428                                           |     r0 = fcn_00020428 ();
    0x00051dd4 mov r7, r0                                            |     r7 = r0;
    0x00051dd6 cmp r0, 0                                             |     
                                                                     |     if (r0 == 0) {
    0x00051dd8 beq.w 0x51fa4                                         |         goto label_20;
                                                                     |     }
                                                                     | label_0:
    0x00051ddc add r1, sp, 0x18                                      |     r1 += var_18h;
    0x00051dde mov r0, r4                                            |     r0 = r4;
    0x00051de0 blx 0x1fa94                                           |     r0 = fcn_0001fa94 ();
    0x00051de4 cmp r0, 0                                             |     
                                                                     |     if (r0 != 0) {
    0x00051de6 bne.w 0x52272                                         |         goto label_21;
                                                                     |     }
    0x00051dea ldr.w r1, [pc, 0x628]                                 |     
    0x00051dee mov r0, r4                                            |     r0 = r4;
    0x00051df0 add r1, pc                                            |     r1 = 0xa420a;
    0x00051df2 blx 0x20078                                           |     r0 = g_date_get_day ();
    0x00051df6 cmp r0, 0                                             |     
    0x00051df8 mov r0, r4                                            |     r0 = r4;
    0x00051dfa ite eq                                                |     
                                                                     |     if (r0 != 0) {
    0x00051dfc moveq r1, 2                                           |         r1 = 2;
                                                                     |     }
                                                                     |     if (r0 == 0) {
    0x00051dfe movne r1, 3                                           |         r1 = 3;
                                                                     |     }
    0x00051e00 blx 0x20588                                           |     r0 = g_date_valid ();
    0x00051e04 mov sb, r0                                            |     sb = r0;
    0x00051e06 cmp r0, 0                                             |     
                                                                     |     if (r0 == 0) {
    0x00051e08 beq.w 0x5230c                                         |         goto label_22;
                                                                     |     }
    0x00051e0c mov r0, r4                                            |     r0 = r4;
    0x00051e0e blx 0x1f3d8                                           |     r0 = fcn_0001f3d8 ();
    0x00051e12 ldrb r3, [r0]                                         |     r3 = *(r0);
    0x00051e14 mov r7, r0                                            |     r7 = r0;
    0x00051e16 mov r2, r0                                            |     r2 = r0;
    0x00051e18 movs r1, 0x5f                                         |     r1 = 0x5f;
                                                                     |     if (r3 == 0) {
    0x00051e1a cbz r3, 0x51e2a                                       |         goto label_23;
                                                                     |     }
                                                                     |     do {
    0x00051e1c cmp r3, 0x2d                                          |         
    0x00051e1e it eq                                                 |         
                                                                     |         if (r3 != 0x2d) {
    0x00051e20 strbeq r1, [r2]                                       |             *(r2) = r1;
                                                                     |         }
    0x00051e22 ldrb r3, [r2, 1]!                                     |         r3 = *((r2 += 1));
    0x00051e26 cmp r3, 0                                             |         
    0x00051e28 bne 0x51e1c                                           |         
                                                                     |     } while (r3 != 0);
                                                                     | label_23:
    0x00051e2a ldr.w r1, [pc, 0x5ec]                                 |     
    0x00051e2e mov r0, r7                                            |     r0 = r7;
    0x00051e30 add r1, pc                                            |     r1 = 0xa424e;
    0x00051e32 blx 0x20148                                           |     r0 = fcn_00020148 ();
    0x00051e36 cmp r0, 0                                             |     
                                                                     |     if (r0 == 0) {
    0x00051e38 beq.w 0x521c2                                         |         goto label_24;
                                                                     |     }
    0x00051e3c add.w sl, r7, 6                                       |     sl = r7 + 6;
    0x00051e40 movs r3, 6                                            |     r3 = 6;
    0x00051e42 str r3, [sp, 0xc]                                     |     var_ch = r3;
                                                                     | label_12:
    0x00051e44 movs r2, 0x2e                                         |     r2 = 0x2e;
    0x00051e46 mov.w r1, -1                                          |     r1 = -1;
    0x00051e4a mov r0, r7                                            |     r0 = r7;
    0x00051e4c blx 0x1f2a4                                           |     r0 = g_date_time_add ();
    0x00051e50 cmp r0, 0                                             |     
                                                                     |     if (r0 == 0) {
    0x00051e52 beq.w 0x521ec                                         |         goto label_25;
                                                                     |     }
                                                                     | label_7:
    0x00051e56 ldr r3, [sp, 0xc]                                     |     r3 = var_ch;
    0x00051e58 subs r0, r0, r7                                       |     r0 -= r7;
    0x00051e5a subs r1, r0, r3                                       |     r1 = r0 - r3;
                                                                     | label_8:
    0x00051e5c mov r0, sl                                            |     r0 = sl;
    0x00051e5e blx 0x1f890                                           |     r0 = fcn_0001f890 ();
    0x00051e62 mov sl, r0                                            |     sl = r0;
    0x00051e64 mov r0, r7                                            |     r0 = r7;
    0x00051e66 blx 0x1f14c                                           |     fcn_0001f14c ();
    0x00051e68 ldrd pc, r8, [r2, -0x37c]!                            |     __asm ("ldrd pc, r8, [r2, -0x37c]!");
    0x00051e6c movs r5, 0xb0                                         |     r5 = 0xb0;
    0x00051e6e mov r1, sl                                            |     r1 = sl;
    0x00051e70 ldr.w r0, [pc, 0x5ac]                                 |     
    0x00051e74 movs r3, 0                                            |     r3 = 0;
    0x00051e76 add r2, pc                                            |     r2 += pc;
    0x00051e78 add r0, pc                                            |     r0 = 0xa429c;
    0x00051e7a blx 0x1f678                                           |     r0 = fcn_0001f678 ();
    0x00051e7e mov r7, r0                                            |     r7 = r0;
    0x00051e80 mov r0, sl                                            |     r0 = sl;
    0x00051e82 add.w sl, sp, 0x14                                    |     sl += var_14h;
    0x00051e86 blx 0x1f14c                                           |     fcn_0001f14c ();
    0x00051e8a mov r2, sl                                            |     r2 = sl;
    0x00051e8c mov r1, r7                                            |     r1 = r7;
    0x00051e8e mov r0, sb                                            |     r0 = sb;
    0x00051e90 blx 0x1ffdc                                           |     r0 = g_value_get_flags ();
    0x00051e94 cmp r0, 0                                             |     
                                                                     |     if (r0 == 0) {
    0x00051e96 beq.w 0x52184                                         |         goto label_26;
                                                                     |     }
    0x00051e9a ldr r3, [sp, 0x14]                                    |     r3 = var_14h;
    0x00051e9c blx r3                                                |     uint32_t (*r3)(uint32_t) (r3);
    0x00051e9e str r0, [sp, 0x14]                                    |     var_14h = r0;
    0x00051ea0 mov r0, r7                                            |     r0 = r7;
    0x00051ea2 blx 0x1f14c                                           |     fcn_0001f14c ();
                                                                     | label_5:
    0x00051ea6 ldr.w r3, [pc, 0x57c]                                 |     
    0x00051eaa ldr r7, [sp, 0x14]                                    |     r7 = var_14h;
    0x00051eac add r3, pc                                            |     r3 = 0xa42d6;
    0x00051eae ldr.w sl, [r3, 0xa8]                                  |     sl = *(0xa437e);
    0x00051eb2 cmp.w sl, 0                                           |     
                                                                     |     if (sl == 0) {
    0x00051eb6 beq 0x51ed6                                           |         goto label_27;
                                                                     |     }
    0x00051eb8 ldr.w r2, [sl]                                        |     r2 = *(sl);
                                                                     |     if (r2 != 0) {
    0x00051ebc cbnz r2, 0x51eca                                      |         goto label_28;
                                                                     |     }
    0x00051ebe b 0x52250                                             |     goto label_29;
                                                                     |     do {
    0x00051ec0 ldr r2, [sl, 4]!                                      |         r2 = *((sl += 4));
    0x00051ec4 cmp r2, 0                                             |         
                                                                     |         if (r2 == 0) {
    0x00051ec6 beq.w 0x52250                                         |             goto label_29;
                                                                     |         }
                                                                     | label_28:
    0x00051eca mov r1, r4                                            |         r1 = r4;
    0x00051ecc mov r0, r7                                            |         r0 = r7;
    0x00051ece bl 0x51200                                            |         r0 = fcn_00051200 (r0, r1, r2);
    0x00051ed2 cmp r0, 0                                             |         
    0x00051ed4 beq 0x51ec0                                           |         
                                                                     |     } while (r0 == 0);
                                                                     | label_27:
    0x00051ed6 ldr r3, [sp, 8]                                       |     r3 = var_8h;
    0x00051ed8 cmp r3, 0                                             |     
                                                                     |     if (r3 != 0) {
    0x00051eda bne 0x51fbc                                           |         goto label_30;
                                                                     |     }
    0x00051edc str.w sb, [r5, 0x84]                                  |     __asm ("str.w sb, [r5, 0x84]");
                                                                     | label_9:
    0x00051ee0 bl 0x261cc                                            |     r0 = gst_segtrap_is_enabled ();
                                                                     |     if (r0 != 0) {
    0x00051ee4 cbz r0, 0x51f16                                       |         
    0x00051ee6 ldr.w sb, [pc, 0x540]                                 |         
    0x00051eea add sb, pc                                            |         sb = 0xa4318;
    0x00051eec ldr.w r1, [sb, 8]                                     |         r1 = *(0xa4320);
                                                                     |         if (r1 != 0) {
    0x00051ef0 cbnz r1, 0x51f16                                      |             goto label_31;
                                                                     |         }
    0x00051ef2 movs r2, 0x88                                         |         r2 = 0x88;
    0x00051ef4 movs r3, 1                                            |         r3 = 1;
    0x00051ef6 add.w r0, sp, r2                                      |         r0 = sp + r2;
    0x00051efa str.w r3, [sb, 8]                                     |         __asm ("str.w r3, [sb, 8]");
    0x00051efc adds r0, 8                                            |         r0 += 8;
    0x00051efe blx 0x1f724                                           |         fsync ();
    0x00051f02 ldr.w r3, [pc, 0x528]                                 |         r3 = *(0x0005242c);
    0x00051f06 add.w r2, sb, 0xc                                     |         r2 = sb + 0xc;
    0x00051f0a add r1, sp, 0x84                                      |         r1 += var_84h;
    0x00051f0c movs r0, 0xb                                          |         r0 = 0xb;
    0x00051f0e add r3, pc                                            |         r3 += pc;
    0x00051f10 str r3, [sp, 0x84]                                    |         var_84h = r3;
    0x00051f12 blx 0x20254                                           |         fcn_00020254 ();
                                                                     |     }
                                                                     | label_31:
    0x00051f16 mov r1, r7                                            |     r1 = r7;
    0x00051f18 ldr.w r7, [pc, 0x514]                                 |     
    0x00051f1c ldr r3, [r5, 0x7c]                                    |     r3 = *((r5 + 0x7c));
    0x00051f1e movs r2, 0                                            |     r2 = 0;
    0x00051f20 mov r0, r5                                            |     r0 = r5;
    0x00051f22 add r7, pc                                            |     r7 = 0xa4356;
    0x00051f24 str.w r3, [r7, 0x98]                                  |     __asm ("str.w r3, [r7, 0x98]");
    0x00051f28 bl 0x51350                                            |     fcn_00051350 (r0, r1, r2, r3);
    0x00051f2c ldr r3, [r7, 8]                                       |     r3 = *(0xa435e);
    0x00051f2e cmp r0, 0                                             |     
                                                                     |     if (r0 == 0) {
    0x00051f30 beq.w 0x52348                                         |         goto label_32;
                                                                     |     }
    0x00051f34 cmp r3, 0                                             |     
                                                                     |     if (r3 != 0) {
    0x00051f36 bne.w 0x52042                                         |         goto label_33;
                                                                     |     }
                                                                     | label_1:
    0x00051f3a ldr.w r3, [pc, 0x4f8]                                 |     
    0x00051f3e movs r2, 0                                            |     r2 = 0;
    0x00051f40 add r3, pc                                            |     r3 = 0xa437a;
    0x00051f42 str.w r2, [r3, 0x98]                                  |     __asm ("str.w r2, [r3, 0x98]");
    0x00051f46 ldr r3, [sp, 8]                                       |     r3 = var_8h;
    0x00051f48 cmp r3, 0                                             |     
                                                                     |     if (r3 != 0) {
    0x00051f4a bne.w 0x52052                                         |         goto label_34;
                                                                     |     }
                                                                     | label_2:
    0x00051f4e ldr.w r0, [pc, 0x4e8]                                 |     
    0x00051f52 add r0, pc                                            |     r0 = 0xa4390;
    0x00051f54 adds r0, 0xb4                                         |     r0 += 0xb4;
    0x00051f56 blx 0x1fbec                                           |     g_key_file_to_data ();
    0x00051f5a mov r0, r5                                            |     r0 = r5;
    0x00051f5c add sp, 0x114                                         |     
    0x00051f5e pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}            |     
                                                                     | label_19:
    0x00051f62 mov r0, r7                                            |     r0 = r7;
    0x00051f64 blx 0x1fbec                                           |     g_key_file_to_data ();
    0x00051f68 mov r0, r5                                            |     r0 = r5;
    0x00051f6a add sp, 0x114                                         |     
    0x00051f6c pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}            |     
                                                                     | label_16:
    0x00051f70 ldr.w r1, [pc, 0x4c8]                                 |     
    0x00051f74 mov r5, r0                                            |     r5 = r0;
    0x00051f76 ldr.w r3, [pc, 0x4c8]                                 |     r3 = *(0x52442);
    0x00051f7a ldr.w r2, [pc, 0x4c8]                                 |     
    0x00051f7e add r1, pc                                            |     r1 = 0xa43be;
    0x00051f80 ldr.w r0, [fp, r3]                                    |     r0 = *((fp + r3));
    0x00051f84 adds r1, 0x88                                         |     r1 += 0x88;
    0x00051f86 add r2, pc                                            |     r2 = 0xa43d0;
    0x00051f88 blx 0x1fdd0                                           |     fcn_0001fdd0 ();
    0x00051f8c mov r0, r5                                            |     r0 = r5;
    0x00051f8e add sp, 0x114                                         |     
    0x00051f90 pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}            |     
    0x00051f92 ldrh r0, [r6, 0x3e]                                   |     r0 = *((r6 + 0x3e));
                                                                     | label_18:
    0x00051f94 movs r3, 1                                            |     r3 = 1;
    0x00051f96 str r3, [sp, 8]                                       |     var_8h = r3;
    0x00051f98 blx 0x20428                                           |     r0 = fcn_00020428 ();
    0x00051f9c mov r7, r0                                            |     r7 = r0;
    0x00051f9e cmp r0, 0                                             |     
                                                                     |     if (r0 != 0) {
    0x00051fa0 bne.w 0x51ddc                                         |         goto label_0;
                                                                     |     }
                                                                     | label_20:
    0x00051fa4 bl 0x518d4                                            |     gst_plugin_error_quark ();
    0x00051fa8 ldr.w r3, [pc, 0x49c]                                 |     
    0x00051fac mov r1, r0                                            |     r1 = r0;
    0x00051fae mov r2, r7                                            |     r2 = r7;
    0x00051fb0 mov r0, r8                                            |     r0 = r8;
    0x00051fb2 add r3, pc                                            |     r3 = 0xa43fe;
    0x00051fb4 blx 0x1fe70                                           |     fcn_0001fe70 ();
                                                                     |     if (r5 == 0) {
    0x00051fb8 cbz r5, 0x5202c                                       |         goto label_6;
                                                                     |     }
    0x00051fba b 0x52026                                             |     goto label_3;
                                                                     | label_30:
    0x00051fbc bl 0x51890                                            |     gst_plugin_get_type ();
    0x00051fc0 movs r1, 0                                            |     r1 = 0;
    0x00051fc2 blx 0x1f970                                           |     g_mapped_file_get_length ();
    0x00051fc4 vldmia r6, {d25, d26, d27, d28, d29, d30, d31}        |     __asm ("vldmia r6, {d25, d26, d27, d28, d29, d30, d31}");
    0x00051fc8 mov r5, r0                                            |     r5 = r0;
    0x00051fca str.w r3, [r0, 0x90]                                  |     __asm ("str.w r3, [r0, 0x90]");
    0x00051fce mov r0, r4                                            |     r0 = r4;
    0x00051fd0 ldrd r2, r3, [sp, 0x48]                               |     __asm ("ldrd r2, r3, [var_48h]");
    0x00051fd4 strd r2, r3, [r5, 0x88]                               |     __asm ("strd r2, r3, [r5, 0x88]");
    0x00051fd8 blx 0x1f560                                           |     fcn_0001f560 ();
    0x00051fdc str r0, [r5, 0x7c]                                    |     *((r5 + 0x7c)) = r0;
    0x00051fde mov r0, r4                                            |     r0 = r4;
    0x00051fe0 blx 0x1f3d8                                           |     fcn_0001f3d8 ();
    0x00051fe4 strd r0, sb, [r5, 0x80]                               |     __asm ("strd r0, sb, [r5, 0x80]");
    0x00051fe8 ldr r3, [r7, 8]                                       |     r3 = *((r7 + 8));
                                                                     |     if (r3 != 0) {
    0x00051fea cbz r3, 0x51ff0                                       |         
    0x00051fec ldrb r1, [r3]                                         |         r1 = *(r3);
                                                                     |         if (r1 != 0) {
    0x00051fee cbnz r1, 0x52062                                      |             goto label_35;
                                                                     |         }
                                                                     |     }
    0x00051ff0 ldr.w r6, [pc, 0x458]                                 |     
    0x00051ff4 movs r1, 0x10                                         |     r1 = 0x10;
    0x00051ff6 ldr.w r3, [pc, 0x448]                                 |     r3 = *(0x52442);
    0x00051ffa ldr.w r2, [pc, 0x454]                                 |     
    0x00051ffe add r6, pc                                            |     r6 = 0xa444e;
    0x00052000 ldr.w r0, [fp, r3]                                    |     r0 = *((fp + r3));
    0x00052004 mov r3, r4                                            |     r3 = r4;
    0x00052006 add r2, pc                                            |     r2 = 0xa445c;
    0x00052008 str r6, [sp]                                          |     *(sp) = r6;
    0x0005200a blx 0x20930                                           |     g_param_spec_ref ();
    0x0005200e bl 0x518d4                                            |     gst_plugin_error_quark ();
    0x00052012 ldr.w r3, [pc, 0x440]                                 |     
    0x00052016 mov r1, r0                                            |     r1 = r0;
    0x00052018 movs r2, 0                                            |     r2 = 0;
    0x0005201a mov r0, r8                                            |     r0 = r8;
    0x0005201c str r6, [sp, 4]                                       |     var_4h = r6;
    0x0005201e add r3, pc                                            |     r3 = 0xa4478;
    0x00052020 str r4, [sp]                                          |     *(sp) = r4;
    0x00052022 blx 0x1fe70                                           |     fcn_0001fe70 ();
                                                                     |     do {
                                                                     | label_3:
    0x00052026 mov r0, r5                                            |         r0 = r5;
    0x00052028 bl 0x26570                                            |         gst_object_unref ();
                                                                     | label_6:
    0x0005202c ldr.w r0, [pc, 0x428]                                 |         
    0x00052030 movs r5, 0                                            |         r5 = 0;
    0x00052032 add r0, pc                                            |         r0 = 0xa448e;
    0x00052034 adds r0, 0xb4                                         |         r0 += 0xb4;
    0x00052036 blx 0x1fbec                                           |         g_key_file_to_data ();
    0x0005203a mov r0, r5                                            |         r0 = r5;
    0x0005203c add sp, 0x114                                         |         
    0x0005203e pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}            |         
                                                                     | label_33:
    0x00052042 movs r2, 0                                            |         r2 = 0;
    0x00052044 add.w r1, r7, 0xc                                     |         r1 = r7 + 0xc;
    0x00052048 movs r0, 0xb                                          |         r0 = 0xb;
    0x0005204a str r2, [r7, 8]                                       |         *((r7 + 8)) = r2;
    0x0005204c blx 0x20254                                           |         fcn_00020254 ();
    0x00052050 b 0x51f3a                                             |         goto label_1;
                                                                     | label_34:
    0x00052052 mov r0, r5                                            |         r0 = r5;
    0x00052054 bl 0x26538                                            |         gst_object_ref ();
    0x00052058 mov r1, r5                                            |         r1 = r5;
    0x0005205a mov r0, r6                                            |         r0 = r6;
    0x0005205c bl 0x595a0                                            |         gst_registry_add_plugin ();
    0x00052060 b 0x51f4e                                             |         goto label_2;
                                                                     | label_35:
    0x00052062 ldr r2, [r7, 0xc]                                     |         r2 = *((r7 + 0xc));
                                                                     |         if (r2 != 0) {
    0x00052064 cbz r2, 0x5206a                                       |             
    0x00052066 ldrb r2, [r2]                                         |             r2 = *(r2);
                                                                     |             if (r2 != 0) {
    0x00052068 cbnz r2, 0x5209a                                      |                 goto label_36;
                                                                     |             }
                                                                     |         }
    0x0005206a ldr r6, [pc, 0x3f0]                                   |         
    0x0005206c movs r1, 0x10                                         |         r1 = 0x10;
    0x0005206e ldr r3, [pc, 0x3d0]                                   |         r3 = *(0x52442);
    0x00052070 ldr r2, [pc, 0x3ec]                                   |         
    0x00052072 add r6, pc                                            |         r6 = 0xa44d4;
    0x00052074 ldr.w r0, [fp, r3]                                    |         r0 = *((fp + r3));
    0x00052078 mov r3, r4                                            |         r3 = r4;
    0x0005207a add r2, pc                                            |         r2 = 0xa44de;
    0x0005207c str r6, [sp]                                          |         *(sp) = r6;
    0x0005207e blx 0x20930                                           |         g_param_spec_ref ();
    0x00052082 bl 0x518d4                                            |         gst_plugin_error_quark ();
    0x00052086 ldr r3, [pc, 0x3dc]                                   |         
    0x00052088 mov r1, r0                                            |         r1 = r0;
    0x0005208a movs r2, 0                                            |         r2 = 0;
    0x0005208c mov r0, r8                                            |         r0 = r8;
    0x0005208e str r6, [sp, 4]                                       |         var_4h = r6;
    0x00052090 add r3, pc                                            |         r3 = 0xa44fa;
    0x00052092 str r4, [sp]                                          |         *(sp) = r4;
    0x00052094 blx 0x1fe70                                           |         fcn_0001fe70 ();
    0x00052098 b 0x52026                                             |         
                                                                     |     } while (1);
                                                                     | label_36:
    0x0005209a ldr r2, [r7, 0x14]                                    |     r2 = *((r7 + 0x14));
                                                                     |     if (r2 != 0) {
    0x0005209c cbz r2, 0x520a2                                       |         
    0x0005209e ldrb r2, [r2]                                         |         r2 = *(r2);
                                                                     |         if (r2 != 0) {
    0x000520a0 cbnz r2, 0x520d2                                      |             goto label_37;
                                                                     |         }
                                                                     |     }
    0x000520a2 ldr r6, [pc, 0x3c4]                                   |     
    0x000520a4 movs r1, 0x10                                         |     r1 = 0x10;
    0x000520a6 ldr r3, [pc, 0x398]                                   |     r3 = *(0x52442);
    0x000520a8 ldr r2, [pc, 0x3c0]                                   |     
    0x000520aa add r6, pc                                            |     r6 = 0xa4518;
    0x000520ac ldr.w r0, [fp, r3]                                    |     r0 = *((fp + r3));
    0x000520b0 mov r3, r4                                            |     r3 = r4;
    0x000520b2 add r2, pc                                            |     r2 = 0xa4522;
    0x000520b4 str r6, [sp]                                          |     *(sp) = r6;
    0x000520b6 blx 0x20930                                           |     g_param_spec_ref ();
    0x000520ba bl 0x518d4                                            |     gst_plugin_error_quark ();
    0x000520be ldr r3, [pc, 0x3b0]                                   |     
    0x000520c0 mov r1, r0                                            |     r1 = r0;
    0x000520c2 movs r2, 0                                            |     r2 = 0;
    0x000520c4 mov r0, r8                                            |     r0 = r8;
    0x000520c6 str r6, [sp, 4]                                       |     var_4h = r6;
    0x000520c8 add r3, pc                                            |     r3 = 0xa453e;
    0x000520ca str r4, [sp]                                          |     *(sp) = r4;
    0x000520cc blx 0x1fe70                                           |     fcn_0001fe70 ();
    0x000520d0 b 0x52026                                             |     goto label_3;
                                                                     | label_37:
    0x000520d2 ldr r2, [r7, 0x18]                                    |     r2 = *((r7 + 0x18));
                                                                     |     if (r2 != 0) {
    0x000520d4 cbz r2, 0x520da                                       |         
    0x000520d6 ldrb r2, [r2]                                         |         r2 = *(r2);
                                                                     |         if (r2 != 0) {
    0x000520d8 cbnz r2, 0x5210a                                      |             goto label_38;
                                                                     |         }
                                                                     |     }
    0x000520da ldr r6, [pc, 0x398]                                   |     
    0x000520dc movs r1, 0x10                                         |     r1 = 0x10;
    0x000520de ldr r3, [pc, 0x360]                                   |     r3 = *(0x52442);
    0x000520e0 ldr r2, [pc, 0x394]                                   |     
    0x000520e2 add r6, pc                                            |     r6 = 0xa455c;
    0x000520e4 ldr.w r0, [fp, r3]                                    |     r0 = *((fp + r3));
    0x000520e8 mov r3, r4                                            |     r3 = r4;
    0x000520ea add r2, pc                                            |     r2 = 0xa4566;
    0x000520ec str r6, [sp]                                          |     *(sp) = r6;
    0x000520ee blx 0x20930                                           |     g_param_spec_ref ();
    0x000520f2 bl 0x518d4                                            |     gst_plugin_error_quark ();
    0x000520f6 ldr r3, [pc, 0x384]                                   |     
    0x000520f8 mov r1, r0                                            |     r1 = r0;
    0x000520fa movs r2, 0                                            |     r2 = 0;
    0x000520fc mov r0, r8                                            |     r0 = r8;
    0x000520fe str r6, [sp, 4]                                       |     var_4h = r6;
    0x00052100 add r3, pc                                            |     r3 = 0xa4582;
    0x00052102 str r4, [sp]                                          |     *(sp) = r4;
    0x00052104 blx 0x1fe70                                           |     fcn_0001fe70 ();
    0x00052108 b 0x52026                                             |     goto label_3;
                                                                     | label_38:
    0x0005210a ldr r2, [r7, 0x1c]                                    |     r2 = *((r7 + 0x1c));
                                                                     |     if (r2 != 0) {
    0x0005210c cbz r2, 0x52112                                       |         
    0x0005210e ldrb r2, [r2]                                         |         r2 = *(r2);
                                                                     |         if (r2 != 0) {
    0x00052110 cbnz r2, 0x5214a                                      |             goto label_39;
                                                                     |         }
                                                                     |     }
    0x00052112 ldr r6, [pc, 0x36c]                                   |     
    0x00052114 movs r1, 0x10                                         |     r1 = 0x10;
    0x00052116 ldr r3, [pc, 0x328]                                   |     r3 = *(0x52442);
    0x00052118 ldr r2, [pc, 0x368]                                   |     
    0x0005211a add r6, pc                                            |     r6 = 0xa45a0;
    0x0005211c ldr.w r0, [fp, r3]                                    |     r0 = *((fp + r3));
    0x00052120 mov r3, r4                                            |     r3 = r4;
    0x00052122 add r2, pc                                            |     r2 = 0xa45aa;
    0x00052124 str r6, [sp]                                          |     *(sp) = r6;
    0x00052126 blx 0x20930                                           |     g_param_spec_ref ();
    0x0005212a bl 0x518d4                                            |     gst_plugin_error_quark ();
    0x0005212e ldr r3, [pc, 0x358]                                   |     
    0x00052130 mov r1, r0                                            |     r1 = r0;
    0x00052132 movs r2, 0                                            |     r2 = 0;
    0x00052134 mov r0, r8                                            |     r0 = r8;
    0x00052136 str r6, [sp, 4]                                       |     var_4h = r6;
    0x00052138 add r3, pc                                            |     r3 = 0xa45c6;
    0x0005213a str r4, [sp]                                          |     *(sp) = r4;
    0x0005213c blx 0x1fe70                                           |     fcn_0001fe70 ();
    0x00052140 b 0x52026                                             |     goto label_3;
                                                                     | label_17:
    0x00052142 bl 0x59564                                            |     r0 = gst_registry_get ();
    0x00052146 mov r6, r0                                            |     r6 = r0;
    0x00052148 b 0x51da6                                             |     goto label_4;
                                                                     | label_39:
    0x0005214a ldr r2, [r7, 0x20]                                    |     r2 = *((r7 + 0x20));
                                                                     |     if (r2 != 0) {
    0x0005214c cbz r2, 0x52154                                       |         
    0x0005214e ldrb r2, [r2]                                         |         r2 = *(r2);
    0x00052150 cmp r2, 0                                             |         
                                                                     |         if (r2 != 0) {
    0x00052152 bne 0x521f6                                           |             goto label_40;
                                                                     |         }
                                                                     |     }
    0x00052154 ldr r6, [pc, 0x334]                                   |     
    0x00052156 movs r1, 0x10                                         |     r1 = 0x10;
    0x00052158 ldr r3, [pc, 0x2e4]                                   |     r3 = *(0x52440);
    0x0005215a ldr r2, [pc, 0x334]                                   |     
    0x0005215c add r6, pc                                            |     r6 = 0xa45ec;
    0x0005215e ldr.w r0, [fp, r3]                                    |     r0 = *((fp + r3));
    0x00052162 mov r3, r4                                            |     r3 = r4;
    0x00052164 add r2, pc                                            |     r2 = 0xa45fa;
    0x00052166 str r6, [sp]                                          |     *(sp) = r6;
    0x00052168 blx 0x20930                                           |     g_param_spec_ref ();
    0x0005216c bl 0x518d4                                            |     gst_plugin_error_quark ();
    0x00052170 ldr r3, [pc, 0x320]                                   |     
    0x00052172 mov r1, r0                                            |     r1 = r0;
    0x00052174 movs r2, 0                                            |     r2 = 0;
    0x00052176 mov r0, r8                                            |     r0 = r8;
    0x00052178 str r6, [sp, 4]                                       |     var_4h = r6;
    0x0005217a add r3, pc                                            |     r3 = 0xa4612;
    0x0005217c str r4, [sp]                                          |     *(sp) = r4;
    0x0005217e blx 0x1fe70                                           |     fcn_0001fe70 ();
    0x00052182 b 0x52026                                             |     goto label_3;
                                                                     | label_26:
    0x00052184 ldr r1, [pc, 0x310]                                   |     
    0x00052186 mov r2, sl                                            |     r2 = sl;
    0x00052188 mov r0, sb                                            |     r0 = sb;
    0x0005218a add r1, pc                                            |     r1 = 0xa4626;
    0x0005218c blx 0x1ffdc                                           |     r0 = g_value_get_flags ();
    0x00052190 mov sl, r0                                            |     sl = r0;
    0x00052192 mov r0, r7                                            |     r0 = r7;
    0x00052194 blx 0x1f14c                                           |     fcn_0001f14c ();
    0x00052198 cmp.w sl, 0                                           |     
                                                                     |     if (sl != 0) {
    0x0005219c bne.w 0x51ea6                                         |         goto label_5;
                                                                     |     }
    0x000521a0 bl 0x518d4                                            |     gst_plugin_error_quark ();
    0x000521a4 ldr r3, [pc, 0x2f4]                                   |     
    0x000521a6 mov r1, r0                                            |     r1 = r0;
    0x000521a8 mov r2, sl                                            |     r2 = sl;
    0x000521aa mov r0, r8                                            |     r0 = r8;
    0x000521ac str r4, [sp]                                          |     *(sp) = r4;
    0x000521ae add r3, pc                                            |     r3 = 0xa464e;
    0x000521b0 blx 0x1fe70                                           |     fcn_0001fe70 ();
    0x000521b4 mov r0, sb                                            |     r0 = sb;
    0x000521b6 blx 0x1f5ec                                           |     g_list_foreach ();
    0x000521ba cmp r5, 0                                             |     
                                                                     |     if (r5 == 0) {
    0x000521bc beq.w 0x5202c                                         |         goto label_6;
                                                                     |     }
    0x000521c0 b 0x52026                                             |     goto label_3;
                                                                     | label_24:
    0x000521c2 ldr r1, [pc, 0x2dc]                                   |     
    0x000521c4 mov r0, r7                                            |     r0 = r7;
    0x000521c6 add r1, pc                                            |     r1 = 0xa466c;
    0x000521c8 blx 0x20148                                           |     r0 = fcn_00020148 ();
    0x000521cc cmp r0, 0                                             |     
                                                                     |     if (r0 == 0) {
    0x000521ce beq.w 0x522f6                                         |         goto label_41;
                                                                     |     }
                                                                     | label_11:
    0x000521d2 movs r3, 3                                            |     r3 = 3;
    0x000521d4 movs r2, 0x2e                                         |     r2 = 0x2e;
    0x000521d6 mov.w r1, -1                                          |     r1 = -1;
    0x000521da mov r0, r7                                            |     r0 = r7;
    0x000521dc add.w sl, r7, 3                                       |     sl = r7 + 3;
    0x000521e0 str r3, [sp, 0xc]                                     |     var_ch = r3;
    0x000521e2 blx 0x1f2a4                                           |     r0 = g_date_time_add ();
    0x000521e6 cmp r0, 0                                             |     
                                                                     |     if (r0 != 0) {
    0x000521e8 bne.w 0x51e56                                         |         goto label_7;
                                                                     |     }
                                                                     | label_25:
    0x000521ec mov r0, sl                                            |     r0 = sl;
    0x000521ee blx 0x1fc4c                                           |     r0 = g_param_value_validate ();
    0x000521f2 mov r1, r0                                            |     r1 = r0;
    0x000521f4 b 0x51e5c                                             |     goto label_8;
                                                                     | label_40:
    0x000521f6 ldr r2, [r7, 0x24]                                    |     r2 = *((r7 + 0x24));
    0x000521f8 cmp r2, 0                                             |     
                                                                     |     if (r2 == 0) {
    0x000521fa beq 0x5229e                                           |         goto label_42;
                                                                     |     }
    0x000521fc ldrb r2, [r2]                                         |     r2 = *(r2);
    0x000521fe cmp r2, 0                                             |     
                                                                     |     if (r2 == 0) {
    0x00052200 beq 0x5229e                                           |         goto label_42;
                                                                     |     }
    0x00052202 cmp r1, 0x22                                          |     
                                                                     |     if (r1 == 0x22) {
    0x00052204 beq.w 0x5236e                                         |         goto label_43;
                                                                     |     }
                                                                     | label_13:
    0x00052208 ldr r0, [r7, 0x28]                                    |     r0 = *((r7 + 0x28));
    0x0005220a cmp r0, 0                                             |     
                                                                     |     if (r0 == 0) {
    0x0005220c beq.w 0x51ee0                                         |         goto label_9;
                                                                     |     }
    0x00052210 ldr r3, [pc, 0x290]                                   |     
    0x00052212 str r0, [sp, 0x84]                                    |     var_84h = r0;
    0x00052214 ldrb r2, [r0]                                         |     r2 = *(r0);
    0x00052216 ldr.w r3, [fp, r3]                                    |     r3 = *((fp + r3));
    0x0005221a ldr r3, [r3]                                          |     r3 = *(0x524a4);
    0x0005221c ldrh.w r3, [r3, r2, lsl 1]                            |     offset_0 = r2 << 1;
                                                                     |     r3 = *((r3 + offset_0));
    0x00052220 lsls r3, r3, 0x1c                                     |     r3 <<= 0x1c;
                                                                     |     if (r3 < r3) {
    0x00052222 bmi 0x522ce                                           |         goto label_44;
                                                                     |     }
                                                                     | label_10:
    0x00052224 ldr r3, [pc, 0x218]                                   |     r3 = *(0x52440);
    0x00052226 movs r1, 0x10                                         |     r1 = 0x10;
    0x00052228 ldr.w r2, [fp, r3]                                    |     r2 = *((fp + r3));
    0x0005222c mov r3, r4                                            |     r3 = r4;
    0x0005222e str r0, [sp]                                          |     *(sp) = r0;
    0x00052230 mov r0, r2                                            |     r0 = r2;
    0x00052232 ldr r2, [pc, 0x274]                                   |     
    0x00052234 add r2, pc                                            |     r2 = 0xa46e2;
    0x00052236 blx 0x20930                                           |     g_param_spec_ref ();
    0x0005223a bl 0x518d4                                            |     gst_plugin_error_quark ();
    0x0005223e ldr r3, [pc, 0x26c]                                   |     
    0x00052240 mov r1, r0                                            |     r1 = r0;
    0x00052242 movs r2, 0                                            |     r2 = 0;
    0x00052244 mov r0, r8                                            |     r0 = r8;
    0x00052246 str r4, [sp]                                          |     *(sp) = r4;
    0x00052248 add r3, pc                                            |     r3 = 0xa46fa;
    0x0005224a blx 0x1fe70                                           |     fcn_0001fe70 ();
    0x0005224e b 0x52026                                             |     goto label_3;
                                                                     | label_29:
    0x00052250 bl 0x518d4                                            |     gst_plugin_error_quark ();
    0x00052254 ldr r3, [pc, 0x258]                                   |     
    0x00052256 mov r1, r0                                            |     r1 = r0;
    0x00052258 movs r2, 0                                            |     r2 = 0;
    0x0005225a mov r0, r8                                            |     r0 = r8;
    0x0005225c str r4, [sp]                                          |     *(sp) = r4;
    0x0005225e add r3, pc                                            |     r3 = 0xa4712;
    0x00052260 blx 0x1fe70                                           |     fcn_0001fe70 ();
    0x00052264 mov r0, sb                                            |     r0 = sb;
    0x00052266 blx 0x1f5ec                                           |     g_list_foreach ();
    0x0005226a cmp r5, 0                                             |     
                                                                     |     if (r5 == 0) {
    0x0005226c beq.w 0x5202c                                         |         goto label_6;
                                                                     |     }
    0x00052270 b 0x52026                                             |     goto label_3;
                                                                     | label_21:
    0x00052272 bl 0x518d4                                            |     r0 = gst_plugin_error_quark ();
    0x00052276 mov r6, r0                                            |     r6 = r0;
    0x00052278 blx 0x209a0                                           |     r0 = fcn_000209a0 ();
    0x0005227c ldr r0, [r0]                                          |     r0 = *(r0);
    0x0005227e blx 0x205a0                                           |     r0 = g_value_take_object ();
    0x00052282 mov r3, r0                                            |     r3 = r0;
    0x00052284 mov r1, r6                                            |     r1 = r6;
    0x00052286 str r3, [sp, 4]                                       |     var_4h = r3;
    0x00052288 mov r0, r8                                            |     r0 = r8;
    0x0005228a ldr r3, [pc, 0x228]                                   |     
    0x0005228c movs r2, 0                                            |     r2 = 0;
    0x0005228e str r4, [sp]                                          |     *(sp) = r4;
    0x00052290 add r3, pc                                            |     r3 = 0xa474a;
    0x00052292 blx 0x1fe70                                           |     fcn_0001fe70 ();
    0x00052296 cmp r5, 0                                             |     
                                                                     |     if (r5 == 0) {
    0x00052298 beq.w 0x5202c                                         |         goto label_6;
                                                                     |     }
    0x0005229a add r6, sp, 0x320                                     |     r6 = sp + 0x320;
    0x0005229c b 0x52026                                             |     goto label_3;
                                                                     | label_42:
    0x0005229e ldr r6, [pc, 0x218]                                   |     
    0x000522a0 movs r1, 0x10                                         |     r1 = 0x10;
    0x000522a2 ldr r3, [pc, 0x19c]                                   |     r3 = *(0x52442);
    0x000522a4 ldr r2, [pc, 0x214]                                   |     
    0x000522a6 add r6, pc                                            |     r6 = 0xa4764;
    0x000522a8 ldr.w r0, [fp, r3]                                    |     r0 = *((fp + r3));
    0x000522ac mov r3, r4                                            |     r3 = r4;
    0x000522ae add r2, pc                                            |     r2 = 0xa476e;
    0x000522b0 str r6, [sp]                                          |     *(sp) = r6;
    0x000522b2 blx 0x20930                                           |     g_param_spec_ref ();
    0x000522b6 bl 0x518d4                                            |     gst_plugin_error_quark ();
    0x000522ba ldr r3, [pc, 0x204]                                   |     
    0x000522bc mov r1, r0                                            |     r1 = r0;
    0x000522be movs r2, 0                                            |     r2 = 0;
    0x000522c0 mov r0, r8                                            |     r0 = r8;
    0x000522c2 str r6, [sp, 4]                                       |     var_4h = r6;
    0x000522c4 add r3, pc                                            |     r3 = 0xa478a;
    0x000522c6 str r4, [sp]                                          |     *(sp) = r4;
    0x000522c8 blx 0x1fe70                                           |     fcn_0001fe70 ();
    0x000522cc b 0x52026                                             |     goto label_3;
                                                                     | label_44:
    0x000522ce add.w sb, sp, 0x84                                    |     sb += var_84h;
    0x000522d2 movs r2, 0xa                                          |     r2 = 0xa;
    0x000522d4 mov r1, sb                                            |     r1 = sb;
    0x000522d6 blx 0x1fdb4                                           |     r0 = g_set_error ();
    0x000522da subs.w r0, r0, 0x7d0                                  |     r0 -= 0x7d0;
    0x000522de sbc r1, r1, 0                                         |     __asm ("sbc r1, r1, 0");
    0x000522e2 cmp r0, 0x65                                          |     
    0x000522e4 sbcs r1, r1, 0                                        |     __asm ("sbcs r1, r1, 0");
                                                                     |     if (r0 < 0x65) {
    0x000522e8 bhs 0x522f2                                           |         
    0x000522ea ldr r0, [sp, 0x84]                                    |         r0 = var_84h;
    0x000522ec ldrb r3, [r0]                                         |         r3 = *(r0);
    0x000522ee cmp r3, 0x2d                                          |         
                                                                     |         if (r3 == 0x2d) {
    0x000522f0 beq 0x52380                                           |             goto label_45;
                                                                     |         }
                                                                     |     }
                                                                     | label_14:
    0x000522f2 ldr r0, [r7, 0x28]                                    |     r0 = *((r7 + 0x28));
    0x000522f4 b 0x52224                                             |     goto label_10;
                                                                     | label_41:
    0x000522f6 ldr r1, [pc, 0x1cc]                                   |     
    0x000522f8 mov r0, r7                                            |     r0 = r7;
    0x000522fa add r1, pc                                            |     r1 = 0xa47c4;
    0x000522fc blx 0x20148                                           |     r0 = fcn_00020148 ();
    0x00052300 cmp r0, 0                                             |     
                                                                     |     if (r0 != 0) {
    0x00052302 bne.w 0x521d2                                         |         goto label_11;
                                                                     |     }
    0x00052306 mov sl, r7                                            |     sl = r7;
    0x00052308 str r0, [sp, 0xc]                                     |     var_ch = r0;
    0x0005230a b 0x51e44                                             |     goto label_12;
                                                                     | label_22:
    0x0005230c bl 0x518d4                                            |     r0 = gst_plugin_error_quark ();
    0x00052310 mov r6, r0                                            |     r6 = r0;
    0x00052312 blx 0x20644                                           |     fcn_00020644 ();
    0x00052316 ldr r3, [pc, 0x1b0]                                   |     
    0x00052318 mov r2, sb                                            |     r2 = sb;
    0x0005231a mov r1, r6                                            |     r1 = r6;
    0x0005231c str r0, [sp]                                          |     *(sp) = r0;
    0x0005231e mov r0, r8                                            |     r0 = r8;
    0x00052320 add r3, pc                                            |     r3 = 0xa47ee;
    0x00052322 blx 0x1fe70                                           |     fcn_0001fe70 ();
    0x00052326 blx 0x20644                                           |     fcn_00020644 ();
    0x0005232a ldr r2, [pc, 0x114]                                   |     r2 = *(0x52442);
    0x0005232c mov r3, r4                                            |     r3 = r4;
    0x0005232e ldr.w r1, [fp, r2]                                    |     r1 = *((fp + r2));
    0x00052332 ldr r2, [pc, 0x198]                                   |     
    0x00052334 str r0, [sp]                                          |     *(sp) = r0;
    0x00052336 mov r0, r1                                            |     r0 = r1;
    0x00052338 movs r1, 0x10                                         |     r1 = 0x10;
    0x0005233a add r2, pc                                            |     r2 = 0xa480c;
    0x0005233c blx 0x20930                                           |     g_param_spec_ref ();
    0x00052340 cmp r5, 0                                             |     
                                                                     |     if (r5 == 0) {
    0x00052342 beq.w 0x5202c                                         |         goto label_6;
                                                                     |     }
    0x00052346 b 0x52026                                             |     goto label_3;
                                                                     |     if (r3 != 0) {
                                                                     | label_32:
    0x00052348 cbz r3, 0x52358                                       |         
    0x0005234a mov r2, r0                                            |         r2 = r0;
    0x0005234c str r0, [r7, 8]                                       |         *((r7 + 8)) = r0;
    0x0005234e add.w r1, r7, 0xc                                     |         r1 = r7 + 0xc;
    0x00052352 movs r0, 0xb                                          |         r0 = 0xb;
    0x00052354 blx 0x20254                                           |         fcn_00020254 ();
                                                                     |     }
    0x00052358 bl 0x518d4                                            |     gst_plugin_error_quark ();
    0x0005235c ldr r3, [pc, 0x170]                                   |     
    0x0005235e mov r1, r0                                            |     r1 = r0;
    0x00052360 movs r2, 0                                            |     r2 = 0;
    0x00052362 mov r0, r8                                            |     r0 = r8;
    0x00052364 str r4, [sp]                                          |     *(sp) = r4;
    0x00052366 add r3, pc                                            |     r3 = 0xa483a;
    0x00052368 blx 0x1fe70                                           |     fcn_0001fe70 ();
    0x0005236a stc p6, c14, [r2, 0x16c]                              |     __asm ("stc p6, c14, [r2, 0x16c]");
                                                                     | label_43:
    0x0005236e ldr r2, [pc, 0xd0]                                    |     r2 = *(0x52442);
    0x00052370 movs r1, 0x10                                         |     r1 = 0x10;
    0x00052372 ldr.w r0, [fp, r2]                                    |     r0 = *((fp + r2));
    0x00052374 movs r2, r0                                           |     r2 = r0;
    0x00052376 ldr r2, [pc, 0x15c]                                   |     
    0x00052378 add r2, pc                                            |     r2 = 0xa4852;
    0x0005237a blx 0x20930                                           |     g_param_spec_ref ();
    0x0005237e b 0x52208                                             |     goto label_13;
                                                                     | label_45:
    0x00052380 movs r2, 0xa                                          |     r2 = 0xa;
    0x00052382 adds r0, 1                                            |     r0++;
    0x00052384 mov r1, sb                                            |     r1 = sb;
    0x00052386 blx 0x1fdb4                                           |     r0 = g_set_error ();
    0x0005238a subs r3, r0, 1                                        |     r3 = r0 - 1;
    0x0005238c sbc r2, r1, 0                                         |     __asm ("sbc r2, r1, 0");
    0x0005238e lsls r0, r0, 8                                        |     r0 <<= 8;
    0x00052390 cmp r3, 0xc                                           |     
    0x00052392 sbcs r2, r2, 0                                        |     __asm ("sbcs r2, r2, 0");
                                                                     |     if (r3 >= 0xc) {
    0x00052396 bhs 0x522f2                                           |         goto label_14;
                                                                     |     }
    0x00052398 ldr r0, [sp, 0x84]                                    |     r0 = var_84h;
    0x0005239a ldrb r3, [r0]                                         |     r3 = *(r0);
    0x0005239c cmp r3, 0x2d                                          |     
                                                                     |     if (r3 != 0x2d) {
    0x0005239e bne 0x522f2                                           |         goto label_14;
                                                                     |     }
    0x000523a0 movs r2, 0xa                                          |     r2 = 0xa;
    0x000523a2 adds r0, 1                                            |     r0++;
    0x000523a4 mov r1, sb                                            |     r1 = sb;
    0x000523a6 blx 0x1fdb4                                           |     r0 = g_set_error ();
    0x000523aa subs r3, r0, 1                                        |     r3 = r0 - 1;
    0x000523ac sbc r2, r1, 0                                         |     __asm ("sbc r2, r1, 0");
    0x000523b0 cmp r3, 0x20                                          |     
    0x000523b2 sbcs r2, r2, 0                                        |     __asm ("sbcs r2, r2, 0");
                                                                     |     if (r3 >= 0x20) {
    0x000523b6 bhs 0x522f2                                           |         goto label_14;
                                                                     |     }
    0x000523b8 ldr r0, [sp, 0x84]                                    |     r0 = var_84h;
    0x000523ba ldrb r3, [r0]                                         |     r3 = *(r0);
    0x000523bc cmp r3, 0x20                                          |     
    0x000523be it ne                                                 |     
                                                                     |     if (r3 != 0x20) {
    0x000523c0 cmpne r3, 0x54                                        |         __asm ("cmpne r3, 0x54");
                                                                     |     }
                                                                     |     if (r3 == 0x20) {
    0x000523c2 beq 0x523ce                                           |         goto label_46;
                                                                     |     }
                                                                     | label_15:
    0x000523c4 ldrb r3, [r0]                                         |     r3 = *(r0);
    0x000523c6 cmp r3, 0                                             |     
                                                                     |     if (r3 == 0) {
    0x000523c8 beq.w 0x51ee0                                         |         goto label_9;
                                                                     |     }
    0x000523cc b 0x522f2                                             |     goto label_14;
                                                                     | label_46:
    0x000523ce adds r0, 1                                            |     r0++;
    0x000523d0 movs r2, 0xa                                          |     r2 = 0xa;
    0x000523d2 mov r1, sb                                            |     r1 = sb;
    0x000523d4 blx 0x1fdb4                                           |     r0 = g_set_error ();
    0x000523d8 cmp r0, 0x19                                          |     
    0x000523da sbcs r1, r1, 0                                        |     __asm ("sbcs r1, r1, 0");
                                                                     |     if (r0 >= 0x19) {
    0x000523de bhs 0x522f2                                           |         goto label_14;
                                                                     |     }
    0x000523e0 ldr r0, [sp, 0x84]                                    |     r0 = var_84h;
    0x000523e2 ldrb r3, [r0]                                         |     r3 = *(r0);
    0x000523e4 cmp r3, 0x3a                                          |     
                                                                     |     if (r3 != 0x3a) {
    0x000523e6 bne 0x522f2                                           |         goto label_14;
                                                                     |     }
    0x000523e8 mov r1, sb                                            |     r1 = sb;
    0x000523ea adds r0, 1                                            |     r0++;
    0x000523ec movs r2, 0xa                                          |     r2 = 0xa;
    0x000523ee blx 0x1fdb4                                           |     r0 = g_set_error ();
    0x000523f2 cmp r0, 0x3c                                          |     
    0x000523f4 sbcs r1, r1, 0                                        |     __asm ("sbcs r1, r1, 0");
                                                                     |     if (r0 >= 0x3c) {
    0x000523f8 bhs.w 0x522f2                                         |         goto label_14;
                                                                     |     }
    0x000523fc ldr r0, [sp, 0x84]                                    |     r0 = var_84h;
    0x000523fe ldrb r3, [r0]                                         |     r3 = *(r0);
    0x00052400 cmp r3, 0x5a                                          |     
                                                                     |     if (r3 != 0x5a) {
    0x00052402 bne.w 0x522f2                                         |         goto label_14;
                                                                     |     }
    0x00052406 adds r0, 1                                            |     r0++;
    0x00052408 str r0, [sp, 0x84]                                    |     var_84h = r0;
    0x0005240a b 0x523c4                                             |     goto label_15;
                                                                     | }
    ; assembly                                                       | /* r2dec pseudo code output */
                                                                     | /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/libgstreamer-1.0.so.0.1803.0 @ 0x34ad0 */
                                                                     | #include <stdint.h>
                                                                     |  
                                                                     | #define BIT_MASK(t,v) ((t)(-((v)!= 0)))&(((t)-1)>>((sizeof(t)*CHAR_BIT)-(v)))
                                                                     |  
    ; (fcn) sym.gst_child_proxy_get_valist ()                        | void gst_child_proxy_get_valist (int16_t arg_1ch, int16_t arg1, int16_t arg2, int16_t arg3) {
                                                                     |     int16_t var_1h;
                                                                     |     int16_t var_0h;
                                                                     |     int16_t var_4h;
                                                                     |     int16_t var_8h;
                                                                     |     int16_t var_ch;
                                                                     |     int16_t var_10h;
                                                                     |     int16_t var_14h;
                                                                     |     int16_t var_18h;
                                                                     |     int32_t var_4h_2;
                                                                     |     int32_t var_4h_3;
                                                                     |     int32_t var_ch_2;
                                                                     |     int32_t var_ch_3;
                                                                     |     int32_t var_14h_2;
                                                                     |     int16_t var_30h;
                                                                     |     r0 = arg1;
                                                                     |     r1 = arg2;
                                                                     |     r2 = arg3;
    0x00034ad0 push.w {r4, r5, r6, r7, r8, sb, sl, fp, lr}           |     
    0x00034ad4 sub sp, 0x74                                          |     
    0x00034ad6 movs r3, 0                                            |     r3 = 0;
    0x00034ad8 add r5, sp, 0x18                                      |     r5 += var_18h;
    0x00034ada mov r7, r0                                            |     r7 = r0;
    0x00034adc mov fp, r1                                            |     
    0x00034ade str r3, [sp, 0x18]                                    |     var_18h = r3;
    0x00034ae0 mov r4, r2                                            |     r4 = r2;
    0x00034ae2 strd r3, r3, [r5, 4]                                  |     __asm ("strd r3, r3, [var_4h_2]");
    0x00034ae6 strd r3, r3, [r5, 0xc]                                |     __asm ("strd r3, r3, [var_ch_2]");
    0x00034aea str r3, [r5, 0x14]                                    |     var_14h_2 = r3;
    0x00034aec bl 0x3472c                                            |     gst_child_proxy_get_type ();
    0x00034af0 ldr r3, [pc, 0x1a4]                                   |     
    0x00034af2 add r3, pc                                            |     r3 = 0x6978e;
    0x00034af4 str r3, [sp, 8]                                       |     var_8h = r3;
    0x00034af6 cmp r7, 0                                             |     
                                                                     |     if (r7 == 0) {
    0x00034af8 beq 0x34b8e                                           |         goto label_5;
                                                                     |     }
    0x00034afa ldr r3, [r7]                                          |     r3 = *(r7);
    0x00034afc mov r1, r0                                            |     r1 = r0;
                                                                     |     if (r3 != 0) {
    0x00034afe cbz r3, 0x34b06                                       |         
    0x00034b00 ldr r3, [r3]                                          |         r3 = *(r3);
    0x00034b02 cmp r3, r0                                            |         
                                                                     |         if (r3 == r0) {
    0x00034b04 beq 0x34b10                                           |             goto label_6;
                                                                     |         }
                                                                     |     }
    0x00034b06 mov r0, r7                                            |     r0 = r7;
    0x00034b08 blx 0x20050                                           |     r0 = fcn_00020050 ();
    0x00034b0c cmp r0, 0                                             |     
                                                                     |     if (r0 == 0) {
    0x00034b0e beq 0x34b8e                                           |         goto label_5;
                                                                     |     }
                                                                     | label_6:
    0x00034b10 cmp.w fp, 0                                           |     
                                                                     |     if (fp == 0) {
    0x00034b14 beq 0x34ba2                                           |         goto label_0;
                                                                     |     }
    0x00034b16 add.w sb, sp, 0x10                                    |     sb += var_10h;
    0x00034b1a add.w r8, sp, 0x14                                    |     r8 += var_14h;
    0x00034b1e mov r3, sb                                            |     r3 = sb;
    0x00034b20 mov r2, r8                                            |     r2 = r8;
    0x00034b22 mov r1, fp                                            |     r1 = fp;
    0x00034b24 mov r0, r7                                            |     r0 = r7;
    0x00034b26 add r6, sp, 0x30                                      |     r6 += var_30h;
    0x00034b28 bl 0x348c0                                            |     r0 = gst_child_proxy_lookup ();
    0x00034b2c cmp r0, 0                                             |     
                                                                     |     if (r0 == 0) {
    0x00034b2e beq 0x34be8                                           |         goto label_7;
                                                                     |     }
                                                                     | label_1:
    0x00034b30 ldr r3, [sp, 0x10]                                    |     r3 = var_10h;
    0x00034b32 mov r0, r5                                            |     r0 = r5;
    0x00034b34 ldr r1, [r3, 0xc]                                     |     r1 = *((r3 + 0xc));
    0x00034b36 blx 0x2046c                                           |     fcn_0002046c ();
    0x00034b3a ldr r3, [sp, 0x10]                                    |     r3 = var_10h;
    0x00034b3c mov r2, r5                                            |     r2 = r5;
    0x00034b3e ldr r0, [sp, 0x14]                                    |     r0 = var_14h;
    0x00034b40 ldr r1, [r3, 4]                                       |     r1 = *((r3 + 4));
    0x00034b42 blx 0x1f604                                           |     g_list_free ();
    0x00034b46 ldr r0, [sp, 0x14]                                    |     r0 = var_14h;
    0x00034b48 bl 0x26570                                            |     gst_object_unref ();
    0x00034b4c ldr r0, [sp, 0x18]                                    |     r0 = var_18h;
    0x00034b4e blx 0x1f348                                           |     fcn_0001f348 ();
    0x00034b52 ldr.w sl, [r0, 0x18]                                  |     sl = *((r0 + 0x18));
    0x00034b56 movs r2, 0x40                                         |     r2 = 0x40;
    0x00034b58 mov fp, r0                                            |     
    0x00034b5a movs r1, 0                                            |     r1 = 0;
    0x00034b5c mov r0, r6                                            |     r0 = r6;
    0x00034b5e blx 0x1f724                                           |     fsync ();
    0x00034b62 ldrb.w r2, [sl]                                       |     r2 = *(sl);
    0x00034b66 cmp r2, 0                                             |     
                                                                     |     if (r2 == 0) {
    0x00034b68 beq 0x34c40                                           |         goto label_8;
                                                                     |     }
    0x00034b6a mov r3, sl                                            |     r3 = sl;
    0x00034b6c mov r0, r6                                            |     r0 = r6;
    0x00034b6e rsb.w ip, sl, 1                                       |     
                                                                     |     do {
    0x00034b72 subs r2, 0x64                                         |         r2 -= 0x64;
    0x00034b74 add.w r1, ip, r3                                      |         r1 = ip + r3;
    0x00034b78 cmp r2, 0xd                                           |         
                                                                     |         if (r2 > 0xd) {
    0x00034b7a bhi 0x34c30                                           |             goto label_9;
                                                                     |         }
                                                                     |         /* switch table (13 cases) at 0x34b80 */
    0x00034b7c tbb [pc, r2]                                          |         __asm ("tbb [0x00034b84]");
                                                                     | label_5:
    0x00034b8e ldr r1, [pc, 0x10c]                                   |         
    0x00034b90 ldr r3, [pc, 0x10c]                                   |         r3 = *(0x34ca0);
    0x00034b92 ldr r2, [pc, 0x110]                                   |         
    0x00034b94 ldr r0, [sp, 8]                                       |         r0 = var_8h;
    0x00034b96 add r1, pc                                            |         r1 = 0x69838;
    0x00034b98 adds r1, 0xa4                                         |         r1 += 0xa4;
    0x00034b9a add r2, pc                                            |         r2 = 0x69844;
    0x00034b9c ldr r0, [r0, r3]                                      |         r0 = *((r0 + r3));
    0x00034b9e blx 0x1fdd0                                           |         fcn_0001fdd0 ();
                                                                     | label_0:
    0x00034ba2 add sp, 0x74                                          |         
    0x00034ba4 pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}            |         
    0x00034ba8 ldr r2, [r4], 4                                       |         r2 = *(r4);
                                                                     |         r4 += 4;
    0x00034bac str r2, [r0]                                          |         *(r0) = r2;
                                                                     | label_2:
    0x00034bae ldrb r2, [r3, 1]!                                     |         r2 = *((r3 += 1));
    0x00034bb2 adds r0, 8                                            |         r0 += 8;
    0x00034bb4 cmp r2, 0                                             |         
    0x00034bb6 bne 0x34b72                                           |         
                                                                     |     } while (r2 != 0);
                                                                     | label_3:
    0x00034bb8 ldr.w fp, [fp, 0x1c]                                  |     fp = *(arg_1ch);
    0x00034bbc movs r3, 0                                            |     r3 = 0;
    0x00034bbe mov r2, r6                                            |     r2 = r6;
    0x00034bc0 mov r0, r5                                            |     r0 = r5;
    0x00034bc2 blx fp                                                |     r0 = fp (r0, r2, r3);
    0x00034bc4 cmp r0, 0                                             |     
                                                                     |     if (r0 != 0) {
    0x00034bc6 bne 0x34c44                                           |         goto label_10;
                                                                     |     }
    0x00034bc8 mov r0, r5                                            |     r0 = r5;
    0x00034bca blx 0x1f1d8                                           |     g_source_set_priority ();
    0x00034bce ldr fp, [r4], 4                                       |     fp = *(r4);
                                                                     |     r4 += 4;
    0x00034bd2 cmp.w fp, 0                                           |     
    0x00034bd4 lsrs r0, r0, 0x1c                                     |     r0 >>= 0x1c;
                                                                     |     if (r0 == r0) {
    0x00034bd6 beq 0x34ba2                                           |         goto label_0;
                                                                     |     }
    0x00034bd8 mov r3, sb                                            |     r3 = sb;
    0x00034bda mov r2, r8                                            |     r2 = r8;
    0x00034bdc mov r1, fp                                            |     r1 = fp;
    0x00034bde mov r0, r7                                            |     r0 = r7;
    0x00034be0 bl 0x348c0                                            |     r0 = gst_child_proxy_lookup ();
    0x00034be4 cmp r0, 0                                             |     
                                                                     |     if (r0 != 0) {
    0x00034be6 bne 0x34b30                                           |         goto label_1;
                                                                     |     }
                                                                     | label_7:
    0x00034be8 bl 0x263f0                                            |     gst_object_get_type ();
    0x00034bec ldr r3, [r7]                                          |     r3 = *(r7);
    0x00034bee mov r1, r0                                            |     r1 = r0;
                                                                     |     if (r3 != 0) {
    0x00034bf0 cbz r3, 0x34bf8                                       |         
    0x00034bf2 ldr r3, [r3]                                          |         r3 = *(r3);
    0x00034bf4 cmp r3, r0                                            |         
                                                                     |         if (r3 == r0) {
    0x00034bf6 beq 0x34c8e                                           |             goto label_11;
                                                                     |         }
                                                                     |     }
    0x00034bf8 mov r0, r7                                            |     r0 = r7;
    0x00034bfa blx 0x20050                                           |     r0 = fcn_00020050 ();
    0x00034bfe cmp r0, 0                                             |     
                                                                     |     if (r0 != 0) {
    0x00034c00 bne 0x34c8e                                           |         goto label_11;
                                                                     |     }
    0x00034c02 ldr r4, [pc, 0xa4]                                    |     
    0x00034c04 add r4, pc                                            |     r4 = 0x698b2;
                                                                     |     do {
    0x00034c06 ldr r0, [sp, 8]                                       |         r0 = var_8h;
    0x00034c08 mov r3, fp                                            |         r3 = fp;
    0x00034c0a ldr r1, [pc, 0x94]                                    |         r1 = *(0x34ca2);
    0x00034c0c ldr r2, [pc, 0x9c]                                    |         
    0x00034c0e ldr r0, [r0, r1]                                      |         r0 = *((r0 + r1));
    0x00034c10 movs r1, 0x10                                         |         r1 = 0x10;
    0x00034c12 add r2, pc                                            |         r2 = 0x698c2;
    0x00034c14 str r4, [sp]                                          |         *(sp) = r4;
    0x00034c16 blx 0x20930                                           |         g_param_spec_ref ();
    0x00034c1a add sp, 0x74                                          |         
    0x00034c1c pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}            |         
    0x00034c20 adds r4, 7                                            |         r4 += 7;
    0x00034c22 bic r4, r4, 7                                         |         r4 = BIT_MASK (r4, 7);
    0x00034c26 vldmia r4!, {d16}                                     |         __asm ("vldmia r4!, {d16}");
    0x00034c2a vstr d16, [r0]                                        |         __asm ("vstr d16, [r0]");
    0x00034c2e b 0x34bae                                             |         goto label_2;
                                                                     | label_9:
    0x00034c30 adds r4, 7                                            |         r4 += 7;
    0x00034c32 bic r4, r4, 7                                         |         r4 = BIT_MASK (r4, 7);
    0x00034c36 vldmia r4!, {d16}                                     |         __asm ("vldmia r4!, {d16}");
    0x00034c3a vstr d16, [r0]                                        |         __asm ("vstr d16, [r0]");
    0x00034c3e b 0x34bae                                             |         goto label_2;
                                                                     | label_8:
    0x00034c40 mov r1, r2                                            |         r1 = r2;
    0x00034c42 b 0x34bb8                                             |         goto label_3;
                                                                     | label_10:
    0x00034c44 ldr r3, [sp, 0x10]                                    |         r3 = var_10h;
    0x00034c46 str r0, [sp, 0xc]                                     |         var_ch = r0;
    0x00034c48 ldr r4, [r3, 4]                                       |         r4 = *((r3 + 4));
    0x00034c4a bl 0x263f0                                            |         r0 = gst_object_get_type ();
    0x00034c4e mov r1, r0                                            |         r1 = r0;
    0x00034c50 ldr r0, [r7]                                          |         r0 = *(r7);
    0x00034c52 ldr r2, [sp, 0xc]                                     |         r2 = var_ch;
                                                                     |         if (r0 != 0) {
    0x00034c54 cbz r0, 0x34c5c                                       |             
    0x00034c56 ldr r3, [r0]                                          |             r3 = *(r0);
    0x00034c58 cmp r3, r1                                            |             
                                                                     |             if (r3 == r1) {
    0x00034c5a beq 0x34c92                                           |                 goto label_12;
                                                                     |             }
                                                                     |         }
    0x00034c5c mov r0, r7                                            |         r0 = r7;
    0x00034c5e str r2, [sp, 0xc]                                     |         var_ch = r2;
    0x00034c60 blx 0x20050                                           |         fcn_00020050 ();
    0x00034c64 ldr r2, [sp, 0xc]                                     |         r2 = var_ch;
                                                                     |         if (r0 != 0) {
    0x00034c66 cbnz r0, 0x34c92                                      |             goto label_12;
                                                                     |         }
    0x00034c68 ldr r6, [pc, 0x44]                                    |         
    0x00034c6a add r6, pc                                            |         r6 = 0x6991e;
                                                                     | label_4:
    0x00034c6c ldr r0, [sp, 8]                                       |         r0 = var_8h;
    0x00034c6e mov r3, r4                                            |         r3 = r4;
    0x00034c70 ldr r1, [pc, 0x2c]                                    |         r1 = *(0x34ca0);
    0x00034c72 ldr r0, [r0, r1]                                      |         r0 = *((r0 + r1));
    0x00034c74 movs r1, 0x10                                         |         r1 = 0x10;
    0x00034c76 str r2, [sp, 4]                                       |         var_4h = r2;
    0x00034c78 ldr r2, [pc, 0x38]                                    |         
    0x00034c7a str r6, [sp]                                          |         *(sp) = r6;
    0x00034c7c add r2, pc                                            |         r2 = 0x69934;
    0x00034c7e blx 0x20930                                           |         g_param_spec_ref ();
    0x00034c82 mov r0, r5                                            |         r0 = r5;
    0x00034c84 blx 0x1f1d8                                           |         g_source_set_priority ();
    0x00034c88 add sp, 0x74                                          |         
    0x00034c8a pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}            |         
                                                                     | label_11:
    0x00034c8e ldr r4, [r7, 0x14]                                    |         r4 = *((r7 + 0x14));
    0x00034c90 b 0x34c06                                             |         
                                                                     |     } while (1);
                                                                     | label_12:
    0x00034c92 ldr r6, [r7, 0x14]                                    |     r6 = *((r7 + 0x14));
    0x00034c94 b 0x34c6c                                             |     goto label_4;
                                                                     | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/libgstreamer-1.0.so.0.1803.0 @ 0x48e10 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.gst_mini_object_get_qdata ()     | void gst_mini_object_get_qdata (int16_t arg1, int16_t arg2) {
                                                 |     r0 = arg1;
                                                 |     r1 = arg2;
    0x00048e10 push {r3, r4, r5, lr}             |     
    0x00048e12 mov r4, r0                        |     r4 = r0;
    0x00048e14 ldr r3, [pc, 0x84]                |     
    0x00048e16 add r3, pc                        |     r3 = 0x91cb6;
                                                 |     if (r0 == 0) {
    0x00048e18 cbz r0, 0x48e7c                   |         goto label_0;
                                                 |     }
    0x00048e1a mov r5, r1                        |     r5 = r1;
                                                 |     if (r1 == 0) {
    0x00048e1c cbz r1, 0x48e64                   |         goto label_1;
                                                 |     }
    0x00048e1e ldr r0, [pc, 0x80]                |     
    0x00048e20 add r0, pc                        |     r0 = 0x91cc6;
    0x00048e22 adds r0, 4                        |     r0 += 4;
    0x00048e24 blx 0x204ec                       |     g_list_nth_data ();
    0x00048e28 dmb ish                           |     __asm ("dmb ish");
    0x00048e2c ldr r3, [r4, 0x1c]                |     r3 = *((r4 + 0x1c));
    0x00048e2e dmb ish                           |     __asm ("dmb ish");
    0x00048e32 cmp r3, 3                         |     
                                                 |     if (r3 != 3) {
    0x00048e34 bne 0x48e50                       |         goto label_2;
                                                 |     }
    0x00048e36 ldr r3, [r4, 0x20]                |     r3 = *((r4 + 0x20));
    0x00048e38 ldr r4, [r3, 0x10]                |     r4 = *((r3 + 0x10));
                                                 |     if (r4 == 0) {
    0x00048e3a cbz r4, 0x48e96                   |         goto label_3;
                                                 |     }
    0x00048e3c ldr r2, [r3, 0x18]                |     r2 = *((r3 + 0x18));
    0x00048e3e movs r3, 0                        |     r3 = 0;
                                                 |     do {
    0x00048e40 ldr r1, [r2]                      |         r1 = *(r2);
    0x00048e42 adds r3, 1                        |         r3++;
    0x00048e44 cmp r5, r1                        |         
                                                 |         if (r5 == r1) {
    0x00048e46 beq 0x48e54                       |             goto label_4;
                                                 |         }
    0x00048e48 cmp r3, r4                        |         
    0x00048e4a add.w r2, r2, 0x10                |         r2 += 0x10;
    0x00048e4e bne 0x48e40                       |         
                                                 |     } while (r3 != r4);
                                                 | label_2:
    0x00048e50 movs r5, 0                        |     r5 = 0;
    0x00048e52 b 0x48e56                         |     goto label_5;
                                                 | label_4:
    0x00048e54 ldr r5, [r2, 8]                   |     r5 = *((r2 + 8));
                                                 |     do {
                                                 | label_5:
    0x00048e56 ldr r0, [pc, 0x4c]                |         
    0x00048e58 add r0, pc                        |         r0 = 0x91d02;
    0x00048e5a adds r0, 4                        |         r0 += 4;
    0x00048e5c blx 0x1fbec                       |         g_key_file_to_data ();
    0x00048e60 mov r0, r5                        |         r0 = r5;
    0x00048e62 pop {r3, r4, r5, pc}              |         
                                                 | label_1:
    0x00048e64 ldr r1, [pc, 0x40]                |         
    0x00048e66 ldr r0, [pc, 0x44]                |         r0 = *(0x48eae);
    0x00048e68 ldr r2, [pc, 0x44]                |         
    0x00048e6a add r1, pc                        |         
    0x00048e6c ldr r0, [r3, r0]                  |         r0 = *((r3 + r0));
    0x00048e6e add.w r1, r1, 0x15c               |         r1 = 0x91e72;
    0x00048e72 add r2, pc                        |         r2 = 0x91d26;
    0x00048e74 blx 0x1fdd0                       |         fcn_0001fdd0 ();
    0x00048e78 mov r0, r5                        |         r0 = r5;
    0x00048e7a pop {r3, r4, r5, pc}              |         
                                                 | label_0:
    0x00048e7c ldr r1, [pc, 0x34]                |         
    0x00048e7e mov r5, r4                        |         r5 = r4;
    0x00048e80 ldr r0, [pc, 0x28]                |         r0 = *(0x48eac);
    0x00048e82 ldr r2, [pc, 0x34]                |         
    0x00048e84 add r1, pc                        |         
    0x00048e86 ldr r0, [r3, r0]                  |         r0 = *((r3 + r0));
    0x00048e88 add.w r1, r1, 0x15c               |         r1 = 0x91e98;
    0x00048e8c add r2, pc                        |         r2 = 0x91d4a;
    0x00048e8e blx 0x1fdd0                       |         fcn_0001fdd0 ();
    0x00048e92 mov r0, r5                        |         r0 = r5;
    0x00048e94 pop {r3, r4, r5, pc}              |         
                                                 | label_3:
    0x00048e96 mov r5, r4                        |         r5 = r4;
    0x00048e98 b 0x48e56                         |         
                                                 |     } while (1);
                                                 | }
    ; assembly                                                   | /* r2dec pseudo code output */
                                                                 | /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/libgstreamer-1.0.so.0.1803.0 @ 0x618e4 */
                                                                 | #include <stdint.h>
                                                                 |  
    ; (fcn) sym.gst_structure_id_get_valist ()                   | void gst_structure_id_get_valist (int16_t arg1, int16_t arg2, int16_t arg3) {
                                                                 |     int16_t var_0h;
                                                                 |     int16_t var_ch;
                                                                 |     int16_t var_10h;
                                                                 |     int16_t var_18h;
                                                                 |     r0 = arg1;
                                                                 |     r1 = arg2;
                                                                 |     r2 = arg3;
    0x000618e4 push.w {r4, r5, r6, r7, r8, sb, sl, fp, lr}       |     
    0x000618e8 sub sp, 0x54                                      |     
    0x000618ea ldr.w sl, [pc, 0x124]                             |     
    0x000618ee add sl, pc                                        |     sl = 0xc3304;
                                                                 |     if (r0 != 0) {
    0x000618f0 cbz r0, 0x61906                                   |         
    0x000618f2 mov r4, r2                                        |         r4 = r2;
    0x000618f4 ldr r2, [pc, 0x11c]                               |         
    0x000618f6 mov fp, r1                                        |         
    0x000618f8 ldr r1, [r0]                                      |         r1 = *(r0);
    0x000618fa mov sb, r0                                        |         sb = r0;
    0x000618fc ldr.w r2, [sl, r2]                                |         r2 = *((sl + r2));
    0x00061900 ldr r2, [r2]                                      |         r2 = *(0x61a14);
    0x00061902 cmp r1, r2                                        |         
                                                                 |         if (r1 == r2) {
    0x00061904 beq 0x61924                                       |             goto label_4;
                                                                 |         }
                                                                 |     }
    0x00061906 ldr r1, [pc, 0x110]                               |     
    0x00061908 ldr r3, [pc, 0x110]                               |     r3 = *(0x61a1c);
    0x0006190a ldr r2, [pc, 0x114]                               |     
    0x0006190c add r1, pc                                        |     
    0x0006190e ldr.w r0, [sl, r3]                                |     r0 = *((sl + r3));
    0x00061912 add.w r1, r1, 0x700                               |     r1 = 0xc3a2a;
    0x00061916 add r2, pc                                        |     r2 = 0xc333c;
    0x00061918 blx 0x1fdd0                                       |     fcn_0001fdd0 ();
                                                                 |     do {
                                                                 | label_0:
    0x0006191c movs r0, 0                                        |         r0 = 0;
    0x0006191e add sp, 0x54                                      |         
    0x00061920 pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}        |         
                                                                 | label_4:
    0x00061924 cmp.w fp, 0                                       |         
                                                                 |         if (fp == 0) {
    0x00061928 beq 0x619a2                                       |             goto label_5;
                                                                 |         }
    0x0006192a ldr r3, [pc, 0xf8]                                |         
    0x0006192c add r6, sp, 0x10                                  |         r6 += var_10h;
    0x0006192e add r3, pc                                        |         r3 = 0xc3358;
    0x00061930 str r3, [sp, 0xc]                                 |         var_ch = r3;
                                                                 | label_1:
    0x00061932 mov r1, fp                                        |         r1 = fp;
    0x00061934 mov r0, sb                                        |         r0 = sb;
    0x00061936 ldr r5, [r4], 4                                   |         r5 = *(r4);
                                                                 |         r4 += 4;
    0x0006193a bl 0x5f968                                        |         r0 = gst_structure_id_get_value ();
    0x0006193e mov r7, r0                                        |         r7 = r0;
    0x00061940 cmp r0, 0                                         |         
    0x00061942 beq 0x6191c                                       |         
                                                                 |     } while (r0 == 0);
    0x00061944 ldr r0, [r0]                                      |     r0 = *(r0);
    0x00061946 cmp r0, r5                                        |     
                                                                 |     if (r0 != r5) {
    0x00061948 bne 0x6191c                                       |         goto label_0;
                                                                 |     }
    0x0006194a blx 0x1f348                                       |     fcn_0001f348 ();
    0x0006194e ldr r5, [r0, 0x18]                                |     r5 = *((r0 + 0x18));
    0x00061950 movs r2, 0x40                                     |     r2 = 0x40;
    0x00061952 mov r8, r0                                        |     r8 = r0;
    0x00061954 movs r1, 0                                        |     r1 = 0;
    0x00061956 mov r0, r6                                        |     r0 = r6;
    0x00061958 blx 0x1f724                                       |     fsync ();
    0x0006195c ldrb r2, [r5]                                     |     r2 = *(r5);
                                                                 |     if (r2 == 0) {
    0x0006195e cbz r2, 0x61990                                   |         goto label_3;
                                                                 |     }
    0x00061960 movs r1, 0                                        |     r1 = 0;
                                                                 |     do {
    0x00061962 ldr r0, [r4], 4                                   |         r0 = *(r4);
                                                                 |         r4 += 4;
    0x00061966 adds r1, 1                                        |         r1++;
    0x00061968 add.w r2, r6, r1, lsl 3                           |         r2 = r6 + (r1 << 3);
    0x0006196c str r0, [r2, -0x8]                                |         *((r2 - 0x8)) = r0;
    0x00061970 ldrb r2, [r5, 1]!                                 |         r2 = *((r5 += 1));
    0x00061974 cmp r2, 0                                         |         
    0x00061976 bne 0x61962                                       |         
                                                                 |     } while (r2 != 0);
    0x00061978 cmp r1, 2                                         |     
    0x0006197a ldr r0, [sp, 0x10]                                |     r0 = var_10h;
                                                                 |     if (r1 == 2) {
    0x0006197c beq 0x619c0                                       |         goto label_6;
                                                                 |     }
                                                                 |     if (r0 != 0) {
                                                                 | label_2:
    0x0006197e cbz r0, 0x61990                                   |         
    0x00061980 ldr.w r5, [r8, 0x1c]                              |         r5 = *((r8 + 0x1c));
    0x00061984 movs r3, 0                                        |         r3 = 0;
    0x00061986 mov r2, r6                                        |         r2 = r6;
    0x00061988 mov r0, r7                                        |         r0 = r7;
    0x0006198a blx r5                                            |         r0 = uint32_t (*r5)(uint32_t, uint32_t, uint32_t) (r0, r2, r3);
    0x0006198c mov r5, r0                                        |         r5 = r0;
                                                                 |         if (r5 != 0) {
    0x0006198e cbnz r5, 0x619e6                                  |             goto label_7;
                                                                 |         }
                                                                 |     }
                                                                 | label_3:
    0x00061990 ldr fp, [r4], 4                                   |     fp = *(r4);
                                                                 |     r4 += 4;
    0x00061994 cmp.w fp, 0                                       |     
                                                                 |     if (fp != 0) {
    0x00061998 bne 0x61932                                       |         goto label_1;
                                                                 |     }
    0x0006199a movs r0, 1                                        |     r0 = 1;
    0x0006199c add sp, 0x54                                      |     
    0x0006199e pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}        |     
                                                                 | label_5:
    0x000619a2 ldr r1, [pc, 0x84]                                |     
    0x000619a4 ldr r0, [pc, 0x74]                                |     r0 = *(0x61a1c);
    0x000619a6 ldr r2, [pc, 0x84]                                |     
    0x000619a8 add r1, pc                                        |     
    0x000619aa ldr.w r0, [sl, r0]                                |     r0 = *((sl + r0));
    0x000619ae add.w r1, r1, 0x700                               |     r1 = 0xc3ad6;
    0x000619b2 add r2, pc                                        |     r2 = 0xc33e4;
    0x000619b4 blx 0x1fdd0                                       |     fcn_0001fdd0 ();
    0x000619b8 mov r0, fp                                        |     r0 = fp;
    0x000619ba add sp, 0x54                                      |     
    0x000619bc pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}        |     
                                                                 | label_6:
    0x000619c0 ldr r2, [sp, 0x18]                                |     r2 = var_18h;
    0x000619c2 subs r2, 0                                        |     
    0x000619c4 it ne                                             |     
                                                                 |     if (r2 == 0) {
    0x000619c6 movne r2, 1                                       |         r2 = 1;
                                                                 |     }
    0x000619c8 subs r5, r0, 0                                    |     r5 = r0 - 0;
    0x000619ca it ne                                             |     
                                                                 |     if (r5 == r0) {
    0x000619cc movne r5, 1                                       |         r5 = 1;
                                                                 |     }
    0x000619ce cmp r5, r2                                        |     
                                                                 |     if (r5 == r2) {
    0x000619d0 beq 0x6197e                                       |         goto label_2;
                                                                 |     }
    0x000619d2 mov r0, fp                                        |     r0 = fp;
    0x000619d4 blx 0x208a0                                       |     r0 = g_value_set_static_string ();
    0x000619d8 mov r1, r0                                        |     r1 = r0;
    0x000619da ldr r0, [sp, 0xc]                                 |     r0 = var_ch;
    0x000619dc blx 0x1fa64                                       |     r0 = fcn_0001fa64 ();
    0x000619e0 mov r5, r0                                        |     r5 = r0;
    0x000619e2 cmp r5, 0                                         |     
                                                                 |     if (r5 == 0) {
    0x000619e4 beq 0x61990                                       |         goto label_3;
                                                                 |     }
                                                                 | label_7:
    0x000619e6 ldr r3, [pc, 0x48]                                |     
    0x000619e8 ldr r1, [pc, 0x30]                                |     r1 = *(0x61a1c);
    0x000619ea ldr r2, [pc, 0x48]                                |     
    0x000619ec add r3, pc                                        |     
    0x000619ee ldr.w r0, [sl, r1]                                |     r0 = *((sl + r1));
    0x000619f2 add.w r3, r3, 0x700                               |     r3 = 0xc3b22;
    0x000619f6 add r2, pc                                        |     r2 = 0xc3430;
    0x000619f8 movs r1, 0x10                                     |     r1 = 0x10;
    0x000619fa str r5, [sp]                                      |     *(sp) = r5;
    0x000619fc blx 0x20930                                       |     g_param_spec_ref ();
    0x00061a00 mov r0, r5                                        |     r0 = r5;
    0x00061a02 blx 0x1f14c                                       |     fcn_0001f14c ();
    0x00061a06 movs r0, 0                                        |     r0 = 0;
    0x00061a08 add sp, 0x54                                      |     
    0x00061a0a pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}        |     
                                                                 | }

[*] Function strcpy used 1 times libgstreamer-1.0.so.0.1803.0