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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4564a8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x110
push ebx
push esi
push edi
push ecx
lea edi, [ebp - 0x11c]
mov ecx, 0x44
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
pop ecx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x20], 0
mov eax, dword [ebp + 8]
and eax, 0xffffff
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 8]
shr eax, 0x18
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x38]
mov dword [eax + 0x414], ecx
mov dword [ebp - 0x44], 0
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x440]
cmp ecx, dword [ebp - 0x2c]
jne 0x430fe9
mov eax, dword [ebp - 0x2c]
add eax, 1
and eax, 0xffffff
mov ecx, dword [ebp - 0x14]
cmp eax, dword [ecx + 0x410]
je 0x430fe9
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x438], 1
je 0x430fe7
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x43c], 0
je 0x430fe7
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x444]
add ecx, 1
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x444], ecx
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x444], 3
jle 0x430fe7
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov edx, dword [eax + 0x414]
cmp edx, dword [ecx + 0x430]
jge 0x430f6c
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x414]
mov dword [ebp - 0x11c], ecx
jmp 0x430f7b
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0x430]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x11c]
cdq
sub eax, edx
sar eax, 1
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x42c], eax
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x42c], 2
jle 0x430fac
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x42c]
mov dword [ebp - 0x11c], edx
jmp 0x430fb6
mov dword [ebp - 0x11c], 2
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x11c]
mov dword [eax + 0x42c], ecx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x42c]
add ecx, 2
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x430], ecx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x438], 1
jmp 0x43102d
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x2c]
mov dword [eax + 0x440], ecx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x444], 0
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x438], 1
jne 0x43102d
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x438], 0
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x42c]
mov dword [eax + 0x430], edx
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [ebp - 0x14]
call fcn.00430bd0
movzx ecx, al
test ecx, ecx
jne 0x431045
jmp 0x4312fe
push 1
mov eax, dword [ebp - 0x14]
add eax, 0x44c
push eax
lea ecx, [ebp - 0x54]
call fcn.00421230
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [ebp - 0x14]
call fcn.00430bd0
movzx ecx, al
test ecx, ecx
jne 0x431086
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x54]
call fcn.004212b0
jmp 0x4312fe
mov esi, esp
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp esi, esp
call fcn.0043234a
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x43c], eax
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x438], 0
jne 0x431134
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov edx, dword [eax + 0x430]
cmp edx, dword [ecx + 0x42c]
jge 0x4310d9
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x430]
add ecx, 1
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x430], ecx
jmp 0x431132
mov eax, dword [ebp - 0x14]
fild dword [eax + 0x430]
fdivr dword [0x4583f8]
mov ecx, dword [ebp - 0x14]
fadd dword [ecx + 0x434]
mov edx, dword [ebp - 0x14]
fstp dword [edx + 0x434]
mov eax, dword [ebp - 0x14]
fld dword [eax + 0x434]
fcomp dword [0x4583f8]
fnstsw ax
test ah, 0x41
jne 0x431132
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x430]
add ecx, 1
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x430], ecx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x434], 0
jmp 0x431155
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x438], 1
jne 0x431155
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x430]
add ecx, 1
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x430], ecx
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x430], 0xff
jge 0x431175
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x430]
mov dword [ebp - 0x11c], edx
jmp 0x43117f
mov dword [ebp - 0x11c], 0xff
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x11c]
mov dword [eax + 0x430], ecx
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov edx, dword [eax + 0x40c]
cmp edx, dword [ecx + 0x410]
je 0x431284
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x40c]
and ecx, 0xff
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + ecx*4 + 8]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x40c]
and ecx, 0xff
mov edx, dword [ebp - 0x14]
mov dword [edx + ecx*4 + 8], 0
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x40c]
add ecx, 1
and ecx, 0xffffff
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x40c], ecx
mov eax, dword [ebp - 0x44]
add eax, 1
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + 0x20c]
sub ecx, 0xc
mov dword [ebp - 0x11c], ecx
fild dword [ebp - 0x11c]
fdiv qword [0x4580a8]
fadd qword [0x462618]
fstp qword [0x462618]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + 4]
cmp ecx, dword [ebp - 0x2c]
jne 0x431271
mov eax, dword [ebp - 0x20]
push eax
mov ecx, 0x462648
call fcn.0042fcd0
mov eax, dword [ebp - 0x14]
movzx ecx, byte [eax + 0x448]
test ecx, ecx
jne 0x43126f
mov esi, esp
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp esi, esp
call fcn.0043234a
mov ecx, dword [ebp - 0x20]
sub eax, dword [ecx + 0x230]
push eax
mov ecx, dword [ebp - 0x14]
call fcn.00430ca0
jmp 0x431284
mov eax, dword [ebp - 0x20]
push eax
mov ecx, 0x462648
call fcn.0042fcd0
jmp 0x43118e
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov edx, dword [eax + 0x40c]
cmp edx, dword [ecx + 0x410]
jne 0x4312be
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x43c], 0
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x468], 0
mov eax, dword [ebp - 0x14]
mov byte [eax + 0x448], 0
jmp 0x4312ef
cmp dword [ebp - 0x44], 0
je 0x4312ef
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x40c]
and ecx, 0xff
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + ecx*4 + 8]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + 0x230]
mov dword [eax + 0x468], edx
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x54]
call fcn.004212b0
push edx
mov ecx, ebp
push eax
lea edx, [0x43132f]
call fcn.0043236d
pop eax
pop edx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
add esp, 0x11c
cmp ebp, esp
call fcn.0043234a
mov esp, ebp
pop ebp
ret 4