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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5b246b
mov eax, dword fs:[0]
push eax
mov eax, 0x24a0
call fcn.005890d0
mov eax, dword [0x63ee20]
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.00507d20
push eax
lea ecx, [ebp - 0x245c]
call fcn.00508640
mov dword [ebp - 4], 0
push 0x2400
push 0
lea eax, [ebp - 0x2414]
push eax
call fcn.00588e40
add esp, 0xc
mov dword [ebp - 0x241c], 0
push 1
mov ecx, dword [ebp - 0x14]
call fcn.00537510
push 0x646ac0
call fcn.00538300
add esp, 4
mov dword [0x646bc8], eax
mov eax, dword [0x646bc8]
push eax
call fcn.0056a030
add esp, 4
movzx ecx, al
test ecx, ecx
jne 0x537d25
mov ecx, dword [ebp - 0x14]
call fcn.00510790
movzx eax, al
test eax, eax
jne 0x537d25
push 0x646ac0
call fcn.00538300
add esp, 4
mov dword [0x646bc8], 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 0x537cde
mov ecx, dword [ebp - 0x14]
call fcn.00510790
movzx eax, al
test eax, eax
jne 0x5382ad
movzx eax, byte [0x646bc0]
test eax, eax
je 0x537dff
call fcn.00538490
movzx eax, al
test eax, eax
jne 0x537dff
lea ecx, [ebp - 0x245c]
call fcn.00508680
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.00536b30
lea ecx, [ebp - 0x245c]
call fcn.00528a70
mov dword [0x646bcc], 0
movzx eax, byte [0x646bc0]
test eax, eax
je 0x537db5
call fcn.00538490
movzx eax, al
test eax, eax
jne 0x537db5
mov ecx, dword [ebp - 0x14]
call fcn.00510790
movzx eax, al
test eax, eax
jne 0x537db5
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x537d85
mov ecx, dword [ebp - 0x14]
call fcn.00510790
movzx eax, al
test eax, eax
je 0x537dc9
jmp 0x5382ad
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.00508680
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.00537620
movzx eax, al
test eax, eax
je 0x537e38
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.0054ceb0
mov ecx, dword [ebp - 0x14]
cmp eax, dword [ecx + 0x1cc]
je 0x537e64
lea ecx, [ebp - 0x245c]
call fcn.00528a70
push 1
mov ecx, dword [ebp - 0x14]
call fcn.00537510
movzx eax, al
test eax, eax
jne 0x537e59
jmp 0x537d25
lea ecx, [ebp - 0x245c]
call fcn.00508680
push 0x2000
lea eax, [ebp - 0x2414]
push eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.00538320
mov dword [ebp - 0x2418], eax
cmp dword [ebp - 0x2418], 0
jle 0x537f66
mov dword [ebp - 0x242c], 0
mov eax, dword [ebp - 0x2418]
mov byte [ebp + eax - 0x2414], 0
cmp dword [ebp - 0x2418], 8
jle 0x537ef4
movsx eax, byte [ebp - 0x2414]
cmp eax, 0x64
jne 0x537ef4
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.00570dc0
push eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.0044b9e0
push eax
mov eax, dword [ebp - 0x2418]
push eax
lea ecx, [ebp - 0x2414]
push ecx
call fcn.00528ac0
add esp, 0x10
jmp 0x537f3c
movzx eax, byte [0x646bc0]
test eax, eax
jne 0x537f3c
mov eax, dword [ebp - 0x14]
add eax, 0x1b4
push eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.00570dc0
push eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.0044b9e0
push eax
mov ecx, dword [ebp - 0x2418]
push ecx
lea edx, [ebp - 0x2414]
push edx
mov ecx, dword [ebp - 0x14]
call fcn.00539620
cmp dword [ebp - 0x2418], 8
jle 0x537f5f
mov eax, dword [ebp - 0x241c]
mov ecx, dword [ebp - 0x241c]
add ecx, 1
mov dword [ebp - 0x241c], ecx
cmp eax, 0x12
jge 0x537f64
jmp 0x537d25
jmp 0x537fce
cmp dword [ebp - 0x2418], 0
jge 0x537f9a
lea ecx, [ebp - 0x245c]
call fcn.00528a70
push 1
mov ecx, dword [ebp - 0x14]
call fcn.00537510
movzx eax, al
test eax, eax
jne 0x537f90
jmp 0x537d25
push 2
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x537fce
cmp dword [ebp - 0x2418], 0
jne 0x537fce
cmp dword [ebp - 0x241c], 0
jne 0x537fbf
lea ecx, [ebp - 0x245c]
call fcn.00528a70
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 [0x646bc0]
test eax, eax
jne 0x538266
lea ecx, [ebp - 0x245c]
call fcn.00508680
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 0x538027
mov ecx, dword [ebp - 0x14]
call fcn.00538f80
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x2428], eax
mov eax, dword [ebp - 0x2428]
mov dword [ebp - 0x2424], eax
jmp 0x53804c
mov eax, dword [ebp - 0x2420]
sub eax, dword [ebp - 0x2424]
cmp eax, 0x14
jb 0x53804c
mov ecx, dword [ebp - 0x14]
call fcn.00539310
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x2424], eax
call fcn.00513d90
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.00514730
add esp, 8
mov dword [ebp - 0x24a4], eax
mov dword [ebp - 0x24a0], edx
cmp dword [ebp - 0x24a0], 0
jl 0x5380d1
jg 0x5380a0
cmp dword [ebp - 0x24a4], 3
jb 0x5380d1
mov ecx, dword [ebp - 0x14]
call fcn.005388e0
call fcn.00513d90
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.00514730
add esp, 8
mov dword [ebp - 0x24a4], eax
mov dword [ebp - 0x24a0], edx
cmp dword [ebp - 0x24a0], 0
jl 0x538159
jg 0x538117
cmp dword [ebp - 0x24a4], 0x12c
jb 0x538159
mov ecx, dword [ebp - 0x14]
call fcn.00538790
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.00538400
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.00514730
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 0x53821e
jg 0x5381bc
mov eax, dword [ebp - 0x24a4]
cmp eax, dword [ebp - 0x24ac]
jb 0x53821e
call fcn.0053c830
test eax, eax
je 0x5381e4
mov eax, dword [ebp - 0x14]
add eax, 0x1b4
push eax
mov ecx, dword [0x646bc4]
push ecx
mov edx, dword [0x646bc8]
push edx
mov ecx, dword [ebp - 0x14]
call fcn.005388b0
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 0x53821e
mov dword [ebp - 0x2444], 0
mov dword [ebp - 0x2440], 0
mov eax, dword [ebp - 0x2454]
cmp eax, dword [ebp - 0x244c]
jne 0x53823a
mov ecx, dword [ebp - 0x2450]
cmp ecx, dword [ebp - 0x2448]
je 0x538266
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x2e0], 0
je 0x538266
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.005384d0
cmp dword [ebp - 0x242c], 4
jb 0x538282
lea ecx, [ebp - 0x245c]
call fcn.00528a70
push 0x28
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebp - 0x241c], 0x12
jl 0x53829e
lea ecx, [ebp - 0x245c]
call fcn.00528a70
push 2
call dword [sym.imp.KERNEL32.dll_Sleep]
mov dword [ebp - 0x241c], 0
jmp 0x537d25
lea ecx, [ebp - 0x245c]
call fcn.00508680
mov ecx, dword [ebp - 0x14]
add ecx, 0x1b4
call fcn.00536b30
lea ecx, [ebp - 0x245c]
call fcn.00528a70
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x245c]
call fcn.005086c0
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.0058844d
mov esp, ebp
pop ebp
ret