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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x80
mov edi, dword [ebp + 8]
mov eax, dword [0x526014]
xor eax, ebp
mov dword [esp + 0x78], eax
xor eax, eax
dec eax
lea esi, [esp + 0x10]
mov dword [esi + 0x64], eax
mov dword [esi + 0x60], eax
pcmpeqd xmm0, xmm0
movdqa xmmword [esi + 0x50], xmm0
movdqa xmmword [esi + 0x40], xmm0
movdqa xmmword [esi + 0x30], xmm0
movdqa xmmword [esi + 0x20], xmm0
movdqa xmmword [esi + 0x10], xmm0
movdqa xmmword [esi], xmm0
mov ecx, esi
call fcn.004dbe40
mov ecx, esi
push dword [ebp + 0xc]
push edi
call fcn.004dc160
test al, al
je 0x42ff87
mov edi, dword [ebp + 0x20]
test edi, edi
je 0x42fe45
mov eax, dword [ebp + 0xc]
cmp dword [eax + 4], 0
jne 0x42fe45
mov eax, dword [edi]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [section..00cfg]
xor edi, edi
mov ecx, dword [ebp + 0x20]
push edi
call esi
mov eax, dword [ebp + 0x20]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
mov ecx, esi
call dword [section..00cfg]
mov ecx, dword [ebp + 0x20]
push edi
mov edi, dword [ebp + 0x20]
push 0xffffffffffffffff
call esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x42fe72
push 0
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x430066
lea ecx, [esp + 0x10]
call fcn.004dc5d0
test eax, eax
je 0x42ffcb
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, dword [esp + 0x54]
test esi, esi
je 0x42fe57
mov ecx, eax
mov eax, dword [ebp + 0xc]
mov ebx, dword [eax + 4]
test edi, edi
je 0x42fef1
movd xmm0, ebx
movq xmm1, qword [0x509ca0]
por xmm0, xmm1
subsd xmm0, xmm1
xorps xmm4, xmm4
cvtsd2ss xmm4, xmm0
movd xmm0, esi
por xmm0, xmm1
subsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
divss xmm4, xmm0
mov eax, dword [edi]
mov edi, dword [eax + 4]
mov dword [esp + 0xc], ecx
mov ecx, edi
call dword [section..00cfg]
sub esp, 4
movss dword [esp], xmm4
mov ecx, dword [ebp + 0x20]
call edi
mov ecx, dword [esp + 0xc]
mov edi, dword [ebp + 0x20]
test ebx, ebx
je 0x42fe57
sub ecx, dword [esp + 8]
mov eax, ecx
sub eax, dword [esp + 4]
cmp eax, 0xea60
jb 0x42fe57
sub esi, ebx
mov eax, esi
mul ecx
xor esi, esi
push esi
push ebx
push edx
push eax
mov ebx, ecx
call fcn.004bdb80
push esi
push 0x3e8
push edx
push eax
call fcn.004bdb80
mov dword [esp + 4], ebx
test edi, edi
je 0x42fe57
mov ecx, ebx
mov esi, eax
mov eax, ebx
mov ecx, 0x10624dd3
mul ecx
shr edx, 6
add edx, esi
cmp edx, 0x79
jl 0x42ff66
mov eax, dword [edi]
mov edi, dword [eax + 8]
mov ecx, edi
call dword [section..00cfg]
mov ecx, dword [ebp + 0x20]
call edi
mov edi, dword [ebp + 0x20]
mov eax, dword [edi]
mov edi, dword [eax + 0xc]
mov ecx, edi
call dword [section..00cfg]
mov ecx, dword [ebp + 0x20]
push 1
push esi
call edi
mov edi, dword [ebp + 0x20]
mov dword [esp + 4], ebx
jmp 0x42fe57
mov esi, dword [ebp + 0x24]
test esi, esi
je 0x430066
lea edi, [esp + 0x2c]
mov eax, dword [edi]
mov dword [esi], eax
cmp esi, edi
je 0x43002a
lea ecx, [esi + 4]
lea eax, [esp + 0x30]
cmp byte [ecx + 0xb], 0
movzx edx, byte [eax + 0xb]
js 0x430115
test dl, dl
js 0x43001d
mov edx, dword [eax + 8]
mov dword [ecx + 8], edx
movq xmm0, qword [eax]
movq qword [ecx], xmm0
jmp 0x43002a
lea ecx, [esp + 0x10]
push 0
call fcn.004dc850
mov ebx, eax
test edi, edi
je 0x430068
test bl, bl
mov ecx, dword [ebp + 0x10]
je 0x43006b
mov eax, dword [edi]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [section..00cfg]
mov ecx, edi
push 0x3f800000
call esi
mov eax, dword [edi]
mov esi, dword [eax + 0xc]
mov ecx, esi
call dword [section..00cfg]
mov ecx, edi
push 2
push 0
call esi
mov ecx, dword [ebp + 0x10]
mov bl, 1
jmp 0x43006b
push dword [esp + 0x34]
push dword [esp + 0x34]
call fcn.0046dcf0
cmp esi, edi
je 0x430066
add esi, 0x10
lea eax, [esp + 0x3c]
cmp byte [esi + 0xb], 0
movzx edx, byte [eax + 0xb]
js 0x43012d
test dl, dl
js 0x430057
mov ecx, dword [eax + 8]
mov dword [esi + 8], ecx
movq xmm0, qword [eax]
movq qword [esi], xmm0
jmp 0x430066
mov ecx, esi
push dword [esp + 0x40]
push dword [esp + 0x40]
call fcn.0046dcf0
xor ebx, ebx
mov ecx, dword [ebp + 0x10]
mov esi, dword [ebp + 0x14]
test ecx, ecx
je 0x4300ac
lea eax, [esp + 0x20]
cmp eax, ecx
je 0x4300ac
cmp byte [ecx + 0xb], 0
movzx edx, byte [esp + 0x2b]
js 0x430147
test dl, dl
jns 0x43009c
push dword [esp + 0x24]
push dword [esp + 0x24]
call fcn.00444ca0
jmp 0x4300ac
mov edx, ecx
mov ecx, dword [eax + 8]
mov dword [edx + 8], ecx
movq xmm0, qword [eax]
movq qword [edx], xmm0
mov edi, dword [ebp + 0x18]
test esi, esi
je 0x4300ed
lea eax, [esp + 0x48]
cmp eax, esi
je 0x4300ed
cmp byte [esi + 0xb], 0
movzx edx, byte [esp + 0x53]
js 0x43015f
test dl, dl
jns 0x4300df
mov ecx, esi
push dword [esp + 0x4c]
push dword [esp + 0x4c]
call fcn.00444ca0
jmp 0x4300ed
mov ecx, dword [eax + 8]
mov dword [esi + 8], ecx
movq xmm0, qword [eax]
movq qword [esi], xmm0
test edi, edi
je 0x4300f7
mov eax, dword [esp + 0x54]
mov dword [edi], eax
lea ecx, [esp + 0x10]
call fcn.0044cf40
mov ecx, dword [esp + 0x78]
xor ecx, ebp
call fcn.004948c8
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
test dl, dl
jns 0x430121
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
push edx
push eax
call fcn.0046dc00
jmp 0x43002a
test dl, dl
jns 0x430139
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
mov ecx, esi
push edx
push eax
call fcn.0046dc00
jmp 0x430066
test dl, dl
jns 0x430153
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
push edx
push eax
call fcn.00444ba0
jmp 0x4300ac
test dl, dl
jns 0x43016b
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x48]
mov ecx, esi
push edx
push eax
call fcn.00444ba0
jmp 0x4300ed