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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x254
mov eax, dword [0x4442c4]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, ecx
xor ebx, ebx
cmp dword [esi + 0x70], ebx
push edi
mov dword [ebp - 0x224], esi
jne 0x412abc
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
push 0x64
xor edx, edx
pop ecx
mov dword [ebp - 0x21c], eax
mov dword [ebp - 0x220], eax
div ecx
test edx, edx
je 0x4129e2
call esi
mov edi, 0x1388
jmp 0x4129d2
mov eax, dword [ebp - 0x21c]
push 0x64
xor edx, edx
pop ecx
div ecx
test edx, edx
je 0x4129e2
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
call esi
mov dword [ebp - 0x21c], eax
sub eax, dword [ebp - 0x220]
cmp eax, edi
jbe 0x4129b7
lea eax, [ebp - 0x230]
push eax
mov dword [ebp - 0x230], ebx
mov dword [ebp - 0x22c], ebx
call fcn.0041a8f0
mov eax, dword [ebp - 0x21c]
pop ecx
mov esi, 0x3e8
xor edx, edx
mov ecx, esi
div ecx
push ebx
push esi
push dword [ebp - 0x22c]
xor eax, eax
push dword [ebp - 0x230]
mov dword [ebp - 0x220], eax
mov edi, edx
call fcn.0042a920
add edi, eax
mov eax, dword [ebp - 0x220]
adc eax, edx
xor ecx, ecx
sub edi, dword [ebp - 0x21c]
sbb eax, ecx
xor ebx, ebx
push ebx
push esi
push eax
push edi
call fcn.00430640
mov dword [ebp - 0x230], eax
push 8
xor eax, eax
pop ecx
mov dword [ebp - 0x254], ebx
lea edi, [ebp - 0x250]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x254]
push eax
mov dword [ebp - 0x22c], edx
call fcn.0042fe95
push dword [ebp - 0x254]
mov eax, dword [ebp - 0x244]
push dword [ebp - 0x250]
mov esi, dword [ebp - 0x224]
push dword [ebp - 0x24c]
inc eax
push dword [ebp - 0x248]
lea ecx, [esi + 0x5c]
push eax
mov eax, dword [ebp - 0x240]
add eax, 0x76c
push eax
push str._04d_02d_02d_02d_02d_02d
call fcn.0040d75f
add esp, 0x24
cmp dword [esi + 0x8c], ebx
jne 0x412ba0
lea eax, [ebp - 0x21c]
push eax
push 0x20019
push ebx
push str.SOFTWAREMicrosoftWindows_NTCurrentVersion
push reloc.OLEAUT32.dll_SysReAllocString
mov dword [ebp - 0x21c], ebx
mov dword [ebp - 0x224], 4
mov dword [ebp - 0x220], ebx
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x412b2c
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x220]
push eax
push ebx
push ebx
push str.InstallDate
push dword [ebp - 0x21c]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
push dword [ebp - 0x21c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, dword [ebp - 0x220]
mov dword [ebp - 0x230], eax
push 8
xor eax, eax
pop ecx
mov dword [ebp - 0x254], ebx
lea edi, [ebp - 0x250]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x254]
push eax
mov dword [ebp - 0x22c], ebx
call fcn.0042fe95
push dword [ebp - 0x254]
mov eax, dword [ebp - 0x244]
push dword [ebp - 0x250]
inc eax
push dword [ebp - 0x24c]
lea ecx, [esi + 0x78]
push dword [ebp - 0x248]
push eax
mov eax, dword [ebp - 0x240]
add eax, 0x76c
push eax
push str._04d_02d_02d_02d_02d_02d
call fcn.0040d75f
add esp, 0x24
cmp dword [esi + 0xa8], ebx
jne 0x412bfe
push 0x208
lea eax, [ebp - 0x216]
push ebx
push eax
mov word [ebp - 0x218], bx
call fcn.0041b0d0
add esp, 0xc
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x218]
push eax
mov dword [ebp - 0x224], 0x104
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
add esi, 0x94
lea eax, [ebp - 0x218]
mov word [ebp - 0x12], bx
call fcn.0040185a
push esi
call fcn.0040d648
pop ecx
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0041a6a2
leave
ret