Function at 0x1401e2c00
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x78]
sub rsp, 0x178
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
mov rax, rdx
mov rdi, rcx
xor r15d, r15d
mov dword [rsp + 0x40], r15d
mov qword [rcx], r15
mov qword [rcx + 8], r15
mov qword [rcx + 0x10], r15
lea r13d, [r15 + 1]
mov dword [rsp + 0x40], r13d
xor r9d, r9d
mov r8d, r13d
lea rdx, [rbp + 0xd0]
mov rcx, qword [rax]
call fcn.1401d96b0
or rsi, 0xffffffffffffffff
test eax, eax
jne 0x1401e3158
movdqa xmm6, xmmword [0x1404e7d20]
movdqa xmm7, xmmword [0x1404e7fb0]
movdqa xmm8, xmmword [0x1404e8070]
mov dword [rbp - 0x80], 0x76a280d6
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
mov eax, dword [rcx + rax]
cmp dword [0x140526d48], eax
jg 0x1401e3160
lea rbx, [0x140519360]
cmp byte [0x140519395], r15b
je 0x1401e2cec
mov r8, r15
mov cl, r8b
and cl, 7
shl cl, 3
movabs rdx, 0xb00b1e5d4dd1e5bf
shr rdx, cl
xor byte [r8 + rbx], dl
inc r8
cmp r8, 0x35
jb 0x1401e2cc2
mov byte [0x140519395], r15b
mov r8, rsi
inc r8
cmp byte [rbx + r8], r15b
jne 0x1401e2cef
mov qword [rsp + 0x30], r15
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
mov r14d, 0x80
mov r9d, r14d
mov rdx, rbx
mov rcx, qword [rbp + 0xd0]
call fcn.1401b124c
mov r8, rsi
inc r8
cmp byte [rbx + r8], r15b
jne 0x1401e2d29
mov qword [rsp + 0x30], r15
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
mov r9d, r14d
mov rdx, rbx
mov rcx, qword [rbp + 0xd0]
call fcn.1401b124c
test eax, eax
jne 0x1401e3158
mov rsi, qword [rbp + 0xc8]
jmp 0x1401e30fb
xor edx, edx
mov rcx, rsi
call fcn.14017f0c4
mov qword [rsp + 0x48], rax
mov edx, 1
mov rcx, rsi
call fcn.14017f0c4
mov qword [rbp + 0xd8], rax
mov edx, 2
mov rcx, rsi
call fcn.14017efc0
movsxd rbx, eax
test eax, eax
je 0x1401e30fb
mov edx, 2
mov rcx, rsi
call fcn.14017ef8c
lea r8, [rax + rbx]
mov rdx, rax
lea rcx, [rbp - 0x78]
call fcn.14013fee8
nop
mov r15, qword [rbp - 0x78]
lea r12, [r15 + 3]
mov r8, r12
mov rdx, r15
lea rcx, [rbp - 0x60]
call fcn.14013ff84
nop
lea rax, [rbp - 0x60]
cmp qword [rbp - 0x48], 0xf
seta bl
mov byte [rbp + 0xc8], bl
mov r14, qword [rbp - 0x60]
cmova rax, r14
cmp qword [rbp - 0x50], 3
jne 0x1401e2e1e
cmp byte [rax], 0x76
jne 0x1401e2e15
cmp byte [rax + 1], 0x31
jne 0x1401e2e15
cmp byte [rax + 2], 0x30
jne 0x1401e2e15
xor eax, eax
jmp 0x1401e2e1a
sbb eax, eax
or eax, 1
test eax, eax
je 0x1401e2e55
lea rax, [rbp - 0x60]
test bl, bl
cmovne rax, r14
cmp qword [rbp - 0x50], 3
jne 0x1401e2fed
cmp byte [rax], 0x76
jne 0x1401e2e48
cmp byte [rax + 1], 0x31
jne 0x1401e2e48
cmp byte [rax + 2], 0x31
jne 0x1401e2e48
xor eax, eax
jmp 0x1401e2e4d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1401e2fed
cmp r15, r12
je 0x1401e2e7d
mov rbx, qword [rbp - 0x70]
sub rbx, r12
mov r8, rbx
mov rdx, r12
mov rcx, r15
call fcn.1404084f0
lea rax, [r15 + rbx]
mov qword [rbp - 0x70], rax
mov bl, byte [rbp + 0xc8]
lea rax, [0x1404ceba2]
mov qword [rsp + 0x50], rax
lea rdx, [rbp - 0x78]
lea rcx, [rsp + 0x58]
call fcn.140156040
mov rax, qword [rbp + 0xd8]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x78], rax
or r13d, 2
mov dword [rsp + 0x40], r13d
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x40]
call fcn.1401e67e4
nop
mov r9, qword [rdi + 8]
cmp r9, qword [rdi + 0x10]
je 0x1401e2f8d
xorps xmm0, xmm0
movups xmmword [r9], xmm0
xor r15d, r15d
mov qword [r9 + 0x10], r15
mov qword [r9 + 0x18], r15
movups xmm0, xmmword [rbp - 0x40]
movups xmmword [r9], xmm0
movups xmm1, xmmword [rbp - 0x30]
movups xmmword [r9 + 0x10], xmm1
mov qword [rbp - 0x30], r15
lea r8d, [r15 + 0xf]
mov qword [rbp - 0x28], r8
mov byte [rbp - 0x40], r15b
mov rdx, qword [rbp - 0x10]
mov qword [rbp - 0x10], r15
mov rcx, qword [rbp - 0x18]
mov qword [rbp - 0x18], r15
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x20], r15
mov qword [r9 + 0x20], rax
mov qword [r9 + 0x28], rcx
mov qword [r9 + 0x30], rdx
xorps xmm0, xmm0
movups xmmword [r9 + 0x38], xmm0
mov qword [r9 + 0x48], r15
mov qword [r9 + 0x50], r15
movups xmm0, xmmword [rbp - 8]
movups xmmword [r9 + 0x38], xmm0
movups xmm1, xmmword [rbp + 8]
movups xmmword [r9 + 0x48], xmm1
mov qword [rbp + 8], r15
mov qword [rbp + 0x10], r8
mov byte [rbp - 8], r15b
xorps xmm0, xmm0
movups xmmword [r9 + 0x58], xmm0
mov qword [r9 + 0x68], r15
mov qword [r9 + 0x70], r15
movups xmm0, xmmword [rbp + 0x18]
movups xmmword [r9 + 0x58], xmm0
movups xmm1, xmmword [rbp + 0x28]
movups xmmword [r9 + 0x68], xmm1
mov qword [rbp + 0x28], r15
mov qword [rbp + 0x30], r8
mov byte [rbp + 0x18], r15b
add qword [rdi + 8], 0x78
jmp 0x1401e2f9f
lea r8, [rbp - 0x40]
mov rdx, r9
mov rcx, rdi
call fcn.1401e6e7c
xor r15d, r15d
lea rcx, [rbp - 0x40]
call fcn.1401494f4
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x1401e308c
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401e3086
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401e3152
jmp 0x1401e3086
lea rax, [0x1404ceba2]
mov qword [rsp + 0x50], rax
lea rdx, [rbp - 0x78]
lea rcx, [rsp + 0x58]
call fcn.140156040
mov rax, qword [rbp + 0xd8]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x78], rax
or r13d, 4
mov dword [rsp + 0x40], r13d
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x40]
call fcn.1401e67e4
nop
lea rdx, [rbp - 0x40]
mov rcx, rdi
call fcn.1401e56dc
nop
lea rcx, [rbp - 0x40]
call fcn.1401494f4
nop
mov rcx, qword [rsp + 0x58]
xor r15d, r15d
test rcx, rcx
je 0x1401e308c
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401e3086
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401e31bd
call fcn.1403d1a4c
nop
test bl, bl
je 0x1401e30c5
mov rdx, qword [rbp - 0x48]
inc rdx
mov rax, r14
cmp rdx, 0x1000
jb 0x1401e30bc
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401e31c3
mov rcx, r14
call fcn.1403d1a4c
nop
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x1401e30fb
mov rdx, qword [rbp - 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401e30f6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401e314c
call fcn.1403d1a4c
mov rcx, rsi
call fcn.14017e818
cmp eax, 0x64
je 0x1401e2d6e
mov rcx, rsi
call fcn.14017df68
xor edx, edx
mov rcx, qword [rbp + 0xd0]
call fcn.1401d76f8
mov rax, rdi
lea r11, [rsp + 0x178]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1403e58f0
nop
call fcn.1403e58f0
nop
mov ecx, esi
call fcn.1403d8f08
int3
lea rcx, [0x140526d48]
call fcn.1403d1794
cmp dword [0x140526d48], esi
jne 0x1401e2caf
mov word [0x140519394], 0x15d
movaps xmmword [0x140519360], xmm6
movaps xmmword [0x140519370], xmm7
movaps xmmword [0x140519380], xmm8
mov eax, dword [rbp - 0x80]
mov dword [0x140519390], eax
lea rcx, [0x14040c89c]
call fcn.1403d1a34
lea rcx, [0x140526d48]
call fcn.1403d1728
jmp 0x1401e2caf
call fcn.1403e58f0
nop
call fcn.1403e58f0
int3