Function at 0x1401337e0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x198
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x110], 0xfffffffffffffffe
mov r8, rdx
mov rsi, rcx
mov qword [rbp + 0xd8], 0
mov qword [rbp + 0xe0], 0xf
mov byte [rbp + 0xc8], 0
lea rax, [0x140427b38]
mov qword [rbp + 0xc0], rax
lea rdx, [rbp + 0xc0]
call fcn.140134140
mov qword [rbp + 0x100], 0
mov qword [rbp + 0x108], 0xf
mov byte [rbp + 0xf0], 0
lea rax, [0x140429978]
mov qword [rbp + 0xe8], rax
lea rcx, [rbp + 0xe8]
call fcn.140268840
lea rcx, [rbp + 0xc8]
mov rax, qword [rbp + 0xd8]
cmp qword [rbp + 0xe0], 0x10
jb 0x140133899
mov rcx, qword [rbp + 0xc8]
test rax, rax
je 0x140133afb
xorps xmm0, xmm0
movaps xmmword [rbp - 0x30], xmm0
movaps xmmword [rbp], xmm0
movaps xmmword [rbp + 0xa0], xmm0
movaps xmmword [rbp + 0x90], xmm0
movaps xmmword [rbp + 0x80], xmm0
movaps xmmword [rbp + 0x70], xmm0
movaps xmmword [rbp + 0x60], xmm0
movaps xmmword [rbp + 0x50], xmm0
movaps xmmword [rbp + 0x40], xmm0
movaps xmmword [rbp + 0x30], xmm0
movaps xmmword [rbp + 0x20], xmm0
movaps xmmword [rbp + 0x10], xmm0
movaps xmmword [rbp - 0x10], xmm0
movaps xmmword [rbp - 0x20], xmm0
movaps xmmword [rbp - 0x40], xmm0
movaps xmmword [rbp - 0x50], xmm0
movzx edx, byte [0x1404fef08]
add dl, 0x37
mov byte [rbp - 0x21], dl
mov byte [rbp + 0xc], 1
movzx edx, byte [rax + rcx - 1]
cmp byte [rbp + rdx - 0x50], 0
je 0x140133914
lea r8, [rax + rcx]
dec r8
jmp 0x140133951
mov rdx, rax
cmp rdx, 1
je 0x140133937
nop dword [rax]
movzx r8d, byte [rcx + rdx - 2]
cmp byte [rbp + r8 - 0x50], 0
jne 0x140133949
dec rdx
cmp rdx, 1
jne 0x140133920
mov r8, 0xffffffffffffffff
cmp byte [0x14055bdf0], 0
je 0x14013395d
jmp 0x140133966
lea r8, [rcx + rdx]
add r8, 0xfffffffffffffffe
sub r8, rcx
cmp byte [0x14055bdf0], 0
jne 0x140133966
lea rdx, [rax - 1]
cmp r8, rdx
jne 0x1401339a0
cmp rax, r8
jb 0x140133afb
setne dl
movzx edx, dl
add rcx, r8
sub rax, rdx
mov qword [rbp + 0xd8], rax
mov r9d, 1
sub r9, r8
mov r8, r9
xor r8, rax
and r9, rax
lea r8, [r8 + r9*2]
add rdx, rcx
call fcn.14040cc90
mov qword [rbp + 0xb8], rsi
lea rbx, [rbp + 0xf0]
mov r15, qword [rbp + 0x100]
mov rax, qword [0x1404fef10]
movabs r14, 0x433f64b081d506ef
mov rcx, rax
xor rcx, r14
and rax, r14
lea rax, [rcx + rax*2]
mov r12, rbx
cmp qword [rbp + 0x108], rax
jbe 0x1401339e6
mov r12, qword [rbp + 0xf0]
test r15, r15
je 0x140133b00
xorps xmm0, xmm0
movaps xmmword [rbp - 0x30], xmm0
movaps xmmword [rbp + 0xa0], xmm0
movaps xmmword [rbp + 0x90], xmm0
movaps xmmword [rbp + 0x80], xmm0
movaps xmmword [rbp + 0x70], xmm0
movaps xmmword [rbp + 0x60], xmm0
movaps xmmword [rbp + 0x50], xmm0
movaps xmmword [rbp + 0x40], xmm0
movaps xmmword [rbp + 0x30], xmm0
movaps xmmword [rbp + 0x20], xmm0
movaps xmmword [rbp + 0x10], xmm0
movaps xmmword [rbp], xmm0
movaps xmmword [rbp - 0x10], xmm0
movaps xmmword [rbp - 0x20], xmm0
movaps xmmword [rbp - 0x40], xmm0
movaps xmmword [rbp - 0x50], xmm0
mov byte [rbp - 0x21], 1
movzx eax, byte [0x1404fef08]
add al, 0x37
mov byte [rbp + 0xc], al
movzx eax, byte [r15 + r12 - 1]
cmp byte [rbp + rax - 0x50], 0
je 0x140133a61
lea r13, [r15 + r12]
dec r13
jmp 0x140133a97
mov rax, r15
cmp rax, 1
je 0x140133a86
nop word [rax + rax]
movzx ecx, byte [r12 + rax - 2]
cmp byte [rbp + rcx - 0x50], 0
jne 0x140133a8f
dec rax
cmp rax, 1
jne 0x140133a70
mov r13, 0xffffffffffffffff
jmp 0x140133a9a
lea r13, [r12 + rax]
add r13, 0xfffffffffffffffe
sub r13, r12
mov rax, qword [0x1404fef10]
movabs rcx, 0x433f64b081d506df
mov rdx, rax
xor rdx, rcx
and rax, rcx
lea rax, [rdx + rax*2]
mov rcx, r15
not rcx
mov rdx, rax
not rdx
mov r8, r15
and r8, rdx
and rdx, rcx
and rcx, rax
or r8, rcx
xor rax, r15
or rdx, rax
not rdx
lea rax, [r8 + rdx*2]
cmp r13, rax
jne 0x140133cb2
cmp r15, r13
jb 0x140133b00
mov eax, dword [0x14055bdec]
cmp eax, 0x50
jle 0x140133b05
jmp 0x140133b54
call fcn.140113c30
call fcn.140113c30
xor edx, edx
cmp r15, r13
setne dl
lea rcx, [r12 + r13]
mov rax, r15
sub rax, rdx
mov qword [rbp + 0x100], rax
mov r8d, 1
sub r8, r13
xor r8, rax
mov r9, r8
not r9
and r9, rax
lea r8, [r8 + r9*2]
add rdx, rcx
call fcn.14040cc90
mov eax, dword [0x14055bde8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x140133cb2
xor r9d, r9d
cmp r15, r13
setne r9b
mov ecx, r15d
sub ecx, r9d
imul ecx, r9d
sub ecx, r15d
mov rax, r15
shl rax, cl
mov rdx, r15
sub rdx, rax
imul rdx, rax
mov ecx, eax
shl rdx, cl
sub rdx, rax
movabs rdi, 0xca32ac174b0a40dd
add rdi, rdx
movabs rdx, 0x35cd53e8b4f5bf23
mov r8d, 1
sub r8, r13
imul r8, r13
mov r11, r13
sub r11, r8
sub r8, r11
mov r10, qword [0x1404fef10]
movabs rcx, 0x433f64b081d506e0
add rcx, r10
mov rsi, rcx
xor rsi, r8
and rcx, r8
lea rcx, [rsi + rcx*2]
add rcx, r11
add r8, rcx
movabs r11, 0xeb6d5b0e32780d82
sub r11, r8
movabs r8, 0x1492a4f1cd87f27e
mov rsi, r11
xor rsi, r8
and r11, r8
mov rax, rdi
lea r8, [rsi + r11*2]
imul r8, rcx
shl r8, cl
xor rax, rdx
and rdi, rdx
sub r8, rcx
imul r8, rcx
shl r8, cl
lea rdx, [rax + rdi*2]
mov rax, r8
sub rax, rcx
imul rax, rcx
mov ecx, eax
shl r8, cl
mov rcx, r8
sub rcx, rax
imul rcx, rax
mov r11, rcx
sub r11, r8
imul r11, rcx
add r11, r8
mov r8, r11
mov ecx, edx
shl r8, cl
mov ecx, r8d
shl r11, cl
lea rax, [r12 + r13]
mov qword [rbp + 0x100], rdx
sub r10d, r11d
sub r8d, r11d
add r8d, r10d
add r8b, 0xe0
mov rdx, r11
mov ecx, r8d
shl rdx, cl
sub rdx, r11
movabs rcx, 0xd8e7646d0ab4c75e
sub rcx, r11
mov r8, rcx
xor r8, rdx
and rcx, rdx
lea rcx, [r8 + rcx*2]
movabs rdx, 0x27189b92f54b38a2
add rdx, rcx
mov r8, rdx
sub r8, r11
add r8, rdx
lea rdx, [r9 + rax]
mov rcx, rax
call fcn.14040cc90
jmp 0x140133b05
mov rax, qword [rbp + 0x100]
mov rcx, qword [rbp + 0x108]
mov rdx, rcx
sub rdx, rax
mov r8, qword [0x1404fef10]
movabs r9, 0x433f64b081d506e2
mov r10, r8
xor r10, r9
and r8, r9
lea r8, [r10 + r8*2]
cmp rdx, r8
jae 0x140133d3c
mov eax, 0x6ad9
add eax, dword [0x1404fee88]
cdqe
add rax, qword [0x1404feea0]
xor ecx, ecx
xor edx, edx
mov r8d, 0xf3fcdf37
mov r9d, 0x85ec1c4a
call qword [case.0x140303ece.0]
mov qword [rsp + 0x20], 2
mov edx, 2
mov rcx, rbx
mov r9, rax
call fcn.1400875c0
mov rsi, qword [rbp + 0xb8]
lea r9, [rbp + 0xc8]
jmp 0x140133d82
lea rdx, [rax + 2]
mov qword [rbp + 0x100], rdx
mov rdx, rbx
cmp rcx, 0x10
mov rsi, qword [rbp + 0xb8]
lea r9, [rbp + 0xc8]
jb 0x140133d65
mov rdx, qword [rbp + 0xf0]
mov ecx, 0xffffca5e
add ecx, dword [0x1404fef1c]
mov word [rdx + rax], cx
movzx ecx, byte [0x1404fef08]
add cl, 0x36
mov byte [rdx + rax + 2], cl
mov r8, qword [rbp + 0xd8]
cmp qword [rbp + 0xe0], 0x10
jb 0x140133d9a
mov r9, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0x100]
mov rax, qword [rbp + 0x108]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x140133dc5
mov qword [rsp + 0x20], r8
mov rcx, rbx
mov rdx, r8
call fcn.1400875c0
jmp 0x140133ded
lea r15, [rcx + r8]
mov qword [rbp + 0x100], r15
cmp rax, 0x10
jb 0x140133ddd
mov rbx, qword [rbp + 0xf0]
add rcx, rbx
mov rdx, r9
call fcn.14040cc90
mov byte [rbx + r15], 0
lea rdx, [rbp + 0xe8]
mov rcx, rsi
call fcn.1401331f0
mov rax, qword [rbp + 0x108]
add r14, qword [0x1404fef10]
cmp rax, r14
jbe 0x140133eb9
xor ecx, ecx
test cl, cl
je 0x140133e1b
jmp 0x140133e3a
mov rdx, qword [rbp + 0xf0]
mov ecx, dword [0x14055bdec]
mov r8d, 0x86550b1e
add r8d, dword [0x1404fef18]
cmp ecx, r8d
jl 0x140133e46
mov cl, 1
nop dword [rax]
test cl, cl
je 0x140133e40
jmp 0x140133e1b
lea r9, [rax + 1]
cmp r9, 0x1000
jb 0x140133e7f
mov rcx, qword [rdx - 8]
sub rdx, rcx
add rdx, 0xfffffffffffffff8
cmp rdx, 0x20
jae 0x14013402e
add rax, qword [0x1404fef10]
movabs r9, 0x433f64b081d50708
add r9, rax
mov rdx, rcx
mov eax, dword [0x1404fee84]
mov ecx, dword [0x1404fef18]
add eax, ecx
add eax, 0x865575bb
cdqe
add rax, qword [0x1404fee90]
mov dword [rsp + 0x28], 0xb8994c06
mov dword [rsp + 0x20], 0x8f348b52
mov ecx, 1
xor r8d, r8d
call qword [case.0x140303ece.0]
mov rax, qword [rbp + 0xe0]
cmp rax, 0x10
jb 0x14013401a
lea rsi, [rax + 1]
movabs rcx, 0x433f64b081d516df
nop dword [rax + rax]
mov edx, dword [0x14055bde8]
mov r8d, dword [0x1404fef18]
add r8d, edx
dec r8d
imul r8d, edx
test r8b, 1
jne 0x140133f1b
mov rdi, qword [rbp + 0xc8]
mov rdx, qword [0x1404fef10]
add rdx, rcx
mov r8d, dword [0x14055bdec]
cmp r8d, 0x16
jle 0x140133f28
mov edx, dword [0x14055bdec]
cmp edx, 0x3b
jge 0x140133ee0
jmp 0x140133efd
cmp rsi, rdx
jbe 0x140133f5c
mov rcx, qword [rdi - 8]
add rdi, qword [0x1404fef10]
sub rdi, rcx
movabs rdx, 0x433f64b081d506d8
add rdx, rdi
cmp rdx, 0x20
jae 0x140134033
add rax, 0x28
mov rsi, rax
mov rdi, rcx
mov ebx, 0x6ad9
nop word cs:[rax + rax]
mov eax, dword [0x1404fee84]
add eax, ebx
cdqe
add rax, qword [0x1404fee90]
mov dword [rsp + 0x28], 0xb8994c06
mov dword [rsp + 0x20], 0x8f348b52
mov ecx, 1
mov rdx, rdi
xor r8d, r8d
mov r9, rsi
call qword [case.0x140303ece.0]
mov eax, dword [0x14055bdec]
cmp eax, 0x4b
jl 0x14013401a
mov edx, dword [0x1404fef18]
lea eax, [rdx - 0x79ab5ff7]
xor ecx, ecx
sub ecx, dword [0x1404fee84]
mov r8d, eax
xor r8d, ecx
and ecx, eax
lea eax, [r8 + rcx*2]
neg eax
cdqe
add rax, qword [0x1404fee90]
lea ecx, [rdx - 0x79aaf51d]
lea r8d, [rdx - 0x79aaf51e]
lea r9d, [rdx + 0x15899634]
add edx, 0x3eee56e8
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], r9d
mov rdx, rdi
mov r9, rsi
call qword [case.0x140303ece.0]
mov eax, dword [0x14055bdec]
cmp eax, 0x29
jge 0x140133fb0
jmp 0x140133f70
add rsp, 0x198
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.1403c4adc
call fcn.1403c4adc
int3