Function at 0x140097cb0
Capabilities:
Encode data using xor
Hash data using fnv
Log keystrokes via polling
Open clipboard
Read clipboard data

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x58]
sub rsp, 0x120
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
mov rax, qword [0x14011c358]
xor rax, rsp
mov qword [rbp - 0x28], rax
mov byte [rsp + 0x30], r9b
mov r15, r8
mov rsi, rdx
mov r13, rcx
mov qword [rsp + 0x68], rdx
xor r14d, r14d
mov dword [rsp + 0x34], r14d
call fcn.14004a8d0
mov qword [rsp + 0x40], rax
call fcn.14004aae0
nop
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x48], xmm1
mov qword [rsp + 0x58], r14
mov dword [rsp + 0x34], 1
mov r8, rsi
xor edx, edx
lea rcx, [rsp + 0x48]
call fcn.140069900
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
sub rax, rdx
sar rax, 5
test rax, rax
je 0x140098753
lea rcx, [rbp - 0x48]
call fcn.140069f20
nop
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x140097dc3
lea r8, [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
call fcn.140069870
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x140097db0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140098759
call fcn.14009a20c
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r14
lea rdx, [rbp - 0x48]
cmp qword [rbp - 0x30], 0x10
cmovae rdx, qword [rbp - 0x48]
movss xmm9, dword [0x1400cde74]
movss dword [rsp + 0x20], xmm9
xor r9d, r9d
xor r8d, r8d
lea rcx, [rsp + 0x60]
call fcn.140048390
movss xmm0, dword [r13 + 0x21c8]
subss xmm0, dword [0x1400cde38]
movss dword [r13 + 0x21c8], xmm0
movss xmm2, dword [rsp + 0x64]
addss xmm2, dword [0x1400cdf20]
lea r12, [r13 + 0x21c4]
addss xmm2, dword [r12 + 4]
movss xmm3, dword [r12]
xorps xmm8, xmm8
addss xmm3, xmm8
movss dword [rsp + 0x70], xmm3
movss dword [rsp + 0x74], xmm2
movss xmm6, dword [0x1400cde50]
movss xmm7, dword [0x1400d7ac4]
cmp dword [r13 + 0x1ff0], 0
jne 0x140097efd
addss xmm2, xmm6
addss xmm3, xmm7
movaps xmm0, xmm3
unpcklps xmm0, xmm2
movq r8, xmm0
mov rdx, qword [rsp + 0x70]
mov rcx, r13
call fcn.140095e90
test al, al
je 0x140097ef1
xor edx, edx
xor ecx, ecx
call fcn.14004bb80
test al, al
je 0x140097ef1
mov rbx, 0xffffffffffffffff
mov rax, rbx
cmp qword [rsi + 0x18], 0x10
jb 0x140097eb3
mov rcx, qword [rsi]
inc rax
cmp byte [rcx + rax], 0
jne 0x140097ea5
mov r8, rcx
jmp 0x140097ebf
inc rax
cmp byte [rsi + rax], 0
jne 0x140097eb3
mov r8, rsi
mov edi, 0x811c9dc5
mov edx, edi
mov r9d, eax
mov rcx, r14
test eax, eax
je 0x140097ee5
movzx eax, byte [r8 + rcx]
xor eax, edx
imul edx, eax, 0x1000193
inc rcx
cmp rcx, r9
jb 0x140097ed0
mov dword [r13 + 0x1ff0], edx
jmp 0x140097fa5
movss xmm2, dword [rsp + 0x74]
movss xmm3, dword [rsp + 0x70]
mov rbx, 0xffffffffffffffff
mov rax, rbx
cmp qword [rsi + 0x18], 0x10
jb 0x140097f20
mov rcx, qword [rsi]
inc rax
cmp byte [rcx + rax], 0
jne 0x140097f11
mov r8, rcx
jmp 0x140097f2c
inc rax
cmp byte [rsi + rax], 0
jne 0x140097f20
mov r8, rsi
mov edi, 0x811c9dc5
mov edx, edi
mov r9d, eax
mov rcx, r14
test eax, eax
je 0x140097f55
nop dword [rax]
movzx eax, byte [r8 + rcx]
xor eax, edx
imul edx, eax, 0x1000193
inc rcx
cmp rcx, r9
jb 0x140097f40
cmp dword [r13 + 0x1ff0], edx
jne 0x140097fa5
movaps xmm1, xmm2
addss xmm1, xmm6
movaps xmm0, xmm3
addss xmm0, xmm7
unpcklps xmm0, xmm1
movq r8, xmm0
movaps xmm1, xmm3
unpcklps xmm1, xmm2
movsd qword [rsp + 0x70], xmm1
movq rdx, xmm1
mov rcx, r13
call fcn.140095e90
test al, al
jne 0x140097fa5
xor edx, edx
xor ecx, ecx
call fcn.14004bb80
test al, al
je 0x140097fa5
mov dword [r13 + 0x1ff0], r14d
mov rax, rbx
cmp qword [rsi + 0x18], 0x10
jb 0x140097fc0
mov rcx, qword [rsi]
inc rax
cmp byte [rcx + rax], 0
jne 0x140097fb2
mov r8, rcx
jmp 0x140097fcc
inc rax
cmp byte [rsi + rax], 0
jne 0x140097fc0
mov r8, rsi
mov edx, eax
mov rcx, r14
test eax, eax
je 0x140097ff5
nop word [rax + rax]
movzx eax, byte [rcx + r8]
xor eax, edi
imul edi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x140097fe0
cmp dword [r13 + 0x1ff0], edi
jne 0x140098321
xor edx, edx
lea ecx, [rdx + 1]
call fcn.14004bb80
test al, al
je 0x14009818e
movss xmm3, dword [rsp + 0x74]
movaps xmm2, xmm3
addss xmm2, xmm6
movss xmm1, dword [rsp + 0x70]
movaps xmm0, xmm1
addss xmm0, xmm7
unpcklps xmm0, xmm2
movq r8, xmm0
unpcklps xmm1, xmm3
movsd qword [rsp + 0x70], xmm1
movq rdx, xmm1
mov rcx, r13
call fcn.140095e90
test al, al
je 0x14009818e
mov r12, r14
xor ecx, ecx
call qword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x140098071
mov ecx, 1
call qword [sym.imp.USER32.dll_GetClipboardData]
mov r12, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x70], r14
inc rbx
cmp byte [r12 + rbx], 0
jne 0x140098081
movabs rdi, 0x7fffffffffffffff
cmp rbx, rdi
ja 0x14009875f
cmp rbx, 0x10
jae 0x1400980cf
mov qword [rbp - 0x78], rbx
mov qword [rbp - 0x70], recv
mov r8, rbx
mov rdx, r12
lea rcx, [rsp + 0x78]
call fcn.14009c440
mov rdi, qword [rbp - 0x70]
mov rbx, qword [rbp - 0x78]
mov r14, qword [rsp + 0x78]
jmp 0x14009811b
mov rax, rbx
or rax, 0xf
cmp rax, rdi
ja 0x1400980ea
mov rdi, rax
mov ecx, socket
cmp rax, rcx
cmovb rdi, rcx
lea rdx, [rdi + 1]
lea rcx, [rsp + 0x78]
call fcn.140069810
mov r14, rax
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x78], rbx
mov qword [rbp - 0x70], rdi
mov r8, rbx
mov rdx, r12
mov rcx, rax
call fcn.14009c440
mov byte [r14 + rbx], 0
lea rax, [rsp + 0x78]
cmp r15, rax
je 0x140098146
lea rdx, [rsp + 0x78]
cmp rdi, 0x10
cmovae rdx, r14
mov r8, rbx
mov rcx, r15
call fcn.14008a2b0
mov rdi, qword [rbp - 0x70]
mov r14, qword [rsp + 0x78]
call qword [sym.imp.USER32.dll_CloseClipboard]
nop
cmp rdi, 0x10
jb 0x140098184
lea rdx, [rdi + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x14009817c
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009876b
mov rcx, r14
call fcn.14009a20c
xor r14d, r14d
lea r12, [r13 + 0x21c4]
mov rax, qword [0x14011dce8]
mov ecx, dword [rax + 0x68]
test ecx, ecx
js 0x1400981db
mov dl, 1
call fcn.14004bac0
test al, al
je 0x1400981db
mov rax, qword [r15 + 0x10]
test rax, rax
je 0x140098321
lea rcx, [rax - 1]
cmp rax, rcx
jb 0x140098765
mov rax, r15
cmp qword [r15 + 0x18], 0x10
jb 0x1400981ce
mov rax, qword [r15]
mov qword [r15 + 0x10], rcx
mov byte [rax + rcx], 0
jmp 0x140098321
call fcn.14004ac20
cmp dword [rax + 0x1550], 0
jle 0x140098321
mov ecx, 8
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x140098321
call fcn.14004ac20
cmp dword [rax + 0x1550], 0
jle 0x1400982a8
xor edi, edi
movzx ebx, byte [rsp + 0x30]
nop word [rax + rax]
call fcn.14004ac20
mov rax, qword [rax + 0x1558]
cmp word [rdi + rax], 9
jne 0x140098241
call fcn.14004ac20
cmp byte [rax + 0x141], 0
jne 0x14009828f
call fcn.14004ac20
mov rax, qword [rax + 0x1558]
movzx r9d, byte [rdi + rax]
mov rcx, qword [r15 + 0x10]
mov rdx, qword [r15 + 0x18]
cmp rcx, rdx
jae 0x14009827e
lea rax, [rcx + 1]
mov qword [r15 + 0x10], rax
mov rax, r15
cmp rdx, 0x10
jb 0x140098273
mov rax, qword [r15]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14009828f
movzx r8d, bl
mov edx, 1
mov rcx, r15
call fcn.140072d10
inc r14d
add rdi, 2
call fcn.14004ac20
cmp r14d, dword [rax + 0x1550]
jl 0x140098220
call fcn.14004ac20
mov rbx, rax
mov ecx, dword [rax + 0x1554]
xor r14d, r14d
test ecx, ecx
jns 0x14009831a
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
mov edi, r14d
test eax, eax
cmovg edi, eax
cmp edi, ecx
jle 0x14009831a
movsxd rcx, edi
add rcx, rcx
call fcn.14004c7d0
mov r14, rax
mov rdx, qword [rbx + 0x1558]
test rdx, rdx
je 0x14009830a
movsxd r8, dword [rbx + 0x1550]
add r8, r8
mov rcx, rax
call fcn.14009c440
mov rcx, qword [rbx + 0x1558]
call fcn.14004c7f0
mov qword [rbx + 0x1558], r14
mov dword [rbx + 0x1554], edi
xor r14d, r14d
mov dword [rbx + 0x1550], r14d
lea rbx, [rbp - 0x48]
cmp qword [rbp - 0x30], 0x10
cmovae rbx, qword [rbp - 0x48]
mov rax, qword [r13 + 0x30]
movabs rcx, 0xcd3ac65e44f721b1
and rax, rcx
add rax, rax
mov rdx, qword [r13 + 0x18]
mov rcx, qword [rdx + rax*8 + 8]
cmp rcx, qword [r13 + 8]
je 0x140098746
mov rax, qword [rdx + rax*8]
cmp dword [rcx + 0x10], 4
je 0x140098373
cmp rcx, rax
je 0x140098746
mov rcx, qword [rcx + 8]
cmp dword [rcx + 0x10], 4
jne 0x140098360
add rcx, 0x14
call fcn.140049090
mov qword [rsp + 0x20], r14
mov r9, rbx
mov r8d, eax
mov rdx, r12
mov r14, qword [rsp + 0x40]
mov rcx, r14
call fcn.140059650
mov rax, qword [r13 + 0x30]
movabs rcx, 0xed202287f403d086
and rax, rcx
add rax, rax
mov rdx, qword [r13 + 0x18]
mov rcx, qword [rdx + rax*8 + 8]
cmp rcx, qword [r13 + 8]
je 0x140098739
mov rax, qword [rdx + rax*8]
cmp dword [rcx + 0x10], 3
je 0x1400983e3
nop dword [rax + rax]
cmp rcx, rax
je 0x140098739
mov rcx, qword [rcx + 8]
cmp dword [rcx + 0x10], 3
jne 0x1400983d0
add rcx, 0x14
call fcn.140049090
movss xmm1, dword [rsp + 0x74]
addss xmm1, xmm6
movss xmm0, dword [rsp + 0x70]
addss xmm0, xmm7
movss dword [rsp + 0x34], xmm0
movss dword [rsp + 0x38], xmm1
mov dword [rsp + 0x28], recv
movss dword [rsp + 0x20], xmm8
mov r9d, eax
lea r8, [rsp + 0x34]
lea rdx, [rsp + 0x70]
mov rcx, r14
call fcn.1400594b0
mov rax, qword [r13 + 0x30]
movabs rcx, 0xad2aca7747985764
and rax, rcx
add rax, rax
mov rdx, qword [r13 + 0x18]
mov rcx, qword [rdx + rax*8 + 8]
cmp rcx, qword [r13 + 8]
je 0x14009878a
mov rax, qword [rdx + rax*8]
cmp dword [rcx + 0x10], 1
je 0x140098474
cmp rcx, rax
je 0x14009878a
mov rcx, qword [rcx + 8]
cmp dword [rcx + 0x10], 1
jne 0x140098461
add rcx, 0x14
call fcn.140049090
movss xmm4, dword [rsp + 0x74]
movaps xmm2, xmm4
addss xmm2, xmm6
movss xmm3, dword [0x1400cde1c]
subss xmm2, xmm3
movss xmm1, dword [rsp + 0x70]
movaps xmm0, xmm1
addss xmm0, xmm7
subss xmm0, xmm3
movss dword [rsp + 0x34], xmm0
movss dword [rsp + 0x38], xmm2
addss xmm4, xmm3
addss xmm1, xmm3
movss dword [rsp + 0x40], xmm1
movss dword [rsp + 0x44], xmm4
mov dword [rsp + 0x28], recv
movss dword [rsp + 0x20], xmm8
mov r9d, eax
lea r8, [rsp + 0x34]
lea rdx, [rsp + 0x40]
mov rcx, r14
call fcn.1400594b0
mov rdx, r15
lea rcx, [rbp - 0x68]
call fcn.140069f20
nop
xor r15d, r15d
cmp byte [rsp + 0x30], r15b
je 0x140098531
mov edx, r15d
cmp qword [rbp - 0x58], rdx
jbe 0x140098531
mov ecx, r15d
nop
lea rax, [rbp - 0x68]
cmp qword [rbp - 0x50], 0x10
cmovae rax, qword [rbp - 0x68]
mov byte [rcx + rax], 0x2a
inc edx
lea rcx, [rcx + 1]
movsxd rax, edx
cmp rax, qword [rbp - 0x58]
jb 0x140098510
lea rdi, [rbp - 0x68]
cmp qword [rbp - 0x50], 0x10
cmovae rdi, qword [rbp - 0x68]
mov rax, qword [r13 + 0x30]
movabs rcx, 0xcd3ac65e44f721b1
and rax, rcx
add rax, rax
mov rdx, qword [r13 + 0x18]
mov rcx, qword [rdx + rax*8 + 8]
cmp rcx, qword [r13 + 8]
je 0x14009877d
mov rax, qword [rdx + rax*8]
cmp dword [rcx + 0x10], 4
je 0x140098583
cmp rcx, rax
je 0x14009877d
mov rcx, qword [rcx + 8]
cmp dword [rcx + 0x10], 4
jne 0x140098570
add rcx, 0x14
call fcn.140049090
mov ebx, eax
lea rdx, [rbp - 0x68]
cmp qword [rbp - 0x50], 0x10
cmovae rdx, qword [rbp - 0x68]
movss dword [rsp + 0x20], xmm9
xor r9d, r9d
xor r8d, r8d
lea rcx, [rsp + 0x34]
call fcn.140048390
movss xmm0, dword [rax + 4]
mulss xmm0, dword [0x1400cddf4]
movss xmm1, dword [0x1400cde44]
subss xmm1, xmm0
addss xmm1, dword [rsp + 0x74]
movss xmm0, dword [rsp + 0x70]
addss xmm0, dword [0x1400cde3c]
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm1
mov qword [rsp + 0x20], r15
mov r9, rdi
mov r8d, ebx
lea rdx, [rsp + 0x40]
mov rcx, r14
call fcn.140059650
movss xmm0, dword [r13 + 0x21c8]
addss xmm0, dword [0x1400d7ac0]
movss dword [r13 + 0x21c8], xmm0
mov rdx, qword [rbp - 0x50]
cmp rdx, 0x10
jb 0x140098659
inc rdx
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140098654
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009876b
call fcn.14009a20c
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x50], recv
mov byte [rbp - 0x68], 0
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x1400986a4
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14009869f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140098771
call fcn.14009a20c
movdqa xmm0, xmmword [0x1400d2490]
movdqu xmmword [rbp - 0x38], xmm0
mov byte [rbp - 0x48], 0
mov rdx, qword [rsi + 0x18]
cmp rdx, 0x10
jb 0x1400986ef
inc rdx
mov rcx, qword [rsi]
cmp rdx, 0x1000
jb 0x1400986ea
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140098777
mov rcx, r8
call fcn.14009a20c
mov qword [rsi + 0x10], r15
mov qword [rsi + 0x18], recv
mov byte [rsi], 0
mov rcx, qword [rbp - 0x28]
xor rcx, rsp
call fcn.14009a320
lea r11, [rsp + 0x120]
mov rbx, qword [r11 + 0x58]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rcx, str.invalid_unordered_map_K__T__key
call fcn.1400989e0
int3
lea rcx, str.invalid_unordered_map_K__T__key
call fcn.1400989e0
nop
call fcn.1400889f0
nop
call fcn.1400aedac
int3
call fcn.14006abc0
int3
call fcn.1400889d0
int3
call fcn.1400aedac
nop
call fcn.1400aedac
nop
call fcn.1400aedac
nop
lea rcx, str.invalid_unordered_map_K__T__key
call fcn.1400989e0
nop
lea rcx, str.invalid_unordered_map_K__T__key
call fcn.1400989e0
int3