Function at 0x180104130
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
push rbx
sub rsp, 0xd0
cmp byte [0x18029c72a], 0
mov rcx, qword [0x180217fa8]
je 0x18010451e
mov qword [rax + 8], rbp
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax - 0x10], r12
mov qword [rax - 0x18], r13
mov qword [rax - 0x20], r14
mov qword [rax - 0x28], r15
movaps xmmword [rax - 0x38], xmm6
call fcn.18001a360
mov rcx, qword [0x180217fa8]
movabs rbx, 0xb6997a7eb3f5c8c0
mov rdx, rbx
call fcn.18001a3e0
mov rax, qword [0x180217fa8]
xor r8d, r8d
movabs rcx, 0x89f149b6131e57da
mov rdx, qword [rax]
mov edx, dword [rdx]
call fcn.180070ca0
mov rcx, qword [0x180217fa8]
call fcn.18001a360
mov rcx, qword [0x180217fa8]
mov rdx, rbx
call fcn.18001a3e0
mov rax, qword [0x180217fa8]
xor r8d, r8d
movabs rdx, 0x837765a25378f0bb
mov rcx, qword [rax]
mov edi, dword [rcx]
lea rcx, [rsp + 0x80]
call fcn.1800713c0
movss xmm3, dword [rsp + 0x90]
mov ecx, edi
movss xmm2, dword [rsp + 0x88]
movss xmm1, dword [rsp + 0x80]
mov byte [rsp + 0x28], 1
mov dword [rsp + 0x20], 1
call fcn.18007a270
mov r9b, 1
mov edx, edi
movzx r8d, r9b
movabs rcx, 0x1a9205c1b9ee827f
call fcn.180071090
mov rcx, qword [0x180217fa8]
call fcn.18001a360
mov rcx, qword [0x180217fa8]
movabs rdx, 0x4f8644af03d0e0d6
call fcn.18001a3e0
mov edx, 2
movabs r14, 0xf3a21bcd95725a4a
mov rcx, r14
lea r8d, [rdx + 0x45]
call fcn.180070900
mov ebp, reloc.WLDAP32.dll_Ordinal_200
mov esi, 0x190
movabs r13, 0xab54a438726d25d5
test eax, eax
je 0x1801042c9
mov rbx, qword [0x180218068]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, qword [rbx + 0x18]
jne 0x1801042af
mov ecx, reloc.WS2_32.dll_recv
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1801042af
mov cl, 1
jmp 0x1801042b1
xor cl, cl
test cl, cl
mov eax, ebp
mov edx, edi
mov rcx, r13
cmovne eax, esi
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.180070ff0
mov edx, 2
mov rcx, r14
lea r8d, [rdx + 0x46]
call fcn.180070900
mov esi, 0xffffff38
mov r12d, 0xfffffe70
test eax, eax
je 0x18010432b
mov rbx, qword [0x180218068]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, qword [rbx + 0x18]
jne 0x180104310
mov ecx, reloc.WS2_32.dll_recv
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x180104310
mov cl, 1
jmp 0x180104312
xor cl, cl
test cl, cl
mov eax, esi
mov edx, edi
mov rcx, r13
cmovne eax, r12d
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.180070ff0
mov edx, 2
mov rcx, r14
lea r8d, [rdx + 0x3d]
call fcn.180070900
xor r15d, r15d
xorps xmm6, xmm6
test eax, eax
je 0x1801043c0
mov rbx, qword [0x180218068]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, qword [rbx + 0x18]
jne 0x18010436c
lea ecx, [r15 + 0x10]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x18010436c
mov al, 1
jmp 0x18010436e
xor al, al
mov dword [rsp + 0x70], 1
test al, al
mov dword [rsp + 0x68], r15d
mov r8d, 1
mov dword [rsp + 0x50], 1
cmovne esi, r12d
mov dword [rsp + 0x48], r15d
mov edx, edi
movss dword [rsp + 0x40], xmm6
movss dword [rsp + 0x38], xmm6
movss dword [rsp + 0x30], xmm6
movd xmm3, esi
movss dword [rsp + 0x28], xmm6
cvtdq2ps xmm3, xmm3
movss dword [rsp + 0x20], xmm6
call fcn.18006e900
mov edx, 2
mov rcx, r14
lea r8d, [rdx + 0x3e]
call fcn.180070900
mov r12, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xe8]
test eax, eax
je 0x180104464
mov rbx, qword [0x180218068]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, qword [rbx + 0x18]
jne 0x18010440c
mov ecx, reloc.WS2_32.dll_recv
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x18010440c
mov al, 1
jmp 0x18010440e
xor al, al
mov dword [rsp + 0x70], 1
test al, al
mov dword [rsp + 0x68], r15d
mov eax, 0x190
mov dword [rsp + 0x50], 1
cmovne ebp, eax
mov dword [rsp + 0x48], r15d
mov r8d, 1
movss dword [rsp + 0x40], xmm6
mov edx, edi
movss dword [rsp + 0x38], xmm6
movss dword [rsp + 0x30], xmm6
movd xmm3, ebp
movss dword [rsp + 0x28], xmm6
cvtdq2ps xmm3, xmm3
movss dword [rsp + 0x20], xmm6
call fcn.18006e900
mov edx, 2
mov rcx, r14
lea r8d, [rdx + 0x3e]
call fcn.180070900
mov r15, qword [rsp + 0xb0]
mov rbp, qword [rsp + 0xe0]
test eax, eax
je 0x1801044c0
mov edx, 2
mov rcx, r14
lea r8d, [rdx + 0x3d]
call fcn.180070900
test eax, eax
jne 0x1801044c0
lea edx, [rax + 2]
mov rcx, r14
lea r8d, [rax + 0x48]
call fcn.180070900
test eax, eax
jne 0x1801044c0
lea edx, [rax + 2]
mov rcx, r14
lea r8d, [rax + 0x47]
call fcn.180070900
mov edx, 2
mov rcx, r14
lea r8d, [rdx + 0x45]
call fcn.180070900
test eax, eax
jne 0x1801044f5
lea edx, [rax + 2]
mov rcx, r14
lea r8d, [rax + 0x48]
call fcn.180070900
test eax, eax
jne 0x1801044f5
xorps xmm2, xmm2
mov edx, edi
mov rcx, r13
call fcn.180070ff0
mov r14, qword [rsp + 0xb8]
mov r13, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xf0]
movaps xmm6, xmmword [rsp + 0xa0]
add rsp, 0xd0
pop rbx
ret
call fcn.18001a360
mov rcx, qword [0x180217fa8]
movabs rdx, 0xb6997a7eb3f5c8c0
call fcn.18001a3e0
mov rax, qword [0x180217fa8]
mov r8b, 1
mov rcx, qword [rax]
mov ebx, dword [rcx]
mov edx, ebx
movabs rcx, 0x89f149b6131e57da
call fcn.180070ca0
mov r9b, 1
mov edx, ebx
movzx r8d, r9b
movabs rcx, 0x1a9205c1b9ee827f
add rsp, 0xd0
pop rbx
jmp fcn.180071090