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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x98
mov eax, dword [0x459e00]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x3e
mov esi, ecx
xor ebx, ebx
lea ecx, [ebp - 0x42]
xor eax, eax
push ebx
push ecx
mov word [ebp - 0x44], ax
call fcn.00434d00
add esp, 0xc
test byte [0x45bec8], 1
jne 0x413596
or dword [0x45bec8], 1
mov ecx, 0x45be58
call fcn.0041e760
push 0x446320
call fcn.00435667
add esp, 4
push 0xffffffffffffffff
push ebx
xor edx, edx
mov edi, 7
push 0x45be58
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x84], edi
mov dword [ebp - 0x88], ebx
mov word [ebp - 0x98], dx
call fcn.00402570
test byte [0x45bec8], 1
jne 0x4135ea
or dword [0x45bec8], 1
mov ecx, 0x45be58
call fcn.0041e760
push 0x446320
call fcn.00435667
add esp, 4
push 0xffffffffffffffff
push ebx
xor eax, eax
push 0x45beac
lea ecx, [ebp - 0x7c]
mov dword [ebp - 0x68], edi
mov dword [ebp - 0x6c], ebx
mov word [ebp - 0x7c], ax
call fcn.00402570
lea ecx, [ebp - 0x44]
push 0x20
push ecx
call fcn.004183e0
add esp, 8
xor edx, edx
mov ecx, eax
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x50], ebx
mov word [ebp - 0x60], dx
lea edi, [ecx + 2]
mov dx, word [ecx]
add ecx, 2
cmp dx, bx
jne 0x413625
sub ecx, edi
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x60]
call fcn.004028a0
mov eax, dword [ebp + 8]
cmp eax, 6
ja case.default.0x41364a
jmp dword [eax*4 + 0x413a90]
sub esp, 0x1c
mov ecx, esp
push 0x44dadc
add esi, 0x720
call fcn.00402310
push ebx
push ebx
sub esp, 0x1c
lea eax, [ebp - 0x60]
mov ecx, esp
push eax
call fcn.004022e0
call fcn.0040b470
sub esp, 0x1c
add eax, 0xac
mov ecx, esp
push eax
call fcn.004022e0
call fcn.00412f10
sub esp, 0x1c
mov ecx, esp
push eax
call fcn.004022e0
mov ecx, esi
call fcn.00423bf0
sub esp, 0x1c
lea edx, [ebp - 0x7c]
mov ecx, esp
push edx
call fcn.004022e0
sub esp, 0x1c
lea eax, [ebp - 0x98]
mov ecx, esp
push eax
call fcn.004022e0
call fcn.0040b470
sub esp, 0x1c
add eax, 0x164
mov ecx, esp
push eax
call fcn.004022e0
mov ecx, esi
call fcn.00424300
push ebx
push ebx
mov ecx, esi
call fcn.004247f0
jmp case.default.0x41364a
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
sub esp, 0x1c
mov ecx, esp
mov dword [esi + 0x804], eax
push 0x44dadc
add esi, 0x720
call fcn.00402310
push ebx
push 1
sub esp, 0x1c
lea edx, [ebp - 0x60]
mov ecx, esp
push edx
call fcn.004022e0
call fcn.0040b470
sub esp, 0x1c
add eax, 0xac
mov ecx, esp
push eax
call fcn.004022e0
call fcn.00412f10
sub esp, 0x1c
mov ecx, esp
push eax
call fcn.004022e0
mov ecx, esi
call fcn.00423bf0
sub esp, 0x1c
mov ecx, esp
push 0x44dadc
call fcn.00402310
push ebx
sub esp, 0x1c
lea eax, [ebp - 0x60]
mov ecx, esp
push eax
call fcn.004022e0
call fcn.0040b470
sub esp, 0x1c
add eax, 0xac
mov ecx, esp
push eax
call fcn.004022e0
call fcn.00412f10
sub esp, 0x1c
mov ecx, esp
push eax
call fcn.004022e0
mov ecx, esi
call fcn.00423890
sub esp, 0x1c
lea edx, [ebp - 0x7c]
mov ecx, esp
push edx
call fcn.004022e0
sub esp, 0x1c
lea eax, [ebp - 0x98]
mov ecx, esp
push eax
call fcn.004022e0
call fcn.0040b470
sub esp, 0x1c
add eax, 0x180
mov ecx, esp
push eax
call fcn.004022e0
mov ecx, esi
call fcn.00424300
push ebx
push ebx
mov ecx, esi
call fcn.004247f0
jmp case.default.0x41364a
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
mov ecx, eax
sub ecx, dword [esi + 0x804]
mov eax, 0x10624dd3
mul ecx
sub esp, 0x1c
mov edi, edx
mov ecx, esp
push 0x44dadc
shr edi, 6
call fcn.00402310
push edi
push 2
sub esp, 0x1c
lea edx, [ebp - 0x60]
mov ecx, esp
push edx
call fcn.004022e0
call fcn.0040b470
sub esp, 0x1c
add eax, 0xac
mov ecx, esp
push eax
call fcn.004022e0
call fcn.00412f10
sub esp, 0x1c
mov ecx, esp
push eax
call fcn.004022e0
lea ecx, [esi + 0x720]
call fcn.00423bf0
push ebx
push ebx
lea ecx, [esi + 0x720]
call fcn.004247f0
jmp case.default.0x41364a
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
sub esp, 0x1c
mov ecx, esp
push 0x44dadc
mov dword [esi + 0x804], eax
call fcn.00402310
push ebx
push 3
sub esp, 0x1c
lea eax, [ebp - 0x60]
mov ecx, esp
push eax
call fcn.004022e0
call fcn.0040b470
sub esp, 0x1c
add eax, 0xac
mov ecx, esp
push eax
call fcn.004022e0
call fcn.00412f10
sub esp, 0x1c
mov ecx, esp
push eax
call fcn.004022e0
lea ecx, [esi + 0x720]
call fcn.00423bf0
push ebx
push ebx
lea ecx, [esi + 0x720]
call fcn.004247f0
jmp case.default.0x41364a
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
mov ecx, eax
sub ecx, dword [esi + 0x804]
mov eax, 0x10624dd3
mul ecx
sub esp, 0x1c
mov edi, edx
mov ecx, esp
push 0x44dadc
shr edi, 6
lea ebx, [esi + 0x720]
call fcn.00402310
push edi
push 4
sub esp, 0x1c
lea edx, [ebp - 0x60]
mov ecx, esp
push edx
call fcn.004022e0
call fcn.0040b470
sub esp, 0x1c
add eax, 0xac
mov ecx, esp
push eax
call fcn.004022e0
call fcn.00412f10
sub esp, 0x1c
mov ecx, esp
push eax
call fcn.004022e0
mov ecx, ebx
call fcn.00423bf0
sub esp, 0x1c
lea eax, [ebp - 0x7c]
mov ecx, esp
push eax
call fcn.004022e0
sub esp, 0x1c
lea edx, [ebp - 0x98]
mov ecx, esp
push edx
call fcn.004022e0
call fcn.0040b470
sub esp, 0x1c
add eax, 0x19c
mov ecx, esp
push eax
call fcn.004022e0
mov ecx, ebx
call fcn.00424300
add esi, 0x11c
push esi
push 2
mov ecx, ebx
call fcn.004247f0
xor ebx, ebx
jmp case.default.0x41364a
sub esp, 0x1c
mov ecx, esp
push 0x44dadc
call fcn.00402310
push ebx
push 5
sub esp, 0x1c
lea eax, [ebp - 0x60]
mov ecx, esp
push eax
call fcn.004022e0
call fcn.0040b470
sub esp, 0x1c
add eax, 0xac
mov ecx, esp
push eax
call fcn.004022e0
call fcn.00412f10
sub esp, 0x1c
mov ecx, esp
push eax
call fcn.004022e0
lea ecx, [esi + 0x720]
call fcn.00423bf0
jmp 0x413a15
sub esp, 0x1c
lea edx, [ebp - 0x7c]
mov ecx, esp
push edx
call fcn.004022e0
sub esp, 0x1c
lea eax, [ebp - 0x98]
mov ecx, esp
push eax
call fcn.004022e0
call fcn.0040b470
sub esp, 0x1c
add eax, 0x1b8
mov ecx, esp
push eax
call fcn.004022e0
lea ecx, [esi + 0x720]
call fcn.00424300
lea ecx, [esi + 0x720]
call fcn.00424640
mov esi, 8
cmp dword [ebp - 0x4c], esi
jb 0x413a36
mov ecx, dword [ebp - 0x60]
push ecx
call fcn.00433949
add esp, 4
xor edx, edx
mov edi, 7
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x50], ebx
mov word [ebp - 0x60], dx
cmp dword [ebp - 0x68], esi
jb 0x413a58
mov eax, dword [ebp - 0x7c]
push eax
call fcn.00433949
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x68], edi
mov dword [ebp - 0x6c], ebx
mov word [ebp - 0x7c], cx
cmp dword [ebp - 0x84], esi
jb 0x413a7b
mov edx, dword [ebp - 0x98]
push edx
call fcn.00433949
add esp, 4
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00434758
mov esp, ebp
pop ebp
ret 4