Function at 0x1400d1480
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
mov eax, 0xe0
call fcn.1401127d0
sub rsp, rax
mov rax, qword [0x1401bd830]
xor rax, rsp
mov qword [rsp + 0xd0], rax
movsxd rbx, dword [rsp + 0x140]
xor esi, esi
mov qword [rsp + 0x48], rcx
mov r14, r8
mov rcx, qword [rsp + 0x148]
mov edi, esi
movsxd rbp, r9d
mov r15d, esi
mov dword [rsp + 0x3c], edx
lea r12d, [rsi - 1]
mov dword [rsp + 0x38], ebx
mov qword [rsp + 0x40], rcx
test edx, edx
jle 0x1400d1860
test r9d, r9d
jle 0x1400d1860
mov qword [rsp + 0x128], r13
lea ecx, [rsi + 0x7a]
lea eax, [rsi + 4]
lea r8d, [rsi + 0x79]
cmp ebx, ebp
jl 0x1400d1805
cmp ebx, 0x2a
jl 0x1400d1805
lea r13d, [rbx - 0x15]
mov ecx, r13d
lea r8d, [rsi + 0x78]
lea rdx, [0x1401aac88]
call fcn.14005e700
lea r8d, [rsi + 0x79]
mov ecx, ebx
lea rdx, [0x1401aaca0]
mov rdi, rax
call fcn.14005e700
mov qword [rsp + 0x30], rax
mov r15, rax
test rdi, rdi
je 0x1400d1885
test rax, rax
je 0x1400d1885
mov r8, rbx
xor edx, edx
mov rcx, rax
call fcn.140114350
sub rbx, rbp
mov r8, rbp
mov rdx, r14
lea rcx, [r15 + rbx]
call fcn.140113bc0
movzx ebp, byte [r15]
lea r14, [r15 + 1]
dec ebp
lea rcx, [rsp + 0x50]
add r15, 0x15
shr ebp, 0x1f
mov ebx, reloc.WS2_32.dll_sendto
mov r9d, r13d
mov r8, r15
mov edx, ebx
neg ebp
call fcn.1400d0e90
test eax, eax
jne 0x1400d183e
lea rax, [r14 + 0x13]
lea rcx, [rsp + 0x50]
cmp rcx, rax
ja 0x1400d15c4
lea rax, [rsp + 0x63]
cmp rax, r14
jb 0x1400d15c4
mov edx, esi
jmp 0x1400d15da
movdqu xmm0, xmmword [r14]
pxor xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rsp + 0x50], xmm0
mov edx, reloc.WS2_32.dll_recv
lea rax, [rsp + 0x50]
sub r14, rax
nop dword [rax]
nop word [rax + rax]
lea rcx, [rsp + 0x50]
add rcx, rdx
inc rdx
movzx eax, byte [r14 + rcx]
xor byte [rcx], al
cmp rdx, rbx
jl 0x1400d15f0
mov r9d, ebx
lea r8, [rsp + 0x50]
mov edx, r13d
mov rcx, rdi
call fcn.1400d0e90
test eax, eax
jne 0x1400d183e
mov r8d, esi
cmp r13d, 0x40
jb 0x1400d16e0
lea eax, [r13 - 1]
movsxd rcx, eax
lea rax, [rcx + r15]
lea rdx, [rcx + rdi]
cmp rdi, rax
ja 0x1400d164c
cmp rdx, r15
jae 0x1400d16e0
mov ecx, r13d
and ecx, 0x8000003f
jge 0x1400d165e
dec ecx
or ecx, 0xffffffc0
inc ecx
mov eax, r13d
mov rdx, r15
sub eax, ecx
sub rdx, rdi
mov r9, 0xfffffffffffffff0
movsxd r10, eax
sub r9, rdi
lea rcx, [rdi + 0x10]
nop word [rax + rax]
movdqu xmm0, xmmword [rcx - 0x10]
add r8d, 0x40
movdqu xmm1, xmmword [rdx + rcx - 0x10]
movdqu xmm2, xmmword [rdx + rcx]
lea rcx, [rcx + 0x40]
pxor xmm1, xmm0
lea rax, [r9 + rcx]
movdqu xmmword [rcx - 0x50], xmm1
movdqu xmm0, xmmword [rcx - 0x40]
movdqu xmm1, xmmword [rdx + rcx - 0x30]
pxor xmm2, xmm0
movdqu xmmword [rcx - 0x40], xmm2
movdqu xmm0, xmmword [rcx - 0x30]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x30], xmm1
movdqu xmm0, xmmword [rcx - 0x20]
movdqu xmm1, xmmword [rdx + rcx - 0x20]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x20], xmm1
cmp rax, r10
jl 0x1400d1680
movsxd r14, dword [rsp + 0x38]
sub r14, 0x15
movsxd rcx, r8d
cmp rcx, r14
jge 0x1400d1711
sub r15, rdi
lea rax, [rcx + rdi]
mov rdx, r14
sub rdx, rcx
nop
movzx ecx, byte [rax + r15]
xor byte [rax], cl
lea rax, [rax + 1]
sub rdx, 1
jne 0x1400d1700
call fcn.140075d70
movsxd rdx, dword [rsp + 0x150]
lea r8, [rsp + 0x90]
mov rcx, qword [rsp + 0x40]
xor r9d, r9d
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rax
call fcn.140075290
test eax, eax
je 0x1400d183e
mov r8, rbx
lea rdx, [rsp + 0x90]
mov rcx, rdi
call fcn.140070b80
mov r9d, esi
lea ecx, [rax - 1]
not eax
shr ecx, 0x1f
shr eax, 0x1f
and ecx, eax
neg ecx
and ebp, ecx
cmp r14, rbx
jle 0x1400d17be
mov r10, rbx
nop dword [rax]
nop dword [rax + rax]
movzx r8d, byte [r10 + rdi]
mov ecx, r9d
not ecx
mov edx, r8d
xor edx, 1
inc r10
dec edx
shr edx, 0x1f
neg edx
and ecx, edx
or r9d, edx
mov eax, ecx
and ecx, ebx
not eax
inc ebx
and esi, eax
lea eax, [r8 - 1]
shr eax, 0x1f
or esi, ecx
neg eax
or eax, r9d
and ebp, eax
cmp r10, r14
jl 0x1400d1780
test ebp, r9d
je 0x1400d17f3
lea eax, [rsi + 1]
mov r12d, r13d
sub r12d, eax
cmp dword [rsp + 0x3c], r12d
jge 0x1400d182b
mov edx, 0x7a
mov dword [rsp + 0x20], 0xbf
lea r9, [0x1401aacd0]
lea ecx, [rdx - 0x76]
lea r8d, [rdx - 0xd]
call fcn.14006cd10
mov r15, qword [rsp + 0x30]
mov r8d, 0x79
lea ecx, [r8 + 1]
lea eax, [rcx - 0x76]
lea r9, str..crypto_rsa_rsa_oaep.c
mov edx, 0xcb
mov dword [rsp + 0x20], edx
mov edx, ecx
mov ecx, eax
call fcn.14006cd10
mov r12d, 0xffffffff
test rdi, rdi
je 0x1400d184b
jmp 0x1400d1843
mov rcx, qword [rsp + 0x48]
movsxd rdx, eax
add rdx, rdi
movsxd r8, r12d
call fcn.140113bc0
mov r15, qword [rsp + 0x30]
mov rcx, rdi
call fcn.14005e660
mov r13, qword [rsp + 0x128]
test r15, r15
je 0x1400d1860
mov rcx, r15
call fcn.14005e660
mov eax, r12d
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.140111cf0
add rsp, 0xe0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov eax, 4
lea r9, [0x1401aacb8]
lea ecx, [rax + 0x76]
lea r8d, [rax + 0x3d]
lea edx, [rax + 0x77]
jmp 0x1400d1811