Function at 0x14003bf4c
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x2c8]
sub rsp, 0x3a0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
mov rax, qword [0x140093040]
xor rax, rsp
mov qword [rbp + 0x218], rax
xor ebx, ebx
mov rsi, rcx
mov qword [rcx], rbx
mov r12b, dl
mov dword [rcx + 8], ebx
or r15d, 0xffffffff
lea ecx, [rbx + 1]
call qword [sym.imp.USER32.dll_GetSystemMetrics]
xor ecx, ecx
movd xmm12, eax
cvtdq2ps xmm12, xmm12
mulss xmm12, dword [0x14008cf00]
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov rcx, qword [0x140093ff0]
movabs rdi, 0x6806806806806807
sub rcx, qword [0x140093fe8]
movss xmm10, dword [0x14008d114]
movss xmm11, dword [0x14008cfd0]
movd xmm13, eax
mov rax, rdi
imul rcx
cvtdq2ps xmm13, xmm13
sar rdx, 7
mulss xmm13, dword [0x14008cf00]
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x14003cd88
cmp byte [0x140093d2c], bl
je 0x14003c09b
movabs rax, 0x2e0000000000005
cmp qword [0x1400934c0], rax
jne 0x14003c09b
mov rcx, qword [0x140093490]
lea edx, [rbx + 0xb]
add rcx, 0x40
mov r8d, 0x2a5
call fcn.14003a3e0
cmp byte [0x140093525], bl
mulss xmm0, dword [0x14008d0a8]
addss xmm0, dword [0x14008d078]
movss dword [0x1400930cc], xmm0
je 0x14003c09b
mov dword [0x1400930cc], 0x42dc0000
mov rcx, qword [0x140093ff0]
mov rax, rdi
sub rcx, qword [0x140093fe8]
xorps xmm9, xmm9
and dword [rsp + 0x20], ebx
mov r13d, ebx
and dword [rsp + 0x24], ebx
and dword [rsp + 0x30], ebx
and dword [rsp + 0x34], ebx
and dword [rsp + 0x38], ebx
imul rcx
movss dword [rsp + 0x28], xmm9
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x14003cd88
mov r14d, dword [rsp + 0x38]
mov rdi, rbx
movsd xmm8, qword [rsp + 0x30]
cmp byte [0x140093d40], bl
mov rcx, qword [0x140093fe8]
je 0x14003c51e
cmp byte [rcx + rdi + 0xd0], bl
je 0x14003c34b
cmp byte [rcx + rdi + 0xd2], bl
jne 0x14003c34b
cmp byte [rcx + rdi + 0xd1], bl
je 0x14003c34b
mov rax, qword [0x140093450]
cmp qword [rcx + rdi], rax
je 0x14003c34b
mov eax, dword [0x140093100]
cmp eax, 1
jne 0x14003c15c
movsd xmm0, qword [rcx + rdi + 0xe7]
mov eax, dword [rcx + rdi + 0xef]
jmp 0x14003c188
cmp eax, 2
jne 0x14003c173
movsd xmm0, qword [rcx + rdi + 0x117]
mov eax, dword [rcx + rdi + 0x11f]
jmp 0x14003c188
cmp eax, 3
jne 0x14003c1a8
movsd xmm0, qword [rcx + rdi + 0x123]
mov eax, dword [rcx + rdi + 0x12b]
movsd qword [rsp + 0x20], xmm0
movaps xmm8, xmm0
mov dword [rsp + 0x28], eax
mov r14d, eax
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x38], eax
movd xmm9, eax
movsd xmm6, qword [rcx + rdi + 0xf3]
mov ebx, dword [rcx + rdi + 0xfb]
test r12b, r12b
je 0x14003c21e
lea rdx, [rbp + 0x150]
call fcn.140034218
lea rdx, [rbp + 0x15c]
call fcn.140034218
lea rdx, [rbp + 0x168]
call fcn.140034218
lea rdx, [rbp - 0x40]
movsd qword [rbp - 0x40], xmm6
lea rcx, [rsp + 0x20]
mov dword [rbp - 0x38], ebx
call fcn.14003b484
movsd xmm0, qword [rsp + 0x20]
lea r8, [rbp - 0x30]
mov ebx, dword [rsp + 0x28]
lea rdx, [rsp + 0x50]
movsd qword [rbp - 0x30], xmm0
mov dword [rbp - 0x28], ebx
call fcn.1400343d8
movd xmm9, ebx
jmp 0x14003c235
lea r8, [rbp - 0x50]
movsd qword [rbp - 0x50], xmm8
lea rdx, [rbp - 0x80]
mov dword [rbp - 0x48], r14d
call fcn.1400343d8
movss xmm0, dword [rax]
movaps xmm1, xmm11
movss xmm7, dword [rax + 4]
subss xmm0, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
subss xmm7, xmm12
movaps xmm6, xmm0
movaps xmm1, xmm11
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm2, xmm0
comiss xmm10, xmm2
jbe 0x14003c2ae
movss xmm1, dword [0x1400930d8]
comiss xmm1, xmm2
jb 0x14003c2ae
xor ebx, ebx
cmp byte [0x140093d2b], bl
jne 0x14003c2bc
test r12b, r12b
lea rax, [rsp + 0x20]
lea rcx, [rsp + 0x30]
movaps xmm10, xmm2
cmove rax, rcx
movsd xmm0, qword [rax]
movsd qword [rsi], xmm0
jmp 0x14003c342
xor ebx, ebx
cmp byte [0x140093d2b], bl
je 0x14003c34b
lea rdx, [rbp + 0x84]
call fcn.140034218
lea rdx, [rbp + 0x90]
movss xmm7, dword [rax + 8]
call fcn.140034218
lea rdx, [rbp + 0x9c]
movss xmm6, dword [rax + 4]
call fcn.140034218
movss xmm0, dword [rsp + 0x20]
movaps xmm2, xmm9
movss xmm1, dword [rsp + 0x24]
subss xmm2, xmm7
subss xmm1, xmm6
subss xmm0, dword [rax]
mulss xmm2, xmm2
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
addss xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm10, xmm0
jbe 0x14003c34b
test r12b, r12b
lea rax, [rsp + 0x20]
lea rcx, [rsp + 0x30]
movaps xmm10, xmm0
cmove rax, rcx
movsd xmm1, qword [rax]
movsd qword [rsi], xmm1
mov eax, dword [rax + 8]
mov r15d, r13d
mov dword [rsi + 8], eax
mov rcx, qword [0x140093fe8]
cmp byte [rcx + rdi + 0xd0], bl
je 0x14003c8fd
cmp byte [rcx + rdi + 0xd2], bl
je 0x14003c8fd
cmp byte [rcx + rdi + 0xd1], bl
je 0x14003c8fd
mov eax, dword [0x140093100]
cmp eax, 1
jne 0x14003c396
movsd xmm0, qword [rcx + rdi + 0xe7]
mov eax, dword [rcx + rdi + 0xef]
jmp 0x14003c3c2
cmp eax, 2
jne 0x14003c3ad
movsd xmm0, qword [rcx + rdi + 0x117]
mov eax, dword [rcx + rdi + 0x11f]
jmp 0x14003c3c2
cmp eax, 3
jne 0x14003c3e2
movsd xmm0, qword [rcx + rdi + 0x123]
mov eax, dword [rcx + rdi + 0x12b]
movsd qword [rsp + 0x20], xmm0
movaps xmm8, xmm0
mov dword [rsp + 0x28], eax
mov r14d, eax
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x38], eax
movd xmm9, eax
movsd xmm6, qword [rcx + rdi + 0xf3]
mov ebx, dword [rcx + rdi + 0xfb]
test r12b, r12b
je 0x14003c457
lea rdx, [rbp + 0xa8]
call fcn.140034218
lea rdx, [rbp + 0xb4]
call fcn.140034218
lea rdx, [rbp + 0xc0]
call fcn.140034218
lea rdx, [rbp - 0x20]
movsd qword [rbp - 0x20], xmm6
lea rcx, [rsp + 0x20]
mov dword [rbp - 0x18], ebx
call fcn.14003b484
movsd xmm0, qword [rsp + 0x20]
lea r8, [rbp - 0x10]
mov ebx, dword [rsp + 0x28]
lea rdx, [rbp + 0x5c]
movsd qword [rbp - 0x10], xmm0
mov dword [rbp - 8], ebx
call fcn.1400343d8
movd xmm9, ebx
jmp 0x14003c46e
lea r8, [rbp]
movsd qword [rbp], xmm8
lea rdx, [rbp + 0x64]
mov dword [rbp + 8], r14d
call fcn.1400343d8
movss xmm0, dword [rax]
movaps xmm1, xmm11
movss xmm7, dword [rax + 4]
subss xmm0, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
subss xmm7, xmm12
movaps xmm6, xmm0
movaps xmm1, xmm11
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm2, xmm0
comiss xmm10, xmm2
jbe 0x14003c4e7
movss xmm1, dword [0x1400930d8]
comiss xmm1, xmm2
jb 0x14003c4e7
xor ebx, ebx
cmp byte [0x140093d2b], bl
jne 0x14003c4f5
test r12b, r12b
lea rax, [rsp + 0x20]
lea rcx, [rsp + 0x30]
movaps xmm10, xmm2
cmove rax, rcx
movsd xmm0, qword [rax]
movsd qword [rsi], xmm0
jmp 0x14003c8f4
xor ebx, ebx
cmp byte [0x140093d2b], bl
je 0x14003c8fd
lea rdx, [rbp + 0xcc]
call fcn.140034218
lea rdx, [rbp + 0xd8]
movss xmm7, dword [rax + 8]
call fcn.140034218
lea rdx, [rbp + 0xe4]
jmp 0x14003c892
cmp byte [0x140093d24], bl
jne 0x14003c6d9
cmp byte [rcx + rdi + 0xd0], bl
je 0x14003c8fd
cmp byte [rcx + rdi + 0xd2], bl
je 0x14003c8fd
cmp byte [rcx + rdi + 0xd1], bl
je 0x14003c8fd
mov eax, dword [0x140093100]
cmp eax, 1
jne 0x14003c56e
movsd xmm0, qword [rcx + rdi + 0xe7]
mov eax, dword [rcx + rdi + 0xef]
jmp 0x14003c59a
cmp eax, 2
jne 0x14003c585
movsd xmm0, qword [rcx + rdi + 0x117]
mov eax, dword [rcx + rdi + 0x11f]
jmp 0x14003c59a
cmp eax, 3
jne 0x14003c5ba
movsd xmm0, qword [rcx + rdi + 0x123]
mov eax, dword [rcx + rdi + 0x12b]
movsd qword [rsp + 0x20], xmm0
movaps xmm8, xmm0
mov dword [rsp + 0x28], eax
mov r14d, eax
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x38], eax
movd xmm9, eax
movsd xmm6, qword [rcx + rdi + 0xf3]
mov ebx, dword [rcx + rdi + 0xfb]
test r12b, r12b
je 0x14003c62f
lea rdx, [rbp + 0xf0]
call fcn.140034218
lea rdx, [rbp + 0xfc]
call fcn.140034218
lea rdx, [rbp + 0x108]
call fcn.140034218
lea rdx, [rbp + 0x10]
movsd qword [rbp + 0x10], xmm6
lea rcx, [rsp + 0x20]
mov dword [rbp + 0x18], ebx
call fcn.14003b484
movsd xmm0, qword [rsp + 0x20]
lea r8, [rbp + 0x20]
mov ebx, dword [rsp + 0x28]
lea rdx, [rbp + 0x6c]
movsd qword [rbp + 0x20], xmm0
mov dword [rbp + 0x28], ebx
call fcn.1400343d8
movd xmm9, ebx
jmp 0x14003c646
lea r8, [rbp + 0x30]
movsd qword [rbp + 0x30], xmm8
lea rdx, [rbp + 0x74]
mov dword [rbp + 0x38], r14d
call fcn.1400343d8
movss xmm0, dword [rax]
movaps xmm1, xmm11
movss xmm7, dword [rax + 4]
subss xmm0, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
subss xmm7, xmm12
movaps xmm6, xmm0
movaps xmm1, xmm11
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm2, xmm0
comiss xmm10, xmm2
jbe 0x14003c6a2
movss xmm1, dword [0x1400930d8]
comiss xmm1, xmm2
jb 0x14003c6a2
xor ebx, ebx
cmp byte [0x140093d2b], bl
jne 0x14003c6b0
jmp 0x14003c4c5
xor ebx, ebx
cmp byte [0x140093d2b], bl
je 0x14003c8fd
lea rdx, [rbp + 0x114]
call fcn.140034218
lea rdx, [rbp + 0x120]
movss xmm7, dword [rax + 8]
call fcn.140034218
lea rdx, [rbp + 0x12c]
jmp 0x14003c892
cmp byte [rcx + rdi + 0xd0], bl
je 0x14003c8fd
cmp byte [rcx + rdi + 0xd2], bl
jne 0x14003c8fd
cmp byte [rcx + rdi + 0xd1], bl
je 0x14003c8fd
mov rax, qword [0x140093450]
cmp qword [rcx + rdi], rax
je 0x14003c8fd
mov eax, dword [0x140093100]
cmp eax, 1
jne 0x14003c72e
movsd xmm0, qword [rcx + rdi + 0xe7]
mov eax, dword [rcx + rdi + 0xef]
jmp 0x14003c75a
cmp eax, 2
jne 0x14003c745
movsd xmm0, qword [rcx + rdi + 0x117]
mov eax, dword [rcx + rdi + 0x11f]
jmp 0x14003c75a
cmp eax, 3
jne 0x14003c77a
movsd xmm0, qword [rcx + rdi + 0x123]
mov eax, dword [rcx + rdi + 0x12b]
movsd qword [rsp + 0x20], xmm0
movaps xmm8, xmm0
mov dword [rsp + 0x28], eax
mov r14d, eax
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x38], eax
movd xmm9, eax
movsd xmm6, qword [rcx + rdi + 0xf3]
mov ebx, dword [rcx + rdi + 0xfb]
test r12b, r12b
je 0x14003c7f2
lea rdx, [rbp + 0x138]
call fcn.140034218
lea rdx, [rbp + 0x144]
call fcn.140034218
lea rdx, [rbp + 0x1d0]
call fcn.140034218
lea rdx, [rbp + 0x40]
movsd qword [rbp + 0x40], xmm6
lea rcx, [rsp + 0x20]
mov dword [rbp + 0x48], ebx
call fcn.14003b484
movsd xmm0, qword [rsp + 0x20]
lea r8, [rsp + 0x70]
mov ebx, dword [rsp + 0x28]
lea rdx, [rbp + 0x7c]
movsd qword [rsp + 0x70], xmm0
mov dword [rsp + 0x78], ebx
call fcn.1400343d8
movd xmm9, ebx
jmp 0x14003c80c
lea r8, [rsp + 0x40]
movsd qword [rsp + 0x40], xmm8
lea rdx, [rbp - 0x78]
mov dword [rsp + 0x48], r14d
call fcn.1400343d8
movss xmm0, dword [rax]
movaps xmm1, xmm11
movss xmm7, dword [rax + 4]
subss xmm0, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
subss xmm7, xmm12
movaps xmm6, xmm0
movaps xmm1, xmm11
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm2, xmm0
comiss xmm10, xmm2
jbe 0x14003c868
movss xmm1, dword [0x1400930d8]
comiss xmm1, xmm2
jb 0x14003c868
xor ebx, ebx
cmp byte [0x140093d2b], bl
jne 0x14003c876
jmp 0x14003c4c5
xor ebx, ebx
cmp byte [0x140093d2b], bl
je 0x14003c8fd
lea rdx, [rbp + 0x50]
call fcn.140034218
lea rdx, [rbp - 0x70]
movss xmm7, dword [rax + 8]
call fcn.140034218
lea rdx, [rsp + 0x58]
movss xmm6, dword [rax + 4]
call fcn.140034218
movss xmm1, dword [rsp + 0x24]
movaps xmm2, xmm9
movss xmm0, dword [rsp + 0x20]
subss xmm1, xmm6
subss xmm2, xmm7
subss xmm0, dword [rax]
mulss xmm1, xmm1
mulss xmm0, xmm0
mulss xmm2, xmm2
addss xmm0, xmm1
addss xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm10, xmm0
jbe 0x14003c8fd
test r12b, r12b
lea rax, [rsp + 0x20]
lea rcx, [rsp + 0x30]
movaps xmm10, xmm0
cmove rax, rcx
movsd xmm1, qword [rax]
movsd qword [rsi], xmm1
mov eax, dword [rax + 8]
mov r15d, r13d
mov dword [rsi + 8], eax
mov rcx, qword [0x140093ff0]
inc r13d
mov r8, qword [0x140093fe8]
movabs rax, 0x6806806806806807
sub rcx, r8
add rdi, 0x13b
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, r13d
cmp rax, rdx
jb 0x14003c0f4
cmp r15d, 0xffffffff
je 0x14003cd88
movsxd rax, r15d
imul r14, rax, 0x13b
cmp byte [0x140093d1c], bl
mov dword [0x140093118], r15d
mov r15d, 4
movss xmm0, dword [r14 + r8 + 0xaa]
movss dword [0x140093d3c], xmm0
je 0x14003ccac
mov rax, qword [r14 + r8 + 0x70]
cmp rax, 0x16dd
je 0x14003ccac
cmp rax, 0x16ee
je 0x14003ccac
movabs rcx, 0xfd1ffffffffffcc9
add rcx, rax
cmp rcx, 0x2c
ja 0x14003c9c2
movabs rdx, 0x100800040025
bt rdx, rcx
jb 0x14003cad5
movabs rcx, 0x2e000000000016c
cmp rax, rcx
je 0x14003cad5
xorps xmm0, xmm0
mov rdi, rbx
movups xmmword [rbp + 0x1e8], xmm0
movups xmmword [rbp + 0x1f8], xmm0
movups xmmword [rbp + 0x208], xmm0
mov rbx, qword [0x140093fe8]
lea rdx, [rbp + 0x180]
add rbx, r14
mov rcx, rbx
call fcn.140036988
lea rdx, [rsp + 0x58]
mov rcx, rbx
mov r8d, dword [rax + rdi]
call fcn.140035878
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x78]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rsp + 0x40], xmm0
mov dword [rsp + 0x48], eax
call fcn.1400343d8
movaps xmm1, xmm11
movss xmm0, dword [rax]
movss xmm7, dword [rax + 4]
subss xmm0, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
subss xmm7, xmm12
movaps xmm6, xmm0
movaps xmm1, xmm11
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss dword [rbp + rdi + 0x1e8], xmm0
add rdi, r15
cmp rdi, 0x30
jl 0x14003c9f0
xor r8d, r8d
lea rdx, [rbp + 0x218]
lea rcx, [rbp + 0x1e8]
call fcn.140053cf0
mov rdi, qword [0x140093fe8]
lea rdx, [rbp + 0x180]
add rdi, r14
mov rbx, rax
mov rcx, rdi
call fcn.140036988
lea rcx, [rbp + 0x1e8]
sub rbx, rcx
mov rcx, rdi
sar rbx, 2
movsxd r8, ebx
mov r8d, dword [rax + r8*4]
jmp 0x14003cc0c
movdqa xmm1, xmmword [0x14008d220]
xorps xmm0, xmm0
xor eax, eax
mov dword [rbp - 0x60], 0x36
movups xmmword [rbp + 0x1d0], xmm0
mov dword [rbp + 0x1e0], eax
movdqu xmmword [rbp - 0x70], xmm1
mov rcx, qword [0x140093fe8]
lea rdx, [rsp + 0x58]
mov r8d, dword [rbp + rbx - 0x70]
add rcx, r14
call fcn.140035878
mov rcx, qword [0x140093fe8]
movsd xmm0, qword [rax]
movsd qword [rsp + 0x40], xmm0
movss xmm0, dword [rcx + r14 + 0x10b]
ucomiss xmm0, dword [rsp + 0x40]
jp 0x14003cb6a
jne 0x14003cb6a
movss xmm0, dword [rcx + r14 + 0x10f]
ucomiss xmm0, dword [rsp + 0x44]
jp 0x14003cb6a
jne 0x14003cb6a
movss xmm1, dword [rcx + r14 + 0x113]
ucomiss xmm1, dword [rax + 8]
jp 0x14003cb6a
jne 0x14003cb6a
mov dword [rbp + rbx + 0x1d0], 0x47c35000
jmp 0x14003cbc9
movsd xmm0, qword [rax]
lea r8, [rsp + 0x70]
mov eax, dword [rax + 8]
lea rdx, [rbp - 0x78]
movsd qword [rsp + 0x70], xmm0
mov dword [rsp + 0x78], eax
call fcn.1400343d8
movaps xmm1, xmm11
movss xmm0, dword [rax]
movss xmm7, dword [rax + 4]
subss xmm0, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
subss xmm7, xmm12
movaps xmm6, xmm0
movaps xmm1, xmm11
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss dword [rbp + rbx + 0x1d0], xmm0
add rbx, r15
cmp rbx, 0x14
jl 0x14003cafb
xor r8d, r8d
lea rdx, [rbp + 0x1e4]
lea rcx, [rbp + 0x1d0]
call fcn.140053cf0
mov rcx, qword [0x140093fe8]
lea rdx, [rbp + 0x1d0]
add rcx, r14
sub rax, rdx
sar rax, 2
movsxd r8, eax
mov r8d, dword [rbp + r8*4 - 0x70]
lea rdx, [rsp + 0x58]
call fcn.140035878
xor ebx, ebx
movsd xmm2, qword [rax]
mov ecx, dword [rax + 8]
movsd qword [rsp + 0x30], xmm2
movss xmm1, dword [rsp + 0x34]
movss xmm0, dword [rsp + 0x30]
movsd qword [rsi], xmm2
movss dword [rsp + 0x24], xmm1
movss dword [rsp + 0x20], xmm0
mov dword [rsi + 8], ecx
mov dword [rsp + 0x28], ecx
test r12b, r12b
je 0x14003ccac
lea rdx, [rsp + 0x58]
call fcn.140034218
lea rdx, [rbp - 0x70]
call fcn.140034218
lea rdx, [rbp + 0x50]
call fcn.140034218
mov rax, qword [0x140093fe8]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x20]
movsd xmm0, qword [rax + r14 + 0xf3]
mov eax, dword [rax + r14 + 0xfb]
movsd qword [rsp + 0x40], xmm0
mov dword [rsp + 0x48], eax
call fcn.14003b484
movsd xmm0, qword [rsp + 0x20]
mov eax, dword [rsp + 0x28]
movsd qword [rsi], xmm0
mov dword [rsi + 8], eax
mov ecx, dword [0x1400930dc]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14003cd88
cmp byte [0x140093cdc], bl
je 0x14003cd88
movss xmm1, dword [0x14008d0c8]
lea r8, [rbp - 0x80]
movss xmm0, dword [0x14008bc6c]
mov r9, r15
mulss xmm0, xmm1
cvttss2si rcx, xmm0
movss xmm0, dword [0x14008bc68]
shl ecx, 8
mulss xmm0, xmm1
cvttss2si rax, xmm0
movss xmm0, dword [0x14008bc64]
or ecx, eax
mulss xmm0, xmm1
shl ecx, 8
cvttss2si rax, xmm0
movss xmm0, dword [0x14008bc60]
or ecx, eax
mulss xmm0, xmm1
shl ecx, 8
cvttss2si rax, xmm0
or ecx, eax
mov rax, qword [0x140093fe8]
mov dword [0x1400930ec], ecx
mov dword [rbp - 0x80], ecx
mov rcx, qword [0x140093d78]
mov rdx, qword [rax + r14 + 0x38]
add rdx, 0x144
call fcn.140052a38
mov eax, dword [0x1400930ec]
lea r8, [rsp + 0x50]
mov rcx, qword [0x140093d78]
mov r9, r15
mov dword [rsp + 0x50], eax
mov rax, qword [0x140093fe8]
mov rdx, qword [rax + r14 + 0x38]
add rdx, 0x130
call fcn.140052a38
cmp byte [0x140093d0c], bl
je 0x14003ce7c
movabs rax, 0x2e0000000000200
cmp qword [0x1400934c0], rax
jne 0x14003ce7c
mov rcx, qword [0x140093fc8]
mov rdx, qword [0x140093fd0]
jmp 0x14003cddc
movsd xmm0, qword [rcx + 0x10]
movabs r9, 0x400000000002533
mov r8d, dword [rcx + 0x18]
movsd qword [rbp - 0x60], xmm0
cmp qword [rcx], r9
je 0x14003cde6
add rcx, 0x1c
cmp rcx, rdx
jne 0x14003cdbb
jmp 0x14003ce7c
movss xmm7, dword [rbp - 0x60]
lea rdx, [rsp + 0x50]
movss xmm8, dword [rbp - 0x5c]
movaps xmm0, xmm7
movd xmm9, r8d
lea r8, [rsp + 0x40]
unpcklps xmm0, xmm8
movsd qword [rsp + 0x40], xmm0
movss dword [rsp + 0x48], xmm9
call fcn.1400343d8
movss xmm0, dword [rsp + 0x54]
movaps xmm1, xmm11
subss xmm0, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm6, xmm0
movaps xmm1, xmm11
movss xmm0, dword [rsp + 0x50]
subss xmm0, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm10, xmm0
jbe 0x14003ce63
movss xmm1, dword [0x14008d0f0]
comiss xmm1, xmm0
jae 0x14003ce6b
cmp byte [0x140093d2b], bl
je 0x14003ce7c
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movsd qword [rsi], xmm0
movss dword [rsi + 8], xmm9
mov rax, rsi
mov rcx, qword [rbp + 0x218]
xor rcx, rsp
call fcn.140052c20
lea r11, [rsp + 0x3a0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret