Function at 0x140017cb6
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xb8
mov rsi, r9
mov rdi, r8
mov rbx, rdx
mov qword [rsp + 0x40], rcx
mov rax, qword [0x1400cb0e0]
xor rax, rsp
mov qword [rsp + 0xb0], rax
mov r15, qword [rdx]
test r15, r15
je 0x140017d07
mov rcx, qword [rbx + 8]
xor eax, eax
xor edx, edx
or rax, qword [rcx + rdx*8]
inc rdx
cmp r15, rdx
jne 0x140017cf9
jmp 0x140017d09
xor eax, eax
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
jne 0x140017d33
lea rcx, str._mp_eq_integer_d__0_
lea rdx, str..._mpint.c
mov r8d, 0x701
call fcn.140089884
mov r15, qword [rbx]
mov qword [rsp + 0x68], rsi
test r15, r15
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x48], rbx
je 0x140017db2
mov r8, qword [rbx + 8]
xor ecx, ecx
xor ebp, ebp
xor edi, edi
xor eax, eax
xor ebx, ebx
mov r10, rdi
mov rsi, rbp
mov r9, rcx
mov rbp, qword [r8 + rbx*8]
mov rcx, rbp
shr rcx, 1
mov edx, ebp
and edx, 1
or rdx, rcx
neg rdx
sar rdx, 0x3f
xor rax, rdi
and rax, rdx
mov rdi, rax
mov rax, rbp
xor rbp, rsi
and rbp, rdx
xor rbp, rsi
xor rdi, r10
mov rcx, rbx
xor rcx, r9
and rcx, rdx
xor rcx, r9
inc rbx
cmp r15, rbx
jne 0x140017d55
shl rcx, 6
mov r13d, 0x40
sub r13, rcx
jmp 0x140017dbc
xor ebp, ebp
mov r13d, 0x40
xor edi, edi
xor r10d, r10d
mov edx, 6
dec rdx
mov esi, 1
mov ecx, edx
shl esi, cl
mov r9, rbp
mov r8, r10
movsxd r10, esi
mov ecx, 0x40
sub ecx, r10d
mov rsi, rbp
shr rsi, cl
mov rcx, rsi
shr rcx, 1
and esi, 1
or rsi, rcx
neg rsi
shr rsi, 0x3f
mov ecx, r10d
shld rbp, rdi, cl
or rsi, 0xfffffffffffffffe
mov rbx, rdi
shl rbx, cl
add r10, r8
xor rbp, r9
inc rsi
and rbp, rsi
xor rbp, r9
xor rbx, rdi
and rbx, rsi
xor rdi, rbx
xor r10, r8
and r10, rsi
xor r10, r8
test rdx, rdx
jne 0x140017dc4
shr rbp, 0x20
mov ecx, 0x90d876cd
lea rdx, [rcx + 0x2028d09]
imul rdx, rbp
shr rdx, 0x22
neg rdx
add rdx, rcx
add rdx, 0x6565fb1d
imul rdx, rbp
shr rdx, 0x22
neg rdx
add rdx, rcx
add rdx, 0x255eab1b
imul rdx, rbp
shr rdx, 0x21
neg rdx
add rdx, rcx
add rdx, 0xb552941
imul rdx, rbp
shr rdx, 0x20
neg rdx
add rdx, rcx
add rdx, 0x1a0194eb
imul rdx, rbp
shr rdx, 0x1f
neg rdx
add rdx, rcx
add rdx, 0x66845d36
imul rdx, rbp
shr rdx, 0x1f
neg rdx
add rdx, rcx
add rdx, 0x5c210374
imul rdx, rbp
shr rdx, 0x1f
sub rcx, rdx
imul rcx, rbp
and rcx, 0xfffffffffc000000
shl rcx, 6
movabs rdi, 0x682799a000000000
sub rdi, rcx
xor ebx, ebx
mov edx, 5
mov r8, 0xffffffffffffffff
mov r9, rbx
mov rsi, rdi
mov ebp, 1
mov ecx, edx
shl ebp, cl
mov rax, r10
shr rax, cl
and eax, 1
mov ecx, ebp
shld rbx, rdi, cl
shl rdi, cl
xor rbx, r9
neg rax
and rbx, rax
xor rbx, r9
xor rdi, rsi
and rdi, rax
xor rdi, rsi
dec rdx
cmp rdx, r8
jne 0x140017ef4
mov rax, qword [rsp + 0x40]
add r15, qword [rax]
shl r15, 6
or r15, 3
mov eax, 0xbf
cmp r15, rax
cmovb rax, r15
add r15, 0x3f
sub r15, rax
and r15, 0xffffffffffffffc0
lea r14, [r15 + 0x100]
shr r14, 6
mov rcx, r14
call fcn.140014b05
mov r12, rax
add r13, r15
shr r13, 6
mov rcx, rax
mov rdx, rax
mov r8, rdi
mov r9, r13
call fcn.140018378
inc r13
mov rcx, r12
mov rdx, r12
mov r8, rbx
mov r9, r13
call fcn.140018378
mov rcx, r14
call fcn.140014b05
lea r13, [r15 + 0xbf]
add r15, 0xc0
shr r15, 6
mov r8d, 1
mov rcx, rax
mov qword [rsp + 0x50], rax
mov rdx, rax
mov r9, r15
call fcn.140018378
mov rdi, qword [rsp + 0x48]
mov rcx, qword [rdi]
add rcx, r14
call fcn.140014b05
mov rsi, rax
mov rcx, qword [rax]
cmp r14, rcx
cmova rcx, r14
call fcn.140014b05
mov rbp, rax
add r14, qword [rax]
mov rcx, r14
call fcn.140014b05
mov rbx, rax
mov rax, qword [rbp]
mov rcx, qword [r12]
mov rdx, qword [rbx]
cmp rcx, rax
cmova rax, rcx
cmp rax, rdx
cmova rax, rdx
add rax, rax
mov rdx, qword [rdi]
mov rdi, qword [rsi]
cmp rcx, rdx
cmova rdx, rcx
cmp rdx, rdi
cmova rdx, rdi
lea rcx, [rax + rax*2]
add rdx, rdx
lea rax, [rdx + rdx*2]
cmp rax, rcx
cmova rcx, rax
call fcn.140014b05
mov rdi, rax
mov rax, qword [rbx]
shr r13, 6
cmp rax, r13
mov qword [rsp + 0x58], r13
mov rcx, r13
cmovb rcx, rax
mov rdx, rax
sub rdx, rcx
cmp rdx, rax
cmovae rdx, rax
mov qword [rsp + 0xa0], rdx
shl rcx, 3
add rcx, qword [rbx + 8]
mov qword [rsp + 0xa8], rcx
mov rax, qword [rsp + 0x40]
mov r13, qword [rax]
shl r13, 6
or r13, 4
cmp r13, 0x15
jb 0x14001813f
mov r14d, 0x14
mov r15, 0xffffffffffffffff
movups xmm0, xmmword [rdi]
movaps xmmword [rsp + 0x90], xmm0
mov rcx, rsi
mov rdx, r12
mov r8, qword [rsp + 0x48]
lea r9, [rsp + 0x90]
call fcn.140015b09
mov rdx, qword [rbp]
mov rcx, qword [rbp + 8]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
mov qword [rsp + 0x30], 1
mov r8, qword [rsp + 0x50]
mov r9, rsi
call fcn.1400157e2
movups xmm0, xmmword [rdi]
movaps xmmword [rsp + 0x80], xmm0
mov rcx, rbx
mov rdx, r12
mov r8, rbp
lea r9, [rsp + 0x80]
call fcn.140015b09
mov r8d, 0x3f
mov rcx, r12
lea rdx, [rsp + 0xa0]
call fcn.1400152b1
add r14, r14
add r14, 0xffffffffffffffff
cmp r14, r13
jb 0x1400180ad
mov rcx, rsi
call fcn.140014bcf
mov rcx, rbp
call fcn.140014bcf
mov rcx, rbx
call fcn.140014bcf
mov rcx, rdi
call fcn.140014bcf
mov rsi, qword [rsp + 0x40]
mov rcx, qword [rsi]
add rcx, qword [r12]
call fcn.140014b05
mov r15, rax
mov rcx, rax
mov rdx, r12
mov r8, rsi
call fcn.140015344
mov rax, qword [r15]
mov rdx, qword [rsp + 0x58]
cmp rax, rdx
cmovb rdx, rax
mov rcx, rax
sub rcx, rdx
cmp rcx, rax
cmovae rcx, rax
lea rdi, [rsp + 0x70]
mov qword [rdi], rcx
shl rdx, 3
add rdx, qword [r15 + 8]
mov qword [rdi + 8], rdx
mov rcx, qword [rsi]
call fcn.140014b05
mov r13, rax
mov r8d, 0x3f
mov rcx, rax
mov rdx, rdi
call fcn.1400152b1
mov rbp, qword [rsp + 0x48]
mov rcx, qword [rbp]
call fcn.140014b05
mov r14, rax
mov rcx, rax
mov rdx, r13
mov r8, rbp
call fcn.140015344
mov rdx, qword [r14]
mov rcx, qword [r14 + 8]
mov rax, 0xffffffffffffffff
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], 1
mov r8, rsi
mov r9, r14
call fcn.1400157e2
xor ebx, ebx
mov esi, 2
mov rcx, r14
mov rdx, rbp
call fcn.1400158ee
mov edi, eax
and eax, 1
mov rdx, qword [r14]
mov rcx, qword [r14 + 8]
mov qword [rsp + 0x30], rax
neg rax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
mov r8, r14
mov r9, rbp
call fcn.1400157e2
add ebx, edi
dec esi
jne 0x14001821f
mov r9d, ebx
mov rdx, qword [r13]
mov rcx, qword [r13 + 8]
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov r8, r13
call fcn.140015852
mov rcx, r14
mov rdx, rbp
call fcn.1400158ee
test eax, eax
mov rbp, qword [rsp + 0x60]
je 0x1400182a1
lea rcx, str._mp_cmp_hs_remainder__d_
lea rdx, str..._mpint.c
mov r8d, 0x812
call fcn.140089884
test rbp, rbp
mov rbx, qword [rsp + 0x68]
je 0x1400182e9
mov rax, qword [rbp]
mov rcx, qword [rbp + 8]
mov rsi, qword [r13]
mov rdx, qword [r13 + 8]
cmp rax, rsi
cmovb rsi, rax
lea rdi, [rsi*8]
mov r8, rdi
call fcn.14007ef50
mov rdx, qword [rbp]
sub rdx, rsi
shl rdx, 3
add rdi, qword [rbp + 8]
mov rcx, rdi
call fcn.140074a74
test rbx, rbx
je 0x140018329
mov rax, qword [rbx]
mov rcx, qword [rbx + 8]
mov rsi, qword [r14]
mov rdx, qword [r14 + 8]
cmp rax, rsi
cmovb rsi, rax
lea rdi, [rsi*8]
mov r8, rdi
call fcn.14007ef50
mov rdx, qword [rbx]
sub rdx, rsi
shl rdx, 3
add rdi, qword [rbx + 8]
mov rcx, rdi
call fcn.140074a74
mov rcx, r12
call fcn.140014bcf
mov rcx, qword [rsp + 0x50]
call fcn.140014bcf
mov rcx, r15
call fcn.140014bcf
mov rcx, r13
call fcn.140014bcf
mov rcx, r14
call fcn.140014bcf
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.14007de70
nop
add rsp, 0xb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret