Function at 0x1400cd300
Capabilities:
Log keystrokes

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x50
cmp dword [0x14024b188], 0
mov rdi, r9
mov rbx, r8
mov byte [0x14024b409], 0
mov esi, edx
mov rbp, rcx
je 0x1400cd37a
call fcn.1400eb070
sub eax, dword [0x14024b188]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
comisd xmm0, xmmword [0x140113ca8]
jbe 0x1400cd37a
mov r9, rdi
mov byte [rsp + 0x20], 0
shr r9, 0x1e
lea rcx, [0x14024b190]
and r9b, 1
mov r8b, 1
mov edx, select
call fcn.1400cdbf0
mov dword [0x14024b188], 0
cmp esi, 0x200
ja 0x1400cd598
je 0x1400cd560
add esi, 0xffffff7c
cmp esi, 0x81
ja case.0x1400cd5ca.521
lea rdx, [0x140000000]
movzx eax, byte [rdx + rsi + 0xcd720]
mov ecx, dword [rdx + rax*4 + 0xcd708]
add rcx, rdx
jmp rcx
mov rax, rdi
mov edx, 3
sar rax, 0x10
movzx ecx, al
call qword [sym.imp.USER32.dll_MapVirtualKeyA]
mov r8b, 1
lea rcx, [0x14024b190]
mov edx, eax
lea rax, [rbx - 0x60]
cmp rax, 9
mov rax, rdi
cmovbe edx, ebx
shr rdi, 0x1e
sar rax, 0x18
and dil, 1
and al, 1
movzx r9d, dil
mov byte [rsp + 0x20], al
call fcn.1400cdbf0
jmp case.0x1400cd5ca.521
mov rax, rdi
mov edx, 3
sar rax, 0x10
movzx ecx, al
call qword [sym.imp.USER32.dll_MapVirtualKeyA]
mov edx, eax
lea rcx, [0x14024b190]
lea rax, [rbx - 0x60]
cmp rax, 9
cmovbe edx, ebx
sar rdi, 0x18
and dil, 1
xor r9d, r9d
xor r8d, r8d
mov byte [rsp + 0x20], dil
call fcn.1400cdbf0
jmp case.0x1400cd5ca.521
movzx edx, bx
lea rcx, [0x14024b190]
call fcn.1400cd850
jmp case.0x1400cd5ca.521
mov edx, 1
lea rcx, [0x14024b190]
call fcn.1400cdbe0
test al, al
je case.0x1400cd5ca.521
xorps xmm0, xmm0
lea rdx, [rsp + 0x38]
mov rcx, rbp
movups xmmword [rsp + 0x38], xmm0
call qword [sym.imp.USER32.dll_GetWindowRect]
movsx eax, di
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x30], eax
mov rcx, rbp
shr rdi, 0x10
movsx eax, di
mov dword [rsp + 0x34], eax
call qword [sym.imp.USER32.dll_ScreenToClient]
movsx r8d, word [rsp + 0x34]
lea rcx, [0x14024b190]
movsx edx, word [rsp + 0x30]
call fcn.1400ce130
jmp case.0x1400cd5ca.521
mov edx, 4
lea rcx, [0x14024b190]
call fcn.1400cdbe0
test al, al
je case.0x1400cd5ca.521
lea r9, [rsp + 0x68]
mov dword [rsp + 0x20], 0x18
xor r8d, r8d
mov edx, 0x10000003
mov rcx, rdi
call qword [sym.imp.USER32.dll_GetRawInputData]
mov ecx, dword [rsp + 0x68]
call fcn.1400dcc40
lea r9, [rsp + 0x68]
mov dword [rsp + 0x20], 0x18
mov r8, rax
mov edx, 0x10000003
mov rcx, rdi
mov rbx, rax
call qword [sym.imp.USER32.dll_GetRawInputData]
cmp dword [rbx], 0
jne 0x1400cd553
mov edx, dword [0x14024b190]
lea rcx, [0x14024b190]
mov r8d, dword [0x14024b194]
add edx, dword [rbx + 0x24]
add r8d, dword [rbx + 0x28]
call fcn.1400ce130
mov rcx, rbx
call fcn.1400dc808
jmp case.0x1400cd5ca.521
mov edx, 2
lea rcx, [0x14024b190]
call fcn.1400cdbe0
test al, al
je case.0x1400cd5ca.521
mov rax, rdi
movsx edx, di
shr rax, 0x10
lea rcx, [0x14024b190]
movsx r8d, ax
call fcn.1400ce130
jmp case.0x1400cd5ca.521
cmp esi, 0x302
ja case.0x1400cd5ca.521
je 0x1400cd6e5
add esi, 0xfffffdff
cmp esi, 0xc
ja case.0x1400cd5ca.521
lea rdx, [0x140000000]
mov eax, dword [rdx + rsi*4 + 0xcd7a4]
add rax, rdx
jmp rax
shr rbx, 0x10
mov eax, 0x51eb851f
movsx ecx, bx
imul ecx
lea rcx, [0x14024b190]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
call fcn.1400ce240
jmp case.0x1400cd5ca.521
mov r8b, 1
lea rcx, [0x14024b190]
movzx edx, r8b
call fcn.1400cdea0
jmp case.0x1400cd5ca.521
xor r8d, r8d
lea rcx, [0x14024b190]
mov dl, 1
call fcn.1400cdea0
jmp case.0x1400cd5ca.521
mov r8b, 1
lea rcx, [0x14024b190]
mov dl, 2
call fcn.1400cdea0
jmp case.0x1400cd5ca.521
xor r8d, r8d
lea rcx, [0x14024b190]
mov dl, 2
call fcn.1400cdea0
jmp case.0x1400cd5ca.521
mov r8b, 1
lea rcx, [0x14024b190]
mov dl, 4
call fcn.1400cdea0
jmp case.0x1400cd5ca.521
xor r8d, r8d
lea rcx, [0x14024b190]
mov dl, 4
call fcn.1400cdea0
jmp case.0x1400cd5ca.521
shr rbx, 0x10
cmp bx, 1
jne 0x1400cd696
movzx r8d, bl
lea rcx, [0x14024b190]
mov dl, 5
call fcn.1400cdea0
jmp case.0x1400cd5ca.521
cmp bx, 2
jne case.0x1400cd5ca.521
mov r8b, 1
lea rcx, [0x14024b190]
mov dl, 6
call fcn.1400cdea0
jmp case.0x1400cd5ca.521
shr rbx, 0x10
cmp bx, 1
jne 0x1400cd6cc
xor r8d, r8d
lea rcx, [0x14024b190]
mov dl, 5
call fcn.1400cdea0
jmp case.0x1400cd5ca.521
cmp bx, 2
jne case.0x1400cd5ca.521
xor r8d, r8d
lea rcx, [0x14024b190]
mov dl, 6
call fcn.1400cdea0
jmp case.0x1400cd5ca.521
lea rcx, [0x14024b190]
call fcn.1400cd900
mov rbx, qword [rsp + 0x60]
xor eax, eax
mov rbp, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
ret