Function at 0x140062700
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 r15, r9
mov rsi, rcx
movsxd r12, dword [r9 + 8]
mov rax, qword [r9]
lea rcx, [rax + r12*8]
add rcx, 0xfffffffffffffff8
mov rbp, 0xfffffffffffffff8
xor r13d, r13d
nop
mov r9, r12
add r9, r13
je 0x1400627d7
mov rdi, qword [rcx + r13*8]
dec r13
add rbp, 8
test rdi, rdi
je 0x140062730
mov rbx, r12
add rbx, r13
jne 0x140062759
cmp qword [rax], r8
jbe 0x1400627d7
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x38], r8
lea r14, [r12 + r13]
inc r14
mov rcx, rsi
mov rdx, r14
call fcn.140052a70
test eax, eax
je 0x14006280d
mov rax, rdi
shr rax, 1
or rax, rdi
mov rcx, rax
shr rcx, 2
or rcx, rax
mov rax, rcx
shr rax, 4
or rax, rcx
mov rcx, rax
shr rcx, 8
or rcx, rax
mov rax, rcx
shr rax, 0x10
or rax, rcx
mov rdi, rax
shr rdi, 0x20
or rdi, rax
mov rcx, rdi
shr rcx, 1
test rbx, rbx
mov rax, qword [rsp + 0x38]
jne 0x140062811
cmp rcx, rax
jae 0x140062811
mov dword [rsp + 0x20], 0x137
jmp 0x1400627df
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
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
xor esi, esi
jmp 0x1400627fa
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x48], rcx
lea r14, [r12*8]
mov rdx, r14
sub rdx, rbp
mov rcx, qword [rsi]
lea r8, [0x1402e1190]
call fcn.140063830
mov r10, qword [rsp + 0x38]
mov rax, qword [rsi]
mov qword [rsp + 0x40], r14
add rax, r14
and qword [rax + r13*8], rdi
mov rax, qword [rsi]
test r10, r10
je 0x14006286d
test rbx, rbx
mov r14, qword [rsp + 0x30]
je 0x14006287c
cmp rbx, 4
jae 0x140062880
mov ecx, 1
xor edx, edx
jmp 0x1400628e0
mov ecx, 0xffffffff
mov r14, qword [rsp + 0x30]
jmp 0x140062919
xor edx, edx
jmp 0x1400628ec
mov r8, rbx
and r8, 0xfffffffffffffffc
lea rcx, [r8 + 1]
pxor xmm0, xmm0
xor edx, edx
pxor xmm1, xmm1
nop word cs:[rax + rax]
movdqu xmm2, xmmword [rax + rdx*8 + 8]
por xmm0, xmm2
movdqu xmm2, xmmword [rax + rdx*8 + 0x18]
por xmm1, xmm2
add rdx, 4
cmp r8, rdx
jne 0x1400628a0
por xmm1, xmm0
pshufd xmm0, xmm1, 0xee
por xmm0, xmm1
movq rdx, xmm0
cmp rbx, r8
je 0x1400628ec
nop word cs:[rax + rax]
or rdx, qword [rax + rcx*8]
inc rcx
cmp r14, rcx
jne 0x1400628e0
mov rcx, rdx
not rcx
dec rdx
and rdx, rcx
mov r8, qword [rax]
mov r9, r8
xor r9, r10
mov rcx, r8
sub rcx, r10
xor rcx, r8
or rcx, r9
xor rcx, r8
and rcx, rdx
sar rcx, 0x3f
not ecx
mov qword [rsp + 0x30], rsi
mov r8, qword [r15]
mov rdx, r12
add rdx, r13
je 0x140062a1f
mov r10, r14
and r10, 0xfffffffffffffffe
xor edx, edx
xor r9d, r9d
nop dword [rax]
mov r11, qword [r8 + r9*8]
mov rdi, qword [r8 + r9*8 + 8]
mov rbp, qword [rax + r9*8]
mov r15, qword [rax + r9*8 + 8]
mov rsi, rbp
xor rsi, r11
mov rbx, rbp
sub rbx, r11
xor rbx, rbp
or rbx, rsi
xor rbx, rbp
sar rbx, 0x3f
test rsi, rsi
cmove ebx, edx
mov r11, r15
xor r11, rdi
mov rdx, r15
sub rdx, rdi
xor rdx, r15
or rdx, r11
xor rdx, r15
sar rdx, 0x3f
test r11, r11
cmove edx, ebx
add r9, 2
cmp r10, r9
jne 0x140062940
test r14b, 1
je 0x1400629ca
mov r8, qword [r8 + r9*8]
mov rax, qword [rax + r9*8]
mov r9, rax
xor r9, r8
mov r10, rax
sub r10, r8
xor r10, rax
or r10, r9
xor r10, rax
sar r10, 0x3f
test r9, r9
cmove r10d, edx
mov edx, r10d
shr edx, 0x1f
and edx, ecx
mov rax, qword [rsp + 0x50]
mov dword [rax], edx
mov rax, rdx
dec rdx
and rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x30]
mov rcx, qword [r8]
or qword [rcx], rdx
neg rax
mov rdx, qword [rsp + 0x40]
add rdx, qword [r8]
mov rcx, qword [rsp + 0x48]
or rcx, rax
and qword [rdx + r13*8], rcx
mov dword [r8 + 0x10], 0
lea eax, [r12 + r13]
inc eax
mov dword [r8 + 8], eax
mov esi, 1
jmp 0x1400627fa
xor edx, edx
xor r9d, r9d
test r14b, 1
jne 0x14006299f
jmp 0x1400629ca