Function at 0x40dd8b
Capabilities:
Check for time delay via gettickcount
Get common file path

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1268
call fcn.0050d9b0
mov eax, dword [0x5c2460]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
push esi
push edi
mov edi, ecx
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x1260], ecx
mov eax, dword [edi + 0x26d8]
mov ebx, dword [eax + ecx*4]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [edi + 0x26cc]
xor esi, esi
mov dword [edi + 0x26d0], eax
xor ecx, ecx
mov eax, dword [ebx + 0x20]
inc esi
mov dword [ebx + 0x2c], ecx
cmp dword [eax + 4], esi
je 0x40e0c3
cmp dword [ebx + 0x1c], ecx
je 0x40dded
mov ecx, ebx
call fcn.0040f57d
jmp 0x40ddef
mov eax, ecx
mov dword [edi + 0x26c8], eax
mov ecx, dword [ebx + 0x20]
test ecx, ecx
je 0x40de02
mov dword [ecx + 0x2450], eax
cmp dword [edi + 0x26c8], 0xc8
jne 0x40df96
push ebx
mov ecx, edi
call fcn.0041025f
push ebx
mov ecx, edi
call fcn.0040f47c
push ebx
mov ecx, edi
call fcn.004102cf
push ebx
mov ecx, edi
call fcn.0040f5b7
push ebx
mov ecx, edi
call fcn.0040f434
mov eax, dword [ebx + 0x38]
mov edx, dword [ebx + 0x3c]
cmp dword [edi + 0x5d100], eax
jne 0x40df96
cmp dword [edi + 0x5d104], edx
jne 0x40df96
cmp dword [edi + 0x2690], 0
je 0x40de6b
xor eax, eax
cmp dword [ebx + 0x30], esi
sete al
jmp 0x40de6d
mov eax, esi
test eax, eax
je 0x40df96
mov ecx, dword [edi + 0x5d108]
mov eax, dword [edi + 0x5d10c]
test ecx, ecx
jne 0x40de89
test eax, eax
je 0x40de9a
cmp ecx, dword [ebx + 0x38]
jne 0x40df6d
cmp eax, edx
jne 0x40df6d
mov eax, dword [ebx + 0x30]
mov dword [edi + 0x26f0], eax
cmp dword [ebx + 0x1c], 0
je 0x40deb2
mov ecx, ebx
call fcn.0040f634
jmp 0x40deb4
xor eax, eax
test eax, eax
je 0x40e125
and dword [edi + 0x247c], 0
or eax, 0xffffffff
and dword [edi + 0x26f0], 0
mov dword [edi + 0x2690], esi
lea esi, [edi + 0x5d120]
and dword [ebx + 0x30], 0
push esi
mov dword [edi + 0x5d100], eax
mov dword [edi + 0x5d104], eax
push 0x53fe20
mov dword [ebx + 0x38], eax
mov dword [ebx + 0x3c], eax
lea eax, [edi + 0x5d328]
push 0x103
push eax
call fcn.0040acc0
push 0x208
push 0
push esi
call fcn.005091d0
mov ax, word [0x53fc30]
add esp, 0x1c
mov word [ebp - 0x214], ax
lea eax, [ebp - 0x212]
push 0x206
push 0
push eax
call fcn.005091d0
add esp, 0xc
lea eax, [ebp - 0x214]
push eax
push 0x103
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
push 0x54002c
lea eax, [ebp - 0x214]
push eax
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
xor esi, esi
inc esi
jmp 0x40e125
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x40df7a
mov dword [eax + 0x244c], esi
mov ebx, dword [ebp - 0x1260]
mov ecx, edi
push ebx
call fcn.0040ead4
push 0
mov ecx, edi
call fcn.0040d656
jmp 0x40e2df
xor edx, edx
cmp dword [edi + 0x2690], edx
je 0x40dfc1
mov dword [ebx + 0x28], edx
mov ebx, dword [ebp - 0x1260]
mov ecx, edi
push esi
push ebx
call fcn.0040efb2
test eax, eax
je 0x40e2d5
mov eax, esi
jmp 0x40e2df
mov eax, dword [edi + 0x26c8]
cmp eax, 0x12e
jne 0x40e0ad
mov ax, word [0x53fc30]
push 0x1046
mov word [ebp - 0x125c], ax
lea eax, [ebp - 0x125a]
push edx
push eax
call fcn.005091d0
add esp, 0xc
cmp dword [ebx + 0x1c], 0
je 0x40e2cf
and dword [ebp - 0x1268], 0
lea eax, [ebp - 0x1268]
push eax
lea eax, [ebp - 0x1264]
mov dword [ebp - 0x1264], 0x1047
push eax
lea eax, [ebp - 0x125c]
push eax
push 0x21
push dword [ebx + 0x1c]
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x40e2cf
mov edx, dword [ebx + 0x20]
lea ecx, [ebp - 0x125c]
push 0
call fcn.0040cdba
pop ecx
test eax, eax
je 0x40e2cf
cmp dword [ebx + 0x24], 0
jne 0x40e089
push 0x1048
lea esi, [edi + 0x5f5c0]
push 0
push esi
call fcn.005091d0
add esp, 0xc
lea eax, [ebp - 0x125c]
push eax
push 0x53fe20
push 0x823
push esi
call fcn.0040aca1
xor esi, esi
add esp, 0x10
inc esi
push 0
mov ecx, edi
call fcn.0040d656
mov ebx, dword [ebp - 0x1260]
test eax, eax
je 0x40e2d5
push ebx
mov ecx, edi
call fcn.0040ead4
jmp 0x40dfba
cmp eax, 0x194
jne 0x40dfa0
mov dword [edi + 0x2470], esi
jmp 0x40df6d
cmp dword [ebx], ecx
jne 0x40e29b
mov eax, dword [ebx + 4]
test eax, eax
je 0x40e29b
push ebx
mov ecx, edi
mov dword [ebx + 0x1c], eax
call fcn.0040f47c
mov eax, dword [edi + 0x5d100]
cmp eax, dword [ebx + 0x38]
jne 0x40e2c6
mov eax, dword [edi + 0x5d104]
cmp eax, dword [ebx + 0x3c]
jne 0x40e2c6
cmp dword [edi + 0x2690], 0
je 0x40e112
xor eax, eax
cmp dword [ebx + 0x30], esi
sete al
jmp 0x40e114
mov eax, esi
test eax, eax
je 0x40e2c6
mov eax, dword [ebx + 0x30]
mov dword [edi + 0x26f0], eax
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x40e147
cmp dword [eax + 0x2448], 0xffffffff
jne 0x40e147
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x20]
sub eax, dword [ebx + 8]
mov dword [ecx + 0x2448], eax
push dword [ebx + 0x1c]
mov eax, dword [edi]
mov ecx, edi
push 2
call dword [eax + 4]
test eax, eax
je 0x40e2dd
mov eax, dword [edi]
mov ecx, edi
push 0
push 3
call dword [eax + 4]
test eax, eax
je 0x40e2dd
mov ecx, edi
call fcn.0040f6f2
test eax, eax
je 0x40e2cf
mov eax, dword [edi]
mov ecx, edi
push 0
push 4
call dword [eax + 4]
test eax, eax
je 0x40e2dd
cmp dword [edi + 0x26f0], 0
je 0x40e280
mov eax, dword [edi + 0x5d100]
cmp eax, dword [edi + 0x5d110]
jne 0x40e1d6
mov eax, dword [edi + 0x5d104]
cmp eax, dword [edi + 0x5d114]
jne 0x40e1d6
mov ebx, dword [ebp - 0x1260]
mov ecx, edi
push ebx
call fcn.0040ead4
mov dword [edi + 0x5d0f8], 7
jmp 0x40dfba
push 4
lea eax, [ebp - 0x1264]
mov dword [ebp - 0x1264], 0x4e20
push eax
push 6
push dword [ebx + 0x1c]
call dword [sym.imp.WININET.dll_InternetSetOptionW]
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push ebx
mov ecx, edi
call fcn.0040ff66
test eax, eax
je 0x40e275
mov eax, dword [ebx + 0x8040]
cmp dword [eax + 8], 0
jne 0x40e224
cmp dword [eax + 0xc], 0
jne 0x40e224
mov dword [eax + 4], esi
mov dword [ebx + 0x28], 8
jmp 0x40e23b
mov dword [ebx + 0x28], 4
mov ecx, edi
mov ebx, dword [ebp - 0x1260]
push 0
push ebx
call fcn.0040efb2
cmp dword [edi + 0x2690], 0
jne 0x40e262
cmp dword [edi + 0x2468], esi
jbe 0x40e262
push 4
mov ecx, edi
call fcn.0040d656
test eax, eax
je 0x40e262
inc esi
cmp esi, dword [edi + 0x2468]
jb 0x40e24c
mov eax, dword [edi]
mov ecx, edi
push 0
push 5
call dword [eax + 4]
neg eax
sbb eax, eax
neg eax
jmp 0x40e2df
mov ebx, dword [ebp - 0x1260]
jmp 0x40e0a0
mov eax, dword [edi]
mov ecx, edi
push 0
push 5
call dword [eax + 4]
test eax, eax
je 0x40e2dd
mov dword [ebx + 0x28], 8
jmp 0x40dfba
push 0x540594
lea eax, [ebx + 0x806c]
push eax
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
je 0x40e2c6
and dword [edi + 0x26f0], 0
and dword [ebx + 0x30], 0
mov dword [edi + 0x26d4], 0x8000000
and dword [ebx + 0x28], 0
jmp 0x40dfa3
mov ebx, dword [ebp - 0x1260]
push ebx
mov ecx, edi
call fcn.0040ead4
xor eax, eax
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00501d03
mov esp, ebp
pop ebp
ret 4