Function at 0x140063520
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x58
mov rdi, r8
mov qword [rsp + 0x30], rdx
mov r14, rcx
mov r12, 0xfffffffffffffff8
mov rbx, r9
mov r13, r9
nop dword [rax + rax]
sub r13, 1
jb 0x1400637c5
mov rax, qword [rdi + r13*8]
add r12, 8
test rax, rax
je 0x140063550
test r13, r13
jne 0x14006357a
mov rcx, qword [rsp + 0x30]
cmp qword [rdi], rcx
jbe 0x1400637c5
lea r15, [r13 + 1]
mov rcx, rax
shr rcx, 1
or rcx, rax
mov rax, rcx
shr rax, 2
or rax, rcx
mov rcx, rax
shr rcx, 4
or rcx, rax
mov rax, rcx
shr rax, 8
or rax, rcx
mov rsi, rax
shr rsi, 0x10
or rsi, rax
mov rax, rsi
shr rax, 0x20
mov qword [rsp + 0x38], rax
test r12, r12
je 0x1400635d2
lea rcx, [r14 + r13*8]
add rcx, 8
xor edx, edx
mov r8, r12
call fcn.140268830
or qword [rsp + 0x38], rsi
shl rbx, 3
sub rbx, r12
mov qword [rsp + 0x50], rbx
mov rbx, r13
and rbx, 0xfffffffffffffffc
lea rax, [rbx + 1]
mov qword [rsp + 0x40], rax
mov rbp, r15
and rbp, 0xfffffffffffffffe
mov esi, 0x64
mov qword [rsp + 0x48], rbx
jmp 0x140063622
shr eax, 0x1f
mov rbx, qword [rsp + 0x48]
not ecx
test eax, ecx
jne 0x1400637e5
dec esi
je 0x1400637ec
mov rcx, r14
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0xc0]
call fcn.140063830
mov rax, qword [rsp + 0x38]
and qword [r14 + r13*8], rax
cmp qword [rsp + 0x30], 0
je 0x140063670
xor eax, eax
test r15, r15
je 0x140063680
cmp r15, 1
je 0x1400636ec
cmp r13, 4
jae 0x140063689
mov ecx, 1
xor eax, eax
jmp 0x1400636e0
xor ecx, ecx
jmp 0x14006371c
mov rcx, 0xffffffffffffffff
jmp 0x140063618
pxor xmm0, xmm0
xor eax, eax
pxor xmm1, xmm1
nop word cs:[rax + rax]
movdqu xmm2, xmmword [r14 + rax*8 + 8]
por xmm0, xmm2
movdqu xmm2, xmmword [r14 + rax*8 + 0x18]
por xmm1, xmm2
add rax, 4
cmp rbx, rax
jne 0x1400636a0
por xmm1, xmm0
pshufd xmm0, xmm1, 0xee
por xmm0, xmm1
movq rax, xmm0
mov rcx, qword [rsp + 0x40]
cmp r13, rbx
je 0x1400636ec
nop dword [rax + rax]
or rax, qword [r14 + rcx*8]
inc rcx
cmp r15, rcx
jne 0x1400636e0
mov rcx, rax
not rcx
dec rax
and rax, rcx
mov rdx, qword [r14]
mov r8, rdx
mov r9, qword [rsp + 0x30]
xor r8, r9
mov rcx, rdx
sub rcx, r9
xor rcx, rdx
or rcx, r8
xor rcx, rdx
and rcx, rax
sar rcx, 0x3f
xor eax, eax
xor edx, edx
test r13, r13
je 0x14006378b
nop word cs:[rax + rax]
mov r8, qword [rdi + rdx*8]
mov r9, qword [rdi + rdx*8 + 8]
mov rbx, qword [r14 + rdx*8]
mov r11, qword [r14 + rdx*8 + 8]
mov r12, rbx
xor r12, r8
mov r10, rbx
sub r10, r8
xor r10, rbx
or r10, r12
xor r10, rbx
sar r10, 0x3f
test r12, r12
cmove r10d, eax
mov r8, r11
xor r8, r9
mov rax, r11
sub rax, r9
xor rax, r11
or rax, r8
xor rax, r11
sar rax, 0x3f
test r8, r8
cmove eax, r10d
add rdx, 2
cmp rbp, rdx
jne 0x140063730
test r15b, 1
je 0x140063610
mov r8, qword [rdi + rdx*8]
mov rdx, qword [r14 + rdx*8]
mov r9, rdx
xor r9, r8
mov r10, rdx
sub r10, r8
xor r10, rdx
or r10, r9
xor r10, rdx
sar r10, 0x3f
test r9, r9
cmove r10d, eax
mov eax, r10d
jmp 0x140063610
mov dword [rsp + 0x20], 0xe2
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_random.c
xor esi, esi
mov ecx, 3
xor edx, edx
mov r8d, WSAGetLastError
jmp 0x14006380a
mov esi, 1
jmp 0x14006380f
mov dword [rsp + 0x20], 0x10b
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_random.c
xor esi, esi
mov ecx, 3
xor edx, edx
mov r8d, reloc.WS2_32.dll_WSAStartup
call fcn.1400490c0
mov eax, esi
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret