[*] Binary protection state of libdsdevice-api.so.0.0.1

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


[*] Function system tear down of libdsdevice-api.so.0.0.1

    ; assembly                                                       | /* r2dec pseudo code output */
                                                                     | /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-80367616.squashfs_v4_le_extract/usr/lib/libdsdevice-api.so.0.0.1 @ 0x1a34 */
                                                                     | #include <stdint.h>
                                                                     |  
    ; (fcn) fcn.00001a34 ()                                          | void fcn_00001a34 (int16_t arg1) {
                                                                     |     int16_t var_0h;
                                                                     |     int16_t var_8h_2;
                                                                     |     int16_t var_ch;
                                                                     |     int16_t var_0h_2;
                                                                     |     int16_t var_8h;
                                                                     |     int16_t var_28h;
                                                                     |     int16_t var_8ch;
                                                                     |     r0 = arg1;
    0x00001a34 push {r4, r5, r6, lr}                                 |     
    0x00001a36 sub sp, 0x90                                          |     
    0x00001a38 ldr r4, [pc, 0x74]                                    |     
    0x00001a3a add r6, sp, 8                                         |     r6 += var_8h;
    0x00001a3c mov r5, r0                                            |     r5 = r0;
    0x00001a3e movs r2, 1                                            |     r2 = 1;
    0x00001a40 ldr r3, [pc, 0x70]                                    |     r3 = *(0x1ab4);
    0x00001a42 mov r0, r6                                            |     r0 = r6;
    0x00001a44 add r4, pc                                            |     r4 = 0x34f8;
    0x00001a46 ldr r3, [r4, r3]                                      |     
    0x00001a48 ldr r3, [r3]                                          |     r3 = *(0x34f8);
    0x00001a4a str r3, [sp, 0x8c]                                    |     var_8ch = r3;
    0x00001a4c mov.w r3, 0                                           |     r3 = 0;
    0x00001a50 blx 0x14c8                                            |     r0 = resource_get_domain ();
                                                                     |     if (r0 != 0) {
    0x00001a54 cbnz r0, 0x1a96                                       |         goto label_3;
                                                                     |     }
    0x00001a56 mov r4, r0                                            |     r4 = r0;
    0x00001a58 mov r3, r0                                            |     r3 = r0;
    0x00001a5a mov r2, r0                                            |     r2 = r0;
    0x00001a5c str r0, [sp]                                          |     *(sp) = r0;
    0x00001a5e mov r1, r5                                            |     r1 = r5;
    0x00001a60 mov r0, r6                                            |     r0 = r6;
    0x00001a62 blx 0x1610                                            |     r0 = fcn_00001610 ();
                                                                     |     if (r0 != 0) {
    0x00001a66 cbnz r0, 0x1a8a                                       |         goto label_4;
                                                                     |     }
    0x00001a68 movs r4, 1                                            |     r4 = 1;
                                                                     |     do {
    0x00001a6a mov r0, r6                                            |         r0 = r6;
    0x00001a6c blx 0x137c                                            |         fcn_0000137c ();
                                                                     | label_0:
    0x00001a70 ldr r2, [pc, 0x44]                                    |         
    0x00001a72 ldr r3, [pc, 0x40]                                    |         r3 = *(0x1ab6);
    0x00001a74 add r2, pc                                            |         r2 = 0x3530;
    0x00001a76 ldr r3, [r2, r3]                                      |         r3 = *(0x3530);
    0x00001a78 ldr r2, [r3]                                          |         r2 = *(0x3530);
    0x00001a7a ldr r3, [sp, 0x8c]                                    |         r3 = var_8ch;
    0x00001a7c eors r2, r3                                           |         r2 ^= r3;
    0x00001a7e mov.w r3, 0                                           |         r3 = 0;
                                                                     |         if (r2 != r3) {
    0x00001a82 bne 0x1aaa                                            |             goto label_5;
                                                                     |         }
    0x00001a84 mov r0, r4                                            |         r0 = r4;
    0x00001a86 add sp, 0x90                                          |         
    0x00001a88 pop {r4, r5, r6, pc}                                  |         
                                                                     | label_4:
    0x00001a8a movs r3, 0x64                                         |         r3 = 0x64;
    0x00001a8c add r2, sp, 0x28                                      |         r2 += var_28h;
    0x00001a8e mov r1, r6                                            |         r1 = r6;
    0x00001a90 blx 0x14a4                                            |         interface_requirement_new ();
    0x00001a94 b 0x1a6a                                              |         
                                                                     |     } while (1);
                                                                     | label_3:
    0x00001a96 ldr r3, [pc, 0x24]                                    |     
    0x00001a98 movs r0, 0                                            |     r0 = 0;
    0x00001a9a ldr r2, [pc, 0x24]                                    |     
    0x00001a9c movs r1, 0x10                                         |     r1 = 0x10;
    0x00001a9e mov r4, r0                                            |     r4 = r0;
    0x00001aa0 add r3, pc                                            |     r3 = 0x3562;
    0x00001aa2 add r2, pc                                            |     r2 = 0x3568;
    0x00001aa4 blx 0x16d4                                            |     fcn_000016d4 ();
    0x00001aa8 b 0x1a70                                              |     goto label_0;
                                                                     | label_5:
    0x00001aaa blx 0x15ac                                            |     get_domain_context_from_system_registry ()
    0x00001aae nop                                                   |     
    0x00001ab0 movs r4, 0x60                                         |     r4 = 0x60;
    0x00001ab2 movs r0, r0                                           |     
    0x00001ab4 lsls r0, r2, 5                                        |     r0 = r2 << 5;
    0x00001ab6 movs r0, r0                                           |     
    0x00001ab8 movs r4, 0x30                                         |     r4 = 0x30;
    0x00001aba movs r0, r0                                           |     
    0x00001abc lsrs r0, r0, 0x18                                     |     r0 >>= 0x18;
    0x00001abe movs r0, r0                                           |     
    0x00001ac0 lsrs r2, r0, 7                                        |     r2 = r0 >> 7;
    0x00001ac2 movs r0, r0                                           |     
    0x00001ac4 ldr r2, [pc, 0x254]                                   |     
    0x00001ac6 push.w {r4, r5, r6, r7, r8, sb, sl, fp, lr}           |     
    0x00001aca mov r8, r3                                            |     r8 = r3;
    0x00001acc ldr r3, [pc, 0x250]                                   |     r3 = *(0x1d20);
    0x00001ace sub sp, 0x14                                          |     
    0x00001ad0 add r2, pc                                            |     r2 = 0x37f0;
    0x00001ad2 mov r5, r0                                            |     r5 = r0;
    0x00001ad4 movs r6, 0                                            |     r6 = 0;
    0x00001ad6 mov r4, r1                                            |     r4 = r1;
    0x00001ad8 ldr r3, [r2, r3]                                      |     
    0x00001ada ldr r3, [r3]                                          |     r3 = *(0x37f0);
    0x00001adc str r3, [sp, 0xc]                                     |     var_ch = r3;
    0x00001ade mov.w r3, 0                                           |     r3 = 0;
    0x00001ae2 str r6, [sp, 8]                                       |     var_8h_2 = r6;
    0x00001ae4 blx 0x14bc                                            |     r0 = regcomp ();
    0x00001ae8 mov r1, r0                                            |     r1 = r0;
    0x00001aea mov r0, r5                                            |     r0 = r5;
    0x00001aec blx 0x15a0                                            |     stack_chk_fail ();
    0x00001af0 blx 0x14d4                                            |     r0 = g_propagate_error ();
    0x00001af4 mov r7, r0                                            |     r7 = r0;
    0x00001af6 blx 0x14f8                                            |     r0 = ipc_data_set_ipc_data_array ();
    0x00001afa mov r1, r0                                            |     r1 = r0;
    0x00001afc mov r0, r7                                            |     r0 = r7;
    0x00001afe blx 0x15a0                                            |     stack_chk_fail ();
    0x00001b02 ldr r1, [pc, 0x220]                                   |     
    0x00001b04 mov r5, r0                                            |     r5 = r0;
    0x00001b06 mov r2, r6                                            |     r2 = r6;
    0x00001b08 mov r0, r4                                            |     r0 = r4;
    0x00001b0a add r1, pc                                            |     r1 = 0x3834;
    0x00001b0c blx 0x16bc                                            |     r0 = fcn_000016bc ();
    0x00001b10 cmp r0, 0                                             |     
                                                                     |     if (r0 == 0) {
    0x00001b12 beq.w 0x1cbe                                          |         goto label_6;
                                                                     |     }
    0x00001b16 mov r1, r0                                            |     r1 = r0;
    0x00001b18 mov r0, r5                                            |     r0 = r5;
    0x00001b1a blx 0x1564                                            |     interface_definition_destroy ();
    0x00001b1e ldr r1, [pc, 0x208]                                   |     
    0x00001b20 mov r2, r6                                            |     r2 = r6;
    0x00001b22 mov r0, r4                                            |     r0 = r4;
    0x00001b24 add r1, pc                                            |     r1 = 0x3852;
    0x00001b26 blx 0x16bc                                            |     r0 = fcn_000016bc ();
    0x00001b2a mov r1, r0                                            |     r1 = r0;
                                                                     |     if (r0 != 0) {
    0x00001b2c cbz r0, 0x1b34                                        |         
    0x00001b2e mov r0, r5                                            |         r0 = r5;
    0x00001b30 blx 0x1444                                            |         ipc_data_create ();
                                                                     |     }
    0x00001b34 ldr r1, [pc, 0x1f4]                                   |     
    0x00001b36 movs r2, 0                                            |     r2 = 0;
    0x00001b38 mov r0, r4                                            |     r0 = r4;
    0x00001b3a add r1, pc                                            |     r1 = 0x386a;
    0x00001b3c blx 0x16bc                                            |     r0 = fcn_000016bc ();
    0x00001b40 mov r1, r0                                            |     r1 = r0;
                                                                     |     if (r0 != 0) {
    0x00001b42 cbz r0, 0x1b4a                                        |         
    0x00001b44 mov r0, r5                                            |         r0 = r5;
    0x00001b46 blx 0x1634                                            |         fcn_00001634 ();
                                                                     |     }
    0x00001b4a ldr.w sb, [pc, 0x1e4]                                 |     
    0x00001b4e mov r0, r4                                            |     r0 = r4;
    0x00001b50 ldr r1, [pc, 0x1e0]                                   |     
    0x00001b52 add sb, pc                                            |     sb = 0x3888;
    0x00001b54 mov r2, sb                                            |     r2 = sb;
    0x00001b56 add r1, pc                                            |     r1 = 0x388e;
    0x00001b58 blx 0x16bc                                            |     r0 = fcn_000016bc ();
    0x00001b5c mov r6, r0                                            |     r6 = r0;
    0x00001b5e mov r0, r5                                            |     r0 = r5;
    0x00001b60 mov r1, r6                                            |     r1 = r6;
    0x00001b62 blx 0x161c                                            |     fcn_0000161c ();
    0x00001b66 ldr r1, [pc, 0x1d0]                                   |     
    0x00001b68 mov r0, r6                                            |     r0 = r6;
    0x00001b6a add r1, pc                                            |     r1 = 0x38a8;
    0x00001b6c blx 0x13ec                                            |     fcn_000013ec ();
    0x00001b70 ldr r1, [pc, 0x1c8]                                   |     
    0x00001b72 cmp r0, 0                                             |     
    0x00001b74 movw r2, 0x1bb                                        |     r2 = 0x1bb;
    0x00001b78 mov r0, r4                                            |     r0 = r4;
    0x00001b7a it eq                                                 |     
                                                                     |     if (r0 != 0) {
    0x00001b7c moveq r2, 0x50                                        |         r2 = 0x50;
                                                                     |     }
    0x00001b7e add r1, pc                                            |     r1 = 0x38be;
    0x00001b80 blx 0x13b8                                            |     r0 = fcn_000013b8 ();
    0x00001b84 mov r6, r0                                            |     r6 = r0;
    0x00001b86 mov r0, r5                                            |     r0 = r5;
    0x00001b88 mov r1, r6                                            |     r1 = r6;
    0x00001b8a subs r6, 1                                            |     r6--;
    0x00001b8c blx 0x151c                                            |     domain_resource_get_type ();
    0x00001b90 movw r3, 0xfffe                                       |     r3 = 0xfffe;
    0x00001b94 cmp r6, r3                                            |     
                                                                     |     if (r6 > r3) {
    0x00001b96 bhi 0x1c3c                                            |         goto label_7;
                                                                     |     }
    0x00001b98 ldr.w fp, [pc, 0x1a4]                                 |     fp = "a_get_string";
    0x00001b9c movs r2, 0                                            |     r2 = 0;
    0x00001b9e mov r0, r4                                            |     r0 = r4;
    0x00001ba0 add fp, pc                                            |     
    0x00001ba2 mov r1, fp                                            |     r1 = fp;
    0x00001ba4 blx 0x16bc                                            |     fcn_000016bc ();
    0x00001ba8 ldr r1, [pc, 0x198]                                   |     
    0x00001baa mov r6, r0                                            |     r6 = r0;
    0x00001bac add r1, pc                                            |     r1 = 0x38f4;
    0x00001bae bl 0x1a34                                             |     r0 = fcn_00001a34 (r0);
    0x00001bb2 mov sl, r0                                            |     sl = r0;
    0x00001bb4 cmp r0, 0                                             |     
    0x00001bb6 beq 0x1c82                                            |     
                                                                     |     while (1) {
                                                                     | label_2:
    0x00001bb8 mov r1, r6                                            |         r1 = r6;
    0x00001bba mov r0, r5                                            |         r0 = r5;
    0x00001bbc blx 0x1438                                            |         domain_dsdevice_set_description ();
    0x00001bc0 ldr r1, [pc, 0x184]                                   |         
    0x00001bc2 movs r2, 0                                            |         r2 = 0;
    0x00001bc4 mov r0, r4                                            |         r0 = r4;
    0x00001bc6 add r1, pc                                            |         r1 = 0x3912;
    0x00001bc8 blx 0x16bc                                            |         r0 = fcn_000016bc ();
    0x00001bcc mov r1, r0                                            |         r1 = r0;
                                                                     |         if (r0 != 0) {
    0x00001bce cbz r0, 0x1bd6                                        |             
    0x00001bd0 mov r0, r5                                            |             r0 = r5;
    0x00001bd2 blx 0x16a4                                            |             fcn_000016a4 ();
                                                                     |         }
    0x00001bd6 ldr r1, [pc, 0x174]                                   |         
    0x00001bd8 movs r2, 0                                            |         r2 = 0;
    0x00001bda mov r0, r4                                            |         r0 = r4;
    0x00001bdc add r1, pc                                            |         r1 = 0x392e;
    0x00001bde blx 0x16bc                                            |         r0 = fcn_000016bc ();
    0x00001be2 mov r1, r0                                            |         r1 = r0;
                                                                     |         if (r0 != 0) {
    0x00001be4 cbz r0, 0x1bec                                        |             
    0x00001be6 mov r0, r5                                            |             r0 = r5;
    0x00001be8 blx 0x1664                                            |             fcn_00001664 ();
                                                                     |         }
    0x00001bec ldr r1, [pc, 0x160]                                   |         
    0x00001bee movs r2, 4                                            |         r2 = 4;
    0x00001bf0 mov r0, r4                                            |         r0 = r4;
    0x00001bf2 add r1, pc                                            |         r1 = 0x3946;
    0x00001bf4 blx 0x13b8                                            |         r0 = fcn_000013b8 ();
    0x00001bf8 subs r1, r0, 0                                        |         r1 = r0 - 0;
                                                                     |         if (r1 <= r0) {
    0x00001bfa ble 0x1c9e                                            |             goto label_8;
                                                                     |         }
    0x00001bfc mov r0, r5                                            |         r0 = r5;
    0x00001bfe blx 0x1588                                            |         domain_dsdevice_get_max_pinlength ();
    0x00001c02 ldr r2, [pc, 0x150]                                   |         
    0x00001c04 mov r0, r4                                            |         r0 = r4;
    0x00001c06 ldr r1, [pc, 0x150]                                   |         
    0x00001c08 add r2, pc                                            |         r2 = 0x3962;
    0x00001c0a add r1, pc                                            |         r1 = 0x3968;
    0x00001c0c blx 0x16bc                                            |         fcn_000016bc ();
    0x00001c10 add r1, sp, 8                                         |         r1 += var_8h_2;
    0x00001c12 mov r4, r0                                            |         r4 = r0;
    0x00001c14 blx 0x1604                                            |         fcn_00001604 ();
    0x00001c16 vldmia r6!, {s19, s20}                                |         __asm ("vldmia r6!, {s19, s20}");
    0x00001c1a cmp r2, 0                                             |         
                                                                     |         if (r2 != 0) {
    0x00001c1c bne 0x1cce                                            |             goto label_9;
                                                                     |         }
    0x00001c1e cmp.w r0, 0x3e8                                       |         
    0x00001c22 sbcs r3, r1, 0                                        |         __asm ("sbcs r3, r1, 0");
                                                                     |         if (r0 < 0x3e8) {
    0x00001c26 blt 0x1cae                                            |             goto label_10;
                                                                     |         }
    0x00001c28 cmp.w r0, -0x80000000                                 |         
    0x00001c2c sbcs r1, r1, 0                                        |         __asm ("sbcs r1, r1, 0");
                                                                     |         if (r0 >= -0x80000000) {
    0x00001c30 bge 0x1cf2                                            |             goto label_11;
                                                                     |         }
    0x00001c32 mov r1, r4                                            |         r1 = r4;
    0x00001c34 mov r0, r5                                            |         r0 = r5;
    0x00001c36 blx 0x1540                                            |         resource_declare_interface_implementation ();
    0x00001c3a b 0x1c58                                              |         goto label_1;
                                                                     | label_7:
    0x00001c3c ldr r2, [pc, 0x11c]                                   |         
    0x00001c3e mov r3, sb                                            |         r3 = sb;
    0x00001c40 movs r1, 0x10                                         |         r1 = 0x10;
    0x00001c42 movs r0, 0                                            |         r0 = 0;
    0x00001c44 add r2, pc                                            |         r2 = 0x39a4;
    0x00001c46 blx 0x16d4                                            |         fcn_000016d4 ();
    0x00001c4a ldr r1, [pc, 0x114]                                   |         
    0x00001c4c mov.w r0, 0x190                                       |         r0 = 0x190;
    0x00001c50 add r1, pc                                            |         r1 = 0x39b6;
    0x00001c52 blx 0x13d0                                            |         fcn_000013d0 ();
    0x00001c56 str r0, [sp, 8]                                       |         var_8h_2 = r0;
                                                                     | label_1:
    0x00001c58 mov r0, r7                                            |         r0 = r7;
    0x00001c5a blx 0x13e0                                            |         fcn_000013e0 ();
    0x00001c5e ldr r1, [sp, 8]                                       |         r1 = var_8h_2;
                                                                     |         if (r1 != 0) {
    0x00001c60 cbz r1, 0x1c68                                        |             
    0x00001c62 mov r0, r8                                            |             r0 = r8;
    0x00001c64 blx 0x14e0                                            |             resource_relation_load_from_reference_like ();
                                                                     |         }
    0x00001c68 ldr r2, [pc, 0xf8]                                    |         
    0x00001c6a ldr r3, [pc, 0xb4]                                    |         r3 = *(0x1d22);
    0x00001c6c add r2, pc                                            |         r2 = 0x39d4;
    0x00001c6e ldr r3, [r2, r3]                                      |         r3 = *(0x39d4);
    0x00001c70 ldr r2, [r3]                                          |         r2 = *(0x39d4);
    0x00001c72 ldr r3, [sp, 0xc]                                     |         r3 = var_ch;
    0x00001c74 eors r2, r3                                           |         r2 ^= r3;
    0x00001c76 mov.w r3, 0                                           |         r3 = 0;
                                                                     |         if (r2 != r3) {
    0x00001c7a bne 0x1d18                                            |             goto label_12;
                                                                     |         }
    0x00001c7c add sp, 0x14                                          |         
    0x00001c7e pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}            |         
    0x00001c82 ldr r1, [pc, 0xe4]                                    |         
    0x00001c84 mov r0, r6                                            |         r0 = r6;
    0x00001c86 add r1, pc                                            |         r1 = 0x39f4;
    0x00001c88 bl 0x1a34                                             |         r0 = fcn_00001a34 (r0);
                                                                     |         if (r0 == 0) {
    0x00001c8c cbz r0, 0x1ce0                                        |             goto label_13;
                                                                     |         }
    0x00001c8e ldr r2, [pc, 0xdc]                                    |         
    0x00001c90 mov r3, sb                                            |         r3 = sb;
    0x00001c92 mov r0, sl                                            |         r0 = sl;
    0x00001c94 movs r1, 0x40                                         |         r1 = 0x40;
    0x00001c96 add r2, pc                                            |         r2 = 0x3a08;
    0x00001c98 blx 0x16d4                                            |         fcn_000016d4 ();
    0x00001c9c b 0x1bb8                                              |         
                                                                     |     }
                                                                     | label_8:
    0x00001c9e ldr r1, [pc, 0xd0]                                    |     
    0x00001ca0 mov.w r0, 0x190                                       |     r0 = 0x190;
    0x00001ca4 add r1, pc                                            |     r1 = 0x3a1a;
    0x00001ca6 blx 0x13d0                                            |     fcn_000013d0 ();
    0x00001caa str r0, [sp, 8]                                       |     var_8h_2 = r0;
    0x00001cac b 0x1c58                                              |     goto label_1;
                                                                     | label_10:
    0x00001cae ldr r1, [pc, 0xc4]                                    |     
    0x00001cb0 mov.w r0, 0x190                                       |     r0 = 0x190;
    0x00001cb4 add r1, pc                                            |     r1 = 0x3a2e;
    0x00001cb6 blx 0x13d0                                            |     fcn_000013d0 ();
    0x00001cba str r0, [sp, 8]                                       |     var_8h_2 = r0;
    0x00001cbc b 0x1c58                                              |     goto label_1;
                                                                     | label_6:
    0x00001cbe ldr r1, [pc, 0xb8]                                    |     
    0x00001cc0 mov.w r0, 0x1a6                                       |     r0 = 0x1a6;
    0x00001cc4 add r1, pc                                            |     r1 = 0x3a42;
    0x00001cc6 blx 0x13d0                                            |     fcn_000013d0 ();
    0x00001cca str r0, [sp, 8]                                       |     var_8h_2 = r0;
    0x00001ccc b 0x1c58                                              |     goto label_1;
                                                                     | label_9:
    0x00001cce ldr r3, [pc, 0xac]                                    |     
    0x00001cd0 movs r1, 0x10                                         |     r1 = 0x10;
    0x00001cd2 ldr r2, [pc, 0xac]                                    |     
    0x00001cd4 movs r0, 0                                            |     r0 = 0;
    0x00001cd6 add r3, pc                                            |     r3 = 0x3a58;
    0x00001cd8 add r2, pc                                            |     r2 = 0x3a5e;
    0x00001cda blx 0x16d4                                            |     fcn_000016d4 ();
    0x00001cde b 0x1c58                                              |     goto label_1;
                                                                     | label_13:
    0x00001ce0 ldr r2, [pc, 0xa0]                                    |     
    0x00001ce2 mov r3, sb                                            |     r3 = sb;
    0x00001ce4 movs r1, 0x10                                         |     r1 = 0x10;
    0x00001ce6 str.w fp, [sp]                                        |     __asm ("str.w fp, [sp]");
    0x00001cea add r2, pc                                            |     r2 = 0x3a72;
    0x00001cec blx 0x16d4                                            |     fcn_000016d4 ();
    0x00001cf0 b 0x1bb8                                              |     goto label_2;
                                                                     | label_11:
    0x00001cf2 mov r0, r2                                            |     r0 = r2;
    0x00001cf4 ldr r3, [pc, 0x90]                                    |     
    0x00001cf6 ldr r2, [pc, 0x94]                                    |     
    0x00001cf8 mvn r1, 0x80000000                                    |     r1 = ~0x80000000;
    0x00001cfc str r1, [sp]                                          |     *(sp) = r1;
    0x00001cfe movs r1, 0x10                                         |     r1 = 0x10;
    0x00001d00 add r3, pc                                            |     r3 = 0x3a8c;
    0x00001d02 add r2, pc                                            |     r2 = 0x3a94;
    0x00001d04 blx 0x16d4                                            |     fcn_000016d4 ();
    0x00001d08 ldr r1, [pc, 0x84]                                    |     
    0x00001d0a mov.w r0, 0x190                                       |     r0 = 0x190;
    0x00001d0e add r1, pc                                            |     r1 = 0x3aa2;
    0x00001d10 blx 0x13d0                                            |     fcn_000013d0 ();
    0x00001d14 str r0, [sp, 8]                                       |     var_8h_2 = r0;
    0x00001d16 b 0x1c58                                              |     goto label_1;
                                                                     | label_12:
    0x00001d18 blx 0x15ac                                            |     get_domain_context_from_system_registry ()
    0x00001d1c movs r3, 0xd4                                         |     r3 = 0xd4;
    0x00001d1e movs r0, r0                                           |     
    0x00001d20 lsls r0, r2, 5                                        |     r0 = r2 << 5;
    0x00001d22 movs r0, r0                                           |     
    0x00001d24 lsrs r6, r0, 0x16                                     |     r6 = r0 >> 0x16;
    0x00001d26 movs r0, r0                                           |     
    0x00001d28 lsrs r4, r3, 5                                        |     r4 = r3 >> 5;
    0x00001d2a movs r0, r0                                           |     
    0x00001d2c lsrs r2, r6, 5                                        |     r2 = r6 >> 5;
    0x00001d2e movs r0, r0                                           |     
    0x00001d30 lsrs r6, r1, 0x15                                     |     r6 = r1 >> 0x15;
    0x00001d32 movs r0, r0                                           |     
    0x00001d34 lsrs r2, r6, 5                                        |     r2 = r6 >> 5;
    0x00001d36 movs r0, r0                                           |     
    0x00001d38 lsrs r6, r4, 5                                        |     r6 = r4 >> 5;
    0x00001d3a movs r0, r0                                           |     
    0x00001d3c lsrs r6, r2, 5                                        |     r6 = r2 >> 5;
    0x00001d3e movs r0, r0                                           |     
    0x00001d40 lsrs r4, r7, 5                                        |     r4 = r7 >> 5;
    0x00001d42 movs r0, r0                                           |     
    0x00001d44 lsrs r4, r6, 5                                        |     r4 = r6 >> 5;
    0x00001d46 movs r0, r0                                           |     
    0x00001d48 lsrs r6, r0, 0x13                                     |     r6 = r0 >> 0x13;
    0x00001d4a movs r0, r0                                           |     
    0x00001d4c lsrs r4, r7, 0x12                                     |     r4 = r7 >> 0x12;
    0x00001d4e movs r0, r0                                           |     
    0x00001d50 lsrs r2, r6, 0x12                                     |     r2 = r6 >> 0x12;
    0x00001d52 movs r0, r0                                           |     
    0x00001d54 lsrs r0, r3, 0x13                                     |     r0 = r3 >> 0x13;
    0x00001d56 movs r0, r0                                           |     
    0x00001d58 lsrs r6, r3, 0x13                                     |     r6 = r3 >> 0x13;
    0x00001d5a movs r0, r0                                           |     
    0x00001d5c lsrs r0, r3, 2                                        |     r0 = r3 >> 2;
    0x00001d5e movs r0, r0                                           |     
    0x00001d60 lsrs r4, r5, 2                                        |     r4 = r5 >> 2;
    0x00001d62 movs r0, r0                                           |     
    0x00001d64 movs r2, 0x38                                         |     r2 = 0x38;
    0x00001d66 movs r0, r0                                           |     
    0x00001d68 lsrs r6, r5, 0xc                                      |     r6 = r5 >> 0xc;
    0x00001d6a movs r0, r0                                           |     
    0x00001d6c lsrs r2, r1, 0xe                                      |     r2 = r1 >> 0xe;
    0x00001d6e movs r0, r0                                           |     
    0x00001d70 lsrs r4, r1, 0x10                                     |     r4 = r1 >> 0x10;
    0x00001d72 movs r0, r0                                           |     
    0x00001d74 lsrs r0, r4, 0x11                                     |     r0 = r4 >> 0x11;
    0x00001d76 movs r0, r0                                           |     
    0x00001d78 lsls r0, r1, 0x1f                                     |     r0 = r1 << 0x1f;
    0x00001d7a movs r0, r0                                           |     
    0x00001d7c lsrs r2, r1, 0xf                                      |     r2 = r1 >> 0xf;
    0x00001d7e movs r0, r0                                           |     
    0x00001d80 lsrs r0, r3, 0x10                                     |     r0 = r3 >> 0x10;
    0x00001d82 movs r0, r0                                           |     
    0x00001d84 lsrs r2, r6, 0xd                                      |     r2 = r6 >> 0xd;
    0x00001d86 movs r0, r0                                           |     
    0x00001d88 lsrs r0, r4, 0xe                                      |     r0 = r4 >> 0xe;
    0x00001d8a movs r0, r0                                           |     
    0x00001d8c lsrs r2, r1, 0x11                                     |     r2 = r1 >> 0x11;
    0x00001d8e movs r0, r0                                           |     
    0x00001d90 lsrs r6, r3, 0x11                                     |     r6 = r3 >> 0x11;
    0x00001d92 movs r0, r0                                           |     
                                                                     | }

[*] Function system used 3 times libdsdevice-api.so.0.0.1