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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40
mov eax, dword [0x10138018]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, 0x80f8e0
call eax
cmp dword [0xe609e8], 5
jne 0x100785cd
cmp dword [0x10149fa8], 1
jne 0x100785cd
cmp byte [0x10149df0], 0
push esi
je 0x100783b3
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
jmp 0x100783ce
call fcn.100785e0
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
sub eax, dword [0x10149fa4]
cmp eax, dword [0x10149f88]
jbe 0x1007842b
mov dword [0x10149f4c], 0
mov dword [0x10149fa8], 2
call esi
mov dword [0x10149f8c], eax
call esi
mov dword [0x10149fa4], eax
mov ecx, 0x3e8
xor eax, eax
mov dword [0x10149f88], 0
cmp byte [0x1013a28e], 1
cmove eax, ecx
mov ecx, 0x8793750
mov dword [0x10149fac], eax
mov eax, 0x63a180
call eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1008550c
mov esp, ebp
pop ebp
ret
call esi
sub eax, dword [0x10149f8c]
cmp eax, dword [0x10149fac]
jb 0x100785cc
mov eax, dword [0x10149f4c]
sub eax, 0
je 0x100785c0
sub eax, 1
jne 0x100785c5
mov eax, dword [0x10149fb0]
test eax, eax
jne 0x100785c5
movzx eax, byte [0x10149f5c]
xor al, 0xfc
mov dword [0x10149fb0], 1
mov byte [ebp - 0x3c], al
movzx eax, byte [0x10149f5d]
xor al, 0xcf
mov dword [ebp - 0x40], 0x1f13bc3
mov byte [ebp - 0x3b], al
movzx eax, byte [0x10149f5e]
xor al, 0xab
mov byte [ebp - 0x3a], al
movzx eax, byte [0x10149f5f]
xor al, 0xfc
mov byte [ebp - 0x39], al
movzx eax, byte [0x10149f60]
xor al, 0xcf
mov byte [ebp - 0x38], al
movzx eax, byte [0x10149f61]
xor al, 0xab
mov byte [ebp - 0x37], al
movzx eax, byte [0x10149f62]
xor al, 0xfc
mov byte [ebp - 0x36], al
movzx eax, byte [0x10149f63]
xor al, 0xcf
mov byte [ebp - 0x35], al
movzx eax, byte [0x10149f64]
xor al, 0xab
mov byte [ebp - 0x34], al
movzx eax, byte [0x10149f65]
xor al, 0xfc
mov byte [ebp - 0x33], al
movzx eax, byte [0x10149f50]
xor al, 0xfc
mov byte [ebp - 0x32], al
movzx eax, byte [0x10149f51]
xor al, 0xcf
mov byte [ebp - 0x31], al
movzx eax, byte [0x10149f52]
xor al, 0xab
mov byte [ebp - 0x30], al
movzx eax, byte [0x10149f53]
xor al, 0xfc
mov byte [ebp - 0x2f], al
movzx eax, byte [0x10149f54]
xor al, 0xcf
mov byte [ebp - 0x2e], al
movzx eax, byte [0x10149f55]
xor al, 0xab
mov byte [ebp - 0x2d], al
movzx eax, byte [0x10149f56]
xor al, 0xfc
mov byte [ebp - 0x2c], al
movzx eax, byte [0x10149f57]
xor al, 0xcf
mov byte [ebp - 0x2b], al
movzx eax, byte [0x10149f58]
xor al, 0xab
mov byte [ebp - 0x2a], al
movzx eax, byte [0x10149f59]
xor al, 0xfc
mov byte [ebp - 0x29], al
call esi
mov dword [ebp - 0x1e], eax
movzx eax, byte [0xe61f68]
dec al
mov byte [ebp - 0x1a], al
movzx eax, byte [0xe61f69]
sub al, 2
mov byte [ebp - 0x19], al
movzx eax, byte [0xe61f6a]
sub al, 3
mov byte [ebp - 0x18], al
movzx eax, byte [0xe61f6b]
sub al, 4
mov byte [ebp - 0x17], al
movzx eax, byte [0xe61f6c]
sub al, 5
mov byte [ebp - 0x16], al
mov eax, 0xe61f70
movups xmm0, xmmword [eax]
mov edx, 0x3b
lea ecx, [ebp - 0x40]
movups xmmword [ebp - 0x15], xmm0
call fcn.100781c0
jmp 0x100785c5
call fcn.100787c0
call esi
mov dword [0x10149f8c], eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1008550c
mov esp, ebp
pop ebp
ret