Function at 0x1003e880
Capabilities:
Check for time delay via gettickcount
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
cmp dword [0x102df84c], 1
push ebx
push esi
push edi
je 0x1003e89d
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
movd xmm0, dword [ebp + 8]
mov ecx, 0x101c3ae8
cvtdq2pd xmm0, xmm0
push 0x70
addsd xmm0, qword [0x10101b78]
movsd qword [ebp - 0x10], xmm0
call fcn.100426f0
mov esi, dword [ebp + 0xc]
push eax
push 3
push 0x78
lea eax, [esi + 0x48]
push eax
cvttsd2si eax, qword [ebp - 0x10]
push eax
push 0xffffffffffffffff
push 0x102ba770
call fcn.10077e60
movsd xmm0, qword [ebp - 0x10]
add esi, 0x55
mov edi, dword [sym.imp.OPENGL32.dll_glColor3f]
add esp, 0x1c
cmp dword [0x102df7c0], 0
mov edx, 0x790b10
mov ebx, dword [sym.imp.KERNEL32.dll_GetTickCount]
cvtpd2ps xmm0, xmm0
movd xmm1, esi
cvttss2si ecx, xmm0
cvtdq2ps xmm1, xmm1
mov dword [ebp - 4], ecx
jne 0x1003e932
sub esp, 0xc
mov dword [esp + 8], 0x3e4ccccd
mov dword [esp + 4], 0x3e4ccccd
mov dword [esp], 0x3f800000
call edi
jmp 0x1003e9ac
cvttss2si eax, xmm1
push 0xd
push 0xf
push eax
push ecx
call edx
add esp, 0x10
cmp al, 1
jne 0x1003e9ac
sub esp, 0xc
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0
call edi
call ebx
sub eax, dword [0x108996b8]
cmp eax, 0x12c
jbe 0x1003e9ac
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x1003e9ac
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x3f800000
call edi
push 0
mov ecx, 0x1089969c
call fcn.1003f670
call ebx
mov dword [0x108996b8], eax
push 0
push 1
push 1
sub esp, 0x20
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov eax, 0x637c60
mov dword [esp + 0x1c], 0x3f4ccccd
mov dword [esp + 0x18], 0x3f266666
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41500000
mov dword [esp + 8], 0x41700000
movss dword [esp + 4], xmm0
movsd xmm0, qword [ebp - 0x10]
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7b4b
call eax
add esp, 0x20
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call dword [sym.imp.OPENGL32.dll_glColor4f]
movd xmm1, esi
cvtdq2ps xmm0, xmm1
push 0x100fe790
push 3
push 0xf
addss xmm0, dword [0x101018d0]
cvttss2si eax, xmm0
push eax
push dword [ebp - 4]
mov dword [ebp + 0xc], eax
push 0xffffffffffffffff
push 0x102ba770
call fcn.10077e60
movd xmm1, dword [ebp + 8]
add esp, 0x1c
cmp dword [0x102df7c0], 1
cvtdq2pd xmm0, xmm1
addsd xmm0, qword [0x10101b88]
cvtpd2ps xmm0, xmm0
cvttss2si ecx, xmm0
movss dword [ebp - 4], xmm0
mov dword [ebp - 0xc], ecx
jne 0x1003eab1
sub esp, 0xc
mov dword [esp + 8], 0x3e4ccccd
mov dword [esp + 4], 0x3e4ccccd
mov dword [esp], 0x3f800000
call edi
jmp 0x1003eb37
movd xmm0, esi
cvtdq2ps xmm0, xmm0
push 0xd
push 0xf
cvttss2si eax, xmm0
push eax
push ecx
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x1003eb37
sub esp, 0xc
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0
call edi
call ebx
sub eax, dword [0x108996b8]
cmp eax, 0x12c
jbe 0x1003eb37
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x1003eb37
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x3f800000
call edi
push 1
mov ecx, 0x1089969c
call fcn.1003f670
call ebx
mov dword [0x108996b8], eax
push 0
push 1
push 1
sub esp, 0x20
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov eax, 0x637c60
mov dword [esp + 0x1c], 0x3f4ccccd
mov dword [esp + 0x18], 0x3f266666
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41500000
mov dword [esp + 8], 0x41700000
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 4]
movss dword [esp], xmm0
push 0x7b4b
call eax
add esp, 0x20
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call dword [sym.imp.OPENGL32.dll_glColor4f]
push 0x100feeb0
push 3
push 0xf
push dword [ebp + 0xc]
push dword [ebp - 0xc]
push 0xffffffffffffffff
push 0x102ba770
call fcn.10077e60
movd xmm0, dword [ebp + 8]
add esp, 0x1c
cmp dword [0x102df7c0], 2
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [0x10101ba8]
cvtpd2ps xmm0, xmm0
cvttss2si ecx, xmm0
movss dword [ebp - 0xc], xmm0
mov dword [ebp - 4], ecx
jne 0x1003ec24
sub esp, 0xc
mov dword [esp + 8], 0x3e4ccccd
mov dword [esp + 4], 0x3e4ccccd
mov dword [esp], 0x3f800000
call edi
jmp 0x1003ecaa
movd xmm0, esi
cvtdq2ps xmm0, xmm0
push 0xd
push 0xf
cvttss2si eax, xmm0
push eax
push ecx
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x1003ecaa
sub esp, 0xc
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0
call edi
call ebx
sub eax, dword [0x108996b8]
cmp eax, 0x12c
jbe 0x1003ecaa
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x1003ecaa
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x3f800000
call edi
push 2
mov ecx, 0x1089969c
call fcn.1003f670
call ebx
mov dword [0x108996b8], eax
push 0
push 1
push 1
sub esp, 0x20
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov eax, 0x637c60
mov dword [esp + 0x1c], 0x3f4ccccd
mov dword [esp + 0x18], 0x3f266666
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41500000
mov dword [esp + 8], 0x41700000
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0xc]
movss dword [esp], xmm0
push 0x7b4b
call eax
add esp, 0x20
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call dword [sym.imp.OPENGL32.dll_glColor4f]
push 0x100feeb4
push 3
push 0xf
push dword [ebp + 0xc]
push dword [ebp - 4]
push 0xffffffffffffffff
push 0x102ba770
call fcn.10077e60
movd xmm0, dword [ebp + 8]
add esp, 0x1c
cmp dword [0x102df7c0], 3
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [0x10101bb0]
cvtpd2ps xmm0, xmm0
cvttss2si ecx, xmm0
movss dword [ebp - 0xc], xmm0
mov dword [ebp - 4], ecx
jne 0x1003ed97
sub esp, 0xc
mov dword [esp + 8], 0x3e4ccccd
mov dword [esp + 4], 0x3e4ccccd
mov dword [esp], 0x3f800000
call edi
jmp 0x1003ee1d
movd xmm0, esi
cvtdq2ps xmm0, xmm0
push 0xd
push 0xf
cvttss2si eax, xmm0
push eax
push ecx
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x1003ee1d
sub esp, 0xc
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0
call edi
call ebx
sub eax, dword [0x108996b8]
cmp eax, 0x12c
jbe 0x1003ee1d
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x1003ee1d
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x3f800000
call edi
push 3
mov ecx, 0x1089969c
call fcn.1003f670
call ebx
mov dword [0x108996b8], eax
push 0
push 1
push 1
sub esp, 0x20
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov eax, 0x637c60
mov dword [esp + 0x1c], 0x3f4ccccd
mov dword [esp + 0x18], 0x3f266666
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41500000
mov dword [esp + 8], 0x41700000
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0xc]
movss dword [esp], xmm0
push 0x7b4b
call eax
add esp, 0x20
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call dword [sym.imp.OPENGL32.dll_glColor4f]
push 0x100feeb8
push 3
push 0xf
push dword [ebp + 0xc]
push dword [ebp - 4]
push 0xffffffffffffffff
push 0x102ba770
call fcn.10077e60
movd xmm0, dword [ebp + 8]
add esp, 0x1c
cmp dword [0x102df7c0], 4
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [0x10101bc0]
cvtpd2ps xmm0, xmm0
cvttss2si ecx, xmm0
movss dword [ebp - 0xc], xmm0
mov dword [ebp - 4], ecx
jne 0x1003ef0a
sub esp, 0xc
mov dword [esp + 8], 0x3e4ccccd
mov dword [esp + 4], 0x3e4ccccd
mov dword [esp], 0x3f800000
call edi
jmp 0x1003ef90
movd xmm0, esi
cvtdq2ps xmm0, xmm0
push 0xd
push 0xf
cvttss2si eax, xmm0
push eax
push ecx
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x1003ef90
sub esp, 0xc
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0
call edi
call ebx
sub eax, dword [0x108996b8]
cmp eax, 0x12c
jbe 0x1003ef90
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x1003ef90
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x3f800000
call edi
push 4
mov ecx, 0x1089969c
call fcn.1003f670
call ebx
mov dword [0x108996b8], eax
push 0
push 1
push 1
sub esp, 0x20
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov eax, 0x637c60
mov dword [esp + 0x1c], 0x3f4ccccd
mov dword [esp + 0x18], 0x3f266666
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41500000
mov dword [esp + 8], 0x41700000
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0xc]
movss dword [esp], xmm0
push 0x7b4b
call eax
add esp, 0x20
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call dword [sym.imp.OPENGL32.dll_glColor4f]
push 0x100feebc
push 3
push 0xf
push dword [ebp + 0xc]
push dword [ebp - 4]
push 0xffffffffffffffff
push 0x102ba770
call fcn.10077e60
movd xmm0, dword [ebp + 8]
add esp, 0x1c
cmp dword [0x102df7c0], 5
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [0x10101bf0]
cvtpd2ps xmm0, xmm0
cvttss2si ecx, xmm0
movss dword [ebp - 0xc], xmm0
mov dword [ebp - 4], ecx
jne 0x1003f07d
sub esp, 0xc
mov dword [esp + 8], 0x3e4ccccd
mov dword [esp + 4], 0x3e4ccccd
mov dword [esp], 0x3f800000
call edi
jmp 0x1003f103
movd xmm0, esi
cvtdq2ps xmm0, xmm0
push 0xd
push 0xf
cvttss2si eax, xmm0
push eax
push ecx
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x1003f103
sub esp, 0xc
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0
call edi
call ebx
sub eax, dword [0x108996b8]
cmp eax, 0x12c
jbe 0x1003f103
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x1003f103
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x3f800000
call edi
push 5
mov ecx, 0x1089969c
call fcn.1003f670
call ebx
mov dword [0x108996b8], eax
push 0
push 1
push 1
sub esp, 0x20
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov eax, 0x637c60
mov dword [esp + 0x1c], 0x3f4ccccd
mov dword [esp + 0x18], 0x3f266666
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41500000
mov dword [esp + 8], 0x41700000
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0xc]
movss dword [esp], xmm0
push 0x7b4b
call eax
add esp, 0x20
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call dword [sym.imp.OPENGL32.dll_glColor4f]
push 0x100feec0
push 3
push 0xf
push dword [ebp + 0xc]
push dword [ebp - 4]
push 0xffffffffffffffff
push 0x102ba770
call fcn.10077e60
movd xmm0, dword [ebp + 8]
add esp, 0x1c
cmp dword [0x102df7c0], 6
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [0x10101c18]
cvtpd2ps xmm0, xmm0
cvttss2si ecx, xmm0
movss dword [ebp - 0xc], xmm0
mov dword [ebp - 4], ecx
jne 0x1003f1f0
sub esp, 0xc
mov dword [esp + 8], 0x3e4ccccd
mov dword [esp + 4], 0x3e4ccccd
mov dword [esp], 0x3f800000
call edi
jmp 0x1003f276
movd xmm0, esi
cvtdq2ps xmm0, xmm0
push 0xd
push 0xf
cvttss2si eax, xmm0
push eax
push ecx
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x1003f276
sub esp, 0xc
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0
call edi
call ebx
sub eax, dword [0x108996b8]
cmp eax, 0x12c
jbe 0x1003f276
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x1003f276
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x3f800000
call edi
push 6
mov ecx, 0x1089969c
call fcn.1003f670
call ebx
mov dword [0x108996b8], eax
push 0
push 1
push 1
sub esp, 0x20
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov eax, 0x637c60
mov dword [esp + 0x1c], 0x3f4ccccd
mov dword [esp + 0x18], 0x3f266666
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41500000
mov dword [esp + 8], 0x41700000
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0xc]
movss dword [esp], xmm0
push 0x7b4b
call eax
add esp, 0x20
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call dword [sym.imp.OPENGL32.dll_glColor4f]
push 0x100feec4
push 3
push 0xf
push dword [ebp + 0xc]
push dword [ebp - 4]
push 0xffffffffffffffff
push 0x102ba770
call fcn.10077e60
movd xmm0, dword [ebp + 8]
add esp, 0x1c
cmp dword [0x102df7c0], 7
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [0x10101c40]
movsd qword [ebp - 0x10], xmm0
cvtpd2ps xmm0, xmm0
cvttss2si ecx, xmm0
mov dword [ebp + 8], ecx
jne 0x1003f363
sub esp, 0xc
mov dword [esp + 8], 0x3e4ccccd
mov dword [esp + 4], 0x3e4ccccd
mov dword [esp], 0x3f800000
call edi
jmp 0x1003f3e9
movd xmm0, esi
cvtdq2ps xmm0, xmm0
push 0xd
push 0x19
cvttss2si eax, xmm0
push eax
push ecx
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x1003f3e9
sub esp, 0xc
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0
call edi
call ebx
sub eax, dword [0x108996b8]
cmp eax, 0x12c
jbe 0x1003f3e9
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x1003f3e9
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x3f800000
call edi
push 7
mov ecx, 0x1089969c
call fcn.1003f670
call ebx
mov dword [0x108996b8], eax
movsd xmm1, qword [ebp - 0x10]
mov eax, 0x637c60
push 0
push 1
push 1
sub esp, 0x20
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov dword [esp + 0x1c], 0x3f4ccccd
mov dword [esp + 0x18], 0x3f266666
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41500000
mov dword [esp + 8], 0x41c80000
movss dword [esp + 4], xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
push 0x7b4b
call eax
add esp, 0x20
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call dword [sym.imp.OPENGL32.dll_glColor4f]
push 0x7f
mov ecx, 0x101c3ae8
call fcn.100426f0
push eax
push 3
push 0x19
push dword [ebp + 0xc]
push dword [ebp + 8]
push 0xffffffffffffffff
push 0x102ba770
call fcn.10077e60
add esp, 0x1c
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8