Function at 0x1400f323c
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r9
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
add rsp, 0xffffffffffffff80
mov rbx, rdx
mov rdi, rcx
mov edx, r8d
lea rcx, [rbp - 0x20]
call fcn.14007eec4
mov rdx, rbx
lea rcx, [rbp - 0x20]
call 0x14007f51c
test al, al
je 0x1400f34d4
mov r8d, 0x478626b7
add r8d, 0x4d13666
xor r8d, 0x4c575d3d
mov byte [rbp - 0x60], 0x5a
sub byte [rbp - 0x60], 0x27
add byte [rbp - 0x60], 0x2a
xor byte [rbp - 0x60], 0x5d
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x20]
call fcn.14008036c
test al, al
je 0x1400f34d4
cmp dword [rbp - 0x40], 0x32484346
pushf
mov r15d, 0x259e4542
add r15d, 0x58adf221
xor r15d, 0x5fe06f21
xor r15d, 0x21ac5843
popf
jne 0x1400f332b
cmp dword [rbp - 0x3c], 0x20
jne 0x1400f332b
mov esi, dword [rbp - 0x38]
lea rdx, [rbp - 0x58]
mov ebx, dword [rbp - 0x34]
mov rcx, rdi
mov dword [rbp - 0x58], esi
mov dword [rbp - 0x54], ebx
call fcn.1400f2df4
test al, al
je 0x1400f34d4
mov eax, dword [rbp - 0x2c]
test eax, eax
jle 0x1400f34d4
mov ecx, dword [rbp - 0x30]
mov byte [rbp - 0x60], r15b
jmp 0x1400f3396
xor edx, edx
lea rcx, [rbp - 0x20]
call fcn.140080610
and dword [rbp - 0x50], 0
lea rdx, [rbp - 0x50]
and dword [rbp - 0x4c], 0
lea rcx, [rbp - 0x20]
mov r8d, 0x41a73aed
add r8d, 0x766213a
xor r8d, 0x7c02979
sub r8d, 0x4ecd754e
call fcn.14008036c
test al, al
je 0x1400f34d4
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.1400f2df4
test al, al
je 0x1400f34d4
mov eax, dword [rbp - 0x44]
test eax, eax
jle 0x1400f34d4
mov ecx, dword [rbp - 0x48]
mov ebx, dword [rbp - 0x4c]
mov esi, dword [rbp - 0x50]
mov r14d, 0x7c4f8fb1
sub r14d, 0x48a38c5e
sub r14d, 0x1d613a50
add r14d, 0x2144032
mov edx, 0x58e6374d
sub edx, 0x26d9ce6b
add edx, 0x3be0ac28
xor edx, 0x6ded17e2
xor esi, r14d
mov qword [rbp - 0x50], rdx
xor eax, r14d
xor ebx, r14d
xor ecx, r14d
mov r8, rdi
mov dword [rdx + rdi], esi
mov dword [rdx + rdi + 4], ebx
mov dword [rdi + 0x2f4], ecx
mov dword [rdi + 0x30c], eax
mov esi, dword [rdi + 0x2d8]
and esi, 0x2000
mov eax, esi
mov dword [rbp - 0x58], esi
neg eax
sbb r13, r13
and r13, 0xffffffffffff0100
sub r13, 0x38ae57b0
add r13, 0x38af57af
mov r12, r13
shl r12, 4
cmp qword [rdi + 0x300], 0
jne 0x1400f346b
mov edx, 0x57766061
sub edx, 0x1e69a301
sub edx, 0x390cbd50
mov rcx, r12
call fcn.1400991c0
mov rcx, rax
mov rdx, r13
movaps xmm0, xmmword [0x140146620]
movups xmmword [rcx], xmm0
lea rcx, [rcx + 0x10]
sub rdx, r15
jne 0x1400f344d
mov qword [rdi + 0x300], rax
mov edx, 0xa73a3a7
add edx, 0x162f3d49
add edx, 0x14b93ac6
xor edx, 0x355c1ba6
mov rcx, r12
call fcn.1400991c0
mov rbx, rax
test rax, rax
je 0x1400f34d4
cmp byte [rbp - 0x60], 0
je 0x1400f35e9
movsxd rcx, dword [rbp - 0x28]
call fcn.140099140
mov r8d, dword [rbp - 0x28]
lea rcx, [rbp - 0x20]
mov rdx, rax
mov rsi, rax
call fcn.14008036c
test al, al
jne 0x1400f3504
mov rcx, rbx
call fcn.140099160
mov rcx, rsi
call fcn.140099150
xor r15b, r15b
lea rcx, [rbp - 0x20]
call fcn.14007ef9c
lea r11, [rsp + 0x80]
mov al, r15b
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
neg dword [rbp - 0x58]
mov rdx, rbx
mov r8d, dword [rbp - 0x28]
mov rcx, rsi
sbb r9d, r9d
and r9d, 0xfff01000
sub r9d, 0x72dc00eb
add r9d, 0x72ec00db
call fcn.140097670
movsxd rcx, eax
cmp rcx, r12
jne 0x1400f34c4
mov rcx, rsi
call fcn.140099150
xor ecx, ecx
movups xmm0, xmmword [rcx + rbx]
mov rax, qword [rdi + 0x300]
xorps xmm0, xmmword [0x140146620]
movups xmmword [rcx + rax], xmm0
lea rcx, [rcx + 0x10]
sub r13, r15
jne 0x1400f3544
mov rcx, rbx
call fcn.140099160
mov rax, qword [rbp - 0x50]
lea rcx, [r13 - 1]
mov esi, dword [rdi + 0x2ec]
xor esi, r14d
mov eax, dword [rax + rdi]
xor eax, r14d
imul esi, eax
lea eax, [r13 + 4]
movsxd r14, esi
mul r14
cmovo rax, rcx
mov rcx, rax
call fcn.140099140
mov rbx, rax
test rax, rax
je 0x1400f34d4
cmp byte [rbp - 0x60], r13b
je 0x1400f3652
movsxd rcx, dword [rbp - 0x24]
call fcn.140099140
mov r8d, dword [rbp - 0x24]
lea rcx, [rbp - 0x20]
mov rdx, rax
mov rdi, rax
call fcn.14008036c
mov rcx, rdi
test al, al
jne 0x1400f361d
call fcn.140099150
mov rcx, rbx
jmp 0x1400f34cf
neg esi
lea rcx, [rbp - 0x20]
mov rdx, rbx
sbb r8d, r8d
and r8d, 0xfff01000
sub r8d, 0xfff00010
call fcn.14008036c
test al, al
jne 0x1400f3542
mov rcx, rbx
call fcn.140099160
jmp 0x1400f34d4
mov r8d, dword [rbp - 0x24]
lea r9d, [rsi*4]
mov rdx, rbx
call fcn.140097670
movsxd rcx, eax
lea rax, [r14*4]
cmp rcx, rax
mov rcx, rdi
jne 0x1400f35dc
call fcn.140099150
jmp 0x1400f366e
lea r8d, [rsi*4]
mov rdx, rbx
lea rcx, [rbp - 0x20]
call fcn.14008036c
test al, al
je 0x1400f35e1
mov rax, qword [rbp + 0x48]
mov qword [rax], rbx
jmp 0x1400f34d7