Function at 0x140233310
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x50
call fcn.1402807a0
sub rsp, rax
xor r12d, r12d
movsxd rdi, r9d
mov rsi, r8
mov r13d, edx
mov r15, rcx
mov r14d, r12d
test edx, edx
js 0x1402336b9
test r9d, r9d
js 0x1402336b9
mov qword [rsp + 0x90], rbp
mov ebp, dword [rsp + 0xa0]
cmp edi, ebp
jg 0x140233691
cmp ebp, 0xb
jl 0x140233691
lea rdx, [0x1403b2d90]
mov r8d, 0xe3
mov ecx, ebp
mov qword [rsp + 0x80], rbx
call fcn.1401d5df0
mov rbx, rax
test rax, rax
jne 0x1402333da
lea r9, [0x1403b2da8]
lea edx, [rax + 0x71]
lea ecx, [rax + 4]
lea r8d, [r12 + 0x41]
mov dword [rsp + 0x20], 0xe5
call fcn.1401c3730
or eax, 0xffffffff
mov rbx, qword [rsp + 0x80]
mov rbp, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x98]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
movsxd rax, ebp
add rsi, rdi
add rbx, rax
mov qword [rsp + 0x40], rax
test ebp, ebp
jle 0x14023341f
mov rdx, rbp
nop
mov eax, edi
lea ecx, [rdi - 1]
dec rbx
not eax
shr ecx, 0x1f
shr eax, 0x1f
and ecx, eax
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
dec rdx
jne 0x1402333f0
movzx ecx, byte [rbx]
movzx eax, byte [rbx + 1]
mov r8d, 2
xor eax, 2
mov r10d, r12d
lea esi, [rax - 1]
not eax
shr eax, 0x1f
shr esi, 0x1f
and esi, eax
lea eax, [rcx - 1]
not ecx
shr eax, 0x1f
shr ecx, 0x1f
neg esi
and eax, ecx
neg eax
and esi, eax
cmp ebp, r8d
jle 0x1402334ad
lea r9, [rbx + 2]
nop dword [rax + rax]
movzx eax, byte [r9]
lea r9, [r9 + 1]
lea edx, [rax - 1]
not eax
shr eax, 0x1f
shr edx, 0x1f
and edx, eax
mov eax, r10d
not eax
neg edx
and eax, edx
or r10d, edx
mov dword [rsp + 0x88], eax
not eax
mov dword [rsp + 0x30], eax
mov ecx, dword [rsp + 0x88]
mov eax, dword [rsp + 0x30]
and ecx, r8d
inc r8d
and eax, r14d
mov r14d, ecx
or r14d, eax
cmp r8d, ebp
jl 0x140233460
mov edi, ebp
mov ecx, r13d
mov r10d, 1
sub edi, r14d
dec edi
sub ecx, edi
mov eax, edi
mov dword [rsp + 0x88], edi
xor eax, r13d
xor ecx, edi
or ecx, eax
lea eax, [r14 - 0xa]
or eax, r14d
xor ecx, r13d
xor eax, r14d
shr ecx, 0x1f
lea r14d, [rbp - 0xb]
shr eax, 0x1f
dec ecx
dec eax
and ecx, eax
and esi, ecx
lea ecx, [rbp - 0xb]
mov edx, ecx
mov eax, ecx
sub edx, r13d
xor eax, r13d
xor edx, r13d
or edx, eax
xor edx, ecx
shr edx, 0x1f
neg edx
mov dword [rsp + 0x30], edx
not edx
mov dword [rsp + 0x34], edx
mov ecx, dword [rsp + 0x30]
mov eax, dword [rsp + 0x34]
and ecx, r14d
and eax, r13d
or ecx, eax
mov dword [rsp + 0x38], ecx
cmp r14d, r10d
jle 0x1402335bd
mov r13d, ebp
sub r13d, edi
add r13d, 0xfffffff5
nop dword [rax + rax]
mov eax, r13d
and eax, r10d
lea ecx, [rax - 1]
not eax
shr eax, 0x1f
shr ecx, 0x1f
and ecx, eax
mov eax, ebp
sub eax, r10d
dec ecx
movsxd r8, eax
cmp r8, 0xb
jle 0x1402335aa
movzx r11d, cl
movsxd rdi, r10d
lea rax, [rbx + 0xb]
mov r9d, r11d
add r8, 0xfffffffffffffff5
not r9d
nop dword [rax + rax]
mov dword [rsp + 0x34], r11d
mov dword [rsp + 0x30], r9d
lea rax, [rax + 1]
mov ecx, dword [rsp + 0x34]
movzx edx, byte [rax + rdi - 1]
and dl, cl
mov ecx, dword [rsp + 0x30]
and cl, byte [rax - 1]
or cl, dl
mov byte [rax - 1], cl
dec r8
jne 0x140233580
add r10d, r10d
cmp r10d, r14d
jl 0x140233540
mov edi, dword [rsp + 0x88]
mov ecx, dword [rsp + 0x38]
movsxd r9, ecx
test ecx, ecx
jle 0x140233632
mov r8d, edi
mov r10d, edi
mov rdi, rbx
shr r8d, 0x1f
neg r10d
sub rdi, r15
movzx r11d, sil
nop dword [rax + rax]
mov ecx, r12d
lea edx, [r10 + r12]
inc r12d
shr ecx, 0x1f
shr edx, 0x1f
lea r15, [r15 + 1]
movzx eax, cl
xor dl, r8b
xor al, r8b
or dl, al
xor dl, cl
neg dl
movzx eax, dl
and eax, r11d
mov dword [rsp + 0x38], eax
not eax
mov dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x38]
movzx ecx, byte [rdi + r15 + 0xa]
and cl, al
mov eax, dword [rsp + 0x34]
and al, byte [r15 - 1]
or al, cl
mov byte [r15 - 1], al
dec r9
jne 0x1402335e0
mov rdx, qword [rsp + 0x40]
mov rcx, rbx
call fcn.140001200
mov rcx, rbx
call fcn.1401d5d50
mov edx, WSACleanup
lea r9, str..crypto_rsa_rsa_pk1.c
lea ecx, [rdx - 0x6d]
lea r8d, [rdx + 0x2e]
mov dword [rsp + 0x20], 0x12d
call fcn.1401c3730
mov ecx, esi
and ecx, 1
call fcn.1401c3af0
mov dword [rsp + 0x38], esi
not esi
mov dword [rsp + 0x34], esi
mov eax, dword [rsp + 0x38]
and eax, dword [rsp + 0x88]
mov ecx, dword [rsp + 0x34]
or eax, ecx
jmp 0x1402333b4
mov edx, WSACleanup
lea r9, [0x1403b2d78]
mov dword [rsp + 0x20], 0xdf
lea ecx, [rdx - 0x6d]
lea r8d, [rdx + 0x2e]
call fcn.1401c3730
or eax, 0xffffffff
jmp 0x1402333bc
or eax, 0xffffffff
jmp 0x1402333c4