Function at 0x1401831a0
Capabilities:
Encode data using xor

Disassembly:
mov dword [rsp + 0x10], edx
push rbx
push rsi
push rdi
push r12
push r14
mov eax, 0x40
call fcn.1401b4b30
sub rsp, rax
xor edi, edi
movsxd rbx, r9d
mov rsi, r8
mov r12, rcx
mov r14d, edi
cmp ebx, 0xa
jge 0x1401831f8
lea r9, str.crypto_rsa_rsa_ssl.c
mov dword [rsp + 0x20], 0x47
lea edx, [rax + 0x32]
lea ecx, [rax - 0x3c]
lea r8d, [rax + 0x2f]
call fcn.1400cf1e0
lea eax, [rdi - 1]
add rsp, 0x40
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret
mov qword [rsp + 0x70], rbp
lea rdx, str.crypto_rsa_rsa_ssl.c
mov ebp, dword [rsp + 0x90]
mov r8d, 0x4b
mov qword [rsp + 0x38], r13
movsxd r13, ebp
mov rcx, r13
call fcn.1400da030
mov r10, rax
test rax, rax
jne 0x140183251
lea r9, str.crypto_rsa_rsa_ssl.c
mov dword [rsp + 0x20], 0x4d
lea edx, [rax + 0x72]
lea ecx, [rax + 4]
lea r8d, [rax + 0x41]
call fcn.1400cf1e0
mov eax, 0xffffffff
jmp 0x1401834ab
add rsi, rbx
mov qword [rsp + 0x30], r15
add r10, r13
test ebp, ebp
jle 0x140183294
mov rdx, rbp
mov eax, ebx
lea ecx, [rbx - 1]
not eax
shr ecx, 0x1f
shr eax, 0x1f
dec r10
and ecx, eax
dec ecx
mov eax, ecx
and eax, 1
sub ebx, eax
mov eax, ecx
and eax, 1
sub rsi, rax
movzx eax, byte [rsi]
and al, cl
mov byte [r10], al
sub rdx, 1
jne 0x140183263
movzx eax, byte [r10 + 1]
mov r11d, 2
xor eax, 2
mov r9d, edi
mov esi, edi
lea ebx, [rax - 1]
not eax
shr eax, 0x1f
shr ebx, 0x1f
and ebx, eax
movzx eax, byte [r10]
dec eax
neg ebx
shr eax, 0x1f
neg eax
and ebx, eax
mov r15d, ebx
not r15d
mov dword [rsp + 0x88], r15d
cmp ebp, r11d
jle 0x14018333d
mov eax, 0xffffffff
lea r15, [r10 + 2]
nop
movzx r8d, byte [r15]
lea r15, [r15 + 1]
lea edx, [r8 - 1]
xor r8d, 3
shr edx, 0x1f
neg edx
and eax, edx
or r9d, edx
mov ecx, eax
lea edx, [r8 - 1]
and eax, r11d
shr edx, 0x1f
not ecx
not r8d
and r14d, ecx
shr r8d, 0x1f
or r14d, eax
and edx, r8d
neg edx
mov eax, r9d
or edx, r9d
not eax
mov ecx, eax
inc r11d
and ecx, 1
add ecx, esi
mov esi, edx
and esi, ecx
cmp r11d, ebp
jl 0x1401832e0
mov r15d, dword [rsp + 0x88]
lea r9d, [r14 + 1]
lea eax, [r14 - 0xa]
or eax, r14d
xor eax, r14d
shr eax, 0x1f
dec eax
and ebx, eax
lea eax, [rsi - 8]
or eax, esi
mov r11d, ebx
xor eax, esi
or r11d, r15d
mov esi, dword [rsp + 0x78]
not r11d
shr eax, 0x1f
and r11d, 0x71
neg eax
and r15d, 0x6b
or r11d, r15d
mov ecx, ebx
and ebx, eax
not ecx
mov r8d, ebx
mov eax, ebp
or r8d, ecx
sub eax, r9d
and r11d, r8d
mov ecx, esi
sub ecx, eax
mov edx, ebx
xor ecx, eax
not r8d
xor eax, esi
and r8d, 0x73
or ecx, eax
or r11d, r8d
xor ecx, esi
not edx
shr ecx, 0x1f
dec ecx
and ebx, ecx
mov ecx, ebp
sub ecx, esi
mov eax, ebx
or eax, edx
xor ecx, esi
and r11d, eax
and r9d, ebx
not eax
mov r15d, ebx
and eax, 0x6d
not r15d
or r11d, eax
mov eax, esi
xor eax, ebp
mov dword [rsp + 0x88], r11d
or ecx, eax
mov r11d, ebx
xor ecx, ebp
mov eax, ebp
shr ecx, 0x1f
neg ecx
mov r14d, ecx
and ecx, ebp
not r14d
and r14d, esi
or r14d, ecx
sub eax, r14d
and eax, r15d
or eax, r9d
movsxd rsi, eax
sub ebp, eax
add rsi, r10
test r14d, r14d
jle 0x140183459
mov r9, r12
nop word [rax + rax]
mov eax, edi
inc edi
xor eax, ebp
lea ecx, [rax - 1]
not eax
shr eax, 0x1f
shr ecx, 0x1f
and ecx, eax
mov eax, r14d
neg ecx
mov edx, ecx
and rcx, rax
sub rsi, rcx
mov rax, r9
sub rax, r12
xor edx, r11d
and r11d, edx
movzx ecx, byte [rax + rsi]
movzx eax, r11b
and cl, r11b
not al
and al, byte [r9]
or cl, al
mov byte [r9], cl
inc r9
cmp edi, r14d
jl 0x140183410
mov r9d, 0xa2
lea r8, str.crypto_rsa_rsa_ssl.c
mov rdx, r13
mov rcx, r10
call fcn.1400da190
mov r8d, dword [rsp + 0x88]
lea r9, str.crypto_rsa_rsa_ssl.c
mov edx, WSAStartup
mov dword [rsp + 0x20], 0xa3
lea ecx, [rdx - 0x6e]
call fcn.1400cf1e0
mov ecx, ebx
and ecx, 1
call fcn.1400cf4d0
and ebx, ebp
or ebx, r15d
mov r15, qword [rsp + 0x30]
mov eax, ebx
mov rbp, qword [rsp + 0x70]
mov r13, qword [rsp + 0x38]
add rsp, 0x40
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret