Explore
/
Sign In
/
Unknown
Unknown
Fork
Star
Artifacts
function
0x140003e30:Code_x86_64
decompiled.c
0 lines
|
770.71 KB
_ABI(Microsoft_x86_64) void function_0x140003e30_Code_x86_64(generic64_t argument_0, generic64_t argument_1, generic64_t argument_2, generic64_t argument_3) { struct_191 stack; uint64_t loop_state_var; struct_230 *var_0; struct_215 *var_1; generic64_t var_2; generic64_t var_3; generic64_t var_4; struct_171 var_5; stack.offset_96 = segment_2.offset_0 ^ (number64_t) &stack; stack.offset_80 = 3561783033; stack.offset_84 = 3121812536; stack.offset_88 = 1651607; stack.offset_92 = 756074636; var_1 = function_0x1400032a0_Code_x86_64(756074636, (generic64_t) &stack.offset_80, (pointer_or_number64_t) &segment_2.offset_152 + 296, 11, var_5); var_0 = function_0x140004280_Code_x86_64(756074636, (generic64_t) &stack.offset_80, (pointer_or_number64_t) &segment_2.offset_152 + 296, 11); var_2 = (pointer_or_number64_t) &segment_2.offset_152 + 296; var_3 = 11; var_4 = NULL; if (*(generic64_t *) &var_0->offset_24->offset_32 != var_0->offset_24->offset_40) { generic64_t var_6; generic64_t var_7; generic64_t var_8; var_6 = (pointer_or_number64_t) &segment_2.offset_152 + 296; var_7 = 11; var_8 = *(generic64_t *) &var_0->offset_24->offset_32; while (true) { generic64_t var_9; generic64_t var_10; var_9 = var_6; var_10 = var_7; if (*(generic32_t *) (*(generic64_t *) (var_8 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_8 + 32) + 60) + 136)) { var_9 = var_6; var_10 = var_7; if (*(generic32_t *) (*(generic64_t *) (var_8 + 32) + *(generic32_t *) (*(generic64_t *) (var_8 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_8 + 32) + 60) + 136) + 24)) { generic64_t var_11; var_11 = 0; generic64_t var_12; generic8_t var_13; generic64_t var_14; do { generic64_t var_15; var_12 = *(generic64_t *) (var_8 + 32) + *(generic32_t *) ((var_11 << 2) + (*(generic64_t *) (var_8 + 32) + *(generic32_t *) (*(generic64_t *) (var_8 + 32) + *(generic32_t *) (*(generic64_t *) (var_8 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_8 + 32) + 60) + 136) + 32))); var_15 = 0; generic64_t var_16; do { var_16 = var_15; var_15 = var_16 + 1; } while (*(generic8_t *) (var_12 + var_16)); var_14 = 1429629648; if (var_16) { generic32_t var_17; generic64_t var_18; var_17 = 1429629648; var_18 = 0; generic64_t var_19; do { var_19 = var_12 + var_18; var_18 = var_18 + 1; var_17 = (var_17 ^ (number32_t) *(generic8_t *) var_19) * 16777619; } while (var_18 < var_16); var_14 = var_17; if (var_17 == 342807362) { var_4 = *(generic64_t *) (var_8 + 32) + *(generic32_t *) ((*(generic16_t *) ((var_11 << 1) + (*(generic64_t *) (var_8 + 32) + *(generic32_t *) (*(generic64_t *) (var_8 + 32) + *(generic32_t *) (*(generic64_t *) (var_8 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_8 + 32) + 60) + 136) + 36))) << 2) + (*(generic64_t *) (var_8 + 32) + *(generic32_t *) (*(generic64_t *) (var_8 + 32) + *(generic32_t *) (*(generic64_t *) (var_8 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_8 + 32) + 60) + 136) + 28))); var_2 = var_12; var_3 = var_17; loop_state_var = 0; break; } } var_13 = (number32_t) var_11 + 1 - *(generic32_t *) (*(generic64_t *) (var_8 + 32) + *(generic32_t *) (*(generic64_t *) (var_8 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_8 + 32) + 60) + 136) + 24) > ~*(generic32_t *) (*(generic64_t *) (var_8 + 32) + *(generic32_t *) (*(generic64_t *) (var_8 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_8 + 32) + 60) + 136) + 24); var_11 = (number32_t) var_11 + 1; } while (var_13); if (!(loop_state_var)) { break; } var_9 = var_12; var_10 = var_14; } } var_8 = *(generic64_t *) var_8; if (var_8 != var_0->offset_24->offset_40) { continue; } var_2 = var_9; var_3 = var_10; var_4 = NULL; break; } } generic64_t var_20; generic64_t var_21; generic64_t var_22; generic64_t var_23; generic64_t var_24; generic64_t var_25; generic64_t var_26; generic64_t var_27; artificial_struct_returned_by_rawfunction_97 var_28; var_28 = ((rawfunction_97 *) var_4)((generic64_t) var_1, var_2, var_3); var_24 = var_28.register_rcx; var_23 = var_28.register_rdx; var_27 = var_23; var_22 = var_28.register_r8; var_25 = var_22; var_21 = var_28.register_r9; var_26 = var_21; var_20 = function_0x140002830_Code_x86_64(var_24, var_27, var_25, var_26); if ((var_20 & 0xFFFFFFFF)) { generic64_t var_29; generic64_t var_30; generic64_t var_31; generic64_t var_32; var_29 = var_22; var_30 = var_21; var_31 = var_24; var_32 = var_23; generic64_t var_33; generic64_t var_34; generic64_t var_35; while (true) { struct_230 *var_36; generic64_t var_37; var_36 = function_0x140004280_Code_x86_64(var_31, var_32, var_29, var_30); var_37 = 0; if (*(generic64_t *) &var_36->offset_24->offset_32 != var_36->offset_24->offset_40) { generic64_t var_38; var_38 = *(generic64_t *) &var_36->offset_24->offset_32; while (true) { if (*(generic32_t *) (*(generic64_t *) (var_38 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_38 + 32) + 60) + 136)) { if (*(generic32_t *) (*(generic64_t *) (var_38 + 32) + *(generic32_t *) (*(generic64_t *) (var_38 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_38 + 32) + 60) + 136) + 24)) { generic64_t var_39; var_39 = 0; generic8_t var_40; do { generic64_t var_41; var_41 = 0; generic64_t var_42; do { var_42 = var_41; var_41 = var_42 + 1; } while (*(generic8_t *) (*(generic64_t *) (var_38 + 32) + *(generic32_t *) ((var_39 << 2) + (*(generic64_t *) (var_38 + 32) + *(generic32_t *) (*(generic64_t *) (var_38 + 32) + *(generic32_t *) (*(generic64_t *) (var_38 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_38 + 32) + 60) + 136) + 32))) + var_42)); if (var_42) { generic32_t var_43; generic64_t var_44; var_43 = 1429629648; var_44 = 0; generic64_t var_45; do { var_45 = *(generic64_t *) (var_38 + 32) + *(generic32_t *) ((var_39 << 2) + (*(generic64_t *) (var_38 + 32) + *(generic32_t *) (*(generic64_t *) (var_38 + 32) + *(generic32_t *) (*(generic64_t *) (var_38 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_38 + 32) + 60) + 136) + 32))) + var_44; var_44 = var_44 + 1; var_43 = (var_43 ^ (number32_t) *(generic8_t *) var_45) * 16777619; } while (var_44 < var_42); if (var_43 == (pointer_or_number32_t) -1657036258) { loop_state_var = 1; break; } } var_40 = (number32_t) var_39 + 1 - *(generic32_t *) (*(generic64_t *) (var_38 + 32) + *(generic32_t *) (*(generic64_t *) (var_38 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_38 + 32) + 60) + 136) + 24) > ~*(generic32_t *) (*(generic64_t *) (var_38 + 32) + *(generic32_t *) (*(generic64_t *) (var_38 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_38 + 32) + 60) + 136) + 24); var_39 = (number32_t) var_39 + 1; } while (var_40); if (loop_state_var == 1) { var_37 = *(generic64_t *) (var_38 + 32) + *(generic32_t *) ((*(generic16_t *) ((var_39 << 1) + (*(generic64_t *) (var_38 + 32) + *(generic32_t *) (*(generic64_t *) (var_38 + 32) + *(generic32_t *) (*(generic64_t *) (var_38 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_38 + 32) + 60) + 136) + 36))) << 2) + (*(generic64_t *) (var_38 + 32) + *(generic32_t *) (*(generic64_t *) (var_38 + 32) + *(generic32_t *) (*(generic64_t *) (var_38 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_38 + 32) + 60) + 136) + 28))); break; } } } var_38 = *(generic64_t *) var_38; if (var_38 != var_36->offset_24->offset_40) { continue; } var_37 = 0; break; } } generic64_t var_46; generic64_t var_47; artificial_struct_returned_by_rawfunction_98 var_48; var_48 = ((rawfunction_98 *) var_37)(0, 0); var_47 = var_48.register_rax; var_46 = var_48.register_rcx; var_35 = var_48.register_rdx; var_34 = var_48.register_r8; var_33 = var_48.register_r9; if (!(var_47 & 0xFFFFFFFF)) { break; } struct_230 *var_49; generic64_t var_50; generic64_t var_51; generic64_t var_52; var_49 = function_0x140004280_Code_x86_64(var_46, var_35, var_34, var_33); var_50 = var_34; var_51 = var_33; var_52 = 0; if (*(generic64_t *) &var_49->offset_24->offset_32 != var_49->offset_24->offset_40) { generic64_t var_53; generic64_t var_54; generic64_t var_55; var_53 = var_34; var_54 = var_33; var_55 = *(generic64_t *) &var_49->offset_24->offset_32; while (true) { generic64_t var_56; generic64_t var_57; var_56 = var_53; var_57 = var_54; if (*(generic32_t *) (*(generic64_t *) (var_55 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_55 + 32) + 60) + 136)) { var_56 = var_53; var_57 = var_54; if (*(generic32_t *) (*(generic64_t *) (var_55 + 32) + *(generic32_t *) (*(generic64_t *) (var_55 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_55 + 32) + 60) + 136) + 24)) { generic64_t var_58; var_58 = 0; generic64_t var_59; generic8_t var_60; generic64_t var_61; generic32_t var_62; do { generic64_t var_63; var_59 = *(generic64_t *) (var_55 + 32) + *(generic32_t *) ((var_58 << 2) + (*(generic64_t *) (var_55 + 32) + *(generic32_t *) (*(generic64_t *) (var_55 + 32) + *(generic32_t *) (*(generic64_t *) (var_55 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_55 + 32) + 60) + 136) + 32))); var_63 = 0; generic64_t var_64; do { var_64 = var_63; var_63 = var_64 + 1; } while (*(generic8_t *) (var_59 + var_64)); var_61 = 1429629648; if (var_64) { generic64_t var_65; var_62 = 1429629648; var_65 = 0; generic64_t var_66; do { var_66 = var_59 + var_65; var_65 = var_65 + 1; var_62 = (var_62 ^ (number32_t) *(generic8_t *) var_66) * 16777619; } while (var_65 < var_64); var_61 = var_62; if (var_62 == 1233950117) { loop_state_var = 1; break; } } var_60 = (number32_t) var_58 + 1 - *(generic32_t *) (*(generic64_t *) (var_55 + 32) + *(generic32_t *) (*(generic64_t *) (var_55 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_55 + 32) + 60) + 136) + 24) > ~*(generic32_t *) (*(generic64_t *) (var_55 + 32) + *(generic32_t *) (*(generic64_t *) (var_55 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_55 + 32) + 60) + 136) + 24); var_58 = (number32_t) var_58 + 1; } while (var_60); if (loop_state_var == 1) { var_52 = *(generic64_t *) (var_55 + 32) + *(generic32_t *) ((*(generic16_t *) ((var_58 << 1) + (*(generic64_t *) (var_55 + 32) + *(generic32_t *) (*(generic64_t *) (var_55 + 32) + *(generic32_t *) (*(generic64_t *) (var_55 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_55 + 32) + 60) + 136) + 36))) << 2) + (*(generic64_t *) (var_55 + 32) + *(generic32_t *) (*(generic64_t *) (var_55 + 32) + *(generic32_t *) (*(generic64_t *) (var_55 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_55 + 32) + 60) + 136) + 28))); var_50 = var_59; var_51 = var_62; break; } var_56 = var_59; var_57 = var_61; } } var_55 = *(generic64_t *) var_55; if (var_55 != var_49->offset_24->offset_40) { continue; } var_50 = var_56; var_51 = var_57; var_52 = 0; break; } } struct_230 *var_67; generic64_t var_68; generic64_t var_69; generic64_t var_70; generic64_t var_71; generic64_t var_72; generic64_t var_73; generic64_t var_74; generic64_t var_75; generic64_t var_76; generic64_t var_77; artificial_struct_returned_by_rawfunction_99 var_78; var_78 = ((rawfunction_99 *) var_52)(var_50, var_51); var_71 = var_78.register_rcx; var_70 = var_78.register_rdx; var_69 = var_78.register_r8; var_76 = var_69; var_68 = var_78.register_r9; var_77 = var_68; var_67 = function_0x140004280_Code_x86_64(var_71, var_70, var_76, var_77); if (*(generic64_t *) &var_67->offset_24->offset_32 != var_67->offset_24->offset_40) { generic64_t var_79; generic64_t var_80; generic64_t var_81; var_79 = var_69; var_80 = var_68; var_81 = *(generic64_t *) &var_67->offset_24->offset_32; generic64_t var_82; generic64_t var_83; generic64_t var_84; do { var_82 = var_79; var_83 = var_80; if (*(generic32_t *) (*(generic64_t *) (var_81 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_81 + 32) + 60) + 136)) { var_82 = var_79; var_83 = var_80; if (*(generic32_t *) (*(generic64_t *) (var_81 + 32) + *(generic32_t *) (*(generic64_t *) (var_81 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_81 + 32) + 60) + 136) + 24)) { var_84 = 0; generic64_t var_85; generic8_t var_86; generic64_t var_87; do { generic64_t var_88; var_85 = *(generic64_t *) (var_81 + 32) + *(generic32_t *) ((var_84 << 2) + (*(generic64_t *) (var_81 + 32) + *(generic32_t *) (*(generic64_t *) (var_81 + 32) + *(generic32_t *) (*(generic64_t *) (var_81 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_81 + 32) + 60) + 136) + 32))); var_88 = 0; generic64_t var_89; do { var_89 = var_88; var_88 = var_89 + 1; } while (*(generic8_t *) (var_85 + var_89)); var_87 = 1429629648; if (var_89) { generic32_t var_90; generic64_t var_91; var_90 = 1429629648; var_91 = 0; generic64_t var_92; do { var_92 = var_85 + var_91; var_91 = var_91 + 1; var_90 = (var_90 ^ (number32_t) *(generic8_t *) var_92) * 16777619; } while (var_91 < var_89); var_87 = var_90; if (var_90 == (pointer_or_number32_t) -1433349272) { loop_state_var = 1; break; } } var_86 = (number32_t) var_84 + 1 - *(generic32_t *) (*(generic64_t *) (var_81 + 32) + *(generic32_t *) (*(generic64_t *) (var_81 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_81 + 32) + 60) + 136) + 24) > ~*(generic32_t *) (*(generic64_t *) (var_81 + 32) + *(generic32_t *) (*(generic64_t *) (var_81 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_81 + 32) + 60) + 136) + 24); var_84 = (number32_t) var_84 + 1; } while (var_86); if (loop_state_var == 1) { loop_state_var = 1; break; } var_82 = var_85; var_83 = var_87; } } var_81 = *(generic64_t *) var_81; } while (var_81 != var_67->offset_24->offset_40); if (loop_state_var == 1) { generic64_t var_93; generic64_t var_94; generic64_t var_95; generic64_t var_96; artificial_struct_returned_by_rawfunction_101 var_97; var_97 = ((rawfunction_101 *) (*(generic64_t *) (var_81 + 32) + *(generic32_t *) ((*(generic16_t *) ((var_84 << 1) + (*(generic64_t *) (var_81 + 32) + *(generic32_t *) (*(generic64_t *) (var_81 + 32) + *(generic32_t *) (*(generic64_t *) (var_81 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_81 + 32) + 60) + 136) + 36))) << 2) + (*(generic64_t *) (var_81 + 32) + *(generic32_t *) (*(generic64_t *) (var_81 + 32) + *(generic32_t *) (*(generic64_t *) (var_81 + 32) + (pointer_or_number64_t) *(generic32_t *) (*(generic64_t *) (var_81 + 32) + 60) + 136) + 28)))))((pointer_or_number64_t) &stack + 32); var_96 = var_97.register_rcx; var_74 = var_96; var_95 = var_97.register_rdx; var_75 = var_95; var_94 = var_97.register_r8; var_72 = var_94; var_93 = var_97.register_r9; var_73 = var_93; continue; } var_76 = var_82; var_77 = var_83; } generic64_t var_98; generic64_t var_99; generic64_t var_100; generic64_t var_101; artificial_struct_returned_by_rawfunction_100 var_102; var_102 = ((rawfunction_100 *) NULL)(var_76, var_77); var_101 = var_102.register_rcx; var_74 = var_101; var_100 = var_102.register_rdx; var_75 = var_100; var_99 = var_102.register_r8; var_72 = var_99; var_98 = var_102.register_r9; var_73 = var_98; } var_25 = var_34; var_26 = var_33; var_27 = var_35; } struct_176 var_103; function_0x140004320_Code_x86_64(stack.offset_96 ^ (number64_t) &stack, var_27, var_25, var_26, var_103); }
Loading...