Function at 0x1401d9250
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x68
lea rbp, [rsp + 0x60]
mov qword [rbp], 0xfffffffffffffffe
mov eax, dword [0x1404eede8]
mov ecx, dword [0x1404f21e0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 0x26838]
jg 0x1401d92d6
call fcn.14007c660
mov rsi, rax
movzx eax, byte [0x1404eee08]
mov ecx, eax
not cl
xor al, 1
and cl, 0xfe
or cl, al
cmp cl, 0xff
je 0x1401d92bd
call fcn.14007c660
mov rcx, rax
mov rax, qword [0x1404eedf0]
sub rax, rcx
jmp 0x1401d92bf
xor eax, eax
add rax, rsi
sub rax, qword [0x1404eee00]
add rsp, 0x68
pop rbx
pop rdi
pop rsi
pop r14
pop r15
pop rbp
ret
lea rdx, [0x1404eede8]
xor ecx, ecx
mov r8d, 0x6d73e134
call fcn.1401d99c0
cmp byte [0x1404ee448], 0
jne 0x1401d92fc
cmp dword [0x1404eede8], 0xffffffff
jne 0x1401d928a
lea rcx, [0x1404eedb8]
call fcn.14023edd0
xorps xmm0, xmm0
movups xmmword [0x1404eedd0], xmm0
mov qword [0x1404eede0], 0
call fcn.14007c660
mov qword [0x1404eedf0], rax
mov qword [rbp - 8], 0xf
mov qword [rbp - 0x10], 0xc
xor ecx, ecx
mov edx, 1
mov r8d, 1
mov r9d, 0x25a9339e
call fcn.1401d99f0
mov rcx, qword [rax]
mov qword [rbp - 0x20], rcx
mov eax, dword [rax + 8]
mov dword [rbp - 0x18], eax
mov byte [rbp - 0x14], 0
lea rcx, [rbp - 0x38]
lea rdx, [rbp - 0x20]
call fcn.140240000
lea rcx, [0x1404eedb8]
lea rsi, [rbp - 0x38]
mov rdx, rsi
mov r8d, 0x24614861
call fcn.1401d99e0
mov rcx, rsi
call fcn.140084c30
mov rax, qword [rbp - 8]
cmp rax, 0x10
jb 0x1401d93dd
mov rcx, qword [rbp - 0x20]
mov rdx, rax
xor rdx, 1
mov r8d, eax
and r8d, 1
lea rdx, [rdx + r8*2]
cmp rdx, 0x1000
jb 0x1401d93d8
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x1401d9679
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.140084c10
lea rcx, [0x1404eedb8]
call fcn.14023ef80
mov rbx, qword [0x1404a8b48]
movsxd rsi, dword [rbx]
mov edi, dword [0x1403c16d8]
test al, al
je 0x1401d95b5
lea rcx, [0x1404eedb8]
call fcn.14023ef70
mov qword [rbp - 0x10], 0
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], 0
mov dword [rsp + 0x20], 0xbf2e81c3
xor ecx, ecx
xor edx, edx
xor r8d, r8d
mov r9d, 1
call fcn.1401d9cb0
lea rcx, [rbp - 0x20]
mov edx, 0x26
mov r9, rax
call fcn.140072260
lea rcx, [0x1404eedb8]
lea rdx, [rbp - 0x20]
call fcn.14023feb0
mov qword [0x1404eedd0], rax
mov rax, qword [rbp - 8]
cmp rax, 0x10
jb 0x1401d94a2
mov rcx, qword [rbp - 0x20]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x1401d949d
mov r8, qword [rcx - 8]
sub rcx, r8
add rcx, 0xfffffffffffffff8
cmp rcx, 0x20
jae 0x1401d967e
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.140084c10
add rsi, rbx
mov ebx, dword [0x1404eedf8]
lea r14d, [rbx + 1]
mov dword [0x1404eedf8], r14d
test ebx, r14d
je 0x1401d94c0
xor r15d, r15d
jmp 0x1401d94d6
xor eax, eax
xor r15d, r15d
test edi, edi
jle 0x1401d94d6
cdqe
xor r15, qword [rsi + rax]
add eax, 8
cmp eax, edi
jl 0x1401d94c9
mov qword [rbp - 0x10], 0
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], 0
mov dword [rsp + 0x20], 0xbf2e81c3
xor ecx, ecx
xor edx, edx
mov r8d, 1
xor r9d, r9d
call fcn.1401d9cb0
lea rcx, [rbp - 0x20]
mov edx, 0x28
mov r9, rax
call fcn.140072260
lea rcx, [0x1404eedb8]
lea rdx, [rbp - 0x20]
call fcn.14023feb0
mov qword [0x1404eedd8], rax
and ebx, r14d
mov rax, qword [0x1403c16d0]
xor ecx, ecx
neg ebx
sbb rcx, rcx
sub rax, r15
not rax
mov rdx, rax
xor rdx, rcx
and rax, rcx
or rdx, rax
not rdx
test rdx, rdx
setne al
or al, byte [0x1404ee448]
and al, 1
mov byte [0x1404ee448], al
mov rax, qword [rbp - 8]
cmp rax, 0xf
jbe 0x1401d95a5
mov rcx, qword [rbp - 0x20]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x1401d95a0
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x1401d9683
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.140084c10
lea rax, [0x14039d4d0]
cmp qword [0x1404eedd0], rax
je 0x1401d9630
mov rax, qword [0x1404eedd0]
test rax, rax
je 0x1401d9603
cmp qword [0x1404eedd8], 0
je 0x1401d9603
lea rcx, [0x1401d9950]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], 0
lea r8, [0x1404eede0]
lea rdx, [rbp - 0x20]
mov ecx, 2
call qword [case.0x14014757d.0]
test eax, eax
je 0x1401d9603
mov qword [0x1404eedd8], 0
lea rcx, [0x1401d98e0]
mov edx, 0x50bf7c38
call fcn.140137f30
lea rdx, [0x1404eede8]
mov ecx, 1
mov r8d, 0x6d73e134
call fcn.1401d99c0
jmp 0x1401d928a
lea rax, [0x1403b9658]
mov qword [rbp - 0x20], rax
lea rdx, [rbp - 0x18]
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
lea rax, [0x1403b9d28]
mov qword [rbp - 0x38], rax
mov byte [rbp - 0x30], 1
lea rcx, [rbp - 0x38]
call fcn.14039eddc
lea rax, [0x1403b9cf8]
mov qword [rbp - 0x20], rax
lea rdx, [0x14041a8f0]
lea rcx, [rbp - 0x20]
call fcn.14039ed3c
call fcn.140356a3c
call fcn.140356a3c
call fcn.140356a3c
int3