Function at 0x1400d3330
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 [0x140251248], 0
mov rdi, r9
mov rbx, r8
mov byte [0x1402514c9], 0
mov esi, edx
mov rbp, rcx
je 0x1400d33aa
call fcn.1400f10d0
sub eax, dword [0x140251248]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
comisd xmm0, xmmword [0x14011a1e8]
jbe 0x1400d33aa
mov r9, rdi
mov byte [rsp + 0x20], 0
shr r9, 0x1e
lea rcx, [0x140251250]
and r9b, 1
mov r8b, 1
mov edx, select
call fcn.1400d3c20
mov dword [0x140251248], 0
cmp esi, 0x200
ja 0x1400d35c8
je 0x1400d3590
add esi, 0xffffff7c
cmp esi, 0x81
ja case.0x1400d35fa.521
lea rdx, [0x140000000]
movzx eax, byte [rdx + rsi + 0xd3750]
mov ecx, dword [rdx + rax*4 + 0xd3738]
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, [0x140251250]
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.1400d3c20
jmp case.0x1400d35fa.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, [0x140251250]
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.1400d3c20
jmp case.0x1400d35fa.521
movzx edx, bx
lea rcx, [0x140251250]
call fcn.1400d3880
jmp case.0x1400d35fa.521
mov edx, 1
lea rcx, [0x140251250]
call fcn.1400d3c10
test al, al
je case.0x1400d35fa.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, [0x140251250]
movsx edx, word [rsp + 0x30]
call fcn.1400d4160
jmp case.0x1400d35fa.521
mov edx, 4
lea rcx, [0x140251250]
call fcn.1400d3c10
test al, al
je case.0x1400d35fa.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.1400e2ca0
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 0x1400d3583
mov edx, dword [0x140251250]
lea rcx, [0x140251250]
mov r8d, dword [0x140251254]
add edx, dword [rbx + 0x24]
add r8d, dword [rbx + 0x28]
call fcn.1400d4160
mov rcx, rbx
call fcn.1400e2868
jmp case.0x1400d35fa.521
mov edx, 2
lea rcx, [0x140251250]
call fcn.1400d3c10
test al, al
je case.0x1400d35fa.521
mov rax, rdi
movsx edx, di
shr rax, 0x10
lea rcx, [0x140251250]
movsx r8d, ax
call fcn.1400d4160
jmp case.0x1400d35fa.521
cmp esi, 0x302
ja case.0x1400d35fa.521
je 0x1400d3715
add esi, 0xfffffdff
cmp esi, 0xc
ja case.0x1400d35fa.521
lea rdx, [0x140000000]
mov eax, dword [rdx + rsi*4 + 0xd37d4]
add rax, rdx
jmp rax
shr rbx, 0x10
mov eax, 0x51eb851f
movsx ecx, bx
imul ecx
lea rcx, [0x140251250]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
call fcn.1400d4270
jmp case.0x1400d35fa.521
mov r8b, 1
lea rcx, [0x140251250]
movzx edx, r8b
call fcn.1400d3ed0
jmp case.0x1400d35fa.521
xor r8d, r8d
lea rcx, [0x140251250]
mov dl, 1
call fcn.1400d3ed0
jmp case.0x1400d35fa.521
mov r8b, 1
lea rcx, [0x140251250]
mov dl, 2
call fcn.1400d3ed0
jmp case.0x1400d35fa.521
xor r8d, r8d
lea rcx, [0x140251250]
mov dl, 2
call fcn.1400d3ed0
jmp case.0x1400d35fa.521
mov r8b, 1
lea rcx, [0x140251250]
mov dl, 4
call fcn.1400d3ed0
jmp case.0x1400d35fa.521
xor r8d, r8d
lea rcx, [0x140251250]
mov dl, 4
call fcn.1400d3ed0
jmp case.0x1400d35fa.521
shr rbx, 0x10
cmp bx, 1
jne 0x1400d36c6
movzx r8d, bl
lea rcx, [0x140251250]
mov dl, 5
call fcn.1400d3ed0
jmp case.0x1400d35fa.521
cmp bx, 2
jne case.0x1400d35fa.521
mov r8b, 1
lea rcx, [0x140251250]
mov dl, 6
call fcn.1400d3ed0
jmp case.0x1400d35fa.521
shr rbx, 0x10
cmp bx, 1
jne 0x1400d36fc
xor r8d, r8d
lea rcx, [0x140251250]
mov dl, 5
call fcn.1400d3ed0
jmp case.0x1400d35fa.521
cmp bx, 2
jne case.0x1400d35fa.521
xor r8d, r8d
lea rcx, [0x140251250]
mov dl, 6
call fcn.1400d3ed0
jmp case.0x1400d35fa.521
lea rcx, [0x140251250]
call fcn.1400d3930
mov rbx, qword [rsp + 0x60]
xor eax, eax
mov rbp, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
ret