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

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1254
call fcn.00431de0
push ebx
push esi
mov esi, ecx
push edi
mov ecx, dword [ebp + 8]
mov eax, dword [esi + 0x26e0]
mov ebx, dword [eax + ecx*4]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [esi + 0x26d0]
xor edi, edi
mov dword [esi + 0x26d4], eax
mov eax, dword [ebx + 0x20]
mov dword [ebx + 0x2c], edi
cmp dword [eax + 4], 1
je 0x42d309
push ebx
mov ecx, esi
call fcn.0042e6c1
mov dword [esi + 0x26cc], eax
mov ecx, dword [ebx + 0x20]
cmp ecx, edi
je 0x42cfd4
mov dword [ecx + 0x2450], eax
cmp dword [esi + 0x26cc], 0xc8
jne 0x42d1f1
push ebx
mov ecx, esi
call fcn.0042f233
push ebx
mov ecx, esi
call fcn.0042e5ee
push ebx
mov ecx, esi
call fcn.0042f2a0
push ebx
mov ecx, esi
call fcn.0042e706
mov eax, dword [ebx + 0x38]
mov edx, dword [esi + 0x5d108]
mov ecx, dword [ebx + 0x3c]
cmp edx, eax
jne 0x42d1f1
mov eax, dword [esi + 0x5d10c]
cmp eax, ecx
jne 0x42d1f1
cmp dword [esi + 0x2690], edi
je 0x42d03b
push 1
xor ecx, ecx
pop eax
cmp dword [ebx + 0x30], eax
sete cl
jmp 0x42d040
push 1
pop ecx
push ecx
pop eax
cmp ecx, edi
je 0x42d1f4
mov ecx, dword [esi + 0x5d110]
mov edx, dword [esi + 0x5d114]
cmp ecx, edi
jne 0x42d05c
cmp edx, edi
je 0x42d074
cmp ecx, dword [ebx + 0x38]
jne 0x42d2e5
mov ecx, dword [esi + 0x5d114]
cmp ecx, dword [ebx + 0x3c]
jne 0x42d2e5
mov eax, dword [ebx + 0x30]
push ebx
mov ecx, esi
mov dword [esi + 0x26fc], eax
call fcn.0042e7a7
test eax, eax
je 0x42d140
mov dword [esi + 0x2690], 1
mov dword [esi + 0x247c], edi
mov dword [esi + 0x26fc], edi
or eax, 0xffffffff
mov dword [ebx + 0x30], edi
mov dword [esi + 0x5d108], eax
mov dword [esi + 0x5d10c], eax
mov dword [ebx + 0x38], eax
mov dword [ebx + 0x3c], eax
lea eax, [esi + 0x5d128]
push eax
push 0x43baa0
lea eax, [esi + 0x5d330]
push 0x103
push eax
call dword [sym.imp.MSVCRT.dll__snwprintf]
push 0x208
lea eax, [esi + 0x5d128]
push edi
push eax
call sub.MSVCRT.dll_memset
mov ax, word [0x465a24]
mov ecx, 0x81
mov word [ebp - 0x20c], ax
xor eax, eax
lea edi, [ebp - 0x20a]
add esp, 0x1c
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp - 0x20c]
push eax
push 0x103
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
lea eax, [esi + 0x5d128]
push eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
lea eax, [ebp - 0x20c]
push 0x4648a0
push eax
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
xor edi, edi
mov eax, dword [ebx + 0x20]
cmp eax, edi
je 0x42d162
cmp dword [eax + 0x2448], 0xffffffff
jne 0x42d162
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebx + 8]
mov ecx, dword [ebx + 0x20]
mov dword [ecx + 0x2448], eax
push dword [ebx + 0x1c]
mov eax, dword [esi]
mov ecx, esi
push 2
call dword [eax + 4]
test eax, eax
je 0x42d457
mov eax, dword [esi]
push edi
push 3
mov ecx, esi
call dword [eax + 4]
test eax, eax
je 0x42d457
mov ecx, esi
call fcn.0042e824
test eax, eax
je 0x42d44d
mov eax, dword [esi]
push edi
push 4
mov ecx, esi
call dword [eax + 4]
test eax, eax
je 0x42d457
cmp dword [esi + 0x26fc], edi
je 0x42d433
mov ecx, dword [esi + 0x5d108]
lea eax, [esi + 0x5d118]
cmp ecx, dword [eax]
jne 0x42d390
mov ecx, dword [esi + 0x5d10c]
cmp ecx, dword [eax + 4]
jne 0x42d390
push dword [ebp + 8]
mov ecx, esi
call fcn.0042dcc2
mov dword [esi + 0x5d100], 7
jmp 0x42d448
push 1
pop eax
cmp dword [esi + 0x2690], edi
je 0x42d217
mov dword [ebx + 0x28], edi
push eax
push dword [ebp + 8]
mov ecx, esi
call fcn.0042e196
test eax, eax
je 0x42d44d
jmp 0x42d448
mov ecx, dword [esi + 0x26cc]
cmp ecx, 0x12e
jne 0x42d2d3
mov ax, word [0x465a24]
mov ecx, 0x411
mov word [ebp - 0x1254], ax
xor eax, eax
lea edi, [ebp - 0x1252]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov edi, 0x1048
lea eax, [ebp - 0x1254]
push edi
push eax
push ebx
mov ecx, esi
call fcn.0042e76c
test eax, eax
je 0x42d44d
push 0
lea eax, [ebp - 0x1254]
push dword [ebx + 0x20]
push eax
call fcn.0042c060
add esp, 0xc
test eax, eax
je 0x42d44d
cmp dword [ebx + 0x24], 0
jne 0x42d2b3
lea ebx, [esi + 0x5f5c8]
push edi
push 0
push ebx
call sub.MSVCRT.dll_memset
add esp, 0xc
lea eax, [ebp - 0x1254]
push eax
push 0x43baa0
push 0x823
push ebx
call dword [sym.imp.MSVCRT.dll__snwprintf]
add esp, 0x10
push 0
mov ecx, esi
call fcn.0042c90f
test eax, eax
je 0x42d44d
push dword [ebp + 8]
mov ecx, esi
call fcn.0042dcc2
jmp 0x42d448
cmp ecx, 0x194
jne 0x42d1fc
mov dword [esi + 0x2470], eax
mov ebx, dword [ebx + 0x20]
cmp ebx, edi
je 0x42d2f2
mov dword [ebx + 0x244c], eax
push dword [ebp + 8]
mov ecx, esi
call fcn.0042dcc2
push edi
mov ecx, esi
call fcn.0042c90f
jmp 0x42d459
cmp dword [ebx], edi
jne 0x42d35d
mov eax, dword [ebx + 4]
cmp eax, edi
je 0x42d35d
push ebx
mov ecx, esi
mov dword [ebx + 0x1c], eax
call fcn.0042e5ee
mov eax, dword [esi + 0x5d108]
cmp eax, dword [ebx + 0x38]
jne 0x42d386
mov eax, dword [esi + 0x5d10c]
cmp eax, dword [ebx + 0x3c]
jne 0x42d386
cmp dword [esi + 0x2690], edi
je 0x42d348
xor eax, eax
cmp dword [ebx + 0x30], 1
sete al
jmp 0x42d34b
push 1
pop eax
cmp eax, edi
je 0x42d386
mov eax, dword [ebx + 0x30]
mov dword [esi + 0x26fc], eax
jmp 0x42d140
lea eax, [ebx + 0x806c]
push 0x465698
push eax
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
je 0x42d386
mov dword [esi + 0x26fc], edi
mov dword [ebx + 0x30], edi
mov dword [esi + 0x26d8], 0x8000000
mov dword [ebx + 0x28], edi
push 1
jmp 0x42d200
lea eax, [ebp - 4]
push 4
push eax
push 6
push dword [ebx + 0x1c]
mov dword [ebp - 4], 0x4e20
call dword [sym.imp.WININET.dll_InternetSetOptionW]
push 0xffffffffffffffff
push 0xffffffffffffffff
push edi
push ebx
mov ecx, esi
call fcn.0042ef72
test eax, eax
je 0x42d2c4
mov eax, dword [ebx + 0x8040]
cmp dword [eax + 8], edi
jne 0x42d3dc
cmp dword [eax + 0xc], edi
jne 0x42d3dc
push 1
pop ecx
mov dword [eax + 4], ecx
mov dword [ebx + 0x28], 8
jmp 0x42d3f1
push edi
mov ecx, esi
push dword [ebp + 8]
mov dword [ebx + 0x28], 4
call fcn.0042e196
push 1
pop ecx
cmp dword [esi + 0x2690], edi
jne 0x42d421
cmp dword [esi + 0x2468], ecx
lea ebx, [esi + 0x2468]
mov dword [ebp + 8], ecx
jbe 0x42d421
push 4
mov ecx, esi
call fcn.0042c90f
test eax, eax
je 0x42d421
inc dword [ebp + 8]
mov eax, dword [ebp + 8]
cmp eax, dword [ebx]
jb 0x42d40a
mov eax, dword [esi]
push edi
push 5
mov ecx, esi
call dword [eax + 4]
neg eax
sbb eax, eax
neg eax
jmp 0x42d459
mov eax, dword [esi]
push edi
push 5
mov ecx, esi
call dword [eax + 4]
test eax, eax
je 0x42d457
mov dword [ebx + 0x28], 8
push 1
pop eax
jmp 0x42d459
push dword [ebp + 8]
mov ecx, esi
call fcn.0042dcc2
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret 4