Function at 0x40cec0
Capabilities:
Get common file path

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46463f
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x1938
call fcn.0042a0f0
mov eax, dword [0x483068]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea eax, [ebp - 0x1914]
mov dword [ebp - 0x1914], 0
push eax
push 0
push 0
push 0x4684a0
call dword [sym.imp.SHELL32.dll_SHGetKnownFolderPath]
mov esi, eax
test esi, esi
jns 0x40cff3
lea ecx, [ebp - 0x1854]
call fcn.0041f060
mov dword [ebp - 4], 0
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x40cf4c
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4858e0
call fcn.00408830
add esp, 4
mov edx, str.d:jenkinsworkspace_a_mb4_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.004073d0
mov edx, 0x476f7c
mov ecx, eax
call fcn.004073d0
push 0x109
mov ecx, eax
call fcn.00405950
mov edx, 0x4778b4
mov ecx, eax
call fcn.004073d0
mov edx, str.Failed_to_get_program_files_folder:
mov ecx, eax
call fcn.004073d0
push esi
mov ecx, eax
call fcn.004057b0
push eax
call fcn.00407a20
mov edx, dword [ebp - 0x1840]
add esp, 4
cmp edx, 8
jb 0x40cfe9
mov ecx, dword [ebp - 0x1854]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40cfdf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e40f
push edx
push ecx
call fcn.004290dc
add esp, 8
mov eax, 3
jmp 0x40db8b
mov edx, dword [ebp - 0x1914]
xor eax, eax
mov ecx, edx
mov dword [ebp - 0x1884], 0
mov dword [ebp - 0x1880], 7
mov word [ebp - 0x1894], ax
lea esi, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40d020
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x1894]
call fcn.00409520
mov dword [ebp - 4], 1
cmp byte [0x486cec], 0
jne 0x40d169
push 0
push str.__x86_
lea ecx, [ebp - 0x1894]
call fcn.00416710
mov esi, eax
cmp esi, 0xffffffff
je 0x40d169
push esi
push 0
lea eax, [ebp - 0x1830]
push eax
lea ecx, [ebp - 0x1894]
call fcn.00416650
push 0xffffffffffffffff
lea eax, [esi + 6]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp - 0x1854]
push eax
lea ecx, [ebp - 0x1894]
call fcn.00416650
mov byte [ebp - 4], 3
mov ecx, eax
cmp dword [eax + 0x14], 8
jb 0x40d0ac
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x1830]
call fcn.004053f0
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x1840]
cmp edx, 8
jb 0x40d0ff
mov ecx, dword [ebp - 0x1854]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40d0f5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e414
push edx
push ecx
call fcn.004290dc
add esp, 8
cmp dword [ebp - 0x181c], 8
lea eax, [ebp - 0x1830]
push dword [ebp - 0x1820]
cmovae eax, dword [ebp - 0x1830]
lea ecx, [ebp - 0x1894]
push eax
call fcn.00409520
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x181c]
cmp edx, 8
jb 0x40d169
mov ecx, dword [ebp - 0x1830]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40d15f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e419
push edx
push ecx
call fcn.004290dc
add esp, 8
lea eax, [ebp - 0x1894]
mov ecx, 0x483ac0
push eax
call fcn.00419da0
push 0x477d54
call fcn.00419e40
push str.Anti_Malware
call fcn.00419e40
push dword [ebp - 0x1914]
call dword [sym.imp.ole32.dll_CoTaskMemFree]
mov ecx, 0x483aa8
cmp ecx, 0x483ac0
je 0x40d1c6
cmp dword [0x483ad4], 8
mov eax, 0x483ac0
push dword [0x483ad0]
cmovae eax, dword [0x483ac0]
push eax
call fcn.00409520
push 6
xor eax, eax
mov dword [ebp - 0x1820], 0
push str.MBAM_C
lea ecx, [ebp - 0x1830]
mov dword [ebp - 0x181c], 7
mov word [ebp - 0x1830], ax
call fcn.00409520
push 0x100
lea eax, [ebp - 0x124]
mov dword [ebp - 0x138], 0x11c
push 0
push eax
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x12c], 0
mov dword [ebp - 0x128], 0
call fcn.00440c40
mov esi, dword [sym.imp.KERNEL32.dll_VerSetConditionMask]
add esp, 0xc
xor eax, eax
mov word [ebp - 0x24], ax
mov dword [ebp - 0x22], eax
push 3
push 0x20
push 3
push 1
push 3
push 2
push eax
push eax
mov word [ebp - 0x1e], ax
call esi
push edx
push eax
call esi
push edx
push eax
call esi
push edx
push eax
push 0x23
lea eax, [ebp - 0x138]
mov dword [ebp - 0x134], 6
xor ecx, ecx
mov dword [ebp - 0x130], 1
push eax
mov word [ebp - 0x24], cx
call dword [sym.imp.KERNEL32.dll_VerifyVersionInfoW]
mov edx, dword [ebp - 0x181c]
test eax, eax
sete al
mov byte [ebp - 0x1925], al
cmp edx, 8
jb 0x40d2e4
mov ecx, dword [ebp - 0x1830]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40d2d4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e41e
push edx
push ecx
call fcn.004290dc
mov al, byte [ebp - 0x1925]
add esp, 8
test al, al
je 0x40d400
cmp byte [0x486ce4], 0
jne 0x40d3f6
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea eax, [ebp - 0x1018]
push 0x400
push eax
push 0x68
push 0
call edi
mov esi, dword [sym.imp.USER32.dll_LoadStringW]
push eax
call esi
push 0x400
lea eax, [ebp - 0x818]
push eax
push 0x69
push 0
call edi
push eax
call esi
lea ecx, [ebp - 0x1854]
call fcn.0041f060
mov byte [ebp - 4], 4
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x40d349
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4858e0
call fcn.00408830
add esp, 4
mov edx, str.d:jenkinsworkspace_a_mb4_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.004073d0
mov edx, 0x476f7c
mov ecx, eax
call fcn.004073d0
push 0x122
mov ecx, eax
call fcn.00405950
mov edx, 0x4778b4
mov ecx, eax
call fcn.004073d0
mov edx, str.Exit_due_to_invalid_operating_system_version
mov ecx, eax
call fcn.004073d0
push eax
call fcn.00407a20
mov edx, dword [ebp - 0x1840]
add esp, 4
cmp edx, 8
jb 0x40d3de
mov ecx, dword [ebp - 0x1854]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40d3d4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e423
push edx
push ecx
call fcn.004290dc
add esp, 8
push 0
lea eax, [ebp - 0x818]
push eax
lea eax, [ebp - 0x1018]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov esi, 0xc8
jmp 0x40db7e
xorps xmm0, xmm0
movups xmmword [ebp - 0x187c], xmm0
mov dword [ebp - method.InstalledProducts.virtual_0], vtable.InstalledProducts.0
mov dword [ebp - 0x1878], 0
mov dword [ebp - 0x1874], 0
mov dword [ebp - 0x1870], 0
push 0
lea ecx, [ebp - 0x187c]
mov byte [ebp - 4], 5
call fcn.0041f370
push 1
lea ecx, [ebp - 0x187c]
call fcn.0041f370
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1830]
push 6
xor eax, eax
mov dword [ebp - 0x1820], 0
push str.MBAM_C
mov dword [ebp - 0x181c], 7
mov word [ebp - 0x1830], ax
call fcn.00409520
lea edx, [ebp - 0x187c]
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x1830]
call fcn.0041eca0
test al, al
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x181c]
sete al
mov byte [ebp - 0x1925], al
cmp edx, 8
jb 0x40d4ed
mov ecx, dword [ebp - 0x1830]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40d4dd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e428
push edx
push ecx
call fcn.004290dc
mov al, byte [ebp - 0x1925]
add esp, 8
test al, al
je 0x40d609
cmp byte [0x486ce4], 0
jne 0x40d5ff
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea eax, [ebp - 0x818]
push 0x400
push eax
push 0x6a
push 0
call edi
mov esi, dword [sym.imp.USER32.dll_LoadStringW]
push eax
call esi
push 0x400
lea eax, [ebp - 0x1018]
push eax
push 0x6b
push 0
call edi
push eax
call esi
lea ecx, [ebp - 0x1854]
call fcn.0041f060
mov byte [ebp - 4], 8
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x40d552
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4858e0
call fcn.00408830
add esp, 4
mov edx, str.d:jenkinsworkspace_a_mb4_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.004073d0
mov edx, 0x476f7c
mov ecx, eax
call fcn.004073d0
push 0x131
mov ecx, eax
call fcn.00405950
mov edx, 0x4778b4
mov ecx, eax
call fcn.004073d0
mov edx, str.Exit_due_to_other_products_installed
mov ecx, eax
call fcn.004073d0
push eax
call fcn.00407a20
mov edx, dword [ebp - 0x1840]
add esp, 4
cmp edx, 8
jb 0x40d5e7
mov ecx, dword [ebp - 0x1854]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40d5dd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e42d
push edx
push ecx
call fcn.004290dc
add esp, 8
push 0
lea eax, [ebp - 0x1018]
push eax
lea eax, [ebp - 0x818]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov esi, 0xc9
jmp 0x40db73
mov edi, dword [ebp - 0x1874]
mov esi, dword [ebp - 0x1878]
cmp esi, edi
je 0x40d708
add esi, 0x1c
lea eax, [esi - 0x18]
mov dword [ebp - method.InstalledProducts::InstalledProduct.virtual_0], vtable.InstalledProducts::InstalledProduct.0
push eax
lea ecx, [ebp - 0x190c]
call fcn.00405520
push esi
lea ecx, [ebp - 0x18f4]
mov byte [ebp - 4], 9
call fcn.00405520
lea eax, [esi + 0x18]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0x18dc]
call fcn.00405520
lea eax, [esi + 0x30]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0x18c4]
call fcn.00405520
mov al, byte [esi + 0x48]
mov byte [ebp - 0x18ac], al
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x18f4]
cmp dword [ebp - 0x18e0], 8
cmovae ecx, dword [ebp - 0x18f4]
cmp dword [ebp - 0x18e4], 0x19
jb 0x40d6eb
push 0x19
mov edx, str.Malwarebytes_Anti_Malware
call fcn.00406450
add esp, 4
test eax, eax
jne 0x40d6eb
sub esp, 0x18
lea eax, [ebp - 0x18dc]
mov ecx, esp
push eax
call fcn.00405520
lea eax, [ebp - 0x18a0]
push eax
lea eax, [ebp - 0x18a4]
push eax
lea eax, [ebp - 0x1834]
push eax
lea eax, [ebp - 0x183c]
push eax
call fcn.0041fa40
cmp dword [ebp - 0x183c], 2
jbe 0x40d7d2
lea ecx, [ebp - 0x1910]
mov byte [ebp - 4], 6
call fcn.0041f130
add esi, 0x68
lea eax, [esi - 0x1c]
cmp eax, edi
jne 0x40d620
lea ecx, [ebp - 0x187c]
call fcn.0041fc50
test al, al
je 0x40d95b
push ecx
lea ecx, [ebp - 0x187c]
mov byte [0x483aa1], 0
call fcn.00420170
push 0x483aa8
lea ecx, [ebp - 0x1830]
call fcn.00405520
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x1820]
test eax, eax
je 0x40d910
dec eax
lea ecx, [ebp - 0x1830]
push eax
call fcn.00416870
cmp word [eax], 0x5c
jne 0x40d910
mov eax, dword [ebp - 0x1820]
lea ecx, [ebp - 0x1830]
dec eax
push eax
push 0
lea eax, [ebp - 0x1854]
push eax
call fcn.00416650
push eax
lea ecx, [ebp - 0x1830]
call fcn.00405490
mov edx, dword [ebp - 0x1840]
cmp edx, 8
jb 0x40d8ff
mov ecx, dword [ebp - 0x1854]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40d8f5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e432
jmp 0x40d8f5
lea ecx, [ebp - 0x1910]
mov byte [ebp - 4], 6
call fcn.0041f130
cmp byte [0x486ce4], 0
jne 0x40d8eb
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea eax, [ebp - 0x818]
push 0x400
push eax
push 0x6c
push 0
call edi
mov esi, dword [sym.imp.USER32.dll_LoadStringW]
push eax
call esi
push 0x400
lea eax, [ebp - 0x1018]
push eax
push 0x6e
push 0
call edi
push eax
call esi
lea ecx, [ebp - 0x1854]
call fcn.0041f060
mov byte [ebp - 4], 0xd
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x40d83e
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4858e0
call fcn.00408830
add esp, 4
mov edx, str.d:jenkinsworkspace_a_mb4_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.004073d0
mov edx, 0x476f7c
mov ecx, eax
call fcn.004073d0
push 0x13e
mov ecx, eax
call fcn.00405950
mov edx, 0x4778b4
mov ecx, eax
call fcn.004073d0
mov edx, str.Exit_due_to_old_version_of_MBAM_installed
mov ecx, eax
call fcn.004073d0
push eax
call fcn.00407a20
mov edx, dword [ebp - 0x1840]
add esp, 4
cmp edx, 8
jb 0x40d8d3
mov ecx, dword [ebp - 0x1854]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40d8c9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e437
push edx
push ecx
call fcn.004290dc
add esp, 8
push 0
lea eax, [ebp - 0x1018]
push eax
lea eax, [ebp - 0x818]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov esi, 0xca
jmp 0x40db73
push edx
push ecx
call fcn.004290dc
add esp, 8
lea eax, [ebp - 0x1830]
mov ecx, 0x483aa8
push eax
call fcn.00419da0
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x181c]
mov byte [0x483aa0], 0
cmp edx, 8
jb 0x40d95b
mov ecx, dword [ebp - 0x1830]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40d951
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e43c
push edx
push ecx
call fcn.004290dc
add esp, 8
push str.MBAM_C
lea ecx, [ebp - 0x1854]
call fcn.004054d0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x1854]
cmp dword [ebp - 0x1840], 8
cmovae ecx, dword [ebp - 0x1854]
cmp dword [ebp - 0x1844], 8
jne 0x40d9a5
push 8
mov edx, str.NCEP_WIN
call fcn.00406450
add esp, 4
neg eax
sbb al, al
and byte [0x483aa1], al
lea ecx, [ebp - 0x1830]
call fcn.0041f060
mov byte [ebp - 4], 0x10
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x40d9bf
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4858e0
call fcn.00408830
add esp, 4
mov edx, str.d:jenkinsworkspace_a_mb4_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.004073d0
mov edx, 0x476f7c
mov ecx, eax
call fcn.004073d0
push 0x156
mov ecx, eax
call fcn.00405950
mov edx, 0x4778b4
mov ecx, eax
call fcn.004073d0
mov edx, str.Displaying_User_Interface
mov ecx, eax
call fcn.004073d0
push eax
call fcn.00407a20
mov byte [ebp - 4], 0xf
add esp, 4
mov edx, dword [ebp - 0x181c]
cmp edx, 8
jb 0x40da58
mov ecx, dword [ebp - 0x1830]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40da4e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e441
push edx
push ecx
call fcn.004290dc
add esp, 8
mov edi, dword [sym.imp.USER32.dll_DialogBoxParamW]
xor eax, eax
mov word [ebp - 0x1830], ax
mov al, byte [0x486ce4]
mov dword [ebp - 0x1820], 0
mov dword [ebp - 0x181c], 7
test al, al
jne 0x40dbb0
cmp byte [0x483aa1], 0
je 0x40dbb0
push 0
push 0x411470
push 0
push 0x81
push dword [0x487e80]
call edi
cmp eax, 2
jne 0x40dba9
lea ecx, [ebp - 0x1830]
call fcn.0041f060
mov byte [ebp - 4], 0x11
cmp dword [eax + 0x14], 8
mov esi, dword [eax + 0x10]
jb 0x40dace
mov eax, dword [eax]
push esi
mov edx, eax
mov ecx, 0x4858e0
call fcn.00408830
add esp, 4
mov edx, str.d:jenkinsworkspace_a_mb4_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.004073d0
mov edx, 0x476f7c
mov ecx, eax
call fcn.004073d0
push 0x15e
mov ecx, eax
call fcn.00405950
mov edx, 0x4778b4
mov ecx, eax
call fcn.004073d0
mov edx, str.Installation_cancelled_after_Customer_Choice_dialog
mov ecx, eax
call fcn.004073d0
push eax
call fcn.00407a20
mov edx, dword [ebp - 0x181c]
add esp, 4
cmp edx, 8
jb 0x40db63
mov ecx, dword [ebp - 0x1830]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40db59
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e446
push edx
push ecx
call fcn.004290dc
add esp, 8
mov esi, 1
lea ecx, [ebp - 0x1854]
call fcn.00401c90
lea ecx, [ebp - 0x187c]
call fcn.0041f2e0
lea ecx, [ebp - 0x1894]
call fcn.00401c90
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004290a8
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov al, byte [0x486ce4]
jmp 0x40dbbe
mov byte [0x486ceb], 1
mov byte [0x486cea], 0
test al, al
jne 0x40dbe1
push 0
push 0x412070
push 0
push 0x83
push dword [0x487e80]
call edi
cmp eax, 2
jne 0x40dbe1
mov esi, eax
jmp 0x40db68
xorps xmm0, xmm0
lea ecx, [ebp - 0x1838]
movlpd qword [ebp - 0x1838], xmm0
call fcn.00409f80
lea edx, [ebp - 0x1838]
mov ecx, 0x483aa8
call fcn.0040b5e0
test al, al
jne 0x40dea5
cmp dword [ebp - 0x1838], 0
je 0x40dd74
lea ecx, [ebp - 0x186c]
call fcn.0041f060
mov byte [ebp - 4], 0x12
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x40dc36
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4858e0
call fcn.00408830
add esp, 4
mov edx, str.d:jenkinsworkspace_a_mb4_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.004073d0
mov edx, 0x476f7c
mov ecx, eax
call fcn.004073d0
push 0x174
mov ecx, eax
call fcn.00405950
mov edx, 0x4778b4
mov ecx, eax
call fcn.004073d0
mov edx, str.Failed_to_check_directory
mov ecx, eax
call fcn.004073d0
mov edx, 0x483aa8
mov ecx, eax
call fcn.00407740
mov edx, 0x476f7c
mov ecx, eax
call fcn.004073d0
mov ecx, dword [ebp - 0x1834]
mov esi, eax
push dword [ebp - 0x1838]
lea eax, [ebp - 0x1830]
push eax
mov edx, dword [ecx]
call dword [edx + 8]
mov byte [ebp - 4], 0x13
cmp dword [ebp - 0x181c], 0x10
lea edx, [ebp - 0x1830]
mov ecx, esi
cmovae edx, dword [ebp - 0x1830]
call fcn.004073d0
push eax
call fcn.00407a20
mov edx, dword [ebp - 0x181c]
add esp, 4
cmp edx, 0x10
jb 0x40dd16
mov ecx, dword [ebp - 0x1830]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40dd0c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e44b
push edx
push ecx
call fcn.004290dc
add esp, 8
mov edx, dword [ebp - 0x1858]
mov dword [ebp - 0x1820], 0
mov dword [ebp - 0x181c], 0xf
mov byte [ebp - 0x1830], 0
cmp edx, 8
jb 0x40de44
mov ecx, dword [ebp - 0x186c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40de3a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e450
jmp 0x40de3a
lea edx, [ebp - 0x1838]
mov ecx, 0x483aa8
call fcn.0040b650
test al, al
jne 0x40dea5
cmp dword [ebp - 0x1838], 0
je 0x40dea5
lea ecx, [ebp - 0x186c]
call fcn.0041f060
mov byte [ebp - 4], 0x14
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x40ddb3
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4858e0
call fcn.00408830
add esp, 4
mov edx, str.d:jenkinsworkspace_a_mb4_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.004073d0
mov edx, 0x476f7c
mov ecx, eax
call fcn.004073d0
push 0x180
mov ecx, eax
call fcn.00405950
mov edx, 0x4778b4
mov ecx, eax
call fcn.004073d0
mov edx, str.Failed_to_create_directory
mov ecx, eax
call fcn.004073d0
mov edx, 0x483aa8
mov ecx, eax
call fcn.00407740
mov edx, 0x476f7c
mov ecx, eax
call fcn.004073d0
mov ecx, dword [ebp - 0x1834]
mov esi, eax
push dword [ebp - 0x1838]
lea eax, [ebp - 0x1830]
push eax
mov edx, dword [ecx]
call dword [edx + 8]
mov byte [ebp - 4], 0x15
jmp 0x40dcb8
push edx
push ecx
call fcn.004290dc
add esp, 8
cmp byte [0x486ce4], 0
jne 0x40de9b
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea eax, [ebp - 0x818]
push 0x400
push eax
push 0x6f
push 0
call edi
mov esi, dword [sym.imp.USER32.dll_LoadStringW]
push eax
call esi
push 0x400
lea eax, [ebp - 0x1018]
push eax
push 0x70
push 0
call edi
push eax
call esi
push 0
lea eax, [ebp - 0x1018]
push eax
lea eax, [ebp - 0x818]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov esi, 3
jmp 0x40db68
push 1
mov byte [0x486cd4], 0
call fcn.004290ea
mov esi, eax
add esp, 4
mov dword [ebp - 0x183c], esi
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x1868]
xorps xmm0, xmm0
mov dword [ebp - 0x1858], 0
movups xmmword [ebp - 0x1868], xmm0
call fcn.0040bb80
mov dword [ebp - 0x1868], 0x4789d0
mov dword [ebp - 0x183c], 0
mov dword [ebp - 0x1858], esi
lea eax, [ebp - 0x189c]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [ebp - 0x1868]
call fcn.0040bc50
mov eax, dword [ebp - 0x1858]
test eax, eax
je 0x40df26
push 1
push eax
call fcn.004290dc
add esp, 8
mov byte [ebp - 4], 0x18
mov esi, dword [ebp - 0x1860]
mov eax, dword [ebp - 0x1864]
push esi
mov dword [ebp - 0x192c], eax
call fcn.004278d4
add esp, 4
test eax, eax
je 0x40df52
push eax
call fcn.0042731f
add esp, 4
push esi
call fcn.00427818
add esp, 4
push dword [ebp - 0x192c]
call fcn.00427b3f
add esp, 4
lea ecx, [ebp - 0x189c]
mov byte [ebp - 4], 0x19
call fcn.0040bcd0
cmp byte [0x486ce4], 0
jne 0x40e38f
push 0
push 0x414800
push 0
push 0x90
push dword [0x487e80]
call edi
cmp eax, 2
jne 0x40dfa7
mov esi, eax
jmp 0x40e18f
cmp byte [0x486cd3], 0
je 0x40e00e
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea eax, [ebp - 0x1818]
push 0x400
push eax
push 0x92
push 0
call edi
mov esi, dword [sym.imp.USER32.dll_LoadStringW]
push eax
call esi
push 0x400
lea eax, [ebp - 0x1018]
push eax
push 0x93
push 0
call edi
push eax
call esi
push 0
lea eax, [ebp - 0x1018]
push eax
lea eax, [ebp - 0x1818]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov esi, 3
jmp 0x40e18f
cmp byte [0x486cd2], 0
je 0x40e1a1
cmp byte [0x483aa2], 0
jne 0x40e02f
mov esi, dword [0x483aa4]
jmp 0x40e18f
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea eax, [ebp - 0x1018]
push 0x400
push eax
push 0x9e
push 0
call edi
mov esi, dword [sym.imp.USER32.dll_LoadStringW]
push eax
call esi
push 0x400
lea eax, [ebp - 0x1818]
push eax
push 0x98
push 0
call edi
push eax
call esi
push 0x24
lea eax, [ebp - 0x1818]
push eax
lea eax, [ebp - 0x1018]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
lea ecx, [ebp - 0x1944]
cmp eax, 7
jne 0x40e110
call fcn.0041f060
mov byte [ebp - 4], 0x1a
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x40e0a6
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4858e0
call fcn.00408830
add esp, 4
mov edx, str.d:jenkinsworkspace_a_mb4_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.004073d0
mov edx, 0x476f7c
mov ecx, eax
call fcn.004073d0
push 0x1df
mov ecx, eax
call fcn.00405950
mov edx, 0x4778b4
mov ecx, eax
call fcn.004073d0
mov edx, str.User_responded__No__to_restart_request
mov ecx, eax
call fcn.004073d0
push eax
call fcn.00407a20
add esp, 4
lea ecx, [ebp - 0x1944]
call fcn.00401c90
mov esi, 8
jmp 0x40e18f
call fcn.0041f060
mov byte [ebp - 4], 0x1b
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x40e124
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4858e0
call fcn.00408830
add esp, 4
mov edx, str.d:jenkinsworkspace_a_mb4_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.004073d0
mov edx, 0x476f7c
mov ecx, eax
call fcn.004073d0
push 0x1e3
mov ecx, eax
call fcn.00405950
mov edx, 0x4778b4
mov ecx, eax
call fcn.004073d0
mov edx, str.User_responded__Yes__to_restart_request__restarting
mov ecx, eax
call fcn.004073d0
push eax
call fcn.00407a20
add esp, 4
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x1944]
call fcn.00401c90
call fcn.00415160
xor esi, esi
cmp dword [ebp - 0x1898], 0
jne 0x40e455
jmp 0x40db68
cmp byte [0x486cd0], 0
je 0x40e205
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea eax, [ebp - 0x1018]
push 0x400
push eax
push 0x92
push 0
call edi
mov esi, dword [sym.imp.USER32.dll_LoadStringW]
push eax
call esi
push 0x400
lea eax, [ebp - 0x1818]
push eax
push 0x93
push 0
call edi
push eax
call esi
push 0
lea eax, [ebp - 0x1818]
push eax
lea eax, [ebp - 0x1018]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov esi, 3
jmp 0x40e18f
push 0x483aa8
lea ecx, [ebp - 0x1830]
call fcn.00405520
push 8
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x186c]
push str.mbam.exe
mov byte [ebp - 0x192c], 0
push dword [ebp - 0x192c]
call fcn.0041c060
add esp, 0xc
lea eax, [ebp - 0x186c]
mov byte [ebp - 4], 0x1d
push eax
lea ecx, [ebp - 0x1830]
call fcn.00401ac0
mov byte [ebp - 4], 0x1c
mov edx, dword [ebp - 0x1858]
cmp edx, 8
jb 0x40e295
mov ecx, dword [ebp - 0x186c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40e28b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e44b
push edx
push ecx
call fcn.004290dc
add esp, 8
push 0x400
lea eax, [ebp - 0x818]
push 0
push eax
call fcn.00440c40
add esp, 0xc
cmp byte [0x486ce6], 0
je 0x40e307
cmp dword [ebp - 0x181c], 8
lea eax, [ebp - 0x1830]
cmovae eax, dword [ebp - 0x1830]
push eax
lea eax, [ebp - 0x818]
push 0x400
push eax
call fcn.00447e0a
add esp, 0xc
lea eax, [ebp - 0x818]
push str.___skiponboarding
push 0x400
push eax
call fcn.00447e6e
add esp, 0xc
cmp byte [0x486ce6], 0
je 0x40e307
lea edx, [ebp - 0x818]
jmp 0x40e309
xor edx, edx
cmp dword [ebp - 0x181c], 8
lea ecx, [ebp - 0x1830]
lea eax, [ebp - 0x1924]
cmovae ecx, dword [ebp - 0x1830]
push ecx
push eax
sub esp, 8
call fcn.00414f00
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
add esp, 0x10
push dword [ebp - 0x1920]
call esi
push dword [ebp - 0x1924]
call esi
mov edx, dword [ebp - 0x181c]
cmp edx, 8
jb 0x40e18d
mov ecx, dword [ebp - 0x1830]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40e380
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e44b
push edx
push ecx
call fcn.004290dc
add esp, 8
jmp 0x40e18d
cmp byte [0x486cd4], 0
jne 0x40e3c4
mov dword [ebp - 0x1838], 1
mov dword [ebp - 0x1834], 0
nop dword [eax]
lea ecx, [ebp - 0x1838]
call fcn.00419fc0
cmp byte [0x486cd4], 0
je 0x40e3b0
cmp byte [0x486cd3], 0
je 0x40e3d7
mov esi, 3
jmp 0x40e18f
cmp byte [0x486cd2], 0
je 0x40e3f8
cmp byte [0x483aa2], 0
jne 0x40e188
mov esi, dword [0x483aa4]
jmp 0x40e18f
cmp byte [0x486cd0], 0
je 0x40e18d
mov esi, 3
jmp 0x40e18f
call fcn.00443bfc
call fcn.00443bfc
call fcn.00443bfc
call fcn.00443bfc
call fcn.00443bfc
call fcn.00443bfc
call fcn.00443bfc
call fcn.00443bfc
call fcn.00443bfc
call fcn.00443bfc
call fcn.00443bfc
call fcn.00443bfc
call fcn.00443bfc
call fcn.00443bfc
call fcn.00443c4d
int3