Function at 0x41dfe0
Capabilities:
Check for time delay via gettickcount
Get hostname
Query or enumerate registry value

Disassembly:
sub esp, 0x25c
mov eax, dword [0x48c74c]
xor eax, esp
mov dword [esp + 0x254], eax
push ebx
push ebp
mov ebp, ecx
push esi
push edi
cmp dword [ebp + 0x60], 0
jne 0x41e10d
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
mov ebx, eax
mov eax, 0x51eb851f
mul ebx
mov edi, ebx
shr edx, 5
imul ecx, edx, 0x64
mov edx, ebx
sub edx, ecx
je 0x41e058
call esi
mov ebx, eax
sub eax, edi
cmp eax, 0x1388
ja 0x41e058
mov eax, 0x51eb851f
mov ecx, ebx
mul ebx
shr edx, 5
imul eax, edx, 0x64
sub ecx, eax
je 0x41e058
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
call esi
mov ebx, eax
sub eax, edi
cmp eax, 0x1388
jbe 0x41e030
lea eax, [esp + 0x18]
xorps xmm0, xmm0
push eax
movlpd qword [esp + 0x1c], xmm0
call fcn.0044db9a
add esp, 4
mov eax, 0x10624dd3
mul ebx
xor esi, esi
mov edi, ebx
push esi
shr edx, 6
push 0x3e8
push dword [esp + 0x24]
imul eax, edx, 0x3e8
push dword [esp + 0x24]
sub edi, eax
call fcn.00451d70
add edi, eax
push 0
adc esi, edx
sub edi, ebx
push 0x3e8
sbb esi, 0
push esi
push edi
call fcn.0045bcb0
mov dword [esp + 0x18], eax
xorps xmm0, xmm0
lea eax, [esp + 0x18]
mov dword [esp + 0x1c], edx
push eax
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 0
push eax
movdqu xmmword [esp + 0x30], xmm0
movdqu xmmword [esp + 0x40], xmm0
call fcn.0044e6f9
push dword [esp + 0x2c]
mov eax, dword [esp + 0x40]
push dword [esp + 0x34]
inc eax
push dword [esp + 0x3c]
push dword [esp + 0x44]
push eax
mov eax, dword [esp + 0x54]
add eax, 0x76c
push eax
lea eax, [ebp + 0x50]
push str._04d_02d_02d_02d_02d_02d
push eax
call fcn.0040f2e0
add esp, 0x28
cmp dword [ebp + 0x78], 0
jne 0x41e1dd
lea eax, [esp + 0x14]
mov dword [esp + 0x14], 0
push eax
push 0x20019
push 0
push str.SOFTWAREMicrosoftWindows_NTCurrentVersion
push reloc.OLEAUT32.dll_SysReAllocString
mov dword [esp + 0x2c], 4
mov dword [esp + 0x34], 0
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x41e176
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x24]
push eax
push 0
push 0
push str.InstallDate
push dword [esp + 0x28]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
push dword [esp + 0x14]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, dword [esp + 0x20]
xorps xmm0, xmm0
mov dword [esp + 0x48], eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x28]
mov dword [esp + 0x50], 0
push eax
mov dword [esp + 0x2c], 0
movdqu xmmword [esp + 0x30], xmm0
movdqu xmmword [esp + 0x40], xmm0
call fcn.0044e6f9
push dword [esp + 0x2c]
mov eax, dword [esp + 0x40]
push dword [esp + 0x34]
inc eax
push dword [esp + 0x3c]
push dword [esp + 0x44]
push eax
mov eax, dword [esp + 0x54]
add eax, 0x76c
push eax
lea eax, [ebp + 0x68]
push str._04d_02d_02d_02d_02d_02d
push eax
call fcn.0040f2e0
add esp, 0x28
cmp dword [ebp + 0x90], 0
jne 0x41e274
xor eax, eax
push 0x208
push eax
mov word [esp + 0x58], ax
lea eax, [esp + 0x5a]
push eax
call fcn.00451b50
add esp, 0xc
mov dword [esp + 0x18], 0x104
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x54]
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
xor eax, eax
mov word [esp + 0x256], ax
cmp word [esp + 0x50], ax
je 0x41e243
lea eax, [esp + 0x50]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x41e234
sub eax, edx
sar eax, 1
push eax
lea eax, [esp + 0x54]
push eax
lea ecx, [ebp + 0x80]
call fcn.00403be0
mov edx, str.__r_t_n
lea ecx, [ebp + 0x80]
call fcn.0040f010
mov edx, str.__r_t_n
lea ecx, [ebp + 0x80]
call fcn.0040f080
mov ecx, dword [esp + 0x264]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0044b642
add esp, 0x25c
ret