Function at 0x4209d0
Capabilities:
Check for time delay via gettickcount
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5347c8
mov eax, dword fs:[0]
push eax
sub esp, 0x45c
mov eax, dword [0x58a464]
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 0x4217a0
mov eax, dword [esi]
cmp eax, 0x3ea
jne 0x420b48
movsd xmm0, qword [esi + 8]
lea eax, [ebp - 0x204]
mulsd xmm0, qword [0x58ff68]
push 0x1f4
push 0
push eax
mulsd xmm0, qword [0x574aa8]
cvttsd2si esi, xmm0
call fcn.004ad5f0
mov ecx, dword [ebx + 0x6bc]
add esp, 0xc
mov eax, dword [ecx]
call dword [eax + 0xcc]
mov ecx, eax
call fcn.0044d1c0
push eax
lea ecx, [ebp - 0x21c]
call fcn.00406380
mov dword [ebp - 4], 0
cmp dword [ebp - 0x20c], 0
jne 0x420ad6
cmp byte [ebx + 0x794], 0
xorps xmm0, xmm0
je 0x420aae
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebx + 0x790]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x574b00]
cvtpd2ps xmm0, xmm0
divss xmm0, dword [0x574acc]
lea ecx, [ebp - 0x21c]
comiss xmm0, dword [0x574ac8]
jbe 0x420acc
push 0x570dbc
jmp 0x420ad1
push 0x570de4
call fcn.00409200
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.00422f80
mov ecx, dword [ebx + 0x6bc]
add esp, 0xc
test ecx, ecx
je 0x420b11
mov eax, dword [ecx]
lea edx, [ebp - 0x204]
push edx
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6e4]
test ecx, ecx
je 0x420b21
push esi
call fcn.00466010
mov eax, dword [ebp - 0x208]
cmp eax, 8
jb 0x421792
inc eax
lea ecx, [ebp - 0x21c]
push eax
push dword [ebp - 0x21c]
call fcn.00406d50
jmp 0x421792
cmp eax, 0x3e9
jne 0x420c69
cmp byte [ebx + 0x7d8], 0
jne 0x420bee
lea eax, [ebp - 0x264]
mov byte [ebx + 0x7d8], 1
push eax
mov ecx, 0x58feb8
call fcn.0041d9a0
lea esi, [ebx + 0x7c0]
push eax
mov ecx, esi
call fcn.00409250
lea ecx, [ebp - 0x264]
call fcn.00406340
push esi
push ecx
lea ecx, [ebp - 0x24c]
call fcn.00422ee0
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.0041cde0
push 0x56e974
xorps xmm1, xmm1
mov ecx, 0x570c98
call fcn.004051f0
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x24c]
push fcn.00408100
push 1
push 0x30
push eax
call fcn.004f09b3
mov byte [ebx + 0x794], 1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebx + 0x790], eax
lea eax, [ebx + 0x7c0]
push eax
push ecx
lea ecx, [ebp - 0x24c]
call fcn.00422ee0
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.0041cde0
push 0x56e974
xorps xmm1, xmm1
mov ecx, 0x570e08
call fcn.004051f0
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x24c]
push fcn.00408100
push 1
push 0x30
push eax
call fcn.004f09b3
jmp 0x421792
cmp eax, 0x3eb
jne 0x420cf4
lea ecx, [ebx + 0x790]
call fcn.0044b260
lea eax, [ebx + 0x7c0]
movss dword [ebp - 0x284], xmm0
push eax
push ecx
lea ecx, [ebp - 0x24c]
call fcn.00422ee0
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.0041cde0
movss xmm1, dword [ebp - 0x284]
mov ecx, 0x570e18
push 0x56e974
call fcn.004051f0
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x24c]
push fcn.00408100
push 1
push 0x30
push eax
call fcn.004f09b3
jmp 0x421792
cmp eax, 0x3ec
jne 0x420f3a
push esi
call fcn.00421f70
push 0xffffffffffffffff
push 0x56e974
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1a4], 4
mov dword [ebp - 0x1a0], 0x93
call fcn.0044c800
push 0xffffffffffffffff
push str.NetworkTipWnd.xml
lea ecx, [ebp - 0x118]
mov dword [ebp - 4], 4
call fcn.0044c800
push str.NetworkTipWnd.xml
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 5
call fcn.00406380
mov esi, eax
push str.NetworkTipWnd.xml
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 6
call fcn.00406380
mov edi, eax
push 1
sub esp, 8
mov byte [ebp - 4], 7
mov ecx, esi
call fcn.00422b50
push eax
push 0
lea eax, [ebp - 0x264]
mov ecx, edi
push eax
call fcn.00422ae0
mov byte [ebp - 4], 8
cmp dword [eax + 0x14], 8
jb 0x420d9d
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x94]
call fcn.0044c800
lea ecx, [ebp - 0x264]
call fcn.00406340
lea ecx, [ebp - 0x21c]
call fcn.00406340
lea ecx, [ebp - 0x234]
call fcn.00406340
push 0
push 0
mov ecx, ebx
mov dword [ebp - 4], 9
call fcn.0048cba0
lea edx, [ebp - 0x1a4]
mov ecx, eax
call fcn.0044c440
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1a4]
mov esi, eax
call fcn.0041deb0
cmp esi, 1
jne 0x420e21
cmp byte [ebx + 0x7b0], 0
je 0x420f10
push esi
mov ecx, ebx
call fcn.004631d0
jmp 0x420f10
test esi, esi
jne 0x420f10
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 + 0x79c], eax
jne 0x420e96
lea eax, [ebp - 0x234]
mov ecx, ebx
push eax
call fcn.00421810
push eax
lea ecx, [ebp - 0x21c]
call fcn.00409250
lea ecx, [ebp - 0x234]
call fcn.00406340
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.0041eb00
cmp dword [ebx + 0x79c], 1
jne 0x420efe
lea eax, [ebp - 0x234]
mov ecx, ebx
push eax
call fcn.00421d20
push eax
lea ecx, [ebp - 0x21c]
call fcn.00409250
lea ecx, [ebp - 0x234]
call fcn.00406340
cmp dword [ebp - 0x208], 8
lea esi, [ebp - 0x21c]
mov ecx, dword [ebx + 0x6cc]
cmovae esi, dword [ebp - 0x21c]
call fcn.00465350
mov ecx, dword [ebx + 0x6c8]
movzx eax, al
push eax
call fcn.00465350
movzx eax, al
mov ecx, ebx
push eax
push esi
call fcn.0041eb00
lea ecx, [ebp - 0x21c]
mov dword [ebp - 4], 0xffffffff
call fcn.00406340
mov ecx, dword [ebx + 0x688]
mov dword [ebx + 0x7a8], 2
test ecx, ecx
je 0x421792
push 1
push dword [ebx + 0x79c]
call fcn.00464d00
jmp 0x421792
cmp eax, 0x7d1
jne 0x420f4b
call fcn.00422630
jmp 0x421798
cmp eax, 0x7d2
jne 0x4210e5
movsd xmm0, qword [esi + 8]
lea ecx, [ebp - 0x234]
movaps xmm1, xmm0
movsd qword [ebp - 0x28c], xmm0
call fcn.0041d970
mov dword [ebp - 4], 0xb
movsd xmm0, qword [ebx + 0x7a0]
addsd xmm0, qword [0x574a80]
movsd xmm1, qword [0x574a90]
comisd xmm0, xmm1
movsd qword [ebx + 0x7a0], xmm0
jbe 0x420fa6
movsd qword [ebx + 0x7a0], xmm1
movsd xmm2, qword [ebp - 0x28c]
ucomisd xmm2, qword [0x574a68]
movsd xmm0, qword [ebx + 0x7a0]
lahf
test ah, 0x44
jp 0x420fcf
comisd xmm0, xmm2
jbe 0x420fe0
movaps xmm2, xmm0
jmp 0x420fe8
comisd xmm0, xmm2
jbe 0x420fda
movaps xmm2, xmm0
jmp 0x420fe8
comisd xmm2, xmm0
jbe 0x420fe8
movsd qword [ebx + 0x7a0], xmm2
movsd xmm1, qword [0x574a98]
lea eax, [ebp - 0x204]
subsd xmm1, qword [0x58ff68]
push 0x1f4
push 0
push eax
mulsd xmm1, xmm2
addsd xmm1, qword [0x58ff68]
mulsd xmm1, qword [0x574aa8]
cvttsd2si esi, xmm1
call fcn.004ad5f0
mov ecx, dword [ebx + 0x6bc]
add esp, 0xc
mov eax, dword [ecx]
call dword [eax + 0xcc]
mov ecx, eax
call fcn.0044d1c0
push eax
lea ecx, [ebp - 0x21c]
call fcn.00406380
mov byte [ebp - 4], 0xc
cmp dword [ebp - 0x20c], 0
jne 0x42107f
lea ecx, [ebx + 0x790]
call fcn.0044b260
comiss xmm0, dword [0x574ac8]
lea ecx, [ebp - 0x21c]
jbe 0x421075
push 0x570dbc
jmp 0x42107a
push 0x570de4
call fcn.00409200
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.00422f80
mov ecx, dword [ebx + 0x6bc]
add esp, 0xc
test ecx, ecx
je 0x4210ba
mov eax, dword [ecx]
lea edx, [ebp - 0x204]
push edx
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6e4]
test ecx, ecx
je 0x4210ca
push esi
call fcn.00466010
lea ecx, [ebp - 0x21c]
call fcn.00406340
lea ecx, [ebp - 0x234]
call fcn.00406420
jmp 0x421792
cmp eax, 0x7d3
jne 0x421290
lea ecx, [ebx + 0x790]
call fcn.0044b260
lea eax, [ebx + 0x7c0]
push eax
push ecx
lea ecx, [ebp - 0x24c]
call fcn.00422ee0
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.0041cde0
push 0x56e974
xorps xmm1, xmm1
mov ecx, 0x570e4c
call fcn.004051f0
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x24c]
push fcn.00408100
push 1
push 0x30
push eax
call fcn.004f09b3
call fcn.00452e30
mov ecx, eax
call fcn.0044d1c0
push eax
lea ecx, [ebp - 0x264]
call fcn.00406380
push str.resmainWndinstallPrg3.png
lea ecx, [ebp - 0x21c]
mov dword [ebp - 4], 0xe
call fcn.00406380
mov byte [ebp - 4], 0xf
mov ecx, dword [ebx + 0x6e4]
test ecx, ecx
je 0x4211a2
push 0x64
call fcn.00466010
lea eax, [ebp - 0x21c]
push eax
lea edx, [ebp - 0x264]
lea ecx, [ebp - 0x234]
call fcn.00422fa0
add esp, 4
cmp dword [eax + 0x14], 8
jb 0x4211c5
mov eax, dword [eax]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
lea ecx, [ebp - 0x234]
mov esi, eax
call fcn.00406340
test esi, esi
je 0x421210
mov ecx, dword [ebx + 0x6e4]
test ecx, ecx
je 0x421201
cmp dword [ebp - 0x208], 8
lea eax, [ebp - 0x21c]
cmovae eax, dword [ebp - 0x21c]
push eax
call fcn.00465fc0
mov ecx, dword [ebx + 0x6e4]
test ecx, ecx
je 0x421210
call fcn.00458b80
push 0x1625
push dword [ebx + 0x6c4]
lea ecx, [ebx + 0x2c]
call fcn.004531b0
push 0x112c
push dword [ebx + 0x6c4]
lea ecx, [ebx + 0x2c]
call fcn.004531b0
mov ecx, dword [ebx + 0x6d8]
test ecx, ecx
je 0x42125a
mov eax, dword [ecx]
push 0x570798
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6d8]
push 1
mov eax, dword [ecx]
call dword [eax + 0xe0]
mov ecx, dword [ebx + 0x688]
push 1
push 3
call fcn.00464d00
mov ecx, ebx
mov dword [ebx + 0x7a8], 3
call fcn.00422340
lea ecx, [ebp - 0x21c]
call fcn.00406340
lea ecx, [ebp - 0x264]
jmp 0x42178d
cmp eax, 0x7d4
jne 0x421434
push 0
push esi
call fcn.00422250
lea eax, [esi + 0x10]
push eax
lea ecx, [ebp - 0x21c]
call fcn.00410ad0
mov dword [ebp - 4], 0x10
cmp dword [esi + 0x20], 0
jne 0x4212cf
push 0x570e90
lea ecx, [ebp - 0x21c]
call fcn.00409200
push 0xffffffffffffffff
push 0x56e974
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1a4], 4
mov dword [ebp - 0x1a0], 0x93
call fcn.0044c800
push 0xffffffffffffffff
push str.MessageBox2Wnd.xml
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x11
call fcn.0044c800
push str.MessageBox2Wnd.xml
lea ecx, [ebp - 0x27c]
mov byte [ebp - 4], 0x12
call fcn.00406380
mov esi, eax
push str.MessageBox2Wnd.xml
lea ecx, [ebp - 0x264]
mov byte [ebp - 4], 0x13
call fcn.00406380
mov edi, eax
push 1
sub esp, 8
mov byte [ebp - 4], 0x14
mov ecx, esi
call fcn.00422b50
push eax
push 0
lea eax, [ebp - 0x234]
mov ecx, edi
push eax
call fcn.00422ae0
mov byte [ebp - 4], 0x15
cmp dword [eax + 0x14], 8
jb 0x421364
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x94]
call fcn.0044c800
lea ecx, [ebp - 0x234]
call fcn.00406340
lea ecx, [ebp - 0x264]
call fcn.00406340
lea ecx, [ebp - 0x27c]
call fcn.00406340
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x21c]
cmp dword [ebp - 0x208], 8
mov ecx, ebx
push 0x570bec
cmovae eax, dword [ebp - 0x21c]
push eax
call fcn.0048cba0
lea edx, [ebp - 0x1a4]
mov ecx, eax
call fcn.0044c440
add esp, 8
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x1a4]
call fcn.0041deb0
mov ecx, dword [ebx + 0x6e4]
mov dword [ebx + 0x7a8], 2
call fcn.00465ca0
cmp eax, 0x46
jl 0x421416
mov ecx, dword [ebx + 0x6bc]
test ecx, ecx
je 0x421405
mov eax, dword [ecx]
push str.ck_W
call dword [eax + 0x3c]
mov ecx, dword [ebx + 0x6e4]
test ecx, ecx
je 0x421416
push 0
call fcn.00466010
mov ecx, dword [ebx + 0x688]
test ecx, ecx
je 0x421429
push 1
push 0
call fcn.00464d00
lea ecx, [ebp - 0x21c]
jmp 0x42178d
cmp eax, 0xbb8
jne 0x421443
lea ecx, [ebx + 0x720]
jmp 0x42146e
cmp eax, 0xbb9
jne 0x421452
lea ecx, [ebx + 0x6f0]
jmp 0x42146e
cmp eax, 0xbbb
jne 0x421461
lea ecx, [ebx + 0x708]
jmp 0x42146e
cmp eax, 0xbbc
jne 0x421488
lea ecx, [ebx + 0x768]
add esi, 0x10
cmp ecx, esi
je 0x421792
push 0xffffffffffffffff
push 0
push esi
call fcn.004066f0
jmp 0x421792
cmp eax, 0xbbd
jne 0x42149f
cvttsd2si eax, qword [esi + 8]
mov dword [ebx + 0x780], eax
jmp 0x421798
cmp eax, 0xbbf
jne 0x4214bb
movsd xmm0, qword [esi + 8]
call fcn.004f0ee1
mov dword [ebx + 0x784], eax
jmp 0x421798
cmp eax, 0xbc0
jne 0x4214d7
movsd xmm0, qword [esi + 8]
call fcn.004f0ee1
mov dword [ebx + 0x788], eax
jmp 0x421798
cmp eax, 0xbc1
jne 0x4215ee
push 0xffffffffffffffff
push 0x56e974
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1a4], 4
mov dword [ebp - 0x1a0], 0x93
call fcn.0044c800
push 0xffffffffffffffff
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x118]
mov dword [ebp - 4], 0x17
call fcn.0044c800
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 0x18
call fcn.00406380
mov esi, eax
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x264]
mov byte [ebp - 4], 0x19
call fcn.00406380
mov edi, eax
push 1
sub esp, 8
mov byte [ebp - 4], 0x1a
mov ecx, esi
call fcn.00422b50
push eax
push 0
lea eax, [ebp - 0x234]
mov ecx, edi
push eax
call fcn.00422ae0
mov byte [ebp - 4], 0x1b
cmp dword [eax + 0x14], 8
jb 0x42157a
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x94]
call fcn.0044c800
lea ecx, [ebp - 0x234]
call fcn.00406340
lea ecx, [ebp - 0x264]
call fcn.00406340
lea ecx, [ebp - 0x21c]
call fcn.00406340
mov esi, dword [ebp - 0x280]
lea eax, [esi + 0x10]
mov dword [ebp - 4], 0x1c
cmp dword [eax + 0x14], 8
jb 0x4215c1
mov eax, dword [eax]
push 0x570ebc
push eax
mov ecx, ebx
call fcn.0048cba0
lea edx, [ebp - 0x1a4]
mov ecx, eax
call fcn.0044c440
add esp, 8
lea ecx, [ebp - 0x1a4]
call fcn.0041deb0
jmp 0x421798
cmp eax, 0x3ee
jne 0x421602
push 1
push esi
call fcn.00422250
jmp 0x421798
cmp eax, 0x1389
je 0x421798
cmp eax, 0x138a
je 0x421798
cmp eax, 0x138b
je 0x421798
cmp eax, 0x138c
je 0x421635
cmp eax, 0x138d
jne 0x421798
push 0x570bac
lea ecx, [ebp - 0x27c]
call fcn.00406380
push 0xffffffffffffffff
mov dword [ebp - 4], 0x1d
lea ecx, [ebp - 0x460]
push 0x56e974
mov dword [ebp - 0x468], 4
mov dword [ebp - 0x464], 0x93
call fcn.0044c800
push 0xffffffffffffffff
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x3dc]
mov byte [ebp - 4], 0x1e
call fcn.0044c800
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x2d4]
mov byte [ebp - 4], 0x1f
call fcn.00406380
mov esi, eax
push str.MessageBox1Wnd.xml
lea ecx, [ebp - 0x2bc]
mov byte [ebp - 4], 0x20
call fcn.00406380
mov edi, eax
push 1
sub esp, 8
mov byte [ebp - 4], 0x21
mov ecx, esi
call fcn.00422b50
push eax
push 0
lea eax, [ebp - 0x2a4]
mov ecx, edi
push eax
call fcn.00422ae0
mov byte [ebp - 4], 0x22
cmp dword [eax + 0x14], 8
jb 0x4216e1
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x358]
call fcn.0044c800
lea ecx, [ebp - 0x2a4]
call fcn.00406340
lea ecx, [ebp - 0x2bc]
call fcn.00406340
lea ecx, [ebp - 0x2d4]
call fcn.00406340
mov byte [ebp - 4], 0x23
lea eax, [ebp - 0x27c]
cmp dword [ebp - 0x268], 8
mov ecx, ebx
push 0x570bec
cmovae eax, dword [ebp - 0x27c]
push eax
call fcn.0048cba0
lea edx, [ebp - 0x468]
mov ecx, eax
call fcn.0044c440
add esp, 8
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x468]
call fcn.0041deb0
mov ecx, dword [ebx + 0x688]
mov dword [ebx + 0x7a8], 2
test ecx, ecx
je 0x421775
push 1
push dword [ebx + 0x79c]
call fcn.00464d00
cmp byte [ebx + 0x7b0], 0
je 0x421787
push 1
mov ecx, ebx
call fcn.004631d0
lea ecx, [ebp - 0x27c]
call fcn.00406340
mov esi, dword [ebp - 0x280]
push ecx
mov ecx, esi
call fcn.004217c0
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.004f0482
mov esp, ebp
pop ebp
ret 0x10