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

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1c0]
sub rsp, 0x2c0
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [rsp + 0x308], rbx
mov r12, rdx
lea rdi, [rcx + 0x40]
mov qword [rbp + 0x218], rdi
mov rcx, rdi
call fcn.1400702d8
test eax, eax
je 0x140038cae
mov ecx, eax
call fcn.1400707a4
nop
mov sil, 1
xor r15b, r15b
xor r14d, r14d
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], setsockopt
mov byte [rsp + 0x20], r14b
xor r8d, r8d
lea rdx, [0x1400dde21]
lea rcx, [rsp + 0x20]
call fcn.1400039a0
nop
mov ecx, dword [0x14013f988]
mov rax, qword gs:[0x58]
mov edx, 4
mov rcx, qword [rax + rcx*8]
mov eax, dword [rdx + rcx]
cmp dword [0x14013e8e0], eax
jg 0x140039032
cmp qword [r12 + 0x10], 0
jbe 0x140038fc3
movabs r11, 0xcbf29ce484222325
movabs r10, 0x100000001b3
mov rdi, r14
nop dword [rax]
movzx ebx, sil
mov rdx, r12
mov rcx, qword [r12 + 0x18]
cmp rcx, 0x10
jb 0x140038d46
mov rdx, qword [r12]
movzx eax, byte [0x1400e4238]
cmp byte [rdx + rdi], al
mov rax, r12
jne 0x140038f1a
test sil, sil
sete sil
mov byte [rbp + 0x200], sil
cmp rcx, 0x10
jb 0x140038d71
mov rax, qword [r12]
movzx r9d, byte [rax + rdi]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
cmp rcx, rdx
jae 0x140038da8
lea rax, [rcx + 1]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x20]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x20]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140038dcd
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rsp + 0x20]
call fcn.140033170
movabs r10, 0x100000001b3
movabs r11, 0xcbf29ce484222325
test bl, bl
jne 0x140038f8d
lea r8, [rsp + 0x20]
mov r13, qword [rsp + 0x20]
mov r9, qword [rsp + 0x38]
cmp r9, 0x10
cmovae r8, r13
mov rcx, r11
mov rdx, r14
mov r15, qword [rsp + 0x30]
test r15, r15
je 0x140038e14
nop dword [rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r10
inc rdx
cmp rdx, r15
jb 0x140038e00
and rcx, qword [0x14013e8d0]
mov rbx, rcx
add rbx, rbx
mov rax, qword [0x14013e8b8]
mov rbx, qword [rax + rbx*8]
add rcx, rcx
mov qword [rbp + 0x210], rcx
mov r14, qword [0x14013e8a8]
nop dword [rax]
cmp qword [rax + rcx*8], r14
jne 0x140038e4b
mov rax, r14
jmp 0x140038e53
mov rax, qword [rax + rcx*8 + 8]
mov rax, qword [rax]
cmp rbx, rax
je 0x140038eed
lea rdx, [rsp + 0x20]
cmp r9, 0x10
cmovae rdx, r13
lea rcx, [rbx + 0x10]
mov r13, qword [rbx + 0x28]
cmp r13, 0x10
jb 0x140038e7b
mov rcx, qword [rbx + 0x10]
mov rsi, qword [rbx + 0x20]
cmp rsi, r15
jne 0x140038e95
mov r8, rsi
call fcn.1400acec0
test eax, eax
je 0x140038ead
mov r9, qword [rsp + 0x38]
mov rbx, qword [rbx]
mov rax, qword [0x14013e8b8]
mov r13, qword [rsp + 0x20]
mov rcx, qword [rbp + 0x210]
jmp 0x140038e40
lea rdx, [rbx + 0x10]
cmp r13, 0x10
jb 0x140038eba
mov rdx, qword [rdx]
lea rcx, [rsp + 0x20]
cmp qword [rsp + 0x38], 0x10
mov r13, qword [rsp + 0x20]
cmovae rcx, r13
cmp r15, rsi
jne 0x140038edf
mov r8, r15
call fcn.1400acec0
test eax, eax
je 0x140038ee2
mov rbx, r14
cmp rbx, r14
je 0x140038eed
movzx ecx, byte [rbx + 0x30]
jmp 0x140038eef
xor ecx, ecx
call fcn.14004c2d0
mov r15b, 1
xor r14d, r14d
mov qword [rsp + 0x30], r14
lea rax, [rsp + 0x20]
cmp qword [rsp + 0x38], 0x10
cmovae rax, r13
mov byte [rax], r14b
movzx esi, byte [rbp + 0x200]
jmp 0x140038f8d
test sil, sil
je 0x140038f3b
cmp rcx, 0x10
jb 0x140038f29
mov rax, qword [r12]
movzx edx, byte [rax + rdi]
lea rcx, [0x14013f310]
call fcn.140038050
jmp 0x140038f8d
cmp rcx, 0x10
jb 0x140038f45
mov rax, qword [r12]
movzx r9d, byte [rax + rdi]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
cmp rcx, rdx
jae 0x140038f7c
lea rax, [rcx + 1]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x20]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x20]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140038f8d
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rsp + 0x20]
call fcn.140033170
inc rdi
cmp rdi, qword [r12 + 0x10]
movabs r10, 0x100000001b3
movabs r11, 0xcbf29ce484222325
jb 0x140038d30
test r15b, r15b
mov rdi, qword [rbp + 0x218]
je 0x140038fc3
xor ecx, ecx
call fcn.14004c2d0
nop
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x140038ffd
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038ff7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003902c
call fcn.14008ef50
nop
mov rcx, rdi
call fcn.1400702fc
test eax, eax
je 0x140039011
mov ecx, eax
call fcn.1400707a4
nop
mov rbx, qword [rsp + 0x308]
add rsp, 0x2c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400afe6c
nop
lea rcx, [0x14013e8e0]
call fcn.14008f450
cmp dword [0x14013e8e0], 0xffffffff
jne 0x140038d06
lea rdx, [0x140136020]
lea rcx, [rsp + 0x60]
call fcn.140002960
mov byte [rbp - 0x80], 1
lea rdx, [0x140136040]
lea rcx, [rbp - 0x78]
call fcn.140002960
mov byte [rbp - 0x58], 2
lea rdx, [0x140136060]
lea rcx, [rbp - 0x50]
call fcn.140002960
mov byte [rbp - 0x30], 3
lea rdx, [0x140136080]
lea rcx, [rbp - 0x28]
call fcn.140002960
mov byte [rbp - 8], 4
lea rdx, [0x1401360a0]
lea rcx, [rbp]
call fcn.140002960
mov byte [rbp + 0x20], 5
lea rdx, [0x1401360c0]
lea rcx, [rbp + 0x28]
call fcn.140002960
mov byte [rbp + 0x48], 6
lea rdx, [0x1401360e0]
lea rcx, [rbp + 0x50]
call fcn.140002960
mov byte [rbp + 0x70], 7
lea rdx, [0x140136100]
lea rcx, [rbp + 0x78]
call fcn.140002960
mov byte [rbp + 0x98], 8
lea rdx, [0x140136120]
lea rcx, [rbp + 0xa0]
call fcn.140002960
mov byte [rbp + 0xc0], 9
lea rdx, [0x140136140]
lea rcx, [rbp + 0xc8]
call fcn.140002960
mov byte [rbp + 0xe8], 0xa
lea rdx, [0x140136160]
lea rcx, [rbp + 0xf0]
call fcn.140002960
mov byte [rbp + 0x110], ntohl
lea rdx, [0x140136180]
lea rcx, [rbp + 0x118]
call fcn.140002960
mov byte [rbp + 0x138], ntohl
lea rdx, [0x1401361a0]
lea rcx, [rbp + 0x140]
call fcn.140002960
mov byte [rbp + 0x160], ntohl
lea rdx, [0x1401361c0]
lea rcx, [rbp + 0x168]
call fcn.140002960
mov byte [rbp + 0x188], reloc.WS2_32.dll_ntohl
lea rdx, [0x1401361e0]
lea rcx, [rbp + 0x190]
call fcn.140002960
mov byte [rbp + 0x1b0], 0
xorps xmm0, xmm0
movss dword [0x14013e8a0], xmm0
lea r13, [0x14013e8a8]
mov qword [0x14013e8a8], r14
mov qword [0x14013e8b0], r14
xor r8d, r8d
xor edx, edx
mov rcx, r13
call fcn.1400388b0
mov qword [0x14013e8a8], rax
mov qword [0x14013e8b8], r14
xorps xmm0, xmm0
movdqa xmmword [0x14013e8c0], xmm0
movss xmm0, dword [0x1400e44f4]
movss dword [0x14013e8a0], xmm0
mov edx, 8
lea rcx, [0x14013e8a0]
call fcn.1400389a0
nop
lea rbx, [rsp + 0x60]
mov rax, qword [0x14013e8a8]
mov rsi, qword [rax]
mov r14, qword [rsi + 8]
mov r9, rbx
mov r8, r14
mov rdx, rsi
mov rcx, r13
call fcn.1400382f0
movabs rcx, 0x492492492492491
mov rdx, qword [0x14013e8b0]
sub rcx, rdx
cmp rcx, 1
jb 0x1400392cd
inc rdx
mov qword [0x14013e8b0], rdx
mov qword [rsi + 8], rax
mov qword [r14], rax
mov r9, qword [0x14013e8a8]
mov r9, qword [r9]
lea r8, [r9 + 0x10]
lea rdx, [rsp + 0x48]
lea rcx, [0x14013e8a0]
call fcn.1400383f0
add rbx, 0x28
lea rax, [rbp + 0x1b8]
cmp rbx, rax
jne 0x140039212
lea r9, [fcn.1400030d0]
mov edx, 0x28
lea r8d, [rdx - 0x19]
lea rcx, [rsp + 0x60]
call fcn.14008f864
lea rcx, [0x1400db6e0]
call fcn.14008f220
nop
lea rcx, [0x14013e8e0]
call fcn.14008f3f0
mov sil, 1
xor r14d, r14d
jmp 0x140038d06
lea rcx, str.list_T__too_long
call fcn.14006e9f8
int3