Explore
/
Sign In
/
Unknown
Unknown
Fork
Star
Artifacts
function
engine_base_GE_run_impl_
decompiled.c
0 lines
|
365.69 KB
_ABI(raw_x86_64) generic64_t engine_base_GE_run_impl_(generic64_t register_rcx _REG(rcx_x86_64), generic64_t register_rdx _REG(rdx_x86_64), struct_189 *register_rsi _REG(rsi_x86_64), struct_190 *register_rdi _REG(rdi_x86_64), generic64_t register_xmm0 _REG(xmm0_x86_64)) { struct_172 stack; uint64_t loop_state_var; generic64_t var_0; generic64_t var_1; uint8_t *var_2; stack.offset_8 = register_rdx; var_2 = ""; var_1 = register_xmm0; if (register_rsi->offset_2080.member_0 < register_rcx) { generic64_t var_3; generic64_t var_4; generic64_t var_5; stack.offset_0 = register_rcx; var_3 = register_rcx; var_4 = register_rsi->offset_2080.member_0; var_5 = register_xmm0; while (true) { generic64_t var_6; generic64_t var_7; generic64_t var_8; var_7 = var_3; var_8 = var_5; register_rsi->offset_2080.member_0 = var_4 + 1; if (((*(generic8_t *) (var_4 + stack.offset_8) + 4294967229) & 0xFFFFFFFF) > 55) { var_6 = var_8; var_4 = register_rsi->offset_2080.member_0; if (var_4 < var_7) { continue; } var_1 = var_6; var_2 = ""; break; } generic64_t var_9; generic64_t var_10; generic64_t var_11; generic64_t var_12; generic64_t var_13; generic16_t var_14; generic64_t var_15; bool var_16 = false; var_6 = var_5; var_7 = var_3; var_8 = var_5; var_10 = var_5; switch ((number64_t) *(generic32_t *) ((pointer_or_number64_t) &segment_0.rodata + ((*(generic8_t *) (var_4 + stack.offset_8) + 4294967229) & 0xFFFFFFFF) * 4)) { case 5228: { generic64_t var_17; generic64_t var_18; generic64_t var_19; generic64_t var_20; enum_61 var_21; generic64_t var_22; generic64_t var_23; artificial_struct_returned_by_rawfunction_161 var_24; artificial_struct_returned_by_rawfunction_161 var_25; artificial_struct_returned_by_rawfunction_164 var_26; var_24 = function_0x401b80_Code_x86_64(1, register_rsi, var_5); var_23 = var_24.register_rax; var_22 = var_24.register_xmm0; var_21 = function_0x401ba0_Code_x86_64(var_23); var_25 = function_0x401b80_Code_x86_64(2, register_rsi, var_22); var_20 = var_25.register_rax; var_19 = var_25.register_xmm0; stack.offset_16.offset_0.member_2 = (number8_t) var_21 & 0x3F; var_26 = function_0x401c10_Code_x86_64(var_20 & 0xFFFFFFFF, (number8_t) var_21 & 0x3F, register_rsi->offset_2056, var_19); var_18 = var_26.register_rax; var_17 = var_26.register_xmm0; var_10 = var_17; var_8 = var_10; var_7 = var_3; if (!(var_18 & 0x1)) { var_1 = var_10; var_2 = ""; var_16 = true; break; } var_6 = var_8; var_4 = register_rsi->offset_2080.member_0; if (var_4 < var_7) { continue; } } break; case 5340: { generic64_t var_27; var_27 = function_0x4016f0_Code_x86_64(®ister_rsi->offset_2080.member_0, var_3, stack.offset_8, &stack.offset_16, var_5); var_15 = var_27; var_14 = stack.offset_16.offset_8.member_0; if (var_14) { var_0 = var_15; register_rdi->offset_0 = var_14; loop_state_var = 1; var_16 = true; break; } generic64_t var_28; generic64_t var_29; artificial_struct_returned_by_rawfunction_161 var_30; var_30 = function_0x401b80_Code_x86_64(1, register_rsi, var_27); var_29 = var_30.register_rax; var_28 = var_30.register_xmm0; var_8 = var_28; var_7 = var_3; if (!var_29) { register_rsi->offset_2080.member_0 = stack.offset_16.offset_0.member_0; var_7 = var_3; var_8 = var_28; } var_6 = var_8; var_4 = register_rsi->offset_2080.member_0; if (var_4 < var_7) { continue; } } break; case 5407: { generic64_t var_31; var_31 = function_0x4016f0_Code_x86_64(®ister_rsi->offset_2080.member_0, var_3, stack.offset_8, &stack.offset_16, var_5); var_15 = var_31; var_14 = stack.offset_16.offset_8.member_0; if (var_14) { var_0 = var_15; register_rdi->offset_0 = var_14; loop_state_var = 1; var_16 = true; break; } generic64_t var_32; generic64_t var_33; enum_61 var_34; var_34 = function_0x401ba0_Code_x86_64(stack.offset_16.offset_0.member_0); stack.offset_16.offset_0.member_2 = (number8_t) var_34 & 0x3F; var_33 = function_0x401ca0_Code_x86_64((number8_t) var_34 & 0x3F, register_rsi->offset_0, var_31); stack.offset_32 = (number8_t) var_34 & 0x3F; var_32 = function_0x401bb0_Code_x86_64((number8_t) var_34 & 0x3F, register_rsi->offset_2056, &stack.offset_16, var_31); var_13 = var_32; var_12 = stack.offset_16.offset_0.member_0 - var_33; var_11 = stack.offset_0; var_7 = var_11; var_9 = function_0x401bf0_Code_x86_64(var_12, register_rsi, var_13); var_8 = var_9; var_6 = var_8; var_4 = register_rsi->offset_2080.member_0; if (var_4 < var_7) { continue; } } break; case 5514: { generic64_t var_35; var_35 = function_0x4016f0_Code_x86_64(®ister_rsi->offset_2080.member_0, var_3, stack.offset_8, &stack.offset_16, var_5); var_15 = var_35; var_14 = stack.offset_16.offset_8.member_0; if (var_14) { var_0 = var_15; register_rdi->offset_0 = var_14; loop_state_var = 1; var_16 = true; break; } register_rsi->offset_2080.member_0 = stack.offset_16.offset_0.member_0; var_7 = var_3; var_8 = var_35; var_6 = var_8; var_4 = register_rsi->offset_2080.member_0; if (var_4 < var_7) { continue; } } break; case 5698: { generic64_t var_36; var_36 = function_0x4016f0_Code_x86_64(®ister_rsi->offset_2080.member_0, var_3, stack.offset_8, &stack.offset_16, var_5); var_15 = var_36; var_14 = stack.offset_16.offset_8.member_0; if (var_14) { var_0 = var_15; register_rdi->offset_0 = var_14; loop_state_var = 1; var_16 = true; break; } register_rsi->offset_2088.member_1 = (int64_t) ((number64_t) (register_rsi->offset_2088.member_0 - stack.offset_16.offset_0.member_0) << 48) >> 48; var_7 = var_3; var_8 = var_36; var_6 = var_8; var_4 = register_rsi->offset_2080.member_0; if (var_4 < var_7) { continue; } } break; case 5761: { generic64_t var_37; var_37 = function_0x4016f0_Code_x86_64(®ister_rsi->offset_2080.member_0, var_3, stack.offset_8, &stack.offset_16, var_5); var_15 = var_37; var_14 = stack.offset_16.offset_8.member_0; if (var_14) { var_0 = var_15; register_rdi->offset_0 = var_14; loop_state_var = 1; var_16 = true; break; } generic64_t var_38; enum_61 var_39; var_39 = function_0x401ba0_Code_x86_64(stack.offset_16.offset_0.member_0); stack.offset_32 = (number8_t) var_39 & 0x3F; var_38 = function_0x401bb0_Code_x86_64((number8_t) var_39 & 0x3F, register_rsi->offset_2056, &stack.offset_16, var_37); var_13 = var_38; var_12 = stack.offset_16.offset_0.member_0; var_11 = var_3; var_7 = var_11; var_9 = function_0x401bf0_Code_x86_64(var_12, register_rsi, var_13); var_8 = var_9; var_6 = var_8; var_4 = register_rsi->offset_2080.member_0; if (var_4 < var_7) { continue; } } break; case 5838: { generic64_t var_40; var_40 = function_0x4016f0_Code_x86_64(®ister_rsi->offset_2080.member_0, var_3, stack.offset_8, &stack.offset_16, var_5); var_15 = var_40; var_14 = stack.offset_16.offset_8.member_0; if (var_14) { var_0 = var_15; register_rdi->offset_0 = var_14; loop_state_var = 1; var_16 = true; break; } var_12 = stack.offset_16.offset_0.member_0; var_11 = var_3; var_13 = var_40; var_7 = var_11; var_9 = function_0x401bf0_Code_x86_64(var_12, register_rsi, var_13); var_8 = var_9; var_6 = var_8; var_4 = register_rsi->offset_2080.member_0; if (var_4 < var_7) { continue; } } break; case 5176: case 5297: case 5559: case 5572: case 5606: case 5654: case 5875: { switch ((number64_t) *(generic32_t *) ((pointer_or_number64_t) &segment_0.rodata + ((*(generic8_t *) (var_4 + stack.offset_8) + 4294967229) & 0xFFFFFFFF) * 4)) { case 5875: { generic64_t var_41; generic64_t var_42; generic64_t var_43; enum_61 var_44; generic64_t var_45; generic64_t var_46; artificial_struct_returned_by_rawfunction_161 var_47; artificial_struct_returned_by_rawfunction_161 var_48; var_47 = function_0x401b80_Code_x86_64(1, register_rsi, var_5); var_46 = var_47.register_rax; var_45 = var_47.register_xmm0; var_44 = function_0x401ba0_Code_x86_64(var_46); var_48 = function_0x401b80_Code_x86_64(2, register_rsi, var_45); var_43 = var_48.register_rax; var_42 = var_48.register_xmm0; stack.offset_16.offset_0.member_2 = (number8_t) var_44 & 0x3F; var_41 = function_0x401c60_Code_x86_64(var_43, (number8_t) var_44 & 0x3F, register_rsi->offset_2056, var_42); var_8 = var_41; var_7 = var_3; } break; case 5297: case 5559: case 5572: case 5606: case 5654: { generic64_t var_49; switch ((number64_t) *(generic32_t *) ((pointer_or_number64_t) &segment_0.rodata + ((*(generic8_t *) (var_4 + stack.offset_8) + 4294967229) & 0xFFFFFFFF) * 4)) { case 5297: { generic64_t var_50; generic64_t var_51; generic64_t var_52; generic64_t var_53; artificial_struct_returned_by_rawfunction_161 var_54; artificial_struct_returned_by_rawfunction_161 var_55; var_54 = function_0x401b80_Code_x86_64(1, register_rsi, var_5); var_53 = var_54.register_rax; var_52 = var_54.register_xmm0; var_55 = function_0x401b80_Code_x86_64(2, register_rsi, var_52); var_51 = var_55.register_rax; var_50 = var_55.register_xmm0; var_49 = var_50; var_13 = var_49; var_11 = var_3; var_12 = 0; if (var_53 == var_51) { var_13 = var_49; var_11 = var_3; var_12 = 1; } } break; case 5559: { var_12 = register_rsi->offset_2072; var_11 = var_3; var_13 = var_5; } break; case 5572: { generic64_t var_56; generic64_t var_57; generic64_t var_58; generic64_t var_59; artificial_struct_returned_by_rawfunction_161 var_60; artificial_struct_returned_by_rawfunction_161 var_61; var_60 = function_0x401b80_Code_x86_64(1, register_rsi, var_5); var_59 = var_60.register_rax; var_58 = var_60.register_xmm0; var_61 = function_0x401b80_Code_x86_64(2, register_rsi, var_58); var_57 = var_61.register_rax; var_56 = var_61.register_xmm0; var_13 = var_56; var_12 = var_59 + var_57; var_11 = var_3; } break; case 5654: { generic64_t var_62; generic64_t var_63; generic64_t var_64; generic64_t var_65; artificial_struct_returned_by_rawfunction_161 var_66; artificial_struct_returned_by_rawfunction_161 var_67; var_66 = function_0x401b80_Code_x86_64(1, register_rsi, var_5); var_65 = var_66.register_rax; var_64 = var_66.register_xmm0; var_67 = function_0x401b80_Code_x86_64(2, register_rsi, var_64); var_63 = var_67.register_rax; var_62 = var_67.register_xmm0; var_13 = var_62; var_12 = var_63 * var_65; var_11 = var_3; } break; case 5606: { generic64_t var_68; generic64_t var_69; generic64_t var_70; generic64_t var_71; artificial_struct_returned_by_rawfunction_161 var_72; artificial_struct_returned_by_rawfunction_161 var_73; var_72 = function_0x401b80_Code_x86_64(1, register_rsi, var_5); var_71 = var_72.register_rax; var_70 = var_72.register_xmm0; var_73 = function_0x401b80_Code_x86_64(2, register_rsi, var_70); var_69 = var_73.register_rax; var_68 = var_73.register_xmm0; var_49 = var_68; var_13 = var_49; var_11 = var_3; var_12 = 0; if (var_71 < var_69) { var_13 = var_49; var_11 = var_3; var_12 = 1; } } break; } var_7 = var_11; var_9 = function_0x401bf0_Code_x86_64(var_12, register_rsi, var_13); var_8 = var_9; } break; } var_6 = var_8; var_4 = register_rsi->offset_2080.member_0; if (var_4 < var_7) { continue; } } break; case 5941: case 5965: { if ((number64_t) *(generic32_t *) ((pointer_or_number64_t) &segment_0.rodata + ((*(generic8_t *) (var_4 + stack.offset_8) + 4294967229) & 0xFFFFFFFF) * 4) == 5965) { var_1 = var_10; var_2 = ""; var_16 = true; break; } } break; default: { } break; } if (var_16){ break;} var_1 = var_6; var_2 = ""; break; } if (loop_state_var == 1) { return var_0; } } var_0 = var_1; *(generic32_t *) register_rdi = *(generic32_t *) var_2; return var_0; }
Loading...