Explore
/
Sign In
/
Unknown
Unknown
Fork
Star
Artifacts
function
__init_tls
decompiled.c
0 lines
|
202.41 KB
_ABI(SystemV_x86_64) void __init_tls(size_t *aux) { generic32_t var_0; generic64_t var_1; generic64_t var_2; generic64_t var_3; generic64_t var_4; generic32_t var_5; generic64_t var_6; generic32_t var_7; generic32_t var_8; generic32_t var_9; generic64_t var_10; generic32_t var_11; generic32_t var_12; generic32_t var_13; generic64_t var_14; generic32_t var_15; generic32_t var_16; generic64_t var_17; generic32_t var_18; generic32_t var_19; generic32_t var_20; generic64_t var_21; generic32_t var_22; generic8_t var_23; generic32_t var_24; generic64_t var_25; generic64_t var_26; generic64_t var_27; generic64_t var_28; generic32_t var_29; generic64_t var_30; generic32_t var_31; generic32_t var_32; generic32_t var_33; generic64_t var_34; generic32_t var_35; generic32_t var_36; generic32_t var_37; generic64_t var_38; generic32_t var_39; generic32_t var_40; generic64_t var_41; generic32_t var_42; generic32_t var_43; generic32_t var_44; generic64_t var_45; generic32_t var_46; generic8_t var_47; generic64_t var_48; generic64_t var_49; generic64_t var_50; var_48 = 0; var_49 = 0; if (aux[5]) { generic64_t var_51; generic64_t var_52; generic64_t var_53; generic64_t var_54; var_51 = 0; var_52 = 0; var_53 = 0; var_54 = aux[3]; generic64_t var_55; generic8_t var_56; generic64_t var_57; generic64_t var_58; do { var_55 = *(generic32_t *) var_54; if (*(generic32_t *) var_54 == 6) { var_58 = aux[3] - *(generic64_t *) (var_54 + 16); var_57 = var_52; } else { generic64_t var_59; var_59 = *(generic32_t *) var_54 == 7 ? var_54 : var_52; var_57 = var_59; var_58 = var_53; } var_54 = var_54 + aux[4]; var_56 = aux[5] == var_51 + 1; var_51 = var_51 + 1; } while (!(var_56)); var_48 = var_58; var_49 = var_57; var_50 = var_55; } generic64_t var_60; if (!var_49) { var_60 = segment_3.bss.__static_tls.offset_24; } else { segment_3.bss.__static_tls.offset_0 = var_48 + *(generic64_t *) (var_49 + 16); segment_3.bss.__static_tls.offset_8 = *(generic64_t *) (var_49 + 32); var_60 = *(generic64_t *) (var_49 + 48); segment_3.bss.__static_tls.offset_16 = *(generic64_t *) (var_49 + 40); segment_3.bss.__static_tls.offset_24 = var_60; } segment_3.bss.__static_tls.offset_16 = ((var_60 - 1) & (0 - ((pointer_or_number64_t) segment_3.bss.__static_tls.offset_0 + segment_3.bss.__static_tls.offset_16))) + segment_3.bss.__static_tls.offset_16; if (!(var_60 > 7)) { segment_3.bss.__static_tls.offset_24 = 8; } generic32_t var_61; generic64_t var_62; generic32_t var_63; generic64_t var_64; generic64_t var_65; generic64_t var_66; generic64_t var_67; generic64_t var_68; generic32_t var_69; generic64_t var_70; generic64_t var_71; generic32_t var_72; generic64_t var_73; generic32_t var_74; var_64 = segment_3.bss.__static_tls.offset_24; segment_3.bss.__libc_3.offset_24 = (var_64 + (((var_60 - 1) & (0 - ((pointer_or_number64_t) segment_3.bss.__static_tls.offset_0 + segment_3.bss.__static_tls.offset_16))) + segment_3.bss.__static_tls.offset_16) + 359) & 0xFFFFFFFFFFFFFFF8; var_65 = &segment_3.bss.builtin_tls_2; var_61 = 4294967295; var_62 = 514; var_63 = 4243635; var_66 = 0; var_67 = 0; var_68 = 0; var_69 = 65535; var_70 = var_50; var_71 = aux[3]; var_72 = 0; var_73 = 0; var_74 = 4294967295; if (((var_64 + (((var_60 - 1) & (0 - ((pointer_or_number64_t) segment_3.bss.__static_tls.offset_0 + segment_3.bss.__static_tls.offset_16))) + segment_3.bss.__static_tls.offset_16) + 359) & 0xFFFFFFFFFFFFFFF8) > 472) { helper_syscall_wrapper(NULL, 2, (pointer_or_number64_t) &segment_1 + 10233, 34, 18446744073709551615U, 0, 9, undef(generic64_t), undef(generic64_t), segment_3.bss.__static_tls.offset_16, 0, 3, (var_64 + (((var_60 - 1) & (0 - ((pointer_or_number64_t) segment_3.bss.__static_tls.offset_0 + segment_3.bss.__static_tls.offset_16))) + segment_3.bss.__static_tls.offset_16) + 359) & 0xFFFFFFFFFFFFFFF8, 4294967295, 514, 4243635, 0, 0, 15727360, 0, 13628160, 0, 0, 0, 0, 65535, 274877906944, 127, 2147549185, 0, 0, 0, 4294967295, &var_24, &var_25, &var_26, &var_27, &var_28, &var_29, &var_30, &var_31, &var_32, &var_33, &var_34, &var_35, &var_36, &var_37, &var_38, &var_39, &var_40, &var_41, &var_42, &var_43, &var_44, &var_45, &var_46, &var_47); var_65 = var_27; var_61 = var_29; var_62 = var_30; var_63 = var_32; var_66 = var_34; var_67 = var_38; var_68 = var_41; var_69 = var_42; var_72 = var_43; var_73 = var_45; var_74 = var_46; var_64 = 3; var_70 = 0; var_71 = 18446744073709551615U; } generic64_t var_75; generic64_t var_76; void *var_77; var_77 = __copy_tls((uint8_t *) var_65); *(void **) var_77 = var_77; var_76 = __set_thread_area((struct_595 *) var_77); var_75 = lshift(var_76 & 0xFFFFFFFF, 4294967272); if (!(number32_t) var_76) { segment_3.bss.__libc_3.offset_0 = 1; } helper_syscall_wrapper(NULL, 2, (pointer_or_number64_t) &segment_1 + 10285, 34, var_71, var_70, 218, undef(generic64_t), var_77, segment_3.bss.__static_tls.offset_16, (pointer_or_number64_t) var_77 + 56, var_64, segment_3.bss.__libc_3.offset_24, var_61, var_62, var_63, 0, 0, 15727360, 0, 13628160, 0, var_66, var_67, var_68, var_69, 274877906944, 127, 2147549185, 0, var_72, var_73, var_74, &var_0, &var_1, &var_2, &var_3, &var_4, &var_5, &var_6, &var_7, &var_8, &var_9, &var_10, &var_11, &var_12, &var_13, &var_14, &var_15, &var_16, &var_17, &var_18, &var_19, &var_20, &var_21, &var_22, &var_23); ((struct_595 *) var_77)->offset_56 = (number32_t) var_3; ((struct_595 *) var_77)->offset_256 = (pointer_or_number64_t) &segment_3.bss.__libc_3.offset_32 + 8; ((struct_595 *) var_77)->offset_224 = &((struct_595 *) var_77)->offset_224; }
Loading...