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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50
mov eax, dword [0x100bc018]
xor eax, ebp
mov dword [ebp - 4], eax
cmp byte [esi + 0x5c85], 0
je 0x10057d00
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov eax, dword [0x106868a0]
mov dl, byte [eax + 0xb]
and dl, 7
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x24], 0x173
mov dword [ebp - 0x20], 0x174
mov dword [ebp - 0x1c], 0x175
mov dword [ebp - 0x18], 0x176
mov dword [ebp - 0x14], 0x177
mov dword [ebp - 0x10], 0x179
mov dword [ebp - 0xc], 0x17a
mov dword [ebp - 8], 0x17b
mov dword [ebp - 0x30], 4
cmp dl, 4
jne 0x100578ce
mov dword [ebp - 0x30], 5
push ebx
xor ebx, ebx
push edi
mov dword [ebp - 0x2c], ebx
cmp dword [ebp - 0x30], ebx
jle 0x100579ba
mov edi, edi
movzx eax, word [ebp + ebx*4 - 0x24]
mov edx, 0x879340c
cwde
fild dword [edx]
shl eax, 6
lea edx, [eax + esi]
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fld dword [edx + 0x130]
fcomp st(1)
fnstsw ax
test ah, 0x41
je 0x100579ab
fld dword [edx + 0x138]
fcompp
fnstsw ax
test ah, 5
jnp 0x100579ad
fild dword [0x8793410]
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fld dword [edx + 0x134]
fcomp st(1)
fnstsw ax
test ah, 0x41
je 0x100579ab
fld dword [edx + 0x13c]
fcompp
fnstsw ax
test ah, 5
jnp 0x100579ad
mov eax, dword [ebp + ebx*4 - 0x24]
lea edi, [eax + 5]
shl edi, 6
sub ecx, dword [edi + esi]
cmp dword [ebp + 8], 0x201
je 0x10057a9f
shl eax, 6
lea ebx, [eax + esi]
mov byte [ebx + 0x144], 0
cmp ecx, 0x1f4
jb 0x10057cfe
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [edi + esi], eax
xor eax, eax
mov ecx, dword [ebp + eax*4 - 0x24]
shl ecx, 6
inc eax
mov byte [ecx + esi + 0x146], 0
cmp eax, dword [ebp - 0x30]
jl 0x10057987
mov ecx, dword [ebp - 0x34]
mov byte [ebx + 0x146], 1
mov ebx, dword [ebp - 0x2c]
jmp 0x100579ad
fstp st(0)
inc ebx
mov dword [ebp - 0x2c], ebx
cmp ebx, dword [ebp - 0x30]
jl 0x100578e0
mov ebx, 5
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x38], 0x879340c
lea esp, [esp]
movzx eax, word [ebp + ebx*4 - 0x24]
mov edx, dword [ebp - 0x38]
cwde
fild dword [edx]
shl eax, 6
lea edx, [eax + esi]
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fld dword [edx + 0x130]
fcomp st(1)
fnstsw ax
test ah, 0x41
je 0x10057abe
fld dword [edx + 0x138]
fcompp
fnstsw ax
test ah, 5
jnp 0x10057ac0
fild dword [0x8793410]
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fld dword [edx + 0x134]
fcomp st(1)
fnstsw ax
test ah, 0x41
je 0x10057abe
fld dword [edx + 0x13c]
fcompp
fnstsw ax
test ah, 5
jnp 0x10057ac0
mov eax, dword [ebp + ebx*4 - 0x24]
lea edi, [eax + 5]
shl edi, 6
sub ecx, dword [edi + esi]
shl eax, 6
cmp dword [ebp + 8], 0x201
je 0x10057b53
lea ebx, [eax + esi]
mov byte [ebx + 0x144], 0
cmp ecx, 0x1f4
jb 0x10057cfe
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebp - 0x34]
mov dword [edi + esi], eax
mov byte [esi + 0x5f86], 0
mov byte [esi + 0x5fc6], 0
mov byte [esi + 0x6006], 0
mov byte [ebx + 0x146], 1
mov ebx, dword [ebp - 0x2c]
jmp 0x10057ac0
mov edx, eax
shl edx, 6
pop edi
mov byte [edx + esi + 0x144], 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ab6d6
mov esp, ebp
pop ebp
ret 4
fstp st(0)
inc ebx
mov dword [ebp - 0x2c], ebx
cmp ebx, 8
jl 0x100579d0
fild dword [0x879340c]
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fld dword [esi + 0x5f30]
fcomp st(1)
fnstsw ax
test ah, 0x41
je 0x10057c31
fld dword [esi + 0x5f38]
fcompp
fnstsw ax
test ah, 5
jnp 0x10057c33
fild dword [0x8793410]
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fld dword [esi + 0x5f34]
fcomp st(1)
fnstsw ax
test ah, 0x41
je 0x10057c31
fld dword [esi + 0x5f3c]
fcompp
fnstsw ax
test ah, 5
jnp 0x10057c33
cmp dword [ebp + 8], 0x201
jne 0x10057b6d
pop edi
mov byte [esi + 0x5f44], 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ab6d6
mov esp, ebp
pop ebp
ret 4
pop edi
mov byte [eax + esi + 0x144], 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ab6d6
mov esp, ebp
pop ebp
ret 4
sub ecx, dword [esi + 0x5f40]
mov byte [esi + 0x5f44], 0
cmp ecx, 0x1f4
jb 0x10057cfe
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, dword [sym.imp.MSVCR100.dll_atoi]
mov dword [esi + 0x5f40], eax
lea ecx, [esi + 0x5e0d]
mov dword [0xe8cb3c], 0
push ecx
mov byte [esi + 0x5c8c], 0xf
mov byte [esi + 0x5ca1], 1
call edi
lea edx, [esi + 0x5e4d]
push edx
mov ebx, eax
call edi
mov dword [ebp - 0x14], eax
lea eax, [esi + 0x5e8d]
push eax
call edi
lea ecx, [esi + 0x5ecd]
push ecx
mov dword [ebp - 0x10], eax
call edi
mov dword [ebp - 0xc], eax
add esp, 0x10
xor eax, eax
cmp dword [ebp - 0x30], 5
jne 0x10057bf6
lea edx, [esi + 0x5f0d]
push edx
call edi
add esp, 4
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x48], edx
mov edx, dword [ebp - 0xc]
lea eax, [ebp - 0x50]
mov dword [ebp - 0x44], ecx
mov ecx, 0x18
push eax
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x50], 0x9ff18c1
call fcn.1008c360
mov ecx, dword [ebp - 0x34]
add esp, 4
jmp 0x10057c33
fstp st(0)
fild dword [0x879340c]
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fld dword [esi + 0x5d70]
fcomp st(1)
fnstsw ax
test ah, 0x41
je 0x10057cfc
fld dword [esi + 0x5d78]
fcompp
fnstsw ax
test ah, 5
jnp 0x10057cfe
fild dword [0x8793410]
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fld dword [esi + 0x5d74]
fcomp st(1)
fnstsw ax
test ah, 0x41
je 0x10057cfc
fld dword [esi + 0x5d7c]
fcompp
fnstsw ax
test ah, 5
jnp 0x10057cfe
cmp dword [ebp + 8], 0x201
jne 0x10057cb1
pop edi
mov byte [esi + 0x5d84], 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ab6d6
mov esp, ebp
pop ebp
ret 4
sub ecx, dword [esi + 0x5d80]
mov byte [esi + 0x5d84], 0
cmp ecx, 0x1f4
jb 0x10057cfe
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esi + 0x5d80], eax
mov dword [0xe8cb3c], 0
pop edi
mov byte [esi + 0x5c8c], 0xf
mov byte [esi + 0x5ca1], 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ab6d6
mov esp, ebp
pop ebp
ret 4
fstp st(0)
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ab6d6
mov esp, ebp
pop ebp
ret 4