Function at 0x412fd0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52d1bb
mov eax, dword fs:[0]
push eax
sub esp, 0x168
mov eax, dword [0x5852e0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea eax, [ebp - 0xd0]
xor ebx, ebx
push eax
mov dword [ebp - 0xc4], ebx
call fcn.004207e0
mov ecx, eax
call fcn.004207b0
mov eax, dword [ebp - 0xd0]
add eax, 0x3c
mov dword [ebp - 4], ebx
push str.7z.dll
push eax
lea eax, [ebp - 0xd4]
push eax
call fcn.0040e550
add esp, 0xc
push dword [ebp - 0xd4]
mov byte [ebp - 4], 1
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
or edi, 0xffffffff
test eax, eax
jne 0x41364e
call fcn.0044ac30
mov ecx, eax
push ebx
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x413312
push 0x60
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxinst_helper.cc
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], 0xf
mov byte [ebp - 0xa4], al
call fcn.0040c440
push 3
push 0x53f3bc
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 2
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], bl
call fcn.0040c440
mov byte [ebp - 4], 3
call fcn.0044ac30
push 1
push 2
lea ecx, [ebp - 0x174]
mov dword [ebp - 0xc8], eax
call fcn.004079c0
push edi
push 0x53f028
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 4
call fcn.0040ce40
push edi
push 0x53f02c
lea ecx, [ebp - 0xa4]
mov esi, eax
call fcn.0040ce40
push 0x64
mov dword [ebp - 0xc4], eax
lea eax, [ebp - 0x74]
push ebx
push eax
call fcn.004fbfe0
mov ecx, dword [ebp - 0xc4]
add esp, 0xc
cmp ecx, edi
je 0x41320b
lea eax, [ecx - 1]
cmp esi, eax
jae 0x41320b
mov eax, dword [ebp - 0x94]
lea edx, [esi + 1]
mov dword [ebp - 0xac], ebx
mov dword [ebp - 0xa8], 0xf
mov byte [ebp - 0xbc], bl
cmp eax, edx
jb 0x413aca
sub ecx, esi
sub eax, edx
dec ecx
cmp eax, ecx
cmovb ecx, eax
cmp dword [ebp - 0x90], 0x10
lea eax, [ebp - 0xa4]
cmovae eax, dword [ebp - 0xa4]
push ecx
add eax, edx
lea ecx, [ebp - 0xbc]
push eax
call fcn.0040c440
cmp dword [ebp - 0xa8], 0x10
lea eax, [ebp - 0xbc]
lea ebx, [edi + 5]
cmovae eax, dword [ebp - 0xbc]
push eax
push 0x40e
lea eax, [ebp - 0x74]
push str.__4d___s_
push eax
call fcn.004075a0
mov edx, dword [ebp - 0xa8]
add esp, 0x10
cmp edx, 0x10
jb 0x4131ee
mov ecx, dword [ebp - 0xbc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4131e4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x413acf
push edx
push ecx
call fcn.00448aa0
add esp, 8
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xa8], 0xf
mov byte [ebp - 0xbc], 0
jmp 0x413221
push 0x40e
lea eax, [ebp - 0x74]
push str.__4d_
push eax
call fcn.004075a0
add esp, 0xc
cmp dword [ebp - 0x78], 0x10
lea eax, [ebp - 0x8c]
cmovae eax, dword [ebp - 0x8c]
push eax
lea eax, [ebp - 0x174]
push eax
call fcn.00409410
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x174]
push eax
call fcn.00409410
lea eax, [ebp - 0x174]
mov byte [ebp - 4], 5
push str.InstallFiles__InstallHelper::path_7z_is_not_exist
push eax
call fcn.00409410
mov ecx, dword [ebp - 0xc8]
lea edx, [ebp - 0x174]
add esp, 0x18
mov eax, dword [ecx]
push edx
call dword [eax + 0x1c]
lea ecx, [ebp - 0x174]
call fcn.00409540
mov edx, dword [ebp - 0x78]
mov byte [ebp - 4], 2
cmp edx, 0x10
jb 0x4132bf
mov ecx, dword [ebp - 0x8c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4132b5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x413ad4
push edx
push ecx
call fcn.00448aa0
add esp, 8
mov edx, dword [ebp - 0x90]
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
mov byte [ebp - 4], 1
cmp edx, 0x10
jb 0x413312
mov ecx, dword [ebp - 0xa4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x413308
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x413ad9
push edx
push ecx
call fcn.00448aa0
add esp, 8
lea eax, [ebp - 0xdc]
push eax
call fcn.004207e0
mov ecx, eax
call fcn.004207b0
mov ecx, dword [eax]
or ebx, 1
mov byte [ebp - 4], 6
mov dword [ebp - 0xc4], ebx
call fcn.0040b9a0
test al, al
je 0x41338b
mov eax, dword [ebp - 0xd0]
add eax, 0x44
push str.7z.zip
push eax
lea eax, [ebp - 0xc8]
push eax
call fcn.0040e550
mov ecx, dword [ebp - 0xd0]
or ebx, 2
add ecx, 0x3c
mov dword [ebp - 4], 7
push ecx
push eax
push 0xcb
mov dword [ebp - 0xc4], ebx
call fcn.00437460
add esp, 0x18
mov byte [ebp - 0xbd], 1
test eax, eax
jne 0x413392
mov byte [ebp - 0xbd], 0
mov dword [ebp - 4], 6
test bl, 2
je 0x4133c4
mov edx, dword [ebp - 0xc8]
and ebx, 0xfffffffd
mov dword [ebp - 0xc4], ebx
add edx, 0xfffffff0
mov eax, edi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4133c4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [ebp - 0xd8]
mov dword [ebp - 4], 1
test esi, esi
je 0x4133f4
mov eax, edi
lock xadd dword [esi + 4], eax
jne 0x4133f4
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
mov eax, edi
lock xadd dword [esi + 8], eax
jne 0x4133f4
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
cmp byte [ebp - 0xbd], 0
je 0x41364e
push dword [ebp - 0xd4]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x413565
call fcn.0044ac30
mov ecx, eax
push 2
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x4134f1
push 0x60
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxinst_helper.cc
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], al
call fcn.0040c440
push 3
push 0x53f28c
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 8
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0xf
mov byte [ebp - 0xa4], 0
call fcn.0040c440
mov byte [ebp - 4], 9
call fcn.0044ac30
mov edi, eax
lea ecx, [ebp - 0x174]
push 0x416
lea eax, [ebp - 0x8c]
push eax
lea eax, [ebp - 0xa4]
push eax
call fcn.0040dcb0
mov esi, eax
mov byte [ebp - 4], 0xa
push str.ExtractPepflashplayer_Packall_Move_7z_Success
push esi
call fcn.00409410
mov edx, dword [edi]
add esp, 8
mov ecx, edi
push esi
call dword [edx + 0x1c]
lea ecx, [ebp - 0x174]
call fcn.00409540
lea ecx, [ebp - 0xa4]
call fcn.00408b20
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 1
call fcn.00408b20
or edi, 0xffffffff
push dword [ebp - 0xd4]
call fcn.004c9550
mov ebx, eax
mov edx, dword [ebp - 0xd4]
mov ecx, edi
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x41351f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [ebp - 0xcc]
test esi, esi
je 0x413547
mov eax, edi
lock xadd dword [esi + 4], eax
jne 0x413547
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
lock xadd dword [esi + 8], edi
dec edi
jne 0x413547
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00448d48
mov esp, ebp
pop ebp
ret
sub esp, 8
mov ecx, esp
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x413585
lock inc dword [eax + 4]
mov eax, dword [ebp - 0xd0]
mov dword [ecx], eax
mov eax, dword [ebp - 0xcc]
mov dword [ecx + 4], eax
call fcn.00410d60
add esp, 8
test eax, eax
je 0x41364e
call fcn.0044ac30
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x4134f1
push 0x60
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxinst_helper.cc
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], al
call fcn.0040c440
push 3
push 0x53f67c
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0xf
mov byte [ebp - 0xa4], 0
call fcn.0040c440
mov byte [ebp - 4], 0xc
call fcn.0044ac30
mov edi, eax
lea ecx, [ebp - 0x174]
push 0x419
lea eax, [ebp - 0x8c]
push eax
lea eax, [ebp - 0xa4]
push eax
call fcn.0040dcb0
mov esi, eax
mov byte [ebp - 4], 0xd
push str.InstallFiles__InstallHelper::download7z___Success
jmp 0x4134b8
call fcn.004207e0
mov ecx, eax
call fcn.00421de0
test eax, eax
jne 0x41366b
call fcn.00410820
test eax, eax
jne 0x4134f1
call fcn.00403610
mov ecx, eax
test ecx, ecx
je 0x413ade
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xc4], eax
push str.7z_noexist
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0xe
call fcn.004032c0
test al, al
jne 0x4136b2
push 0xa
push str.7z_noexist
lea ecx, [ebp - 0xc4]
call fcn.00403ba0
mov byte [ebp - 4], 0xf
call fcn.00432210
lea ecx, [ebp - 0xc4]
push ecx
mov ecx, eax
mov edx, dword [eax]
call dword [edx]
mov edx, dword [ebp - 0xc4]
mov eax, edi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4136e9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.0044ac30
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x4139aa
push 0x60
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxinst_helper.cc
lea ecx, [ebp - 0xbc]
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xa8], 0xf
mov byte [ebp - 0xbc], al
call fcn.0040c440
push 3
push 0x53f3bc
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
call fcn.0040c440
mov byte [ebp - 4], 0x11
call fcn.0044ac30
push 1
push 2
lea ecx, [ebp - 0x174]
mov dword [ebp - 0xc8], eax
call fcn.004079c0
push 0xffffffffffffffff
push 0x53f028
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0x12
call fcn.0040ce40
push 0xffffffffffffffff
push 0x53f02c
lea ecx, [ebp - 0xbc]
mov ebx, eax
call fcn.0040ce40
push 0x64
mov esi, eax
lea eax, [ebp - 0x74]
push 0
push eax
call fcn.004fbfe0
add esp, 0xc
cmp esi, 0xffffffff
je 0x4138a3
lea eax, [esi - 1]
cmp ebx, eax
jae 0x4138a3
mov eax, dword [ebp - 0xac]
lea edx, [ebx + 1]
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0xf
mov byte [ebp - 0xa4], 0
cmp eax, edx
jb 0x413ae8
sub esi, ebx
sub eax, edx
lea ecx, [esi - 1]
cmp eax, ecx
cmovb ecx, eax
cmp dword [ebp - 0xa8], 0x10
lea eax, [ebp - 0xbc]
cmovae eax, dword [ebp - 0xbc]
push ecx
add eax, edx
lea ecx, [ebp - 0xa4]
push eax
call fcn.0040c440
cmp dword [ebp - 0x90], 0x10
lea eax, [ebp - 0xa4]
cmovae eax, dword [ebp - 0xa4]
push eax
push 0x421
lea eax, [ebp - 0x74]
push str.__4d___s_
push eax
call fcn.004075a0
mov edx, dword [ebp - 0x90]
add esp, 0x10
cmp edx, 0x10
jb 0x413886
mov ecx, dword [ebp - 0xa4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41387c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x413aed
push edx
push ecx
call fcn.00448aa0
add esp, 8
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0xf
mov byte [ebp - 0xa4], 0
jmp 0x4138b9
push 0x421
lea eax, [ebp - 0x74]
push str.__4d_
push eax
call fcn.004075a0
add esp, 0xc
cmp dword [ebp - 0x78], 0x10
lea eax, [ebp - 0x8c]
cmovae eax, dword [ebp - 0x8c]
push eax
lea eax, [ebp - 0x174]
push eax
call fcn.00409410
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x174]
push eax
call fcn.00409410
lea eax, [ebp - 0x174]
mov byte [ebp - 4], 0x13
push str.InstallFiles__InstallHelper::Copy7zfromProduct_is_not_exist
push eax
call fcn.00409410
mov ecx, dword [ebp - 0xc8]
lea edx, [ebp - 0x174]
add esp, 0x18
mov eax, dword [ecx]
push edx
call dword [eax + 0x1c]
lea ecx, [ebp - 0x174]
call fcn.00409540
mov edx, dword [ebp - 0x78]
mov byte [ebp - 4], 0x10
cmp edx, 0x10
jb 0x413957
mov ecx, dword [ebp - 0x8c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41394d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x413af2
push edx
push ecx
call fcn.00448aa0
add esp, 8
mov edx, dword [ebp - 0xa8]
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
mov byte [ebp - 4], 1
cmp edx, 0x10
jb 0x4139aa
mov ecx, dword [ebp - 0xbc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4139a0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x413af7
push edx
push ecx
call fcn.00448aa0
add esp, 8
sub esp, 8
mov ecx, esp
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x4139ca
lock inc dword [eax + 4]
mov eax, dword [ebp - 0xd0]
mov dword [ecx], eax
mov eax, dword [ebp - 0xcc]
mov dword [ecx + 4], eax
call fcn.00410d60
add esp, 8
test eax, eax
jne 0x4134f1
call fcn.0044ac30
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x413ac3
push 0x60
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxinst_helper.cc
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], al
call fcn.0040c440
push 3
push 0x53f67c
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0xf
mov byte [ebp - 0xa4], 0
call fcn.0040c440
mov byte [ebp - 4], 0x15
call fcn.0044ac30
mov edi, eax
lea ecx, [ebp - 0x174]
push 0x423
lea eax, [ebp - 0x8c]
push eax
lea eax, [ebp - 0xa4]
push eax
call fcn.0040dcb0
mov esi, eax
push str.InstallFiles__InstallHelper::download7z___failed
push esi
mov byte [ebp - 4], 0x16
call fcn.00409410
mov edx, dword [edi]
add esp, 8
mov ecx, edi
push esi
call dword [edx + 0x1c]
lea ecx, [ebp - 0x174]
call fcn.00409540
lea ecx, [ebp - 0xa4]
call fcn.00408b20
lea ecx, [ebp - 0x8c]
call fcn.00408b20
or edi, 0xffffffff
xor ebx, ebx
jmp 0x4134fe
call fcn.0040c050
call fcn.004ff559
call fcn.004ff559
call fcn.004ff559
push 0x80004005
call fcn.004032a0
call fcn.0040c050
call fcn.004ff559
call fcn.004ff559
call fcn.004ff559
int3