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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
cmp dword [0xbdaf20], 0
push esi
push edi
je case.default.0x4f38bd
mov ecx, dword [0xbcd214]
mov esi, 0xdac
mov edi, esi
mov eax, dword [edi*4 + 0x20a514c]
cmp dword [eax + 4], 3
jne 0x4f384f
movzx edx, word [eax + 0x78]
cmp edx, 1
je 0x4f37fd
cmp edx, 6
jne 0x4f384f
cmp byte [eax + 0xa], 0
jg 0x4f384f
cmp byte [eax + 0x9c0], 0
jne 0x4f384f
cmp byte [eax + 0x149], 0x3a
mov esi, edi
jne 0x4f3851
test byte [eax + 0x1e8], 0x20
jne 0x4f3851
mov edx, dword [0xbcd218]
xor eax, eax
sub edx, ecx
sar edx, 2
test edx, edx
jle 0x4f383b
cmp dword [ecx + eax*4], esi
je 0x4f3851
inc eax
cmp eax, edx
jl 0x4f3831
mov edx, 0x11e
mov ecx, esi
call fcn.00522900
mov ecx, dword [0xbcd214]
jmp 0x4f3851
mov esi, edi
inc esi
cmp esi, 0x1194
jl 0x4f37e0
mov eax, dword [0xbcd218]
xor esi, esi
sub eax, ecx
test eax, 0xfffffffc
jle 0x4f38af
nop word [eax + eax]
mov eax, dword [ecx + esi*4]
test eax, eax
js 0x4f3894
cmp eax, 0x1194
jge 0x4f3894
mov edx, dword [eax*4 + 0x20a514c]
cmp dword [edx + 4], 3
jne 0x4f3894
cmp byte [edx + 0x149], 0x3a
je 0x4f38a0
push eax
call fcn.004f4d50
mov ecx, dword [0xbcd214]
mov eax, dword [0xbcd218]
inc esi
sub eax, ecx
sar eax, 2
cmp esi, eax
jl 0x4f3870
mov eax, dword [0xbcd08c]
cmp eax, 0xa
ja case.default.0x4f38bd
jmp dword [eax*4 + 0x4f3bcc]
cmp dword [0xbcd20c], 0
jle 0x4f38fe
call fcn.004f40f0
test eax, eax
jne 0x4f38fe
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push dword [0xbcd0c4]
mov dword [0xbcd098], eax
push 2
mov dword [0xbcd08c], 2
call fcn.004f4fc0
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp dword [0xbcd204], 0
jne case.default.0x4f38bd
call fcn.004f40f0
cmp eax, dword [0xbcd0b4]
jg case.default.0x4f38bd
push dword [0xbcd0c4]
mov dword [0xbcd204], 1
push 1
mov dword [0xbcd08c], 1
call fcn.004f4fc0
pop edi
pop esi
mov esp, ebp
pop ebp
ret
push dword [0xbcd0c4]
mov dword [0xbcd08c], 0
push 0
call fcn.004f4fc0
pop edi
pop esi
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetTickCount]
imul ecx, dword [0xbcd0a8], 0x3e8
sub eax, dword [0xbcd098]
cmp ecx, eax
ja case.default.0x4f38bd
mov eax, 0x88888889
mov dword [ebp - 4], 0x140
imul dword [0xbcd0ac]
mov eax, 1
mov ecx, 0xa9b83c
add edx, dword [0xbcd0ac]
sar edx, 5
mov esi, edx
shr esi, 0x1f
add esi, edx
cmove esi, eax
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00405650
mov eax, dword [ebp - 8]
mov ecx, dword [0xa9b83c]
cmp byte [eax + 0xd], 0
jne 0x4f39d2
cmp dword [eax + 0x10], 0x140
jle 0x4f39d4
mov eax, ecx
cmp eax, ecx
jne 0x4f39f7
push 0x140
push str.Could_not_find_message__d_
push 0xa9b7bc
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
mov eax, 0xa9b7bc
jmp 0x4f39fa
add eax, 0x18
push esi
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0xb90558
call fcn.004cdd70
add esp, 0x24
mov dword [0xbcd08c], 3
push dword [0xbcd0c4]
push 3
call fcn.004f4fc0
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0xbcd0f0
call fcn.004f4ed0
mov edx, dword [0xbcd0f4]
test edx, edx
js 0x4f3a72
cmp edx, 0x1194
jge 0x4f3a72
mov ecx, dword [edx*4 + 0x20a514c]
mov eax, dword [0xbcd100]
mov dword [ecx + 0x2b8], eax
mov ecx, dword [edx*4 + 0x20a514c]
mov eax, dword [0xbcd104]
mov dword [ecx + 0x2bc], eax
push 1
push 0xb
mov dword [0xbcd0c4], 1
call fcn.004f4fc0
push dword [0xbcd0c4]
mov dword [0xbcd08c], 4
push 4
call fcn.004f4fc0
pop edi
pop esi
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push dword [0xbcd0c4]
mov dword [0xbcd09c], eax
push 5
mov dword [0xbcd08c], 5
call fcn.004f4fc0
pop edi
pop esi
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetTickCount]
imul ecx, dword [0xbcd0ac], 0x3e8
sub eax, dword [0xbcd09c]
cmp ecx, eax
ja 0x4f3b78
lea eax, [ebp - 4]
mov dword [ebp - 4], 0x141
push eax
lea eax, [ebp - 0x10]
mov ecx, 0xa9b83c
push eax
call fcn.00405650
mov eax, dword [ebp - 8]
mov ecx, dword [0xa9b83c]
cmp byte [eax + 0xd], 0
jne 0x4f3b19
cmp dword [eax + 0x10], 0x141
jle 0x4f3b1b
mov eax, ecx
cmp eax, ecx
jne 0x4f3b3e
push 0x141
push str.Could_not_find_message__d_
push 0xa9b7bc
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
mov eax, 0xa9b7bc
jmp 0x4f3b41
add eax, 0x18
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0xb90558
call fcn.004cdd70
add esp, 0x20
mov dword [0xbcd08c], 6
push dword [0xbcd0c4]
push 6
call fcn.004f4fc0
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0xbcd0bc
call fcn.004f4970
mov ecx, 0xbcd0bc
call fcn.004f43b0
pop edi
pop esi
mov esp, ebp
pop ebp
ret
call fcn.004f3c00
pop edi
pop esi
mov esp, ebp
pop ebp
ret
call fcn.004f3c30
pop edi
pop esi
mov esp, ebp
pop ebp
ret
call fcn.004f3da0
pop edi
pop esi
mov esp, ebp
pop ebp
ret
call fcn.004f3e80
pop edi
pop esi
mov esp, ebp
pop ebp
ret
call fcn.004f3ec0
pop edi
pop esi
mov esp, ebp
pop ebp
ret