Function at 0x422400
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5506f8
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 0x4231b0
mov eax, dword [esi]
cmp eax, 0x3ea
jne 0x42254b
movsd xmm0, qword [esi + 8]
lea eax, [ebp - 0x204]
mulsd xmm0, qword [0x5b0a98]
push 0x1f4
push 0
push eax
mulsd xmm0, qword [0x592598]
cvttsd2si esi, xmm0
call fcn.004b5140
mov ecx, dword [ebx + 0x6c0]
add esp, 0xc
mov eax, dword [ecx]
call dword [eax + 0xcc]
mov ecx, eax
call fcn.00454270
push eax
lea ecx, [ebp - 0x21c]
call fcn.00406560
mov dword [ebp - 4], 0
cmp dword [ebp - 0x20c], 0
jne 0x4224d9
lea ecx, [ebx + 0x798]
call fcn.00450260
comiss xmm0, dword [0x5925b8]
lea ecx, [ebp - 0x21c]
jbe 0x4224cf
push 0x58f948
jmp 0x4224d4
push 0x58f970
call fcn.00409590
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.004261a0
mov ecx, dword [ebx + 0x6c0]
add esp, 0xc
test ecx, ecx
je 0x422514
mov eax, dword [ecx]
lea edx, [ebp - 0x204]
push edx
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x422524
push esi
call fcn.0046d810
mov eax, dword [ebp - 0x208]
cmp eax, 8
jb 0x4231a2
inc eax
lea ecx, [ebp - 0x21c]
push eax
push dword [ebp - 0x21c]
call fcn.00406f30
jmp 0x4231a2
cmp eax, 0x3e9
jne 0x42266c
cmp byte [ebx + 0x7e0], 0
jne 0x4225f1
lea eax, [ebp - 0x264]
mov byte [ebx + 0x7e0], 1
push eax
mov ecx, 0x5b09e8
call fcn.0041ede0
lea esi, [ebx + 0x7c8]
push eax
mov ecx, esi
call fcn.004095e0
lea ecx, [ebp - 0x264]
call fcn.00406520
push esi
push ecx
lea ecx, [ebp - 0x24c]
call fcn.00426100
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.0041e220
push 0x58d684
xorps xmm1, xmm1
mov ecx, 0x58f83c
call fcn.004053d0
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x24c]
push fcn.004083b0
push 1
push 0x30
push eax
call fcn.0050a4a7
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.00426100
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.0041e220
push 0x58d684
xorps xmm1, xmm1
mov ecx, 0x58f994
call fcn.004053d0
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x24c]
push fcn.004083b0
push 1
push 0x30
push eax
call fcn.0050a4a7
jmp 0x4231a2
cmp eax, 0x3eb
jne 0x4226f7
lea ecx, [ebx + 0x798]
call fcn.00450260
lea eax, [ebx + 0x7c8]
movss dword [ebp - 0x284], xmm0
push eax
push ecx
lea ecx, [ebp - 0x24c]
call fcn.00426100
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.0041e220
movss xmm1, dword [ebp - 0x284]
mov ecx, 0x58f9a4
push 0x58d684
call fcn.004053d0
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x24c]
push fcn.004083b0
push 1
push 0x30
push eax
call fcn.0050a4a7
jmp 0x4231a2
cmp eax, 0x3ec
jne 0x42293d
push esi
call fcn.004239b0
push 0xffffffffffffffff
push 0x58d684
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1a4], 4
mov dword [ebp - 0x1a0], 0x93
call fcn.00453f90
push 0xffffffffffffffff
push str.NetworkTipWnd.xml
lea ecx, [ebp - 0x118]
mov dword [ebp - 4], 4
call fcn.00453f90
push str.NetworkTipWnd.xml
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 5
call fcn.00406560
mov esi, eax
push str.NetworkTipWnd.xml
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 6
call fcn.00406560
mov edi, eax
push 1
sub esp, 8
mov byte [ebp - 4], 7
mov ecx, esi
call fcn.004250f0
push eax
push 0
lea eax, [ebp - 0x264]
mov ecx, edi
push eax
call fcn.00425080
mov byte [ebp - 4], 8
cmp dword [eax + 0x14], 8
jb 0x4227a0
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x94]
call fcn.00453f90
lea ecx, [ebp - 0x264]
call fcn.00406520
lea ecx, [ebp - 0x21c]
call fcn.00406520
lea ecx, [ebp - 0x234]
call fcn.00406520
push 0
push 0
mov ecx, ebx
mov dword [ebp - 4], 9
call fcn.00494430
lea edx, [ebp - 0x1a4]
mov ecx, eax
call fcn.00453bd0
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1a4]
mov esi, eax
call fcn.0041f300
cmp esi, 1
jne 0x422824
cmp byte [ebx + 0x7b8], 0
je 0x422913
push esi
mov ecx, ebx
call fcn.0046a980
jmp 0x422913
test esi, esi
jne 0x422913
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 0x422899
lea eax, [ebp - 0x234]
mov ecx, ebx
push eax
call fcn.00423220
push eax
lea ecx, [ebp - 0x21c]
call fcn.004095e0
lea ecx, [ebp - 0x234]
call fcn.00406520
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.004204e0
cmp dword [ebx + 0x7a4], 1
jne 0x422901
lea eax, [ebp - 0x234]
mov ecx, ebx
push eax
call fcn.00423730
push eax
lea ecx, [ebp - 0x21c]
call fcn.004095e0
lea ecx, [ebp - 0x234]
call fcn.00406520
cmp dword [ebp - 0x208], 8
lea esi, [ebp - 0x21c]
mov ecx, dword [ebx + 0x6d0]
cmovae esi, dword [ebp - 0x21c]
call fcn.0046cb50
mov ecx, dword [ebx + 0x6cc]
movzx eax, al
push eax
call fcn.0046cb50
movzx eax, al
mov ecx, ebx
push eax
push esi
call fcn.004204e0
lea ecx, [ebp - 0x21c]
mov dword [ebp - 4], 0xffffffff
call fcn.00406520
mov ecx, dword [ebx + 0x688]
mov dword [ebx + 0x7b0], 2
test ecx, ecx
je 0x4231a2
push 1
push dword [ebx + 0x7a4]
call fcn.0046c4c0
jmp 0x4231a2
cmp eax, 0x7d1
jne 0x42294e
call fcn.00424070
jmp 0x4231a8
cmp eax, 0x7d2
jne 0x422ae8
movsd xmm0, qword [esi + 8]
lea ecx, [ebp - 0x234]
movaps xmm1, xmm0
movsd qword [ebp - 0x28c], xmm0
call fcn.0041edb0
mov dword [ebp - 4], 0xb
movsd xmm0, qword [ebx + 0x7a8]
addsd xmm0, qword [0x592570]
movsd xmm1, qword [0x592580]
comisd xmm0, xmm1
movsd qword [ebx + 0x7a8], xmm0
jbe 0x4229a9
movsd qword [ebx + 0x7a8], xmm1
movsd xmm2, qword [ebp - 0x28c]
ucomisd xmm2, qword [0x592558]
movsd xmm0, qword [ebx + 0x7a8]
lahf
test ah, 0x44
jp 0x4229d2
comisd xmm0, xmm2
jbe 0x4229e3
movaps xmm2, xmm0
jmp 0x4229eb
comisd xmm0, xmm2
jbe 0x4229dd
movaps xmm2, xmm0
jmp 0x4229eb
comisd xmm2, xmm0
jbe 0x4229eb
movsd qword [ebx + 0x7a8], xmm2
movsd xmm1, qword [0x592588]
lea eax, [ebp - 0x204]
subsd xmm1, qword [0x5b0a98]
push 0x1f4
push 0
push eax
mulsd xmm1, xmm2
addsd xmm1, qword [0x5b0a98]
mulsd xmm1, qword [0x592598]
cvttsd2si esi, xmm1
call fcn.004b5140
mov ecx, dword [ebx + 0x6c0]
add esp, 0xc
mov eax, dword [ecx]
call dword [eax + 0xcc]
mov ecx, eax
call fcn.00454270
push eax
lea ecx, [ebp - 0x21c]
call fcn.00406560
mov byte [ebp - 4], 0xc
cmp dword [ebp - 0x20c], 0
jne 0x422a82
lea ecx, [ebx + 0x798]
call fcn.00450260
comiss xmm0, dword [0x5925b8]
lea ecx, [ebp - 0x21c]
jbe 0x422a78
push 0x58f948
jmp 0x422a7d
push 0x58f970
call fcn.00409590
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.004261a0
mov ecx, dword [ebx + 0x6c0]
add esp, 0xc
test ecx, ecx
je 0x422abd
mov eax, dword [ecx]
lea edx, [ebp - 0x204]
push edx
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x422acd
push esi
call fcn.0046d810
lea ecx, [ebp - 0x21c]
call fcn.00406520
lea ecx, [ebp - 0x234]
call fcn.00406600
jmp 0x4231a2
cmp eax, 0x7d3
jne 0x422c98
lea ecx, [ebx + 0x798]
call fcn.00450260
lea eax, [ebx + 0x7c8]
push eax
push ecx
lea ecx, [ebp - 0x24c]
call fcn.00426100
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.0041e220
push 0x58d684
xorps xmm1, xmm1
mov ecx, 0x58f9d8
call fcn.004053d0
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x24c]
push fcn.004083b0
push 1
push 0x30
push eax
call fcn.0050a4a7
call fcn.0045a5f0
mov ecx, eax
call fcn.00454270
push eax
lea ecx, [ebp - 0x264]
call fcn.00406560
push str.resmainWndinstallPrg3.png
lea ecx, [ebp - 0x21c]
mov dword [ebp - 4], 0xe
call fcn.00406560
mov byte [ebp - 4], 0xf
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x422ba5
push 0x64
call fcn.0046d810
lea eax, [ebp - 0x21c]
push eax
lea edx, [ebp - 0x264]
lea ecx, [ebp - 0x234]
call fcn.004123e0
add esp, 4
cmp dword [eax + 0x14], 8
jb 0x422bc8
mov eax, dword [eax]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
lea ecx, [ebp - 0x234]
mov esi, eax
call fcn.00406520
test esi, esi
je 0x422c13
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x422c04
cmp dword [ebp - 0x208], 8
lea eax, [ebp - 0x21c]
cmovae eax, dword [ebp - 0x21c]
push eax
call fcn.0046d7c0
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x422c13
call fcn.00460340
push 0x1625
push dword [ebx + 0x6c8]
lea ecx, [ebx + 0x2c]
call fcn.0045a970
push 0x112c
push dword [ebx + 0x6c8]
lea ecx, [ebx + 0x2c]
call fcn.0045a970
mov ecx, dword [ebx + 0x6dc]
test ecx, ecx
je 0x422c5d
mov eax, dword [ecx]
push 0x58f3f4
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.0046c4c0
mov ecx, ebx
mov dword [ebx + 0x7b0], 3
call fcn.00423d80
lea ecx, [ebp - 0x21c]
call fcn.00406520
lea ecx, [ebp - 0x264]
call fcn.00406520
jmp 0x4231a2
cmp eax, 0x7d4
jne 0x422e41
push 0
push esi
call fcn.00423c90
lea eax, [esi + 0x10]
push eax
lea ecx, [ebp - 0x21c]
call fcn.004110d0
mov dword [ebp - 4], 0x10
cmp dword [esi + 0x20], 0
jne 0x422cd7
push 0x58fa1c
lea ecx, [ebp - 0x21c]
call fcn.00409590
push 0xffffffffffffffff
push 0x58d684
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1a4], 4
mov dword [ebp - 0x1a0], 0x93
call fcn.00453f90
push 0xffffffffffffffff
push str.MessageBox2Wnd.xml
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x18
call fcn.00453f90
push str.MessageBox2Wnd.xml
lea ecx, [ebp - 0x27c]
mov byte [ebp - 4], 0x19
call fcn.00406560
mov esi, eax
push str.MessageBox2Wnd.xml
lea ecx, [ebp - 0x264]
mov byte [ebp - 4], 0x1a
call fcn.00406560
mov edi, eax
push 1
sub esp, 8
mov byte [ebp - 4], 0x1b
mov ecx, esi
call fcn.004250f0
push eax
push 0
lea eax, [ebp - 0x234]
mov ecx, edi
push eax
call fcn.00425080
mov byte [ebp - 4], 0x1c
cmp dword [eax + 0x14], 8
jb 0x422d6c
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x94]
call fcn.00453f90
lea ecx, [ebp - 0x234]
call fcn.00406520
lea ecx, [ebp - 0x264]
call fcn.00406520
lea ecx, [ebp - 0x27c]
call fcn.00406520
mov byte [ebp - 4], 0x1d
lea eax, [ebp - 0x21c]
cmp dword [ebp - 0x208], 8
mov ecx, ebx
push 0x58f760
cmovae eax, dword [ebp - 0x21c]
push eax
call fcn.00494430
lea edx, [ebp - 0x1a4]
mov ecx, eax
call fcn.00453bd0
add esp, 8
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x1a4]
call fcn.0041f300
mov ecx, dword [ebx + 0x6ec]
mov dword [ebx + 0x7b0], 2
call fcn.0046d4a0
cmp eax, 0x46
jl 0x422e1e
mov ecx, dword [ebx + 0x6c0]
test ecx, ecx
je 0x422e0d
mov eax, dword [ecx]
push str.ck_W
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x422e1e
push 0
call fcn.0046d810
mov ecx, dword [ebx + 0x688]
test ecx, ecx
je 0x422e31
push 1
push 0
call fcn.0046c4c0
lea ecx, [ebp - 0x21c]
call fcn.00406520
jmp 0x4231a2
cmp eax, 0xbb8
jne 0x422e68
lea ecx, [ebx + 0x728]
add esi, 0x10
cmp ecx, esi
je 0x4231a2
push 0xffffffffffffffff
push 0
push esi
call fcn.004068d0
jmp 0x4231a2
cmp eax, 0xbb9
jne 0x422e77
lea ecx, [ebx + 0x6f8]
jmp 0x422e4e
cmp eax, 0xbbb
jne 0x422e86
lea ecx, [ebx + 0x710]
jmp 0x422e4e
cmp eax, 0xbbc
jne 0x422e95
lea ecx, [ebx + 0x770]
jmp 0x422e4e
cmp eax, 0xbbd
jne 0x422eac
cvttsd2si eax, qword [esi + 8]
mov dword [ebx + 0x788], eax
jmp 0x4231a8
cmp eax, 0xbbf
jne 0x422ec8
movsd xmm0, qword [esi + 8]
call fcn.0050a9e1
mov dword [ebx + 0x78c], eax
jmp 0x4231a8
cmp eax, 0xbc0
jne 0x422ee4
movsd xmm0, qword [esi + 8]
call fcn.0050a9e1
mov dword [ebx + 0x790], eax
jmp 0x4231a8
cmp eax, 0xbc1
jne 0x422ffb
push 0xffffffffffffffff
push 0x58d684
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1a4], 4
mov dword [ebp - 0x1a0], 0x93
call fcn.00453f90
push 0xffffffffffffffff
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x118]
mov dword [ebp - 4], 0x26
call fcn.00453f90
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 0x27
call fcn.00406560
mov esi, eax
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x264]
mov byte [ebp - 4], 0x28
call fcn.00406560
mov edi, eax
push 1
sub esp, 8
mov byte [ebp - 4], 0x29
mov ecx, esi
call fcn.004250f0
push eax
push 0
lea eax, [ebp - 0x234]
mov ecx, edi
push eax
call fcn.00425080
mov byte [ebp - 4], 0x2a
cmp dword [eax + 0x14], 8
jb 0x422f87
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x94]
call fcn.00453f90
lea ecx, [ebp - 0x234]
call fcn.00406520
lea ecx, [ebp - 0x264]
call fcn.00406520
lea ecx, [ebp - 0x21c]
call fcn.00406520
mov esi, dword [ebp - 0x280]
lea eax, [esi + 0x10]
mov dword [ebp - 4], 0x2b
cmp dword [eax + 0x14], 8
jb 0x422fce
mov eax, dword [eax]
push 0x58fa48
push eax
mov ecx, ebx
call fcn.00494430
lea edx, [ebp - 0x1a4]
mov ecx, eax
call fcn.00453bd0
add esp, 8
lea ecx, [ebp - 0x1a4]
call fcn.0041f300
jmp 0x4231a8
cmp eax, 0x3ee
jne 0x42300f
push 1
push esi
call fcn.00423c90
jmp 0x4231a8
cmp eax, 0x1389
je 0x4231a8
cmp eax, 0x138a
je 0x4231a8
cmp eax, 0x138b
je 0x4231a8
cmp eax, 0x138c
je 0x423042
cmp eax, 0x138d
jne 0x4231a8
push 0x58f720
lea ecx, [ebp - 0x27c]
call fcn.00406560
push 0xffffffffffffffff
mov dword [ebp - 4], 0x3a
lea ecx, [ebp - 0x460]
push 0x58d684
mov dword [ebp - 0x468], 4
mov dword [ebp - 0x464], 0x93
call fcn.00453f90
push 0xffffffffffffffff
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x3dc]
mov byte [ebp - 4], 0x3b
call fcn.00453f90
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x2d4]
mov byte [ebp - 4], 0x3c
call fcn.00406560
mov esi, eax
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x2bc]
mov byte [ebp - 4], 0x3d
call fcn.00406560
mov edi, eax
push 1
sub esp, 8
mov byte [ebp - 4], 0x3e
mov ecx, esi
call fcn.004250f0
push eax
push 0
lea eax, [ebp - 0x2a4]
mov ecx, edi
push eax
call fcn.00425080
mov byte [ebp - 4], 0x3f
cmp dword [eax + 0x14], 8
jb 0x4230ee
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x358]
call fcn.00453f90
lea ecx, [ebp - 0x2a4]
call fcn.00406520
lea ecx, [ebp - 0x2bc]
call fcn.00406520
lea ecx, [ebp - 0x2d4]
call fcn.00406520
mov byte [ebp - 4], 0x40
lea eax, [ebp - 0x27c]
cmp dword [ebp - 0x268], 8
mov ecx, ebx
push 0x58f760
cmovae eax, dword [ebp - 0x27c]
push eax
call fcn.00494430
lea edx, [ebp - 0x468]
mov ecx, eax
call fcn.00453bd0
add esp, 8
lea ecx, [ebp - 0x468]
call fcn.0041f300
lea ecx, [ebp - 0x27c]
mov dword [ebp - 4], 0xffffffff
call fcn.00406520
mov ecx, dword [ebx + 0x688]
mov dword [ebx + 0x7b0], 2
test ecx, ecx
je 0x423190
push 1
push dword [ebx + 0x7a4]
call fcn.0046c4c0
cmp byte [ebx + 0x7b8], 0
je 0x4231a2
push 1
mov ecx, ebx
call fcn.0046a980
mov esi, dword [ebp - 0x280]
push ecx
mov ecx, esi
call fcn.004231d0
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.00509f60
mov esp, ebp
pop ebp
ret 0x10