Function at 0x421f20
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5502d8
mov eax, dword fs:[0]
push eax
sub esp, 0x45c
mov eax, dword [0x5aa464]
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
mov ebx, ecx
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x280], esi
test esi, esi
je 0x422cd0
mov eax, dword [esi]
cmp eax, 0x3ea
jne 0x42206b
movsd xmm0, qword [esi + 8]
lea eax, [ebp - 0x204]
mulsd xmm0, qword [0x5b0a98]
push 0x1f4
push 0
push eax
mulsd xmm0, qword [0x5925a0]
cvttsd2si esi, xmm0
call fcn.004b4d60
mov ecx, dword [ebx + 0x6c0]
add esp, 0xc
mov eax, dword [ecx]
call dword [eax + 0xcc]
mov ecx, eax
call fcn.0054d150
push eax
lea ecx, [ebp - 0x21c]
call fcn.004064b0
mov dword [ebp - 4], 0
cmp dword [ebp - 0x20c], 0
jne 0x421ff9
lea ecx, [ebx + 0x798]
call fcn.0044feb0
comiss xmm0, dword [0x5925c0]
lea ecx, [ebp - 0x21c]
jbe 0x421fef
push 0x58f948
jmp 0x421ff4
push 0x58f970
call fcn.004094e0
cmp dword [ebp - 0x208], 8
lea eax, [ebp - 0x21c]
push esi
cmovae eax, dword [ebp - 0x21c]
push eax
lea eax, [ebp - 0x204]
push eax
call fcn.00425da0
mov ecx, dword [ebx + 0x6c0]
add esp, 0xc
test ecx, ecx
je 0x422034
mov eax, dword [ecx]
lea edx, [ebp - 0x204]
push edx
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x422044
push esi
call fcn.0046d400
mov eax, dword [ebp - 0x208]
cmp eax, 8
jb 0x422cc2
inc eax
lea ecx, [ebp - 0x21c]
push eax
push dword [ebp - 0x21c]
call fcn.00406e80
jmp 0x422cc2
cmp eax, 0x3e9
jne 0x42218c
cmp byte [ebx + 0x7e0], 0
jne 0x422111
lea eax, [ebp - 0x264]
mov byte [ebx + 0x7e0], 1
push eax
mov ecx, 0x5b09e8
call fcn.0041ec60
lea esi, [ebx + 0x7c8]
push eax
mov ecx, esi
call fcn.00409530
lea ecx, [ebp - 0x264]
call fcn.00406470
push esi
push ecx
lea ecx, [ebp - 0x24c]
call fcn.00425d00
sub esp, 8
mov dword [ebp - 4], 1
lea eax, [ebp - 0x21c]
mov ecx, esp
lea edx, [ebp - 0x24c]
push eax
push edx
call fcn.0041e0a0
push 0x58d674
xorps xmm1, xmm1
mov ecx, 0x58f83c
call fcn.00405320
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x24c]
push fcn.00408300
push 1
push 0x30
push eax
call fcn.0050a0bd
mov byte [ebx + 0x79c], 1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebx + 0x798], eax
lea eax, [ebx + 0x7c8]
push eax
push ecx
lea ecx, [ebp - 0x24c]
call fcn.00425d00
sub esp, 8
mov dword [ebp - 4], 2
lea eax, [ebp - 0x21c]
mov ecx, esp
lea edx, [ebp - 0x24c]
push eax
push edx
call fcn.0041e0a0
push 0x58d674
xorps xmm1, xmm1
mov ecx, 0x58f994
call fcn.00405320
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x24c]
push fcn.00408300
push 1
push 0x30
push eax
call fcn.0050a0bd
jmp 0x422cc2
cmp eax, 0x3eb
jne 0x422217
lea ecx, [ebx + 0x798]
call fcn.0044feb0
lea eax, [ebx + 0x7c8]
movss dword [ebp - 0x284], xmm0
push eax
push ecx
lea ecx, [ebp - 0x24c]
call fcn.00425d00
sub esp, 8
mov dword [ebp - 4], 3
lea eax, [ebp - 0x21c]
mov ecx, esp
lea edx, [ebp - 0x24c]
push eax
push edx
call fcn.0041e0a0
movss xmm1, dword [ebp - 0x284]
mov ecx, 0x58f9a4
push 0x58d674
call fcn.00405320
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x24c]
push fcn.00408300
push 1
push 0x30
push eax
call fcn.0050a0bd
jmp 0x422cc2
cmp eax, 0x3ec
jne 0x42245d
push esi
call fcn.004234d0
push 0xffffffffffffffff
push 0x58d674
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1a4], 4
mov dword [ebp - 0x1a0], 0x93
call fcn.00453be0
push 0xffffffffffffffff
push str.NetworkTipWnd.xml
lea ecx, [ebp - 0x118]
mov dword [ebp - 4], 4
call fcn.00453be0
push str.NetworkTipWnd.xml
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 5
call fcn.004064b0
mov esi, eax
push str.NetworkTipWnd.xml
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 6
call fcn.004064b0
mov edi, eax
push 1
sub esp, 8
mov byte [ebp - 4], 7
mov ecx, esi
call fcn.00424c10
push eax
push 0
lea eax, [ebp - 0x264]
mov ecx, edi
push eax
call fcn.00424ba0
mov byte [ebp - 4], 8
cmp dword [eax + 0x14], 8
jb 0x4222c0
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x94]
call fcn.00453be0
lea ecx, [ebp - 0x264]
call fcn.00406470
lea ecx, [ebp - 0x21c]
call fcn.00406470
lea ecx, [ebp - 0x234]
call fcn.00406470
push 0
push 0
mov ecx, ebx
mov dword [ebp - 4], 9
call fcn.00494000
lea edx, [ebp - 0x1a4]
mov ecx, eax
call fcn.00453820
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1a4]
mov esi, eax
call fcn.0041f180
cmp esi, 1
jne 0x422344
cmp byte [ebx + 0x7b8], 0
je 0x422433
push esi
mov ecx, ebx
call fcn.0046a570
jmp 0x422433
test esi, esi
jne 0x422433
xor eax, eax
mov dword [ebp - 0x208], 7
mov dword [ebp - 0x20c], esi
mov word [ebp - 0x21c], ax
mov dword [ebp - 4], 0xa
cmp dword [ebx + 0x7a4], eax
jne 0x4223b9
lea eax, [ebp - 0x234]
mov ecx, ebx
push eax
call fcn.00422d40
push eax
lea ecx, [ebp - 0x21c]
call fcn.00409530
lea ecx, [ebp - 0x234]
call fcn.00406470
cmp dword [ebp - 0x208], 8
lea eax, [ebp - 0x21c]
push 1
cmovae eax, dword [ebp - 0x21c]
mov ecx, ebx
push 1
push eax
call fcn.00420000
cmp dword [ebx + 0x7a4], 1
jne 0x422421
lea eax, [ebp - 0x234]
mov ecx, ebx
push eax
call fcn.00423250
push eax
lea ecx, [ebp - 0x21c]
call fcn.00409530
lea ecx, [ebp - 0x234]
call fcn.00406470
cmp dword [ebp - 0x208], 8
lea esi, [ebp - 0x21c]
mov ecx, dword [ebx + 0x6d0]
cmovae esi, dword [ebp - 0x21c]
call fcn.0046c740
mov ecx, dword [ebx + 0x6cc]
movzx eax, al
push eax
call fcn.0046c740
movzx eax, al
mov ecx, ebx
push eax
push esi
call fcn.00420000
lea ecx, [ebp - 0x21c]
mov dword [ebp - 4], 0xffffffff
call fcn.00406470
mov ecx, dword [ebx + 0x688]
mov dword [ebx + 0x7b0], 2
test ecx, ecx
je 0x422cc2
push 1
push dword [ebx + 0x7a4]
call fcn.0046c0b0
jmp 0x422cc2
cmp eax, 0x7d1
jne 0x42246e
call fcn.00423b90
jmp 0x422cc8
cmp eax, 0x7d2
jne 0x422608
movsd xmm0, qword [esi + 8]
lea ecx, [ebp - 0x234]
movaps xmm1, xmm0
movsd qword [ebp - 0x28c], xmm0
call fcn.0041ec30
mov dword [ebp - 4], 0xb
movsd xmm0, qword [ebx + 0x7a8]
addsd xmm0, qword [0x592578]
movsd xmm1, qword [0x592588]
comisd xmm0, xmm1
movsd qword [ebx + 0x7a8], xmm0
jbe 0x4224c9
movsd qword [ebx + 0x7a8], xmm1
movsd xmm2, qword [ebp - 0x28c]
ucomisd xmm2, qword [0x592560]
movsd xmm0, qword [ebx + 0x7a8]
lahf
test ah, 0x44
jp 0x4224f2
comisd xmm0, xmm2
jbe 0x422503
movaps xmm2, xmm0
jmp 0x42250b
comisd xmm0, xmm2
jbe 0x4224fd
movaps xmm2, xmm0
jmp 0x42250b
comisd xmm2, xmm0
jbe 0x42250b
movsd qword [ebx + 0x7a8], xmm2
movsd xmm1, qword [0x592590]
lea eax, [ebp - 0x204]
subsd xmm1, qword [0x5b0a98]
push 0x1f4
push 0
push eax
mulsd xmm1, xmm2
addsd xmm1, qword [0x5b0a98]
mulsd xmm1, qword [0x5925a0]
cvttsd2si esi, xmm1
call fcn.004b4d60
mov ecx, dword [ebx + 0x6c0]
add esp, 0xc
mov eax, dword [ecx]
call dword [eax + 0xcc]
mov ecx, eax
call fcn.0054d150
push eax
lea ecx, [ebp - 0x21c]
call fcn.004064b0
mov byte [ebp - 4], 0xc
cmp dword [ebp - 0x20c], 0
jne 0x4225a2
lea ecx, [ebx + 0x798]
call fcn.0044feb0
comiss xmm0, dword [0x5925c0]
lea ecx, [ebp - 0x21c]
jbe 0x422598
push 0x58f948
jmp 0x42259d
push 0x58f970
call fcn.004094e0
cmp dword [ebp - 0x208], 8
lea eax, [ebp - 0x21c]
push esi
cmovae eax, dword [ebp - 0x21c]
push eax
lea eax, [ebp - 0x204]
push eax
call fcn.00425da0
mov ecx, dword [ebx + 0x6c0]
add esp, 0xc
test ecx, ecx
je 0x4225dd
mov eax, dword [ecx]
lea edx, [ebp - 0x204]
push edx
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x4225ed
push esi
call fcn.0046d400
lea ecx, [ebp - 0x21c]
call fcn.00406470
lea ecx, [ebp - 0x234]
call fcn.00406550
jmp 0x422cc2
cmp eax, 0x7d3
jne 0x4227b8
lea ecx, [ebx + 0x798]
call fcn.0044feb0
lea eax, [ebx + 0x7c8]
push eax
push ecx
lea ecx, [ebp - 0x24c]
call fcn.00425d00
sub esp, 8
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x21c]
mov ecx, esp
lea edx, [ebp - 0x24c]
push eax
push edx
call fcn.0041e0a0
push 0x58d674
xorps xmm1, xmm1
mov ecx, 0x58f9d8
call fcn.00405320
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x24c]
push fcn.00408300
push 1
push 0x30
push eax
call fcn.0050a0bd
call fcn.0045a210
mov ecx, eax
call fcn.0054d150
push eax
lea ecx, [ebp - 0x264]
call fcn.004064b0
push str.resmainWndinstallPrg3.png
lea ecx, [ebp - 0x21c]
mov dword [ebp - 4], 0xe
call fcn.004064b0
mov byte [ebp - 4], 0xf
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x4226c5
push 0x64
call fcn.0046d400
lea eax, [ebp - 0x21c]
push eax
lea edx, [ebp - 0x264]
lea ecx, [ebp - 0x234]
call fcn.00425c20
add esp, 4
cmp dword [eax + 0x14], 8
jb 0x4226e8
mov eax, dword [eax]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
lea ecx, [ebp - 0x234]
mov esi, eax
call fcn.00406470
test esi, esi
je 0x422733
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x422724
cmp dword [ebp - 0x208], 8
lea eax, [ebp - 0x21c]
cmovae eax, dword [ebp - 0x21c]
push eax
call fcn.0046d3b0
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x422733
call fcn.0045ff40
push 0x1625
push dword [ebx + 0x6c8]
lea ecx, [ebx + 0x2c]
call fcn.0045a590
push 0x112c
push dword [ebx + 0x6c8]
lea ecx, [ebx + 0x2c]
call fcn.0045a590
mov ecx, dword [ebx + 0x6dc]
test ecx, ecx
je 0x42277d
mov eax, dword [ecx]
push 0x58f420
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6dc]
push 1
mov eax, dword [ecx]
call dword [eax + 0xe0]
mov ecx, dword [ebx + 0x688]
push 1
push 3
call fcn.0046c0b0
mov ecx, ebx
mov dword [ebx + 0x7b0], 3
call fcn.004238a0
lea ecx, [ebp - 0x21c]
call fcn.00406470
lea ecx, [ebp - 0x264]
call fcn.00406470
jmp 0x422cc2
cmp eax, 0x7d4
jne 0x422961
push 0
push esi
call fcn.004237b0
lea eax, [esi + 0x10]
push eax
lea ecx, [ebp - 0x21c]
call fcn.00411030
mov dword [ebp - 4], 0x10
cmp dword [esi + 0x20], 0
jne 0x4227f7
push 0x58fa1c
lea ecx, [ebp - 0x21c]
call fcn.004094e0
push 0xffffffffffffffff
push 0x58d674
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1a4], 4
mov dword [ebp - 0x1a0], 0x93
call fcn.00453be0
push 0xffffffffffffffff
push str.MessageBox2Wnd.xml
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x18
call fcn.00453be0
push str.MessageBox2Wnd.xml
lea ecx, [ebp - 0x27c]
mov byte [ebp - 4], 0x19
call fcn.004064b0
mov esi, eax
push str.MessageBox2Wnd.xml
lea ecx, [ebp - 0x264]
mov byte [ebp - 4], 0x1a
call fcn.004064b0
mov edi, eax
push 1
sub esp, 8
mov byte [ebp - 4], 0x1b
mov ecx, esi
call fcn.00424c10
push eax
push 0
lea eax, [ebp - 0x234]
mov ecx, edi
push eax
call fcn.00424ba0
mov byte [ebp - 4], 0x1c
cmp dword [eax + 0x14], 8
jb 0x42288c
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x94]
call fcn.00453be0
lea ecx, [ebp - 0x234]
call fcn.00406470
lea ecx, [ebp - 0x264]
call fcn.00406470
lea ecx, [ebp - 0x27c]
call fcn.00406470
mov byte [ebp - 4], 0x1d
lea eax, [ebp - 0x21c]
cmp dword [ebp - 0x208], 8
mov ecx, ebx
push 0x58f77c
cmovae eax, dword [ebp - 0x21c]
push eax
call fcn.00494000
lea edx, [ebp - 0x1a4]
mov ecx, eax
call fcn.00453820
add esp, 8
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x1a4]
call fcn.0041f180
mov ecx, dword [ebx + 0x6ec]
mov dword [ebx + 0x7b0], 2
call fcn.0046d090
cmp eax, 0x46
jl 0x42293e
mov ecx, dword [ebx + 0x6c0]
test ecx, ecx
je 0x42292d
mov eax, dword [ecx]
push str.ck_W
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x42293e
push 0
call fcn.0046d400
mov ecx, dword [ebx + 0x688]
test ecx, ecx
je 0x422951
push 1
push 0
call fcn.0046c0b0
lea ecx, [ebp - 0x21c]
call fcn.00406470
jmp 0x422cc2
cmp eax, 0xbb8
jne 0x422988
lea ecx, [ebx + 0x728]
add esi, 0x10
cmp ecx, esi
je 0x422cc2
push 0xffffffffffffffff
push 0
push esi
call fcn.00406820
jmp 0x422cc2
cmp eax, 0xbb9
jne 0x422997
lea ecx, [ebx + 0x6f8]
jmp 0x42296e
cmp eax, 0xbbb
jne 0x4229a6
lea ecx, [ebx + 0x710]
jmp 0x42296e
cmp eax, 0xbbc
jne 0x4229b5
lea ecx, [ebx + 0x770]
jmp 0x42296e
cmp eax, 0xbbd
jne 0x4229cc
cvttsd2si eax, qword [esi + 8]
mov dword [ebx + 0x788], eax
jmp 0x422cc8
cmp eax, 0xbbf
jne 0x4229e8
movsd xmm0, qword [esi + 8]
call fcn.0050a5f1
mov dword [ebx + 0x78c], eax
jmp 0x422cc8
cmp eax, 0xbc0
jne 0x422a04
movsd xmm0, qword [esi + 8]
call fcn.0050a5f1
mov dword [ebx + 0x790], eax
jmp 0x422cc8
cmp eax, 0xbc1
jne 0x422b1b
push 0xffffffffffffffff
push 0x58d674
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1a4], 4
mov dword [ebp - 0x1a0], 0x93
call fcn.00453be0
push 0xffffffffffffffff
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x118]
mov dword [ebp - 4], 0x26
call fcn.00453be0
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 0x27
call fcn.004064b0
mov esi, eax
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x264]
mov byte [ebp - 4], 0x28
call fcn.004064b0
mov edi, eax
push 1
sub esp, 8
mov byte [ebp - 4], 0x29
mov ecx, esi
call fcn.00424c10
push eax
push 0
lea eax, [ebp - 0x234]
mov ecx, edi
push eax
call fcn.00424ba0
mov byte [ebp - 4], 0x2a
cmp dword [eax + 0x14], 8
jb 0x422aa7
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x94]
call fcn.00453be0
lea ecx, [ebp - 0x234]
call fcn.00406470
lea ecx, [ebp - 0x264]
call fcn.00406470
lea ecx, [ebp - 0x21c]
call fcn.00406470
mov esi, dword [ebp - 0x280]
lea eax, [esi + 0x10]
mov dword [ebp - 4], 0x2b
cmp dword [eax + 0x14], 8
jb 0x422aee
mov eax, dword [eax]
push 0x58fa48
push eax
mov ecx, ebx
call fcn.00494000
lea edx, [ebp - 0x1a4]
mov ecx, eax
call fcn.00453820
add esp, 8
lea ecx, [ebp - 0x1a4]
call fcn.0041f180
jmp 0x422cc8
cmp eax, 0x3ee
jne 0x422b2f
push 1
push esi
call fcn.004237b0
jmp 0x422cc8
cmp eax, 0x1389
je 0x422cc8
cmp eax, 0x138a
je 0x422cc8
cmp eax, 0x138b
je 0x422cc8
cmp eax, 0x138c
je 0x422b62
cmp eax, 0x138d
jne 0x422cc8
push 0x58f744
lea ecx, [ebp - 0x27c]
call fcn.004064b0
push 0xffffffffffffffff
mov dword [ebp - 4], 0x3a
lea ecx, [ebp - 0x460]
push 0x58d674
mov dword [ebp - 0x468], 4
mov dword [ebp - 0x464], 0x93
call fcn.00453be0
push 0xffffffffffffffff
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x3dc]
mov byte [ebp - 4], 0x3b
call fcn.00453be0
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x2d4]
mov byte [ebp - 4], 0x3c
call fcn.004064b0
mov esi, eax
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x2bc]
mov byte [ebp - 4], 0x3d
call fcn.004064b0
mov edi, eax
push 1
sub esp, 8
mov byte [ebp - 4], 0x3e
mov ecx, esi
call fcn.00424c10
push eax
push 0
lea eax, [ebp - 0x2a4]
mov ecx, edi
push eax
call fcn.00424ba0
mov byte [ebp - 4], 0x3f
cmp dword [eax + 0x14], 8
jb 0x422c0e
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x358]
call fcn.00453be0
lea ecx, [ebp - 0x2a4]
call fcn.00406470
lea ecx, [ebp - 0x2bc]
call fcn.00406470
lea ecx, [ebp - 0x2d4]
call fcn.00406470
mov byte [ebp - 4], 0x40
lea eax, [ebp - 0x27c]
cmp dword [ebp - 0x268], 8
mov ecx, ebx
push 0x58f77c
cmovae eax, dword [ebp - 0x27c]
push eax
call fcn.00494000
lea edx, [ebp - 0x468]
mov ecx, eax
call fcn.00453820
add esp, 8
lea ecx, [ebp - 0x468]
call fcn.0041f180
lea ecx, [ebp - 0x27c]
mov dword [ebp - 4], 0xffffffff
call fcn.00406470
mov ecx, dword [ebx + 0x688]
mov dword [ebx + 0x7b0], 2
test ecx, ecx
je 0x422cb0
push 1
push dword [ebx + 0x7a4]
call fcn.0046c0b0
cmp byte [ebx + 0x7b8], 0
je 0x422cc2
push 1
mov ecx, ebx
call fcn.0046a570
mov esi, dword [ebp - 0x280]
push ecx
mov ecx, esi
call fcn.00422cf0
xor eax, eax
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.00509b84
mov esp, ebp
pop ebp
ret 0x10