Function at 0x140085300
Capabilities:
Log keystrokes via polling

Disassembly:
push rsi
push rdi
sub rsp, 0x518
mov rax, qword [0x14095de80]
xor rax, rsp
mov qword [rsp + 0x500], rax
call fcn.140024d50
mov rax, qword [rax + 8]
mov qword [rsp + 0x498], rax
call fcn.14008a840
mov r8d, eax
lea rdx, str.Abdi_Free_public___d_FPS
lea rcx, [rsp + 0x4c0]
call fcn.140003ad0
movss xmm0, dword [0x1400f830c]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x4c0]
lea rcx, [rsp + 0x460]
call fcn.14001ffc0
movss xmm0, dword [0x1400f843c]
movss dword [rsp + 0x120], xmm0
movss xmm0, dword [0x1400f82e8]
movss dword [rsp + 0x70], xmm0
movss xmm0, dword [0x1400f82a8]
mulss xmm0, dword [rsp + 0x70]
movss xmm1, dword [rsp + 0x464]
addss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [0x1400f82a8]
mulss xmm1, dword [rsp + 0x120]
movss xmm2, dword [rsp + 0x460]
addss xmm2, xmm1
movaps xmm1, xmm2
movaps xmm2, xmm0
lea rcx, [rsp + 0x458]
call fcn.140003e20
movss xmm0, dword [rsp + 0x498]
subss xmm0, dword [rsp + 0x458]
divss xmm0, dword [0x1400f82a8]
movss xmm2, dword [rsp + 0x70]
movaps xmm1, xmm0
lea rcx, [rsp + 0x450]
call fcn.140003e20
nop
call fcn.1400252e0
mov qword [rsp + 0x168], rax
mov dword [rsp + 0x20], 0xff
mov r9d, 0xa
mov r8d, 0xa
mov edx, 0xa
lea rcx, [rsp + 0x430]
call fcn.140003d80
mov rcx, rax
call fcn.1400044c0
mov dword [rsp + 0x124], eax
movss xmm0, dword [rsp + 0x454]
addss xmm0, dword [rsp + 0x45c]
movss xmm1, dword [rsp + 0x450]
addss xmm1, dword [rsp + 0x458]
movaps xmm2, xmm0
lea rcx, [rsp + 0x2c0]
call fcn.140003e20
mov qword [rsp + 0x160], rax
mov dword [rsp + 0x28], reloc.WS2_32.dll_ntohs
xorps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x124]
mov r8, qword [rsp + 0x160]
lea rdx, [rsp + 0x450]
mov rcx, qword [rsp + 0x168]
call fcn.140038360
nop
call fcn.1400252e0
mov qword [rsp + 0x178], rax
mov dword [rsp + 0x20], 0xff
mov r9d, dword [0x14095ddbc]
mov r8d, dword [0x14095ddc4]
mov edx, dword [0x14095ddc0]
lea rcx, [rsp + 0x440]
call fcn.140003d80
mov rcx, rax
call fcn.1400044c0
mov dword [rsp + 0x80], eax
movss xmm0, dword [rsp + 0x454]
addss xmm0, dword [0x1400f82a8]
movss xmm1, dword [rsp + 0x450]
addss xmm1, dword [rsp + 0x458]
movaps xmm2, xmm0
lea rcx, [rsp + 0x2c8]
call fcn.140003e20
mov qword [rsp + 0x170], rax
mov dword [rsp + 0x28], reloc.WS2_32.dll_ntohs
xorps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x80]
mov r8, qword [rsp + 0x170]
lea rdx, [rsp + 0x450]
mov rcx, qword [rsp + 0x178]
call fcn.140038360
nop
call fcn.1400252e0
mov qword [rsp + 0x190], rax
mov dword [rsp + 0x20], 0xff
mov r9d, 0xff
mov r8d, 0xff
mov edx, 0xff
lea rcx, [rsp + 0x3b0]
call fcn.140003d80
mov rcx, rax
call fcn.1400044c0
mov dword [rsp + 0x84], eax
movss xmm0, dword [rsp + 0x45c]
subss xmm0, dword [rsp + 0x464]
divss xmm0, dword [0x1400f82a8]
movss xmm1, dword [rsp + 0x454]
addss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x458]
subss xmm1, dword [rsp + 0x460]
divss xmm1, dword [0x1400f82a8]
movss xmm2, dword [rsp + 0x450]
addss xmm2, xmm1
movaps xmm1, xmm2
movaps xmm2, xmm0
lea rcx, [rsp + 0x2d0]
call fcn.140003e20
mov qword [rsp + 0x180], rax
call fcn.140024b00
mov qword [rsp + 0x188], rax
mov qword [rsp + 0x40], 0
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov qword [rsp + 0x30], 0
lea rax, [rsp + 0x4c0]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x84]
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x180]
movss xmm2, dword [0x140101174]
mov rdx, qword [rsp + 0x188]
mov rcx, qword [rsp + 0x190]
call fcn.140038620
nop
movzx eax, byte [0x14095f88e]
test eax, eax
je 0x140085b98
mov dword [rsp + 0x20], 0xff
mov r9d, Ordinal_50
mov r8d, 0xff
mov edx, 0xe8
lea rcx, [rsp + 0x3c0]
call fcn.140003d80
mov rcx, rax
call fcn.1400044c0
mov eax, eax
cvtsi2ss xmm0, rax
movss dword [rsp + 0x4a0], xmm0
lea rax, [rsp + 0x4a4]
mov rdi, rax
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
mov dword [rsp + 0x20], 0xff
mov r9d, Ordinal_50
mov r8d, 0xff
mov edx, 0xe8
lea rcx, [rsp + 0x3d0]
call fcn.140003d80
mov rcx, rax
call fcn.1400044c0
mov eax, eax
cvtsi2ss xmm0, rax
movss dword [rsp + 0x4b0], xmm0
lea rax, [rsp + 0x4b4]
mov rdi, rax
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
call fcn.1400252e0
mov qword [rsp + 0x1a8], rax
mov eax, 4
imul rax, rax, 0
mov ecx, 4
imul rcx, rcx, 1
mov edx, 4
imul rdx, rdx, 2
movss xmm0, dword [0x1400f82a8]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rsp + rdx + 0x4a0]
movss xmm2, dword [rsp + rcx + 0x4a0]
movss xmm1, dword [rsp + rax + 0x4a0]
lea rcx, [rsp + 0x298]
call fcn.140003e60
lea rcx, [rsp + 0x298]
call fcn.1400244f0
mov dword [rsp + 0x88], eax
mov eax, dword [0x14095f8d8]
cdq
sub eax, edx
sar eax, 1
cvtsi2ss xmm0, eax
mov eax, dword [0x14095f8dc]
cdq
sub eax, edx
sar eax, 1
sub eax, 0xa
cvtsi2ss xmm1, eax
movaps xmm2, xmm0
lea rcx, [rsp + 0x2d8]
call fcn.140003e20
mov qword [rsp + 0x198], rax
mov eax, dword [0x14095f8d8]
cdq
sub eax, edx
sar eax, 1
cvtsi2ss xmm0, eax
mov eax, dword [0x14095f8dc]
cdq
sub eax, edx
sar eax, 1
cvtsi2ss xmm1, eax
movaps xmm2, xmm0
lea rcx, [rsp + 0x2e0]
call fcn.140003e20
mov qword [rsp + 0x1a0], rax
movss xmm0, dword [0x1400f8298]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x88]
mov r8, qword [rsp + 0x198]
mov rdx, qword [rsp + 0x1a0]
mov rcx, qword [rsp + 0x1a8]
call fcn.140036900
nop
call fcn.1400252e0
mov qword [rsp + 0x1c0], rax
mov eax, 4
imul rax, rax, 0
mov ecx, 4
imul rcx, rcx, 1
mov edx, 4
imul rdx, rdx, 2
movss xmm0, dword [0x1400f82a8]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rsp + rdx + 0x4a0]
movss xmm2, dword [rsp + rcx + 0x4a0]
movss xmm1, dword [rsp + rax + 0x4a0]
lea rcx, [rsp + 0x288]
call fcn.140003e60
lea rcx, [rsp + 0x288]
call fcn.1400244f0
mov dword [rsp + 0x8c], eax
mov eax, dword [0x14095f8d8]
cdq
sub eax, edx
sar eax, 1
cvtsi2ss xmm0, eax
mov eax, dword [0x14095f8dc]
cdq
sub eax, edx
sar eax, 1
add eax, 0xa
cvtsi2ss xmm1, eax
movaps xmm2, xmm0
lea rcx, [rsp + 0x270]
call fcn.140003e20
mov qword [rsp + 0x1b0], rax
mov eax, dword [0x14095f8d8]
cdq
sub eax, edx
sar eax, 1
cvtsi2ss xmm0, eax
mov eax, dword [0x14095f8dc]
cdq
sub eax, edx
sar eax, 1
cvtsi2ss xmm1, eax
movaps xmm2, xmm0
lea rcx, [rsp + 0x2f0]
call fcn.140003e20
mov qword [rsp + 0x1b8], rax
movss xmm0, dword [0x1400f8298]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x8c]
mov r8, qword [rsp + 0x1b0]
mov rdx, qword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x1c0]
call fcn.140036900
nop
call fcn.1400252e0
mov qword [rsp + 0x1d8], rax
mov eax, 4
imul rax, rax, 0
mov ecx, 4
imul rcx, rcx, 1
mov edx, 4
imul rdx, rdx, 2
movss xmm0, dword [0x1400f82a8]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rsp + rdx + 0x4a0]
movss xmm2, dword [rsp + rcx + 0x4a0]
movss xmm1, dword [rsp + rax + 0x4a0]
lea rcx, [rsp + 0x278]
call fcn.140003e60
lea rcx, [rsp + 0x278]
call fcn.1400244f0
mov dword [rsp + 0x90], eax
mov eax, dword [0x14095f8d8]
cdq
sub eax, edx
sar eax, 1
sub eax, 0xa
cvtsi2ss xmm0, eax
mov eax, dword [0x14095f8dc]
cdq
sub eax, edx
sar eax, 1
cvtsi2ss xmm1, eax
movaps xmm2, xmm0
lea rcx, [rsp + 0x2f8]
call fcn.140003e20
mov qword [rsp + 0x1c8], rax
mov eax, dword [0x14095f8d8]
cdq
sub eax, edx
sar eax, 1
cvtsi2ss xmm0, eax
mov eax, dword [0x14095f8dc]
cdq
sub eax, edx
sar eax, 1
cvtsi2ss xmm1, eax
movaps xmm2, xmm0
lea rcx, [rsp + 0x300]
call fcn.140003e20
mov qword [rsp + 0x1d0], rax
movss xmm0, dword [0x1400f8298]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x90]
mov r8, qword [rsp + 0x1c8]
mov rdx, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1d8]
call fcn.140036900
nop
call fcn.1400252e0
mov qword [rsp + 0x1f0], rax
mov eax, 4
imul rax, rax, 0
mov ecx, 4
imul rcx, rcx, 1
mov edx, 4
imul rdx, rdx, 2
movss xmm0, dword [0x1400f82a8]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rsp + rdx + 0x4a0]
movss xmm2, dword [rsp + rcx + 0x4a0]
movss xmm1, dword [rsp + rax + 0x4a0]
lea rcx, [rsp + 0x348]
call fcn.140003e60
lea rcx, [rsp + 0x348]
call fcn.1400244f0
mov dword [rsp + 0x94], eax
mov eax, dword [0x14095f8d8]
cdq
sub eax, edx
sar eax, 1
add eax, 0xa
cvtsi2ss xmm0, eax
mov eax, dword [0x14095f8dc]
cdq
sub eax, edx
sar eax, 1
cvtsi2ss xmm1, eax
movaps xmm2, xmm0
lea rcx, [rsp + 0x308]
call fcn.140003e20
mov qword [rsp + 0x1e0], rax
mov eax, dword [0x14095f8d8]
cdq
sub eax, edx
sar eax, 1
cvtsi2ss xmm0, eax
mov eax, dword [0x14095f8dc]
cdq
sub eax, edx
sar eax, 1
cvtsi2ss xmm1, eax
movaps xmm2, xmm0
lea rcx, [rsp + 0x310]
call fcn.140003e20
mov qword [rsp + 0x1e8], rax
movss xmm0, dword [0x1400f8298]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x94]
mov r8, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x1e8]
mov rcx, qword [rsp + 0x1f0]
call fcn.140036900
nop
movzx eax, byte [0x14095dda9]
test eax, eax
je 0x140086061
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [rsp + 0x78], eax
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x78]
cdq
sub eax, edx
sar eax, 1
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x7c]
cdq
sub eax, edx
sar eax, 1
mov dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x7c]
cdq
sub eax, edx
sar eax, 1
cdq
mov ecx, reloc.WLDAP32.dll_Ordinal_50
idiv ecx
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x54]
cdq
idiv dword [rsp + 0x54]
mov ecx, eax
call fcn.1400681e0
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x5c], xmm0
mov eax, dword [0x14095f898]
inc eax
mov dword [0x14095f898], eax
mov eax, dword [0x14095f898]
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x50], 0
cmp dword [rsp + 0x50], 4
jge 0x140086061
mov edx, Ordinal_26
lea rcx, [rsp + 0x468]
call fcn.14000b380
lea rcx, [rsp + 0x468]
call fcn.1400129b0
nop
cvtsi2ss xmm0, dword [rsp + 0x54]
movss dword [rsp + 0x98], xmm0
imul eax, dword [rsp + 0x50], 0x5a
mov ecx, dword [rsp + 0x58]
add ecx, eax
mov eax, ecx
cvtsi2ss xmm1, eax
movaps xmm0, xmm1
call fcn.140078230
call fcn.140088e80
movss xmm1, dword [rsp + 0x98]
mulss xmm1, xmm0
movaps xmm0, xmm1
cvttss2si eax, xmm0
mov dword [rsp + 0x9c], eax
lea rdx, [rsp + 0x9c]
lea rcx, [rsp + 0x468]
call fcn.1400851d0
nop
cvtsi2ss xmm0, dword [rsp + 0x54]
movss dword [rsp + 0xa0], xmm0
imul eax, dword [rsp + 0x50], 0x5a
mov ecx, dword [rsp + 0x58]
add ecx, eax
mov eax, ecx
cvtsi2ss xmm1, eax
movaps xmm0, xmm1
call fcn.140078230
call fcn.14007e310
movss xmm1, dword [rsp + 0xa0]
mulss xmm1, xmm0
movaps xmm0, xmm1
cvttss2si eax, xmm0
mov dword [rsp + 0xa4], eax
lea rdx, [rsp + 0xa4]
lea rcx, [rsp + 0x468]
call fcn.1400851d0
nop
cvtsi2ss xmm0, dword [rsp + 0x54]
movss dword [rsp + 0xa8], xmm0
movss xmm0, dword [rsp + 0x5c]
call fcn.14007e310
movss xmm1, dword [rsp + 0xa8]
divss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xb0], xmm0
imul eax, dword [rsp + 0x50], 0x5a
mov ecx, dword [rsp + 0x58]
add ecx, eax
mov eax, ecx
cvtsi2ss xmm1, eax
movss dword [rsp + 0xac], xmm1
movss xmm0, dword [rsp + 0x5c]
call fcn.1400773c0
movss xmm1, dword [rsp + 0xac]
addss xmm1, xmm0
movaps xmm0, xmm1
call fcn.140078230
call fcn.140088e80
movss xmm1, dword [rsp + 0xb0]
mulss xmm1, xmm0
movaps xmm0, xmm1
cvttss2si eax, xmm0
mov dword [rsp + 0xb4], eax
lea rdx, [rsp + 0xb4]
lea rcx, [rsp + 0x468]
call fcn.1400851d0
nop
cvtsi2ss xmm0, dword [rsp + 0x54]
movss dword [rsp + 0xb8], xmm0
movss xmm0, dword [rsp + 0x5c]
call fcn.14007e310
movss xmm1, dword [rsp + 0xb8]
divss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xc0], xmm0
imul eax, dword [rsp + 0x50], 0x5a
mov ecx, dword [rsp + 0x58]
add ecx, eax
mov eax, ecx
cvtsi2ss xmm1, eax
movss dword [rsp + 0xbc], xmm1
movss xmm0, dword [rsp + 0x5c]
call fcn.1400773c0
movss xmm1, dword [rsp + 0xbc]
addss xmm1, xmm0
movaps xmm0, xmm1
call fcn.140078230
call fcn.14007e310
movss xmm1, dword [rsp + 0xc0]
mulss xmm1, xmm0
movaps xmm0, xmm1
cvttss2si eax, xmm0
mov dword [rsp + 0xc4], eax
lea rdx, [rsp + 0xc4]
lea rcx, [rsp + 0x468]
call fcn.1400851d0
nop
call fcn.140025650
cvtsd2ss xmm0, xmm0
movss xmm1, dword [0x1400f8298]
call sub.api_ms_win_crt_math_l1_1_0.dll_fmodf
movss dword [rsp + 0xc8], xmm0
cvtsi2ss xmm0, dword [rsp + 0x50]
mulss xmm0, dword [0x1400f9980]
movss xmm1, dword [rsp + 0xc8]
addss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [0x1400f8298]
movss dword [rsp + 0x20], xmm1
movss xmm3, dword [0x1400f8298]
movss xmm2, dword [0x1400f8298]
movaps xmm1, xmm0
lea rcx, [rsp + 0x3e0]
call fcn.140034ac0
mov rcx, rax
call fcn.1400044c0
mov dword [rsp + 0x74], eax
cvtsi2ss xmm0, dword [rsp + 0x6c]
cvtsi2ss xmm1, dword [rsp + 0x68]
movaps xmm2, xmm0
lea rcx, [rsp + 0x488]
call fcn.140003e20
mov edx, 1
lea rcx, [rsp + 0x468]
call fcn.140076220
mov eax, dword [rax]
mov ecx, dword [rsp + 0x6c]
sub ecx, eax
mov eax, ecx
cvtsi2ss xmm0, eax
movss dword [rsp + 0xcc], xmm0
xor edx, edx
lea rcx, [rsp + 0x468]
call fcn.140076220
mov eax, dword [rax]
mov ecx, dword [rsp + 0x68]
add ecx, eax
mov eax, ecx
cvtsi2ss xmm0, eax
movss dword [rsp + 0xd0], xmm0
movss xmm2, dword [rsp + 0xcc]
movss xmm1, dword [rsp + 0xd0]
lea rcx, [rsp + 0x480]
call fcn.140003e20
mov edx, 3
lea rcx, [rsp + 0x468]
call fcn.140076220
mov eax, dword [rax]
mov ecx, dword [rsp + 0x6c]
sub ecx, eax
mov eax, ecx
cvtsi2ss xmm0, eax
movss dword [rsp + 0xd4], xmm0
mov edx, 2
lea rcx, [rsp + 0x468]
call fcn.140076220
mov eax, dword [rax]
mov ecx, dword [rsp + 0x68]
add ecx, eax
mov eax, ecx
cvtsi2ss xmm0, eax
movss dword [rsp + 0xd8], xmm0
movss xmm2, dword [rsp + 0xd4]
movss xmm1, dword [rsp + 0xd8]
lea rcx, [rsp + 0x490]
call fcn.140003e20
call fcn.1400252e0
mov qword [rsp + 0x1f8], rax
movss xmm0, dword [0x1400f8298]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x74]
lea r8, [rsp + 0x480]
lea rdx, [rsp + 0x488]
mov rcx, qword [rsp + 0x1f8]
call fcn.140036900
call fcn.1400252e0
mov qword [rsp + 0x200], rax
movss xmm0, dword [0x1400f8298]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x74]
lea r8, [rsp + 0x490]
lea rdx, [rsp + 0x480]
mov rcx, qword [rsp + 0x200]
call fcn.140036900
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
lea rcx, [rsp + 0x468]
call fcn.140075a60
nop
jmp 0x140085c2b
movzx eax, byte [0x14095dda2]
test eax, eax
je 0x140086157
call fcn.1400252e0
mov qword [rsp + 0x210], rax
mov eax, dword [0x14095dda4]
cdq
mov ecx, 5
idiv ecx
cvtsi2ss xmm0, eax
movss dword [rsp + 0xdc], xmm0
mov dword [rsp + 0x20], 0xff
mov r9d, dword [0x14095ddbc]
mov r8d, dword [0x14095ddc4]
mov edx, dword [0x14095ddc0]
lea rcx, [rsp + 0x3f0]
call fcn.140003d80
mov rcx, rax
call fcn.1400044c0
mov dword [rsp + 0xe0], eax
cvtsi2ss xmm0, dword [0x140146008]
movss dword [rsp + 0xe4], xmm0
cvtsi2ss xmm0, dword [0x14095f8d8]
divss xmm0, dword [0x1400f82a8]
cvtsi2ss xmm1, dword [0x14095f8dc]
divss xmm1, dword [0x1400f82a8]
movaps xmm2, xmm0
lea rcx, [rsp + 0x318]
call fcn.140003e20
mov qword [rsp + 0x208], rax
movss xmm0, dword [rsp + 0xdc]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 0x64
mov r9d, dword [rsp + 0xe0]
movss xmm2, dword [rsp + 0xe4]
mov rdx, qword [rsp + 0x208]
mov rcx, qword [rsp + 0x210]
call fcn.1400353a0
nop
movzx eax, byte [0x14095dda8]
cmp eax, 1
jne 0x1400862b2
mov ecx, dword [0x14095ca38]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
test eax, eax
je 0x1400861b6
movzx eax, byte [0x14095f89c]
test eax, eax
jne 0x1400861b4
movzx eax, byte [0x14095f89d]
test eax, eax
jne 0x1400861b4
cvtsi2ss xmm0, dword [0x140146008]
subss xmm0, dword [0x1400f82fc]
movss dword [0x14095ddd8], xmm0
mov byte [0x14095f89d], 1
mov byte [0x14095f89c], 1
jmp 0x1400861ee
movzx eax, byte [0x14095f89c]
test eax, eax
je 0x1400861ee
cvtsi2ss xmm0, dword [0x140146008]
addss xmm0, dword [0x1400f82fc]
movss dword [0x14095dddc], xmm0
mov byte [0x14095f89e], 1
mov byte [0x14095f89c], 0
mov byte [0x14095f89d], 0
movzx eax, byte [0x14095f89d]
test eax, eax
je 0x140086250
cvtsi2ss xmm0, dword [0x140146008]
comiss xmm0, dword [0x14095ddd8]
jbe 0x140086249
cvtsi2ss xmm0, dword [0x140146008]
subss xmm0, dword [0x1400f99b0]
cvttss2si eax, xmm0
mov dword [0x140146008], eax
cvtsi2ss xmm0, dword [0x140146008]
movss xmm1, dword [0x14095ddd8]
comiss xmm1, xmm0
jbe 0x140086247
cvttss2si eax, dword [0x14095ddd8]
mov dword [0x140146008], eax
jmp 0x140086250
mov byte [0x14095f89d], 0
movzx eax, byte [0x14095f89e]
test eax, eax
je 0x1400862b2
cvtsi2ss xmm0, dword [0x140146008]
movss xmm1, dword [0x14095dddc]
comiss xmm1, xmm0
jbe 0x1400862ab
cvtsi2ss xmm0, dword [0x140146008]
addss xmm0, dword [0x1400f99b0]
cvttss2si eax, xmm0
mov dword [0x140146008], eax
cvtsi2ss xmm0, dword [0x140146008]
comiss xmm0, dword [0x14095dddc]
jbe 0x1400862a9
cvttss2si eax, dword [0x14095dddc]
mov dword [0x140146008], eax
jmp 0x1400862b2
mov byte [0x14095f89e], 0
movzx eax, byte [0x14095dda1]
test eax, eax
je 0x1400862d6
mov ecx, dword [0x14095ca38]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
test eax, eax
je 0x1400862d6
call fcn.140001eb0
nop
jmp 0x1400862dd
mov byte [0x14095ebc8], 0
movzx eax, byte [0x14095f893]
test eax, eax
je 0x1400862fb
mov ecx, dword [0x14095ca38]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
test eax, eax
je 0x1400862fb
jmp 0x140086302
mov byte [0x14095ebc8], 0
movzx eax, byte [0x14095f88c]
test eax, eax
je 0x1400864a9
call fcn.1400252e0
mov qword [rsp + 0x220], rax
mov eax, dword [0x14095dda4]
cdq
mov ecx, 5
idiv ecx
cvtsi2ss xmm0, eax
movss dword [rsp + 0xe8], xmm0
mov dword [rsp + 0x20], 0xff
mov r9d, dword [0x14095ddbc]
mov r8d, dword [0x14095ddc4]
mov edx, dword [0x14095ddc0]
lea rcx, [rsp + 0x400]
call fcn.140003d80
mov rcx, rax
call fcn.1400044c0
mov dword [rsp + 0xec], eax
cvtsi2ss xmm0, dword [0x140146008]
movss dword [rsp + 0xf0], xmm0
cvtsi2ss xmm0, dword [0x14095f8d8]
divss xmm0, dword [0x1400f82a8]
cvtsi2ss xmm1, dword [0x14095f8dc]
divss xmm1, dword [0x1400f82a8]
movaps xmm2, xmm0
lea rcx, [rsp + 0x320]
call fcn.140003e20
mov qword [rsp + 0x218], rax
movss xmm0, dword [rsp + 0xe8]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 0x64
mov r9d, dword [rsp + 0xec]
movss xmm2, dword [rsp + 0xf0]
mov rdx, qword [rsp + 0x218]
mov rcx, qword [rsp + 0x220]
call fcn.1400353a0
nop
call fcn.1400252e0
mov qword [rsp + 0x230], rax
mov dword [rsp + 0x20], WSAStartup
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x420]
call fcn.140003d80
mov rcx, rax
call fcn.1400044c0
mov dword [rsp + 0xf4], eax
cvtsi2ss xmm0, dword [0x140146008]
movss dword [rsp + 0xf8], xmm0
cvtsi2ss xmm0, dword [0x14095f8d8]
divss xmm0, dword [0x1400f82a8]
cvtsi2ss xmm1, dword [0x14095f8dc]
divss xmm1, dword [0x1400f82a8]
movaps xmm2, xmm0
lea rcx, [rsp + 0x328]
call fcn.140003e20
mov qword [rsp + 0x228], rax
mov dword [rsp + 0x20], 0x64
mov r9d, dword [rsp + 0xf4]
movss xmm2, dword [rsp + 0xf8]
mov rdx, qword [rsp + 0x228]
mov rcx, qword [rsp + 0x230]
call fcn.140035450
nop
movzx eax, byte [0x14095f88d]
test eax, eax
je 0x14008692e
movzx eax, byte [0x14095f896]
test eax, eax
je 0x1400867e2
movss xmm0, dword [0x140126fb8]
movss dword [rsp + 0xfc], xmm0
movss xmm0, dword [0x14095f8a0]
addss xmm0, dword [rsp + 0xfc]
movss dword [0x14095f8a0], xmm0
movss xmm0, dword [0x14095f8a0]
comiss xmm0, dword [0x1400f8298]
jbe 0x14008651a
movss xmm0, dword [0x14095f8a0]
subss xmm0, dword [0x1400f8298]
movss dword [0x14095f8a0], xmm0
movss xmm0, dword [0x14095f8a0]
mulss xmm0, dword [0x140104d80]
call fcn.140088e80
mulss xmm0, dword [0x1400f83cc]
addss xmm0, dword [0x1400f83cc]
movss dword [rsp + 0x108], xmm0
movss xmm0, dword [0x14095f8a0]
addss xmm0, dword [0x140126fbc]
mulss xmm0, dword [0x140104d80]
call fcn.140088e80
mulss xmm0, dword [0x1400f83cc]
addss xmm0, dword [0x1400f83cc]
movss dword [rsp + 0x10c], xmm0
movss xmm0, dword [0x14095f8a0]
addss xmm0, dword [0x140126fc0]
mulss xmm0, dword [0x140104d80]
call fcn.140088e80
mulss xmm0, dword [0x1400f83cc]
addss xmm0, dword [0x1400f83cc]
movss dword [rsp + 0x110], xmm0
call fcn.1400252e0
mov qword [rsp + 0x240], rax
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x410]
call fcn.140003d80
mov rcx, rax
call fcn.1400044c0
mov dword [rsp + 0x100], eax
cvtsi2ss xmm0, dword [0x140146008]
movss dword [rsp + 0x104], xmm0
cvtsi2ss xmm0, dword [0x14095f8d8]
divss xmm0, dword [0x1400f82a8]
cvtsi2ss xmm1, dword [0x14095f8dc]
divss xmm1, dword [0x1400f82a8]
movaps xmm2, xmm0
lea rcx, [rsp + 0x330]
call fcn.140003e20
mov qword [rsp + 0x238], rax
movss xmm0, dword [0x1400f82a8]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 0x64
mov r9d, dword [rsp + 0x100]
movss xmm2, dword [rsp + 0x104]
mov rdx, qword [rsp + 0x238]
mov rcx, qword [rsp + 0x240]
call fcn.1400353a0
nop
call fcn.1400252e0
mov qword [rsp + 0x258], rax
cvtsi2ss xmm0, dword [0x14095ddb8]
movss dword [rsp + 0x114], xmm0
cvtsi2ss xmm0, dword [0x140146008]
cvtsi2ss xmm1, dword [0x14095f8d8]
divss xmm1, dword [0x1400f82a8]
addss xmm1, xmm0
movaps xmm0, xmm1
cvtsi2ss xmm1, dword [0x140146008]
cvtsi2ss xmm2, dword [0x14095f8dc]
divss xmm2, dword [0x1400f82a8]
addss xmm2, xmm1
movaps xmm1, xmm2
movaps xmm2, xmm0
lea rcx, [rsp + 0x338]
call fcn.140003e20
mov qword [rsp + 0x248], rax
cvtsi2ss xmm0, dword [0x140146008]
cvtsi2ss xmm1, dword [0x14095f8d8]
divss xmm1, dword [0x1400f82a8]
subss xmm1, xmm0
movaps xmm0, xmm1
cvtsi2sd xmm1, dword [0x140146008]
cvtsi2sd xmm2, dword [0x14095f8dc]
divsd xmm2, qword [0x1400f80b0]
subsd xmm2, xmm1
movaps xmm1, xmm2
cvtsd2ss xmm1, xmm1
movaps xmm2, xmm0
lea rcx, [rsp + 0x340]
call fcn.140003e20
mov qword [rsp + 0x250], rax
movss xmm0, dword [rsp + 0x108]
mulss xmm0, dword [0x1400f8308]
cvttss2si rax, xmm0
movss xmm0, dword [rsp + 0x10c]
mulss xmm0, dword [0x1400f8308]
cvttss2si rcx, xmm0
shl ecx, 8
movss xmm0, dword [rsp + 0x110]
mulss xmm0, dword [0x1400f8308]
cvttss2si rdx, xmm0
shl edx, 0x10
or edx, 0xff000000
or edx, ecx
mov ecx, edx
or ecx, eax
mov eax, ecx
movss xmm0, dword [0x1400f8298]
movss dword [rsp + 0x30], xmm0
mov dword [rsp + 0x28], reloc.WS2_32.dll_ntohs
movss xmm0, dword [rsp + 0x114]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
mov r8, qword [rsp + 0x248]
mov rdx, qword [rsp + 0x250]
mov rcx, qword [rsp + 0x258]
call fcn.1400381b0
nop
jmp 0x140086924
call fcn.1400252e0
mov qword [rsp + 0x138], rax
cvtsi2ss xmm0, dword [0x14095ddb8]
movss dword [rsp + 0x118], xmm0
mov eax, dword [0x14095ddc4]
shl eax, 8
mov ecx, dword [0x14095ddbc]
shl ecx, 0x10
or ecx, 0xff000000
or ecx, eax
mov eax, ecx
or eax, dword [0x14095ddc0]
mov dword [rsp + 0x11c], eax
cvtsi2ss xmm0, dword [0x140146008]
cvtsi2ss xmm1, dword [0x14095f8d8]
divss xmm1, dword [0x1400f82a8]
addss xmm1, xmm0
movaps xmm0, xmm1
cvtsi2ss xmm1, dword [0x140146008]
cvtsi2ss xmm2, dword [0x14095f8dc]
divss xmm2, dword [0x1400f82a8]
addss xmm2, xmm1
movaps xmm1, xmm2
movaps xmm2, xmm0
lea rcx, [rsp + 0x2b8]
call fcn.140003e20
mov qword [rsp + 0x260], rax
cvtsi2ss xmm0, dword [0x140146008]
cvtsi2ss xmm1, dword [0x14095f8d8]
divss xmm1, dword [0x1400f82a8]
subss xmm1, xmm0
movaps xmm0, xmm1
cvtsi2sd xmm1, dword [0x140146008]
cvtsi2sd xmm2, dword [0x14095f8dc]
divsd xmm2, qword [0x1400f80b0]
subsd xmm2, xmm1
movaps xmm1, xmm2
cvtsd2ss xmm1, xmm1
movaps xmm2, xmm0
lea rcx, [rsp + 0x2e8]
call fcn.140003e20
mov qword [rsp + 0x268], rax
movss xmm0, dword [0x1400f8298]
movss dword [rsp + 0x30], xmm0
mov dword [rsp + 0x28], reloc.WS2_32.dll_ntohs
movss xmm0, dword [rsp + 0x118]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x11c]
mov r8, qword [rsp + 0x260]
mov rdx, qword [rsp + 0x268]
mov rcx, qword [rsp + 0x138]
call fcn.1400381b0
nop
mov byte [rsp + 0x60], 0
mov byte [rsp + 0x61], 0
mov rax, qword [0x14095eae0]
add rax, 0x338
mov rcx, rax
call fcn.140001c40
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x130]
add rax, 0xa68
mov rcx, rax
call fcn.140001c40
mov qword [rsp + 0x2b0], rax
mov ecx, 0xda0
call fcn.140001c40
mov qword [rsp + 0x2a8], rax
movzx eax, byte [0x14095f895]
test eax, eax
je 0x140086996
mov edx, 0xffffff9c
mov ecx, 0x399
call fcn.1400734d0
nop
movzx eax, byte [0x14095f892]
test eax, eax
je 0x1400869ee
mov eax, dword [0x14095ebbc]
mov dword [0x140146010], eax
mov rax, qword [0x14095eae0]
add rax, 0x348
mov rcx, rax
call fcn.140001c40
mov qword [rsp + 0x140], rax
cvtsi2ss xmm0, dword [0x140146010]
mov rax, qword [rsp + 0x140]
add rax, 0x2a8
movaps xmm1, xmm0
mov rcx, rax
call fcn.140003b90
nop
jmp 0x140086a2f
mov dword [0x140146010], 0
mov rax, qword [0x14095eae0]
add rax, 0x348
mov rcx, rax
call fcn.140001c40
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x148]
add rax, 0x2a8
xorps xmm1, xmm1
mov rcx, rax
call fcn.140003b90
nop
movzx eax, byte [0x14095f894]
test eax, eax
je 0x140086bac
mov rax, qword [rsp + 0x130]
add rax, 0x318
mov rcx, rax
call fcn.140001c40
mov qword [rsp + 0x128], rax
mov eax, 0x264
mov eax, eax
mov ecx, dword [0x14095fb70]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov eax, dword [rax + rcx]
cmp dword [0x14095f8c0], eax
jle 0x140086acd
lea rcx, [0x14095f8c0]
call fcn.1400f0ddc
cmp dword [0x14095f8c0], 0xffffffff
jne 0x140086acd
mov rax, qword [rsp + 0x128]
add rax, 0x138
mov rdx, rax
lea rcx, [0x14095f8a8]
call fcn.140003a30
lea rcx, [0x1400f5f80]
call fcn.1400f0b9c
nop
lea rcx, [0x14095f8c0]
call fcn.1400f0d70
nop
cvtsi2ss xmm0, dword [0x14095ddb4]
movss xmm1, dword [0x14095f8c4]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [0x14095f8c4], xmm0
movss xmm0, dword [0x14095f8c4]
comiss xmm0, dword [0x1400f8470]
jb 0x140086b15
movss xmm0, dword [0x14095f8c4]
subss xmm0, dword [0x1400f8470]
movss dword [0x14095f8c4], xmm0
cvtss2sd xmm0, dword [0x14095f8c4]
movsd xmm3, qword [0x1400f82a0]
movaps xmm2, xmm0
xorps xmm1, xmm1
lea rcx, [rsp + 0x398]
call fcn.140001db0
mov qword [rsp + 0x150], rax
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x158], rax
lea rax, [rsp + 0x360]
mov rdi, rax
mov rsi, qword [rsp + 0x158]
mov ecx, Ordinal_26
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x128]
add rax, 0x138
lea r8, [rsp + 0x360]
mov rdx, rax
lea rcx, [rsp + 0x380]
call fcn.140001c90
lea rcx, [rsp + 0x380]
call fcn.140001ea0
nop
lea rcx, [rsp + 0x398]
call fcn.140001ea0
nop
movzx eax, byte [0x14095dda2]
test eax, eax
je 0x140086bc5
mov byte [0x14095f88c], 0
mov byte [0x14095f88d], 0
movzx eax, byte [0x14095f88c]
test eax, eax
je 0x140086bde
mov byte [0x14095f88d], 0
mov byte [0x14095dda2], 0
movzx eax, byte [0x14095f88d]
test eax, eax
je 0x140086bf7
mov byte [0x14095dda2], 0
mov byte [0x14095f88c], 0
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
test eax, eax
je 0x140086c21
movzx eax, byte [0x14095dda1]
test eax, eax
je 0x140086c21
mov byte [0x14095ebc8], 1
call fcn.140001eb0
nop
jmp 0x140086c28
mov byte [0x14095ebc8], 0
call fcn.140004750
nop
mov rcx, qword [rsp + 0x500]
xor rcx, rsp
call fcn.1400f0cc0
add rsp, 0x518
pop rdi
pop rsi
ret