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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffe48
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x1b8], ecx
mov dword [ebp - 0x1ac], ecx
mov dword [ebp - 0x1a8], ecx
mov dword [ebp - 8], ecx
mov ebx, edx
mov esi, eax
xor eax, eax
push ebp
push 0x6b4c33
push dword fs:[eax]
mov dword fs:[eax], esp
cmp byte [esi + 0x1565], 0
je 0x6b4813
mov edx, 0x6b4c4c
mov eax, dword [esi + 0x490]
call fcn.006ef808
jmp 0x6b4c02
lea ecx, [ebp - 0x109]
mov eax, dword [0x70f510]
mov eax, dword [eax]
mov edx, dword [eax + 0x3196c]
mov eax, dword [esi + 0x4a4]
call fcn.004e7a7c
test al, al
je 0x6b4c02
lea ecx, [ebp - 0x1a2]
mov eax, dword [0x70f678]
mov eax, dword [eax]
mov edx, ebx
call fcn.004c5bc8
test al, al
je 0x6b4c02
lea edx, [ebp - 8]
mov eax, dword [esi + 0x334]
call fcn.0045bcd8
mov edx, dword [ebp - 8]
mov eax, 0x6b4c68
call fcn.00405444
test eax, eax
jle 0x6b48a2
lea eax, [ebp - 0x1a8]
push eax
mov eax, dword [0x70f918]
mov eax, dword [eax]
mov eax, dword [eax + 0x50]
mov eax, dword [eax]
mov ecx, 0x6b4c68
mov edx, dword [ebp - 8]
call fcn.004b6034
mov edx, dword [ebp - 0x1a8]
lea eax, [ebp - 8]
call fcn.00404ec8
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.0040a34c
mov dword [ebp - 4], eax
call sub.KERNEL32.DLL_GetTickCount
sub eax, dword [esi + 0x4dc4]
cmp eax, 0x32
jb 0x6b4c02
call sub.KERNEL32.DLL_GetTickCount
mov dword [esi + 0x4dc4], eax
mov edi, dword [ebp - 0x111]
test edi, edi
je 0x6b491f
cmp edi, dword [esi + 0x48c]
je 0x6b491f
lea eax, [ebp - 0x1ac]
push eax
mov dword [ebp - 0x1b4], edi
mov byte [ebp - 0x1b0], 0
lea edx, [ebp - 0x1b4]
xor ecx, ecx
mov eax, 0x6b4c74
call fcn.0040b918
mov edx, dword [ebp - 0x1ac]
mov eax, dword [esi + 0x490]
call fcn.006ef808
jmp 0x6b4c02
cmp byte [ebp - 0x145], 0x11
jne 0x6b494d
call fcn.006b75ec
mov edx, esi
test edx, edx
je 0x6b4939
sub edx, 0xffffb1cc
call fcn.006b7614
call fcn.006b75ec
call fcn.00478974
jmp 0x6b4c02
cmp byte [ebp - 0x145], 0x12
jne 0x6b497b
call fcn.006b80d0
mov edx, esi
test edx, edx
je 0x6b4967
sub edx, 0xffffb1cc
call fcn.006b8540
call fcn.006b80d0
call fcn.00478974
jmp 0x6b4c02
cmp byte [ebp - 0x145], 6
jne 0x6b49db
call fcn.006d91e4
mov edx, esi
test edx, edx
je 0x6b4995
sub edx, 0xffffb1cc
mov ecx, ebx
call fcn.006d920c
mov eax, dword [esi + 0x4dc0]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x1b8]
call fcn.0040a2c0
mov eax, dword [ebp - 0x1b8]
push eax
call fcn.006d91e4
mov eax, dword [eax + 0x310]
pop edx
mov ecx, dword [eax]
call dword [ecx + 0x150]
call fcn.006d91e4
call fcn.00478974
jmp 0x6b4c02
cmp byte [ebp - 0x145], 0x13
jne 0x6b4a2c
call fcn.006dbcac
cmp byte [eax + 0x378], 0
je 0x6b4a17
call fcn.006dbcac
mov edx, esi
test edx, edx
je 0x6b4a03
sub edx, 0xffffb1cc
call fcn.006dc1ec
call fcn.006dbcac
call fcn.00478974
jmp 0x6b4c02
mov edx, 0x6b4ca4
mov eax, dword [esi + 0x490]
call fcn.006ef808
jmp 0x6b4c02
cmp byte [ebp - 0x145], 0x14
jne 0x6b4ae2
call sub.KERNEL32.DLL_GetTickCount
sub eax, dword [esi + 0x4dc8]
cmp eax, 0x64
jb 0x6b4c02
call sub.KERNEL32.DLL_GetTickCount
mov dword [esi + 0x4dc8], eax
cmp byte [esi + 0x1564], 0
je 0x6b4a76
mov edx, 0x6b4cbc
mov eax, dword [esi + 0x490]
call fcn.006ef808
jmp 0x6b4c02
mov eax, dword [0x70f510]
mov eax, dword [eax]
mov edx, dword [eax + 0x3196c]
mov eax, dword [esi + 0x4a4]
call fcn.004e7c3c
fcomp dword [0x6b4cd4]
fnstsw ax
sahf
ja 0x6b4aae
mov edx, 0x6b4ce0
mov eax, dword [esi + 0x490]
call fcn.006ef808
jmp 0x6b4c02
call fcn.00403634
fmul dword [0x6b4cf4]
fmul dword [0x6b4cf4]
fmul dword [0x6b4cf4]
call fcn.004030ec
inc eax
mov ecx, 1
mov edx, eax
mov eax, dword [esi + 0x4a0]
call fcn.00535270
jmp 0x6b4c02
cmp byte [ebp - 0x145], 0x15
jne 0x6b4b1a
call sub.KERNEL32.DLL_GetTickCount
sub eax, dword [esi + 0x4dcc]
cmp eax, 0x64
jb 0x6b4c02
call sub.KERNEL32.DLL_GetTickCount
mov dword [esi + 0x4dcc], eax
mov eax, dword [esi + 0x4a0]
call fcn.00535f08
jmp 0x6b4c02
call fcn.006dbcac
cmp byte [eax + 0x57], 0
je 0x6b4b37
call fcn.006dbcac
mov edx, dword [eax]
call dword [edx + 0xc4]
jmp 0x6b4c02
mov al, byte [ebp - 0x145]
add al, 0xfd
sub al, 2
jb 0x6b4b61
cmp dword [esi + 0x4dc0], 0
jne 0x6b4b61
mov edx, 0x6b4d00
mov eax, dword [esi + 0x490]
call fcn.006ef808
jmp 0x6b4c02
mov eax, dword [esi + 0x338]
call fcn.0056a1bc
inc eax
jne 0x6b4b73
xor eax, eax
jmp 0x6b4b90
mov eax, dword [esi + 0x338]
call fcn.0056a1bc
push eax
mov eax, dword [esi + 0x338]
call fcn.0056aab0
pop edx
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov dl, byte [ebp - 0x145]
add dl, 0xfd
sub dl, 2
jae 0x6b4bb3
mov edx, dword [ebp - 4]
push edx
mov ecx, ebx
mov edx, eax
mov eax, dword [esi + 0x4a0]
call fcn.005352cc
jmp 0x6b4be6
mov edx, dword [ebp - 4]
push edx
mov dl, byte [ebp - 0x95]
push edx
mov edx, dword [0x70f510]
mov edx, dword [edx]
mov dl, byte [edx + 0x31ab0]
push edx
push 0
push 0
push 0
push 0
push 1
mov ecx, ebx
mov edx, eax
mov eax, dword [esi + 0x4a0]
call fcn.0053552c
mov eax, dword [esi + 0x344]
cmp byte [eax + 0x280], 0
jne 0x6b4c02
xor edx, edx
mov eax, dword [esi + 0x334]
call fcn.0056a1e8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x6b4c3a
lea eax, [ebp - 0x1b8]
call fcn.00404e30
lea eax, [ebp - 0x1ac]
mov edx, 2
call fcn.00404e54
lea eax, [ebp - 8]
call fcn.00404e30
ret