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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5b24fb
mov eax, dword fs:[0]
push eax
mov eax, 0x24a0
call fcn.005890a0
mov eax, dword [0x632e20]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x2418], 0
mov dword [ebp - 0x241c], 0
mov dword [ebp - 0x2420], 0
mov dword [ebp - 0x2424], 0
mov dword [ebp - 0x2428], 0
mov dword [ebp - 0x242c], 0
mov dword [ebp - 0x2434], 0
mov dword [ebp - 0x2430], 0
mov dword [ebp - 0x243c], 0
mov dword [ebp - 0x2438], 0
mov dword [ebp - 0x2444], 0
mov dword [ebp - 0x2440], 0
mov dword [ebp - 0x244c], 0
mov dword [ebp - 0x2448], 0
mov dword [ebp - 0x2454], 0
mov dword [ebp - 0x2450], 0
push 0
mov ecx, dword [ebp - 0x14]
call fcn.00515860
push eax
lea ecx, [ebp - 0x245c]
call fcn.005083c0
mov dword [ebp - 4], 0
push 0x2400
push 0
lea eax, [ebp - 0x2414]
push eax
call fcn.00588e10
add esp, 0xc
mov dword [ebp - 0x241c], 0
push 1
mov ecx, dword [ebp - 0x14]
call fcn.00537550
push 0x63aa90
call fcn.00538340
add esp, 4
mov dword [0x63ab98], eax
mov eax, dword [0x63ab98]
push eax
call fcn.0056a090
add esp, 4
movzx ecx, al
test ecx, ecx
jne 0x537d65
mov ecx, dword [ebp - 0x14]
call fcn.00510510
movzx eax, al
test eax, eax
jne 0x537d65
push 0x63aa90
call fcn.00538340
add esp, 4
mov dword [0x63ab98], eax
push 0x1e
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x14]
mov eax, dword [edx + 0xc]
call eax
jmp 0x537d1e
mov ecx, dword [ebp - 0x14]
call fcn.00510510
movzx eax, al
test eax, eax
jne 0x5382ed
movzx eax, byte [0x63ab90]
test eax, eax
je 0x537e3f
call fcn.005384d0
movzx eax, al
test eax, eax
jne 0x537e3f
lea ecx, [ebp - 0x245c]
call fcn.00508400
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.00536b70
lea ecx, [ebp - 0x245c]
call fcn.00528a50
mov dword [0x63ab9c], 0
movzx eax, byte [0x63ab90]
test eax, eax
je 0x537df5
call fcn.005384d0
movzx eax, al
test eax, eax
jne 0x537df5
mov ecx, dword [ebp - 0x14]
call fcn.00510510
movzx eax, al
test eax, eax
jne 0x537df5
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x537dc5
mov ecx, dword [ebp - 0x14]
call fcn.00510510
movzx eax, al
test eax, eax
je 0x537e09
jmp 0x5382ed
mov dword [ebp - 0x243c], 0
mov dword [ebp - 0x2438], 0
mov eax, dword [ebp - 0x243c]
mov dword [ebp - 0x2444], eax
mov ecx, dword [ebp - 0x2438]
mov dword [ebp - 0x2440], ecx
mov eax, dword [ebp - 0x14]
mov byte [eax + 0x2e4], 0
lea ecx, [ebp - 0x245c]
call fcn.00508400
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.00537660
movzx eax, al
test eax, eax
je 0x537e78
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.0054ceb0
mov ecx, dword [ebp - 0x14]
cmp eax, dword [ecx + 0x1cc]
je 0x537ea4
lea ecx, [ebp - 0x245c]
call fcn.00528a50
push 1
mov ecx, dword [ebp - 0x14]
call fcn.00537550
movzx eax, al
test eax, eax
jne 0x537e99
jmp 0x537d65
lea ecx, [ebp - 0x245c]
call fcn.00508400
push 0x2000
lea eax, [ebp - 0x2414]
push eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.00538360
mov dword [ebp - 0x2418], eax
cmp dword [ebp - 0x2418], 0
jle 0x537fa6
mov dword [ebp - 0x242c], 0
mov eax, dword [ebp - 0x2418]
mov byte [ebp + eax - 0x2414], 0
cmp dword [ebp - 0x2418], 8
jle 0x537f34
movsx eax, byte [ebp - 0x2414]
cmp eax, 0x64
jne 0x537f34
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.005269e0
push eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.0044b790
push eax
mov eax, dword [ebp - 0x2418]
push eax
lea ecx, [ebp - 0x2414]
push ecx
call fcn.00528aa0
add esp, 0x10
jmp 0x537f7c
movzx eax, byte [0x63ab90]
test eax, eax
jne 0x537f7c
mov eax, dword [ebp - 0x14]
add eax, 0x1b4
push eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.005269e0
push eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.0044b790
push eax
mov ecx, dword [ebp - 0x2418]
push ecx
lea edx, [ebp - 0x2414]
push edx
mov ecx, dword [ebp - 0x14]
call fcn.00539660
cmp dword [ebp - 0x2418], 8
jle 0x537f9f
mov eax, dword [ebp - 0x241c]
mov ecx, dword [ebp - 0x241c]
add ecx, 1
mov dword [ebp - 0x241c], ecx
cmp eax, 0x12
jge 0x537fa4
jmp 0x537d65
jmp 0x53800e
cmp dword [ebp - 0x2418], 0
jge 0x537fda
lea ecx, [ebp - 0x245c]
call fcn.00528a50
push 1
mov ecx, dword [ebp - 0x14]
call fcn.00537550
movzx eax, al
test eax, eax
jne 0x537fd0
jmp 0x537d65
push 2
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x53800e
cmp dword [ebp - 0x2418], 0
jne 0x53800e
cmp dword [ebp - 0x241c], 0
jne 0x537fff
lea ecx, [ebp - 0x245c]
call fcn.00528a50
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [ebp - 0x242c]
add eax, 1
mov dword [ebp - 0x242c], eax
movzx eax, byte [0x63ab90]
test eax, eax
jne 0x5382a6
lea ecx, [ebp - 0x245c]
call fcn.00508400
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x2420], eax
mov eax, dword [ebp - 0x2420]
sub eax, dword [ebp - 0x2428]
cmp eax, 0x28
jb 0x538067
mov ecx, dword [ebp - 0x14]
call fcn.00538fc0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x2428], eax
mov eax, dword [ebp - 0x2428]
mov dword [ebp - 0x2424], eax
jmp 0x53808c
mov eax, dword [ebp - 0x2420]
sub eax, dword [ebp - 0x2424]
cmp eax, 0x14
jb 0x53808c
mov ecx, dword [ebp - 0x14]
call fcn.00539350
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x2424], eax
call fcn.00513b30
mov dword [ebp - 0x2454], eax
mov dword [ebp - 0x2450], edx
mov eax, dword [ebp - 0x2454]
sub eax, dword [ebp - 0x2434]
mov ecx, dword [ebp - 0x2450]
sbb ecx, dword [ebp - 0x2430]
cdq
push edx
push eax
call fcn.005144d0
add esp, 8
mov dword [ebp - 0x24a4], eax
mov dword [ebp - 0x24a0], edx
cmp dword [ebp - 0x24a0], 0
jl 0x538111
jg 0x5380e0
cmp dword [ebp - 0x24a4], 3
jb 0x538111
mov ecx, dword [ebp - 0x14]
call fcn.00538920
call fcn.00513b30
mov dword [ebp - 0x2434], eax
mov dword [ebp - 0x2430], edx
mov eax, dword [ebp - 0x2434]
mov dword [ebp - 0x2454], eax
mov ecx, dword [ebp - 0x2430]
mov dword [ebp - 0x2450], ecx
mov eax, dword [ebp - 0x2454]
sub eax, dword [ebp - 0x2444]
mov ecx, dword [ebp - 0x2450]
sbb ecx, dword [ebp - 0x2440]
cdq
push edx
push eax
call fcn.005144d0
add esp, 8
mov dword [ebp - 0x24a4], eax
mov dword [ebp - 0x24a0], edx
cmp dword [ebp - 0x24a0], 0
jl 0x538199
jg 0x538157
cmp dword [ebp - 0x24a4], 0x12c
jb 0x538199
mov ecx, dword [ebp - 0x14]
call fcn.005387d0
mov eax, dword [ebp - 0x2454]
mov dword [ebp - 0x243c], eax
mov ecx, dword [ebp - 0x2450]
mov dword [ebp - 0x2438], ecx
mov edx, dword [ebp - 0x243c]
mov dword [ebp - 0x2444], edx
mov eax, dword [ebp - 0x2438]
mov dword [ebp - 0x2440], eax
push 0x23
call fcn.00538440
add esp, 4
mov eax, dword [ebp - 0x2454]
sub eax, dword [ebp - 0x243c]
mov ecx, dword [ebp - 0x2450]
sbb ecx, dword [ebp - 0x2438]
cdq
push edx
push eax
call fcn.005144d0
add esp, 8
mov ecx, eax
mov esi, edx
mov eax, dword [str.___b]
cdq
mov dword [ebp - 0x24a4], ecx
mov dword [ebp - 0x24a0], esi
mov dword [ebp - 0x24ac], eax
mov dword [ebp - 0x24a8], edx
mov edx, dword [ebp - 0x24a0]
cmp edx, dword [ebp - 0x24a8]
jl 0x53825e
jg 0x5381fc
mov eax, dword [ebp - 0x24a4]
cmp eax, dword [ebp - 0x24ac]
jb 0x53825e
call fcn.0053c870
test eax, eax
je 0x538224
mov eax, dword [ebp - 0x14]
add eax, 0x1b4
push eax
mov ecx, dword [0x63ab94]
push ecx
mov edx, dword [0x63ab98]
push edx
mov ecx, dword [ebp - 0x14]
call fcn.005388f0
mov eax, dword [ebp - 0x2454]
mov dword [ebp - 0x243c], eax
mov ecx, dword [ebp - 0x2450]
mov dword [ebp - 0x2438], ecx
mov eax, dword [ebp - 0x14]
movzx ecx, byte [eax + 0x2e4]
test ecx, ecx
jne 0x53825e
mov dword [ebp - 0x2444], 0
mov dword [ebp - 0x2440], 0
mov eax, dword [ebp - 0x2454]
cmp eax, dword [ebp - 0x244c]
jne 0x53827a
mov ecx, dword [ebp - 0x2450]
cmp ecx, dword [ebp - 0x2448]
je 0x5382a6
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x2e0], 0
je 0x5382a6
mov eax, dword [ebp - 0x244c]
mov dword [ebp - 0x2454], eax
mov ecx, dword [ebp - 0x2448]
mov dword [ebp - 0x2450], ecx
mov ecx, dword [ebp - 0x14]
call fcn.00538510
cmp dword [ebp - 0x242c], 4
jb 0x5382c2
lea ecx, [ebp - 0x245c]
call fcn.00528a50
push 0x28
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebp - 0x241c], 0x12
jl 0x5382de
lea ecx, [ebp - 0x245c]
call fcn.00528a50
push 2
call dword [sym.imp.KERNEL32.dll_Sleep]
mov dword [ebp - 0x241c], 0
jmp 0x537d65
lea ecx, [ebp - 0x245c]
call fcn.00508400
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.00536b70
lea ecx, [ebp - 0x245c]
call fcn.00528a50
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x245c]
call fcn.00508440
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0058841d
mov esp, ebp
pop ebp
ret