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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x11c
mov eax, dword [0x100ef018]
xor eax, ebp
mov dword [ebp - 4], eax
cmp byte [0x1029af4d], 0
push ebx
push esi
push edi
je 0x10058b06
mov eax, dword [0x1087c368]
test eax, eax
jle 0x1005654a
add eax, 0xffffffff
mov dword [0x1087c368], eax
je 0x10056601
push 0x39
mov ebx, 0x861110
call ebx
mov esi, 0x85ec20
mov ecx, eax
call esi
test al, al
jne 0x100565f8
push 0x10
call ebx
mov ecx, eax
call esi
test al, al
jne 0x100565f8
push 0xc
call ebx
mov ecx, eax
call esi
test al, al
jne 0x100565f8
push 0x15
call ebx
mov ecx, eax
call esi
test al, al
jne 0x100565f8
push 0x21
call ebx
mov ecx, eax
call esi
test al, al
jne 0x100565f8
push 0x49
call ebx
mov ecx, eax
call esi
test al, al
jne 0x100565f8
push 0x4f
call ebx
mov ecx, eax
call esi
test al, al
jne 0x100565f8
push 0xe
call ebx
mov ecx, eax
call esi
test al, al
jne 0x100565f8
push 8
call ebx
mov ecx, eax
call esi
test al, al
jne 0x100565f8
push 7
call ebx
mov ecx, eax
call esi
test al, al
jne 0x100565f8
push 0x41
call ebx
mov ecx, eax
call esi
test al, al
jne 0x100565f8
push 2
call ebx
mov ecx, eax
call esi
test al, al
jne 0x100565f8
push 9
call ebx
mov ecx, eax
call esi
test al, al
je 0x10056634
cmp byte [0x1029af4d], 1
jne 0x10056634
mov byte [0x1029af4d], 0
mov dword [0xe8cb3c], 0
mov byte [0x1087c378], 0
mov dword [0x1087c350], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100b7755
mov esp, ebp
pop ebp
ret
movss xmm4, dword [0x100e6e30]
xor eax, eax
mov dword [0xe8cb3c], 1
movss xmm3, dword [0xe7c3d4]
comiss xmm4, xmm3
xorps xmm4, xmm4
setae al
movd xmm2, eax
cvtdq2ps xmm2, xmm2
ucomiss xmm2, xmm4
lahf
test ah, 0x44
jnp 0x1005666e
movaps xmm1, xmm3
jmp 0x10056676
movss xmm1, dword [0xe7c3d8]
mov eax, dword [0x107dce38]
mulss xmm1, dword [0x100e7750]
add eax, 0x140
ucomiss xmm2, xmm4
movd xmm0, eax
cvtdq2ps xmm0, xmm0
lahf
mulss xmm0, xmm3
subss xmm0, xmm1
test ah, 0x44
jp 0x100566a8
movss xmm3, dword [0xe7c3d8]
mulss xmm3, dword [0x100e73c4]
sub esp, 0x10
mov edi, dword [sym.imp.OPENGL32.dll_glColor4f]
addss xmm3, xmm0
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
movss dword [ebp - 0x108], xmm3
call edi
movss xmm2, dword [0xe7c3d4]
xor eax, eax
movss xmm0, dword [0x100e6e30]
xorps xmm3, xmm3
comiss xmm0, xmm2
setae al
movd xmm1, eax
cvtdq2ps xmm1, xmm1
ucomiss xmm1, xmm3
lahf
test ah, 0x44
jnp 0x10056716
movaps xmm0, xmm2
jmp 0x1005671e
movss xmm0, dword [0xe7c3d8]
mulss xmm0, dword [0x100e7860]
ucomiss xmm1, xmm3
lahf
test ah, 0x44
jnp 0x10056738
movaps xmm1, xmm2
addss xmm1, xmm2
jmp 0x10056744
movss xmm1, dword [0xe7c3d8]
addss xmm1, xmm1
divss xmm0, xmm2
push 0
push 1
push 1
sub esp, 0x20
mov eax, 0x637c60
mov dword [esp + 0x1c], 0x3f800000
mov dword [esp + 0x18], 0x3f800000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x43d20000
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x108]
subss xmm0, xmm1
mov dword [esp + 4], 0x41700000
divss xmm0, xmm2
movss dword [esp], xmm0
push 0xf070
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 edi
movss xmm1, dword [0xe7c3d4]
xor eax, eax
movss xmm0, dword [0x100e6e30]
xorps xmm2, xmm2
comiss xmm0, xmm1
movss dword [ebp - 0x104], xmm1
setae al
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jnp 0x10056809
movss dword [ebp - 0xf4], xmm1
jmp 0x10056819
movss xmm0, dword [0xe7c3d8]
movss dword [ebp - 0xf4], xmm0
push 0x152
mov ecx, 0x101a8848
call fcn.1003fea0
movss xmm0, dword [ebp - 0xf4]
mulss xmm0, dword [0x100e7860]
push eax
push 3
push 0
divss xmm0, dword [ebp - 0x104]
push 0xff19bdff
push dword [0xe8c58c]
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x108]
divss xmm0, dword [ebp - 0x104]
push eax
push 0x2d
cvttss2si eax, xmm0
push eax
push 0x10297260
call fcn.1006a120
movss xmm2, dword [0xe7c3d4]
xor eax, eax
movss xmm0, dword [0x100e6e30]
add esp, 0x24
comiss xmm0, xmm2
xorps xmm3, xmm3
setae al
movd xmm1, eax
cvtdq2ps xmm1, xmm1
ucomiss xmm1, xmm3
lahf
test ah, 0x44
jnp 0x100568a9
movaps xmm0, xmm2
jmp 0x100568b1
movss xmm0, dword [0xe7c3d8]
mulss xmm0, dword [0x100e7848]
ucomiss xmm1, xmm3
addss xmm0, dword [ebp - 0x108]
lahf
divss xmm0, xmm2
movss dword [ebp - 0x104], xmm0
test ah, 0x44
jnp 0x100568db
movaps xmm1, xmm2
jmp 0x100568e3
movss xmm1, dword [0xe7c3d8]
mulss xmm1, dword [0x100e73c4]
mov eax, 0x790b10
push 9
cvttss2si ebx, xmm0
divss xmm1, xmm2
cvttss2si esi, xmm1
movss dword [ebp - 0xf4], xmm1
push esi
push 0x23
push ebx
call eax
add esp, 0x10
test al, al
je 0x1005698e
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
bt ax, 0xf
jae 0x1005698e
movss xmm0, dword [ebp - 0xf4]
mov eax, 0x637c60
push 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3e222378
mov dword [esp + 0x18], 0x3f29dda9
mov dword [esp + 0x14], 0x3ea8f5c3
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41100000
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x104]
mov dword [esp + 4], 0x420c0000
movss dword [esp], xmm0
push 0xf072
call eax
mov dword [0x1087c368], 5
jmp 0x10056a0c
push 9
push esi
push 0x23
push ebx
mov eax, 0x790b10
call eax
movss xmm0, dword [ebp - 0xf4]
add esp, 0x10
push 0
push 1
push 1
sub esp, 0x20
test al, al
mov eax, 0x637c60
mov dword [esp + 0x1c], 0x3e222378
mov dword [esp + 0x18], 0x3f29dda9
je 0x100569d2
mov dword [esp + 0x14], 0x3e28f5c3
jmp 0x100569da
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41100000
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x104]
mov dword [esp + 4], 0x420c0000
movss dword [esp], xmm0
push 0xf072
call eax
movss xmm5, dword [ebp - 0x108]
xor eax, eax
addss xmm5, dword [0x100e73d4]
movss xmm0, dword [0xe7c3d4]
add esp, 0x30
movss xmm4, dword [0x100e6e30]
xorps xmm6, xmm6
comiss xmm4, xmm0
movaps xmm1, xmm5
movss xmm2, dword [0x100e74ec]
divss xmm1, xmm0
setae al
movss dword [ebp - 0x108], xmm5
movd xmm4, eax
cvtdq2ps xmm4, xmm4
movss dword [ebp - 0xf8], xmm1
ucomiss xmm4, xmm6
movss dword [ebp - 0xfc], xmm2
lahf
test ah, 0x44
jnp 0x10056a76
movaps xmm3, xmm0
jmp 0x10056a7e
movss xmm3, dword [0xe7c3d8]
mulss xmm3, dword [0x100e7400]
ucomiss xmm4, xmm6
divss xmm3, xmm0
lahf
movss dword [ebp - 0x104], xmm3
test ah, 0x44
jnp 0x10056aa0
movaps xmm3, xmm0
jmp 0x10056aa8
movss xmm3, dword [0xe7c3d8]
cmp dword [0x1087c350], 0
mulss xmm3, dword [0x100e74e4]
divss xmm3, xmm0
movss dword [ebp - 0x100], xmm3
je 0x10058982
mov eax, dword [sym.imp.KERNEL32.dll_GetTickCount]
xor ecx, ecx
mov ebx, 1
mov byte [ebp - 0x10], 0xff
xorps xmm0, xmm0
mov word [ebp - 7], 0
xor esi, esi
movq qword [ebp - 0xf], xmm0
mov byte [ebp - 5], 0
mov dword [ebp - 0x10c], ecx
cmp dword [0x1087c358], ebx
jl 0x10058269
movss xmm4, dword [0x100e74f0]
mov edx, 0xe7c3d4
nop dword [eax]
cmp ebx, 9
jge 0x10057049
lea ecx, [ecx + ecx*4]
shl ecx, 3
mov dword [ebp - 0xf4], ecx
cmp dword [ecx + 0x1087c3d4], 1
jne 0x10056b52
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f19999a
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f19999a
jmp 0x10056b82
mov ecx, dword [0x1087c354]
cmp ebx, ecx
jge 0x10056c00
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f000000
mov dword [esp + 4], 0x3f000000
mov dword [esp], 0x3f800000
call edi
cmp dword [0x1087c36c], 0
jne 0x10056db0
cmp byte [0x1087c378], 0
jne 0x10056db0
cvttss2si eax, dword [ebp - 0x100]
push 0x4d
push eax
cvttss2si eax, dword [ebp - 0xfc]
push eax
cvttss2si eax, dword [ebp - 0xf8]
push eax
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x10056db0
mov esi, dword [ebp - 0xf4]
push 0
movq xmm0, qword [esi + 0x1087c3d8]
mov eax, dword [esi + 0x1087c3e0]
movq qword [ebp - 0x10], xmm0
mov dword [ebp - 8], eax
call fcn.100beb69
mov esi, dword [esi + 0x1087c3d0]
add esp, 4
add esi, eax
jmp 0x10056db0
cmp dword [0x1087c36c], 0
jne 0x10056d37
cmp byte [0x1087c378], 0
jne 0x10056d37
cvttss2si eax, xmm3
push 0x50
push eax
cvttss2si eax, xmm2
push eax
cvttss2si eax, xmm1
push eax
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x10056d2c
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
cmp ebx, dword [0x1087c354]
jne 0x10056c69
mov dword [esp], 0
jmp 0x10056c70
mov dword [esp], 0x3f800000
call edi
mov esi, dword [ebp - 0xf4]
push 0
movq xmm0, qword [esi + 0x1087c3d8]
mov eax, dword [esi + 0x1087c3e0]
movq qword [ebp - 0x10], xmm0
mov dword [ebp - 8], eax
call fcn.100beb69
mov esi, dword [esi + 0x1087c3d0]
add esp, 4
add esi, eax
cmp ebx, dword [0x1087c354]
jne 0x10056db0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x1087c370]
cmp eax, 0x12c
jbe 0x10056db0
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
bt ax, 0xf
jae 0x10056db0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x1087c370], eax
mov eax, dword [ebp - 0x10c]
shl eax, 6
add eax, 0x1087c8bc
movups xmm0, xmmword [eax]
movups xmmword [0x1087c37a], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [0x1087c38a], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [0x1087c39a], xmm0
movups xmm0, xmmword [eax + 0x30]
mov byte [0x1087c379], bl
mov byte [0x1087c378], 1
movups xmmword [0x1087c3aa], xmm0
jmp 0x10056db0
mov ecx, dword [0x1087c354]
mov eax, dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp ebx, ecx
jne 0x10056d8c
call eax
sub eax, dword [0x1087c374]
cmp eax, 0x1f4
jbe 0x10056d8c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x1087c374]
cmp eax, 0x3e8
jbe 0x10056d68
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x1087c374], eax
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0
jmp 0x10056dae
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
movss xmm0, dword [ebp - 0x100]
mov eax, 0x637c60
push 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f733333
mov dword [esp + 0x18], 0x3f147ae1
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x429a0000
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0xfc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0xf8]
movss dword [esp], xmm0
push 0xf08d
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 edi
mov ecx, dword [ebp - 0xf4]
lea eax, [ecx + 0x1087c3d8]
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.1004c2b0
push 1
mov eax, 0x635fd0
call eax
movss xmm0, dword [0x100e7464]
add esp, 4
call fcn.100b56a0
mov ecx, dword [ebp - 0xf4]
movaps xmm3, xmm0
movsx eax, byte [ebp - 0x69]
mov edx, dword [ebp - 0x7e]
push ecx
movd xmm1, dword [ecx + 0x1087c3c8]
cvtdq2ps xmm1, xmm1
cvtps2pd xmm1, xmm1
mulsd xmm1, qword [0x100e6ec8]
cvtpd2ps xmm1, xmm1
movss dword [esp], xmm1
push 0
push ecx
movzx ecx, word [ecx + 0x1087c3bc]
push eax
push edx
sar edx, 3
and edx, 0xf
call fcn.100749d0
push eax
push ecx
mov ecx, dword [ebp - 0xf4]
movss xmm0, dword [ebp - 0xfc]
addss xmm0, dword [0x100e7484]
movsx eax, byte [ecx + 0x1087c3c4]
movd xmm2, eax
mov eax, 0xe7c3d4
cvtdq2ps xmm2, xmm2
divss xmm3, dword [eax]
movsx eax, byte [ecx + 0x1087c3c0]
addss xmm2, xmm0
movd xmm0, eax
addss xmm3, dword [ebp - 0xf8]
cvtdq2ps xmm1, xmm0
addss xmm1, xmm3
call fcn.1006f460
sub esp, 0x10
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
push 0
mov eax, 0x635fd0
call eax
movss xmm0, dword [0x100e6fc8]
add esp, 4
call fcn.100b56a0
mov eax, dword [ebp - 0x10c]
movss xmm1, dword [ebp - 0xfc]
addss xmm1, dword [0x100e74bc]
shl eax, 6
add eax, 0x1087c8bc
push eax
cvttss2si eax, dword [ebp - 0x100]
push 3
push eax
cvttss2si eax, xmm1
push eax
mov eax, 0xe7c3d4
divss xmm0, dword [eax]
addss xmm0, dword [ebp - 0xf8]
cvttss2si eax, xmm0
push eax
push 0xff19bdff
push 0x10297260
call fcn.1006a050
movss xmm0, dword [0x100e7438]
add esp, 0x1c
call fcn.100b56a0
movaps xmm1, xmm0
mov eax, 0xe7c3d4
movss xmm0, dword [ebp - 0x104]
push 0
push 1
divss xmm1, dword [eax]
push 1
sub esp, 0x20
lea eax, [ebx + 0x7bcb]
mov dword [esp + 0x1c], 0x3f040000
mov dword [esp + 0x18], 0x3f600000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41a00000
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0xfc]
subss xmm0, dword [0x100e70f8]
addss xmm1, dword [ebp - 0xf8]
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
push eax
mov eax, 0x637c60
call eax
movss xmm0, dword [0x100e74d8]
add esp, 0x30
call fcn.100b56a0
mov edx, 0xe7c3d4
movss xmm1, dword [ebp - 0xf8]
divss xmm0, dword [edx]
addss xmm1, xmm0
jmp 0x1005821f
cmp ebx, 0x11
jge 0x10057651
cmp ebx, 9
jne 0x10057072
movaps xmm1, xmm5
addss xmm2, xmm4
divss xmm1, dword [edx]
movss dword [ebp - 0xfc], xmm2
movss dword [ebp - 0xf8], xmm1
lea ecx, [ecx + ecx*4]
shl ecx, 3
mov dword [ebp - 0xf4], ecx
cmp dword [ecx + 0x1087c3d4], 1
jne 0x100570ab
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f19999a
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f19999a
jmp 0x100570db
mov ecx, dword [0x1087c354]
cmp ebx, ecx
jge 0x10057159
sub esp, 0x10
mov dword [esp + 0xc], 0x3f666666
mov dword [esp + 8], 0x3f000000
mov dword [esp + 4], 0x3f000000
mov dword [esp], 0x3f800000
call edi
cmp dword [0x1087c36c], 0
jne 0x10057309
cmp byte [0x1087c378], 0
jne 0x10057309
cvttss2si eax, dword [ebp - 0x100]
push 0x4d
push eax
cvttss2si eax, dword [ebp - 0xfc]
push eax
cvttss2si eax, dword [ebp - 0xf8]
push eax
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x10057309
mov esi, dword [ebp - 0xf4]
push 0
movq xmm0, qword [esi + 0x1087c3d8]
mov eax, dword [esi + 0x1087c3e0]
movq qword [ebp - 0x10], xmm0
mov dword [ebp - 8], eax
call fcn.100beb69
mov esi, dword [esi + 0x1087c3d0]
add esp, 4
add esi, eax
jmp 0x10057309
cmp dword [0x1087c36c], 0
jne 0x10057290
cmp byte [0x1087c378], 0
jne 0x10057290
cvttss2si eax, xmm3
push 0x4d
push eax
cvttss2si eax, xmm2
push eax
cvttss2si eax, xmm1
push eax
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x10057285
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
cmp ebx, dword [0x1087c354]
jne 0x100571c2
mov dword [esp], 0
jmp 0x100571c9
mov dword [esp], 0x3f800000
call edi
mov esi, dword [ebp - 0xf4]
push 0
movq xmm0, qword [esi + 0x1087c3d8]
mov eax, dword [esi + 0x1087c3e0]
movq qword [ebp - 0x10], xmm0
mov dword [ebp - 8], eax
call fcn.100beb69
mov esi, dword [esi + 0x1087c3d0]
add esp, 4
add esi, eax
cmp ebx, dword [0x1087c354]
jne 0x10057309
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x1087c370]
cmp eax, 0x12c
jbe 0x10057309
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
bt ax, 0xf
jae 0x10057309
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x1087c370], eax
mov eax, dword [ebp - 0x10c]
shl eax, 6
add eax, 0x1087c8bc
movups xmm0, xmmword [eax]
movups xmmword [0x1087c37a], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [0x1087c38a], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [0x1087c39a], xmm0
movups xmm0, xmmword [eax + 0x30]
mov byte [0x1087c379], bl
mov byte [0x1087c378], 1
movups xmmword [0x1087c3aa], xmm0
jmp 0x10057309
mov ecx, dword [0x1087c354]
mov eax, dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp ebx, ecx
jne 0x100572e5
call eax
sub eax, dword [0x1087c374]
cmp eax, 0x1f4
jbe 0x100572e5
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x1087c374]
cmp eax, 0x3e8
jbe 0x100572c1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x1087c374], eax
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0
jmp 0x10057307
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
movss xmm0, dword [ebp - 0x100]
mov eax, 0x637c60
push 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f733333
mov dword [esp + 0x18], 0x3f147ae1
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x429a0000
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0xfc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0xf8]
movss dword [esp], xmm0
push 0xf08d
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 edi
mov ecx, dword [ebp - 0xf4]
lea eax, [ecx + 0x1087c3d8]
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.1004c2b0
push 1
mov eax, 0x635fd0
call eax
movss xmm0, dword [0x100e7464]
add esp, 4
call fcn.100b56a0
mov ecx, dword [ebp - 0xf4]
movaps xmm3, xmm0
movsx eax, byte [ebp - 0x69]
mov edx, dword [ebp - 0x7e]
push ecx
movd xmm1, dword [ecx + 0x1087c3c8]
cvtdq2ps xmm1, xmm1
cvtps2pd xmm1, xmm1
mulsd xmm1, qword [0x100e6ec8]
cvtpd2ps xmm1, xmm1
movss dword [esp], xmm1
push 0
push ecx
movzx ecx, word [ecx + 0x1087c3bc]
push eax
push edx
sar edx, 3
and edx, 0xf
call fcn.100749d0
push eax
push ecx
mov ecx, dword [ebp - 0xf4]
movss xmm0, dword [ebp - 0xfc]
addss xmm0, dword [0x100e7484]
movsx eax, byte [ecx + 0x1087c3c4]
movd xmm2, eax
mov eax, 0xe7c3d4
cvtdq2ps xmm2, xmm2
divss xmm3, dword [eax]
movsx eax, byte [ecx + 0x1087c3c0]
addss xmm2, xmm0
movd xmm0, eax
addss xmm3, dword [ebp - 0xf8]
cvtdq2ps xmm1, xmm0
addss xmm1, xmm3
call fcn.1006f460
sub esp, 0x10
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
push 0
mov eax, 0x635fd0
call eax
movss xmm0, dword [0x100e6fc8]
add esp, 4
call fcn.100b56a0
mov eax, dword [ebp - 0x10c]
movss xmm1, dword [ebp - 0xfc]
addss xmm1, dword [0x100e74bc]
shl eax, 6
add eax, 0x1087c8bc
push eax
cvttss2si eax, dword [ebp - 0x100]
push 3
push eax
cvttss2si eax, xmm1
push eax
mov eax, 0xe7c3d4
divss xmm0, dword [eax]
addss xmm0, dword [ebp - 0xf8]
cvttss2si eax, xmm0
push eax
push 0xff19bdff
push 0x10297260
call fcn.1006a050
movss xmm3, dword [ebp - 0xfc]
add esp, 0x1c
subss xmm3, dword [0x100e70f8]
movss dword [ebp - 0xf4], xmm3
cmp ebx, 0xa
jge 0x10057572
movss xmm0, dword [0x100e7438]
call fcn.100b56a0
movss xmm1, dword [ebp - 0x104]
mov eax, 0xe7c3d4
push 0
push 1
push 1
divss xmm0, dword [eax]
sub esp, 0x20
lea eax, [ebx + 0x7bcb]
mov dword [esp + 0x1c], 0x3f040000
mov dword [esp + 0x18], 0x3f600000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41a00000
movss dword [esp + 8], xmm1
movss dword [esp + 4], xmm3
jmp 0x100581e6
movss xmm0, dword [0x100e7404]
call fcn.100b56a0
mov eax, 0xe7c3d4
movss xmm1, dword [ebp - 0x104]
push 0
push 1
push 1
divss xmm0, dword [eax]
sub esp, 0x20
mov eax, 0x637c60
mov dword [esp + 0x1c], 0x3f040000
mov dword [esp + 0x18], 0x3f600000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41a00000
movss dword [esp + 8], xmm1
addss xmm0, dword [ebp - 0xf8]
movss dword [esp + 4], xmm3
movss dword [esp], xmm0
push 0x7bcc
call eax
movss xmm0, dword [0x100e7460]
add esp, 0x30
call fcn.100b56a0
movss xmm1, dword [ebp - 0x104]
mov eax, 0xe7c3d4
push 0
push 1
push 1
divss xmm0, dword [eax]
sub esp, 0x20
lea eax, [ebx + 0x7bc1]
mov dword [esp + 0x1c], 0x3f040000
mov dword [esp + 0x18], 0x3f600000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41a00000
movss dword [esp + 8], xmm1
movss xmm1, dword [ebp - 0xf4]
jmp 0x100581e0
cmp ebx, 0x19
jge 0x10057c1b
cmp ebx, 0x11
jne 0x1005767a
movaps xmm1, xmm5
addss xmm2, xmm4
divss xmm1, dword [edx]
movss dword [ebp - 0xfc], xmm2
movss dword [ebp - 0xf8], xmm1
lea ecx, [ecx + ecx*4]
shl ecx, 3
mov dword [ebp - 0xf4], ecx
cmp dword [ecx + 0x1087c3d4], 1
jne 0x100576b3
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f19999a
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f19999a
jmp 0x100576e3
mov ecx, dword [0x1087c354]
cmp ebx, ecx
jge 0x10057761
sub esp, 0x10
mov dword [esp + 0xc], 0x3f666666
mov dword [esp + 8], 0x3f000000
mov dword [esp + 4], 0x3f000000
mov dword [esp], 0x3f800000
call edi
cmp dword [0x1087c36c], 0
jne 0x10057911
cmp byte [0x1087c378], 0
jne 0x10057911
cvttss2si eax, dword [ebp - 0x100]
push 0x4d
push eax
cvttss2si eax, dword [ebp - 0xfc]
push eax
cvttss2si eax, dword [ebp - 0xf8]
push eax
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x10057911
mov esi, dword [ebp - 0xf4]
push 0
movq xmm0, qword [esi + 0x1087c3d8]
mov eax, dword [esi + 0x1087c3e0]
movq qword [ebp - 0x10], xmm0
mov dword [ebp - 8], eax
call fcn.100beb69
mov esi, dword [esi + 0x1087c3d0]
add esp, 4
add esi, eax
jmp 0x10057911
cmp dword [0x1087c36c], 0
jne 0x10057898
cmp byte [0x1087c378], 0
jne 0x10057898
cvttss2si eax, xmm3
push 0x4d
push eax
cvttss2si eax, xmm2
push eax
cvttss2si eax, xmm1
push eax
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x1005788d
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
cmp ebx, dword [0x1087c354]
jne 0x100577ca
mov dword [esp], 0
jmp 0x100577d1
mov dword [esp], 0x3f800000
call edi
mov esi, dword [ebp - 0xf4]
push 0
movq xmm0, qword [esi + 0x1087c3d8]
mov eax, dword [esi + 0x1087c3e0]
movq qword [ebp - 0x10], xmm0
mov dword [ebp - 8], eax
call fcn.100beb69
mov esi, dword [esi + 0x1087c3d0]
add esp, 4
add esi, eax
cmp ebx, dword [0x1087c354]
jne 0x10057911
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x1087c370]
cmp eax, 0x12c
jbe 0x10057911
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
bt ax, 0xf
jae 0x10057911
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x1087c370], eax
mov eax, dword [ebp - 0x10c]
shl eax, 6
add eax, 0x1087c8bc
movups xmm0, xmmword [eax]
movups xmmword [0x1087c37a], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [0x1087c38a], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [0x1087c39a], xmm0
movups xmm0, xmmword [eax + 0x30]
mov byte [0x1087c379], bl
mov byte [0x1087c378], 1
movups xmmword [0x1087c3aa], xmm0
jmp 0x10057911
mov ecx, dword [0x1087c354]
mov eax, dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp ebx, ecx
jne 0x100578ed
call eax
sub eax, dword [0x1087c374]
cmp eax, 0x1f4
jbe 0x100578ed
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x1087c374]
cmp eax, 0x3e8
jbe 0x100578c9
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x1087c374], eax
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0
jmp 0x1005790f
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
movss xmm0, dword [ebp - 0x100]
mov eax, 0x637c60
push 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f733333
mov dword [esp + 0x18], 0x3f147ae1
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x429a0000
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0xfc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0xf8]
movss dword [esp], xmm0
push 0xf08d
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 edi
mov ecx, dword [ebp - 0xf4]
lea eax, [ecx + 0x1087c3d8]
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.1004c2b0
push 1
mov eax, 0x635fd0
call eax
movss xmm0, dword [0x100e7464]
add esp, 4
call fcn.100b56a0
mov ecx, dword [ebp - 0xf4]
movaps xmm3, xmm0
movsx eax, byte [ebp - 0x69]
mov edx, dword [ebp - 0x7e]
push ecx
movd xmm1, dword [ecx + 0x1087c3c8]
cvtdq2ps xmm1, xmm1
cvtps2pd xmm1, xmm1
mulsd xmm1, qword [0x100e6ec8]
cvtpd2ps xmm1, xmm1
movss dword [esp], xmm1
push 0
push ecx
movzx ecx, word [ecx + 0x1087c3bc]
push eax
push edx
sar edx, 3
and edx, 0xf
call fcn.100749d0
push eax
push ecx
mov ecx, dword [ebp - 0xf4]
movss xmm0, dword [ebp - 0xfc]
addss xmm0, dword [0x100e7484]
movsx eax, byte [ecx + 0x1087c3c4]
movd xmm2, eax
mov eax, 0xe7c3d4
cvtdq2ps xmm2, xmm2
divss xmm3, dword [eax]
movsx eax, byte [ecx + 0x1087c3c0]
addss xmm2, xmm0
movd xmm0, eax
addss xmm3, dword [ebp - 0xf8]
cvtdq2ps xmm1, xmm0
addss xmm1, xmm3
call fcn.1006f460
sub esp, 0x10
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
push 0
mov eax, 0x635fd0
call eax
movss xmm0, dword [0x100e6fc8]
add esp, 4
call fcn.100b56a0
mov eax, dword [ebp - 0x10c]
movss xmm1, dword [ebp - 0xfc]
addss xmm1, dword [0x100e74bc]
shl eax, 6
add eax, 0x1087c8bc
push eax
cvttss2si eax, dword [ebp - 0x100]
push 3
push eax
cvttss2si eax, xmm1
push eax
mov eax, 0xe7c3d4
divss xmm0, dword [eax]
addss xmm0, dword [ebp - 0xf8]
cvttss2si eax, xmm0
push eax
push 0xff19bdff
push 0x10297260
call fcn.1006a050
movss xmm3, dword [ebp - 0xfc]
add esp, 0x1c
subss xmm3, dword [0x100e70f8]
movss xmm0, dword [0x100e7404]
movss dword [ebp - 0xf4], xmm3
call fcn.100b56a0
mov eax, 0xe7c3d4
movss xmm1, dword [ebp - 0x104]
push 0
push 1
push 1
divss xmm0, dword [eax]
sub esp, 0x20
mov eax, 0x637c60
mov dword [esp + 0x1c], 0x3f040000
mov dword [esp + 0x18], 0x3f600000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41a00000
movss dword [esp + 8], xmm1
movss dword [esp + 4], xmm3
addss xmm0, dword [ebp - 0xf8]
movss dword [esp], xmm0
cmp ebx, 0x14
jge 0x10057ba9
push 0x7bcc
call eax
movss xmm0, dword [0x100e7460]
add esp, 0x30
call fcn.100b56a0
mov eax, 0xe7c3d4
divss xmm0, dword [eax]
lea eax, [ebx + 0x7bc1]
jmp 0x10057bcf
push 0x7bcd
call eax
movss xmm0, dword [0x100e7460]
add esp, 0x30
call fcn.100b56a0
mov eax, 0xe7c3d4
divss xmm0, dword [eax]
lea eax, [ebx + 0x7bb7]
movss xmm1, dword [ebp - 0x104]
push 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f040000
mov dword [esp + 0x18], 0x3f600000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41a00000
movss dword [esp + 8], xmm1
movss xmm1, dword [ebp - 0xf4]
jmp 0x100581e0
cmp ebx, 0x20
jge 0x10058252
cmp ebx, 0x19
jne 0x10057c44
movaps xmm1, xmm5
addss xmm2, xmm4
divss xmm1, dword [edx]
movss dword [ebp - 0xfc], xmm2
movss dword [ebp - 0xf8], xmm1
lea ecx, [ecx + ecx*4]
shl ecx, 3
mov dword [ebp - 0xf4], ecx
cmp dword [ecx + 0x1087c3d4], 1
jne 0x10057c7d
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f19999a
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f19999a
jmp 0x10057cad
mov ecx, dword [0x1087c354]
cmp ebx, ecx
jge 0x10057d2b
sub esp, 0x10
mov dword [esp + 0xc], 0x3f666666
mov dword [esp + 8], 0x3f000000
mov dword [esp + 4], 0x3f000000
mov dword [esp], 0x3f800000
call edi
cmp dword [0x1087c36c], 0
jne 0x10057edb
cmp byte [0x1087c378], 0
jne 0x10057edb
cvttss2si eax, dword [ebp - 0x100]
push 0x4d
push eax
cvttss2si eax, dword [ebp - 0xfc]
push eax
cvttss2si eax, dword [ebp - 0xf8]
push eax
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x10057edb
mov esi, dword [ebp - 0xf4]
push 0
movq xmm0, qword [esi + 0x1087c3d8]
mov eax, dword [esi + 0x1087c3e0]
movq qword [ebp - 0x10], xmm0
mov dword [ebp - 8], eax
call fcn.100beb69
mov esi, dword [esi + 0x1087c3d0]
add esp, 4
add esi, eax
jmp 0x10057edb
cmp dword [0x1087c36c], 0
jne 0x10057e62
cmp byte [0x1087c378], 0
jne 0x10057e62
cvttss2si eax, xmm3
push 0x4d
push eax
cvttss2si eax, xmm2
push eax
cvttss2si eax, xmm1
push eax
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x10057e57
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
cmp ebx, dword [0x1087c354]
jne 0x10057d94
mov dword [esp], 0
jmp 0x10057d9b
mov dword [esp], 0x3f800000
call edi
mov esi, dword [ebp - 0xf4]
push 0
movq xmm0, qword [esi + 0x1087c3d8]
mov eax, dword [esi + 0x1087c3e0]
movq qword [ebp - 0x10], xmm0
mov dword [ebp - 8], eax
call fcn.100beb69
mov esi, dword [esi + 0x1087c3d0]
add esp, 4
add esi, eax
cmp ebx, dword [0x1087c354]
jne 0x10057edb
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x1087c370]
cmp eax, 0x12c
jbe 0x10057edb
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
bt ax, 0xf
jae 0x10057edb
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x1087c370], eax
mov eax, dword [ebp - 0x10c]
shl eax, 6
add eax, 0x1087c8bc
movups xmm0, xmmword [eax]
movups xmmword [0x1087c37a], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [0x1087c38a], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [0x1087c39a], xmm0
movups xmm0, xmmword [eax + 0x30]
mov byte [0x1087c379], bl
mov byte [0x1087c378], 1
movups xmmword [0x1087c3aa], xmm0
jmp 0x10057edb
mov ecx, dword [0x1087c354]
mov eax, dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp ebx, ecx
jne 0x10057eb7
call eax
sub eax, dword [0x1087c374]
cmp eax, 0x1f4
jbe 0x10057eb7
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x1087c374]
cmp eax, 0x3e8
jbe 0x10057e93
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x1087c374], eax
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0
jmp 0x10057ed9
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
movss xmm0, dword [ebp - 0x100]
mov eax, 0x637c60
push 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f733333
mov dword [esp + 0x18], 0x3f147ae1
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x429a0000
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0xfc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0xf8]
movss dword [esp], xmm0
push 0xf08d
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 edi
mov ecx, dword [ebp - 0xf4]
lea eax, [ecx + 0x1087c3d8]
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.1004c2b0
push 1
mov eax, 0x635fd0
call eax
movss xmm0, dword [0x100e7464]
add esp, 4
call fcn.100b56a0
mov ecx, dword [ebp - 0xf4]
movaps xmm3, xmm0
movsx eax, byte [ebp - 0x69]
mov edx, dword [ebp - 0x7e]
push ecx
movd xmm1, dword [ecx + 0x1087c3c8]
cvtdq2ps xmm1, xmm1
cvtps2pd xmm1, xmm1
mulsd xmm1, qword [0x100e6ec8]
cvtpd2ps xmm1, xmm1
movss dword [esp], xmm1
push 0
push ecx
movzx ecx, word [ecx + 0x1087c3bc]
push eax
push edx
sar edx, 3
and edx, 0xf
call fcn.100749d0
push eax
push ecx
mov ecx, dword [ebp - 0xf4]
movss xmm0, dword [ebp - 0xfc]
addss xmm0, dword [0x100e7484]
movsx eax, byte [ecx + 0x1087c3c4]
movd xmm2, eax
mov eax, 0xe7c3d4
cvtdq2ps xmm2, xmm2
divss xmm3, dword [eax]
movsx eax, byte [ecx + 0x1087c3c0]
addss xmm2, xmm0
movd xmm0, eax
addss xmm3, dword [ebp - 0xf8]
cvtdq2ps xmm1, xmm0
addss xmm1, xmm3
call fcn.1006f460
sub esp, 0x10
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
push 0
mov eax, 0x635fd0
call eax
movss xmm0, dword [0x100e6fc8]
add esp, 4
call fcn.100b56a0
mov eax, dword [ebp - 0x10c]
movss xmm1, dword [ebp - 0xfc]
addss xmm1, dword [0x100e74bc]
shl eax, 6
add eax, 0x1087c8bc
push eax
cvttss2si eax, dword [ebp - 0x100]
push 3
push eax
cvttss2si eax, xmm1
push eax
mov eax, 0xe7c3d4
divss xmm0, dword [eax]
addss xmm0, dword [ebp - 0xf8]
cvttss2si eax, xmm0
push eax
push 0xff19bdff
push 0x10297260
call fcn.1006a050
movss xmm3, dword [ebp - 0xfc]
add esp, 0x1c
subss xmm3, dword [0x100e70f8]
movss xmm0, dword [0x100e7404]
movss dword [ebp - 0xf4], xmm3
call fcn.100b56a0
mov eax, 0xe7c3d4
movss xmm1, dword [ebp - 0x104]
push 0
push 1
push 1
divss xmm0, dword [eax]
sub esp, 0x20
mov eax, 0x637c60
mov dword [esp + 0x1c], 0x3f040000
mov dword [esp + 0x18], 0x3f600000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41a00000
movss dword [esp + 8], xmm1
movss dword [esp + 4], xmm3
addss xmm0, dword [ebp - 0xf8]
movss dword [esp], xmm0
cmp ebx, 0x1e
jge 0x10058173
push 0x7bcd
call eax
movss xmm0, dword [0x100e7460]
add esp, 0x30
call fcn.100b56a0
mov eax, 0xe7c3d4
divss xmm0, dword [eax]
lea eax, [ebx + 0x7bb7]
jmp 0x10058199
push 0x7bce
call eax
movss xmm0, dword [0x100e7460]
add esp, 0x30
call fcn.100b56a0
mov eax, 0xe7c3d4
divss xmm0, dword [eax]
lea eax, [ebx + 0x7bad]
movss xmm1, dword [ebp - 0x104]
push 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f040000
mov dword [esp + 0x18], 0x3f600000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41a00000
movss dword [esp + 8], xmm1
movss xmm1, dword [ebp - 0xf4]
movss dword [esp + 4], xmm1
addss xmm0, dword [ebp - 0xf8]
movss dword [esp], xmm0
push eax
mov eax, 0x637c60
call eax
movss xmm0, dword [0x100e74d8]
add esp, 0x30
call fcn.100b56a0
mov edx, 0xe7c3d4
divss xmm0, dword [edx]
addss xmm0, dword [ebp - 0xf8]
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x10c]
mov eax, dword [sym.imp.KERNEL32.dll_GetTickCount]
movss xmm4, dword [0x100e74f0]
movss xmm5, dword [ebp - 0x108]
movss xmm3, dword [ebp - 0x100]
movss xmm2, dword [ebp - 0xfc]
movss dword [ebp - 0xf8], xmm1
inc ecx
inc ebx
mov dword [ebp - 0x10c], ecx
cmp ebx, dword [0x1087c358]
jle 0x10056b10
xorps xmm6, xmm6
movss xmm0, dword [0x100e6e30]
xor eax, eax
movss xmm1, dword [0xe7c3d4]
comiss xmm0, xmm1
setae al
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm6
lahf
test ah, 0x44
jnp 0x10058296
movaps xmm0, xmm1
jmp 0x1005829e
movss xmm0, dword [0xe7c3d8]
mulss xmm0, dword [0x100e7834]
xor ebx, ebx
cmp dword [0x1087c8ac], 1
divss xmm5, xmm1
divss xmm0, xmm1
addss xmm0, xmm5
movss dword [ebp - 0xf4], xmm0
jne 0x100583f0
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f19999a
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f19999a
call edi
cmp dword [0x1087c36c], ebx
jne 0x10058329
cmp byte [0x1087c378], bl
jne 0x10058329
cvttss2si eax, dword [ebp - 0x100]
push 0x4d
push eax
cvttss2si eax, dword [ebp - 0xf4]
push 0x146
push eax
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x10058329
mov ebx, 1
movss xmm0, dword [ebp - 0x100]
mov eax, 0x637c60
push 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f733333
mov dword [esp + 0x18], 0x3f147ae1
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x429a0000
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0xf4]
mov dword [esp + 4], 0x43a30000
movss dword [esp], xmm0
push 0xf08d
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 edi
movss xmm1, dword [0xe7c3d4]
xor eax, eax
movss xmm0, dword [0x100e6e30]
xorps xmm2, xmm2
comiss xmm0, xmm1
movss dword [ebp - 0x104], xmm1
setae al
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jnp 0x1005858d
movaps xmm0, xmm1
addss xmm0, xmm1
jmp 0x10058599
cmp dword [0x1087c36c], ebx
jne 0x100584d6
cmp byte [0x1087c378], bl
jne 0x100584d6
cvttss2si eax, xmm3
push 0x4d
push eax
cvttss2si eax, xmm0
push 0x146
push eax
mov eax, 0x790b10
call eax
add esp, 0x10
cmp al, 1
jne 0x100584d6
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
mov ebx, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x108], 1
call ebx
sub eax, dword [0x1087c370]
cmp eax, 0x12c
jbe 0x10058324
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
bt ax, 0xf
jae 0x100584cb
call ebx
push 0x158
mov ecx, 0x101a8848
mov dword [0x1087c370], eax
call fcn.1003fea0
movups xmm0, xmmword [eax]
movups xmmword [0x1087c37a], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [0x1087c38a], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [0x1087c39a], xmm0
movups xmm0, xmmword [eax + 0x30]
mov word [0x1087c378], 0x2001
movups xmmword [0x1087c3aa], xmm0
mov ebx, dword [ebp - 0x108]
jmp 0x10058329
cmp dword [0x1087c354], 0x20
jne 0x10058564
mov ebx, dword [sym.imp.KERNEL32.dll_GetTickCount]
call ebx
sub eax, dword [0x1087c374]
cmp eax, 0x1f4
jbe 0x10058539
call ebx
sub eax, dword [0x1087c374]
cmp eax, 0x3e8
jbe 0x1005850e
call ebx
mov dword [0x1087c374], eax
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0
call edi
xor ebx, ebx
jmp 0x10058329
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
xor ebx, ebx
jmp 0x10058329
sub esp, 0x10
mov dword [esp + 0xc], 0x3f733333
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
jmp 0x10058329
movss xmm0, dword [0xe7c3d8]
addss xmm0, xmm0
push 0x15d
mov ecx, 0x101a8848
movss dword [ebp - 0x108], xmm0
call fcn.1003fea0
movss xmm0, dword [ebp - 0x108]
divss xmm0, dword [ebp - 0x104]
push eax
push 3
cvttss2si eax, dword [ebp - 0x100]
addss xmm0, dword [ebp - 0xf4]
push eax
push 0x14b
cvttss2si eax, xmm0
push eax
push 0xff19bdff
push 0x10297260
call fcn.1006a050
mov eax, dword [ebp - 0x10c]
add esp, 0x1c
lea eax, [eax + eax*4]
lea eax, [eax*8 + 0x1087c3d8]
push eax
lea eax, [ebp - 0xf0]
push eax
call fcn.1004c2b0
push 1
mov eax, 0x635fd0
call eax
movss xmm0, dword [0x100e6e30]
xor eax, eax
movss xmm2, dword [0xe7c3d4]
add esp, 4
comiss xmm0, xmm2
xorps xmm1, xmm1
setae al
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x10058649
movaps xmm1, xmm2
jmp 0x10058651
movss xmm1, dword [0xe7c3d8]
mulss xmm1, dword [0x100e7464]
push ecx
mov dword [esp], 0x3f19999a
push 0
divss xmm1, xmm2
push ecx
push 0
push 0
push 0x20c7
push ecx
movss xmm2, dword [0x100e7790]
addss xmm1, dword [ebp - 0xf4]
call fcn.1006f460
sub esp, 0x10
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
push 0
mov eax, 0x635fd0
call eax
movss xmm1, dword [0xe7c3d4]
xor eax, eax
movss xmm0, dword [0x100e6e30]
add esp, 4
comiss xmm0, xmm1
xorps xmm2, xmm2
movss dword [ebp - 0x104], xmm1
setae al
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jnp 0x100586f3
movaps xmm0, xmm1
addss xmm0, xmm1
jmp 0x100586ff
movss xmm0, dword [0xe7c3d8]
addss xmm0, xmm0
push 0x158
mov ecx, 0x101a8848
movss dword [ebp - 0x108], xmm0
call fcn.1003fea0
movss xmm0, dword [ebp - 0x108]
divss xmm0, dword [ebp - 0x104]
push eax
push 3
cvttss2si eax, dword [ebp - 0x100]
addss xmm0, dword [ebp - 0xf4]
push eax
push 0x188
cvttss2si eax, xmm0
push eax
push 0xff19bdff
push 0x10297260
call fcn.1006a050
add esp, 0x1c
test ebx, ebx
mov ebx, 0x635fd0
je 0x100588ed
push 1
call ebx
mov dword [esp], 0x3f666666
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call edi
movss xmm0, dword [0x100e6e30]
xor eax, eax
movss xmm1, dword [0xe7c3d4]
xorps xmm2, xmm2
comiss xmm0, xmm1
setae al
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jnp 0x100587ba
movaps xmm0, xmm1
jmp 0x100587c2
movss xmm0, dword [0xe7c3d8]
mulss xmm0, dword [0x100e75d0]
mov eax, 0x6378a0
push 0
sub esp, 0x14
divss xmm0, xmm1
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x42200000
movss dword [esp + 8], xmm0
movd xmm0, dword [0x879340c]
cvtdq2ps xmm0, xmm0
mov dword [esp + 4], 0x437a0000
subss xmm0, dword [0x100e752c]
movss dword [esp], xmm0
call eax
mov eax, 0x636070
call eax
add esp, 8
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
push 0
call ebx
movss xmm1, dword [0xe7c3d4]
xor eax, eax
movss xmm0, dword [0x100e6e30]
add esp, 4
comiss xmm0, xmm1
xorps xmm2, xmm2
movss dword [ebp - 0x108], xmm1
setae al
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jnp 0x1005887f
movss dword [ebp - 0xf4], xmm1
jmp 0x1005888f
movss xmm0, dword [0xe7c3d8]
movss dword [ebp - 0xf4], xmm0
push 0x15e
mov ecx, 0x101a8848
call fcn.1003fea0
movss xmm0, dword [ebp - 0xf4]
mulss xmm0, dword [0x100e75d0]
push eax
push 3
divss xmm0, dword [ebp - 0x108]
cvttss2si eax, xmm0
movd xmm0, dword [0x879340c]
cvtdq2ps xmm0, xmm0
push eax
push 0x104
subss xmm0, dword [0x100e752c]
cvttss2si eax, xmm0
push eax
push 0xff8be100
push 0x10297260
call fcn.1006a050
add esp, 0x1c
push 1
call ebx
add esp, 4
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.1004c2b0
mov dword [ebp - 0x1d], esi
lea eax, [ebp - 0x80]
movd xmm0, dword [0x879340c]
cvtdq2ps xmm0, xmm0
push 0
push 0
push 0
push eax
subss xmm0, dword [0x100e7544]
call fcn.100d6430
xor ecx, ecx
or ecx, 0x78
push ecx
push eax
mov eax, 0x861110
call eax
mov edx, 0x861aa0
mov ecx, eax
call edx
mov edx, 0x7e3e30
mov ecx, eax
call edx
sub esp, 0x10
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call edi
push 0
call ebx
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100b7755
mov esp, ebp
pop ebp
ret
mov eax, dword [0x1087c35c]
mov ecx, 0x101a8848
cmp eax, 1
jne 0x100589dc
push 0x100e3b3c
push 0x85
call fcn.1003fea0
push eax
push 1
push 0x34
push 0x9b
push 0x111
push 0xff19bdff
push 0x10297260
call fcn.1006a050
mov dword [0x1087c35c], 2
add esp, 0x20
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100b7755
mov esp, ebp
pop ebp
ret
cmp eax, 2
jne 0x10058a2c
push 0x100e3b40
push 0x85
call fcn.1003fea0
push eax
push 1
push 0x34
push 0x9b
push 0x111
push 0xff19bdff
push 0x10297260
call fcn.1006a050
mov dword [0x1087c35c], 3
add esp, 0x20
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100b7755
mov esp, ebp
pop ebp
ret
cmp eax, 3
jne 0x10058a7c
push str.....
push 0x85
call fcn.1003fea0
push eax
push 1
push 0x34
push 0x9b
push 0x111
push 0xff19bdff
push 0x10297260
call fcn.1006a050
mov dword [0x1087c35c], 4
add esp, 0x20
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100b7755
mov esp, ebp
pop ebp
ret
cmp eax, 4
jne 0x10058acc
push str......
push 0x85
call fcn.1003fea0
push eax
push 1
push 0x34
push 0x9b
push 0x111
push 0xff19bdff
push 0x10297260
call fcn.1006a050
mov dword [0x1087c35c], 0
add esp, 0x20
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100b7755
mov esp, ebp
pop ebp
ret
push 0x100e3b54
push 0x85
call fcn.1003fea0
push eax
push 1
push 0x34
push 0x9b
push 0x111
push 0xff19bdff
push 0x10297260
call fcn.1006a050
mov dword [0x1087c35c], 1
add esp, 0x20
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100b7755
mov esp, ebp
pop ebp
ret