Function at 0x1400dda80
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov dword [rax + 0x18], r8d
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x248]
sub rsp, 0x388
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
lea rcx, [rbp - 0x70]
call fcn.1401f3f30
movsd xmm0, qword [rax]
movsd qword [rbp - 0x80], xmm0
mov eax, dword [rax + 8]
mov dword [rbp - 0x78], eax
lea rdx, [rbp - 0x80]
mov rcx, qword [rbp + 0x288]
call fcn.1401f45e0
test al, al
jne 0x1400ddebe
mov rax, qword [r9 + 8]
cmp qword [r9], rax
je 0x1400ddebe
mov rcx, qword [rbp + 0x270]
mov rax, qword [rcx + 8]
cmp qword [rcx], rax
je 0x1400ddebe
mov rax, qword [rbp + 0x298]
mov edi, dword [rax + 0x6c]
movzx r15d, byte [rax + 0x4a]
movzx r12d, byte [rax + 0x49]
movzx r13d, byte [rax + 0x48]
movsd xmm8, qword [rax + 0x40]
lea rcx, [rbp + 0x18]
mov qword [rbp - 0x40], rcx
mov rdx, rax
lea rcx, [rbp + 0x18]
call fcn.140016420
mov r14, rax
lea rax, [rbp + 0x38]
mov qword [rbp - 0x60], rax
mov rdx, qword [rbp + 0x2c0]
lea rcx, [rbp + 0x38]
call fcn.140016420
mov rsi, rax
mov rbx, qword [rbp + 0x280]
movss xmm2, dword [rbx + 8]
movss xmm1, dword [rbx]
lea rcx, [rbp - 0x38]
call fcn.140015a70
movss xmm6, dword [rax]
movss xmm7, dword [rax + 4]
lea rax, [rbp - 0x30]
mov qword [rbp - 0x50], rax
mov rdx, qword [rbp + 0x278]
lea rcx, [rbp - 0x30]
call fcn.1401972f0
nop
lea rax, [rbp - 0x18]
mov qword [rbp - 0x70], rax
mov rdx, qword [rbp + 0x270]
lea rcx, [rbp - 0x18]
call fcn.1401972f0
nop
mov rdx, qword [rbp + 0x268]
lea rcx, [rbp]
call fcn.1401972f0
mov rax, qword [rbp + 0x300]
movsd xmm0, qword [rax]
movsd qword [rbp - 0x80], xmm0
mov eax, dword [rax + 8]
mov dword [rbp - 0x78], eax
mov rax, qword [rbp + 0x290]
movsd xmm0, qword [rax]
movsd qword [rbp - 0x70], xmm0
mov eax, dword [rax + 8]
mov dword [rbp - 0x68], eax
mov rax, qword [rbp + 0x288]
movsd xmm0, qword [rax]
movsd qword [rbp - 0x50], xmm0
mov eax, dword [rax + 8]
mov dword [rbp - 0x48], eax
movsd xmm0, qword [rbx]
movsd qword [rbp - 0x60], xmm0
mov eax, dword [rbx + 8]
mov dword [rbp - 0x58], eax
movss xmm1, dword [rbp + 0x2d0]
cvtps2pd xmm1, xmm1
movsd xmm3, qword [rbp + 0x2b8]
movaps xmm2, xmm3
addsd xmm2, xmm3
mov dword [rsp + 0xf0], edi
lea rax, [rbp - 0x80]
mov qword [rsp + 0xe8], rax
movzx eax, byte [rbp + 0x2f8]
mov byte [rsp + 0xe0], al
movzx eax, byte [rbp + 0x2f0]
mov byte [rsp + 0xd8], al
movzx eax, byte [rbp + 0x2e8]
mov byte [rsp + 0xd0], al
movzx eax, byte [rbp + 0x2e0]
mov byte [rsp + 0xc8], al
movzx eax, byte [rbp + 0x2d8]
mov byte [rsp + 0xc0], al
movsd xmm0, qword [rbp + 0x2c8]
movsd qword [rsp + 0xb8], xmm0
mov byte [rsp + 0xb0], r15b
mov byte [rsp + 0xa8], r12b
mov byte [rsp + 0xa0], r13b
movsd qword [rsp + 0x98], xmm8
mov qword [rsp + 0x90], r14
movsd qword [rsp + 0x88], xmm1
mov qword [rsp + 0x80], rsi
movsd xmm0, qword [0x14030f310]
movsd qword [rsp + 0x78], xmm0
movsd qword [rsp + 0x70], xmm2
movsd qword [rsp + 0x68], xmm3
movsd xmm0, qword [rbp + 0x2b0]
movsd qword [rsp + 0x60], xmm0
movsd xmm1, qword [rbp + 0x2a8]
movsd qword [rsp + 0x58], xmm1
movsd xmm0, qword [rbp + 0x2a0]
movsd qword [rsp + 0x50], xmm0
lea rax, [rbp - 0x70]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x38], rax
unpcklps xmm6, xmm7
movsd qword [rsp + 0x30], xmm6
lea rax, [rbp - 0x30]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x18]
mov qword [rsp + 0x20], rax
lea r9, [rbp]
mov r8d, dword [rbp + 0x260]
mov rdx, qword [rbp + 0x258]
lea rcx, [rbp + 0x60]
call fcn.14007f8b0
nop
mov rsi, qword [rbp + 0x298]
lea rbx, [rsi + 0x78]
lea rax, [rbp + 0x1a0]
cmp rax, rbx
je 0x1400ddd9a
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1400ddd8a
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
lea rcx, [rbp + 0x1a0]
call fcn.140054330
mov rdi, qword [rbp + 0x2c0]
mov r10, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1400dddae
mov r10, qword [rdi]
movabs r9, 0xabc29ce444222325
movabs r11, 0xfffffe539f
nop dword [rax]
nop word [rax + rax]
movzx r8d, byte [r10]
lea r10, [r10 + 1]
lea edx, [r8 - 0x41]
lea eax, [r8 + 0x20]
movzx ecx, al
cmp dl, 0x19
cmova ecx, r8d
movsx rax, cl
xor r9, rax
imul r9, r11
test r8b, r8b
jne 0x1400dddd0
mov qword [rbp + 0x1c0], r9
lea rcx, [0x1404def00]
call fcn.1401f5a84
test eax, eax
jne 0x1400ddf42
cmp dword [0x1404def4c], 0x7fffffff
je 0x1400ddf2d
mov rax, qword [0x1404df818]
cmp rax, qword [0x1404df820]
je 0x1400dde4e
lea rdx, [rbp + 0x60]
mov rcx, rax
call fcn.1400e5a30
add qword [0x1404df818], 0x168
jmp 0x1400dde5a
lea r8, [rbp + 0x60]
mov rdx, rax
call fcn.1401bc690
lea rcx, [0x1404def00]
call fcn.1401f5a8c
call fcn.140082ee0
mov rax, qword [rbp + 0x250]
movss dword [rax + 0x28], xmm0
lea rcx, [rbp + 0x60]
call fcn.14007fc60
nop
mov rcx, qword [rbp + 0x268]
call fcn.140023e80
nop
mov rcx, qword [rbp + 0x270]
call fcn.140023e80
nop
mov rcx, qword [rbp + 0x278]
call fcn.140023e80
nop
mov rcx, rbx
call fcn.1400166a0
mov rcx, rsi
call fcn.1400166a0
nop
mov rcx, rdi
jmp 0x1400ddf01
mov rcx, r9
call fcn.140023e80
nop
mov rcx, qword [rbp + 0x270]
call fcn.140023e80
nop
mov rcx, qword [rbp + 0x278]
call fcn.140023e80
nop
mov rbx, qword [rbp + 0x298]
lea rcx, [rbx + 0x78]
call fcn.1400166a0
mov rcx, rbx
call fcn.1400166a0
nop
mov rcx, qword [rbp + 0x2c0]
call fcn.1400166a0
lea r11, [rsp + 0x388]
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
mov dword [0x1404def4c], 0x7ffffffe
mov ecx, 6
call fcn.1401f5784
int3
mov ecx, 5
call fcn.1401f5784
int3