Function at 0x14011b1e0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbp
mov dword [rsp + 0x10], edx
push rsi
push rdi
push r12
push r13
push r14
mov eax, 0x50
call fcn.140186310
sub rsp, rax
mov r13d, dword [rsp + 0xa0]
xor ebp, ebp
movsxd rdi, r9d
mov rsi, r8
mov r14, rcx
mov r12d, ebp
test edx, edx
jle 0x14011b68b
test r9d, r9d
jle 0x14011b68b
cmp edi, r13d
jg 0x14011b667
cmp r13d, 0xb
jl 0x14011b667
mov qword [rsp + 0x80], rbx
lea rdx, str.crypto_rsa_rsa_ssl.c
mov qword [rsp + 0x90], r15
mov r8d, 0x4e
movsxd r15, r13d
mov rcx, r15
mov qword [rsp + 0x40], r15
call fcn.1400a2f40
mov rbx, rax
test rax, rax
jne 0x14011b2bb
lea r9, str.crypto_rsa_rsa_ssl.c
mov dword [rsp + 0x20], 0x50
mov edx, WSACleanup
mov ecx, 4
mov r8d, 0x41
call fcn.1400a41b0
mov eax, 0xffffffff
mov rbx, qword [rsp + 0x80]
mov r15, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x98]
add rsp, 0x50
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret
add rsi, rdi
mov rdx, r13
add rbx, r15
nop dword [rax]
nop dword [rax + rax]
mov eax, edi
lea ecx, [rdi - 1]
not eax
shr ecx, 0x1f
shr eax, 0x1f
mov r8, rbx
and ecx, eax
dec rbx
dec ecx
mov eax, ecx
and eax, 1
sub edi, eax
mov eax, ecx
and eax, 1
sub rsi, rax
movzx eax, byte [rsi]
and al, cl
mov byte [rbx], al
sub rdx, 1
jne 0x14011b2d0
movzx r15d, byte [r8]
lea r11, [rbx + 2]
movzx eax, al
xor r15d, 2
dec eax
dec r15d
shr eax, 0x1f
mov r9d, ebp
neg eax
shr r15d, 0x1f
neg r15d
mov edi, ebp
and r15d, eax
mov r10d, 2
mov dword [rsp + 0x30], r15d
mov esi, r15d
mov eax, dword [rsp + 0x30]
not esi
mov dword [rsp + 0x30], esi
mov r8d, 0xffffffff
mov eax, dword [rsp + 0x30]
mov dword [rsp + 0x30], eax
movzx edx, byte [r11]
lea r11, [r11 + 1]
dec edx
shr edx, 0x1f
neg edx
and r8d, edx
or r9d, edx
mov dword [rsp + 0x34], r8d
not r8d
mov ecx, dword [rsp + 0x34]
and ecx, r10d
mov dword [rsp + 0x34], r8d
mov eax, dword [rsp + 0x34]
mov r8d, r9d
and eax, r12d
not r8d
mov r12d, ecx
inc r10d
movzx ecx, byte [r11 - 1]
or r12d, eax
xor ecx, 3
mov eax, r8d
dec ecx
and eax, 1
shr ecx, 0x1f
add eax, edi
neg ecx
or ecx, r9d
mov edi, ecx
and edi, eax
cmp r10d, r13d
jl 0x14011b351
lea eax, [r12 - 0xa]
or eax, r12d
xor eax, r12d
shr eax, 0x1f
dec eax
and r15d, eax
mov eax, r15d
mov ecx, r15d
or eax, esi
not ecx
mov esi, dword [rsp + 0x88]
mov dword [rsp + 0x34], eax
not eax
mov r10d, dword [rsp + 0x34]
mov dword [rsp + 0x34], eax
lea eax, [rdi - 8]
mov r11d, dword [rsp + 0x34]
or eax, edi
xor eax, edi
and r11d, 0x71
shr eax, 0x1f
mov edi, r13d
neg eax
sub edi, r12d
mov r12d, dword [rsp + 0x30]
and r15d, eax
and r12d, r10d
dec edi
and r12d, 0x6b
mov eax, r15d
or eax, ecx
or r12d, r11d
mov dword [rsp + 0x34], eax
mov edx, r15d
mov r8d, dword [rsp + 0x34]
not eax
mov dword [rsp + 0x34], eax
and r12d, r8d
mov r9d, dword [rsp + 0x34]
lea r8d, [r13 - 0xb]
not edx
mov dword [rsp + 0x34], edi
and r9d, 0x73
mov ecx, esi
sub ecx, edi
or r12d, r9d
xor ecx, edi
mov eax, edi
xor eax, esi
or ecx, eax
xor ecx, esi
shr ecx, 0x1f
dec ecx
and r15d, ecx
mov eax, r15d
or eax, edx
mov edx, r8d
mov dword [rsp + 0x88], eax
not eax
mov ecx, dword [rsp + 0x88]
and r12d, ecx
mov dword [rsp + 0x88], eax
mov ecx, r8d
mov eax, dword [rsp + 0x88]
sub ecx, esi
xor ecx, esi
and eax, 0x6d
or r12d, eax
mov eax, r8d
xor eax, esi
mov dword [rsp + 0x30], r12d
or ecx, eax
xor ecx, r8d
shr ecx, 0x1f
neg ecx
mov dword [rsp + 0x88], ecx
not ecx
mov eax, dword [rsp + 0x88]
and edx, eax
mov dword [rsp + 0x88], ecx
mov ecx, dword [rsp + 0x88]
and ecx, esi
mov r11d, 1
or edx, ecx
mov dword [rsp + 0x38], edx
cmp r8d, r11d
jle 0x14011b58a
mov r12d, r13d
sub r12d, edi
add r12d, 0xfffffff5
nop word [rax + rax]
mov eax, r12d
and eax, r11d
lea ecx, [rax - 1]
not eax
shr eax, 0x1f
shr ecx, 0x1f
and ecx, eax
mov eax, r13d
sub eax, r11d
dec ecx
movsxd r9, eax
cmp r9, 0xb
jle 0x14011b571
movzx edi, cl
lea rax, [rbx + 0xb]
mov r10d, edi
movsxd rsi, r11d
not r10d
add r9, 0xfffffffffffffff5
nop dword [rax + rax]
mov dword [rsp + 0x88], edi
lea rax, [rax + 1]
mov ecx, dword [rsp + 0x88]
mov dword [rsp + 0x88], r10d
mov edx, dword [rsp + 0x88]
movzx r8d, byte [rsi + rax - 1]
and r8b, cl
movzx ecx, byte [rax - 1]
and cl, dl
or r8b, cl
mov byte [rax - 1], r8b
sub r9, 1
jne 0x14011b530
lea r8d, [r13 - 0xb]
add r11d, r11d
cmp r11d, r8d
jl 0x14011b4f0
mov edi, dword [rsp + 0x34]
mov edx, dword [rsp + 0x38]
mov r12d, dword [rsp + 0x30]
test edx, edx
jle 0x14011b5f7
mov r9d, edi
mov r10, rbx
shr r9d, 0x1f
sub r10, r14
nop dword [rax + rax]
mov eax, ebp
lea r14, [r14 + 1]
sub eax, edi
inc ebp
shr eax, 0x1f
xor al, r9b
or al, r9b
neg al
movzx ecx, al
movzx eax, r15b
and ecx, eax
mov dword [rsp + 0x88], ecx
not ecx
mov eax, dword [rsp + 0x88]
mov dword [rsp + 0x88], ecx
mov ecx, dword [rsp + 0x88]
movzx r8d, byte [r14 + r10 + 0xa]
and r8b, al
movzx eax, byte [r14 - 1]
and al, cl
or r8b, al
mov byte [r14 - 1], r8b
cmp ebp, edx
jl 0x14011b5a0
mov rdx, qword [rsp + 0x40]
lea r8, str.crypto_rsa_rsa_ssl.c
mov r9d, 0xab
mov rcx, rbx
call fcn.1400a30b0
lea r9, str.crypto_rsa_rsa_ssl.c
mov dword [rsp + 0x20], 0xac
mov r8d, r12d
mov edx, WSACleanup
mov ecx, 4
call fcn.1400a41b0
mov ecx, r15d
and ecx, 1
call fcn.1400a44a0
mov dword [rsp + 0x88], r15d
not r15d
mov eax, dword [rsp + 0x88]
mov dword [rsp + 0x88], r15d
and eax, edi
mov ecx, dword [rsp + 0x88]
or eax, ecx
jmp 0x14011b296
lea r9, str.crypto_rsa_rsa_ssl.c
mov dword [rsp + 0x20], 0x4a
mov edx, WSACleanup
mov ecx, 4
mov r8d, reloc.WS2_32.dll_WSAGetLastError
call fcn.1400a41b0
mov eax, 0xffffffff
jmp 0x14011b2a6