Function at 0x1400653e0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rdi, rdx
mov rsi, rcx
mov rax, qword [rcx]
mov qword [rsp + 0x20], rax
mov r12, qword [rcx + 8]
mov r13, qword [rdx]
movabs r14, 0x9aca111b8b1a6f98
mov rax, qword [0x1402f6cc0]
add rax, r14
call rax
cdqe
lea rcx, [0x14024b950]
cmp r13, qword [rcx + rax*8]
ja 0x1400656e7
mov rax, qword [0x1402f6cd0]
add rax, r14
call rax
cdqe
lea rcx, reloc.WS2_32.dll_connect
movzx ecx, byte [rcx + rax*8]
mov rbx, r13
shl rbx, cl
mov rax, qword [0x1402f6cd8]
add rax, r14
call rax
mov rax, qword [0x140294c80]
mov rcx, qword [0x140294c88]
shrd rcx, rax, 0x11
movabs rax, 0xeebdbc6d910cfb6
xor rax, rcx
cmp r13, rax
jne 0x140065485
xor ebx, ebx
jmp 0x140065547
mov rax, qword [0x1402f6ce0]
add rax, r14
call rax
cdqe
lea rcx, [0x14024b990]
cmp r13, qword [rcx + rax*8]
jbe 0x140065535
mov rax, qword [0x1402f6ce8]
add rax, r14
call rax
cdqe
lea rcx, [0x14024b9b0]
cmp r13, qword [rcx + rax*8]
jae 0x1400656e7
mov rax, qword [0x1402f6cf0]
add rax, r14
call rax
cdqe
lea rdx, [0x14024b9d0]
add rbx, qword [rdx + rax*8]
mov rax, qword [0x1402f6cf8]
add rax, r14
mov rcx, rbx
call rax
test rax, rax
je 0x1400656f1
mov rbx, rax
mov rax, qword [0x1402f6d08]
add rax, r14
call rax
cdqe
lea rcx, [0x14024b9f0]
mov r15, qword [rcx + rax*8]
add r15, rbx
mov rax, qword [0x1402f6d10]
add rax, r14
call rax
cdqe
lea rcx, [0x14024ba10]
and r15, qword [rcx + rax*8]
mov qword [r15 - 8], rbx
mov rbx, r15
jmp 0x140065547
mov rax, qword [0x1402f6cf8]
add rax, r14
mov rcx, rbx
call rax
mov rbx, rax
mov rbp, qword [rsi]
mov r13, qword [rsi + 8]
cmp rbp, r13
je 0x1400655c1
xor eax, eax
nop word cs:[rax + rax]
mov r15, rax
movzx eax, byte [rbp + rax]
mov byte [rbx + r15], al
mov rax, qword [rbp + r15 + 8]
mov qword [rbx + r15 + 8], rax
mov rax, qword [0x1402f6d18]
add rax, r14
call rax
movzx eax, byte [reloc.WLDAP32.dll_Ordinal_46]
movzx ecx, byte [0x140294c91]
shr cl, 5
shl al, 3
or al, cl
xor al, 0x74
mov byte [rbp + r15], al
mov qword [rbp + r15 + 8], 0
lea rcx, [r15 + rbp]
add rcx, 0x10
add r15, 0x10
mov rax, r15
cmp rcx, r13
jne 0x140065560
mov rax, qword [rsi]
jmp 0x1400655c4
mov rax, r13
mov rdi, qword [rdi]
test rax, rax
je 0x14006569e
mov r15, qword [rsi + 8]
cmp rax, r15
je 0x140065607
nop dword [rax]
mov r13, rax
movzx edx, byte [rax]
mov rax, qword [0x1402f6d20]
add rax, r14
lea rcx, [r13 + 8]
call rax
add r13, 0x10
mov rax, r13
cmp r13, r15
jne 0x1400655e0
mov r15, qword [rsi]
jmp 0x14006560a
mov r15, rax
mov r13, qword [rsi + 0x10]
sub r13, r15
mov rax, qword [0x1402f6d28]
add rax, r14
call rax
cdqe
lea rcx, [0x14024ba30]
cmp r13, qword [rcx + rax*8]
jbe 0x14006568c
mov rbp, qword [r15 - 8]
mov rax, qword [0x1402f6d30]
add rax, r14
call rax
cdqe
lea rcx, [0x14024ba50]
add r15, qword [rcx + rax*8]
sub r15, rbp
mov rax, qword [0x1402f6d38]
add rax, r14
call rax
cdqe
lea rcx, reloc.WLDAP32.dll_Ordinal_32
cmp r15, qword [rcx + rax*8]
jae 0x1400656f1
mov rax, qword [0x1402f6d40]
add rax, r14
call rax
cdqe
lea rcx, [0x14024ba90]
add r13, qword [rcx + rax*8]
mov rdx, r13
mov rcx, rbp
jmp 0x140065692
mov rdx, r13
mov rcx, r15
mov rax, qword [0x1402f6d48]
add rax, r14
call rax
sub r12, qword [rsp + 0x20]
add r14, qword [0x1402f6d50]
call r14
cdqe
lea rcx, reloc.WS2_32.dll_connect
movzx ecx, byte [rcx + rax*8]
sar r12, cl
mov qword [rsi], rbx
shl r12, 4
add r12, rbx
mov qword [rsi + 8], r12
shl rdi, 4
add rdi, rbx
mov qword [rsi + 0x10], rdi
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
add r14, qword [0x1402f6cc8]
call r14
add r14, qword [0x1402f6d00]
call r14
int3