Function at 0x41f040
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x54ce88
mov eax, dword fs:[0]
push eax
sub esp, 0x45c
mov eax, dword [0x5a7464]
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 0x41fdf0
mov eax, dword [esi]
cmp eax, 0x3ea
jne 0x41f18b
movsd xmm0, qword [esi + 8]
lea eax, [ebp - 0x204]
mulsd xmm0, qword [0x5adab0]
push 0x1f4
push 0
push eax
mulsd xmm0, qword [0x58f3b0]
cvttsd2si esi, xmm0
call fcn.004b1e50
mov ecx, dword [ebx + 0x6c0]
add esp, 0xc
mov eax, dword [ecx]
call dword [eax + 0xcc]
mov ecx, eax
call fcn.00450fa0
push eax
lea ecx, [ebp - 0x21c]
call fcn.00406560
mov dword [ebp - 4], 0
cmp dword [ebp - 0x20c], 0
jne 0x41f119
lea ecx, [ebx + 0x798]
call fcn.0044cfa0
comiss xmm0, dword [0x58f3c8]
lea ecx, [ebp - 0x21c]
jbe 0x41f10f
push 0x58c75c
jmp 0x41f114
push 0x58c784
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.00422ec0
mov ecx, dword [ebx + 0x6c0]
add esp, 0xc
test ecx, ecx
je 0x41f154
mov eax, dword [ecx]
lea edx, [ebp - 0x204]
push edx
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x41f164
push esi
call fcn.0046a4c0
mov eax, dword [ebp - 0x208]
cmp eax, 8
jb 0x41fde2
inc eax
lea ecx, [ebp - 0x21c]
push eax
push dword [ebp - 0x21c]
call fcn.00406f30
jmp 0x41fde2
cmp eax, 0x3e9
jne 0x41f2ac
cmp byte [ebx + 0x7e0], 0
jne 0x41f231
lea eax, [ebp - 0x264]
mov byte [ebx + 0x7e0], 1
push eax
mov ecx, 0x5ada00
call fcn.0041bd60
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.00422e20
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.0041b1d0
push 0x58a674
xorps xmm1, xmm1
mov ecx, 0x58c650
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.00507167
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.00422e20
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.0041b1d0
push 0x58a674
xorps xmm1, xmm1
mov ecx, 0x58c7a8
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.00507167
jmp 0x41fde2
cmp eax, 0x3eb
jne 0x41f337
lea ecx, [ebx + 0x798]
call fcn.0044cfa0
lea eax, [ebx + 0x7c8]
movss dword [ebp - 0x284], xmm0
push eax
push ecx
lea ecx, [ebp - 0x24c]
call fcn.00422e20
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.0041b1d0
movss xmm1, dword [ebp - 0x284]
mov ecx, 0x58c7b8
push 0x58a674
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.00507167
jmp 0x41fde2
cmp eax, 0x3ec
jne 0x41f57d
push esi
call fcn.004205f0
push 0xffffffffffffffff
push 0x58a674
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1a4], 4
mov dword [ebp - 0x1a0], 0x93
call fcn.00450cc0
push 0xffffffffffffffff
push str.NetworkTipWnd.xml
lea ecx, [ebp - 0x118]
mov dword [ebp - 4], 4
call fcn.00450cc0
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.00421d30
push eax
push 0
lea eax, [ebp - 0x264]
mov ecx, edi
push eax
call fcn.00421cc0
mov byte [ebp - 4], 8
cmp dword [eax + 0x14], 8
jb 0x41f3e0
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x94]
call fcn.00450cc0
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.00467550
lea edx, [ebp - 0x1a4]
mov ecx, eax
call fcn.00450900
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1a4]
mov esi, eax
call fcn.0041c280
cmp esi, 1
jne 0x41f464
cmp byte [ebx + 0x7b8], 0
je 0x41f553
push esi
mov ecx, ebx
call fcn.004676a0
jmp 0x41f553
test esi, esi
jne 0x41f553
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 0x41f4d9
lea eax, [ebp - 0x234]
mov ecx, ebx
push eax
call fcn.0041fe60
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.0041d120
cmp dword [ebx + 0x7a4], 1
jne 0x41f541
lea eax, [ebp - 0x234]
mov ecx, ebx
push eax
call fcn.00420370
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.00469800
mov ecx, dword [ebx + 0x6cc]
movzx eax, al
push eax
call fcn.00469800
movzx eax, al
mov ecx, ebx
push eax
push esi
call fcn.0041d120
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 0x41fde2
push 1
push dword [ebx + 0x7a4]
call fcn.004691e0
jmp 0x41fde2
cmp eax, 0x7d1
jne 0x41f58e
call fcn.00420cb0
jmp 0x41fde8
cmp eax, 0x7d2
jne 0x41f728
movsd xmm0, qword [esi + 8]
lea ecx, [ebp - 0x234]
movaps xmm1, xmm0
movsd qword [ebp - 0x28c], xmm0
call fcn.0041bd30
mov dword [ebp - 4], 0xb
movsd xmm0, qword [ebx + 0x7a8]
addsd xmm0, qword [str.333333]
movsd xmm1, qword [0x58f398]
comisd xmm0, xmm1
movsd qword [ebx + 0x7a8], xmm0
jbe 0x41f5e9
movsd qword [ebx + 0x7a8], xmm1
movsd xmm2, qword [ebp - 0x28c]
ucomisd xmm2, qword [0x58f380]
movsd xmm0, qword [ebx + 0x7a8]
lahf
test ah, 0x44
jp 0x41f612
comisd xmm0, xmm2
jbe 0x41f623
movaps xmm2, xmm0
jmp 0x41f62b
comisd xmm0, xmm2
jbe 0x41f61d
movaps xmm2, xmm0
jmp 0x41f62b
comisd xmm2, xmm0
jbe 0x41f62b
movsd qword [ebx + 0x7a8], xmm2
movsd xmm1, qword [0x58f3a0]
lea eax, [ebp - 0x204]
subsd xmm1, qword [0x5adab0]
push 0x1f4
push 0
push eax
mulsd xmm1, xmm2
addsd xmm1, qword [0x5adab0]
mulsd xmm1, qword [0x58f3b0]
cvttsd2si esi, xmm1
call fcn.004b1e50
mov ecx, dword [ebx + 0x6c0]
add esp, 0xc
mov eax, dword [ecx]
call dword [eax + 0xcc]
mov ecx, eax
call fcn.00450fa0
push eax
lea ecx, [ebp - 0x21c]
call fcn.00406560
mov byte [ebp - 4], 0xc
cmp dword [ebp - 0x20c], 0
jne 0x41f6c2
lea ecx, [ebx + 0x798]
call fcn.0044cfa0
comiss xmm0, dword [0x58f3c8]
lea ecx, [ebp - 0x21c]
jbe 0x41f6b8
push 0x58c75c
jmp 0x41f6bd
push 0x58c784
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.00422ec0
mov ecx, dword [ebx + 0x6c0]
add esp, 0xc
test ecx, ecx
je 0x41f6fd
mov eax, dword [ecx]
lea edx, [ebp - 0x204]
push edx
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x41f70d
push esi
call fcn.0046a4c0
lea ecx, [ebp - 0x21c]
call fcn.00406520
lea ecx, [ebp - 0x234]
call fcn.00406600
jmp 0x41fde2
cmp eax, 0x7d3
jne 0x41f8d8
lea ecx, [ebx + 0x798]
call fcn.0044cfa0
lea eax, [ebx + 0x7c8]
push eax
push ecx
lea ecx, [ebp - 0x24c]
call fcn.00422e20
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.0041b1d0
push 0x58a674
xorps xmm1, xmm1
mov ecx, 0x58c7ec
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.00507167
call fcn.00457300
mov ecx, eax
call fcn.00450fa0
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 0x41f7e5
push 0x64
call fcn.0046a4c0
lea eax, [ebp - 0x21c]
push eax
lea edx, [ebp - 0x264]
lea ecx, [ebp - 0x234]
call fcn.00422d40
add esp, 4
cmp dword [eax + 0x14], 8
jb 0x41f808
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 0x41f853
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x41f844
cmp dword [ebp - 0x208], 8
lea eax, [ebp - 0x21c]
cmovae eax, dword [ebp - 0x21c]
push eax
call fcn.0046a470
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x41f853
call fcn.0045d060
push 0x1625
push dword [ebx + 0x6c8]
lea ecx, [ebx + 0x2c]
call fcn.00457680
push 0x112c
push dword [ebx + 0x6c8]
lea ecx, [ebx + 0x2c]
call fcn.00457680
mov ecx, dword [ebx + 0x6dc]
test ecx, ecx
je 0x41f89d
mov eax, dword [ecx]
push 0x58c17c
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.004691e0
mov ecx, ebx
mov dword [ebx + 0x7b0], 3
call fcn.004209c0
lea ecx, [ebp - 0x21c]
call fcn.00406520
lea ecx, [ebp - 0x264]
call fcn.00406520
jmp 0x41fde2
cmp eax, 0x7d4
jne 0x41fa81
push 0
push esi
call fcn.004208d0
lea eax, [esi + 0x10]
push eax
lea ecx, [ebp - 0x21c]
call fcn.00410f00
mov dword [ebp - 4], 0x10
cmp dword [esi + 0x20], 0
jne 0x41f917
push 0x58c830
lea ecx, [ebp - 0x21c]
call fcn.00409590
push 0xffffffffffffffff
push 0x58a674
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1a4], 4
mov dword [ebp - 0x1a0], 0x93
call fcn.00450cc0
push 0xffffffffffffffff
push str.MessageBox2Wnd.xml
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x18
call fcn.00450cc0
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.00421d30
push eax
push 0
lea eax, [ebp - 0x234]
mov ecx, edi
push eax
call fcn.00421cc0
mov byte [ebp - 4], 0x1c
cmp dword [eax + 0x14], 8
jb 0x41f9ac
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x94]
call fcn.00450cc0
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 0x58c530
cmovae eax, dword [ebp - 0x21c]
push eax
call fcn.00467550
lea edx, [ebp - 0x1a4]
mov ecx, eax
call fcn.00450900
add esp, 8
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x1a4]
call fcn.0041c280
mov ecx, dword [ebx + 0x6ec]
mov dword [ebx + 0x7b0], 2
call fcn.0046a150
cmp eax, 0x46
jl 0x41fa5e
mov ecx, dword [ebx + 0x6c0]
test ecx, ecx
je 0x41fa4d
mov eax, dword [ecx]
push str.ck_W
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6ec]
test ecx, ecx
je 0x41fa5e
push 0
call fcn.0046a4c0
mov ecx, dword [ebx + 0x688]
test ecx, ecx
je 0x41fa71
push 1
push 0
call fcn.004691e0
lea ecx, [ebp - 0x21c]
call fcn.00406520
jmp 0x41fde2
cmp eax, 0xbb8
jne 0x41faa8
lea ecx, [ebx + 0x728]
add esi, 0x10
cmp ecx, esi
je 0x41fde2
push 0xffffffffffffffff
push 0
push esi
call fcn.004068d0
jmp 0x41fde2
cmp eax, 0xbb9
jne 0x41fab7
lea ecx, [ebx + 0x6f8]
jmp 0x41fa8e
cmp eax, 0xbbb
jne 0x41fac6
lea ecx, [ebx + 0x710]
jmp 0x41fa8e
cmp eax, 0xbbc
jne 0x41fad5
lea ecx, [ebx + 0x770]
jmp 0x41fa8e
cmp eax, 0xbbd
jne 0x41faec
cvttsd2si eax, qword [esi + 8]
mov dword [ebx + 0x788], eax
jmp 0x41fde8
cmp eax, 0xbbf
jne 0x41fb08
movsd xmm0, qword [esi + 8]
call fcn.005076a1
mov dword [ebx + 0x78c], eax
jmp 0x41fde8
cmp eax, 0xbc0
jne 0x41fb24
movsd xmm0, qword [esi + 8]
call fcn.005076a1
mov dword [ebx + 0x790], eax
jmp 0x41fde8
cmp eax, 0xbc1
jne 0x41fc3b
push 0xffffffffffffffff
push 0x58a674
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1a4], 4
mov dword [ebp - 0x1a0], 0x93
call fcn.00450cc0
push 0xffffffffffffffff
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x118]
mov dword [ebp - 4], 0x26
call fcn.00450cc0
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.00421d30
push eax
push 0
lea eax, [ebp - 0x234]
mov ecx, edi
push eax
call fcn.00421cc0
mov byte [ebp - 4], 0x2a
cmp dword [eax + 0x14], 8
jb 0x41fbc7
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x94]
call fcn.00450cc0
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 0x41fc0e
mov eax, dword [eax]
push 0x58c85c
push eax
mov ecx, ebx
call fcn.00467550
lea edx, [ebp - 0x1a4]
mov ecx, eax
call fcn.00450900
add esp, 8
lea ecx, [ebp - 0x1a4]
call fcn.0041c280
jmp 0x41fde8
cmp eax, 0x3ee
jne 0x41fc4f
push 1
push esi
call fcn.004208d0
jmp 0x41fde8
cmp eax, 0x1389
je 0x41fde8
cmp eax, 0x138a
je 0x41fde8
cmp eax, 0x138b
je 0x41fde8
cmp eax, 0x138c
je 0x41fc82
cmp eax, 0x138d
jne 0x41fde8
push 0x58c4f4
lea ecx, [ebp - 0x27c]
call fcn.00406560
push 0xffffffffffffffff
mov dword [ebp - 4], 0x3a
lea ecx, [ebp - 0x460]
push 0x58a674
mov dword [ebp - 0x468], 4
mov dword [ebp - 0x464], 0x93
call fcn.00450cc0
push 0xffffffffffffffff
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x3dc]
mov byte [ebp - 4], 0x3b
call fcn.00450cc0
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.00421d30
push eax
push 0
lea eax, [ebp - 0x2a4]
mov ecx, edi
push eax
call fcn.00421cc0
mov byte [ebp - 4], 0x3f
cmp dword [eax + 0x14], 8
jb 0x41fd2e
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x358]
call fcn.00450cc0
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 0x58c530
cmovae eax, dword [ebp - 0x27c]
push eax
call fcn.00467550
lea edx, [ebp - 0x468]
mov ecx, eax
call fcn.00450900
add esp, 8
lea ecx, [ebp - 0x468]
call fcn.0041c280
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 0x41fdd0
push 1
push dword [ebx + 0x7a4]
call fcn.004691e0
cmp byte [ebx + 0x7b8], 0
je 0x41fde2
push 1
mov ecx, ebx
call fcn.004676a0
mov esi, dword [ebp - 0x280]
push ecx
mov ecx, esi
call fcn.0041fe10
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.00506c20
mov esp, ebp
pop ebp
ret 0x10