Function at 0x140014070
Capabilities:
Encode data using xor

Disassembly:
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbx
push rbp
push r12
sub rsp, 0x60
mov rbp, r8
mov ebx, edx
test rcx, rcx
jne 0x1400140a7
lea r8d, [rcx + 0x2a]
lea rcx, str.msg___NULL
lea rdx, str.srcpkpkcs1pkcs_1_oaep_encode.c
call fcn.140013d70
cmp qword [rsp + 0xc0], 0
jne 0x1400140cb
mov r8d, 0x2b
lea rdx, str.srcpkpkcs1pkcs_1_oaep_encode.c
lea rcx, str.out___NULL
call fcn.140013d70
cmp qword [rsp + 0xc8], 0
jne 0x1400140ef
mov r8d, 0x2c
lea rdx, str.srcpkpkcs1pkcs_1_oaep_encode.c
lea rcx, str.outlen___NULL
call fcn.140013d70
movsxd r12, dword [rsp + 0xb8]
mov ecx, r12d
call fcn.140013e40
test eax, eax
jne 0x1400144af
mov ecx, dword [rsp + 0xb0]
call fcn.140013e70
test eax, eax
jne 0x1400144af
mov qword [rsp + 0x50], r13
lea rcx, [0x140000000]
mov qword [rsp + 0x48], r14
mov rax, r12
shl rax, 7
mov qword [rsp + 0x40], r15
mov r15d, 0
mov r14d, dword [rax + rcx + 0x554fc]
mov eax, dword [rsp + 0xa0]
test al, 7
setne r15b
shr eax, 3
add r15d, eax
lea ecx, [r14 + r14]
lea eax, [r15 - 2]
cmp ecx, eax
jae 0x1400144e1
mov r13d, r15d
sub r13d, ecx
lea eax, [r13 - 2]
cmp ebx, eax
ja 0x1400144e1
mov qword [rsp + 0x90], rsi
mov ecx, r15d
mov qword [rsp + 0x58], rdi
call fcn.140028a64
mov ecx, r15d
mov rsi, rax
call fcn.140028a64
mov ecx, r14d
mov rbx, rax
call fcn.140028a64
mov rdi, rax
test rsi, rsi
je 0x1400144c0
test rbx, rbx
je 0x1400144b8
test rax, rax
je 0x1400144b8
mov dword [rsp + 0x30], r15d
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov r9, rsi
mov ecx, r12d
test rbp, rbp
je 0x1400141eb
mov r8d, dword [rsp + 0x98]
mov rdx, rbp
jmp 0x1400141f1
xor r8d, r8d
mov rdx, rsi
call fcn.14000e850
mov ebp, eax
test eax, eax
jne 0x140014479
mov ebp, dword [rsp + 0x88]
lea rcx, [rsi + r14]
sub r13d, ebp
mov dword [rsp + 0x30], r14d
sub r13d, 2
xor edx, edx
mov r8d, r13d
call fcn.140022720
mov eax, dword [rsp + 0x30]
mov r8d, ebp
mov rdx, qword [rsp + 0x80]
add eax, r13d
mov dword [rsp + 0x30], eax
mov byte [rax + rsi], 1
mov eax, dword [rsp + 0x30]
inc eax
mov ecx, eax
add rcx, rsi
mov dword [rsp + 0x30], eax
call fcn.140022ae0
movsxd rax, dword [rsp + 0xb0]
mov edx, r14d
mov r8, qword [rsp + 0xa8]
mov rcx, rdi
add dword [rsp + 0x30], ebp
lea r9, [rax + rax*4]
add r9, r9
lea rax, [0x140000000]
call qword [rax + r9*8 + 0x56518]
cmp eax, r14d
je 0x14001428e
mov ebp, 9
jmp 0x140014479
mov r13d, r15d
mov r9, rbx
sub r13d, r14d
mov r8d, r14d
dec r13d
mov rdx, rdi
mov ecx, r12d
mov dword [rsp + 0x20], r13d
call fcn.140017200
mov ebp, eax
test eax, eax
jne 0x140014479
xor r8d, r8d
test r13d, r13d
je 0x140014351
cmp r13d, 0x20
jb 0x140014326
lea eax, [r13 - 1]
lea rdx, [rax + rsi]
add rax, rbx
cmp rsi, rax
ja 0x1400142de
cmp rdx, rbx
jae 0x140014326
mov edx, r13d
and edx, 0xffffffe0
nop dword [rax]
nop dword [rax + rax]
movdqu xmm0, xmmword [r8 + rsi]
lea eax, [r8 + 0x10]
movdqu xmm1, xmmword [r8 + rbx]
pxor xmm1, xmm0
movdqu xmmword [r8 + rsi], xmm1
add r8d, 0x20
movdqu xmm1, xmmword [rax + rbx]
movdqu xmm0, xmmword [rax + rsi]
pxor xmm1, xmm0
movdqu xmmword [rax + rsi], xmm1
cmp r8d, edx
jb 0x1400142f0
cmp r8d, r13d
jae 0x140014351
mov edx, r8d
mov r9, rbx
add rdx, rsi
sub r9, rsi
mov eax, r13d
sub eax, r8d
mov r8d, eax
movzx eax, byte [r9 + rdx]
xor byte [rdx], al
lea rdx, [rdx + 1]
sub r8, 1
jne 0x140014340
mov r9, rbx
mov dword [rsp + 0x20], r14d
mov r8d, r13d
mov rdx, rsi
mov ecx, r12d
call fcn.140017200
mov ebp, eax
test eax, eax
jne 0x140014479
xor edx, edx
test r14d, r14d
je 0x140014401
cmp r14d, 0x20
jb 0x1400143d1
lea eax, [r14 - 1]
lea r8, [rax + rdi]
add rax, rbx
cmp rdi, rax
ja 0x140014397
cmp r8, rbx
jae 0x1400143d1
mov r8d, r14d
and r8d, 0xffffffe0
nop
movdqu xmm0, xmmword [rdx + rdi]
lea eax, [rdx + 0x10]
movdqu xmm1, xmmword [rdx + rbx]
pxor xmm1, xmm0
movdqu xmmword [rdx + rdi], xmm1
add edx, 0x20
movdqu xmm1, xmmword [rax + rbx]
movdqu xmm0, xmmword [rax + rdi]
pxor xmm1, xmm0
movdqu xmmword [rax + rdi], xmm1
cmp edx, r8d
jb 0x1400143a0
cmp edx, r14d
jae 0x140014401
mov ecx, edx
mov r8, rbx
add rcx, rdi
sub r8, rdi
mov eax, r14d
sub eax, edx
mov edx, eax
nop dword [rax + rax]
movzx eax, byte [r8 + rcx]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x1400143f0
mov rbp, qword [rsp + 0xc8]
cmp dword [rbp], r15d
jae 0x14001441a
mov dword [rbp], r15d
mov ebp, 6
jmp 0x140014479
mov r12, qword [rsp + 0xc0]
mov r8, r14
mov dword [rsp + 0x30], 0
mov rdx, rdi
mov byte [r12], 0
mov eax, dword [rsp + 0x30]
inc eax
mov ecx, eax
add rcx, r12
mov dword [rsp + 0x30], eax
call fcn.140022ae0
mov eax, dword [rsp + 0x30]
mov rdx, rsi
add eax, r14d
mov r8d, r13d
mov ecx, eax
add rcx, r12
mov dword [rsp + 0x30], eax
call fcn.140022ae0
mov ecx, dword [rsp + 0x30]
sub r15d, r14d
dec ecx
add ecx, r15d
mov dword [rbp], ecx
xor ebp, ebp
mov dword [rsp + 0x30], ecx
mov rcx, rdi
call fcn.140028a50
mov rcx, rbx
call fcn.140028a50
mov rcx, rsi
call fcn.140028a50
mov eax, ebp
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x90]
mov r13, qword [rsp + 0x50]
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x40]
add rsp, 0x60
pop r12
pop rbp
pop rbx
ret
mov rcx, rsi
call fcn.140028a50
test rbx, rbx
je 0x1400144cd
mov rcx, rbx
call fcn.140028a50
test rdi, rdi
je 0x1400144da
mov rcx, rdi
call fcn.140028a50
mov eax, ntohs
jmp 0x140014493
mov eax, reloc.WS2_32.dll_shutdown
jmp 0x1400144a0