Function at 0x1400f65d0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x80]
sub rsp, 0x180
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
mov rax, qword [0x1401a4028]
xor rax, rsp
mov qword [rbp + 0x50], rax
mov r12, rdx
mov rsi, rcx
mov qword [rbp - 0x60], rdx
mov r14, qword [rdx]
mov r13, qword [rdx + 8]
cmp r14, r13
je 0x1400f6da7
mov rax, qword gs:[0x58]
mov rdi, qword [rax]
mov qword [rbp - 0x70], rdi
xor ebx, ebx
mov r15d, 0x5b8
mov rcx, r14
call fcn.140103ec0
test eax, eax
jne 0x1400f6670
lea rax, [0x1401a82b0]
cmp r14, rax
je 0x1400f6670
mov rdx, rax
cmp qword [0x1401a82c8], 0x10
cmovae rdx, qword [0x1401a82b0]
mov r8, qword [0x1401a82c0]
mov rcx, r14
call fcn.1400d9ac0
mov rdx, r14
lea rcx, [rsp + 0x68]
call fcn.1400d92a0
mov rdx, rax
mov r8d, ebx
mov r9, rbx
cmp qword [rax + 0x10], 0
jbe 0x1400f66bf
nop dword [rax]
mov rcx, qword [0x1401a82a8]
movzx r10d, word [rcx + 0x80]
mov rcx, rdx
cmp qword [rdx + 0x18], 0x10
jb 0x1400f66ac
mov rcx, qword [rdx]
xor byte [rcx + r9], r10b
inc r8d
inc r9
movsxd rax, r8d
cmp rax, qword [rdx + 0x10]
jb 0x1400f6690
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rbx
movups xmm0, xmmword [rdx]
movups xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rsp + 0x50], xmm1
mov qword [rdx + 0x10], rbx
mov eax, 0xf
mov qword [rdx + 0x18], rax
mov byte [rdx], 0
mov rcx, rdx
call fcn.1400d96a0
nop
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0x10
cmovae rcx, qword [rsp + 0x40]
xor r9d, r9d
lea r8d, [r9 + 6]
lea rdx, [rbp - 0x78]
call fcn.1400cd200
nop
lea rcx, [rsp + 0x40]
call fcn.1400d96a0
movdqa xmm0, xmmword [0x140184e40]
movdqa xmm1, xmmword [0x140184e30]
movdqa xmm2, xmmword [0x140184f00]
movdqa xmm3, xmmword [0x140184e90]
mov eax, dword [r15 + rdi]
mov ebx, 0x570
add rbx, rdi
test al, 1
jne 0x1400f67a5
or eax, 1
mov dword [r15 + rdi], eax
mov byte [rbx + 0x40], 1
lea rax, [rbx + 0x3f]
lea rcx, [rbp + 0x4f]
cmp rbx, rcx
ja 0x1400f6789
lea rcx, [rbp + 0x10]
cmp rax, rcx
jb 0x1400f6789
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm1
movups xmmword [rbx + 0x20], xmm2
movups xmmword [rbx + 0x30], xmm3
jmp 0x1400f6798
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm1
movups xmmword [rbx + 0x20], xmm2
movups xmmword [rbx + 0x30], xmm3
lea rcx, [0x14015efd0]
call fcn.140106ffc
nop
mov rcx, rbx
call fcn.1400f7f20
xor r8d, r8d
mov qword [rsp + 0x30], r8
lea rax, [rbp - 0x68]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r8
xor r9d, r9d
lea r8d, [r9 - 1]
mov rdx, rbx
mov r15, qword [rbp - 0x78]
mov rcx, r15
call fcn.14008ae80
test eax, eax
jne 0x1400f6d8b
mov rcx, qword [rbp - 0x68]
call fcn.140039550
cmp eax, 0x64
jne 0x1400f6d82
xor edi, edi
nop word [rax + rax]
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], rdi
mov eax, 0xf
mov qword [rbp - 0x38], rax
mov byte [rbp - 0x50], 0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], rdi
mov qword [rbp - 0x18], rax
mov byte [rbp - 0x30], 0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], rdi
mov qword [rbp + 8], rax
mov byte [rbp - 0x10], 0
mov rbx, qword [rbp - 0x68]
test rbx, rbx
je 0x1400f687c
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400f6853
call qword [0x1401a50e0]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400f6868
cmp di, word [rbx + 0xc0]
jb 0x1400f6883
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a0f0
lea rcx, [0x14017dc28]
movzx edx, word [rcx + 0x14]
movzx eax, dx
mov r8d, 0x202
and ax, r8w
cmp ax, r8w
jne 0x1400f68a6
cmp byte [rcx + 0x16], 1
jne 0x1400f68a6
mov rax, qword [rcx + 8]
jmp 0x1400f68b7
test dl, 1
je 0x1400f68b0
mov rax, rdi
jmp 0x1400f68b7
mov dl, 1
call fcn.1400328a0
mov rdi, rax
test rbx, rbx
je 0x1400f68f7
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400f68d7
test edx, edx
jne 0x1400f68d7
xor r8d, r8d
mov eax, r8d
jmp 0x1400f68dc
call fcn.140006dc0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
mov rax, rdi
test rcx, rcx
je 0x1400f68f7
call qword [0x1401a50f0]
mov rax, rdi
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
xor edi, edi
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], rdi
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], dil
jne 0x1400f6912
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.1400d9d80
mov r8d, edi
mov r9, rdi
cmp qword [rsp + 0x50], rdi
jbe 0x1400f6974
nop word [rax + rax]
mov rax, qword [0x1401a82a8]
movzx edx, word [rax + 0x80]
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0x10
cmovae rcx, qword [rsp + 0x40]
xor byte [r9 + rcx], dl
inc r8d
lea r9, [r9 + 1]
movsxd rax, r8d
cmp rax, qword [rsp + 0x50]
jb 0x1400f6940
movups xmm6, xmmword [rsp + 0x40]
movups xmmword [rsp + 0x68], xmm6
movups xmm7, xmmword [rsp + 0x50]
movups xmmword [rsp + 0x78], xmm7
mov qword [rsp + 0x50], rdi
mov ebx, 0xf
mov qword [rsp + 0x58], rbx
mov byte [rsp + 0x40], dil
lea rcx, [rsp + 0x40]
call fcn.1400d96a0
movaps xmmword [rbp - 0x50], xmm6
movaps xmmword [rbp - 0x40], xmm7
mov qword [rsp + 0x78], rdi
mov qword [rbp - 0x80], rbx
mov byte [rsp + 0x68], dil
lea rcx, [rsp + 0x68]
call fcn.1400d96a0
mov rbx, qword [rbp - 0x68]
test rbx, rbx
je 0x1400f6a17
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400f69e1
call qword [0x1401a50e0]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400f6a03
mov eax, 1
cmp ax, word [rbx + 0xc0]
jae 0x1400f6a03
add rcx, 0x38
jne 0x1400f6a1e
jmp 0x1400f6a55
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a0f0
lea rcx, [0x14017dc28]
movzx edx, word [rcx + 0x14]
movzx eax, dx
mov r8d, 0x202
and ax, r8w
cmp ax, r8w
jne 0x1400f6a41
cmp byte [rcx + 0x16], 1
jne 0x1400f6a41
mov rdi, qword [rcx + 8]
jmp 0x1400f6a50
test dl, 1
jne 0x1400f6a50
mov dl, 1
call fcn.1400328a0
mov rdi, rax
test rbx, rbx
je 0x1400f6a87
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400f6a6d
test edx, edx
jne 0x1400f6a6d
xor r8d, r8d
mov eax, r8d
jmp 0x1400f6a72
call fcn.140006dc0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400f6a87
call qword [0x1401a50f0]
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
xor ebx, ebx
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rbx
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdi + r8], bl
jne 0x1400f6aa2
mov rdx, rdi
lea rcx, [rsp + 0x40]
call fcn.1400d9d80
mov r8d, ebx
mov r9, rbx
cmp qword [rsp + 0x50], rbx
jbe 0x1400f6b04
nop word [rax + rax]
mov rax, qword [0x1401a82a8]
movzx edx, word [rax + 0x80]
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0x10
cmovae rcx, qword [rsp + 0x40]
xor byte [r9 + rcx], dl
inc r8d
lea r9, [r9 + 1]
movsxd rax, r8d
cmp rax, qword [rsp + 0x50]
jb 0x1400f6ad0
movups xmm6, xmmword [rsp + 0x40]
movups xmmword [rsp + 0x68], xmm6
movups xmm7, xmmword [rsp + 0x50]
movups xmmword [rsp + 0x78], xmm7
mov qword [rsp + 0x50], rbx
mov edi, 0xf
mov qword [rsp + 0x58], rdi
mov byte [rsp + 0x40], bl
lea rcx, [rsp + 0x40]
call fcn.1400d96a0
movaps xmmword [rbp - 0x30], xmm6
movaps xmmword [rbp - 0x20], xmm7
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x80], rdi
mov byte [rsp + 0x68], bl
lea rcx, [rsp + 0x68]
call fcn.1400d96a0
mov rbx, qword [rbp - 0x68]
test rbx, rbx
je 0x1400f6bab
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400f6b6f
call qword [0x1401a50e0]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400f6b97
mov eax, 2
cmp ax, word [rbx + 0xc0]
jae 0x1400f6b97
add rcx, 0x70
jne 0x1400f6bb2
xor r8d, r8d
mov edi, r8d
jmp 0x1400f6bf4
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a0f0
lea rcx, [0x14017dc28]
movzx edx, word [rcx + 0x14]
movzx eax, dx
mov r8d, 0x202
and ax, r8w
cmp ax, r8w
jne 0x1400f6bd5
cmp byte [rcx + 0x16], 1
jne 0x1400f6bd5
mov rdi, qword [rcx + 8]
jmp 0x1400f6bec
test dl, 1
je 0x1400f6be2
xor r8d, r8d
mov edi, r8d
jmp 0x1400f6bef
mov dl, 1
call fcn.1400328a0
mov rdi, rax
xor r8d, r8d
test rbx, rbx
je 0x1400f6c23
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400f6c09
test edx, edx
jne 0x1400f6c09
mov eax, r8d
jmp 0x1400f6c0e
call fcn.140006dc0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400f6c23
call qword [0x1401a50f0]
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
xor eax, eax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rdi + r8], al
jne 0x1400f6c40
mov rdx, rdi
lea rcx, [rsp + 0x40]
call fcn.1400d9d80
xor edi, edi
mov edx, edi
mov r8d, edi
cmp qword [rsp + 0x50], rdx
jbe 0x1400f6ca3
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [0x1401a82a8]
movzx ecx, word [rax + 0x80]
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0x10
cmovae rax, qword [rsp + 0x40]
xor byte [r8 + rax], cl
inc edx
lea r8, [r8 + 1]
movsxd rax, edx
cmp rax, qword [rsp + 0x50]
jb 0x1400f6c70
movups xmm7, xmmword [rsp + 0x40]
movups xmmword [rsp + 0x68], xmm7
movups xmm6, xmmword [rsp + 0x50]
movups xmmword [rsp + 0x78], xmm6
mov qword [rsp + 0x50], rdi
mov ebx, 0xf
mov qword [rsp + 0x58], rbx
mov byte [rsp + 0x40], dil
lea rcx, [rsp + 0x40]
call fcn.1400d96a0
movaps xmmword [rbp - 0x10], xmm7
movaps xmmword [rbp], xmm6
mov qword [rsp + 0x78], rdi
mov qword [rbp - 0x80], rbx
mov byte [rsp + 0x68], dil
lea rcx, [rsp + 0x68]
call fcn.1400d96a0
lea rcx, [rsi + 0x98]
mov rbx, qword [rsi + 0xa0]
cmp rbx, qword [rsi + 0xa8]
je 0x1400f6d44
mov qword [rsp + 0x60], rbx
lea rdx, [rbp - 0x50]
mov rcx, rbx
call fcn.1400d92a0
nop
lea rcx, [rbx + 0x20]
lea rdx, [rbp - 0x30]
call fcn.1400d92a0
nop
lea rcx, [rbx + 0x40]
lea rdx, [rbp - 0x10]
call fcn.1400d92a0
nop
add qword [rsi + 0xa0], 0x60
jmp 0x1400f6d51
lea r8, [rbp - 0x50]
mov rdx, rbx
call fcn.1400ecce0
nop
lea rcx, [rbp - 0x10]
call fcn.1400d96a0
lea rcx, [rbp - 0x30]
call fcn.1400d96a0
lea rcx, [rbp - 0x50]
call fcn.1400d96a0
mov rcx, qword [rbp - 0x68]
call fcn.140039550
cmp eax, 0x64
je 0x1400f6800
mov rdi, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x68]
call fcn.140038580
call fcn.140104300
xor edx, edx
mov rcx, r15
call fcn.1400ca670
add r14, 0x20
cmp r14, r13
jne 0x1400f662e
mov rcx, r12
call fcn.1400e5240
xor eax, eax
mov rcx, qword [rbp + 0x50]
xor rcx, rsp
call fcn.140106970
lea r11, [rsp + 0x180]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret