Function at 0x421ec0
Capabilities:
Contain obfuscated stackstrings
Delete file

Disassembly:
push ebp
lea ebp, [esp - 0x5c]
sub esp, 0x5c
push 0xffffffffffffffff
push 0x46224a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xec
push ebx
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x84], 0xf
push 0xffffffffffffffff
push 0
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x64], edi
lea eax, [edi + 0x208]
mov dword [ebp - 0x88], 0
push eax
mov byte [ebp - 0x98], 0
call fcn.00411300
lea eax, [ebp - 0x98]
mov dword [ebp - 4], 0
push eax
push eax
lea ecx, [edi + 0x184]
call fcn.00408ad0
push 0xffffffffffffffff
push 0
lea esi, [edi + 0x1f0]
mov dword [ebp - 0x68], 0xf
push esi
lea ecx, [ebp - 0x7c]
mov dword [ebp - 0x6c], 0
mov byte [ebp - 0x7c], 0
call fcn.00411300
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 1
push eax
push eax
lea ecx, [edi + 0x184]
call fcn.00408ad0
push dword [ebp + 0x64]
lea ecx, [ebp - 0x30]
call fcn.0041e790
push str.include_
lea edx, [ebp - 0x98]
mov byte [ebp - 4], 2
lea ecx, [ebp + 0x44]
call fcn.00413950
add esp, 4
push eax
mov byte [ebp - 4], 3
lea eax, [ebp + 0x64]
push dword [ebp - 0x30]
lea ecx, [ebp - 0x30]
push eax
call fcn.00423470
mov byte [ebp - 4], 2
mov eax, dword [ebp + 0x58]
cmp eax, 0x10
jb 0x421fc1
inc eax
lea ecx, [ebp + 0x44]
push eax
push dword [ebp + 0x44]
call fcn.00412370
push esi
push ecx
push dword [ebp - 0x30]
lea eax, [ebp + 0x64]
push eax
lea ecx, [ebp - 0x30]
call fcn.00423110
lea eax, [edi + 0x1d8]
push eax
push ecx
push dword [ebp - 0x30]
lea eax, [ebp + 0x64]
push eax
lea ecx, [ebp - 0x30]
call fcn.00423110
mov dword [ebp - 0xb4], 0xf
mov dword [ebp - 0xb8], 0
mov byte [ebp - 0xc8], 0
mov byte [ebp - 4], 4
mov esi, dword [ebp - 0x30]
cmp esi, dword [ebp - 0x2c]
je 0x42236b
push 9
push 0
push str.__OutDir_
mov ecx, esi
call fcn.00410b30
cmp eax, 0xffffffff
je 0x42203e
push 0xffffffffffffffff
push 0
lea ecx, [ebp - 0x98]
push ecx
push 9
push eax
mov ecx, esi
call fcn.00410e30
push 0xd
push 0
push str.__ProjectDir_
mov ecx, esi
call fcn.00410b30
cmp eax, 0xffffffff
je 0x422065
push 0xffffffffffffffff
push 0
lea ecx, [ebp - 0x7c]
push ecx
push 0xd
push eax
mov ecx, esi
call fcn.00410e30
push 2
push 0
push 0x476dd0
mov ecx, esi
call fcn.00410b30
cmp eax, 0xffffffff
je 0x42208b
push 1
push 0x476dd4
push 2
push eax
mov ecx, esi
call fcn.00410c30
push 1
push 0
lea eax, [ebp + 0x64]
mov byte [ebp + 0x64], 0x29
push eax
mov ecx, esi
call fcn.00410b30
cmp eax, 0xffffffff
je 0x4220b4
push 1
push 0x476dd4
push 1
push eax
mov ecx, esi
call fcn.00410c30
cmp dword [esi + 0x10], 0
mov ecx, esi
jne 0x4220ca
push 2
push 0x472758
call fcn.00411200
jmp 0x422103
push 1
push 0
lea eax, [ebp + 0x64]
mov byte [ebp + 0x64], 0x3a
push eax
call fcn.00410b30
cmp eax, 0xffffffff
jne 0x422103
push 3
push 0
push 0x476dd8
mov ecx, esi
call fcn.004109d0
test eax, eax
je 0x422103
push 2
push 0x472758
push ecx
mov ecx, esi
call fcn.00414180
push 2
push 0
push 0x476ddc
mov ecx, esi
call fcn.00410b30
mov ecx, eax
cmp ecx, 0xffffffff
je 0x42219d
nop
mov edx, dword [esi + 0x10]
cmp edx, ecx
jb 0x42241c
mov eax, edx
sub eax, ecx
cmp eax, 1
ja 0x42214d
mov dword [esi + 0x10], ecx
cmp dword [esi + 0x14], 0x10
jb 0x422145
mov eax, dword [esi]
mov byte [eax + ecx], 0
jmp 0x422186
mov eax, esi
mov byte [eax + ecx], 0
jmp 0x422186
cmp dword [esi + 0x14], 0x10
jb 0x422157
mov eax, dword [esi]
jmp 0x422159
mov eax, esi
lea ebx, [eax + ecx]
lea edi, [edx - 1]
mov eax, edi
sub eax, ecx
je 0x422173
push eax
lea eax, [ebx + 1]
push eax
push ebx
call fcn.00447b60
add esp, 0xc
cmp dword [esi + 0x14], 0x10
mov dword [esi + 0x10], edi
jb 0x422180
mov eax, dword [esi]
jmp 0x422182
mov eax, esi
mov byte [edi + eax], 0
push 2
push 0
push 0x476ddc
mov ecx, esi
call fcn.00410b30
mov ecx, eax
cmp ecx, 0xffffffff
jne 0x422120
push 4
push 0
push str._.._
mov ecx, esi
call fcn.00410b30
mov ebx, eax
cmp ebx, 0xffffffff
je 0x422281
mov byte [ebp + 0x64], 0x2f
nop dword [eax]
push 1
lea ecx, [ebx - 1]
push ecx
lea eax, [ebp + 0x64]
mov ecx, esi
push eax
call fcn.00410a50
mov edx, dword [esi + 0x10]
xor ecx, ecx
cmp eax, 0xffffffff
mov byte [ebp + 0x28], 0x2e
mov dword [ebp], edx
cmovne ecx, eax
mov dword [ebp + 4], ecx
lea edi, [ecx + 1]
cmp edi, edx
jae 0x422235
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x4221fc
mov eax, dword [esi]
mov dword [ebp + 0xc], eax
jmp 0x422201
mov eax, esi
mov dword [ebp + 0xc], esi
add eax, edx
cmp ecx, 0x10
jb 0x42220c
mov ecx, dword [esi]
jmp 0x42220e
mov ecx, esi
add edi, ecx
cmp edi, eax
jae 0x422235
movsx eax, byte [edi]
push 1
push eax
lea eax, [ebp + 0x28]
push eax
call fcn.00448110
add esp, 0xc
test eax, eax
je 0x422254
mov eax, dword [ebp]
inc edi
add eax, dword [ebp + 0xc]
cmp edi, eax
jb 0x422214
or edi, 0xffffffff
mov ecx, esi
cmp edi, ebx
jae 0x422266
mov edi, dword [ebp + 4]
sub ebx, edi
add ebx, 3
push ebx
push edi
call fcn.0040f190
push 4
push edi
mov ecx, esi
jmp 0x42226c
cmp dword [esi + 0x14], 0x10
jb 0x422260
mov eax, dword [esi]
sub edi, eax
jmp 0x422238
mov eax, esi
sub edi, eax
jmp 0x422238
push 4
lea eax, [ebx + 1]
push eax
push str._.._
call fcn.00410b30
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x4221c0
push esi
mov edx, str.__I_
lea ecx, [ebp + 0x2c]
call fcn.004136e0
push 0x22
mov edx, eax
mov byte [ebp - 4], 5
lea ecx, [ebp + 0x10]
call fcn.00413b20
add esp, 8
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc8]
mov byte [ebp - 4], 6
call fcn.004115e0
mov byte [ebp - 4], 5
mov eax, dword [ebp + 0x24]
cmp eax, 0x10
jb 0x422300
mov ecx, dword [ebp + 0x10]
inc eax
cmp eax, 0x1000
jb 0x4222f7
test cl, 0x1f
jne 0x422417
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x422417
sub ecx, eax
cmp ecx, 4
jb 0x422417
cmp ecx, 0x23
ja 0x422417
mov ecx, eax
push ecx
call fcn.00446ee6
add esp, 4
mov byte [ebp - 4], 4
mov eax, dword [ebp + 0x40]
mov dword [ebp + 0x24], 0xf
mov dword [ebp + 0x20], 0
mov byte [ebp + 0x10], 0
cmp eax, 0x10
jb 0x42235c
mov ecx, dword [ebp + 0x2c]
inc eax
cmp eax, 0x1000
jb 0x422353
test cl, 0x1f
jne 0x422417
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x422417
sub ecx, eax
cmp ecx, 4
jb 0x422417
cmp ecx, 0x23
ja 0x422417
mov ecx, eax
push ecx
call fcn.00446ee6
add esp, 4
add esi, 0x18
cmp esi, dword [ebp - 0x2c]
jne 0x422014
mov edi, dword [ebp - 0x64]
lea ebx, [edi + 0x16c]
lea eax, [edi + 0x134]
mov dword [ebp], ebx
push eax
mov edx, ebx
lea ecx, [ebp - 0xb0]
call fcn.00413810
add esp, 4
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x24]
push 0x3b
push str._echo_off_nsetlocal_enabledelayedexpansion_nset_CALLDIR_CD__n
mov dword [ebp - 0x10], 0xf
mov dword [ebp - 0x14], 0
mov byte [ebp - 0x24], 0
call fcn.00411200
push 0x978
push str.if___PROCESSOR_ARCHITECTURE___AMD64____n____set_SYSARCH64_n__else_if___PROCESSOR_ARCHITECTURE___x86____n____if___PROCESSOR_ARCHITEW6432___AMD64____n________set_SYSARCH64_n______else___n________set_SYSARCH32_n______n__else___n____echo_fatal_error_:_Current_Platform_Architecture_could_not_be_detected.___ffvs_log.txt_n____exit__b_1_n__nif___SYSARCH___32____n____set_MSVCVARSDIR_n____set_VSWHERE__ProgramFiles_Microsoft_Visual_StudioInstaller_vswhere.exe__n__else_if___SYSARCH___64____n____set_MSVCVARSDIR_amd64_n____set_VSWHERE__ProgramFiles_x86__Microsoft_Visual_StudioInstaller_vswhere.exe__n__nif_exist__VSWHERE____n____for__f__usebackq_delims____i_in____VSWHERE___prerelease__latest__property_installationPath___do__set_VSINSTDIR__i__n____if_exist___VSINSTDIR_VCAuxiliaryBuild_vcvars_SYSARCH_.bat____n________call___VSINSTDIR_VCAuxiliaryBuild_vcvars_SYSARCH_.bat___nul_2_1_n________goto_MSVCVarsDone_n______n____if_exist___VSINSTDIR_....VC_bin_MSVCVARSDIR__vcvars_SYSARCH_.bat____n________call___VSINSTDIR_....VC_bin_MSVCVARSDIR__vcvars_SYSARCH_.bat___nul_2_1_n________goto_MSVCVarsDone_n______n__nif___SYSARCH___32____n____set_WOWNODE_n__else_if___SYSARCH___64____n____set_WOWNODEWOW6432Node_n__npushd__CD__nreg.exe_query__HKLMSOFTWARE_WOWNODE_MicrosoftVisualStudioSxSVS7___v_15.0__nul_2_1_nif_not_ERRORLEVEL_1___n____for__f__skip2_tokens2_____a_in__reg.exe_query__HKLMSOFTWARE_WOWNODE_MicrosoftVisualStudioSxSVS7___v_15.0__do__set_VSINSTDIR__b__n____call___VSINSTDIR_VCAuxiliaryBuild_vcvars_SYSARCH_.bat___nul_2_1_n____goto_MSVCVarsDone_n__nreg.exe_query__HKLMSoftware_WOWNODE_MicrosoftVisualStudio14.0___v__InstallDir___nul_2_1_nif_not_ERRORLEVEL_1___n____for__f__skip2_tokens2_____a_in__reg.exe_query__HKLMSoftware_WOWNODE_MicrosoftVisualStudio14.0___v__InstallDir___do__set_VSINSTDIR__b__n____call___VSINSTDIR_....VC_bin_MSVCVARSDIR__vcvars_SYSARCH_.bat___nul_2_1_n____goto_MSVCVarsDone_n__nreg.exe_query__HKLMSoftware_WOWNODE_MicrosoftVisualStudio12.0___v__InstallDir___nul_2_1_nif_not_ERRORLEVEL_1___n____for__f__skip2_tokens2_____a_in__reg.exe_query__HKLMSoftware_WOWNODE_MicrosoftVisualStudio12.0___v__InstallDir___do__set_VSINSTDIR__b__n____call___VSINSTDIR_....VC_bin_MSVCVARSDIR__vcvars_SYSARCH_.bat___nul_2_1_n____goto_MSVCVarsDone_n__necho_fatal_error_:_An_installed_version_of_Visual_Studio_could_not_be_detected.___ffvs_log.txt_nexit__b_1_n:MSVCVarsDone_npopd_n
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 8
call fcn.004114b0
push ebx
mov edx, str.mkdir__
lea ecx, [ebp + 0x2c]
call fcn.004136e0
push str.____nul_2_1_n
mov edx, eax
mov byte [ebp - 4], 9
lea ecx, [ebp + 0x10]
call fcn.00413900
add esp, 8
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0xa
call fcn.004115e0
mov byte [ebp - 4], 9
mov eax, dword [ebp + 0x24]
cmp eax, 0x10
jb 0x422453
mov ecx, dword [ebp + 0x10]
inc eax
cmp eax, 0x1000
jb 0x42244a
test cl, 0x1f
je 0x422426
call fcn.0044ce5a
push str.invalid_string_position
call fcn.00445c36
mov eax, dword [ecx - 4]
cmp eax, ecx
jb 0x422432
call fcn.0044ce5a
sub ecx, eax
cmp ecx, 4
jae 0x42243e
call fcn.0044ce5a
cmp ecx, 0x23
jbe 0x422448
call fcn.0044ce5a
mov ecx, eax
push ecx
call fcn.00446ee6
add esp, 4
mov byte [ebp - 4], 8
mov eax, dword [ebp + 0x40]
mov dword [ebp + 0x24], 0xf
mov dword [ebp + 0x20], 0
mov byte [ebp + 0x10], 0
cmp eax, 0x10
jb 0x4224b3
mov ecx, dword [ebp + 0x2c]
inc eax
cmp eax, 0x1000
jb 0x4224aa
test cl, 0x1f
je 0x422486
call fcn.0044ce5a
mov eax, dword [ecx - 4]
cmp eax, ecx
jb 0x422492
call fcn.0044ce5a
sub ecx, eax
cmp ecx, 4
jae 0x42249e
call fcn.0044ce5a
cmp ecx, 0x23
jbe 0x4224a8
call fcn.0044ce5a
mov ecx, eax
push ecx
call fcn.00446ee6
add esp, 4
lea eax, [ebp - 0xb0]
mov edx, str.mkdir__
push eax
lea ecx, [ebp + 0x44]
call fcn.004136e0
push str.____nul_2_1_n
mov edx, eax
mov byte [ebp - 4], 0xb
lea ecx, [ebp + 0x10]
call fcn.00413900
add esp, 8
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0xc
call fcn.004115e0
mov eax, dword [ebp + 0x24]
cmp eax, 0x10
jb 0x422503
inc eax
lea ecx, [ebp + 0x10]
push eax
push dword [ebp + 0x10]
call fcn.00412370
mov byte [ebp - 4], 8
mov eax, dword [ebp + 0x58]
mov dword [ebp + 0x24], 0xf
mov dword [ebp + 0x20], 0
mov byte [ebp + 0x10], 0
cmp eax, 0x10
jb 0x42252e
inc eax
lea ecx, [ebp + 0x44]
push eax
push dword [ebp + 0x44]
call fcn.00412370
mov esi, dword [ebp + 0x68]
mov edi, dword [ebp + 0x6c]
mov esi, dword [esi]
mov dword [ebp - 0x80], esi
mov eax, dword [esi]
mov dword [ebp + 4], eax
cmp eax, esi
je 0x422afa
mov ecx, dword [eax + 0x2c]
lea ebx, [eax + 0x10]
sub ecx, dword [ebx + 0x18]
mov eax, 0x2aaaaaab
imul ecx
sub esp, 8
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x47aa30]
cvtpd2ps xmm0, xmm0
mulss xmm0, dword [0x47aa20]
cvtps2pd xmm0, xmm0
movsd qword [ebp + 8], xmm0
fld qword [ebp + 8]
fstp qword [esp]
call fcn.0045e890
fstp qword [ebp + 8]
movsd xmm0, qword [ebp + 8]
add esp, 8
cvtpd2ps xmm0, xmm0
call fcn.0045f550
push 0x4777c4
lea edx, [ebp - 0xb0]
mov dword [ebp + 0xc], eax
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x68], 0
call fcn.00413950
push ebx
mov edx, eax
mov byte [ebp - 4], 0xd
lea ecx, [ebp + 0x10]
call fcn.004137e0
add esp, 8
mov byte [ebp - 4], 0xf
mov eax, dword [ebp + 0x58]
cmp eax, 0x10
jb 0x4225f4
inc eax
push 1
push eax
push dword [ebp + 0x44]
call fcn.00402090
add esp, 0xc
cmp dword [ebx + 0x10], 0
mov dword [ebp + 0x58], 0xf
mov dword [ebp + 0x54], 0
mov byte [ebp + 0x44], 0
jbe 0x422684
lea eax, [ebp + 0x10]
mov edx, str.mkdir__
push eax
lea ecx, [ebp + 0x2c]
call fcn.004136e0
push str.____nul_2_1_n
mov edx, eax
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x48]
call fcn.00413900
add esp, 8
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x11
call fcn.004115e0
mov eax, dword [ebp - 0x34]
cmp eax, 0x10
jb 0x42265b
inc eax
push 1
push eax
push dword [ebp - 0x48]
call fcn.00402090
add esp, 0xc
mov eax, dword [ebp + 0x40]
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x38], 0
mov byte [ebp - 0x48], 0
cmp eax, 0x10
jb 0x422684
inc eax
push 1
push eax
push dword [ebp + 0x2c]
call fcn.00402090
add esp, 0xc
mov dword [ebp - 0x4c], 0xf
mov dword [ebp - 0x50], 0
mov byte [ebp - 0x60], 0
mov byte [ebp - 4], 0x12
test edi, edi
jne 0x42281b
lea eax, [ebp + 0x10]
mov edx, str._FR_
push eax
lea ecx, [ebp + 0x2c]
call fcn.004136e0
push 0x4777c8
mov edx, eax
mov byte [ebp - 4], 0x13
lea ecx, [ebp + 0x44]
call fcn.00413900
push str.__Fo_
mov edx, eax
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x48]
call fcn.00413900
lea ecx, [ebp + 0x10]
mov byte [ebp - 4], 0x15
push ecx
mov edx, eax
lea ecx, [ebp - 0xf8]
call fcn.004137e0
push 0x4777c8
mov edx, eax
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0xe0]
call fcn.00413900
add esp, 0x14
mov dword [ebp + 0x64], eax
lea ecx, [ebp - 0x60]
cmp ecx, eax
je 0x422740
mov eax, dword [ebp - 0x4c]
cmp eax, 0x10
jb 0x422723
inc eax
push eax
push dword [ebp - 0x60]
call fcn.00412370
push dword [ebp + 0x64]
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x4c], 0xf
mov dword [ebp - 0x50], 0
mov byte [ebp - 0x60], 0
call fcn.004116e0
mov eax, dword [ebp - 0xcc]
cmp eax, 0x10
jb 0x42275e
inc eax
lea ecx, [ebp - 0xe0]
push eax
push dword [ebp - 0xe0]
call fcn.00412370
mov eax, dword [ebp - 0xe4]
mov dword [ebp - 0xcc], 0xf
mov dword [ebp - 0xd0], 0
mov byte [ebp - 0xe0], 0
cmp eax, 0x10
jb 0x422797
inc eax
lea ecx, [ebp - 0xf8]
push eax
push dword [ebp - 0xf8]
call fcn.00412370
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0xe4], 0xf
mov dword [ebp - 0xe8], 0
mov byte [ebp - 0xf8], 0
cmp eax, 0x10
jb 0x4227c7
inc eax
lea ecx, [ebp - 0x48]
push eax
push dword [ebp - 0x48]
call fcn.00412370
mov eax, dword [ebp + 0x58]
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x38], 0
mov byte [ebp - 0x48], 0
cmp eax, 0x10
jb 0x4227ee
inc eax
lea ecx, [ebp + 0x44]
push eax
push dword [ebp + 0x44]
call fcn.00412370
mov byte [ebp - 4], 0x12
mov eax, dword [ebp + 0x40]
mov dword [ebp + 0x58], 0xf
mov dword [ebp + 0x54], 0
mov byte [ebp + 0x44], 0
cmp eax, 0x10
jb 0x42282f
inc eax
lea ecx, [ebp + 0x2c]
push eax
push dword [ebp + 0x2c]
call fcn.00412370
jmp 0x42282f
cmp edi, 1
jne 0x42282f
push 6
push str._EP__P
lea ecx, [ebp - 0x60]
call fcn.00411200
cmp dword [ebp + 0xc], 0
jbe 0x422a2b
mov esi, dword [ebp + 0x68]
nop dword [eax]
push 7
push str.cl.exe
lea ecx, [ebp - 0x24]
call fcn.004114b0
push str.__D__DEBUG___D_WIN32___D__WINDOWS___D_HAVE_AV_CONFIG_H___D__USE_MATH_DEFINES_
lea edx, [ebp - 0xc8]
lea ecx, [ebp + 0x2c]
call fcn.00413950
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x18
push ecx
mov edx, eax
lea ecx, [ebp - 0x48]
call fcn.004137e0
push str.__c__MP__w__nologo
mov edx, eax
mov byte [ebp - 4], 0x19
lea ecx, [ebp + 0x44]
call fcn.00413900
add esp, 0xc
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x1a
call fcn.004115e0
mov eax, dword [ebp + 0x58]
cmp eax, 0x10
jb 0x4228b0
inc eax
lea ecx, [ebp + 0x44]
push eax
push dword [ebp + 0x44]
call fcn.00412370
mov eax, dword [ebp - 0x34]
mov dword [ebp + 0x58], 0xf
mov dword [ebp + 0x54], 0
mov byte [ebp + 0x44], 0
cmp eax, 0x10
jb 0x4228d7
inc eax
lea ecx, [ebp - 0x48]
push eax
push dword [ebp - 0x48]
call fcn.00412370
mov byte [ebp - 4], 0x12
mov eax, dword [ebp + 0x40]
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x38], 0
mov byte [ebp - 0x48], 0
cmp eax, 0x10
jb 0x422902
inc eax
lea ecx, [ebp + 0x2c]
push eax
push dword [ebp + 0x2c]
call fcn.00412370
mov ecx, dword [ebx + 0x1c]
lea edi, [ebp + 0x64]
sub ecx, dword [ebx + 0x18]
mov eax, 0x2aaaaaab
imul ecx
lea eax, [ebp + 0x68]
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea edx, [esi + 0x20]
cmp ecx, edx
mov dword [ebp + 0x68], ecx
mov dword [ebp + 0x64], edx
cmovae eax, edi
cmp esi, dword [eax]
jae 0x422a0c
lea edi, [esi + esi*2]
mov dword [ebp + 0x64], edx
shl edi, 3
nop
cmp dword [ebp + 0x6c], 0
jne 0x422960
mov eax, dword [ebx + 0x18]
mov ecx, dword [ebp - 0x64]
add eax, edi
push eax
mov eax, dword [ebx + 0x18]
add eax, edi
push eax
lea ecx, [ecx + 0x184]
call fcn.00408ad0
mov eax, dword [ebx + 0x18]
lea ecx, [ebp + 0x2c]
add eax, edi
mov edx, 0x477850
push eax
call fcn.004136e0
push 0x473134
mov edx, eax
mov byte [ebp - 4], 0x1b
lea ecx, [ebp + 0x44]
call fcn.00413900
add esp, 8
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x1c
call fcn.004115e0
mov eax, dword [ebp + 0x58]
cmp eax, 0x10
jb 0x4229af
inc eax
lea ecx, [ebp + 0x44]
push eax
push dword [ebp + 0x44]
call fcn.00412370
mov byte [ebp - 4], 0x12
mov eax, dword [ebp + 0x40]
mov dword [ebp + 0x58], 0xf
mov dword [ebp + 0x54], 0
mov byte [ebp + 0x44], 0
cmp eax, 0x10
jb 0x4229da
inc eax
lea ecx, [ebp + 0x2c]
push eax
push dword [ebp + 0x2c]
call fcn.00412370
mov ecx, dword [ebx + 0x1c]
mov eax, 0x2aaaaaab
sub ecx, dword [ebx + 0x18]
inc esi
imul ecx
add edi, 0x18
lea eax, [ebp + 0x68]
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea edx, [ebp + 0x64]
cmp ecx, dword [ebp + 0x64]
mov dword [ebp + 0x68], ecx
cmovae eax, edx
cmp esi, dword [eax]
jb 0x422940
push 0x39
push str.___ffvs_log.txt_2_1_nif__errorlevel__neq_0_goto_exitFail_n
lea ecx, [ebp - 0x24]
call fcn.004114b0
sub dword [ebp + 0xc], 1
jne 0x422840
mov esi, dword [ebp - 0x80]
mov edi, dword [ebp + 0x6c]
cmp edi, 1
jne 0x422aa4
lea eax, [ebp + 0x10]
mov edx, str.move_.i
push eax
lea ecx, [ebp + 0x2c]
call fcn.004136e0
push str.___nul_2_1_n
mov edx, eax
mov byte [ebp - 4], 0x1d
lea ecx, [ebp + 0x44]
call fcn.00413900
add esp, 8
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x1e
call fcn.004115e0
mov eax, dword [ebp + 0x58]
cmp eax, 0x10
jb 0x422a7d
inc eax
lea ecx, [ebp + 0x44]
push eax
push dword [ebp + 0x44]
call fcn.00412370
mov eax, dword [ebp + 0x40]
mov dword [ebp + 0x58], 0xf
mov dword [ebp + 0x54], 0
mov byte [ebp + 0x44], 0
cmp eax, 0x10
jb 0x422aa4
inc eax
lea ecx, [ebp + 0x2c]
push eax
push dword [ebp + 0x2c]
call fcn.00412370
mov eax, dword [ebp - 0x4c]
cmp eax, 0x10
jb 0x422ab9
inc eax
lea ecx, [ebp - 0x60]
push eax
push dword [ebp - 0x60]
call fcn.00412370
mov byte [ebp - 4], 8
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x4c], 0xf
mov dword [ebp - 0x50], 0
mov byte [ebp - 0x60], 0
cmp eax, 0x10
jb 0x422ae4
inc eax
lea ecx, [ebp + 0x10]
push eax
push dword [ebp + 0x10]
call fcn.00412370
lea ecx, [ebp + 4]
call fcn.004134b0
mov eax, dword [ebp + 4]
cmp eax, esi
jne 0x422546
mov ebx, dword [ebp]
test edi, edi
jne 0x422b0d
push 0x1d
push str.del__F__S__Q_.obj__nul_2_1_n
lea ecx, [ebp - 0x24]
call fcn.004114b0
push 0x1b
push str.del_ffvs_log.txt__nul_2_1_n
lea ecx, [ebp - 0x24]
call fcn.004114b0
push 0x14
push str.exit__b_0_n:exitFail_n
lea ecx, [ebp - 0x24]
call fcn.004114b0
cmp edi, 1
jne 0x422b3f
push 0x1b
push str.del__F__S__Q_.i__nul_2_1_n
lea ecx, [ebp - 0x24]
call fcn.004114b0
push ebx
mov edx, str.rmdir__S__Q
lea ecx, [ebp + 0x2c]
call fcn.004136e0
push str._nexit__b_1
mov edx, eax
mov byte [ebp - 4], 0x1f
lea ecx, [ebp + 0x44]
call fcn.00413900
add esp, 8
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x20
call fcn.004115e0
mov eax, dword [ebp + 0x58]
cmp eax, 0x10
jb 0x422b89
inc eax
lea ecx, [ebp + 0x44]
push eax
push dword [ebp + 0x44]
call fcn.00412370
mov byte [ebp - 4], 8
mov eax, dword [ebp + 0x40]
mov dword [ebp + 0x58], 0xf
mov dword [ebp + 0x54], 0
mov byte [ebp + 0x44], 0
cmp eax, 0x10
jb 0x422bb4
inc eax
lea ecx, [ebp + 0x2c]
push eax
push dword [ebp + 0x2c]
call fcn.00412370
push str.ffvs_compile.bat
lea ecx, [ebp + 0x44]
call fcn.0040f420
push 0
lea edx, [ebp - 0x24]
mov byte [ebp - 4], 0x21
lea ecx, [ebp + 0x44]
call fcn.0041fac0
add esp, 4
mov byte [ebp - 4], 8
test al, al
mov eax, dword [ebp + 0x58]
sete bl
cmp eax, 0x10
jb 0x422bf3
inc eax
lea ecx, [ebp + 0x44]
push eax
push dword [ebp + 0x44]
call fcn.00412370
test bl, bl
je 0x422bfe
xor bl, bl
jmp 0x422fe9
push str.ffvs_compile.bat
call fcn.0044db3a
add esp, 4
lea ecx, [ebp + 0x44]
test eax, eax
je 0x422fb6
push str.Errors_detected_during_compilation_:_
call fcn.0040f420
mov dl, 1
mov byte [ebp - 4], 0x22
lea ecx, [ebp + 0x44]
call fcn.00420f40
mov eax, dword [ebp + 0x58]
cmp eax, 0x10
jb 0x422c43
inc eax
lea ecx, [ebp + 0x44]
push eax
push dword [ebp + 0x44]
call fcn.00412370
mov dword [ebp + 0x24], 0xf
mov dword [ebp + 0x20], 0
mov byte [ebp + 0x10], 0
push str.ffvs_log.txt
lea ecx, [ebp + 0x44]
mov byte [ebp - 4], 0x23
call fcn.0040f420
push 1
push 0
lea edx, [ebp + 0x10]
mov byte [ebp - 4], 0x24
lea ecx, [ebp + 0x44]
call fcn.0041f7b0
mov byte [ebp - 4], 0x23
add esp, 8
mov ecx, dword [ebp + 0x58]
mov bl, al
cmp ecx, 0x10
jb 0x422c97
inc ecx
push ecx
push dword [ebp + 0x44]
lea ecx, [ebp + 0x44]
call fcn.00412370
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
test bl, bl
je 0x422f65
push 0
push str._error
lea ecx, [ebp + 0x10]
mov byte [ebp + 0x6b], 0
mov byte [ebp + 0x6f], 0
mov byte [ebp + 0x67], 0
call fcn.0040eef0
mov ebx, eax
cmp ebx, 0xffffffff
je 0x422d8b
nop dword [eax + eax]
push 2
lea esi, [ebx + 1]
push esi
push 0x47798c
lea ecx, [ebp + 0x10]
call fcn.004109d0
mov edi, eax
lea eax, [ebp + 0x44]
mov ecx, edi
sub ecx, ebx
dec ecx
push ecx
push esi
push eax
lea ecx, [ebp + 0x10]
call fcn.0040edf0
xor dl, dl
mov byte [ebp - 4], 0x25
lea ecx, [ebp + 0x44]
call fcn.00420f40
push 7
lea eax, [edi + 1]
push eax
push str._error
lea ecx, [ebp + 0x10]
call fcn.00410b30
cmp byte [ebp + 0x67], 0
mov ebx, eax
jne 0x422d3d
push 0x11
push 0
push str.open_include_file
lea ecx, [ebp + 0x44]
call fcn.00410b30
cmp eax, 0xffffffff
je 0x422d3d
mov byte [ebp + 0x67], 1
jmp 0x422d63
cmp byte [ebp + 0x6f], 0
jne 0x422d5f
push 0x23
push 0
push str.Visual_Studio_could_not_be_detected
lea ecx, [ebp + 0x44]
call fcn.00410b30
cmp eax, 0xffffffff
je 0x422d5f
mov byte [ebp + 0x6f], 1
jmp 0x422d63
mov byte [ebp + 0x6b], 1
mov byte [ebp - 4], 0x23
mov eax, dword [ebp + 0x58]
cmp eax, 0x10
jb 0x422d7c
inc eax
lea ecx, [ebp + 0x44]
push eax
push dword [ebp + 0x44]
call fcn.00412370
cmp ebx, 0xffffffff
jne 0x422cd0
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0
push str.internal_or_external_command
lea ecx, [ebp + 0x10]
call fcn.0040eef0
mov edi, eax
cmp edi, 0xffffffff
je 0x422e05
push 1
lea ecx, [edi + 1]
mov byte [ebp + 0x6c], 0xa
push ecx
lea eax, [ebp + 0x6c]
push eax
lea ecx, [ebp + 0x10]
call fcn.00410b30
push 1
mov esi, eax
mov byte [ebp + 0x6c], 0xa
push edi
lea eax, [ebp + 0x6c]
push eax
lea ecx, [ebp + 0x10]
call fcn.00410a50
xor ecx, ecx
cmp eax, 0xffffffff
cmove eax, ecx
lea ecx, [ebp + 0x10]
sub esi, eax
push esi
push eax
lea eax, [ebp + 0x2c]
push eax
call fcn.0040edf0
xor dl, dl
mov byte [ebp - 4], 0x26
mov ecx, eax
call fcn.00420f40
lea ecx, [ebp + 0x2c]
mov byte [ebp - 4], 0x23
call fcn.0040f2f0
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
jmp 0x422e0b
cmp byte [ebp + 0x6f], 0
je 0x422e7c
push str.Based_on_the_above_error_s__Visual_Studio_is_not_installed_correctly_on_the_host_system.
lea ecx, [ebp + 0x2c]
call fcn.0040f420
xor dl, dl
mov byte [ebp - 4], 0x27
lea ecx, [ebp + 0x2c]
call fcn.00420f40
lea ecx, [ebp + 0x2c]
mov byte [ebp - 4], 0x23
call fcn.0040f2f0
push str.Install_a_compatible_version_of_Visual_Studio_before_trying_again.
lea ecx, [ebp + 0x2c]
call fcn.0040f420
mov byte [ebp - 4], 0x28
xor dl, dl
lea ecx, [ebp + 0x2c]
call fcn.00420f40
lea ecx, [ebp + 0x2c]
mov byte [ebp - 4], 0x23
call fcn.0040f2f0
push str.ffvs_log.txt
lea ecx, [ebp + 0x44]
call fcn.0040f420
cmp dword [ebp + 0x58], 0x10
lea eax, [ebp + 0x44]
cmovae eax, dword [ebp + 0x44]
push eax
call esi
lea ecx, [ebp + 0x44]
jmp 0x422f60
cmp byte [ebp + 0x67], 0
je 0x422f38
push str.Based_on_the_above_error_s__there_are_files_required_for_dependency_libraries_that_are_not_available
lea ecx, [ebp + 0x2c]
call fcn.0040f420
xor dl, dl
mov byte [ebp - 4], 0x29
lea ecx, [ebp + 0x2c]
call fcn.00420f40
lea ecx, [ebp + 0x2c]
mov byte [ebp - 4], 0x23
call fcn.0040f2f0
push str.Ensure_that_any_required_dependencies_are_available_in_OutDir_based_on_the_supplied_configuration_options_before_trying_again.
lea ecx, [ebp + 0x2c]
call fcn.0040f420
xor dl, dl
mov byte [ebp - 4], 0x2a
lea ecx, [ebp + 0x2c]
call fcn.00420f40
lea ecx, [ebp + 0x2c]
mov byte [ebp - 4], 0x23
call fcn.0040f2f0
push str.Consult_the_supplied_readme_for_instructions_for_installing_varying_dependencies.
lea ecx, [ebp + 0x2c]
call fcn.0040f420
xor dl, dl
mov byte [ebp - 4], 0x2b
lea ecx, [ebp + 0x2c]
call fcn.00420f40
lea ecx, [ebp + 0x2c]
mov byte [ebp - 4], 0x23
call fcn.0040f2f0
push str.If_a_dependency_has_been_cloned_from_a_ShiftMediaProject_repository_then_ensure_it_has_been_successfully_built_before_trying_again.
lea ecx, [ebp + 0x2c]
call fcn.0040f420
xor dl, dl
mov byte [ebp - 4], 0x2c
lea ecx, [ebp + 0x2c]
call fcn.00420f40
lea ecx, [ebp + 0x2c]
mov byte [ebp - 4], 0x23
call fcn.0040f2f0
push str.__Removing_the_offending_configuration_option_can_also_be_used_to_remove_the_error.
lea ecx, [ebp + 0x2c]
call fcn.0040f420
mov byte [ebp - 4], 0x2d
jmp 0x422e43
cmp byte [ebp + 0x6b], 0
je 0x422f65
push str.Unknown_error_detected._See_ffvs_log.txt_for_further_details.
lea ecx, [ebp + 0x2c]
call fcn.0040f420
xor dl, dl
mov byte [ebp - 4], 0x2e
lea ecx, [ebp + 0x2c]
call fcn.00420f40
mov byte [ebp - 4], 0x23
lea ecx, [ebp + 0x2c]
call fcn.0040f2f0
push str.ffvs_compile.bat
lea ecx, [ebp + 0x44]
call fcn.0040f420
cmp dword [ebp + 0x58], 0x10
lea eax, [ebp + 0x44]
cmovae eax, dword [ebp + 0x44]
push eax
call esi
mov eax, dword [ebp + 0x58]
cmp eax, 0x10
jb 0x422f95
inc eax
lea ecx, [ebp + 0x44]
push eax
push dword [ebp + 0x44]
call fcn.00412370
mov ecx, dword [ebp]
call fcn.0041fdd0
mov eax, dword [ebp + 0x24]
cmp eax, 0x10
jb 0x422fb2
inc eax
lea ecx, [ebp + 0x10]
push eax
push dword [ebp + 0x10]
call fcn.00412370
xor bl, bl
jmp 0x422fe9
push str.ffvs_compile.bat
call fcn.0040f420
cmp dword [ebp + 0x58], 0x10
lea eax, [ebp + 0x44]
cmovae eax, dword [ebp + 0x44]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov eax, dword [ebp + 0x58]
cmp eax, 0x10
jb 0x422fe7
inc eax
lea ecx, [ebp + 0x44]
push eax
push dword [ebp + 0x44]
call fcn.00412370
mov bl, 1
mov eax, dword [ebp - 0x10]
cmp eax, 0x10
jb 0x422ffe
inc eax
lea ecx, [ebp - 0x24]
push eax
push dword [ebp - 0x24]
call fcn.00412370
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x10], 0xf
mov dword [ebp - 0x14], 0
mov byte [ebp - 0x24], 0
cmp eax, 0x10
jb 0x42302e
inc eax
lea ecx, [ebp - 0xb0]
push eax
push dword [ebp - 0xb0]
call fcn.00412370
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0x9c], 0xf
mov dword [ebp - 0xa0], 0
mov byte [ebp - 0xb0], 0
cmp eax, 0x10
jb 0x423067
inc eax
lea ecx, [ebp - 0xc8]
push eax
push dword [ebp - 0xc8]
call fcn.00412370
lea ecx, [ebp - 0x30]
call fcn.0040eca0
mov eax, dword [ebp - 0x68]
cmp eax, 0x10
jb 0x423084
inc eax
lea ecx, [ebp - 0x7c]
push eax
push dword [ebp - 0x7c]
call fcn.00412370
mov ecx, dword [ebp - 0x84]
mov dword [ebp - 0x68], 0xf
mov dword [ebp - 0x6c], 0
mov byte [ebp - 0x7c], 0
cmp ecx, 0x10
jb 0x4230b4
inc ecx
push ecx
push dword [ebp - 0x98]
lea ecx, [ebp - 0x98]
call fcn.00412370
mov ecx, dword [ebp - 0xc]
mov al, bl
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
lea esp, [ebp + 0x5c]
pop ebp
ret 0xc