[*] Binary protection state of dbus-update-activation-environment
Full RELRO Canary found NX enabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function printf tear down of dbus-update-activation-environment
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/bin/dbus-update-activation-environment @ 0x1090 */
| #include <stdint.h>
|
; (fcn) fcn.00001090 () | void fcn_00001090 (int16_t arg_8h, int16_t arg_ch, int16_t arg_10h, int16_t arg_14h, int16_t arg_18h, int16_t arg_1ch, int16_t arg_20h, int16_t arg_24h, int16_t arg_28h, int16_t arg_2ch, int16_t arg_30h, int16_t arg_34h, void * ptr, int16_t arg_3ch, int16_t arg_50h, int16_t arg_88h, int16_t arg_c0h, int16_t arg_f8h, int16_t arg_130h, int16_t arg_19ch) {
| int16_t var_0h;
| int16_t var_4h;
| label_4:
0x00000bb6 ldr r3, [sp, 0xc] | r3 = *(arg_ch);
0x00000bb8 cmp r4, r3 |
| if (r4 < r3) {
0x00000bba bge 0xbc2 |
0x00000bbc cmp r5, 0 |
| if (r5 != 0) {
0x00000bbe bne.w 0xf5e | goto label_9;
| }
| }
0x00000bc2 ldr r1, [sp, 0x18] | r1 = *(arg_18h);
0x00000bc4 movs r0, 0 | r0 = 0;
0x00000bc6 blx 0x97c | dbus_bus_get ();
0x00000bca str r0, [sp, 0x20] | *(arg_20h) = r0;
0x00000bcc cmp r0, 0 |
| if (r0 == 0) {
0x00000bce beq.w 0xf78 | goto label_10;
| }
0x00000bd2 ldr r2, [pc, 0x3f0] | r2 = *(0xfc6);
| label_8:
0x00000bd4 ldr r3, [pc, 0x3f0] |
0x00000bd6 ldr r1, [pc, 0x3f4] |
0x00000bd8 add r2, pc | r2 += pc;
0x00000bda add r3, pc | r3 = 0x1ba6;
0x00000bdc mov r0, r2 | r0 = r2;
0x00000bde add r1, pc | r1 = 0x1bb0;
0x00000be0 blx 0xa84 | dbus_message_new_method_call ();
0x00000be4 str r0, [sp, 0x1c] | *(arg_1ch) = r0;
0x00000be6 cmp r0, 0 |
| if (r0 == 0) {
0x00000be8 beq.w 0xe74 | goto label_11;
| }
0x00000bec add r3, sp, 0x50 | r3 += arg_50h;
0x00000bee add.w sl, sp, 0x88 | sl += arg_88h;
0x00000bf2 mov r1, r3 | r1 = r3;
0x00000bf4 mov r7, r3 | r7 = r3;
0x00000bf6 str r3, [sp, 0x28] | *(arg_28h) = r3;
0x00000bf8 blx 0x994 | dbus_message_iter_init_append ();
0x00000bfc ldr r2, [pc, 0x3d0] |
0x00000bfe mov r3, sl | r3 = sl;
0x00000c00 movs r1, 0x61 | r1 = 0x61;
0x00000c02 mov r0, r7 | r0 = r7;
0x00000c04 add r2, pc | r2 = 0x1bd8;
0x00000c06 blx 0xa9c | r0 = dbus_message_iter_open_container ();
0x00000c0a cmp r0, 0 |
| if (r0 == 0) {
0x00000c0c beq.w 0xe74 | goto label_11;
| }
0x00000c10 ldr r3, [sp, 8] | r3 = *(arg_8h);
0x00000c12 cmp r3, 0 |
| if (r3 != 0) {
0x00000c14 bne.w 0xe0e | goto label_12;
| }
0x00000c16 strh r3, [r7, 6] | *((r7 + 6)) = r3;
0x00000c18 ldr r3, [sp, 8] | r3 = *(arg_8h);
0x00000c1a str r3, [sp, 0x2c] | *(arg_2ch) = r3;
| label_3:
0x00000c1c ldr r3, [pc, 0x3b4] |
0x00000c1e cmp r5, 0 |
0x00000c20 ldr.w fp, [pc, 0x3b4] |
0x00000c24 it ne |
| if (r5 == 0) {
0x00000c26 movne r4, 0 | r4 = 0;
| }
0x00000c28 mov r8, r4 | r8 = r4;
0x00000c2a add r3, pc | r3 = 0x1c02;
0x00000c2c str r3, [sp, 0x14] | *(arg_14h) = r3;
0x00000c2e add fp, pc | fp = 0x1c0a;
0x00000c30 ldr r3, [pc, 0x3a8] |
0x00000c32 add r3, pc | r3 = 0x1c12;
0x00000c34 str r3, [sp, 0x24] | *(arg_24h) = r3;
0x00000c36 cmp r5, 0 |
| if (r5 == 0) {
0x00000c38 beq 0xd10 | goto label_13;
| }
| do {
0x00000c3a ldr r3, [pc, 0x3a4] |
0x00000c3c ldr r3, [r6, r3] | r3 = *((r6 + r3));
0x00000c3e ldr r3, [r3] | r3 = *(0xfe2);
0x00000c40 ldr.w r4, [r3, r8, lsl 2] | r4 = *(0xfe2);
0x00000c44 cmp r4, 0 |
| if (r4 == 0) {
0x00000c46 beq.w 0xd88 | goto label_14;
| }
| label_0:
0x00000c4a mov r0, r4 | r0 = r4;
0x00000c4c add r7, sp, 0x30 | r7 += arg_30h;
0x00000c4e blx 0x9f4 | strdup (r0);
0x00000c52 str r0, [r7] | *(r7) = r0;
0x00000c54 cmp r0, 0 |
| if (r0 == 0) {
0x00000c56 beq.w 0xe74 | goto label_11;
| }
0x00000c5a movs r1, 0 | r1 = 0;
0x00000c5c mov r0, r4 | r0 = r4;
0x00000c5e blx 0x9dc | r0 = dbus_validate_utf8 ();
0x00000c62 cmp r0, 0 |
| if (r0 == 0) {
0x00000c64 beq 0xd58 | goto label_15;
| }
0x00000c66 ldr r0, [r7] | r0 = *(r7);
0x00000c68 movs r1, 0x3d | r1 = 0x3d;
0x00000c6a blx 0xa90 | r0 = strchr (r0, r1);
0x00000c6e cmp r0, 0 |
| if (r0 == 0) {
0x00000c70 beq 0xd1e | goto label_16;
| }
0x00000c72 movs r3, 0 | r3 = 0;
0x00000c74 add.w sb, sp, 0x34 | sb += arg_34h;
0x00000c78 strb r3, [r0], 1 | *(r0) = r3;
| r0++;
0x00000c7c str.w r0, [sb] | __asm ("str.w r0, [sb]");
| label_2:
0x00000c80 ldr r3, [sp, 8] | r3 = *(arg_8h);
| if (r3 != 0) {
0x00000c82 cbz r3, 0xcb4 |
0x00000c84 ldr.w r3, [sb] | r3 = *(sb);
0x00000c88 add r4, sp, 0x38 | r4 += ptr;
0x00000c8a ldr r2, [sp, 0x14] | r2 = *(arg_14h);
0x00000c8c movs r1, 1 | r1 = 1;
0x00000c8e mov r0, r4 | r0 = r4;
0x00000c90 str r3, [sp] | *(sp) = r3;
0x00000c92 ldr r3, [r7] | r3 = *(r7);
0x00000c94 blx 0xa48 | r0 = asprintf_chk ()
0x00000c98 cmp r0, 0 |
| if (r0 < 0) {
0x00000c9a blt.w 0xe74 | goto label_11;
| }
0x00000c9e mov r2, r4 | r2 = r4;
0x00000ca0 movs r1, 0x73 | r1 = 0x73;
0x00000ca2 add r0, sp, 0xf8 | r0 += arg_f8h;
0x00000ca4 blx 0x9c4 | r0 = dbus_message_iter_append_basic ();
0x00000ca8 cmp r0, 0 |
| if (r0 == 0) {
0x00000caa beq.w 0xe74 | goto label_11;
| }
0x00000cae ldr r0, [sp, 0x38] | r0 = *(ptr);
0x00000cb0 blx 0x9d0 | free (r0);
| }
0x00000cb4 add r4, sp, 0x130 | r4 += arg_130h;
0x00000cb6 movs r2, 0 | r2 = 0;
0x00000cb8 mov r3, r4 | r3 = r4;
0x00000cba movs r1, 0x65 | r1 = 0x65;
0x00000cbc mov r0, sl | r0 = sl;
0x00000cbe blx 0xa9c | r0 = dbus_message_iter_open_container ();
0x00000cc2 cmp r0, 0 |
| if (r0 == 0) {
0x00000cc4 beq.w 0xe74 | goto label_11;
| }
0x00000cc8 ldr r1, [r7] | r1 = *(r7);
0x00000cca mov r0, fp | r0 = fp;
0x00000ccc ldr.w r2, [sb] | r2 = *(sb);
0x00000cd0 bl 0x1158 | fcn_00001158 ();
0x00000cd4 mov r2, r7 | r2 = r7;
0x00000cd6 movs r1, 0x73 | r1 = 0x73;
0x00000cd8 mov r0, r4 | r0 = r4;
0x00000cda blx 0x9c4 | r0 = dbus_message_iter_append_basic ();
0x00000cde cmp r0, 0 |
| if (r0 == 0) {
0x00000ce0 beq.w 0xe74 | goto label_11;
| }
0x00000ce4 mov r2, sb | r2 = sb;
0x00000ce6 movs r1, 0x73 | r1 = 0x73;
0x00000ce8 mov r0, r4 | r0 = r4;
0x00000cea blx 0x9c4 | r0 = dbus_message_iter_append_basic ();
0x00000cee cmp r0, 0 |
| if (r0 == 0) {
0x00000cf0 beq.w 0xe74 | goto label_11;
| }
0x00000cf4 mov r1, r4 | r1 = r4;
0x00000cf6 mov r0, sl | r0 = sl;
0x00000cf8 blx 0xa24 | r0 = dbus_message_iter_close_container ();
0x00000cfc cmp r0, 0 |
| if (r0 == 0) {
0x00000cfe beq.w 0xe74 | goto label_11;
| }
| label_1:
0x00000d02 ldr r0, [r7] | r0 = *(r7);
0x00000d04 add.w r8, r8, 1 | r8++;
0x00000d08 blx 0x9d0 | free (r0);
0x00000d0c cmp r5, 0 |
0x00000d0e bne 0xc3a |
| } while (r5 != 0);
| label_13:
0x00000d10 ldr r3, [sp, 0xc] | r3 = *(arg_ch);
0x00000d12 cmp r8, r3 |
| if (r8 >= r3) {
0x00000d14 bge 0xd88 | goto label_14;
| }
0x00000d16 ldr r3, [sp, 0x10] | r3 = *(arg_10h);
0x00000d18 ldr.w r4, [r3, r8, lsl 2] | offset_0 = r8 << 2;
| r4 = *((r3 + offset_0));
0x00000d1c b 0xc4a | goto label_0;
| if (r5 != 0) {
| label_16:
0x00000d1e cbnz r5, 0xd70 | goto label_17;
| }
0x00000d20 mov r0, r4 | r0 = r4;
0x00000d22 add.w sb, sp, 0x34 | sb += arg_34h;
0x00000d26 blx 0xa54 | getenv (r0);
0x00000d2a str.w r0, [sb] | __asm ("str.w r0, [sb]");
0x00000d2e cmp r0, 0 |
| if (r0 == 0) {
0x00000d30 beq 0xd02 | goto label_1;
| }
0x00000d32 mov r1, r5 | r1 = r5;
0x00000d34 blx 0x9dc | r0 = dbus_validate_utf8 ();
0x00000d38 cmp r0, 0 |
| if (r0 != 0) {
0x00000d3a bne 0xc80 | goto label_2;
| }
0x00000d3c ldr.w r2, [sb] | r2 = *(sb);
0x00000d40 movs r1, 1 | r1 = 1;
0x00000d42 ldr r3, [pc, 0x2a0] | r3 = *(0xfe6);
0x00000d44 ldr r3, [r6, r3] | r3 = *((r6 + r3));
0x00000d46 strd r4, r2, [sp] | __asm ("strd r4, r2, [sp]");
0x00000d4a ldr r2, [pc, 0x29c] |
0x00000d4c ldr r0, [r3] | r0 = *(0xfe6);
0x00000d4e ldr r3, [sp, 0x24] | r3 = *(arg_24h);
0x00000d50 add r2, pc | r2 = 0x1d3e;
0x00000d52 blx 0xac0 | fprintf_chk ()
0x00000d56 b 0xd02 | goto label_1;
| label_15:
0x00000d58 ldr r3, [pc, 0x288] | r3 = *(0xfe4);
0x00000d5a movs r1, 1 | r1 = 1;
0x00000d5c ldr r2, [pc, 0x28c] |
0x00000d5e ldr r3, [r6, r3] | r3 = *((r6 + r3));
0x00000d60 str r4, [sp] | *(sp) = r4;
0x00000d62 add r2, pc | r2 = 0x1d52;
0x00000d64 ldr r0, [r3] | r0 = *(0xfe4);
0x00000d66 ldr r3, [pc, 0x288] |
0x00000d68 add r3, pc | r3 = 0x1d5e;
0x00000d6a blx 0xac0 | fprintf_chk ()
0x00000d6e b 0xd02 | goto label_1;
| label_17:
0x00000d70 ldr r3, [pc, 0x270] | r3 = *(0xfe4);
0x00000d72 movs r1, 1 | r1 = 1;
0x00000d74 ldr r2, [pc, 0x27c] |
0x00000d76 ldr r3, [r6, r3] | r3 = *((r6 + r3));
0x00000d78 str r4, [sp] | *(sp) = r4;
0x00000d7a add r2, pc | r2 = 0x1d72;
0x00000d7c ldr r0, [r3] | r0 = *(0xfe4);
0x00000d7e ldr r3, [pc, 0x278] |
0x00000d80 add r3, pc | r3 = 0x1d7e;
0x00000d82 blx 0xac0 | fprintf_chk ()
0x00000d86 b 0xd02 | goto label_1;
| label_14:
0x00000d88 ldr r0, [sp, 0x28] | r0 = *(arg_28h);
0x00000d8a mov r1, sl | r1 = sl;
0x00000d8c blx 0xa24 | r0 = dbus_message_iter_close_container ();
0x00000d90 cmp r0, 0 |
| if (r0 == 0) {
0x00000d92 beq 0xe74 | goto label_11;
| }
0x00000d94 ldr r3, [sp, 8] | r3 = *(arg_8h);
| if (r3 != 0) {
0x00000d96 cbz r3, 0xda4 |
0x00000d98 add r1, sp, 0xf8 | r1 += arg_f8h;
0x00000d9a add r0, sp, 0xc0 | r0 += arg_c0h;
0x00000d9c blx 0xa24 | r0 = dbus_message_iter_close_container ();
0x00000da0 cmp r0, 0 |
| if (r0 == 0) {
0x00000da2 beq 0xe74 | goto label_11;
| }
| }
0x00000da4 ldr r3, [sp, 0x18] | r3 = *(arg_18h);
0x00000da6 mov.w r2, -1 | r2 = -1;
0x00000daa ldrd r1, r0, [sp, 0x1c] | __asm ("ldrd r1, r0, [arg_1ch]");
0x00000dae blx 0xa3c | r0 = dbus_connection_send_with_reply_and_block ();
0x00000db2 mov r4, r0 | r4 = r0;
0x00000db4 cmp r0, 0 |
| if (r0 == 0) {
0x00000db6 beq.w 0xf48 | goto label_18;
| }
0x00000dba ldrd r0, r1, [sp, 0x18] | __asm ("ldrd r0, r1, [arg_18h]");
0x00000dbe blx 0xad8 | r0 = dbus_set_error_from_message ();
0x00000dc2 mov r2, r0 | r2 = r0;
0x00000dc4 cmp r0, 0 |
| if (r0 != 0) {
0x00000dc6 bne.w 0xf20 | goto label_19;
| }
0x00000dca ldrd r1, r0, [sp, 0x18] | __asm ("ldrd r1, r0, [arg_18h]");
0x00000dce blx 0x9e8 | r0 = dbus_message_get_args ();
0x00000dd2 cmp r0, 0 |
| if (r0 == 0) {
0x00000dd4 beq.w 0xf20 | goto label_19;
| }
0x00000dd8 mov r0, r4 | r0 = r4;
0x00000dda blx 0xa18 | dbus_message_unref ();
0x00000dde ldr r3, [sp, 8] | r3 = *(arg_8h);
0x00000de0 cmp r3, 0 |
| if (r3 != 0) {
0x00000de2 bne 0xe82 | goto label_20;
| }
| label_5:
0x00000de4 ldr r0, [sp, 0x1c] | r0 = *(arg_1ch);
0x00000de6 blx 0xa18 | dbus_message_unref ();
0x00000dea ldr r0, [sp, 0x20] | r0 = *(arg_20h);
0x00000dec blx 0x988 | dbus_connection_unref ();
0x00000df0 ldr r2, [pc, 0x208] |
0x00000df2 ldr r3, [pc, 0x1b8] | r3 = *(0xfae);
0x00000df4 add r2, pc | r2 = 0x1df4;
0x00000df6 ldr r3, [r2, r3] | r3 = *(0x1df4);
0x00000df8 ldr r2, [r3] | r2 = *(0x1df4);
0x00000dfa ldr r3, [sp, 0x19c] | r3 = *(arg_19ch);
0x00000dfc eors r2, r3 | r2 ^= r3;
0x00000dfe mov.w r3, 0 | r3 = 0;
| if (r2 != r3) {
0x00000e02 bne.w 0xf44 | goto label_21;
| }
0x00000e06 movs r0, 0 | r0 = 0;
0x00000e08 add sp, 0x1a4 |
0x00000e0a pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc} |
| label_12:
0x00000e0e ldr r0, [pc, 0x1f0] |
0x00000e10 add r0, pc | r0 = 0x1e16;
0x00000e12 blx 0xa54 | r0 = getenv (r0);
0x00000e16 mov r3, r0 | r3 = r0;
0x00000e18 cmp r0, 0 |
| if (r0 == 0) {
0x00000e1a beq 0xee8 | goto label_22;
| }
0x00000e1c ldr r2, [pc, 0x1e4] |
0x00000e1e add r7, sp, 0x3c | r7 += arg_3ch;
0x00000e20 movs r1, 1 | r1 = 1;
0x00000e22 mov r0, r7 | r0 = r7;
0x00000e24 add r2, pc | r2 = 0x1e2c;
0x00000e26 blx 0xa48 | r0 = asprintf_chk ()
0x00000e2a cmp r0, 0 |
| if (r0 < 0) {
0x00000e2c blt 0xe74 | goto label_11;
| }
0x00000e2e ldr r0, [r7] | r0 = *(r7);
0x00000e30 add r1, sp, 0x130 | r1 += arg_130h;
0x00000e32 blx 0xa0c | r0 = stat64 ();
0x00000e36 cmp r0, 0 |
| if (r0 != 0) {
0x00000e38 bne 0xee2 | goto label_23;
| }
0x00000e3a ldr r0, [r7] | r0 = *(r7);
0x00000e3c blx 0x9d0 | free (r0);
0x00000e40 ldr r3, [pc, 0x1c4] |
0x00000e42 ldr r2, [pc, 0x1c8] |
0x00000e44 ldr r1, [pc, 0x1c8] |
0x00000e46 ldr r0, [pc, 0x1cc] |
0x00000e48 add r3, pc | r3 = 0x1e54;
0x00000e4a add r2, pc | r2 = 0x1e5c;
0x00000e4c add r1, pc | r1 = 0x1e60;
0x00000e4e add r0, pc | r0 = 0x1e68;
0x00000e50 blx 0xa84 | dbus_message_new_method_call ();
0x00000e54 str r0, [sp, 0x2c] | *(arg_2ch) = r0;
| if (r0 == 0) {
0x00000e56 cbz r0, 0xe74 | goto label_11;
| }
0x00000e58 add r7, sp, 0xc0 | r7 += arg_c0h;
0x00000e5a mov r1, r7 | r1 = r7;
0x00000e5c blx 0x994 | dbus_message_iter_init_append ();
0x00000e60 ldr r2, [pc, 0x1b4] |
0x00000e62 mov r0, r7 | r0 = r7;
0x00000e64 add r3, sp, 0xf8 | r3 += arg_f8h;
0x00000e66 movs r1, 0x61 | r1 = 0x61;
0x00000e68 add r2, pc | r2 = 0x1e84;
0x00000e6a blx 0xa9c | r0 = dbus_message_iter_open_container ();
0x00000e6e cmp r0, 0 |
| if (r0 != 0) {
0x00000e70 bne.w 0xc1c | goto label_3;
| }
| label_11:
0x00000e74 ldr r0, [pc, 0x1a4] |
0x00000e76 add r0, pc | r0 = 0x1e96;
0x00000e78 bl 0x11e8 | fcn_000011e8 (r0);
0x00000e7c ldr r6, [sp, 0x1c] | r6 = *(arg_1ch);
0x00000e7e adds r4, 1 | r4++;
0x00000e80 b 0xbb6 | goto label_4;
| label_20:
0x00000e82 ldr r3, [sp, 0x18] | r3 = *(arg_18h);
0x00000e84 mov.w r2, -1 | r2 = -1;
0x00000e88 ldr r1, [sp, 0x2c] | r1 = *(arg_2ch);
0x00000e8a ldr r0, [sp, 0x20] | r0 = *(arg_20h);
0x00000e8c blx 0xa3c | r0 = dbus_connection_send_with_reply_and_block ();
0x00000e90 mov r4, r0 | r4 = r0;
0x00000e92 cmp r0, 0 |
| if (r0 == 0) {
0x00000e94 beq 0xef8 | goto label_24;
| }
0x00000e96 ldrd r0, r1, [sp, 0x18] | __asm ("ldrd r0, r1, [arg_18h]");
0x00000e9a blx 0xad8 | r0 = dbus_set_error_from_message ();
0x00000e9e mov r2, r0 | r2 = r0;
0x00000ea0 cbz r0, 0xed4 |
| while (r0 == 0) {
0x00000ea2 ldr r3, [pc, 0x140] | r3 = *(0xfe6);
0x00000ea4 movs r1, 1 | r1 = 1;
0x00000ea6 ldr r2, [sp, 0x18] | r2 = *(arg_18h);
0x00000ea8 ldr r3, [r6, r3] | r3 = *((r6 + r3));
0x00000eaa ldr r0, [r3] | r0 = *(0xfe6);
0x00000eac ldr r3, [r2, 4] | r3 = *((r2 + 4));
0x00000eae str r3, [sp, 4] | var_4h = r3;
0x00000eb0 ldr r3, [r2] | r3 = *(r2);
0x00000eb2 ldr r2, [pc, 0x16c] |
0x00000eb4 str r3, [sp] | *(sp) = r3;
0x00000eb6 ldr r3, [pc, 0x16c] |
0x00000eb8 add r2, pc | r2 = 0x1ede;
0x00000eba add r3, pc | r3 = 0x1ee4;
0x00000ebc blx 0xac0 | fprintf_chk ()
| label_6:
0x00000ec0 mov r0, r4 | r0 = r4;
0x00000ec2 blx 0xa18 | dbus_message_unref ();
| label_7:
0x00000ec6 ldr r0, [sp, 0x2c] | r0 = *(arg_2ch);
0x00000ec8 blx 0xa18 | dbus_message_unref ();
0x00000ecc ldr r0, [sp, 0x18] | r0 = *(arg_18h);
0x00000ece blx 0xa30 | dbus_error_free ();
0x00000ed2 b 0xde4 | goto label_5;
0x00000ed4 ldrd r1, r0, [sp, 0x18] | __asm ("ldrd r1, r0, [arg_18h]");
0x00000ed8 blx 0x9e8 | r0 = dbus_message_get_args ();
0x00000edc cmp r0, 0 |
0x00000ede beq 0xea2 |
| }
0x00000ee0 b 0xec0 | goto label_6;
| label_23:
0x00000ee2 ldr r0, [r7] | r0 = *(r7);
0x00000ee4 blx 0x9d0 | free (r0);
| label_22:
0x00000ee8 ldr r0, [pc, 0x13c] |
0x00000eea add r0, pc | r0 = 0x1f16;
0x00000eec bl 0x1158 | fcn_00001158 ();
0x00000ef0 movs r3, 0 | r3 = 0;
0x00000ef2 str r3, [sp, 8] | *(arg_8h) = r3;
0x00000ef4 str r3, [sp, 0x2c] | *(arg_2ch) = r3;
0x00000ef6 b 0xc1c | goto label_3;
| label_24:
0x00000ef8 ldr r3, [pc, 0xe8] | r3 = *(0xfe4);
0x00000efa movs r1, 1 | r1 = 1;
0x00000efc ldr r2, [sp, 0x18] | r2 = *(arg_18h);
0x00000efe ldr r3, [r6, r3] | r3 = *((r6 + r3));
0x00000f00 ldr r0, [r3] | r0 = *(0xfe4);
0x00000f02 ldr r3, [r2, 4] | r3 = *((r2 + 4));
0x00000f04 str r3, [sp, 4] | var_4h = r3;
0x00000f06 ldr r3, [r2] | r3 = *(r2);
0x00000f08 ldr r2, [pc, 0x120] |
0x00000f0a str r3, [sp] | *(sp) = r3;
0x00000f0c ldr r3, [pc, 0x120] |
0x00000f0e add r2, pc | r2 = 0x1f3e;
0x00000f10 add r3, pc | r3 = 0x1f44;
0x00000f12 blx 0xac0 | fprintf_chk ()
0x00000f16 b 0xec6 | goto label_7;
| label_19:
0x00000f20 ldr r2, [pc, 0xc0] | r2 = *(0xfe4);
0x00000f22 ldr r3, [sp, 0x18] | r3 = *(arg_18h);
0x00000f24 ldr r0, [r6, r2] | r0 = *((r6 + r2));
0x00000f26 ldrd r4, r1, [r3] | __asm ("ldrd r4, r1, [r3]");
0x00000f2a ldr r2, [pc, 0x108] |
0x00000f2c ldr r3, [pc, 0x108] |
0x00000f2e str r1, [sp, 4] | var_4h = r1;
0x00000f30 add r2, pc | r2 = 0x1f6a;
0x00000f32 add r3, pc | r3 = 0x1f6e;
| do {
0x00000f34 str r4, [sp] | *(sp) = r4;
0x00000f36 movs r1, 1 | r1 = 1;
0x00000f38 ldr r0, [r0] | r0 = *(r0);
0x00000f3a blx 0xac0 | fprintf_chk ()
0x00000f3e movs r0, 0x45 | r0 = 0x45;
0x00000f40 blx 0xa78 | r0 = exit (r0);
| label_21:
0x00000f44 blx 0xa00 | stack_chk_fail ();
| label_18:
0x00000f48 ldr r2, [pc, 0x98] | r2 = *(0xfe4);
0x00000f4a ldr r3, [sp, 0x18] | r3 = *(arg_18h);
0x00000f4c ldr r0, [r6, r2] | r0 = *((r6 + r2));
0x00000f4e ldrd r4, r1, [r3] | __asm ("ldrd r4, r1, [r3]");
0x00000f52 ldr r2, [pc, 0xe8] |
0x00000f54 ldr r3, [pc, 0xe8] |
0x00000f56 str r1, [sp, 4] | var_4h = r1;
0x00000f58 add r2, pc | r2 = 0x1f9a;
0x00000f5a add r3, pc | r3 = 0x1f9e;
0x00000f5c b 0xf34 |
| } while (1);
| label_9:
0x00000f5e ldr r3, [pc, 0xe4] |
0x00000f60 ldr r2, [pc, 0xe4] |
0x00000f62 ldr r0, [pc, 0x80] | r0 = *(0xfe6);
0x00000f64 add r3, pc | r3 = 0x1fae;
0x00000f66 add r2, pc | r2 = 0x1fb2;
| do {
0x00000f68 ldr r0, [r6, r0] | r0 = *((r6 + r0));
0x00000f6a movs r1, 1 | r1 = 1;
0x00000f6c ldr r0, [r0] | r0 = *(r0);
0x00000f6e blx 0xac0 | fprintf_chk ()
0x00000f72 movs r0, 0x40 | r0 = 0x40;
0x00000f74 blx 0xa78 | exit (r0);
| label_10:
0x00000f78 ldr r3, [sp, 0x18] | r3 = *(arg_18h);
0x00000f7a ldr r1, [pc, 0x68] | r1 = *(0xfe6);
0x00000f7c ldr r2, [pc, 0xcc] |
0x00000f7e ldr r4, [r3, 4] | r4 = *((r3 + 4));
0x00000f80 ldr r0, [r6, r1] | r0 = *((r6 + r1));
0x00000f82 movs r1, 1 | r1 = 1;
0x00000f84 ldr r3, [pc, 0xc8] |
0x00000f86 add r2, pc | r2 = 0x1fd6;
0x00000f88 str r4, [sp] | *(sp) = r4;
0x00000f8a ldr r0, [r0] | r0 = *(r0);
0x00000f8c add r3, pc | r3 = 0x1fe0;
0x00000f8e blx 0xac0 | fprintf_chk ()
0x00000f92 movs r0, 0x47 | r0 = 0x47;
0x00000f94 blx 0xa78 | exit (r0);
0x00000f98 ldr r3, [pc, 0xb8] |
0x00000f9a ldr r2, [pc, 0xbc] |
0x00000f9c ldr r6, [sp, 0x1c] | r6 = *(arg_1ch);
0x00000f9e ldr r0, [pc, 0x44] | r0 = *(0xfe6);
0x00000fa0 add r3, pc | r3 = 0x1ff8;
0x00000fa2 add r2, pc | r2 = 0x2000;
0x00000fa4 b 0xf68 |
| } while (1);
0x00001090 adds r0, 0x14 | r0 += 0x14;
0x00001092 b 0xbd4 | goto label_8;
| }
[*] Function printf used 11 times dbus-update-activation-environment