Function at 0x1800056f0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x30
cmp byte [0x18008976f], 0
lea rsi, str.user32
movabs rdi, 0x7fffffff0000
je 0x1800057f5
mov rax, qword [0x180089cc8]
test rax, rax
jne 0x18000576c
mov dword [rsp + 0x20], 0xe000c
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
call fcn.180001590
mov rcx, rax
lea rdx, [0x18005eb20]
call fcn.180001420
mov qword [0x180089cc8], rax
mov ecx, dword [0x180089778]
call rax
test ax, ax
mov rax, qword [0x180089860]
lea rcx, [rax + 0x4d0]
je 0x1800057c2
movss xmm0, dword [0x18006d0c0]
cmp rcx, 0x400000
jbe 0x1800057f5
add rax, 0x4d8
cmp rax, rdi
jae 0x1800057f5
mov rax, qword [rcx]
lea rcx, [rax + 0x74]
cmp rcx, 0x400000
jbe 0x1800057f5
add rax, 0x78
cmp rax, rdi
jae 0x1800057f5
movss dword [rcx], xmm0
jmp 0x1800057f5
cmp rcx, 0x400000
jbe 0x1800057f5
add rax, 0x4d8
cmp rax, rdi
jae 0x1800057f5
mov rax, qword [rcx]
lea rcx, [rax + 0x74]
cmp rcx, 0x400000
jbe 0x1800057f5
add rax, 0x78
cmp rax, rdi
jae 0x1800057f5
mov dword [rcx], 0x40400000
cmp byte [0x18008977e], 0
je 0x180005890
mov rax, qword [0x180089cd8]
test rax, rax
jne 0x180005846
mov dword [rsp + 0x20], 0xe000c
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
call fcn.180001590
mov rcx, rax
lea rdx, [0x18005eb20]
call fcn.180001420
mov qword [0x180089cd8], rax
mov ecx, 5
call rax
test ax, ax
mov rax, qword [0x180089860]
lea rcx, [rax + 0x4b0]
je 0x180005879
cmp rcx, 0x400000
jbe 0x180005890
add rax, 0x4b1
cmp rax, rdi
jae 0x180005890
mov byte [rcx], 1
jmp 0x180005890
cmp rcx, 0x400000
jbe 0x180005890
add rax, 0x4b1
cmp rax, rdi
jae 0x180005890
mov byte [rcx], 0
xor ebx, ebx
cmp byte [0x180089780], bl
je 0x1800058f0
mov ecx, dword [0x180089798]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800058f0
mov rax, qword [0x180089860]
lea rcx, [rax + 0x640]
cmp rcx, 0x400000
jbe 0x1800058f0
add rax, 0x648
cmp rax, rdi
jae 0x1800058f0
mov rax, qword [rcx]
lea rcx, [rax + 0x38]
cmp rcx, 0x400000
jbe 0x1800058f0
add rax, 0x44
cmp rax, rdi
jae 0x1800058f0
mov dword [rcx], ebx
mov qword [rcx + 4], 0x3fc00000
cmp byte [0x18008979d], bl
je 0x18000595d
mov rax, qword [0x180089d60]
lea rcx, [rax + 0x31be480]
cmp rcx, 0x400000
jbe 0x18000595d
add rax, 0x31be488
cmp rax, rdi
jae 0x18000595d
mov rax, qword [rcx]
lea rcx, [rax + 0xb8]
cmp rcx, 0x400000
jbe 0x18000595d
add rax, 0xc0
cmp rax, rdi
jae 0x18000595d
mov rax, qword [rcx]
lea rcx, [rax + 0x18]
cmp rcx, 0x400000
jbe 0x18000595d
add rax, 0x1c
cmp rax, rdi
jae 0x18000595d
movss xmm0, dword [0x18006d0b8]
movss dword [rcx], xmm0
cmp byte [0x180089775], bl
je 0x180005a80
mov rax, qword [0x180089d28]
test rax, rax
jne 0x1800059ad
mov dword [rsp + 0x20], 0xe000c
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
call fcn.180001590
mov rcx, rax
lea rdx, [0x18005eb20]
call fcn.180001420
mov qword [0x180089d28], rax
mov ecx, dword [0x18008978c]
call rax
test ax, ax
mov rax, qword [0x180089d60]
lea rcx, [rax + 0x31be480]
je 0x180005a29
cmp rcx, 0x400000
jbe 0x180005a80
add rax, 0x31be488
cmp rax, rdi
jae 0x180005a80
mov rax, qword [rcx]
lea rcx, [rax + 0xb8]
cmp rcx, 0x400000
jbe 0x180005a80
add rax, 0xc0
cmp rax, rdi
jae 0x180005a80
mov rax, qword [rcx]
lea rcx, [rax + 0x18]
cmp rcx, 0x400000
jbe 0x180005a80
add rax, 0x1c
cmp rax, rdi
jae 0x180005a80
movss xmm0, dword [0x18006d0bc]
jmp 0x180005a7c
cmp rcx, 0x400000
jbe 0x180005a80
add rax, 0x31be488
cmp rax, rdi
jae 0x180005a80
mov rax, qword [rcx]
lea rcx, [rax + 0xb8]
cmp rcx, 0x400000
jbe 0x180005a80
add rax, 0xc0
cmp rax, rdi
jae 0x180005a80
mov rax, qword [rcx]
lea rcx, [rax + 0x18]
cmp rcx, 0x400000
jbe 0x180005a80
add rax, 0x1c
cmp rax, rdi
jae 0x180005a80
movss xmm0, dword [0x18006d0b8]
movss dword [rcx], xmm0
cmp byte [0x180089797], bl
je 0x180005ab0
mov rax, qword [0x180089860]
lea rcx, [rax + 0x6b8]
cmp rcx, 0x400000
jbe 0x180005ab0
add rax, 0x6bc
cmp rax, rdi
jae 0x180005ab0
mov dword [rcx], 0x3e19999a
cmp byte [0x1800897a4], bl
je 0x180005adc
mov rax, qword [0x180089860]
lea rcx, [rax + 0x6b0]
cmp rcx, 0x400000
jbe 0x180005adc
add rax, 0x6b1
cmp rax, rdi
jae 0x180005adc
mov byte [rcx], bl
cmp byte [0x18008976d], bl
je 0x180005b51
mov rax, qword [0x180089860]
lea rcx, [rax + 0x6b4]
add rax, 0x6b8
cmp rcx, 0x400000
jbe 0x180005b51
cmp rax, rdi
jae 0x180005b51
movss xmm1, dword [rcx]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
je 0x180005b3d
comiss xmm1, dword [0x180065968]
jbe 0x180005b2c
comiss xmm1, dword [0x180065990]
jae 0x180005b2c
mov dword [rcx], 0x3e19999a
jmp 0x180005b51
comiss xmm1, dword [0x180065998]
jbe 0x180005b51
mov dword [rcx], 0x3e19999a
jmp 0x180005b51
cmp rcx, 0x400000
jbe 0x180005b51
cmp rax, rdi
jae 0x180005b51
mov dword [rcx], 0xbdcccccd
cmp byte [0x180089787], bl
je 0x180005bbe
mov rax, qword [0x180089860]
lea rcx, [rax + 0x4d0]
cmp rcx, 0x400000
jbe 0x180005bbe
add rax, 0x4d8
cmp rax, rdi
jae 0x180005bbe
mov rcx, qword [rcx]
mov rdx, rcx
lea r8, [rcx + 0xb4]
cmp r8, 0x400000
jbe 0x180005ba0
lea rax, [rcx + 0xb8]
cmp rax, rdi
jae 0x180005ba0
mov dword [r8], ebx
lea rcx, [rdx + 0xb8]
cmp rcx, 0x400000
jbe 0x180005bbe
lea rax, [rdx + 0xbc]
cmp rax, rdi
jae 0x180005bbe
mov dword [rcx], ebx
cmp byte [0x180089789], bl
je 0x180005c4a
lea rcx, str.GameAssembly.dll
call fcn.1800014d0
add rax, 0x31bf628
cmp rax, 0x400000
jbe 0x180005c4a
lea rcx, str.GameAssembly.dll
call fcn.1800014d0
add rax, 0x31bf630
cmp rax, rdi
jae 0x180005c4a
lea rcx, str.GameAssembly.dll
call fcn.1800014d0
mov rdx, qword [rax + 0x31bf628]
mov rcx, rdx
lea r8, [rdx + 0x2c]
cmp r8, 0x400000
jbe 0x180005c2e
lea rax, [rdx + 0x30]
cmp rax, rdi
jae 0x180005c2e
mov dword [r8], 0x3f800000
lea rdx, [rcx + 0x20]
cmp rdx, 0x400000
jbe 0x180005c4a
lea rax, [rcx + 0x24]
cmp rax, rdi
jae 0x180005c4a
mov dword [rdx], 0x3f800000
cmp byte [0x180089783], bl
je 0x180005d25
mov rax, qword [0x180089ca0]
test rax, rax
jne 0x180005c9a
mov dword [rsp + 0x20], 0xe000c
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
call fcn.180001590
mov rcx, rax
lea rdx, [0x18005eb20]
call fcn.180001420
mov qword [0x180089ca0], rax
mov ecx, 0x20
call rax
test ax, ax
je 0x180005d25
mov rax, qword [0x180089860]
lea rcx, [rax + 0x4d0]
cmp rcx, 0x400000
jbe 0x180005d25
add rax, 0x4d8
cmp rax, rdi
jae 0x180005d25
mov rcx, qword [rcx]
mov rdx, rcx
lea r8, [rcx + 0xb8]
cmp r8, 0x400000
jbe 0x180005cf5
lea rax, [rcx + 0xc4]
cmp rax, rdi
jae 0x180005cf5
mov dword [r8], ebx
mov qword [r8 + 4], 0x49742400
lea rcx, [rdx + 0xb4]
cmp rcx, 0x400000
jbe 0x180005d25
lea rax, [rdx + 0xc0]
cmp rax, rdi
jae 0x180005d25
mov dword [rcx], 0x4b18967f
mov dword [rcx + 4], 0x4b18967f
mov dword [rcx + 8], 0x4b18967f
cmp byte [0x180089786], bl
je 0x180005d55
mov rax, qword [0x180089860]
lea rcx, [rax + 0x6bc]
cmp rcx, 0x400000
jbe 0x180005d55
add rax, 0x6c0
cmp rax, rdi
jae 0x180005d55
mov dword [rcx], 0x3f800000
cmp byte [0x180089785], bl
je 0x180005d96
mov rax, qword [0x180089860]
lea rcx, [rax + 0x5f8]
add rax, 0x5fc
cmp rcx, 0x400000
jbe 0x180005d96
cmp rax, rdi
jae 0x180005d83
mov ebx, dword [rcx]
jmp 0x180005d91
cmp rcx, 0x400000
jbe 0x180005d96
cmp rax, rdi
jae 0x180005d96
or ebx, 4
mov dword [rcx], ebx
cmp byte [0x180089795], 0
je 0x180005dff
mov rax, qword [0x180089860]
lea rcx, [rax + 0x4c0]
cmp rcx, 0x400000
jbe 0x180005dff
add rax, 0x4c8
cmp rax, rdi
jae 0x180005dff
mov rax, qword [rcx]
lea rcx, [rax + 0x498]
cmp rcx, 0x400000
jbe 0x180005dff
add rax, 0x4a0
cmp rax, rdi
jae 0x180005dff
mov rax, qword [rcx]
lea rcx, [rax + 0x18]
cmp rcx, 0x400000
jbe 0x180005dff
add rax, 0x20
cmp rax, rdi
jae 0x180005dff
mov qword [rcx], 1
cmp byte [0x180089782], 0
je 0x180005e25
mov ecx, dword [0x1800897a0]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180005e25
mov rcx, qword [0x180089860]
call fcn.180001f10
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x30
pop r14
ret