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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x6c
mov eax, dword [0x100ae8c8]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x101b8884]
cmp eax, 0xea60
jbe 0x1003d5c1
push ebx
mov ebx, dword [0x361f6dc]
mov dword [ebp - 0x64], ebx
test ebx, ebx
je 0x1003d5c0
cmp dword [0x10191928], 0
mov eax, dword [esi + 0xc]
push edi
jne 0x1003d3cb
mov ecx, dword [ebx + 0x1d24]
mov dword [ebp - 0x60], ecx
cmp ecx, eax
jne 0x1003d5bf
xor edi, edi
lea ecx, [ecx]
lea ecx, [ebp - 0x58]
push ecx
push edi
call fcn.10006ba0
add esp, 8
mov ecx, 0x1019c4d4
xor esi, esi
call fcn.10001240
test eax, eax
jle 0x1003d4f7
mov edx, dword [0x1019c4d4]
mov eax, dword [edx + esi*4]
lea ecx, [ebp - 0x58]
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1003d4d6
test dl, dl
je 0x1003d3c4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1003d4d6
add eax, 2
add ecx, 2
test dl, dl
jne 0x1003d3a0
xor eax, eax
jmp 0x1003d4db
fldz
mov dword [ebp - 0x60], 0
fstp dword [ebp - 0x68]
mov edi, 0x1012d2d8
lea esp, [esp]
mov eax, dword [edi]
test eax, eax
jle 0x1003d4ab
push 0xaf2ae4
push eax
call fcn.10006f00
mov esi, eax
add esp, 8
test esi, esi
je 0x1003d4ab
mov eax, dword [esi + 0x10a4]
fld dword [eax + 0x280]
sub esp, 0x10
fstp dword [ebp - 0x5c]
fld dword [eax + 0x288]
fstp dword [ebp - 0x6c]
fld dword [ebp - 0x6c]
fstp dword [esp + 0xc]
fld dword [ebp - 0x5c]
fstp dword [esp + 8]
fld dword [ebx + 0x1f6c]
fstp dword [esp + 4]
fld dword [ebx + 0x1f64]
fstp dword [esp]
call fcn.100081f0
fcomp dword [0x1009e8d0]
add esp, 0x10
fnstsw ax
test ah, 5
jp 0x1003d4ab
mov eax, dword [esi + 0x3b0]
cmp eax, 0x2af9
jl 0x1003d467
cmp eax, 0x2b35
jle 0x1003d4ab
fild dword [esi + 0x5f4]
fidiv dword [esi + 0x610]
fstp dword [ebp - 0x5c]
mov al, al
mov bl, bl
mov cl, cl
fld dword [0x1009e8cc]
fld dword [ebp - 0x5c]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 5
jp 0x1003d4a6
fld dword [ebp - 0x68]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x1003d4a6
mov eax, dword [edi]
fstp dword [ebp - 0x68]
mov dword [ebp - 0x60], eax
jmp 0x1003d4a8
fstp st(0)
mov ebx, dword [ebp - 0x64]
add edi, 4
cmp edi, 0x1012d350
jl 0x1003d3e0
mov esi, dword [ebp - 0x60]
test esi, esi
jle 0x1003d5bf
push esi
call fcn.10038100
add esp, 4
mov dword [ebp - 0x60], esi
jmp 0x1003d36b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x1003d4e4
cmp dword [ebp - 0x40], eax
je 0x1003d512
mov ecx, 0x1019c4d4
inc esi
call fcn.10001240
cmp esi, eax
jl 0x1003d391
inc edi
cmp edi, 0xa
jl 0x1003d370
pop edi
pop ebx
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10085dc6
mov esp, ebp
pop ebp
ret
mov byte [0x1012d3f8], 1
fld dword [ebx + 0x1f6c]
call fcn.10085e30
mov dword [ebp - 0x5c], eax
fild dword [ebp - 0x5c]
push ecx
fstp dword [esp]
fld dword [ebx + 0x1f64]
call fcn.10085e30
mov dword [ebp - 0x5c], eax
fild dword [ebp - 0x5c]
push ecx
fstp dword [esp]
call fcn.10037870
mov eax, dword [0x101a46dc]
mov ecx, dword [0x100eaf2c]
add esp, 8
push 0x1003c760
push 0x2bc
add eax, 0x47
push eax
push ecx
call dword [sym.imp.USER32.dll_SetTimer]
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
mov dl, byte [0x1012d405]
push 0x4a
push edi
mov dword [0x101b8968], eax
mov dword [0x1012d2c0], edi
mov byte [0x101b8978], dl
mov byte [0x1012d405], 0
call fcn.10037da0
add esp, 8
call esi
mov ecx, dword [ebp - 0x60]
mov dword [0x101b8884], eax
push 0x10
lea eax, [ebp - 0x38]
push eax
push ecx
call dword [sym.imp.MSVCR100D.dll__itoa]
lea edx, [ebp - 0x38]
push edx
call fcn.10008090
add esp, 0x10
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop esi
call fcn.10085dc6
mov esp, ebp
pop ebp
ret