Function at 0x1800688d0
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
sub rsp, 0x98
cmp byte [0x18020d8a6], 0
je 0x180068ba0
mov rcx, qword [0x1801a4200]
mov qword [rax + 8], rbx
mov qword [rax - 8], rdi
movaps xmmword [rax - 0x18], xmm6
mov byte [reloc.WS2_32.dll_accept], 1
call fcn.180014080
mov rcx, qword [0x1801a4200]
lea rdx, str.GADGET_PARACHUTE
mov eax, dword [rcx + 8]
mov qword [rcx + rax*8 + 0x130], rdx
movabs rdx, 0xd24d37cc275948cc
inc dword [rcx + 8]
mov rcx, qword [0x1801a4200]
call fcn.180014100
mov rcx, qword [0x1801a4200]
mov rax, qword [rcx]
mov ebx, dword [rax]
call fcn.180014080
mov rcx, qword [0x1801a4200]
movabs rdi, 0xd80958fc74e988a6
mov rdx, rdi
call fcn.180014100
mov rax, qword [0x1801a4200]
mov r9b, 1
mov r8d, 1
mov edx, ebx
mov rcx, qword [rax]
mov ecx, dword [rcx]
call fcn.180021690
mov rcx, qword [0x1801a4200]
call fcn.180014080
mov rcx, qword [0x1801a4200]
mov rdx, rdi
call fcn.180014100
mov rax, qword [0x1801a4200]
xorps xmm6, xmm6
movss xmm0, dword [0x1801583ec]
movss dword [rsp + 0x70], xmm6
movss dword [rsp + 0x68], xmm6
mov rcx, qword [rax]
movss dword [rsp + 0x60], xmm6
movss dword [rsp + 0x58], xmm6
movss dword [rsp + 0x50], xmm6
mov edx, dword [rcx]
movss dword [rsp + 0x48], xmm6
movss dword [rsp + 0x40], xmm6
movss dword [rsp + 0x38], xmm0
movss dword [rsp + 0x30], xmm6
movss dword [rsp + 0x28], xmm6
call fcn.18006c9a0
mov rcx, qword [0x1801a4200]
call fcn.180014080
mov rcx, qword [0x1801a4200]
mov rdx, rdi
call fcn.180014100
mov rax, qword [0x1801a4200]
mov rcx, qword [rax]
mov ecx, dword [rcx]
call fcn.18006c930
test eax, eax
je 0x180068b88
mov rcx, qword [0x1801a4200]
call fcn.180014080
mov rcx, qword [0x1801a4200]
mov rdx, rdi
call fcn.180014100
mov rcx, qword [0x1801a4200]
mov rax, qword [rcx]
mov ebx, dword [rax]
call fcn.180014080
mov rdx, qword [0x1801a4200]
mov qword [rsp + 0xa8], 0
mov dword [rsp + 0xa8], ebx
mov rax, qword [rsp + 0xa8]
mov ecx, dword [rdx + 8]
mov qword [rdx + rcx*8 + 0x130], rax
inc dword [rdx + 8]
movabs rdx, 0x47e4e977581c5b55
mov rcx, qword [0x1801a4200]
call fcn.180014100
mov rax, qword [0x1801a4200]
mov rcx, qword [rax]
cmp dword [rcx], 0
jne 0x180068b88
mov ecx, reloc.WS2_32.dll_recv
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180068af4
mov rcx, qword [0x1801a4200]
call fcn.180014080
mov rcx, qword [0x1801a4200]
mov rdx, rdi
call fcn.180014100
mov rax, qword [0x1801a4200]
xorps xmm3, xmm3
movss xmm2, dword [0x180158530]
xorps xmm1, xmm1
mov rcx, qword [rax]
mov ecx, dword [rcx]
call fcn.1800c8030
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180068b3e
mov rcx, qword [0x1801a4200]
call fcn.180014080
mov rcx, qword [0x1801a4200]
mov rdx, rdi
call fcn.180014100
mov rax, qword [0x1801a4200]
xorps xmm3, xmm3
movss xmm2, dword [0x180158658]
xorps xmm1, xmm1
mov rcx, qword [rax]
mov ecx, dword [rcx]
call fcn.1800c8030
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180068b88
mov rcx, qword [0x1801a4200]
call fcn.180014080
mov rcx, qword [0x1801a4200]
mov rdx, rdi
call fcn.180014100
mov rax, qword [0x1801a4200]
xorps xmm2, xmm2
movss xmm3, dword [0x180158530]
xorps xmm1, xmm1
mov rcx, qword [rax]
mov ecx, dword [rcx]
call fcn.1800c8030
mov rdi, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xa0]
movaps xmm6, xmmword [rsp + 0x80]
add rsp, 0x98
ret