Function at 0x1400e75c0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push r12
push r14
mov rbp, rsp
sub rsp, 0x58
mov eax, dword [r8 + 8]
xor r12d, r12d
cmp eax, dword [0x1401463f0]
mov r14, rcx
mov ecx, r12d
mov rbx, rdx
cmove rcx, r8
test rcx, rcx
je 0x1400e7607
mov r8, qword [rcx + 0x20]
mov rcx, r14
call fcn.1400e75c0
mov rax, rbx
add rsp, 0x58
pop r14
pop r12
pop rbx
pop rbp
ret
cmp eax, dword [0x1401463f4]
je 0x1400e7c1f
cmp eax, dword [0x1401463f8]
je 0x1400e7c1f
cmp eax, dword [0x1401463fc]
je 0x1400e7c1f
cmp eax, dword [0x140146400]
je 0x1400e7c1f
cmp eax, dword [0x140146404]
mov rdx, r12
cmove rdx, r8
test rdx, rdx
je 0x1400e7696
add rdx, 0x20
lea rcx, [r14 + 0x10]
call fcn.1400e3e30
test rax, rax
lea rcx, [rax + 8]
cmove rcx, r12
test rcx, rcx
je 0x1400e767e
mov rax, qword [rcx]
mov qword [rbx + 8], rax
mov rax, rbx
mov qword [rbx], r12
add rsp, 0x58
pop r14
pop r12
pop rbx
pop rbp
ret
mov rax, r12
mov qword [rbx], r12
mov qword [rbx + 8], rax
mov rax, rbx
add rsp, 0x58
pop r14
pop r12
pop rbx
pop rbp
ret
cmp eax, dword [0x140146408]
jne 0x1400e76b7
mov qword [rbx], 1
mov rax, rbx
mov qword [rbx + 8], r12
add rsp, 0x58
pop r14
pop r12
pop rbx
pop rbp
ret
cmp eax, dword [0x14014640c]
mov qword [rsp + 0x88], rdi
jne 0x1400e76d8
mov edi, 3
mov qword [rbx + 8], r12
mov qword [rbx], rdi
jmp 0x1400e793e
cmp eax, dword [0x140146410]
mov qword [rsp + 0x80], rsi
mov rsi, r12
cmove rsi, r8
mov qword [rsp + 0x98], r13
mov qword [rsp + 0x50], r15
test rsi, rsi
je 0x1400e7865
mov rcx, qword [r14 + 8]
movabs r15, 0x8080808080808080
cmp qword [rcx + 0x10], r12
je 0x1400e776c
mov r10, qword [rcx + 0x18]
mov rdx, r12
cmp rsi, r10
je 0x1400e776f
mov r9, qword [rcx + 8]
mov rax, rsi
mov r11, qword [rcx]
dec r9
shr rax, 5
xor rax, rsi
shr rax, 4
and rax, r9
nop
mov rcx, rax
shl rcx, 4
add rcx, r11
mov r8, qword [rcx]
cmp r8, rsi
je 0x1400e7835
cmp r8, r10
je 0x1400e776c
inc rax
add rax, rdx
inc rdx
and rax, r9
cmp rdx, r9
jbe 0x1400e7740
mov rdx, r12
mov rax, rdx
mov qword [rbp - 0x30], r12
neg rax
sbb rdi, rdi
xor r13b, r13b
add rdi, 3
mov qword [rbp - 0x38], rdi
test rdx, rdx
jne 0x1400e77bf
mov r8, qword [rsi + 0x20]
lea rdx, [rbp - 0x28]
mov rcx, r14
call fcn.1400e75c0
mov rdx, qword [rax]
add rdx, rdi
mov rcx, rdx
and rcx, r15
mov rax, rcx
mov rdi, rcx
shr rax, 7
xor rcx, rdx
sub rdi, rax
or rdi, rcx
mov qword [rbp - 0x38], rdi
cmp qword [rsi + 0x30], r12
jbe 0x1400e7829
nop word [rax + rax]
mov r8, qword [rsi + 0x28]
lea rdx, [rbp - 0x28]
mov rcx, r14
mov r8, qword [r8 + r12*8]
call fcn.1400e75c0
mov rax, qword [rbp - 0x28]
test rax, rax
jne 0x1400e77f7
test r13b, r13b
jne 0x1400e77f7
mov eax, 1
lea rcx, [rdi + rax]
mov qword [rbp - 0x30], 0
mov rdx, rcx
inc r12
and rdx, r15
mov rax, rdx
mov rdi, rdx
shr rax, 7
xor rdx, rcx
sub rdi, rax
or rdi, rdx
cmp r12, qword [rsi + 0x30]
jb 0x1400e77d0
mov qword [rbp - 0x38], rdi
movups xmm0, xmmword [rbp - 0x38]
movups xmmword [rbx], xmm0
jmp 0x1400e7929
test rcx, rcx
lea rdx, [rcx + 8]
cmove rdx, r12
test rdx, rdx
je 0x1400e776f
cmp qword [rsi + 0x30], 2
ja 0x1400e776f
mov r13b, 1
mov qword [rbp - 0x30], r12
mov edi, 2
jmp 0x1400e77bb
cmp eax, dword [0x140146414]
mov rcx, r12
cmove rcx, r8
test rcx, rcx
je 0x1400e78a3
mov r8, qword [rcx + 0x20]
lea rdx, [rbp - 0x28]
mov rcx, r14
call fcn.1400e75c0
mov qword [rbx], r12
movabs r15, 0x8080808080808080
mov qword [rbx + 8], r12
mov r8, qword [rax]
inc r8
jmp 0x1400e7b7c
cmp eax, dword [0x140146418]
mov rsi, r12
cmove rsi, r8
test rsi, rsi
je 0x1400e7909
mov r8, qword [rsi + 0x20]
lea rdx, [rbp - 0x28]
mov rcx, r14
call fcn.1400e75c0
mov r8, qword [rsi + 0x28]
lea rdx, [rbp - 0x38]
mov rcx, r14
mov rdi, rax
call fcn.1400e75c0
mov rdx, qword [rdi]
movabs r15, 0x8080808080808080
add rdx, qword [rax]
mov rcx, rdx
and rcx, r15
mov rax, rcx
mov r8, rcx
shr rax, 7
xor rcx, rdx
sub r8, rax
or r8, rcx
inc r8
jmp 0x1400e7b78
mov ecx, eax
mov rax, r12
cmp ecx, dword [0x14014641c]
cmove rax, r8
test rax, rax
je 0x1400e7954
mov edi, 0xa
mov qword [rbx], rdi
mov qword [rbx + 8], r12
mov r13, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x80]
mov r15, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x88]
mov rax, rbx
add rsp, 0x58
pop r14
pop r12
pop rbx
pop rbp
ret
cmp ecx, dword [0x140146420]
mov rsi, r12
cmove rsi, r8
test rsi, rsi
je 0x1400e7a36
mov edi, 0xa
mov qword [rbp + 0x38], r12
cmp qword [rsi + 0x28], r12
jbe 0x1400e7922
movabs r15, 0x8080808080808080
nop dword [rax]
nop word [rax + rax]
mov r13, qword [rsi + 0x20]
mov r8, qword [r13 + r12 + 8]
test r8, r8
je 0x1400e79c9
lea rdx, [rbp - 0x28]
mov rcx, r14
call fcn.1400e75c0
mov rdx, qword [rax]
add rdx, rdi
mov rcx, rdx
and rcx, r15
mov rax, rcx
mov rdi, rcx
shr rax, 7
xor rcx, rdx
sub rdi, rax
or rdi, rcx
mov r8, qword [r13 + r12 + 0x10]
lea rdx, [rbp - 0x38]
mov rcx, r14
call fcn.1400e75c0
add r12, 0x18
mov rdx, qword [rax]
add rdx, rdi
mov rcx, rdx
and rcx, r15
mov rax, rcx
mov r8, rcx
xor rcx, rdx
shr rax, 7
sub r8, rax
or r8, rcx
inc r8
mov rcx, r8
and rcx, r15
mov rax, rcx
mov rdi, rcx
xor rcx, r8
shr rax, 7
sub rdi, rax
or rdi, rcx
mov rcx, qword [rbp + 0x38]
inc rcx
mov qword [rbp + 0x38], rcx
cmp rcx, qword [rsi + 0x28]
jb 0x1400e7990
xor r12d, r12d
jmp 0x1400e7922
cmp ecx, dword [0x140146424]
mov rax, r12
cmove rax, r8
test rax, rax
je 0x1400e7a78
mov r8, qword [rax + 0x28]
lea rdx, [rbp - 0x28]
mov rcx, r14
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x30], 0xffffffffffffffff
call fcn.1400e75c0
lea r8, [rbp - 0x38]
mov rdx, rax
mov rcx, rbx
call fcn.1400e7330
jmp 0x1400e7929
cmp ecx, dword [0x140146428]
mov rsi, r12
cmove rsi, r8
test rsi, rsi
je 0x1400e7ac0
mov r8, qword [rsi + 0x30]
lea rdx, [rbp - 0x28]
mov rcx, r14
call fcn.1400e75c0
mov r8, qword [rsi + 0x28]
lea rdx, [rbp - 0x38]
mov rcx, r14
mov rdi, rax
call fcn.1400e75c0
mov r8, rdi
mov rdx, rax
mov rcx, rbx
call fcn.1400e7330
jmp 0x1400e7929
cmp ecx, dword [0x14014642c]
mov rax, r12
cmove rax, r8
test rax, rax
je 0x1400e7ae6
mov r8, qword [rax + 0x20]
mov rdx, rbx
mov rcx, r14
call fcn.1400e75c0
jmp 0x1400e7929
cmp ecx, dword [0x140146430]
mov r13, r12
cmove r13, r8
test r13, r13
je 0x1400e7b9d
mov r8, qword [r13 + 0x20]
lea rdx, [rbp - 0x28]
mov rcx, r14
call fcn.1400e75c0
mov r8, qword [r13 + 0x30]
lea rdx, [rbp - 0x38]
mov rcx, r14
mov rdi, rax
call fcn.1400e75c0
mov rsi, qword [rdi]
lea rdx, [rbp - 0x18]
mov r8, qword [r13 + 0x40]
movabs r15, 0x8080808080808080
mov rcx, r14
add rsi, qword [rax]
mov rdi, rsi
and rdi, r15
call fcn.1400e75c0
mov rcx, rdi
mov rdx, rdi
shr rcx, 7
xor rdi, rsi
sub rdx, rcx
or rdx, rdi
add rdx, qword [rax]
mov rcx, rdx
and rcx, r15
mov rax, rcx
mov r8, rcx
shr rax, 7
xor rcx, rdx
sub r8, rax
or r8, rcx
add r8, 2
mov qword [rbx + 8], r12
mov rdx, r8
and rdx, r15
mov rax, rdx
mov rcx, rdx
shr rax, 7
xor rdx, r8
sub rcx, rax
or rcx, rdx
mov qword [rbx], rcx
jmp 0x1400e7929
cmp ecx, dword [0x140146434]
mov rax, r12
cmove rax, r8
test rax, rax
je 0x1400e7c17
mov rsi, qword [rax + 0x30]
mov edi, 3
mov rax, qword [rax + 0x38]
lea r12, [rsi + rax*8]
cmp rsi, r12
je 0x1400e7c07
movabs r15, 0x8080808080808080
nop
mov r8, qword [rsi]
lea rdx, [rbp - 0x18]
mov rcx, r14
call fcn.1400e75c0
add rsi, 8
mov rdx, qword [rax]
add rdx, rdi
mov rcx, rdx
and rcx, r15
mov rax, rcx
mov rdi, rcx
shr rax, 7
xor rcx, rdx
sub rdi, rax
or rdi, rcx
cmp rsi, r12
jne 0x1400e7bd0
mov qword [rbx], rdi
mov qword [rbx + 8], 0
jmp 0x1400e7929
mov qword [rbx], r12
jmp 0x1400e7925
mov qword [rdx], r12
mov rax, rbx
mov qword [rdx + 8], 0xffffffffffffffff
add rsp, 0x58
pop r14
pop r12
pop rbx
pop rbp
ret