Function at 0x42685c
Capabilities:
Check for time delay via gettickcount

Disassembly:
mov eax, 0x544ee4
call fcn.004c7c10
sub esp, 0x50
push ebx
push esi
mov esi, ecx
push edi
xor ebx, ebx
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x9c], ebx
call fcn.00428379
cmp eax, ebx
jne 0x426891
mov ecx, esi
call fcn.00427d58
jmp 0x4270e9
or edi, 0xffffffff
cmp eax, edi
jne 0x4268e0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x4268cd
dec edx
je 0x4268ba
push ebx
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x4269f3
push 9
push 0xe
push ebx
push 4
mov ecx, esi
call fcn.004291af
jmp 0x4269f3
push ebx
push 4
push 0x62
push 0x68
mov ecx, esi
call fcn.0042608d
jmp 0x4269f3
cmp eax, 0xfffffffe
je 0x4268fb
mov eax, dword [esi + 0x98]
cmp eax, ebx
je 0x426922
push eax
mov ecx, esi
call fcn.0042e83e
test eax, eax
je 0x426922
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x42691a
dec edx
je 0x426912
push 0xa
jmp 0x4268ac
push 0x13
push 0xe
push 0xa
jmp 0x4268bf
push 0xa
push 4
push 0x6c
jmp 0x4268d2
push 0x6534f4
lea ecx, [ebp - 0x14]
call fcn.0052c9f3
push dword [esi + 0x90]
lea eax, [ebp - 0x18]
mov ecx, esi
mov dword [ebp - 4], ebx
push str.SoftwareClassesCLSID_s
push eax
call fcn.004287fa
lea eax, [ebp - 0x14]
mov ecx, esi
push eax
mov byte [ebp - 4], 1
push dword [ebp - 0x18]
call fcn.00428858
cmp eax, edi
je 0x42699f
cmp eax, 0xfffffffe
jne 0x42698a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426982
dec edx
je 0x42697a
push 0xa
jmp 0x4269b3
push 0x13
push 0xe
push 0xa
jmp 0x4269c3
push 0xa
push 4
push 0x6c
jmp 0x4269d3
mov eax, dword [ebp - 0x14]
cmp dword [eax - 8], ebx
je 0x42699f
push eax
lea ecx, [esi + 0x70]
call fcn.00428fd3
test eax, eax
je 0x4269fa
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x4269ce
dec edx
je 0x4269be
push ebx
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x4269dc
push 9
push 0xe
push ebx
push 4
mov ecx, esi
call fcn.004291af
jmp 0x4269dc
push ebx
push 4
push 0x62
push 0x68
mov ecx, esi
call fcn.0042608d
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.0052c97f
lea ecx, [ebp - 0x14]
mov dword [ebp - 4], edi
call fcn.0052c97f
mov eax, edi
jmp 0x4270eb
cmp word [esi + 0x78], 2
jne 0x4270cb
mov eax, esi
mov ecx, esi
cdq
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x54], eax
lea eax, [esi + 0x80]
mov dword [ebp - 0x58], edx
push eax
lea eax, [esi + 0x7c]
push eax
mov dword [ebp - 0x50], edx
call fcn.004282af
cmp eax, edi
jne 0x426a71
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426a5b
dec edx
je 0x426a4a
push 0xa
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x426a6a
push 0x13
push 0xe
push 0xa
push 4
mov ecx, esi
call fcn.004291af
jmp 0x426a6a
push 0xa
push 4
push 0x6c
push 0x68
mov ecx, esi
call fcn.0042608d
mov esi, edi
jmp 0x426fb4
cmp eax, 0xfffffffe
jne 0x426a9d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426a95
dec edx
je 0x426a8d
push 0x14
jmp 0x426a3f
push 0x1d
push 0xe
push 0x14
jmp 0x426a50
push 0x14
push 4
push 0x76
jmp 0x426a61
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov byte [ebp - 4], 2
call edi
push 5
xor edx, edx
pop ecx
div ecx
sub edx, ebx
je 0x426e8d
dec edx
je 0x426db7
dec edx
je 0x426ce1
dec edx
je 0x426c0b
dec edx
je 0x426b35
call edi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426b01
dec edx
je 0x426aee
push 0xa
mov ecx, esi
pop ebx
push ebx
push 4
call fcn.004281bc
jmp 0x426b12
push 0x13
push 0xe
push 0xa
mov ecx, esi
pop ebx
push ebx
push 4
call fcn.004291af
jmp 0x426b12
push 0xa
mov ecx, esi
pop ebx
push ebx
push 4
push 0x6c
push 0x68
call fcn.0042608d
and dword [esi + 0x8c], 0
or dword [ebp - 0x20], 0xffffffff
lea eax, [ebp - 0x20]
push 0x570148
push eax
mov word [esi + 0x78], 4
mov word [esi + 0x7a], bx
call fcn.004c857f
lea eax, [ebp - 0x54]
mov ecx, esi
push eax
call fcn.0042734f
cmp eax, ebx
je 0x426b92
call edi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426b71
dec edx
je 0x426b60
push 0xa
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x426b80
push 0x13
push 0xe
push 0xa
push 4
mov ecx, esi
call fcn.004291af
jmp 0x426b80
push 0xa
push 4
push 0x6c
push 0x68
mov ecx, esi
call fcn.0042608d
or dword [ebp - 0x24], 0xffffffff
lea eax, [ebp - 0x24]
push 0x570148
push eax
call fcn.004c857f
call edi
push 0xa
xor edx, edx
pop ebx
mov ecx, ebx
div ecx
cmp edx, 4
jne 0x426f59
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
add eax, 2
adc ecx, 0
cmp eax, dword [ebp - 0x5c]
jne 0x426bc0
cmp ecx, dword [ebp - 0x58]
je 0x426f59
call edi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426beb
dec edx
je 0x426bdb
push ebx
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x426bf9
push 0x13
push 0xe
push ebx
push 4
mov ecx, esi
call fcn.004291af
jmp 0x426bf9
push ebx
push 4
push 0x6c
push 0x68
mov ecx, esi
call fcn.0042608d
or dword [ebp - 0x28], 0xffffffff
lea eax, [ebp - 0x28]
push 0x570148
push eax
call fcn.004c857f
lea eax, [ebp - 0x54]
mov ecx, esi
push eax
call fcn.00428c44
cmp eax, ebx
je 0x426c68
call edi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426c47
dec edx
je 0x426c36
push 0xa
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x426c56
push 0x13
push 0xe
push 0xa
push 4
mov ecx, esi
call fcn.004291af
jmp 0x426c56
push 0xa
push 4
push 0x6c
push 0x68
mov ecx, esi
call fcn.0042608d
or dword [ebp - 0x2c], 0xffffffff
lea eax, [ebp - 0x2c]
push 0x570148
push eax
call fcn.004c857f
call edi
push 0xa
xor edx, edx
pop ebx
mov ecx, ebx
div ecx
cmp edx, 3
jne 0x426f59
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
add eax, 2
adc ecx, 0
cmp eax, dword [ebp - 0x5c]
jne 0x426c96
cmp ecx, dword [ebp - 0x58]
je 0x426f59
call edi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426cc1
dec edx
je 0x426cb1
push ebx
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x426ccf
push 0x13
push 0xe
push ebx
push 4
mov ecx, esi
call fcn.004291af
jmp 0x426ccf
push ebx
push 4
push 0x6c
push 0x68
mov ecx, esi
call fcn.0042608d
or dword [ebp - 0x30], 0xffffffff
lea eax, [ebp - 0x30]
push 0x570148
push eax
call fcn.004c857f
lea eax, [ebp - 0x54]
push eax
push esi
call fcn.004264c4
pop ecx
cmp eax, ebx
pop ecx
je 0x426d3f
call edi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426d1e
dec edx
je 0x426d0d
push 0xa
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x426d2d
push 0x13
push 0xe
push 0xa
push 4
mov ecx, esi
call fcn.004291af
jmp 0x426d2d
push 0xa
push 4
push 0x6c
push 0x68
mov ecx, esi
call fcn.0042608d
or dword [ebp - 0x34], 0xffffffff
lea eax, [ebp - 0x34]
push 0x570148
push eax
call fcn.004c857f
call edi
push 0xa
xor edx, edx
pop ebx
mov ecx, ebx
div ecx
cmp edx, 2
jne 0x426f59
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
add eax, edx
adc ecx, 0
cmp eax, dword [ebp - 0x5c]
jne 0x426d6c
cmp ecx, dword [ebp - 0x58]
je 0x426f59
call edi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426d97
dec edx
je 0x426d87
push ebx
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x426da5
push 0x13
push 0xe
push ebx
push 4
mov ecx, esi
call fcn.004291af
jmp 0x426da5
push ebx
push 4
push 0x6c
push 0x68
mov ecx, esi
call fcn.0042608d
or dword [ebp - 0x38], 0xffffffff
lea eax, [ebp - 0x38]
push 0x570148
push eax
call fcn.004c857f
lea eax, [ebp - 0x54]
mov ecx, esi
push eax
call fcn.004285d6
cmp eax, ebx
je 0x426e14
call edi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426df3
dec edx
je 0x426de2
push 0xa
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x426e02
push 0x13
push 0xe
push 0xa
push 4
mov ecx, esi
call fcn.004291af
jmp 0x426e02
push 0xa
push 4
push 0x6c
push 0x68
mov ecx, esi
call fcn.0042608d
or dword [ebp - 0x3c], 0xffffffff
lea eax, [ebp - 0x3c]
push 0x570148
push eax
call fcn.004c857f
call edi
push 0xa
xor edx, edx
pop ebx
mov ecx, ebx
div ecx
cmp edx, 1
jne 0x426f59
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
add eax, 2
adc ecx, 0
cmp eax, dword [ebp - 0x5c]
jne 0x426e42
cmp ecx, dword [ebp - 0x58]
je 0x426f59
call edi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426e6d
dec edx
je 0x426e5d
push ebx
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x426e7b
push 0x13
push 0xe
push ebx
push 4
mov ecx, esi
call fcn.004291af
jmp 0x426e7b
push ebx
push 4
push 0x6c
push 0x68
mov ecx, esi
call fcn.0042608d
or dword [ebp - 0x40], 0xffffffff
lea eax, [ebp - 0x40]
push 0x570148
push eax
call fcn.004c857f
lea eax, [ebp - 0x54]
mov ecx, esi
push eax
call fcn.004270fa
cmp eax, ebx
je 0x426eea
call edi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426ec9
dec edx
je 0x426eb8
push 0xa
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x426ed8
push 0x13
push 0xe
push 0xa
push 4
mov ecx, esi
call fcn.004291af
jmp 0x426ed8
push 0xa
push 4
push 0x6c
push 0x68
mov ecx, esi
call fcn.0042608d
or dword [ebp - 0x44], 0xffffffff
lea eax, [ebp - 0x44]
push 0x570148
push eax
call fcn.004c857f
call edi
push 0xa
xor edx, edx
pop ebx
mov ecx, ebx
div ecx
test edx, edx
jne 0x426f59
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
add eax, 2
adc ecx, edx
cmp eax, dword [ebp - 0x5c]
jne 0x426f0e
cmp ecx, dword [ebp - 0x58]
je 0x426f59
call edi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426f39
dec edx
je 0x426f29
push ebx
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x426f47
push 0x13
push 0xe
push ebx
push 4
mov ecx, esi
call fcn.004291af
jmp 0x426f47
push ebx
push 4
push 0x6c
push 0x68
mov ecx, esi
call fcn.0042608d
or dword [ebp - 0x48], 0xffffffff
lea eax, [ebp - 0x48]
push 0x570148
push eax
call fcn.004c857f
test byte [esi + 0x2c], 0x10
mov dword [ebp - 4], 1
je 0x426fd7
mov ecx, esi
call fcn.00428ed0
cmp eax, 0xffffffff
jne 0x426fd2
call edi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x426f9f
dec edx
je 0x426f8e
push 0
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x426fae
push 9
push 0xe
push 0
push 4
mov ecx, esi
call fcn.004291af
jmp 0x426fae
push 0
push 4
push 0x62
push 0x68
mov ecx, esi
call fcn.0042608d
or esi, 0xffffffff
or edi, 0xffffffff
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.0052c97f
lea ecx, [ebp - 0x14]
mov dword [ebp - 4], edi
call fcn.0052c97f
mov eax, esi
jmp 0x4270eb
cmp eax, 0xfffffffe
je 0x427001
call edi
push 3
xor edx, edx
pop ecx
div ecx
test edx, edx
jne 0x4270c8
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
add eax, 2
adc ecx, edx
cmp eax, dword [ebp - 0x5c]
jne 0x427001
cmp ecx, dword [ebp - 0x58]
je 0x4270c8
call edi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x42702c
dec edx
je 0x42701c
push ebx
push 4
mov ecx, esi
call fcn.004281bc
jmp 0x42703a
push 0x13
push 0xe
push ebx
push 4
mov ecx, esi
call fcn.004291af
jmp 0x42703a
push ebx
push 4
push 0x6c
push 0x68
mov ecx, esi
call fcn.0042608d
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.0052c97f
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0052c97f
or eax, 0xffffffff
jmp 0x4270eb
or edi, 0xffffffff
mov ecx, esi
call fcn.00427d58
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.0052c97f
lea ecx, [ebp - 0x14]
mov dword [ebp - 4], edi
call fcn.0052c97f
xor eax, eax
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret