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

Disassembly:
mov eax, 0x57bce0
call fcn.00508ecc
sub esp, 0x3c
push ebx
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1c], edi
call fcn.0041b6ab
xor ebx, ebx
cmp eax, ebx
jne 0x41c55a
mov ecx, edi
call fcn.0041b73c
jmp 0x41cd20
cmp eax, 0xfffffffe
jne 0x41c5b7
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41c5a0
dec edx
je 0x41c58c
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041a7ad
jmp 0x41cc9e
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041a306
jmp 0x41cc9e
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041a681
jmp 0x41cc9e
or esi, 0xffffffff
cmp eax, esi
jne 0x41c5ec
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41c5e5
dec edx
je 0x41c5de
push ebx
push 0x3e9
push 0x3e8
jmp 0x41c621
push 9
push 0xe
push ebx
jmp 0x41c635
push ebx
push 4
push 0x62
jmp 0x41c64c
mov eax, dword [edi + 0x94]
cmp eax, ebx
je 0x41c65a
push eax
mov ecx, edi
call fcn.004ca397
test eax, eax
je 0x41c65a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41c643
dec edx
je 0x41c62f
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041a7ad
jmp 0x41cbcb
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041a306
jmp 0x41cbcb
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041a681
jmp 0x41cbcb
push 0x66b504
lea ecx, [ebp - 0x14]
call fcn.0055ffe9
push dword [edi + 0xa0]
lea eax, [ebp - 0x18]
mov ecx, edi
mov dword [ebp - 4], ebx
push str.SoftwareClassesCLSID_s
push eax
call fcn.0041c15d
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
mov byte [ebp - 4], 1
push dword [ebp - 0x18]
call fcn.0041c353
cmp eax, ebx
je 0x41c703
cmp eax, 0xfffffffe
jne 0x41c70b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41c6d6
dec edx
je 0x41c6c5
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041a7ad
jmp 0x41c6ef
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041a306
jmp 0x41c6ef
push 0x28
push 4
push 0x8a
jmp 0x41c6e6
push ebx
push 4
push 0x62
push 0x68
mov ecx, edi
call fcn.0041a681
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.0055ff75
mov dword [ebp - 4], esi
jmp 0x41cbc3
mov eax, dword [ebp - 0x14]
cmp dword [eax - 8], ebx
jne 0x41c732
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41c6e1
dec edx
je 0x41c72b
push ebx
push 0x3e9
push 0x3e8
jmp 0x41c6ba
push 9
push 0xe
push ebx
jmp 0x41c6cb
lea esi, [edi + 0x68]
push eax
mov ecx, esi
call fcn.0041cf94
cmp eax, ebx
je 0x41c77a
cmp eax, 0xfffffffe
jne 0x41c751
call dword [sym.imp.KERNEL32.dll_GetTickCount]
jmp 0x41cc51
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41c774
dec edx
je 0x41c76a
push ebx
jmp 0x41cbe8
push 9
push 0xe
push ebx
jmp 0x41cc06
push ebx
jmp 0x41cc13
cmp word [edi + 0x70], 2
jne 0x41cd01
mov eax, edi
mov ecx, edi
cdq
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x40], eax
lea eax, [edi + 0x7c]
mov dword [ebp - 0x44], edx
push eax
push esi
mov dword [ebp - 0x3c], edx
call fcn.0041bc5f
cmp eax, 0xfffffffe
jne 0x41c7df
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41c7d4
dec edx
je 0x41c7c9
push 0x15
push 0x3e9
push 0x3fd
jmp 0x41cb82
push 0x1e
push 0xe
push 0x15
jmp 0x41cb93
push 0x15
push 4
push 0x77
jmp 0x41cba7
or esi, 0xffffffff
cmp eax, esi
jne 0x41c83e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41c827
dec edx
je 0x41c813
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041a7ad
jmp 0x41cbb3
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041a306
jmp 0x41cbb3
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041a681
jmp 0x41cbb3
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov byte [ebp - 4], 2
call esi
push 3
xor edx, edx
pop ebx
mov ecx, ebx
div ecx
dec edx
je 0x41ca56
dec edx
je 0x41c95c
lea eax, [ebp - 0x48]
mov ecx, edi
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.0041a82c
test eax, eax
je 0x41c8cc
call esi
xor edx, edx
div ebx
dec edx
je 0x41c8a8
dec edx
je 0x41c897
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041a7ad
jmp 0x41c8ba
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041a306
jmp 0x41c8ba
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041a681
or dword [ebp - 0x20], 0xffffffff
lea eax, [ebp - 0x20]
push 0x5b3870
push eax
call fcn.0050a58f
call esi
push 7
xor edx, edx
pop ecx
div ecx
cmp edx, ebx
jne 0x41cb4a
mov ecx, dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
sub ecx, 1
sbb ebx, 0
add eax, 1
adc edx, 0
cmp eax, ecx
jne 0x41c901
cmp edx, ebx
je 0x41cb4a
call esi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41c938
dec edx
je 0x41c927
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041a7ad
jmp 0x41c94a
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041a306
jmp 0x41c94a
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041a681
or dword [ebp - 0x24], 0xffffffff
lea eax, [ebp - 0x24]
push 0x5b3870
push eax
call fcn.0050a58f
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.0041a37f
test eax, eax
je 0x41c9c7
call esi
xor edx, edx
div ebx
dec edx
je 0x41c9a3
dec edx
je 0x41c992
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041a7ad
jmp 0x41c9b5
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041a306
jmp 0x41c9b5
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041a681
or dword [ebp - 0x28], 0xffffffff
lea eax, [ebp - 0x28]
push 0x5b3870
push eax
call fcn.0050a58f
call esi
push 9
xor edx, edx
pop ecx
div ecx
cmp edx, 1
jne 0x41cb4a
mov ecx, dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x48]
sub ecx, edx
sbb ebx, 0
add eax, edx
mov edx, dword [ebp - 0x44]
adc edx, 0
cmp eax, ecx
jne 0x41c9fb
cmp edx, ebx
je 0x41cb4a
call esi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41ca32
dec edx
je 0x41ca21
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041a7ad
jmp 0x41ca44
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041a306
jmp 0x41ca44
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041a681
or dword [ebp - 0x2c], 0xffffffff
lea eax, [ebp - 0x2c]
push 0x5b3870
push eax
call fcn.0050a58f
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.0041a4e3
test eax, eax
je 0x41cac1
call esi
xor edx, edx
div ebx
dec edx
je 0x41ca9d
dec edx
je 0x41ca8c
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041a7ad
jmp 0x41caaf
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041a306
jmp 0x41caaf
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041a681
or dword [ebp - 0x30], 0xffffffff
lea eax, [ebp - 0x30]
push 0x5b3870
push eax
call fcn.0050a58f
call esi
push 5
xor edx, edx
pop ecx
div ecx
cmp edx, 2
jne 0x41cb4a
mov ecx, dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
sub ecx, 1
sbb ebx, 0
add eax, 1
adc edx, 0
cmp eax, ecx
jne 0x41caef
cmp edx, ebx
je 0x41cb4a
call esi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41cb26
dec edx
je 0x41cb15
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041a7ad
jmp 0x41cb38
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041a306
jmp 0x41cb38
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041a681
or dword [ebp - 0x34], 0xffffffff
lea eax, [ebp - 0x34]
push 0x5b3870
push eax
call fcn.0050a58f
test byte [edi + 0x1c], 1
mov dword [ebp - 4], 1
je 0x41cc19
mov ecx, edi
call fcn.00429f5f
cmp eax, 0xfffffffe
jne 0x41cbd2
call esi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41cb9e
dec edx
je 0x41cb8d
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041a7ad
jmp 0x41cbb0
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041a306
jmp 0x41cbb0
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041a681
or esi, 0xffffffff
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.0055ff75
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0055ff75
mov eax, esi
jmp 0x41cd22
cmp eax, 0xffffffff
jne 0x41cc19
call esi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41cc11
dec edx
je 0x41cc00
push 0
push 0x3e9
push 0x3e8
push 4
mov ecx, edi
call fcn.0041a7ad
jmp 0x41cc86
push 9
push 0xe
push 0
push 4
mov ecx, edi
call fcn.0041a306
jmp 0x41cc86
push 0
push 4
push 0x62
jmp 0x41cc7d
call esi
push 0xb
xor edx, edx
pop ecx
div ecx
cmp edx, 5
jne 0x41cd01
mov ecx, dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
sub ecx, 1
sbb ebx, 0
add eax, 1
adc edx, 0
cmp eax, ecx
jne 0x41cc4f
cmp edx, ebx
je 0x41cd01
call esi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41cc74
dec edx
je 0x41cc6c
push 0x28
push 0x3e9
push 0x410
jmp 0x41cbf2
push 0x31
push 0xe
push 0x28
jmp 0x41cc06
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041a681
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.0055ff75
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0055ff75
or eax, 0xffffffff
jmp 0x41cd22
mov ecx, edi
call fcn.0041b73c
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.0055ff75
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0055ff75
xor eax, eax
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret
and dword [ecx + 0x90], 0
jmp 0x41c52b