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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x100ab1c0
push 0x1008690a
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push ebx
push esi
push edi
mov eax, dword [0x100ae8c8]
xor dword [ebp - 8], eax
xor eax, ebp
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
wait
xor edi, edi
mov dword [ebp - 4], edi
mov dword [0x10119568], edi
mov eax, dword [0x2fb6ac4]
mov eax, dword [eax + 0x1d20]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp + 8]
cmp eax, edi
je 0x10072aad
cmp eax, 3
jne 0x10072c08
cmp dword [0x10191928], edi
jne 0x10072bfd
mov dword [ebp - 0x38], edi
mov ecx, 0x101a2048
call fcn.10001240
cmp edi, eax
jge 0x10072bf8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x101a203c]
mov edx, dword [ecx + edi*4]
sub eax, dword [edx]
cmp eax, 0xbb8
jae 0x10072bf2
mov eax, 0x2fc5570
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x1c], 0
lea esp, [esp]
mov ecx, dword [ebp - 0x1c]
cmp ecx, dword [0x2fb6a98]
jge 0x10072bf2
mov esi, dword [eax]
add eax, 4
mov dword [ebp - 0x30], eax
cmp dword [esi], 0xd70444
jne 0x10072bea
mov ebx, dword [esi + 0x10a4]
test ebx, ebx
je 0x10072bea
cmp dword [esi + 0x3c0], 1
je 0x10072bea
cmp dword [esi + 0x3b0], 0x270f
jle 0x10072bea
mov edx, dword [0x101a2048]
mov ecx, dword [edx + edi*4]
mov edx, dword [esi + 0x14]
cmp edx, dword [ecx]
jne 0x10072bea
fld dword [ebx + 0x280]
call fcn.100867a0
mov dword [ebp - 0x34], eax
fld dword [ebx + 0x288]
call fcn.100867a0
mov dword [ebp - 0x2c], eax
sub esp, 0x10
fld dword [0x1012d2ac]
fstp dword [esp + 0xc]
fld dword [0x1012d2a8]
fstp dword [esp + 8]
fild dword [ebp - 0x2c]
fstp dword [esp + 4]
fild dword [ebp - 0x34]
fstp dword [esp]
call fcn.100081e0
add esp, 0x10
fild dword [0x1012d2cc]
fcompp
fnstsw ax
test ah, 1
jne 0x10072bf2
mov esi, dword [esi + 0xc]
cmp dword [0x1011cd68], 4
je 0x10072bce
push esi
call fcn.1006f5d0
add esp, 4
wait
mov dword [ebp - 4], 0xfffffffe
mov eax, esi
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
inc dword [ebp - 0x1c]
jmp 0x10072b00
inc edi
jmp 0x10072ab9
mov eax, dword [ebp + 8]
xor edi, edi
cmp eax, 3
jne 0x10072c08
wait
jmp 0x10072fc1
cmp eax, 2
jne 0x10072c25
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax*4 + 0x2fb6ae0]
fld dword [ecx + 0x35c]
call fcn.100867a0
mov dword [ebp - 0x2c], eax
mov dword [0x1012d2d0], 0xffff
mov dword [ebp - 0x24], 0x2fc5570
mov dword [ebp - 0x20], edi
mov edi, 1
mov edi, edi
mov edx, dword [ebp - 0x20]
cmp edx, dword [0x2fb6a98]
jge 0x10072ed0
mov eax, dword [ebp - 0x24]
mov esi, dword [eax]
add eax, 4
mov dword [ebp - 0x24], eax
test esi, esi
je 0x10072ec3
cmp dword [esi], 0xd70444
jne 0x10072ec3
cmp dword [esi + 0x10a4], 0
je 0x10072ec3
cmp dword [esi + 0x3c0], edi
je 0x10072ec3
cmp dword [esi + 0x3b0], 0x270f
jle 0x10072ec3
mov ebx, dword [esi + 0xc]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x1012d224]
cmp eax, 0x1388
jae 0x10072cb9
cmp dword [0x1012d3bc], ebx
je 0x10072ec3
cmp dword [esi + 0x3b0], 0x3e7
jl 0x10072ec3
cmp dword [ebp - 0x28], ebx
je 0x10072ec3
cmp dword [ebp + 8], 2
jne 0x10072cee
fild dword [ebp - 0x2c]
fld dword [esi + 0x35c]
fcompp
fnstsw ax
test ah, 0x41
je 0x10072ec3
mov edi, 1
cmp dword [0x1019192c], edi
jne 0x10072d3e
xor ecx, ecx
xor eax, eax
mov edx, dword [0x1018de68]
mov dword [ebp - 0x3c], eax
cmp eax, edx
jge 0x10072d1d
cmp dword [eax*4 + 0x1018dcd8], ebx
je 0x10072ec3
add eax, edi
jmp 0x10072d05
cmp ecx, edi
je 0x10072ec3
fld dword [esi + 0x35c]
fild dword [0x10191de4]
fcompp
fnstsw ax
test ah, 1
je 0x10072ec3
mov ebx, dword [esi + 0x10a4]
cmp dword [0x10191918], edi
jne 0x10072d5e
mov eax, dword [esi + 0x5f4]
cmp eax, dword [esi + 0x610]
jne 0x10072ec3
cmp dword [ebp + 8], 4
jne 0x10072d80
cmp byte [ebx + 0x1d1], 0
jne 0x10072d80
fld dword [esi + 0x1074]
call fcn.100867a0
fld dword [esi + 0x107c]
jmp 0x10072d91
fld dword [ebx + 0x280]
call fcn.100867a0
fld dword [ebx + 0x288]
mov edi, eax
call fcn.100867a0
test edi, edi
jne 0x10072da4
test eax, eax
je 0x10072ec3
cmp dword [0x10191bc4], 3
jne 0x10072e4e
mov ecx, dword [esi + 0x3b0]
cmp ecx, 0x2af9
jl 0x10072dcb
cmp ecx, 0x2b35
jle 0x10072ec3
mov ecx, dword [esi + 0x5f4]
mov edx, dword [0x10119568]
mov dword [edx*4 + 0x10116e58], ecx
mov ecx, dword [esi + 0x610]
mov edx, dword [0x10119568]
mov dword [edx*4 + 0x10117628], ecx
mov ecx, dword [0x10119568]
mov dword [ecx*4 + 0x101185c8], edi
mov edx, dword [0x10119568]
mov dword [edx*4 + 0x10118d98], eax
lea edx, [esi + 0x360]
mov eax, dword [0x10119568]
imul eax, eax, 0xc8
add eax, 0x100fe7b8
mov cl, byte [edx]
mov byte [eax], cl
inc edx
inc eax
test cl, cl
jne 0x10072e21
mov eax, dword [esi + 0xc]
mov ecx, dword [0x10119568]
mov dword [ecx*4 + 0x10117df8], eax
inc dword [0x10119568]
mov edi, 1
add dword [ebp - 0x20], edi
jmp 0x10072c40
mov edx, dword [esi + 0x5f4]
mov ecx, dword [0x10119568]
mov dword [ecx*4 + 0x10116e58], edx
mov edx, dword [esi + 0x610]
mov ecx, dword [0x10119568]
mov dword [ecx*4 + 0x10117628], edx
mov edx, dword [0x10119568]
mov dword [edx*4 + 0x101185c8], edi
mov ecx, dword [0x10119568]
mov dword [ecx*4 + 0x10118d98], eax
lea edx, [esi + 0x360]
mov eax, dword [0x10119568]
imul eax, eax, 0xc8
add eax, 0x100fe7b8
mov cl, byte [edx]
mov byte [eax], cl
inc edx
inc eax
test cl, cl
jne 0x10072ea4
mov edx, dword [esi + 0xc]
mov eax, dword [0x10119568]
mov dword [eax*4 + 0x10117df8], edx
inc dword [0x10119568]
mov edi, 1
add dword [ebp - 0x20], edi
jmp 0x10072c40
cmp dword [0x10191854], edi
jne 0x10072ee7
mov ecx, dword [0x1012d2cc]
push ecx
call fcn.1003e460
add esp, 4
mov eax, dword [0x10191bc4]
cmp eax, edi
je 0x10072ef5
cmp eax, 2
jne 0x10072efe
push edi
call fcn.1004ac10
add esp, 4
cmp dword [0x10191bc4], 3
jle 0x10072f11
push 0
call fcn.1004ac10
add esp, 4
call fcn.10037b20
call fcn.10037a90
mov esi, eax
test esi, esi
jne 0x10072f39
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, eax
mov eax, 0x10624dd3
mul edx
shr edx, 6
mov dword [0x1012d218], edx
cmp dword [ebp + 8], 2
jne 0x10072bbc
test esi, esi
je 0x10072c02
fild dword [ebp - 0x2c]
mov eax, dword [esi*4 + 0x2fb6ae0]
fld dword [eax + 0x35c]
fcompp
fnstsw ax
test ah, 5
jp 0x10072f77
push 0x100a154c
call fcn.10008080
push esi
call fcn.1006f5d0
add esp, 8
wait
mov dword [ebp - 4], 0xfffffffe
mov eax, esi
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 0xfffffffe
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret