Function at 0x140117170
Capabilities:
Encode data using xor

Disassembly:
push rdi
push r12
push r13
push r14
push r15
push rbp
lea rdi, [rcx + 0x28]
mov rbp, qword [rcx]
cmp byte [reloc.WS2_32.dll_accept], 1
je 0x14011739f
mov eax, dword [rcx + 0x48]
lea rdx, [rax + rcx + 0x28]
mov rax, qword [rcx + 0x18]
cmp rbp, 0x20
jae 0x1401171b2
movabs r8, 0x27d4eb2f165667c5
add rax, r8
jmp 0x140117286
mov r14, qword [rcx + 8]
mov r12, r14
mov r15, qword [rcx + 0x10]
mov r13, qword [rcx + 0x20]
shld r12, r14, 1
mov r11, r15
shld r11, r15, 7
mov r10, rax
shld r10, rax, 0xc
mov r9, r13
shld r9, r13, 0x12
movabs r8, 0x3d4d51c2d82b14b1
imul r14, r8
neg r14
shld r14, r14, 0x1f
imul r15, r8
neg r15
shld r15, r15, 0x1f
imul rax, r8
neg rax
shld rax, rax, 0x1f
imul r8, r13
neg r8
shld r8, r8, 0x1f
add r12, r11
movabs r11, 0x85ebca77c2b2ae63
add r12, r10
movabs r10, 0x9e3779b185ebca87
add r12, r9
movabs r9, 0x61c8864e7a143579
imul r14, r9
neg r14
xor r12, r14
imul r12, r10
imul r15, r9
imul rax, r9
imul r9, r8
add r12, r11
neg r15
xor r12, r15
neg rax
imul r12, r10
add r12, r11
neg r9
xor r12, rax
mov rax, r10
imul r12, r10
add r12, r11
xor r12, r9
imul rax, r12
add rax, r11
add rcx, 0x30
add rax, rbp
cmp rcx, rdx
ja 0x1401175ad
movabs r9, 0x61c8864e7a143579
movabs r8, 0x85ebca77c2b2ae63
movabs rbp, 0xc2b2ae3d27d4eb4f
mov rdi, qword [rdi]
bswap rdi
imul rdi, rbp
shld rdi, rdi, 0x1f
imul rdi, r9
neg rdi
xor rax, rdi
shld rax, rax, 0x1b
mov rdi, rcx
add rcx, 8
imul rax, r9
neg rax
add rax, r8
cmp rcx, rdx
jbe 0x1401172b4
lea r8, [rdi + 4]
cmp r8, rdx
ja 0x14011732c
mov ecx, dword [rdi]
movabs rdi, 0x9e3779b185ebca87
bswap ecx
imul rdi, rcx
xor rax, rdi
shld rax, rax, 0x17
movabs rcx, 0x3d4d51c2d82b14b1
mov rdi, r8
imul rcx, rax
neg rcx
movabs rax, 0x165667b19e3779f9
add rax, rcx
cmp rdi, rdx
jae 0x140117364
movabs r8, 0x27d4eb2f165667c5
movabs rcx, 0x61c8864e7a143579
movzx r9d, byte [rdi]
imul r9, r8
xor rax, r9
shld rax, rax, 0xb
inc rdi
imul rax, rcx
neg rax
cmp rdi, rdx
jb 0x140117345
mov rdx, rax
shr rdx, 0x21
xor rax, rdx
imul rbp, rax
mov rax, rbp
shr rax, 0x1d
xor rbp, rax
movabs rax, 0x165667b19e3779f9
imul rax, rbp
mov rcx, rax
shr rcx, 0x20
xor rax, rcx
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov eax, dword [rcx + 0x48]
mov r14, qword [rcx + 0x18]
lea r15, [rax + rcx + 0x28]
cmp rbp, 0x20
jae 0x1401173c3
movabs rax, 0x27d4eb2f165667c5
add r14, rax
jmp 0x140117497
mov r12, qword [rcx + 8]
mov r10, r12
mov r13, qword [rcx + 0x10]
mov r11, qword [rcx + 0x20]
shld r10, r12, 1
mov r9, r13
shld r9, r13, 7
mov r8, r14
shld r8, r14, 0xc
mov rdx, r11
shld rdx, r11, 0x12
movabs rax, 0x3d4d51c2d82b14b1
imul r12, rax
neg r12
shld r12, r12, 0x1f
imul r13, rax
neg r13
shld r13, r13, 0x1f
imul r14, rax
neg r14
shld r14, r14, 0x1f
imul rax, r11
neg rax
shld rax, rax, 0x1f
add r10, r9
movabs r9, 0x85ebca77c2b2ae63
add r10, r8
movabs r8, 0x9e3779b185ebca87
add r10, rdx
movabs rdx, 0x61c8864e7a143579
imul r12, rdx
neg r12
xor r10, r12
imul r10, r8
imul r13, rdx
imul r14, rdx
imul rdx, rax
add r10, r9
neg r13
xor r10, r13
neg r14
imul r10, r8
add r10, r9
neg rdx
xor r10, r14
mov r14, r8
imul r10, r8
add r10, r9
xor r10, rdx
imul r14, r10
add r14, r9
add rcx, 0x30
add rbp, r14
cmp rcx, r15
ja 0x1401174ef
movabs rdx, 0x61c8864e7a143579
movabs rax, 0x85ebca77c2b2ae63
movabs r8, 0xc2b2ae3d27d4eb4f
imul r8, qword [rdi]
shld r8, r8, 0x1f
imul r8, rdx
neg r8
xor rbp, r8
shld rbp, rbp, 0x1b
mov rdi, rcx
add rcx, 8
imul rbp, rdx
neg rbp
add rbp, rax
cmp rcx, r15
jbe 0x1401174b7
lea rcx, [rdi + 4]
cmp rcx, r15
ja 0x140117531
movabs rdx, 0x9e3779b185ebca87
mov eax, dword [rdi]
imul rdx, rax
xor rbp, rdx
shld rbp, rbp, 0x17
movabs rax, 0x3d4d51c2d82b14b1
mov rdi, rcx
imul rax, rbp
neg rax
movabs rbp, 0x165667b19e3779f9
add rbp, rax
cmp rdi, r15
jae 0x140117568
movabs rdx, 0x27d4eb2f165667c5
movabs rax, 0x61c8864e7a143579
movzx ecx, byte [rdi]
imul rcx, rdx
xor rbp, rcx
shld rbp, rbp, 0xb
inc rdi
imul rbp, rax
neg rbp
cmp rdi, r15
jb 0x14011754a
mov rax, rbp
movabs rdx, 0xc2b2ae3d27d4eb4f
shr rax, 0x21
xor rbp, rax
movabs rax, 0x165667b19e3779f9
imul rdx, rbp
mov rbp, rdx
shr rbp, 0x1d
xor rdx, rbp
imul rax, rdx
mov rcx, rax
shr rcx, 0x20
xor rax, rcx
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
movabs rbp, 0xc2b2ae3d27d4eb4f
jmp 0x1401172e8