Function at 0x10059570
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x68
mov eax, dword [0x10104040]
xor eax, esp
mov dword [esp + 0x64], eax
mov eax, dword [0x10106690]
xor edx, edx
push esi
push edi
push 0x31301
or dword [eax + 0x4944], 0x43
mov ecx, str.overlay
mov dword [0x10106704], 0x5e1660
mov dword [0x101066f4], 0x5e4280
mov dword [eax + 0x4954], 0
mov dword [eax + 0x4958], 0
mov dword [eax + 0x495c], 0
mov dword [eax + 0x4960], 0
mov dword [eax + 0x4948], 1
mov dword [eax + 0x4964], 0x44f00000
mov dword [eax + 0x4968], 0x44870000
mov dword [eax + 0x494c], 1
mov dword [eax + 0x499c], 0
call fcn.10016300
mov ecx, dword [0x10106690]
add esp, 4
mov eax, dword [ecx + 0x3f94]
push 0xffffffffffffffff
mov byte [eax + 0xb0], 1
mov eax, dword [ecx + 0x3f94]
mov eax, dword [eax + 0x26c]
mov dword [esp + 0x14], eax
mov eax, 0x56e210
call eax
mov esi, dword [0xb6f980]
add esp, 4
mov edi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
mov dword [esp + 0xc], eax
test esi, esi
je 0x10059684
push 0x43
call edi
test al, 1
je 0x10059684
cmp byte [0x101066e4], 0
je 0x10059684
movss xmm0, dword [esi + 0x44]
addss xmm0, xmm0
movss dword [esi + 0x44], xmm0
movss xmm0, dword [esi + 0x48]
addss xmm0, xmm0
movss dword [esi + 0x48], xmm0
cmp byte [0x101066c8], 0
je 0x100596a0
movd xmm0, dword [0x10104e78]
cvtdq2ps xmm0, xmm0
movss dword [0xb7cb64], xmm0
cmp byte [0x101066d5], 0
mov eax, dword [0x10104f00]
je 0x100596b5
mov byte [eax], 1
mov al, 1
jmp 0x100596ba
mov byte [eax], 0
xor al, al
cmp byte [0x101066cb], 0
mov byte [0x101066d5], al
mov eax, 0x56e210
push 0xffffffffffffffff
je 0x100596df
call eax
add esp, 4
or dword [eax + 0x40], 0xbc0000
mov al, 1
jmp 0x100596ed
call eax
add esp, 4
and dword [eax + 0x40], 0xff43ffff
xor al, al
cmp byte [0x101066fa], 0
mov esi, dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov byte [0x101066cb], al
je 0x10059749
push 0
push 4
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 1
push eax
push 0x969164
push dword [0x101066d8]
call esi
push 0
push 4
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 1
push eax
push 0x969164
push dword [0x101066d8]
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [0x101066e7], 0
je 0x10059756
push 0x11
jmp 0x10059758
push 0
push dword [0x101066a4]
call dword [sym.imp.USER32.dll_SetWindowDisplayAffinity]
cmp byte [0x101066f9], 0
mov eax, 0x56e210
push 0xffffffffffffffff
je 0x1005978b
call eax
add esp, 4
mov edx, 0x609ff0
mov ecx, eax
call edx
mov byte [eax + 0x14e], 1
jmp 0x100597a0
call eax
add esp, 4
mov edx, 0x609ff0
mov ecx, eax
call edx
mov byte [eax + 0x14e], 0
cmp byte [0x101066c6], 0
lea eax, [esp + 0x24]
push 0
push 4
push eax
push 0x96916e
push dword [0x101066d8]
mov dword [esp + 0x38], 1
jne 0x100597cd
mov dword [esp + 0x38], 0
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x101066cc], 0
je 0x100598cb
push 0x78
call edi
test al, 1
je 0x100598cb
push 0
push 4
lea eax, [esp + 0x28]
push eax
push 0xc7dec8
push dword [0x101066d8]
call esi
push 0
push 4
lea eax, [esp + 0x34]
push eax
push 0xc7decc
push dword [0x101066d8]
call esi
push 0
push 4
lea eax, [esp + 0x20]
push eax
push 0xc7ded0
push dword [0x101066d8]
call esi
push 0
push 4
lea eax, [esp + 0x2c]
push eax
push 0xb6f5f0
push dword [0x101066d8]
call esi
push 0
push 4
lea eax, [esp + 0x1c]
push eax
mov eax, dword [esp + 0x30]
add eax, 0x14
push eax
push dword [0x101066d8]
call esi
push 0
push 4
lea eax, [esp + 0x30]
push eax
push 0xc7deea
push dword [0x101066d8]
call esi
cmp dword [esp + 0x28], 0
je 0x100598cb
mov esi, dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
lea eax, [esp + 0x20]
push 0
push 4
push eax
mov eax, dword [esp + 0x20]
add eax, 0x30
push eax
push dword [0x101066d8]
call esi
push 0
push 4
lea eax, [esp + 0x34]
push eax
mov eax, dword [esp + 0x20]
add eax, 0x34
push eax
push dword [0x101066d8]
call esi
push 0
push 4
lea eax, [esp + 0x20]
push eax
mov eax, dword [esp + 0x20]
add eax, 0x38
push eax
push dword [0x101066d8]
call esi
cmp byte [0x101066f8], 0
je 0x100598f7
push 0x79
call edi
test ax, ax
je 0x100598f7
mov eax, dword [0xb6f5f0]
mov ecx, dword [0xba67b8]
mov edx, dword [0xba67bc]
mov eax, dword [eax + 0x14]
mov dword [eax + 0x30], ecx
mov dword [eax + 0x34], edx
cmp byte [0x101066d6], 0
je 0x10059918
movd xmm0, dword [0x10104eb0]
mov eax, dword [0xb6f5f0]
cvtdq2ps xmm0, xmm0
movss dword [eax + 0x560], xmm0
cmp byte [0x101066e6], 0
je 0x10059b0e
push 0xffffffffffffffff
mov eax, 0x56e210
call eax
add esp, 4
mov esi, eax
cmp byte [0x101066e6], 0
je 0x1005a6a2
push dword [0x10104eb4]
mov edx, esi
push str.PYTHON_CROUCHFIRE
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.PYTHON_FIRE
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.PYTHON_FIRE_POOR
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.RIFLE_CROUCHFIRE
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.RIFLE_FIRE
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.RIFLE_FIRE_POOR
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.SHOTGUN_CROUCHFIRE
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.SHOTGUN_FIRE
call fcn.10060ac0
add esp, 0x40
mov edx, esi
push dword [0x10104eb4]
push str.SHOTGUN_FIRE_POOR
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.SILENCED_CROUCH_FIRE
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.SILENCED_FIRE
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.TEC_crouchfire
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.TEC_fire
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.UZI_crouchfire
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.UZI_fire
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.UZI_fire_POOR
call fcn.10060ac0
add esp, 0x40
mov edx, esi
push dword [0x10104eb4]
push str.idle_rocket
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.Rocket_Fire
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.run_rocket
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.walk_rocket
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.WALK_start_rocket
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.WEAPON_sniper
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.buddy_crouchfire
call fcn.10060ac0
push dword [0x10104eb4]
mov edx, esi
push str.buddy_fire
call fcn.10060ac0
add esp, 0x40
mov edx, esi
push dword [0x10104eb4]
push str.buddy_fire_POOR
call fcn.10060ac0
add esp, 8
mov al, byte [0x101066d7]
mov ecx, 0x56e0d0
test al, al
jne 0x10059b28
cmp byte [0x101066d0], al
je 0x10059fc0
movss xmm1, dword [0xb6f178]
movss dword [esp + 0x14], xmm1
test al, al
je 0x10059b44
movd xmm0, dword [0x10106700]
jmp 0x10059b4c
movd xmm0, dword [0x101066bc]
cvtdq2ps xmm0, xmm0
mov eax, dword [esp + 0xc]
push 0
push 0xffffffffffffffff
mov esi, dword [eax + 0x14]
divss xmm0, dword [0x100f7190]
add esi, 0x30
mov dword [eax + 0x4c], 0
movss dword [esp + 0x28], xmm0
movaps xmm0, xmm1
xorps xmm0, xmmword [0x100f77b0]
movss dword [esp + 0x20], xmm0
movss dword [eax + 0x55c], xmm0
movss dword [eax + 0x558], xmm0
call ecx
add esp, 8
mov dword [esp + 0x28], eax
test eax, eax
je 0x10059ca0
mov esi, dword [eax + 0x14]
lea ecx, [esp + 0x30]
add esi, 0x30
sub esp, 0xc
mov eax, 0x420b10
movss xmm0, dword [esi + 8]
movss xmm1, dword [esi + 4]
subss xmm0, xmm0
movss xmm2, dword [esi]
subss xmm1, xmm1
subss xmm2, xmm2
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm1
movss dword [esp], xmm2
call eax
movss xmm1, dword [esp + 0x34]
movss xmm0, dword [esp + 0x30]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm0, xmm1
movss xmm1, dword [esp + 0x38]
mulss xmm1, xmm1
addss xmm0, xmm1
call fcn.1000a930
push ecx
mov ecx, dword [esp + 0x2c]
mov eax, 0x59b020
movss dword [esp + 0x28], xmm0
movss xmm0, dword [esp + 0x1c]
movss dword [esp], xmm0
mov ecx, dword [ecx + 0x14]
call eax
movss xmm0, dword [esp + 0x14]
cvtps2pd xmm0, xmm0
call fcn.100a5a40
movss xmm2, dword [esi]
xorps xmm1, xmm1
mov eax, dword [esp + 0x28]
cvtsd2ss xmm1, xmm0
mov eax, dword [eax + 0x14]
mulss xmm1, dword [esp + 0x24]
subss xmm2, xmm1
movss xmm1, dword [esp + 0x14]
cvtps2pd xmm0, xmm1
movss dword [eax + 0x30], xmm2
call fcn.100a4aa0
mov ecx, dword [esp + 0x28]
movss xmm1, dword [esi + 4]
cvtsd2ss xmm0, xmm0
mov eax, dword [ecx + 0x14]
mulss xmm0, dword [esp + 0x24]
subss xmm1, xmm0
movss dword [eax + 0x34], xmm1
mov dword [ecx + 0x4c], 0
mov dword [ecx + 0x48], 0
mov dword [ecx + 0x44], 0
jmp 0x10059cc4
cmp byte [0x101066d7], 0
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0x46c]
je 0x10059cbb
or ecx, 0x200003
jmp 0x10059cbe
or ecx, 1
mov dword [eax + 0x46c], ecx
lea eax, [esi + 4]
push 0x57
mov dword [esp + 0x2c], eax
call edi
test ax, ax
je 0x10059d1b
movss xmm0, dword [esp + 0x14]
cvtps2pd xmm0, xmm0
call fcn.100a5a40
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
mulss xmm1, dword [esp + 0x20]
addss xmm1, dword [esi]
movss dword [esi], xmm1
movss xmm1, dword [esp + 0x14]
cvtps2pd xmm0, xmm1
call fcn.100a4aa0
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [esp + 0x20]
addss xmm0, dword [esi + 4]
movss dword [esi + 4], xmm0
jmp 0x10059d22
lea eax, [esi + 4]
mov dword [esp + 0x28], eax
push 0x53
call edi
test ax, ax
je 0x10059d7d
movss xmm0, dword [esp + 0x14]
cvtps2pd xmm0, xmm0
call fcn.100a5a40
movss xmm1, dword [esi]
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm0
mulss xmm2, dword [esp + 0x20]
subss xmm1, xmm2
movss dword [esi], xmm1
movss xmm1, dword [esp + 0x14]
cvtps2pd xmm0, xmm1
call fcn.100a4aa0
mov eax, dword [esp + 0x28]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movss xmm0, dword [eax]
mulss xmm1, dword [esp + 0x20]
subss xmm0, xmm1
movss dword [eax], xmm0
push 0x44
call edi
test ax, ax
je 0x10059dd4
movss xmm0, dword [esp + 0x14]
cvtps2pd xmm0, xmm0
call fcn.100a4aa0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
mulss xmm1, dword [esp + 0x20]
addss xmm1, dword [esi]
movss dword [esi], xmm1
movss xmm1, dword [esp + 0x14]
cvtps2pd xmm0, xmm1
call fcn.100a5a40
mov eax, dword [esp + 0x28]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movss xmm0, dword [eax]
mulss xmm1, dword [esp + 0x20]
subss xmm0, xmm1
movss dword [eax], xmm0
push 0x41
call edi
test ax, ax
je 0x10059e26
movss xmm0, dword [esp + 0x14]
cvtps2pd xmm0, xmm0
call fcn.100a4aa0
movss xmm1, dword [esi]
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm0
mulss xmm2, dword [esp + 0x20]
subss xmm1, xmm2
movss dword [esi], xmm1
movss xmm1, dword [esp + 0x14]
cvtps2pd xmm0, xmm1
call fcn.100a5a40
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [esp + 0x20]
addss xmm0, dword [esi + 4]
movss dword [esi + 4], xmm0
cmp byte [0x101066d7], 0
je 0x10059e61
push 0x20
call edi
test ax, ax
je 0x10059e48
movss xmm0, dword [esp + 0x20]
addss xmm0, dword [esi + 8]
movss dword [esi + 8], xmm0
push 0x11
call edi
test ax, ax
je 0x10059e61
movss xmm0, dword [esi + 8]
subss xmm0, dword [esp + 0x20]
movss dword [esi + 8], xmm0
cmp byte [0x101066d0], 0
je 0x10059fc0
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0x14]
test ecx, ecx
je 0x10059e7e
lea eax, [ecx + 0x30]
jmp 0x10059e81
add eax, 4
movss xmm2, dword [eax]
sub esp, 8
movss dword [esp + 0x38], xmm2
movss xmm1, dword [eax + 4]
movss dword [esp + 0x3c], xmm1
movss xmm0, dword [eax + 8]
mov eax, 0x569660
movss dword [esp + 4], xmm1
movss dword [esp + 0x40], xmm0
movss dword [esp], xmm2
call eax
fadd dword [0x100f7100]
push 0
push 0
push 0
push 1
push 1
push 0
push 0
push 1
lea eax, [esp + 0x40]
mov dword [esp + 0x40], 0
push eax
lea eax, [esp + 0x6c]
push eax
lea eax, [esp + 0x60]
push eax
push esi
mov eax, 0x56ba00
fstp dword [esp + 0x64]
call eax
add esp, 0x38
test al, al
je 0x10059f06
movss xmm0, dword [esp + 0x48]
addss xmm0, dword [0x100f7100]
jmp 0x10059f0c
movss xmm0, dword [esp + 0x2c]
sub esp, 8
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [esp + 0x3c]
mov eax, 0x569660
movss dword [esp + 4], xmm0
movss xmm0, dword [esp + 0x38]
movss dword [esp], xmm0
call eax
fstp dword [esp + 0x34]
movss xmm0, dword [esp + 0x34]
add esp, 8
comiss xmm0, dword [esp + 0x14]
jbe 0x10059f55
addss xmm0, dword [0x100f7100]
movss dword [esp + 0x14], xmm0
push 0xc
call fcn.1007e8bb
add esp, 4
mov dword [esp + 0x2c], eax
movss xmm0, dword [esp + 0x38]
push eax
push 1
lea eax, [esp + 0x2c]
push eax
sub esp, 0xc
mov eax, 0x6eb690
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 0x4c]
movss dword [esp + 4], xmm0
movss xmm0, dword [esp + 0x48]
movss dword [esp], xmm0
call eax
movss xmm0, dword [esp + 0x2c]
add esp, 0x18
test al, al
je 0x10059fbb
movss xmm1, dword [esp + 0x24]
comiss xmm1, xmm0
jbe 0x10059fbb
movaps xmm0, xmm1
addss xmm0, dword [0x100f7100]
movss dword [esi + 8], xmm0
cmp byte [0x101066c9], 0
je 0x1005a005
push 0xffffffffffffffff
mov eax, 0x56e210
call eax
add esp, 4
mov esi, eax
cmp byte [0x101066c9], 0
je 0x10059ffe
call fcn.1008fc8c
cdq
mov ecx, 0x64
idiv ecx
cmp edx, dword [0x101066e8]
jge 0x10059ffe
or dword [esi + 0x478], 4
jmp 0x1005a005
and dword [esi + 0x478], 0xfffffffb
cmp byte [0x101066cd], 0
je 0x1005a062
push 0xffffffffffffffff
mov eax, 0x56e210
call eax
mov esi, dword [0x101066dc]
add esp, 4
cmp byte [0x101066cd], 0
mov dword [esp + 0x18], eax
je 0x1005a062
cmp esi, 0x137
ja 0x1005a062
cmp esi, 0x4a
je 0x1005a062
movzx eax, word [eax + 0x22]
cmp eax, esi
je 0x1005a062
push 0
push esi
call dword [0x101069cc]
push 0
call dword [0x101069d0]
mov ecx, dword [esp + 0x24]
add esp, 0xc
mov eax, 0x5e4880
push esi
call eax
cmp byte [0x101066f3], 0
mov esi, 0x56e210
mov dword [esp + 0xc], 0x5e3b60
je 0x1005a0d5
push 0xffffffffffffffff
call esi
add esp, 4
mov cl, byte [eax + 0x718]
mov byte [esp + 0xb], cl
cmp byte [0x1010ac51], cl
je 0x1005a0d5
movzx edx, cl
lea ecx, [edx*8]
sub ecx, edx
mov esi, dword [eax + ecx*4 + 0x5a0]
mov ecx, eax
push esi
call dword [esp + 0x10]
mov byte [esp + 0x18], al
mov eax, 0x743c60
push dword [esp + 0x18]
push esi
call eax
mov ecx, 0x12c
add esp, 8
mov esi, 0x56e210
mov word [eax + 0x22], cx
mov al, byte [esp + 0xb]
mov byte [0x1010ac51], al
cmp byte [0x101066e0], 0
je 0x1005a134
push 0xffffffffffffffff
call esi
add esp, 4
mov cl, byte [eax + 0x718]
mov byte [esp + 0xb], cl
cmp byte [0x1010ac50], cl
je 0x1005a134
movzx edx, cl
lea ecx, [edx*8]
sub ecx, edx
mov esi, dword [eax + ecx*4 + 0x5a0]
mov ecx, eax
push esi
call dword [esp + 0x10]
mov byte [esp + 0x18], al
mov eax, 0x743c60
push dword [esp + 0x18]
push esi
call eax
add esp, 8
mov dword [eax + 0x38], 0x42c80000
mov al, byte [esp + 0xb]
mov byte [0x1010ac50], al
cmp byte [0x101066c4], 0
je 0x1005a1b6
push 0xffffffffffffffff
mov eax, 0x56e210
call eax
add esp, 4
mov cl, byte [eax + 0x718]
mov byte [esp + 0xb], cl
cmp byte [0x1010ac52], cl
je 0x1005a1b6
movzx edx, cl
lea ecx, [edx*8]
sub ecx, edx
mov esi, dword [eax + ecx*4 + 0x5a0]
mov ecx, eax
push esi
call dword [esp + 0x10]
mov byte [esp + 0x18], al
mov eax, 0x743c60
push dword [esp + 0x18]
push esi
call eax
mov ecx, 0x2710
add esp, 8
or dword [eax + 0x18], 0x4000
mov dword [eax + 4], 0x447a0000
mov dword [eax + 8], 0x447a0000
mov dword [eax + 0x38], 0x3f800000
mov word [eax + 0x20], cx
mov al, byte [esp + 0xb]
mov byte [0x1010ac52], al
cmp byte [0x101066c3], 0
je 0x1005a66a
mov eax, dword [0xb7cd98]
mov dword [esp + 0x2c], eax
mov eax, dword [0xb6f5f0]
cmp dword [eax + 0x740], 0x166
jne 0x1005a1f5
mov eax, dword [0xc17044]
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [0xc17048]
cdq
sub eax, edx
sar ecx, 1
sar eax, 1
jmp 0x1005a23f
mov esi, dword [0xc17044]
mov eax, 0x66666667
imul ecx, esi, 0x25
imul ecx
mov eax, esi
mov esi, dword [0xc17048]
sar edx, 9
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cdq
sub eax, edx
sar eax, 1
add ecx, eax
imul eax, esi, 0x64
mov dword [esp + 0x18], ecx
cdq
and edx, 0x3ff
lea ecx, [edx + eax]
mov eax, esi
cdq
sub eax, edx
sar ecx, 0xa
sar eax, 1
sub eax, ecx
mov ecx, dword [esp + 0x18]
movss xmm3, dword [0x10104f04]
movss xmm5, dword [0x10104f08]
movss xmm6, dword [0x10104f0c]
movss xmm7, dword [0x10104f10]
movss xmm2, dword [0x100f7100]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [esp + 0x18], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esp + 0x1c], xmm0
xorps xmm0, xmm0
comiss xmm0, xmm3
jbe 0x1005a28e
xorps xmm1, xmm1
jmp 0x1005a295
movaps xmm1, xmm2
minss xmm1, xmm3
comiss xmm0, xmm5
movss xmm4, dword [0x100f71ec]
movss xmm3, dword [0x100f70bc]
mulss xmm1, xmm4
addss xmm1, xmm3
cvttss2si ecx, xmm1
jbe 0x1005a2bb
xorps xmm1, xmm1
jmp 0x1005a2c2
movaps xmm1, xmm2
minss xmm1, xmm5
mulss xmm1, xmm4
addss xmm1, xmm3
cvttss2si eax, xmm1
shl eax, 8
or ecx, eax
comiss xmm0, xmm6
jbe 0x1005a2dd
xorps xmm1, xmm1
jmp 0x1005a2e4
movaps xmm1, xmm2
minss xmm1, xmm6
mulss xmm1, xmm4
addss xmm1, xmm3
cvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
comiss xmm0, xmm7
jbe 0x1005a2ff
xorps xmm1, xmm1
jmp 0x1005a306
movaps xmm1, xmm2
minss xmm1, xmm7
movd xmm2, dword [0x10104e8c]
mulss xmm1, xmm4
cvtdq2ps xmm2, xmm2
addss xmm1, xmm3
cvttss2si esi, xmm1
shl esi, 0x18
or esi, ecx
test esi, 0xff000000
je 0x1005a374
comiss xmm3, xmm2
ja 0x1005a374
push 0xff
push ecx
mov ecx, dword [esp + 0x18]
subss xmm2, xmm3
lea eax, [esp + 0x20]
mov dword [esp], 0x40c846cb
push eax
xorps xmm3, xmm3
call fcn.1002e2b0
push ecx
mov dword [esp], 0x3fc00000
push 1
push esi
mov esi, dword [esp + 0x1c]
mov ecx, esi
push dword [esi + 0x54]
push dword [esi + 0x5c]
call fcn.1002cdd0
mov dword [esi + 0x54], 0
push 2
call edi
test ax, ax
jns 0x1005a66a
call fcn.10059270
test eax, eax
js 0x1005a6a2
imul ecx, eax, 0x7c4
add ecx, dword [esp + 0x2c]
je 0x1005a66a
cmp dword [ecx + 0x14], 0
je 0x1005a66a
movss xmm0, dword [ecx + 0x540]
comiss xmm0, dword [0x100f7048]
jbe 0x1005a66a
movss xmm0, dword [ecx + 0x38]
ucomiss xmm0, dword [0x100f71d4]
lahf
test ah, 0x44
jp 0x1005a66a
cmp ecx, dword [0xb6f5f0]
je 0x1005a66a
push 0
push 5
lea eax, [esp + 0x38]
push eax
call dword [0x101066f4]
movss xmm4, dword [esp + 0x34]
mov eax, 0xb6fa2c
movaps xmm3, xmm4
mov ecx, dword [0xc17044]
mov esi, dword [0xc17048]
movups xmm1, xmmword [eax + 0x20]
movups xmm5, xmmword [eax + 0x10]
movups xmm7, xmmword [eax]
movups xmm6, xmmword [eax + 0x30]
movaps xmm0, xmm1
mulss xmm3, xmm5
mulss xmm0, dword [esp + 0x38]
addss xmm3, xmm0
movss dword [esp + 0x20], xmm3
movss xmm3, dword [esp + 0x30]
movss xmm2, dword [esp + 0x20]
movaps xmm0, xmm3
mulss xmm0, xmm7
addss xmm2, xmm0
movaps xmm0, xmm2
movss xmm2, dword [0x100f7100]
addss xmm0, xmm6
movss dword [esp + 0x20], xmm0
movaps xmm0, xmm5
shufps xmm0, xmm5, 0x55
mulss xmm4, xmm0
movaps xmm0, xmm1
shufps xmm0, xmm1, 0x55
mulss xmm0, dword [esp + 0x38]
movaps xmm1, xmm4
shufps xmm5, xmm5, 0xaa
mulss xmm5, dword [esp + 0x34]
addss xmm1, xmm0
movaps xmm0, xmm7
shufps xmm0, xmm7, 0x55
shufps xmm7, xmm7, 0xaa
movss dword [esp + 0x14], xmm1
movaps xmm1, xmm3
mulss xmm1, xmm0
movss xmm0, dword [esp + 0x14]
mulss xmm3, xmm7
addss xmm0, xmm1
movss dword [esp + 0x14], xmm0
movaps xmm0, xmm6
movss xmm1, dword [esp + 0x14]
shufps xmm0, xmm6, 0x55
addss xmm1, xmm0
shufps xmm6, xmm6, 0xaa
movss xmm0, dword [eax + 0x28]
mov eax, ecx
mulss xmm0, dword [esp + 0x38]
shr eax, 0x1f
addss xmm0, xmm5
addss xmm0, xmm3
addss xmm0, xmm6
divss xmm2, xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x100f7770]
mov eax, esi
shr eax, 0x1f
cvtpd2ps xmm7, xmm0
movd xmm0, esi
cvtdq2pd xmm0, xmm0
mulss xmm7, xmm2
addsd xmm0, qword [eax*8 + 0x100f7770]
mov eax, ecx
mulss xmm7, dword [esp + 0x20]
cdq
sub eax, edx
cvtpd2ps xmm6, xmm0
mov edi, eax
mov eax, esi
sar edi, 1
mulss xmm6, xmm2
mulss xmm6, xmm1
mov ecx, dword [0xb6f5f0]
cdq
sub eax, edx
mov esi, eax
sar esi, 1
cmp dword [ecx + 0x740], 0x166
je 0x1005a57a
mov eax, dword [0xc17044]
imul ecx, eax, 0x25
mov eax, 0x66666667
imul ecx
sar edx, 9
mov eax, edx
shr eax, 0x1f
add eax, edx
add edi, eax
mov eax, dword [0xc17048]
imul eax, eax, 0x64
cdq
and edx, 0x3ff
add eax, edx
sar eax, 0xa
sub esi, eax
movss xmm1, dword [0x10104d74]
xorps xmm3, xmm3
ucomiss xmm7, xmm3
movss dword [esp + 0x14], xmm3
xorps xmm2, xmm2
lahf
test ah, 0x44
jnp 0x1005a5f1
movd xmm5, edi
cvtdq2ps xmm5, xmm5
comiss xmm7, xmm5
jbe 0x1005a5df
movaps xmm4, xmm5
lea eax, [edi + edi]
subss xmm4, xmm7
movd xmm0, eax
cvtdq2ps xmm0, xmm0
xorps xmm4, xmmword [0x100f77b0]
divss xmm4, xmm1
movaps xmm1, xmm5
addss xmm1, xmm4
movss dword [esp + 0x14], xmm4
comiss xmm1, xmm0
movss xmm1, dword [0x10104d74]
jbe 0x1005a5df
movss dword [esp + 0x14], xmm3
comiss xmm5, xmm7
jbe 0x1005a5f1
movaps xmm0, xmm7
subss xmm0, xmm5
movss dword [esp + 0x14], xmm0
ucomiss xmm6, xmm3
lahf
test ah, 0x44
jnp 0x1005a649
movd xmm4, esi
cvtdq2ps xmm4, xmm4
comiss xmm6, xmm4
jbe 0x1005a631
movaps xmm2, xmm4
lea eax, [esi + esi]
subss xmm2, xmm6
movd xmm0, eax
cvtdq2ps xmm0, xmm0
xorps xmm2, xmmword [0x100f77b0]
divss xmm2, xmm1
movaps xmm1, xmm4
addss xmm1, xmm2
comiss xmm1, xmm0
jbe 0x1005a631
xorps xmm2, xmm2
comiss xmm4, xmm6
jbe 0x1005a649
movaps xmm2, xmm6
subss xmm2, xmm4
addss xmm4, xmm2
comiss xmm3, xmm4
jbe 0x1005a649
xorps xmm2, xmm2
push 0
push 0
movaps xmm0, xmm2
call fcn.100a4230
movss xmm0, dword [esp + 0x1c]
push eax
call fcn.100a4230
push eax
push 1
call dword [sym.imp.USER32.dll_mouse_event]
cmp byte [0x101066ce], 0
je 0x1005a69d
push 0
push 0xffffffffffffffff
mov eax, 0x56e0d0
call eax
add esp, 8
test eax, eax
je 0x1005a69d
movss xmm0, dword [0x10104eb8]
push ecx
lea ecx, [eax + 0x44]
movss dword [esp], xmm0
mov eax, 0x40fef0
call eax
call fcn.10018be0
mov ecx, dword [esp + 0x6c]
pop edi
pop esi
xor ecx, esp
call fcn.1007e2a5
mov esp, ebp
pop ebp
ret