Function at 0x14001b020
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
movaps xmmword [rsp + 0xe0], xmm6
mov r15, rdx
mov rbx, rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x50], 0
xor eax, eax
lea rcx, [0x1400e6580]
movsxd rdx, dword [rax + rcx]
xor dword [rsp + rdx*4 + 0x30], 0x78c104ba
add rax, 4
cmp rax, 0x24
jne 0x14001b060
lea rax, [rbx + 0x10]
mov qword [rsp + 0xc8], rax
cmp r15, 7
mov eax, 7
cmovg rax, r15
mov qword [rsp + 0xc0], rax
add rax, 0x11
mov qword [rsp + 0xb8], rax
test rbx, rbx
mov eax, 0xf9a1542
mov ecx, 0x1b8d9245
cmove ecx, eax
mov dword [rsp + 0x2c], ecx
mov eax, 0x2f7d4ef2
xor ecx, ecx
mov qword [rsp + 0x68], rcx
lea rbp, [0x1400e6560]
lea rsi, [0x1400e6f40]
xorps xmm6, xmm6
lea r13, [0x1400e74d0]
lea r12, [0x1400e74b0]
xor ecx, ecx
mov qword [rsp + 0x60], rcx
xor ecx, ecx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0xd8], r15
mov qword [rsp + 0xd0], rbx
cmp eax, 0x634c96fe
jle 0x14001b287
cmp eax, 0x771e161a
jle 0x14001b321
cmp eax, 0x775b11f8
je 0x14001b387
cmp eax, 0x7cbfe930
jne 0x14001b515
mov rcx, qword [rsp + 0x78]
movups xmmword [rsp + 0x9c], xmm6
movaps xmmword [rsp + 0x90], xmm6
xor eax, eax
movsxd rdx, dword [rax + r13]
xor dword [rsp + rdx*4 + 0x90], 0x78c104ba
add rax, 4
cmp rax, 0x18
jne 0x14001b143
lea rdx, [rcx + rcx*2]
mov rax, rdx
shr rax, 0x3f
add rax, rdx
sar rax, 1
cmp rcx, 0x10000
mov r11d, 0x75bbd03d
mov edx, 0x452455bd
cmovl r11d, edx
test rcx, rcx
mov edx, 0x57bc4a48
mov ebp, 0x455611a3
cmovle edx, ebp
lea r8, [rcx + rcx]
mov edi, 0xe97711d
mov r9b, 1
xor r10d, r10d
mov ebx, dword [rsp + 0xa4]
mov ecx, 0x50c1eb83
xor ebx, ecx
mov esi, dword [rsp + 0xa0]
xor esi, ecx
mov ecx, dword [rsp + 0x98]
mov r15d, 0x61ac573a
xor ecx, r15d
cmp edi, 0x47c49477
jg 0x14001b1f2
cmp edi, 0xe97711d
je 0x14001b21c
cmp edi, 0x2f7d4ef2
je 0x14001b24e
cmp edi, 0x3d971519
jne 0x14001b1c9
mov ebp, 4
mov edi, ecx
jmp 0x14001b1c9
cmp edi, 0x47c49478
je 0x14001b215
cmp edi, 0x634c96ff
je 0x14001b3cf
cmp edi, 0x775b11f8
jne 0x14001b1c9
mov rbp, rax
mov edi, ebx
jmp 0x14001b1c9
mov rbp, r8
mov edi, esi
jmp 0x14001b1c9
test r9b, 1
je 0x14001b23d
xor ecx, ecx
movsxd rbx, dword [rcx + r12]
xor dword [rsp + rbx*4 + 0x90], 0x7a21c57f
add rcx, 4
cmp rcx, 0x14
jne 0x14001b224
mov edi, dword [rsp + 0x90]
xor edi, edx
xor r9d, r9d
jmp 0x14001b1a2
test r10b, r10b
lea rdi, [0x1400e74e8]
jne 0x14001b275
xor ecx, ecx
movsxd rbx, dword [rcx + rdi]
xor dword [rsp + rbx*4 + 0x90], 0x316dbcb9
add rcx, 4
cmp rcx, 8
jne 0x14001b25c
mov edi, dword [rsp + 0x9c]
xor edi, r11d
mov r10b, 1
jmp 0x14001b1a2
cmp eax, 0x2f7d4ef1
jg 0x14001b354
cmp eax, 0x13cd7de5
je 0x14001b45e
cmp eax, 0x1b98f6ac
jne 0x14001b100
mov rdi, qword [rsp + 0x70]
cmp rdi, 7
mov esi, 7
cmovg rsi, rdi
lea rdx, [rsi + 0x11]
lea rcx, [0x1400e0010]
lea r8, [0x1401b3060]
call fcn.140019264
mov r14, rax
mov qword [rax + 8], rsi
mov qword [rax], 0
mov rax, qword [rsp + 0x20]
mov rax, qword [rax]
mov qword [r14], rax
lea rcx, [r14 + 0x10]
mov rax, qword [rsp + 0x20]
mov r8, qword [rax]
inc r8
mov rdx, qword [rsp + 0xc8]
call sub.msvcrt.dll_memcpy
lea rsi, [0x1400e6f40]
mov qword [r14 + 8], rdi
mov eax, dword [rsp + 0x50]
mov ecx, 0x6c320201
xor eax, ecx
jmp 0x14001b100
cmp eax, 0x634c96ff
je 0x14001b471
cmp eax, 0x69603052
jne 0x14001b100
mov eax, dword [rsp + 0x48]
mov ecx, 0xb4e2b6
xor eax, ecx
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x70], rcx
jmp 0x14001b100
cmp eax, 0x2f7d4ef2
je 0x14001b4e2
cmp eax, 0x5c59b6c3
jne 0x14001b100
mov eax, dword [rsp + 0x4c]
mov ecx, 0xb4e2b6
xor eax, ecx
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 0x70], rcx
jmp 0x14001b100
lea rcx, [0x1400e0010]
mov rdx, qword [rsp + 0xb8]
lea r8, [0x1401b3060]
call fcn.140019264
lea rsi, [0x1400e6f40]
mov r14, rax
mov rax, qword [rsp + 0xc0]
mov qword [r14 + 8], rax
mov qword [r14], 0
mov eax, dword [rsp + 0x38]
mov ecx, 0x75fed7de
xor eax, ecx
jmp 0x14001b100
mov qword [rsp + 0x80], rbp
mov rax, qword [rsp + 0x20]
mov rax, qword [rax]
mov r15, qword [rsp + 0xd8]
add rax, r15
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x88]
cmp byte [rsp + 0x58], 0
lea rbx, [0x1400e6f54]
jne 0x14001b428
xor edx, edx
movsxd rbp, dword [rdx + rbx]
xor dword [rsp + rbp*4 + 0x30], 0x28a16966
add rdx, 4
cmp rdx, 0xc
jne 0x14001b412
cmp rax, rcx
mov eax, 0x5aed4d2e
mov ecx, 0x6fd4cbbf
cmovl eax, ecx
xor eax, dword [rsp + 0x44]
mov cl, 1
mov qword [rsp + 0x58], rcx
mov rbx, qword [rsp + 0xd0]
lea rbp, [0x1400e6560]
lea rsi, [0x1400e6f40]
jmp 0x14001b100
mov eax, dword [rsp + 0x40]
mov ecx, 0x44936b67
xor eax, ecx
mov r14, rbx
jmp 0x14001b100
mov qword [rsp + 0x20], rbx
mov rax, qword [rsp + 0x20]
mov rax, qword [rax]
add rax, r15
mov rcx, qword [rbx + 8]
movabs rdx, 0x3fffffffffffffff
and rcx, rdx
mov qword [rsp + 0x78], rcx
mov rcx, qword [rsp + 0x78]
cmp byte [rsp + 0x60], 0
jne 0x14001b4bb
xor edx, edx
movsxd rbp, dword [rdx + rsi]
xor dword [rsp + rbp*4 + 0x30], 0x316dbcb9
add rdx, 4
cmp rdx, 0x14
jne 0x14001b4a5
cmp rax, rcx
mov eax, 0x112dbc20
mov ecx, 0x7e5f28f5
cmovg eax, ecx
xor eax, dword [rsp + 0x3c]
mov cl, 1
mov qword [rsp + 0x60], rcx
lea rbp, [0x1400e6560]
jmp 0x14001b100
cmp byte [rsp + 0x68], 0
jne 0x14001b501
xor eax, eax
movsxd rcx, dword [rax + rbp]
xor dword [rsp + rcx*4 + 0x30], 0x7a21c57f
add rax, 4
cmp rax, 0x20
jne 0x14001b4eb
mov eax, dword [rsp + 0x30]
xor eax, dword [rsp + 0x2c]
mov cl, 1
mov qword [rsp + 0x68], rcx
jmp 0x14001b100
cmp eax, 0x771e161b
jne 0x14001b100
mov rax, r14
movaps xmm6, xmmword [rsp + 0xe0]
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret