Function at 0x180037460
Capabilities:
Log keystrokes via polling

Disassembly:
test dl, dl
je 0x180037b35
sub rsp, 0x1f8
mov rax, qword [0x1801d08c0]
xor rax, rsp
mov qword [rsp + 0x120], rax
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180037b1e
mov qword [rsp + 0x200], rbx
mov qword [rsp + 0x208], rbp
mov qword [rsp + 0x210], rsi
mov qword [rsp + 0x1f0], rdi
mov dword [rsp + 0xc0], 0xa
call fcn.1800262a0
xor ebp, ebp
movabs rdi, 0xd80958fc74e988a6
mov rcx, rdi
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.180026140
call fcn.1800262a0
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.1800262a0
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.1800262a0
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.1800262a0
lea r8, [rsp + 0xc0]
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov qword [rcx + rdx*8], r8
inc dword [rax + 8]
call fcn.1800262a0
movabs rcx, 0x23f8f5fc7e8c4a6b
mov r8d, dword [rax + 8]
mov rdx, qword [rax + 0x10]
mov dword [rdx + r8*8], 0xffffffff
inc dword [rax + 8]
call fcn.180026140
call fcn.1800262a0
mov dword [rsp + 0x60], 0xa
call fcn.1800262a0
mov rcx, rdi
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.180026140
call fcn.1800262a0
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.1800262a0
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.1800262a0
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.1800262a0
lea r8, [rsp + 0x60]
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov qword [rcx + rdx*8], r8
movabs rcx, 0xcff869cbfa210d82
inc dword [rax + 8]
call fcn.180026140
call fcn.1800262a0
mov rcx, qword [rax]
movsxd rsi, dword [rcx]
test rsi, rsi
jle 0x180037afe
mov qword [rsp + 0x1e8], r12
mov edi, ebp
mov qword [rsp + 0x1e0], r13
movabs r12, 0x9a9112a0fe9a4713
mov qword [rsp + 0x1d8], r14
movabs r13, 0x837765a25378f0bb
mov qword [rsp + 0x1d0], r15
movabs r14, 0x524ac5ecea15343e
movaps xmmword [rsp + 0x1c0], xmm6
movabs r15, 0x997abd671d25ca0b
movaps xmmword [rsp + 0x1b0], xmm7
movaps xmmword [rsp + 0x1a0], xmm8
movaps xmmword [rsp + 0x190], xmm9
movaps xmmword [rsp + 0x180], xmm10
movaps xmmword [rsp + 0x170], xmm11
xorps xmm11, xmm11
movaps xmmword [rsp + 0x160], xmm12
movaps xmmword [rsp + 0x150], xmm13
movss xmm13, dword [0x18019b6a0]
movaps xmmword [rsp + 0x140], xmm14
movss xmm14, dword [0x18019b57c]
movaps xmmword [rsp + 0x130], xmm15
movss xmm15, dword [0x18019bac0]
nop dword [rax + rax]
mov ebx, dword [rsp + rdi*8 + 0x68]
call fcn.1800262a0
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.1800262a0
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
mov rcx, r14
inc dword [rax + 8]
call fcn.180026140
call fcn.1800262a0
mov rcx, qword [rax]
cmp dword [rcx], ebp
je 0x180037759
mov ebx, dword [rsp + rdi*8 + 0x68]
call fcn.1800262a0
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.1800262a0
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.1800262a0
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
mov rcx, r15
inc dword [rax + 8]
call fcn.180026140
call fcn.1800262a0
mov rcx, qword [rax]
cmp dword [rcx], ebp
je 0x180037759
mov ebx, dword [rsp + rdi*8 + 0x68]
call fcn.1800262a0
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.1800262a0
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.1800262a0
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
mov rcx, r12
inc dword [rax + 8]
call fcn.180026140
call fcn.1800262a0
mov rcx, qword [rax]
mov eax, dword [rcx]
mov dword [rsp + rdi*8 + 0x68], eax
call fcn.1800262a0
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.1800262a0
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
mov rcx, r13
inc dword [rax + 8]
call fcn.180026140
call fcn.1800262a0
xorps xmm10, xmm10
xorps xmm9, xmm9
mov rcx, qword [rax]
movups xmm0, xmmword [rcx]
movsd xmm1, qword [rcx + 0x10]
mulss xmm0, xmm14
mulss xmm1, xmm14
cvtss2sd xmm10, xmm0
cvtss2sd xmm9, xmm1
movaps xmm0, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
andps xmm1, xmmword [0x18019ba90]
cvtps2pd xmm8, xmm1
call fcn.1800262a0
movabs rcx, 0x14d6f5678d8f1b37
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.180026140
call fcn.1800262a0
movaps xmm0, xmm9
mov rcx, qword [rax]
movups xmm6, xmmword [rcx]
movsd xmm7, qword [rcx + 0x10]
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
xorps xmm2, xmm2
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm9
xorps xmm1, xmm15
cvtss2sd xmm2, xmm1
mulsd xmm2, xmm8
cvtpd2ps xmm12, xmm2
mulss xmm12, xmm13
addss xmm12, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
shufps xmm6, xmm6, 0xaa
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm10
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm8
cvtpd2ps xmm8, xmm2
mulss xmm8, xmm13
addss xmm8, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
mov ebx, dword [rsp + rdi*8 + 0x68]
xorps xmm9, xmm9
cvtsd2ss xmm9, xmm0
mulss xmm9, xmm13
addss xmm9, xmm7
call fcn.1800262a0
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.1800262a0
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.1800262a0
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
movabs rcx, 0x3fef770d40960d5a
inc dword [rax + 8]
call fcn.180026140
call fcn.1800262a0
mov rcx, qword [rax]
movups xmm7, xmmword [rcx]
movsd xmm0, qword [rcx + 0x10]
mov edx, dword [rsp + rdi*8 + 0x68]
movsd qword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x20], xmm7
call fcn.18002f4e0
mov edx, dword [rsp + rdi*8 + 0xc8]
call fcn.18002f4e0
comiss xmm12, xmm11
jbe 0x1800378f5
comiss xmm7, xmm11
jbe 0x1800378f5
movaps xmm6, xmm12
subss xmm6, xmm7
movss dword [0x18025eb80], xmm6
jmp 0x1800378fd
movss xmm6, dword [0x18025eb80]
comiss xmm11, xmm12
jbe 0x180037919
comiss xmm11, xmm7
jbe 0x180037919
movaps xmm6, xmm12
subss xmm6, xmm7
movss dword [0x18025eb80], xmm6
comiss xmm12, xmm11
jbe 0x180037935
comiss xmm11, xmm7
jbe 0x180037935
movaps xmm6, xmm12
addss xmm6, xmm7
movss dword [0x18025eb80], xmm6
comiss xmm11, xmm12
jbe 0x180037951
comiss xmm7, xmm11
jbe 0x180037951
movaps xmm6, xmm12
addss xmm6, xmm7
movss dword [0x18025eb80], xmm6
comiss xmm8, xmm11
movss xmm0, dword [rsp + 0x28]
movaps xmm10, xmm6
jbe 0x180037977
comiss xmm0, xmm11
jbe 0x180037977
movaps xmm6, xmm8
subss xmm6, xmm0
movss dword [0x18025eb80], xmm6
comiss xmm11, xmm8
jbe 0x180037993
comiss xmm11, xmm0
jbe 0x180037993
movaps xmm6, xmm8
subss xmm6, xmm0
movss dword [0x18025eb80], xmm6
comiss xmm8, xmm11
jbe 0x1800379af
comiss xmm11, xmm0
jbe 0x1800379af
movaps xmm6, xmm8
addss xmm6, xmm0
movss dword [0x18025eb80], xmm6
comiss xmm11, xmm8
jbe 0x1800379cb
comiss xmm0, xmm11
jbe 0x1800379cb
movaps xmm6, xmm8
addss xmm6, xmm0
movss dword [0x18025eb80], xmm6
comiss xmm9, xmm11
movss xmm0, dword [rsp + 0x30]
movaps xmm7, xmm6
jbe 0x1800379f0
comiss xmm0, xmm11
jbe 0x1800379f0
movaps xmm6, xmm9
subss xmm6, xmm0
movss dword [0x18025eb80], xmm6
comiss xmm11, xmm9
jbe 0x180037a0c
comiss xmm11, xmm0
jbe 0x180037a0c
movaps xmm6, xmm9
subss xmm6, xmm0
movss dword [0x18025eb80], xmm6
comiss xmm9, xmm11
jbe 0x180037a28
comiss xmm11, xmm0
jbe 0x180037a28
movaps xmm6, xmm9
addss xmm6, xmm0
movss dword [0x18025eb80], xmm6
comiss xmm11, xmm9
jbe 0x180037a44
comiss xmm0, xmm11
jbe 0x180037a44
movaps xmm6, xmm9
addss xmm6, xmm0
movss dword [0x18025eb80], xmm6
mov ecx, dword [rsp + rdi*8 + 0xc8]
addss xmm6, xmm6
addss xmm7, xmm7
addss xmm10, xmm10
movaps xmm3, xmm6
movaps xmm2, xmm7
movaps xmm1, xmm10
call fcn.1800362a0
mov ecx, dword [rsp + rdi*8 + 0x68]
movaps xmm3, xmm6
movaps xmm2, xmm7
movaps xmm1, xmm10
call fcn.1800362a0
inc rdi
cmp rdi, rsi
jl 0x180037690
movaps xmm15, xmmword [rsp + 0x130]
movaps xmm14, xmmword [rsp + 0x140]
movaps xmm13, xmmword [rsp + 0x150]
movaps xmm12, xmmword [rsp + 0x160]
movaps xmm11, xmmword [rsp + 0x170]
movaps xmm10, xmmword [rsp + 0x180]
movaps xmm9, xmmword [rsp + 0x190]
movaps xmm8, xmmword [rsp + 0x1a0]
movaps xmm7, xmmword [rsp + 0x1b0]
movaps xmm6, xmmword [rsp + 0x1c0]
mov r15, qword [rsp + 0x1d0]
mov r14, qword [rsp + 0x1d8]
mov r13, qword [rsp + 0x1e0]
mov r12, qword [rsp + 0x1e8]
mov rsi, qword [rsp + 0x210]
mov rbp, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x200]
mov rdi, qword [rsp + 0x1f0]
mov rcx, qword [rsp + 0x120]
xor rcx, rsp
call fcn.180137e70
add rsp, 0x1f8
ret