Function at 0x180153a80
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x18]
mov eax, 0x118
call fcn.180001055
sub rsp, rax
mov r14, rcx
mov qword [rsp + 0x20], 0
nop
mov r9, qword [r14]
mov rsi, qword [r14 + 0x30]
mov rax, r9
xor rax, qword [r14 + 0x28]
xor rax, qword [r14 + 0x50]
xor rax, qword [r14 + 0x78]
xor rax, qword [r14 + 0xa0]
mov r13, qword [r14 + 0x80]
mov rdi, qword [r14 + 0x60]
mov rbx, qword [r14 + 0x90]
mov r10, qword [r14 + 0xc0]
mov r15, qword [r14 + 0x18]
mov r8, qword [r14 + 8]
mov rcx, r15
xor rcx, qword [r14 + 0x40]
xor r8, rsi
xor r8, qword [r14 + 0x58]
xor rcx, qword [r14 + 0x68]
xor r8, r13
xor r8, qword [r14 + 0xa8]
xor rcx, rbx
xor rcx, qword [r14 + 0xb8]
mov rdx, qword [r14 + 0x10]
xor rdx, qword [r14 + 0x38]
mov r12, qword [r14 + 0xb0]
xor rdx, rdi
xor rdx, qword [r14 + 0x88]
mov r14, qword [r14 + 0x48]
xor rdx, r12
mov qword [rbp + 0x68], rax
mov rax, qword [rbp + 0x60]
mov qword [rsp + 0x38], r13
mov r13, qword [rbp + 0x68]
mov qword [rbp + 0x70], r13
mov r11, qword [rax + 0x20]
xor r11, r14
xor r11, qword [rax + 0x70]
xor r11, qword [rax + 0x98]
mov rax, r8
rol rax, 1
xor r11, r10
mov qword [rbp + 0x78], r11
xor r11, rax
mov rax, rdx
mov qword [rsp + 0x30], r11
rol rax, 1
xor r11, r9
xor qword [rbp + 0x70], rax
mov rax, rcx
mov r9, qword [rbp + 0x70]
rol rax, 1
xor r9, rsi
xor rax, r8
rol r9, 0x2c
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x78]
mov rsi, qword [rsp + 0x28]
rol rax, 1
xor rax, rdx
mov qword [rbp + 0x78], rax
mov rax, r13
rol rax, 1
xor rax, rcx
mov rcx, rsi
mov r8, rax
mov qword [rbp + 0x68], rax
xor rcx, rdi
xor r8, r10
mov rdi, qword [rbp + 0x78]
mov rax, r9
mov r10, qword [rsp + 0x20]
not rax
rol rcx, 0x2b
mov rdx, rdi
xor rdx, rbx
rol r8, 0xe
and rax, rcx
rol rdx, 0x15
lea rbx, reloc.WS2_32.dll_accept
xor rax, qword [rbx + r10*8]
xor rax, r11
mov rbx, qword [rbp + 0x70]
mov r10, rdi
mov qword [rsp + 0x40], rax
xor r10, r15
mov r15, qword [rbp + 0x68]
mov rax, rcx
not rax
rol r10, 0x1c
and rax, rdx
xor rax, r9
mov qword [rsp + 0x48], rax
mov rax, rdx
not rax
and rax, r8
xor rax, rcx
mov qword [rsp + 0x50], rax
mov rax, r8
not rax
and rax, r11
not r11
xor rax, rdx
and r11, r9
mov qword [rsp + 0x58], rax
xor r11, r8
mov r9, r15
mov qword [rsp + 0x60], r11
mov r11, qword [rsp + 0x30]
xor r9, r14
mov r14, qword [rbp + 0x60]
mov rcx, r11
rol r9, 0x14
mov rdx, rbx
xor rdx, qword [rsp + 0x38]
mov rax, r9
not rax
rol rdx, 0x2d
xor rcx, qword [r14 + 0x50]
mov r8, rsi
rol rcx, 3
xor r8, r12
and rax, rcx
rol r8, 0x3d
xor rax, r10
mov qword [rsp + 0x68], rax
mov rax, rcx
not rax
and rax, rdx
xor rax, r9
mov qword [rsp + 0x70], rax
mov rax, rdx
not rax
and rax, r8
xor rax, rcx
mov rcx, rdi
xor rcx, qword [r14 + 0x68]
mov qword [rsp + 0x78], rax
mov rax, r8
not rax
rol rcx, 0x19
and rax, r10
not r10
and r10, r9
xor rax, rdx
xor r10, r8
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], r10
mov r9, rsi
xor r9, qword [r14 + 0x38]
mov r10, rbx
xor r10, qword [r14 + 8]
mov rdx, r15
xor rdx, qword [r14 + 0x98]
mov r8, r11
xor r8, qword [r14 + 0xa0]
rol r9, 6
mov rax, r9
rol r10, 1
not rax
rol rdx, 8
rol r8, 0x12
and rax, rcx
xor rax, r10
mov qword [rbp - 0x70], rax
mov rax, rcx
not rax
and rax, rdx
xor rax, r9
mov qword [rbp - 0x68], rax
mov rax, rdx
not rax
and rax, r8
xor rax, rcx
mov rcx, rbx
xor rcx, qword [r14 + 0x58]
xor rbx, qword [r14 + 0xa8]
mov qword [rbp - 0x60], rax
mov rax, r8
not rax
rol rcx, 0xa
and rax, r10
rol rbx, 2
xor rax, rdx
not r10
mov qword [rbp - 0x58], rax
and r10, r9
xor r10, r8
mov r9, r11
xor r9, qword [r14 + 0x28]
mov rdx, rsi
xor rdx, qword [r14 + 0x88]
mov r8, rdi
xor r8, qword [r14 + 0xb8]
xor rdi, qword [r14 + 0x40]
xor rsi, qword [r14 + 0x10]
xor r11, qword [r14 + 0x78]
mov qword [rbp - 0x50], r10
mov r10, r15
xor r10, qword [r14 + 0x20]
xor r15, qword [r14 + 0x70]
rol r10, 0x1b
rol r9, 0x24
rol rdx, 0xf
mov rax, r9
not rax
rol r8, 0x38
and rax, rcx
rol r15, 0x27
xor rax, r10
rol r11, 0x29
mov qword [rbp - 0x48], rax
mov rax, rcx
not rax
rol rdi, 0x37
and rax, rdx
rol rsi, 0x3e
xor rax, r9
mov qword [rbp - 0x40], rax
mov rax, rdx
not rax
and rax, r8
xor rax, rcx
mov qword [rbp - 0x38], rax
mov rax, r8
not rax
and rax, r10
not r10
xor rax, rdx
and r10, r9
mov qword [rbp - 0x30], rax
xor r10, r8
mov rax, rdi
mov qword [rbp - 0x28], r10
not rax
and rax, r15
xor rax, rsi
mov qword [rbp - 0x20], rax
mov rax, r15
not rax
and rax, r11
xor rax, rdi
mov qword [rbp - 0x18], rax
mov rax, r11
not rax
lea rdx, [rsp + 0x40]
and rax, rbx
mov rcx, r14
xor rax, r15
mov qword [rbp - 0x10], rax
mov rax, rbx
not rax
and rax, rsi
not rsi
xor rax, r11
and rsi, rdi
xor rsi, rbx
mov qword [rbp - 8], rax
mov rbx, qword [rsp + 0x20]
mov qword [rbp], rsi
lea r8, [rbx + 1]
call fcn.180153fb0
add rbx, 2
mov qword [rsp + 0x20], rbx
cmp rbx, 0x18
jb 0x180153ab0
add rsp, 0x118
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret