Function at 0x140017ce0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x160
mov r15, r8
mov rsi, rdx
mov rbx, rcx
mov byte [rsp + 0x190], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm0
mov r8, qword [rcx + 0x10]
mov eax, reloc.WLDAP32.dll_Ordinal_32
cmp r8, rax
cmovae r8, rax
mov rdx, rcx
cmp qword [rcx + 0x18], 0x10
jb 0x140017d34
mov rdx, qword [rcx]
test r8, r8
je 0x140017d6c
test rdx, rdx
je 0x140017d5c
cmp r8, rax
ja 0x140017d4f
lea rcx, [rsp + 0x40]
call fcn.1401378a0
jmp 0x140017d6c
call fcn.140146434
mov dword [rax], Ordinal_35
jmp 0x140017d67
call fcn.140146434
mov dword [rax], reloc.WLDAP32.dll_Ordinal_22
call fcn.140146288
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov r8, qword [rbx + 0x30]
mov r12d, reloc.WS2_32.dll_recv
cmp r8, r12
cmovae r8, r12
lea rdx, [rbx + 0x20]
cmp qword [rdx + 0x18], r12
jb 0x140017d92
mov rdx, qword [rdx]
test r8, r8
je 0x140017dcf
test rdx, rdx
je 0x140017dba
cmp r8, r12
ja 0x140017dad
lea rcx, [rsp + 0x20]
call fcn.1401378a0
jmp 0x140017dca
call fcn.140146434
mov dword [rax], Ordinal_35
jmp 0x140017dc5
call fcn.140146434
mov dword [rax], reloc.WLDAP32.dll_Ordinal_22
call fcn.140146288
movups xmm0, xmmword [rsp + 0x20]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x60]
call fcn.140019230
movaps xmmword [rsp + 0x150], xmm0
mov rdx, qword [rsi + 8]
mov rbx, qword [rsi]
mov rax, rdx
sub rax, rbx
mov r14d, eax
test eax, eax
je 0x140017e54
lea rdi, [rsp + 0x150]
sub rdi, rbx
dec r14
shr r14, 4
inc r14
nop
movups xmm0, xmmword [rbx]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140018d70
mov rcx, r12
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdi + rbx]
xor byte [rbx], al
inc rbx
sub rcx, 1
jne 0x140017e30
movaps xmmword [rsp + 0x150], xmm0
sub rdi, r12
sub r14, 1
jne 0x140017e10
mov rdx, qword [rsi + 8]
mov rax, qword [rsi]
sub rdx, rax
movsx rax, byte [rdx + rax - 1]
sub rdx, rax
mov rcx, rsi
call fcn.140019910
mov rdx, qword [rsi]
mov r8, qword [rsi + 8]
sub r8, rdx
xor edi, edi
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], reloc.WS2_32.dll_ntohs
lea rcx, [rsp + 0x20]
call fcn.1400157e0
lea rax, [rsp + 0x20]
cmp r15, rax
je 0x140017eec
mov rdx, qword [r15 + 0x18]
cmp rdx, r12
jb 0x140017ed7
mov rcx, qword [r15]
inc rdx
cmp rdx, 0x1000
jb 0x140017ed2
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140017fa6
mov rcx, r8
call fcn.140133e68
movups xmm0, xmmword [rsp + 0x20]
movups xmmword [r15], xmm0
movups xmm1, xmmword [rsp + 0x30]
movups xmmword [r15 + 0x10], xmm1
jmp 0x140017f28
mov rdx, qword [rsp + 0x38]
cmp rdx, r12
jb 0x140017f28
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017f23
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140017fa6
call fcn.140133e68
mov bl, 1
mov byte [rsp + 0x190], bl
jmp 0x140017f45
mov rcx, qword [rsi]
test rcx, rcx
je 0x140017f85
mov rdx, qword [rsi + 0x10]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x140017f75
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140017fa0
mov rcx, r8
call fcn.140133e68
mov qword [rsi], rdi
mov qword [rsi + 8], rdi
mov qword [rsi + 0x10], rdi
movzx eax, bl
mov rbx, qword [rsp + 0x1a0]
add rsp, 0x160
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
call fcn.1401462a8
nop
call fcn.1401462a8
nop
int3