Function at 0x18005f770
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
lea rbp, [rax - 0xe8]
sub rsp, 0x1e0
movaps xmmword [rax - 0x18], xmm6
mov rax, qword [0x1801da5d0]
xor rax, rsp
mov qword [rbp + 0xc0], rax
cmp byte [0x1801f22f8], 0
je 0x18005f8f4
call fcn.18000a950
mov ecx, eax
xor edx, edx
call fcn.18000a150
mov esi, eax
call fcn.18005eff0
mov edi, eax
call fcn.18005eff0
mov ebx, eax
call fcn.18005eff0
mov r9d, edi
mov r8d, ebx
mov edx, eax
mov ecx, esi
call fcn.18000b970
mov r9d, dword [0x1801dc008]
mov edx, dword [0x1801dc000]
test edx, edx
jle 0x18005f813
test r9d, r9d
jne 0x18005f813
dec edx
mov dword [0x1801dc000], edx
mov r8d, dword [0x1801dc004]
inc r8d
mov dword [0x1801dc004], r8d
jmp 0x18005f81a
mov r8d, dword [0x1801dc004]
test r8d, r8d
jle 0x18005f837
test edx, edx
jne 0x18005f837
dec r8d
mov dword [0x1801dc004], r8d
inc r9d
mov dword [0x1801dc008], r9d
test r9d, r9d
jle 0x18005f853
test r8d, r8d
jne 0x18005f853
inc edx
mov dword [0x1801dc000], edx
dec r9d
mov dword [0x1801dc008], r9d
mov ecx, esi
call fcn.18000b350
mov r9d, dword [0x1801dc008]
mov r8d, dword [0x1801dc004]
mov edx, dword [0x1801dc000]
mov ecx, esi
call fcn.18000b3d0
mov ecx, esi
call fcn.1800596b0
xor edx, edx
mov ecx, esi
call fcn.18000afa0
mov edx, 1
mov ecx, esi
call fcn.18000afa0
mov edx, 2
mov ecx, esi
call fcn.18000afa0
mov edx, 3
mov ecx, esi
call fcn.18000afa0
mov edx, 4
mov ecx, esi
call fcn.18000afa0
mov edx, 5
mov ecx, esi
call fcn.18000afa0
mov edx, 6
mov ecx, esi
call fcn.18000afa0
mov edx, 7
mov ecx, esi
call fcn.18000afa0
mov r9d, dword [0x1801dc008]
mov r8d, dword [0x1801dc004]
mov edx, dword [0x1801dc000]
mov ecx, esi
call fcn.180059630
cmp byte [0x1801f22f9], 0
je 0x18005f945
call fcn.18001b880
mov ecx, eax
call fcn.18005f050
test eax, eax
je 0x18005f945
call fcn.18001b880
mov ecx, eax
call fcn.18000a910
mov ecx, eax
xor edx, edx
call fcn.18000a150
mov ebx, eax
mov ecx, eax
call fcn.1800096a0
mov ecx, ebx
call fcn.1800096e0
test eax, eax
je 0x18005f945
movss xmm1, dword [0x1801baca0]
mov ecx, ebx
call fcn.18000b4d0
cmp byte [0x1801f22fa], 0
je 0x18005f9b0
mov ecx, 0x57
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x18005f9b0
call fcn.18001b880
mov ecx, eax
call fcn.18000a910
mov ecx, eax
xor edx, edx
call fcn.18000a150
mov ebx, eax
mov ecx, eax
call fcn.1800096a0
mov ecx, ebx
call fcn.1800096e0
test eax, eax
je 0x18005f9b0
mov ecx, ebx
call fcn.18005ef30
ucomiss xmm0, dword [0x1801baff8]
je 0x18005f9b0
mov ecx, ebx
call fcn.18005ef30
addss xmm0, dword [0x1801ba838]
movaps xmm1, xmm0
mov ecx, ebx
call fcn.18000b4d0
cmp byte [0x1801f22fb], 0
je 0x18005fa09
call fcn.18000a950
mov ecx, eax
xor edx, edx
call fcn.18000a150
mov ebx, eax
movzx edx, byte [0x1801f22fb]
mov ecx, eax
call fcn.180008bf0
mov ecx, ebx
call fcn.18005f1c0
mov ecx, ebx
call fcn.18005f130
mov ecx, ebx
call fcn.18000b720
mov ecx, ebx
call fcn.18005f330
movss xmm1, dword [0x1801bb224]
mov ecx, ebx
call fcn.1800595e0
mov ecx, ebx
call fcn.18005f290
cmp byte [0x1801f22fc], 0
je 0x18005fa30
call fcn.18000a950
mov ecx, eax
xor edx, edx
call fcn.18000a150
mov ebx, eax
mov ecx, eax
call fcn.18000b720
mov ecx, ebx
call fcn.18000b750
cmp byte [0x1801f2445], 0
je 0x18005faa1
call fcn.18000a950
mov ecx, eax
call fcn.18000a410
mov ecx, eax
call fcn.18005ef30
mulss xmm0, dword [0x1801ba8d8]
cmp byte [0x1801f2445], 0
je 0x18005fa65
mulss xmm0, dword [0x1801ba848]
cvttss2si r8d, xmm0
lea rdx, [0x1801b9b04]
lea rcx, [rbp - 0x40]
call fcn.18005fee0
cmp byte [0x1801f2445], 0
je 0x18005faa1
call fcn.18000a950
mov ecx, eax
xor edx, edx
call fcn.18000a150
mov ecx, eax
lea rdx, [rbp - 0x40]
call fcn.18000b570
call fcn.18005efc0
cmp byte [0x1801f22ff], 0
je 0x18005fabf
call fcn.18000a950
mov ecx, eax
xor edx, edx
call fcn.18000a150
mov ecx, eax
call fcn.18005f090
cmp byte [0x1801f2446], 0
je 0x18005fae6
movss xmm6, dword [0x1801f24cc]
call fcn.18000a950
mov ecx, eax
call fcn.18000a410
movaps xmm1, xmm6
mov ecx, eax
call fcn.18005f2e0
xor ebx, ebx
cmp byte [0x1801f22ef], bl
je 0x18005fbb2
mov rdi, qword [0x1801f2ab0]
mov rax, qword [rdi + 8]
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], ebx
mov rdx, rdi
cmp byte [rax + 0x19], bl
jne 0x18005fb38
mov qword [rsp + 0x40], rax
cmp dword [rax + 0x1c], 0xffffff91
jge 0x18005fb25
mov dword [rsp + 0x48], ebx
mov rax, qword [rax + 0x10]
jmp 0x18005fb33
mov dword [rsp + 0x48], 1
mov rdx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], bl
je 0x18005fb10
cmp byte [rdx + 0x19], bl
jne 0x18005fb43
cmp dword [rdx + 0x1c], 0xffffff91
jle 0x18005fbaa
movabs rax, 0x666666666666666
cmp qword [0x1801f2ab8], rax
je 0x18005fed1
lea rsi, [0x1801f2ab0]
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x58], rbx
mov ecx, 0x28
call fcn.18014f0c4
nop
mov dword [rax + 0x1c], 0xffffff91
mov dword [rax + 0x20], ebx
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rsp + 0x40]
movaps xmmword [rbp - 0x60], xmm0
mov r8, rax
lea rdx, [rbp - 0x60]
mov rcx, rsi
call fcn.18002de50
mov rdx, rax
mov edx, dword [rdx + 0x20]
call fcn.18005f0e0
cmp byte [0x1801f22fd], 0
mov edi, 1
jne 0x18005fbc2
mov edi, ebx
call fcn.18000a950
mov ecx, eax
mov edx, ebx
call fcn.18000a150
mov ecx, eax
mov edx, edi
call fcn.18005ef70
cmp byte [0x1801f2447], 0
je 0x18005fbf9
call fcn.18001b880
mov ecx, eax
call fcn.18000a910
mov ecx, eax
call fcn.18000a410
xor edx, edx
jmp 0x18005fc11
call fcn.18001b880
mov ecx, eax
call fcn.18000a910
mov ecx, eax
call fcn.18000a410
mov edx, 1
mov ecx, eax
call fcn.180008d00
cmp byte [0x1801f22fe], 0
je 0x18005fd51
call fcn.18000a950
mov ecx, eax
xor edx, edx
call fcn.18000a150
mov ebx, eax
test eax, eax
je 0x18005fd51
mov ecx, eax
call fcn.180008210
mov ecx, eax
call fcn.180059530
test eax, eax
jne 0x18005fc65
mov ecx, ebx
call fcn.180008210
mov ecx, eax
call fcn.1800594f0
test eax, eax
je 0x18005fd51
mov edx, 0x57
lea ecx, [rdx - 0x55]
call fcn.180029390
test eax, eax
je 0x18005fc97
mov ecx, ebx
call fcn.18005ef30
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
addsd xmm1, qword [0x1801ba888]
cvtpd2ps xmm1, xmm1
mov ecx, ebx
call fcn.18000b4d0
mov edx, 0x59
lea ecx, [rdx - 0x57]
call fcn.180029390
test eax, eax
je 0x18005fcf4
mov ecx, ebx
call fcn.18005f180
test eax, eax
jne 0x18005fcf4
lea r8d, [rax + 2]
mov edx, ebx
lea rcx, [rsp + 0x40]
call fcn.180008300
movss xmm3, dword [rsp + 0x50]
addss xmm3, dword [0x1801ba858]
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 2
movss xmm2, dword [rsp + 0x48]
movss xmm1, dword [rsp + 0x40]
mov ecx, ebx
call fcn.180008c40
mov edx, 0x5a
lea ecx, [rdx - 0x58]
call fcn.180029390
test eax, eax
je 0x18005fd51
mov ecx, ebx
call fcn.18005f180
test eax, eax
jne 0x18005fd51
lea r8d, [rax + 2]
mov edx, ebx
lea rcx, [rsp + 0x40]
call fcn.180008300
movss xmm3, dword [rsp + 0x50]
addss xmm3, dword [0x1801bb344]
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 2
movss xmm2, dword [rsp + 0x48]
movss xmm1, dword [rsp + 0x40]
mov ecx, ebx
call fcn.180008c40
call fcn.18005f450
cmp byte [0x1801f22ee], 0
je 0x18005fd9c
call fcn.18000a950
mov ecx, eax
call fcn.18000a410
mov ecx, eax
call fcn.180008210
mov ebx, eax
mov ecx, eax
call fcn.180028b50
test eax, eax
je 0x18005fd9c
mov ecx, ebx
call fcn.180059530
test eax, eax
jne 0x18005fd95
mov ecx, ebx
call fcn.18000b5c0
test eax, eax
je 0x18005fd9c
mov ecx, ebx
call fcn.18000b200
cmp byte [0x1801f22ed], 0
je 0x18005fea4
call fcn.18000a950
mov ecx, eax
xor edx, edx
call fcn.180009f60
test eax, eax
je 0x18005fea4
lea rcx, str.prop_container_ld2
call fcn.1800090e0
mov ebx, eax
call fcn.18000a950
mov ecx, eax
xor edx, edx
call fcn.18000a150
mov edx, eax
xor r8d, r8d
lea rcx, [rsp + 0x40]
call fcn.180008100
call fcn.18005f420
lea r9, [rsp + 0x58]
movss xmm2, dword [rsp + 0x50]
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
call fcn.18005f380
test eax, eax
je 0x18005fe7e
call fcn.18000a950
mov ecx, eax
mov edx, 1
call fcn.180009f60
test eax, eax
je 0x18005fe7e
mov dword [rbp - 0x60], ebx
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [rbp - 0x5c], xmm0
movsd xmm1, qword [rsp + 0x50]
movsd qword [rbp - 0x4c], xmm1
movss xmm2, dword [rsp + 0x58]
lea rax, vtable.std::_Func_impl_no_alloc_class__lambda_913ff0187dfef77f05787a01c55a29b3___void___.0
mov qword [rsp + 0x60], rax
movups xmm0, xmmword [rbp - 0x60]
movups xmmword [rsp + 0x68], xmm0
movups xmm1, xmmword [rbp - 0x50]
shufps xmm1, xmm1, 0x93
movss xmm1, xmm2
shufps xmm1, xmm1, 0x39
movups xmmword [rsp + 0x78], xmm1
lea rax, [rsp + 0x60]
mov qword [rbp - 0x68], rax
lea rdx, [rsp + 0x60]
call fcn.18003e4e0
mov ecx, dword [0x1801f4030]
call fcn.1800080c0
test eax, eax
je 0x18005fea4
mov ecx, dword [0x1801f4030]
call fcn.1800096a0
lea rcx, [0x1801f4030]
call fcn.180009b10
mov rcx, qword [rbp + 0xc0]
xor rcx, rsp
call fcn.18014f070
lea r11, [rsp + 0x1e0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop rbp
ret
call fcn.18002e0d0
int3