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

Disassembly:
mov eax, 0x4cb4b4
call fcn.0049c8c4
sub esp, 0x3c
push ebx
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1c], edi
call fcn.0041bf38
xor ebx, ebx
cmp eax, ebx
jne 0x41cde1
mov ecx, edi
call fcn.0041bfc9
jmp 0x41d5a7
cmp eax, 0xfffffffe
jne 0x41ce3e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41ce27
dec edx
je 0x41ce13
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041b082
jmp 0x41d525
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041ac1d
jmp 0x41d525
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041af77
jmp 0x41d525
or esi, 0xffffffff
cmp eax, esi
jne 0x41ce73
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41ce6c
dec edx
je 0x41ce65
push ebx
push 0x3e9
push 0x3e8
jmp 0x41cea8
push 9
push 0xe
push ebx
jmp 0x41cebc
push ebx
push 4
push 0x62
jmp 0x41ced3
mov eax, dword [edi + 0x94]
cmp eax, ebx
je 0x41cee1
push eax
mov ecx, edi
call fcn.004267a3
test eax, eax
je 0x41cee1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41ceca
dec edx
je 0x41ceb6
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041b082
jmp 0x41d452
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041ac1d
jmp 0x41d452
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041af77
jmp 0x41d452
push 0x56f1b4
lea ecx, [ebp - 0x14]
call fcn.004b925f
push dword [edi + 0xa0]
lea eax, [ebp - 0x18]
mov ecx, edi
mov dword [ebp - 4], ebx
push str.SoftwareClassesCLSID_s
push eax
call fcn.0041c9ea
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
mov byte [ebp - 4], 1
push dword [ebp - 0x18]
call fcn.0041cbe0
cmp eax, ebx
je 0x41cf8a
cmp eax, 0xfffffffe
jne 0x41cf92
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41cf5d
dec edx
je 0x41cf4c
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041b082
jmp 0x41cf76
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041ac1d
jmp 0x41cf76
push 0x28
push 4
push 0x8a
jmp 0x41cf6d
push ebx
push 4
push 0x62
push 0x68
mov ecx, edi
call fcn.0041af77
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.004b91eb
mov dword [ebp - 4], esi
jmp 0x41d44a
mov eax, dword [ebp - 0x14]
cmp dword [eax - 8], ebx
jne 0x41cfb9
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41cf68
dec edx
je 0x41cfb2
push ebx
push 0x3e9
push 0x3e8
jmp 0x41cf41
push 9
push 0xe
push ebx
jmp 0x41cf52
lea esi, [edi + 0x68]
push eax
mov ecx, esi
call fcn.0041d81b
cmp eax, ebx
je 0x41d001
cmp eax, 0xfffffffe
jne 0x41cfd8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
jmp 0x41d4d8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41cffb
dec edx
je 0x41cff1
push ebx
jmp 0x41d46f
push 9
push 0xe
push ebx
jmp 0x41d48d
push ebx
jmp 0x41d49a
cmp word [edi + 0x70], 2
jne 0x41d588
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.0041c4ec
cmp eax, 0xfffffffe
jne 0x41d066
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41d05b
dec edx
je 0x41d050
push 0x15
push 0x3e9
push 0x3fd
jmp 0x41d409
push 0x1e
push 0xe
push 0x15
jmp 0x41d41a
push 0x15
push 4
push 0x77
jmp 0x41d42e
or esi, 0xffffffff
cmp eax, esi
jne 0x41d0c5
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41d0ae
dec edx
je 0x41d09a
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041b082
jmp 0x41d43a
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041ac1d
jmp 0x41d43a
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041af77
jmp 0x41d43a
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 0x41d2dd
dec edx
je 0x41d1e3
lea eax, [ebp - 0x48]
mov ecx, edi
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.0041b101
test eax, eax
je 0x41d153
call esi
xor edx, edx
div ebx
dec edx
je 0x41d12f
dec edx
je 0x41d11e
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041b082
jmp 0x41d141
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041ac1d
jmp 0x41d141
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041af77
or dword [ebp - 0x20], 0xffffffff
lea eax, [ebp - 0x20]
push 0x4e7c60
push eax
call fcn.0049e11d
call esi
push 7
xor edx, edx
pop ecx
div ecx
cmp edx, ebx
jne 0x41d3d1
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 0x41d188
cmp edx, ebx
je 0x41d3d1
call esi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41d1bf
dec edx
je 0x41d1ae
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041b082
jmp 0x41d1d1
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041ac1d
jmp 0x41d1d1
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041af77
or dword [ebp - 0x24], 0xffffffff
lea eax, [ebp - 0x24]
push 0x4e7c60
push eax
call fcn.0049e11d
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.0041ac96
test eax, eax
je 0x41d24e
call esi
xor edx, edx
div ebx
dec edx
je 0x41d22a
dec edx
je 0x41d219
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041b082
jmp 0x41d23c
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041ac1d
jmp 0x41d23c
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041af77
or dword [ebp - 0x28], 0xffffffff
lea eax, [ebp - 0x28]
push 0x4e7c60
push eax
call fcn.0049e11d
call esi
push 9
xor edx, edx
pop ecx
div ecx
cmp edx, 1
jne 0x41d3d1
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 0x41d282
cmp edx, ebx
je 0x41d3d1
call esi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41d2b9
dec edx
je 0x41d2a8
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041b082
jmp 0x41d2cb
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041ac1d
jmp 0x41d2cb
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041af77
or dword [ebp - 0x2c], 0xffffffff
lea eax, [ebp - 0x2c]
push 0x4e7c60
push eax
call fcn.0049e11d
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.0041add9
test eax, eax
je 0x41d348
call esi
xor edx, edx
div ebx
dec edx
je 0x41d324
dec edx
je 0x41d313
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041b082
jmp 0x41d336
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041ac1d
jmp 0x41d336
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041af77
or dword [ebp - 0x30], 0xffffffff
lea eax, [ebp - 0x30]
push 0x4e7c60
push eax
call fcn.0049e11d
call esi
push 5
xor edx, edx
pop ecx
div ecx
cmp edx, 2
jne 0x41d3d1
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 0x41d376
cmp edx, ebx
je 0x41d3d1
call esi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41d3ad
dec edx
je 0x41d39c
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041b082
jmp 0x41d3bf
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041ac1d
jmp 0x41d3bf
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041af77
or dword [ebp - 0x34], 0xffffffff
lea eax, [ebp - 0x34]
push 0x4e7c60
push eax
call fcn.0049e11d
test byte [edi + 0x1c], 1
mov dword [ebp - 4], 1
je 0x41d4a0
mov ecx, edi
call fcn.0042697b
cmp eax, 0xfffffffe
jne 0x41d459
call esi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41d425
dec edx
je 0x41d414
push 0x28
push 0x3e9
push 0x410
push 4
mov ecx, edi
call fcn.0041b082
jmp 0x41d437
push 0x31
push 0xe
push 0x28
push 4
mov ecx, edi
call fcn.0041ac1d
jmp 0x41d437
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041af77
or esi, 0xffffffff
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.004b91eb
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.004b91eb
mov eax, esi
jmp 0x41d5a9
cmp eax, 0xffffffff
jne 0x41d4a0
call esi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41d498
dec edx
je 0x41d487
push 0
push 0x3e9
push 0x3e8
push 4
mov ecx, edi
call fcn.0041b082
jmp 0x41d50d
push 9
push 0xe
push 0
push 4
mov ecx, edi
call fcn.0041ac1d
jmp 0x41d50d
push 0
push 4
push 0x62
jmp 0x41d504
call esi
push 0xb
xor edx, edx
pop ecx
div ecx
cmp edx, 5
jne 0x41d588
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 0x41d4d6
cmp edx, ebx
je 0x41d588
call esi
push 3
xor edx, edx
pop ecx
div ecx
dec edx
je 0x41d4fb
dec edx
je 0x41d4f3
push 0x28
push 0x3e9
push 0x410
jmp 0x41d479
push 0x31
push 0xe
push 0x28
jmp 0x41d48d
push 0x28
push 4
push 0x8a
push 0x68
mov ecx, edi
call fcn.0041af77
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.004b91eb
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.004b91eb
or eax, 0xffffffff
jmp 0x41d5a9
mov ecx, edi
call fcn.0041bfc9
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.004b91eb
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.004b91eb
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 0x41cdb2