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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffb8
push ebx
push esi
push edi
xor eax, eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 4], eax
mov ecx, 7
lea eax, [ebp - 0x20]
mov edx, dword [0x4012b8]
call fcn.0040bf08
xor eax, eax
push ebp
push 0x6bafb5
push dword fs:[eax]
mov dword fs:[eax], esp
cmp byte [0x6da0b4], 0
je 0x6ba679
xor eax, eax
call fcn.006b14b0
mov byte [ebp - 0x21], 0
mov eax, dword [0x6d0da8]
mov eax, dword [eax]
shr eax, 0x10
cmp eax, 0x600
mov eax, dword [0x6d08dc]
setae byte [eax]
xor ecx, ecx
push ebp
push 0x6baef6
push dword fs:[ecx]
mov dword fs:[ecx], esp
cmp dword [0x6da0c4], 0
je 0x6ba6b7
mov dl, 1
mov eax, dword [0x6da0c4]
call fcn.00618114
cmp byte [0x6da0b2], 0
je 0x6ba724
xor eax, eax
push ebp
push 0x6ba6f7
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [0x6da0b8], 0
jne 0x6ba6e3
mov eax, 0x6bafd0
call fcn.00618c58
jmp 0x6ba6ed
mov eax, dword [0x6da0b8]
call fcn.00618e3c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6ba724
mov eax, 0x6bb038
call fcn.00618e98
lea eax, [ebp - 0x2c]
mov ecx, dword [0x6da09c]
mov edx, 0x6bb094
call fcn.0040b4c8
mov eax, dword [ebp - 0x2c]
call fcn.00618e98
lea eax, [ebp - 0x30]
mov ecx, dword [0x6da0a0]
mov edx, 0x6bb0d4
call fcn.0040b4c8
mov eax, dword [ebp - 0x30]
call fcn.00618e98
lea eax, [ebp - 0x38]
call fcn.005c6e90
mov ecx, dword [ebp - 0x38]
lea eax, [ebp - 0x34]
mov edx, 0x6bb100
call fcn.0040b4c8
mov eax, dword [ebp - 0x34]
call fcn.00618e98
call fcn.006b1660
xor eax, eax
call fcn.006b9f54
mov dword [0x6da0a8], eax
mov dl, 1
mov eax, dword [0x6b91a4]
call fcn.0062c058
mov dword [0x6d0888], eax
mov ecx, dword [0x6da0a0]
mov edx, dword [0x6da0a8]
mov eax, dword [0x6d0888]
call fcn.0062f34c
lea ecx, [ebp - 0x3c]
mov eax, dword [0x6d0888]
mov edx, dword [eax + 0x18]
mov ax, 0xd9
call fcn.005d0270
mov edx, dword [ebp - 0x3c]
mov eax, 0x6da0ac
call fcn.0040a5a8
mov eax, dword [0x6d0888]
test byte [eax + 0x1d], 0x20
je 0x6ba821
mov eax, dword [0x6d0a20]
cmp byte [eax], 0
jne 0x6ba821
push 1
push 1
mov eax, dword [0x6da0ac]
call fcn.0040b278
push eax
mov eax, dword [0x6d0ed8]
mov eax, dword [eax + 0x39c]
call fcn.0040b278
mov ecx, 0x30
pop edx
call fcn.006b1f48
call fcn.00428fdc
mov eax, dword [0x6d0888]
test byte [eax + 0x1d], 1
je 0x6ba865
mov eax, dword [0x6d0cc4]
cmp byte [eax], 0
jne 0x6ba865
push 1
push 1
mov eax, dword [0x6da0ac]
call fcn.0040b278
push eax
mov eax, dword [0x6d0ed8]
mov eax, dword [eax + 0x23c]
call fcn.0040b278
mov ecx, 0x30
pop edx
call fcn.006b1f48
call fcn.00428fdc
mov eax, dword [0x6da0a8]
xor edx, edx
mov dword [0x6da0a8], edx
call fcn.00408444
mov al, 2
call fcn.006b9f54
mov dword [0x6da0a8], eax
lea eax, [ebp - 0x20]
push eax
push 6
mov ecx, 0x86020000
mov dx, 0x20
mov eax, dword [0x6d0888]
call fcn.0062c510
test al, al
jne 0x6ba8aa
mov eax, 0x6bb140
call fcn.0060fa90
cmp dword [0x6da0c4], 0
je 0x6ba8c5
lea eax, [ebp - 4]
mov edx, dword [0x6d0d4c]
mov edx, dword [edx]
call fcn.0040a68c
jmp 0x6ba8d0
lea edx, [ebp - 4]
mov eax, dword [ebp - 0x20]
call fcn.006ba5c8
mov eax, dword [0x6d0888]
test byte [eax + 0x1d], 0x80
setne al
call fcn.006b260c
mov eax, dword [0x6d0888]
cmp byte [eax + 0x10], 0
je 0x6ba909
mov eax, dword [0x6d0a20]
cmp byte [eax], 0
jne 0x6ba900
mov eax, 0x6bb1d8
call fcn.0060fa90
mov al, 1
call fcn.006b2734
jmp 0x6ba910
xor eax, eax
call fcn.006b2734
call fcn.006af684
cmp dword [ebp - 4], 0
je 0x6baa4a
call fcn.006aeff4
call fcn.006af9c0
mov eax, dword [0x6d0904]
mov edx, dword [0x6da09c]
call fcn.0040a5a8
mov eax, dword [0x6d0e04]
mov edx, dword [0x6d0888]
mov edx, dword [edx + 0x14]
call fcn.0040a5a8
movzx eax, byte [0x6da0b3]
or al, byte [0x6da0b4]
mov edx, dword [0x6d0ae0]
mov byte [edx], al
mov eax, dword [0x6d10cc]
mov edx, dword [ebp - 0x18]
call fcn.0040a5a8
mov eax, dword [0x6d0c60]
mov edx, dword [ebp - 0x14]
call fcn.0040a5a8
mov eax, dword [0x6d0a3c]
mov edx, dword [ebp - 0x10]
call fcn.0040a5a8
mov eax, dword [0x6d0b14]
mov edx, dword [ebp - 0xc]
call fcn.0040a5a8
mov edx, dword [ebp - 8]
mov eax, edx
test eax, eax
je 0x6ba9a3
sub eax, 4
mov eax, dword [eax]
add eax, eax
xchg edx, eax
call fcn.006ba510
mov dl, 1
mov eax, dword [0x6a49c0]
call fcn.006a5e7c
mov edx, dword [0x6d0b4c]
mov dword [edx], eax
mov eax, dword [0x6d0b4c]
mov eax, dword [eax]
add eax, 4
mov edx, 0x6bb26c
call fcn.0040a5a8
mov eax, 0x6b0ed0
mov edx, dword [0x6d0b4c]
mov edx, dword [edx]
mov dword [edx + 0x10], eax
mov eax, 0x6b0ed8
mov edx, dword [0x6d0b4c]
mov edx, dword [edx]
mov dword [edx + 0x14], eax
mov eax, 0x6b0ee0
mov edx, dword [0x6d0b4c]
mov edx, dword [edx]
mov dword [edx + 0x18], eax
mov eax, 0x6b1100
mov edx, dword [0x6d0b4c]
mov edx, dword [edx]
mov dword [edx + 0x1c], eax
mov eax, 0x6b1118
mov edx, dword [0x6d0b4c]
mov edx, dword [edx]
mov dword [edx + 0x20], eax
mov eax, 0x6b1124
mov edx, dword [0x6d0b4c]
mov edx, dword [edx]
mov dword [edx + 0x24], eax
mov ecx, dword [0x6d0c10]
mov ecx, dword [ecx]
mov eax, dword [0x6d0b4c]
mov eax, dword [eax]
mov edx, dword [ebp - 4]
call fcn.006a5f74
xor edx, edx
push ebp
push 0x6baea2
push dword fs:[edx]
mov dword fs:[edx], esp
xor edx, edx
push ebp
push 0x6badd5
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [0x6d0b4c]
cmp dword [eax], 0
je 0x6baadb
xor edx, edx
push ebp
push 0x6baaaf
push dword fs:[edx]
mov dword fs:[edx], esp
push 0
push 2
push 0
push 1
xor eax, eax
mov dword [ebp - 0x44], eax
mov byte [ebp - 0x40], 0x11
lea ecx, [ebp - 0x44]
mov eax, dword [0x6d0b4c]
mov eax, dword [eax]
mov edx, 0x6bb284
call fcn.006a65dc
pop dword fs:[0]
add esp, 8
jmp 0x6baac8
test al, al
jne 0x6baadb
mov eax, 0x6bb314
call fcn.00618e98
call fcn.00428fdc
cmp byte [0x6da0b3], 0
jne 0x6bab17
cmp byte [0x6da0b4], 0
jne 0x6bab17
push 0x124
push 1
push 6
mov eax, dword [0x6d0888]
mov edx, dword [eax + 0x18]
mov ecx, dword [0x6da0ac]
mov ax, 0x2d
call fcn.006b9630
cmp eax, 6
je 0x6bab17
call fcn.00428fdc
xor edx, edx
xor eax, eax
call fcn.006b9dc8
jmp 0x6bab47
push 0x31
push 1
push 2
mov eax, dword [0x6d0888]
mov edx, dword [eax + 0x18]
mov ecx, dword [0x6da0ac]
mov ax, 0xe5
call fcn.006b9630
dec eax
je 0x6bab47
call fcn.00428fdc
mov eax, dword [0x6d0888]
call fcn.0062c558
test al, al
jne 0x6bab22
jmp 0x6bab6a
push 0xa
call sub.kernel32.dll_Sleep
mov eax, dword [0x6d0ec4]
mov eax, dword [eax]
call fcn.005b8704
mov eax, dword [0x6d1170]
cmp byte [eax], 0
jne 0x6bab57
mov eax, dword [0x6d08dc]
mov byte [eax], 0
lea ecx, [ebp - 0x48]
mov eax, dword [0x6d0888]
mov edx, dword [eax + 0x18]
mov ax, 0xc8
call fcn.005d0270
mov edx, dword [ebp - 0x48]
mov eax, dword [0x6d0ec4]
mov eax, dword [eax]
mov eax, dword [eax + 0x188]
call fcn.005c8790
call fcn.006b9464
xor edx, edx
mov al, 1
call fcn.006b9dc8
call sub.kernel32.dll_GetTickCount
mov dword [ebp - 0x28], eax
mov eax, dword [0x6d0888]
mov edx, dword [ebp - 0x28]
mov dword [eax + 0x24], edx
mov ecx, 0x6b98b8
mov dl, 1
mov eax, dword [0x6d0888]
call fcn.0062d370
mov byte [ebp - 0x22], al
movzx eax, byte [ebp - 0x22]
mov edx, dword [0x6d0da0]
mov eax, dword [edx + eax*4]
mov dword [ebp - 0x44], eax
mov byte [ebp - 0x40], 0x11
lea edx, [ebp - 0x44]
xor ecx, ecx
mov eax, 0x6bb37c
call fcn.0061911c
mov eax, dword [0x6d0888]
cmp byte [eax + 0x1c], 0
jne 0x6bac17
mov eax, dword [0x6d0888]
test byte [eax + 0x1d], 8
jne 0x6bac17
xor eax, eax
jmp 0x6bac19
mov al, 1
mov byte [ebp - 0x23], al
mov eax, dword [0x6d0b4c]
cmp dword [eax], 0
je 0x6bacbb
mov eax, dword [0x6d0b4c]
mov eax, dword [eax]
mov cl, 1
mov edx, 0x6bb3a8
call fcn.006a61d0
test al, al
je 0x6bacbb
cmp byte [ebp - 0x23], 0
jne 0x6bacb1
xor eax, eax
push ebp
push 0x6bac96
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
push 1
push 0
push 0
xor eax, eax
mov dword [ebp - 0x44], eax
mov byte [ebp - 0x40], 0x11
lea ecx, [ebp - 0x44]
mov eax, dword [0x6d0b4c]
mov eax, dword [eax]
mov edx, 0x6bb3a8
call fcn.006a65dc
test al, al
je 0x6bac8c
mov byte [ebp - 0x23], 1
mov eax, 0x6bb3cc
call fcn.00618e98
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6bacbb
mov eax, 0x6bb4ac
call fcn.00618e98
movzx eax, byte [ebp - 0x23]
mov edx, dword [0x6d0da0]
mov eax, dword [edx + eax*4]
mov dword [ebp - 0x44], eax
mov byte [ebp - 0x40], 0x11
lea edx, [ebp - 0x44]
xor ecx, ecx
mov eax, 0x6bb564
call fcn.0061911c
cmp byte [0x6da0b4], 0
jne 0x6bad16
mov eax, dword [0x6d0ec4]
mov eax, dword [eax]
call fcn.005b8704
call sub.kernel32.dll_GetTickCount
sub eax, dword [ebp - 0x28]
cmp eax, 0x3e8
jae 0x6bad16
push 0x4ff
push 0xa
push 0
push 0
push 0
call sub.user32.dll_MsgWaitForMultipleObjects
jmp 0x6bace7
mov eax, dword [0x6d0a5c]
mov eax, dword [eax]
mov edx, dword [0x6d0a5c]
xor ecx, ecx
mov dword [edx], ecx
call fcn.00408444
mov dl, 1
mov al, 2
call fcn.006b9dc8
cmp byte [ebp - 0x23], 0
jne 0x6bad77
cmp byte [0x6da0b3], 0
jne 0x6badc2
cmp byte [0x6da0b4], 0
jne 0x6badc2
push 0x10040
push 1
push 1
mov eax, dword [0x6d0888]
mov edx, dword [eax + 0x18]
movzx eax, byte [ebp - 0x22]
movzx eax, word [eax*2 + 0x6d0894]
mov ecx, dword [0x6da0ac]
call fcn.006b9630
jmp 0x6badc2
cmp byte [0x6da0b5], 0
jne 0x6badb2
cmp byte [0x6da0b4], 0
jne 0x6badae
push 0x10024
push 1
push 6
mov eax, dword [0x6d0888]
mov edx, dword [eax + 0x18]
mov ecx, dword [0x6da0ac]
mov ax, 0xe3
call fcn.006b9630
cmp eax, 6
jne 0x6badb2
mov byte [ebp - 0x21], 1
cmp byte [ebp - 0x21], 0
jne 0x6badc2
mov eax, 0x6bb5a8
call fcn.00618e98
mov dl, 1
mov al, 3
call fcn.006b9dc8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6bade9
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x6baeac
xor edx, edx
push ebp
push 0x6bae24
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [0x6d0a5c]
mov eax, dword [eax]
mov edx, dword [0x6d0a5c]
xor ecx, ecx
mov dword [edx], ecx
call fcn.00408444
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6bae33
mov eax, dword [0x6d0b4c]
cmp dword [eax], 0
je 0x6bae8f
xor eax, eax
push ebp
push 0x6bae76
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
push 0
xor eax, eax
mov dword [ebp - 0x44], eax
mov byte [ebp - 0x40], 0x11
lea ecx, [ebp - 0x44]
mov eax, dword [0x6d0b4c]
mov eax, dword [eax]
mov edx, 0x6bb604
call fcn.006a6374
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6bae8f
mov eax, dword [0x6d0ec4]
mov eax, dword [eax]
mov eax, dword [eax + 0x188]
call fcn.005c8820
ret