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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x144
mov eax, dword [0x1012800c]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0xe609e8], 5
jne 0x10078be4
cmp dword [0x10132d58], 1
jne 0x10078be4
cmp byte [0x10132b0c], 0
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
jne 0x1007898e
cmp dword [0x10132d48], 0
jne 0x10078867
xorps xmm0, xmm0
movss dword [ebp - 0x144], xmm0
jmp 0x100788b8
call esi
sub eax, dword [0x10132d50]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x101205e0]
mov eax, dword [0x10132d48]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
mulss xmm1, dword [0x1012023c]
shr eax, 0x1f
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x101205e0]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
movss dword [ebp - 0x144], xmm1
push edi
sub esp, 0x10
mov edi, 0x790b50
mov dword [esp + 0xc], 0x41900000
mov dword [esp + 8], 0x43200000
mov dword [esp + 4], 0x42c80000
mov dword [esp], 0x43700000
push 0x7a65
call edi
movss xmm0, dword [0x1012023c]
add esp, 4
minss xmm0, dword [ebp - 0x144]
mov dword [esp + 0xc], 0x41000000
movss dword [esp + 8], xmm0
mov dword [esp + 4], 0x42d20000
mov dword [esp], 0x43750000
push 0x7a66
call edi
mov eax, dword [0x10132d04]
add esp, 0x14
pop edi
cmp eax, 3
ja case.default.0x1007892c
jmp dword [eax*4 + 0x10078bf4]
push 1
jmp 0x10078941
push 2
jmp 0x10078941
push 3
jmp 0x10078941
push 4
mov ecx, 0x10129d70
call fcn.1001d110
push eax
lea eax, [ebp - 0x104]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
push 3
push 0
push 0xffffffffffffffff
push 0
push 0xa0
push 0x69
lea eax, [ebp - 0x104]
push 0xf0
push eax
mov eax, 0x7d04d0
call eax
add esp, 0x28
call esi
sub eax, dword [0x10132d50]
cmp eax, dword [0x10132d48]
jbe 0x100789eb
mov dword [0x10132d58], 2
mov dword [0x10132d04], 0
call esi
mov dword [0x10132d54], eax
call esi
mov dword [0x10132d50], eax
mov ecx, 0x3e8
xor eax, eax
mov dword [0x10132d48], 0
cmp byte [0x10128eb6], 1
cmove eax, ecx
mov ecx, 0x8793750
mov dword [0x10132d4c], eax
mov eax, 0x63a180
call eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1007ff35
mov esp, ebp
pop ebp
ret
call esi
sub eax, dword [0x10132d54]
cmp eax, dword [0x10132d4c]
jb 0x10078be3
mov eax, dword [0x10132d04]
sub eax, 0
je 0x10078bd7
sub eax, 1
jne 0x10078bdc
mov eax, dword [0x10132d44]
test eax, eax
jne 0x10078bdc
movzx eax, byte [0x10132d28]
xor al, 0xfc
mov dword [0x10132d44], 1
mov byte [ebp - 0x13c], al
movzx eax, byte [0x10132d29]
xor al, 0xcf
mov dword [ebp - 0x140], 0x1f13bc3
mov byte [ebp - 0x13b], al
movzx eax, byte [0x10132d2a]
xor al, 0xab
mov byte [ebp - 0x13a], al
movzx eax, byte [0x10132d2b]
xor al, 0xfc
mov byte [ebp - 0x139], al
movzx eax, byte [0x10132d2c]
xor al, 0xcf
mov byte [ebp - 0x138], al
movzx eax, byte [0x10132d2d]
xor al, 0xab
mov byte [ebp - 0x137], al
movzx eax, byte [0x10132d2e]
xor al, 0xfc
mov byte [ebp - 0x136], al
movzx eax, byte [0x10132d2f]
xor al, 0xcf
mov byte [ebp - 0x135], al
movzx eax, byte [0x10132d30]
xor al, 0xab
mov byte [ebp - 0x134], al
movzx eax, byte [0x10132d31]
xor al, 0xfc
mov byte [ebp - 0x133], al
movzx eax, byte [0x10132d34]
xor al, 0xfc
mov byte [ebp - 0x132], al
movzx eax, byte [0x10132d35]
xor al, 0xcf
mov byte [ebp - 0x131], al
movzx eax, byte [0x10132d36]
xor al, 0xab
mov byte [ebp - 0x130], al
movzx eax, byte [0x10132d37]
xor al, 0xfc
mov byte [ebp - 0x12f], al
movzx eax, byte [0x10132d38]
xor al, 0xcf
mov byte [ebp - 0x12e], al
movzx eax, byte [0x10132d39]
xor al, 0xab
mov byte [ebp - 0x12d], al
movzx eax, byte [0x10132d3a]
xor al, 0xfc
mov byte [ebp - 0x12c], al
movzx eax, byte [0x10132d3b]
xor al, 0xcf
mov byte [ebp - 0x12b], al
movzx eax, byte [0x10132d3c]
xor al, 0xab
mov byte [ebp - 0x12a], al
movzx eax, byte [0x10132d3d]
xor al, 0xfc
mov byte [ebp - 0x129], al
call esi
mov dword [ebp - 0x11e], eax
movzx eax, byte [0xe61f68]
dec al
mov byte [ebp - 0x11a], al
movzx eax, byte [0xe61f69]
sub al, 2
mov byte [ebp - 0x119], al
movzx eax, byte [0xe61f6a]
sub al, 3
mov byte [ebp - 0x118], al
movzx eax, byte [0xe61f6b]
sub al, 4
mov byte [ebp - 0x117], al
movzx eax, byte [0xe61f6c]
sub al, 5
mov byte [ebp - 0x116], al
mov eax, 0xe61f70
movups xmm0, xmmword [eax]
mov edx, 0x3b
lea ecx, [ebp - 0x140]
movups xmmword [ebp - 0x115], xmm0
call fcn.10078660
jmp 0x10078bdc
call fcn.10078c10
call esi
mov dword [0x10132d54], eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1007ff35
mov esp, ebp
pop ebp
ret