Function at 0x1400a3160
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x98
mov r13, r9
mov rbp, r8
mov r14, rdx
mov rdi, rcx
mov r12, qword [rsp + 0x118]
mov rsi, qword [rsp + 0x110]
mov rax, qword [0x1404a7eb8]
xor rax, rsp
mov qword [rsp + 0x90], rax
test rsi, rsi
jne 0x1400a31ae
call fcn.14003add0
mov rsi, rax
test r12, r12
cmove r12, rsi
mov rcx, rsi
call fcn.14003aa30
lea rcx, [rax*2 + 2]
cmp r14, rcx
jae 0x1400a31ea
mov dword [rsp + 0x20], 0x64
lea r9, str..._.._third_party_boringssl_src_crypto_rsa_extra_rsa_crypt.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x7e
jmp 0x1400a321e
lea rcx, [rax + rax]
mov r15, rcx
not r15
lea rdx, [r14 + r15]
dec rdx
cmp r13, rdx
jbe 0x1400a3251
mov dword [rsp + 0x20], WSASetLastError
lea r9, str..._.._third_party_boringssl_src_crypto_rsa_extra_rsa_crypt.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, WSAStartup
call fcn.1400885a0
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
cmp rcx, qword [0x1404a7eb8]
jne 0x1400a3545
mov eax, esi
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rbx, [r14 - 1]
cmp rbx, rcx
jbe 0x1400a3446
mov rdx, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x100]
mov byte [rdi], 0
mov qword [rsp + 0x40], rax
lea r8, [rdi + rax]
inc r8
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], 0
xor esi, esi
mov qword [rsp + 0x48], r8
xor r9d, r9d
call fcn.14003aa40
mov ecx, 0
mov qword [rsp + 0x38], rcx
test eax, eax
je 0x1400a3520
mov qword [rsp + 0x38], rdi
mov rsi, rbx
sub rsi, r13
add r15, rsi
mov rdi, qword [rsp + 0x48]
je 0x1400a32d4
mov rax, qword [rsp + 0x40]
lea rcx, [rdi + rax]
xor edx, edx
mov r8, r15
call fcn.1402a4b90
mov rax, qword [rsp + 0x38]
lea r15, [rax + 1]
mov rdx, qword [rsp + 0x40]
lea rcx, [rax + rdx]
mov rax, rdx
not rax
add rsi, rdi
mov rdi, rcx
mov byte [rax + rsi], 1
test r13, r13
je 0x1400a3317
add r14, rdi
sub r14, r13
sub r14, rdx
mov rcx, r14
mov rdx, rbp
mov r8, r13
call fcn.1402a44e0
mov rdx, qword [rsp + 0x40]
mov rcx, r15
call fcn.1400a2680
test eax, eax
je 0x1400a3453
mov r13, rbx
sub r13, qword [rsp + 0x40]
mov rcx, r13
call fcn.1400985f0
test rax, rax
je 0x1400a3471
mov r14, rax
mov qword [rsp + 0x20], r12
mov rcx, rax
mov rdx, r13
mov r8, r15
mov r9, qword [rsp + 0x40]
call fcn.14004d0f0
test eax, eax
je 0x1400a3463
mov rcx, rdi
mov rdx, qword [rsp + 0x40]
cmp rbx, rdx
mov r8, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x38]
je 0x1400a3415
cmp r13, 1
mov rax, r13
adc rax, 0
cmp r13, 8
jb 0x1400a33af
add rcx, rax
inc rcx
lea r9, [r14 + rax]
cmp r8, r9
setb r9b
cmp r14, rcx
setb cl
test r9b, cl
je 0x1400a348b
xor ecx, ecx
mov r9, rax
mov r11, rcx
and r9, 3
je 0x1400a33d1
mov r11, rcx
movzx r10d, byte [r14 + r11]
xor byte [r8 + r11], r10b
inc r11
dec r9
jne 0x1400a33c0
sub rcx, rax
cmp rcx, 0xfffffffffffffffc
ja 0x1400a3415
lea rax, [rdx + rdi]
add rax, 4
movzx ecx, byte [r14 + r11]
xor byte [rax + r11 - 3], cl
movzx ecx, byte [r14 + r11 + 1]
xor byte [rax + r11 - 2], cl
movzx ecx, byte [r14 + r11 + 2]
xor byte [rax + r11 - 1], cl
movzx ecx, byte [r14 + r11 + 3]
xor byte [rax + r11], cl
add r11, 4
cmp r13, r11
jne 0x1400a33e2
mov qword [rsp + 0x20], r12
lea rcx, [rsp + 0x50]
mov r9, r13
call fcn.14004d0f0
test eax, eax
je 0x1400a3463
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x1400a34f6
cmp rax, 8
jae 0x1400a3481
xor ecx, ecx
jmp 0x1400a3502
mov dword [rsp + 0x20], reloc.WS2_32.dll_WSAGetLastError
jmp 0x1400a31d2
xor esi, esi
mov qword [rsp + 0x38], 0
jmp 0x1400a3520
mov qword [rsp + 0x38], 0
jmp 0x1400a351d
mov qword [rsp + 0x38], 0
xor esi, esi
jmp 0x1400a3520
cmp rax, 0x20
jae 0x1400a349c
xor ecx, ecx
jmp 0x1400a34d5
cmp r13, 0x20
jae 0x1400a354b
xor ecx, ecx
jmp 0x1400a359e
mov rcx, rax
and rcx, 0xffffffffffffffe0
xor edx, edx
movups xmm0, xmmword [rdi + rdx + 1]
movups xmm1, xmmword [rdi + rdx + 0x11]
xorps xmm0, xmmword [rsp + rdx + 0x50]
xorps xmm1, xmmword [rsp + rdx + 0x60]
movups xmmword [rdi + rdx + 1], xmm0
movups xmmword [rdi + rdx + 0x11], xmm1
add rdx, 0x20
cmp rcx, rdx
jne 0x1400a34a5
cmp rax, rcx
je 0x1400a34f6
test al, 0x18
je 0x1400a3502
mov rdx, rcx
mov rcx, rax
and rcx, 0xfffffffffffffff8
mov r8, qword [rsp + rdx + 0x50]
xor qword [r15 + rdx], r8
add rdx, 8
cmp rcx, rdx
jne 0x1400a34df
cmp rax, rcx
jne 0x1400a3502
mov eax, 1
mov qword [rsp + 0x38], rax
jmp 0x1400a351d
mov edx, 1
mov qword [rsp + 0x38], rdx
movzx edx, byte [rsp + rcx + 0x50]
xor byte [r15 + rcx], dl
inc rcx
cmp rax, rcx
jne 0x1400a350c
mov rsi, r14
mov rcx, rsi
call fcn.140098760
mov rsi, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
cmp rcx, qword [0x1404a7eb8]
je 0x1400a323b
call fcn.14029fd30
int3
mov rcx, rax
and rcx, 0xffffffffffffffe0
lea r10, [rdx + rdi]
add r10, 0x11
xor r9d, r9d
movups xmm0, xmmword [r14 + r9]
movups xmm1, xmmword [r14 + r9 + 0x10]
movups xmm2, xmmword [r10 + r9 - 0x10]
xorps xmm2, xmm0
movups xmm0, xmmword [r10 + r9]
xorps xmm0, xmm1
movups xmmword [r10 + r9 - 0x10], xmm2
movups xmmword [r10 + r9], xmm0
add r9, 0x20
cmp rcx, r9
jne 0x1400a355d
cmp r13, rcx
je 0x1400a3415
test al, 0x18
je 0x1400a33b1
mov r10, rcx
mov rcx, rax
and rcx, 0xfffffffffffffff8
mov r9, qword [r14 + r10]
xor qword [r8 + r10], r9
add r10, 8
cmp rcx, r10
jne 0x1400a35a8
cmp r13, rcx
je 0x1400a3415
jmp 0x1400a33b1