Function at 0x14006b710
Capabilities:
Encode data using xor
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x60
movaps xmmword [rsp + 0x50], xmm6
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
xor ebp, ebp
mov eax, dword [rdx + rcx]
cmp dword [0x14038a328], eax
jle 0x14006b90c
lea rcx, [0x14038a328]
call fcn.140261dc4
cmp dword [0x14038a328], 0xffffffff
jne 0x14006b90c
movsd xmm0, qword [str.g_S_TfnI_DiQ_A]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x14034b948]
mov dword [rsp + 0x48], eax
movzx eax, word [0x14034b94c]
mov word [rsp + 0x4c], ax
cmp byte [0x14034b94d], bpl
je 0x14006b8ec
mov ecx, ebp
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x14006b8b1
movdqa xmm4, xmmword [0x14034fa50]
mov eax, 4
movd xmm6, eax
mov eax, Ordinal_32
movd xmm5, eax
movdqa xmm2, xmmword [0x14034eac0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14034eb00]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14034eb80]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x14034ebb0]
movd xmm0, dword [str.g_S_TfnI_DiQ_A]
pxor xmm2, xmm0
movd dword [rsp + 0x40], xmm2
movdqa xmm3, xmmword [0x14034ead0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14034eb00]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14034eb80]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x14034ebb0]
movd xmm0, dword [rsp + 0x44]
pxor xmm2, xmm0
movd dword [rsp + 0x44], xmm2
mov ecx, 8
mov eax, ecx
lea r8, [rsp + 0x40]
add r8, rax
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x34
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0xe
jl 0x14006b8c0
xor edx, edx
lea rcx, [rsp + 0x40]
call qword [sym.imp.USER32.dll_FindWindowA]
mov qword [0x14038a320], rax
lea rcx, [0x14038a328]
call fcn.140261d64
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rdi, rax
mov ecx, reloc.WLDAP32.dll_Ordinal_45
call qword [sym.imp.USER32.dll_GetKeyState]
movzx ebx, ax
shr ebx, 0xf
and bl, 1
cmp byte [0x14038a111], bpl
jne 0x14006b93b
test bl, bl
je 0x14006b93b
mov sil, 1
jmp 0x14006b93e
xor sil, sil
mov rcx, qword [0x140389888]
cmp rdi, rcx
je 0x14006b9b9
cmp rdi, qword [0x140389870]
je 0x14006b9b9
xor dil, dil
cmp byte [0x140389881], dil
je 0x14006b9bc
mov edx, 0xffffffec
mov r8d, 0x80080
call qword [sym.imp.USER32.dll_SetWindowLongA]
mov dword [rsp + 0x28], 1
mov eax, dword [0x140389894]
mov dword [rsp + 0x20], eax
mov r9d, dword [0x140389890]
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x140389888]
call qword [sym.imp.USER32.dll_MoveWindow]
mov byte [0x140389881], dil
mov edx, 5
mov rcx, qword [0x14038a320]
call qword [sym.imp.USER32.dll_ShowWindow]
jmp 0x14006bb73
mov dil, 1
test sil, sil
je 0x14006baba
test dil, dil
je 0x14006bab3
cmp byte [0x140389881], bpl
sete al
mov byte [0x140389881], al
cmp byte [0x140389880], bpl
sete byte [0x140389880]
mov edx, 0xffffffec
mov r8d, 0x80080
test al, al
je 0x14006ba4a
call qword [sym.imp.USER32.dll_SetWindowLongA]
mov dword [rsp + 0x28], 1
mov eax, dword [0x14038987c]
mov dword [rsp + 0x20], eax
mov r9d, dword [0x140389878]
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x140389888]
call qword [sym.imp.USER32.dll_MoveWindow]
xor edx, edx
mov rcx, qword [0x14038a320]
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [0x140389888]
call qword [sym.imp.USER32.dll_SetForegroundWindow]
jmp 0x14006baac
call qword [sym.imp.USER32.dll_SetWindowLongA]
mov dword [rsp + 0x28], 1
mov eax, dword [0x140389894]
mov dword [rsp + 0x20], eax
mov r9d, dword [0x140389890]
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x140389888]
call qword [sym.imp.USER32.dll_MoveWindow]
mov rcx, qword [0x140389870]
call qword [sym.imp.USER32.dll_SetForegroundWindow]
mov edx, 5
mov rcx, qword [0x140389870]
call qword [sym.imp.USER32.dll_ShowWindow]
mov edx, 5
mov rcx, qword [0x14038a320]
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [0x140389888]
mov byte [0x14038a111], 1
test dil, dil
je 0x14006bb7a
test sil, sil
jne 0x14006bb7a
cmp byte [0x140389881], bpl
jne 0x14006bbb7
mov edx, 9
call qword [sym.imp.USER32.dll_ShowWindow]
mov dword [rsp + 0x30], 3
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], ebp
xor r9d, r9d
xor r8d, r8d
lea rdx, [r9 - 1]
mov rcx, qword [0x140389888]
call qword [sym.imp.USER32.dll_SetWindowPos]
mov dword [rsp + 0x30], 3
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], ebp
xor r9d, r9d
xor r8d, r8d
lea rdx, [r9 - 2]
mov rcx, qword [0x140389888]
call qword [sym.imp.USER32.dll_SetWindowPos]
mov dword [rsp + 0x30], 3
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], ebp
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [0x140389888]
mov rcx, qword [0x140389870]
call qword [sym.imp.USER32.dll_SetWindowPos]
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0xf]
mov rcx, qword [0x140389888]
call qword [sym.imp.USER32.dll_SendMessageA]
mov rcx, qword [0x140389888]
cmp byte [0x140389881], bpl
jne 0x14006bb8f
mov rdx, rcx
mov rcx, qword [0x140389870]
jmp 0x14006bb9b
test dil, dil
jne 0x14006bbb7
mov rdx, qword [0x140389870]
mov dword [rsp + 0x30], 3
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], ebp
xor r9d, r9d
xor r8d, r8d
call qword [sym.imp.USER32.dll_SetWindowPos]
test bl, bl
jne 0x14006bbc2
mov byte [0x14038a111], bpl
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x80]
movaps xmm6, xmmword [rsp + 0x50]
add rsp, 0x60
pop rdi
ret