Function at 0x1401378f0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x238
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x1a0], xmm6
mov qword [rbp + 0x198], 0xfffffffffffffffe
mov qword [rbp + 0x158], rcx
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140137e63
mov qword [rbp + 0x190], rdx
mov rdi, qword [rax + 0x30]
add rax, 0x30
mov qword [rbp + 0xa8], rax
mov dword [rbp + 0xb0], 0
lea rcx, [rbp + 0x118]
lea rdx, [rbp + 0xb0]
lea r8, [rbp + 0x160]
call fcn.140139490
xorps xmm6, xmm6
movaps xmmword [rbp + 0x160], xmm6
mov qword [rbp + 0x170], 0
mov qword [rbp + 0x178], reloc.WS2_32.dll_ntohs
jmp 0x1401379b9
movaps xmmword [rbp - 0x20], xmm6
mov qword [rbp - 0x10], 0
mov qword [rbp - 8], reloc.WS2_32.dll_ntohs
mov rcx, qword [rbp + 0x190]
mov edx, 0xf4e14892
lea r8, [rbp - 0x20]
call fcn.1401376e0
cmp rdi, qword [rbp + 0xa8]
je 0x140137dae
mov rax, rdi
mov rdi, qword [rdi]
mov r15, qword [rax + 0x10]
test r15, r15
je 0x140137990
mov r13d, dword [rax + 0x20]
test r13d, r13d
je 0x140137b30
movzx r8d, word [rax + 0x38]
test r8, r8
je 0x1401379b9
cmp word [rax + 0x3a], 0
je 0x1401379b9
shr r8, 1
mov rdx, qword [rax + 0x40]
movaps xmmword [rbp + 0x90], xmm6
movaps xmmword [rbp + 0x80], xmm6
lea rcx, [rbp + 0x80]
call fcn.14011e520
lea rcx, [rbp + 0xb0]
lea rdx, [rbp + 0x80]
call fcn.14013fa60
mov rax, qword [rbp + 0x178]
cmp rax, 0x10
jb 0x140137a6c
mov rcx, qword [rbp + 0x160]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140137a67
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x140138005
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.140141034
movups xmm0, xmmword [rbp + 0xb0]
movups xmm1, xmmword [rbp + 0xc0]
movaps xmmword [rbp + 0x170], xmm1
movaps xmmword [rbp + 0x160], xmm0
cmp qword [rbp + 0x170], 0
je 0x140137b5d
lea rcx, [rbp + 0x160]
call fcn.14013fe00
cmp qword [rbp + 0x178], 0x10
lea r14, [rbp + 0x160]
jb 0x140137aba
mov r14, qword [rbp + 0x160]
movzx eax, byte [r14]
test al, al
je 0x140137b8b
lea rcx, [r14 + 1]
mov r12d, 0x811c9dc5
movsx eax, al
imul r12d, r12d, 0x1000193
xor r12d, eax
movzx eax, byte [rcx]
inc rcx
test al, al
jne 0x140137ad0
mov dword [rbp + 0x18c], r12d
test r12d, r12d
jne 0x140137b9b
movaps xmmword [rbp + 0x40], xmm6
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x58], reloc.WS2_32.dll_ntohs
mov rcx, qword [rbp + 0x190]
mov edx, 0xd77995a5
lea r8, [rbp + 0x40]
call fcn.1401376e0
jmp 0x140137d59
movaps xmmword [rbp], xmm6
mov qword [rbp + 0x10], 0
mov qword [rbp + 0x18], reloc.WS2_32.dll_ntohs
mov rcx, qword [rbp + 0x190]
mov edx, 0xb8ce6216
mov r8, rbp
call fcn.1401376e0
jmp 0x1401379b9
movaps xmmword [rbp + 0x20], xmm6
mov qword [rbp + 0x30], 0
mov qword [rbp + 0x38], reloc.WS2_32.dll_ntohs
mov rcx, qword [rbp + 0x190]
mov edx, 0x92280408
lea r8, [rbp + 0x20]
call fcn.1401376e0
jmp 0x140137d59
mov dword [rbp + 0x18c], 0x811c9dc5
mov r12d, 0x811c9dc5
movaps xmmword [rbp + 0xf0], xmm6
movaps xmmword [rbp + 0x100], xmm6
mov rbx, qword [rbp + 0x170]
test rbx, rbx
js 0x14013800a
cmp rbx, 0xf
ja 0x140137bde
mov qword [rbp + 0x100], rbx
mov qword [rbp + 0x108], reloc.WS2_32.dll_ntohs
movups xmm0, xmmword [r14]
movaps xmmword [rbp + 0xf0], xmm0
jmp 0x140137c4f
mov qword [rbp + 0x108], reloc.WS2_32.dll_ntohs
mov rsi, rbx
or rsi, 0xf
cmp rsi, 0x17
mov eax, reloc.WS2_32.dll_shutdown
cmovb rsi, rax
cmp rsi, 0xfff
jb 0x140137c20
lea rcx, [rsi + 0x28]
call fcn.140140ff0
mov rcx, rax
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140137c29
lea rcx, [rsi + 1]
call fcn.140140ff0
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0x100], rbx
mov qword [rbp + 0x108], rsi
inc rbx
mov rcx, rax
mov rdx, r14
mov r8, rbx
call fcn.14021e3b0
lea rax, [rbp + 0xf0]
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0xb0]
mov edx, r12d
mov r8, r15
mov r9d, r13d
call fcn.140138100
lea rcx, [rbp + 0x118]
lea rdx, [rbp - 0x50]
lea r8, [rbp + 0x18c]
call fcn.140139680
mov rsi, qword [rbp - 0x50]
lea rax, [rsi + 0x18]
mov ecx, dword [rbp + 0xc0]
mov dword [rsi + 0x28], ecx
movups xmm0, xmmword [rbp + 0xb0]
movups xmmword [rsi + 0x18], xmm0
lea rcx, [rbp + 0xb0]
cmp rax, rcx
je 0x140137d09
cmp qword [rbp + 0xe0], 0x10
lea r9, [rbp + 0xc8]
jb 0x140137cc7
mov r9, qword [rbp + 0xc8]
lea r14, [rsi + 0x30]
mov rbx, qword [rbp + 0xd8]
mov rax, qword [rsi + 0x48]
cmp rax, rbx
jae 0x140137ce8
mov rcx, r14
mov rdx, rbx
call fcn.140007bd0
jmp 0x140137d09
cmp rax, 0x10
jb 0x140137cf2
mov r14, qword [rsi + 0x30]
mov qword [rsi + 0x40], rbx
mov rcx, r14
mov rdx, r9
mov r8, rbx
call fcn.14021e3b0
mov byte [r14 + rbx], 0
mov rax, qword [rbp + 0xe8]
mov qword [rsi + 0x50], rax
mov rax, qword [rbp + 0xe0]
cmp rax, 0x10
jb 0x140137d59
mov rcx, qword [rbp + 0xc8]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140137d54
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x140138005
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.140141034
mov rax, qword [rbp + 0x98]
cmp rax, 8
jb 0x1401379b9
mov rcx, qword [rbp + 0x80]
lea rdx, [rax + rax]
add rdx, 2
cmp rdx, 0x1000
jb 0x140137da4
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x140138005
add rax, rax
add rax, 0x29
mov rdx, rax
mov rcx, rbx
call fcn.140141034
jmp 0x1401379b9
mov r14, qword [rbp + 0x128]
test r14, r14
je 0x140137e92
mov rax, qword [rbp + 0x158]
add rax, 0x28
lea rcx, [rbp + 0x118]
cmp rax, rcx
je 0x140137ebe
mov rdx, qword [rbp + 0x158]
movss xmm0, dword [rdx + 0x28]
movss xmm1, dword [rbp + 0x118]
movss dword [rdx + 0x28], xmm1
movss dword [rbp + 0x118], xmm0
mov rax, qword [rdx + 0x30]
mov rcx, qword [rbp + 0x120]
mov qword [rdx + 0x30], rcx
mov qword [rbp + 0x120], rax
mov rax, qword [rdx + 0x38]
mov qword [rdx + 0x38], r14
mov qword [rbp + 0x128], rax
movups xmm0, xmmword [rbp + 0x130]
movups xmm1, xmmword [rdx + 0x40]
movups xmmword [rdx + 0x40], xmm0
movups xmmword [rbp + 0x130], xmm1
mov rax, qword [rdx + 0x50]
mov rcx, qword [rbp + 0x140]
mov qword [rdx + 0x50], rcx
mov qword [rbp + 0x140], rax
movups xmm0, xmmword [rbp + 0x148]
movups xmm1, xmmword [rdx + 0x58]
movups xmmword [rdx + 0x58], xmm0
movups xmmword [rbp + 0x148], xmm1
jmp 0x140137ebe
xorps xmm0, xmm0
movaps xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], 0
mov qword [rbp - 0x28], reloc.WS2_32.dll_ntohs
lea r8, [rbp - 0x40]
mov rcx, rdx
mov edx, 0x372a2251
call fcn.1401376e0
xor esi, esi
jmp 0x140137f8a
xorps xmm0, xmm0
movaps xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x78], reloc.WS2_32.dll_ntohs
lea r8, [rbp + 0x60]
mov rcx, qword [rbp + 0x190]
mov edx, 0x6fe3d519
call fcn.1401376e0
mov rax, qword [rbp + 0x178]
cmp rax, 0x10
jb 0x140137f03
mov rcx, qword [rbp + 0x160]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140137efe
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x140138005
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.140141034
mov rcx, qword [rbp + 0x130]
test rcx, rcx
je 0x140137f58
mov rdx, qword [rbp + 0x140]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x140137f3e
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x140138005
add rdx, 0x27
mov rcx, rax
lea rsi, [rbp + 0x130]
call fcn.140141034
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], 0
mov rax, qword [rbp + 0x120]
mov rcx, qword [rax + 8]
mov qword [rcx], 0
mov rsi, qword [rax]
test rsi, rsi
jne 0x140137fca
test r14, r14
setne sil
mov rcx, qword [rbp + 0x120]
mov edx, 0x58
call fcn.140141034
mov eax, esi
movaps xmm6, xmmword [rbp + 0x1a0]
add rsp, 0x238
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.140141034
mov edx, 0x58
mov rcx, rsi
call fcn.140141034
mov rsi, rbx
test rbx, rbx
je 0x140137f72
mov rbx, qword [rsi]
mov rax, qword [rsi + 0x48]
cmp rax, 0x10
jb 0x140137fb5
mov rcx, qword [rsi + 0x30]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140137fb0
mov rdi, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rdi
cmp rcx, 0x20
jae 0x140138005
add rax, 0x28
mov rdx, rax
mov rcx, rdi
jmp 0x140137fb0
call fcn.140231990
call fcn.1400026a0
int3