Function at 0x1003d970
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 [0x101b8894]
cmp eax, 0xea60
jbe 0x1003dc21
push ebx
mov ebx, dword [0x36208e4]
mov dword [ebp - 0x64], ebx
test ebx, ebx
je 0x1003dc20
cmp dword [0x10191928], 0
mov eax, dword [esi + 0xc]
push edi
jne 0x1003da2b
mov ecx, dword [ebx + 0x1d24]
mov dword [ebp - 0x60], ecx
cmp ecx, eax
jne 0x1003dc1f
xor edi, edi
lea ecx, [ecx]
lea ecx, [ebp - 0x58]
push ecx
push edi
call fcn.10006bb0
add esp, 8
mov ecx, 0x1019b964
xor esi, esi
call fcn.10001040
test eax, eax
jle 0x1003db57
mov edx, dword [0x1019b964]
mov eax, dword [edx + esi*4]
lea ecx, [ebp - 0x58]
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1003db36
test dl, dl
je 0x1003da24
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1003db36
add eax, 2
add ecx, 2
test dl, dl
jne 0x1003da00
xor eax, eax
jmp 0x1003db3b
fldz
mov dword [ebp - 0x60], 0
fstp dword [ebp - 0x68]
mov edi, 0x1012d2d8
lea esp, [esp]
mov eax, dword [edi]
test eax, eax
jle 0x1003db0b
push 0xaf3b24
push eax
call fcn.10006f10
mov esi, eax
add esp, 8
test esi, esi
je 0x1003db0b
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.10008200
fcomp dword [0x1009e8e8]
add esp, 0x10
fnstsw ax
test ah, 5
jp 0x1003db0b
mov eax, dword [esi + 0x3b0]
cmp eax, 0x2af9
jl 0x1003dac7
cmp eax, 0x2b35
jle 0x1003db0b
fild dword [esi + 0x5f4]
fidiv dword [esi + 0x610]
fstp dword [ebp - 0x5c]
mov al, al
mov bl, bl
mov cl, cl
fld dword [0x1009e8e4]
fld dword [ebp - 0x5c]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 5
jp 0x1003db06
fld dword [ebp - 0x68]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x1003db06
mov eax, dword [edi]
fstp dword [ebp - 0x68]
mov dword [ebp - 0x60], eax
jmp 0x1003db08
fstp st(0)
mov ebx, dword [ebp - 0x64]
add edi, 4
cmp edi, 0x1012d350
jl 0x1003da40
mov esi, dword [ebp - 0x60]
test esi, esi
jle 0x1003dc1f
push esi
call fcn.100386e0
add esp, 4
mov dword [ebp - 0x60], esi
jmp 0x1003d9cb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x1003db44
cmp dword [ebp - 0x40], eax
je 0x1003db72
mov ecx, 0x1019b964
inc esi
call fcn.10001040
cmp esi, eax
jl 0x1003d9f1
inc edi
cmp edi, 0x14
jl 0x1003d9d0
pop edi
pop ebx
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10086746
mov esp, ebp
pop ebp
ret
mov byte [0x1012d3f8], 1
fld dword [ebx + 0x1f6c]
call fcn.100867b0
mov dword [ebp - 0x5c], eax
fild dword [ebp - 0x5c]
push ecx
fstp dword [esp]
fld dword [ebx + 0x1f64]
call fcn.100867b0
mov dword [ebp - 0x5c], eax
fild dword [ebp - 0x5c]
push ecx
fstp dword [esp]
call fcn.10037e60
mov eax, dword [0x101a46e4]
mov ecx, dword [0x100eaf2c]
add esp, 8
push 0x1003cca0
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 [0x101b8978], eax
mov dword [0x1012d2c0], edi
mov byte [0x101b8988], dl
mov byte [0x1012d405], 0
call fcn.10038380
add esp, 8
call esi
mov ecx, dword [ebp - 0x60]
mov dword [0x101b8894], 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.100080a0
add esp, 0x10
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop esi
call fcn.10086746
mov esp, ebp
pop ebp
ret