Function at 0x1400d0050
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x118
lea rbp, [rsp + 0x60]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x1403f79f0]
xor rax, rsp
mov qword [rbp + 0xa0], rax
mov rax, qword [rsp + 0x190]
mov r12d, r9d
mov qword [rbp + 0x28], rax
mov r15d, r12d
mov rax, qword [rsp + 0x1a0]
mov rbx, rdx
mov qword [rbp + 0x30], rax
mov r13, rcx
mov eax, r12d
shr r15d, 4
and eax, 0xf
mov dword [rbp + 0x10], r9d
mov r9, qword [rsp + 0x180]
mov r14, r8
mov dword [rbp], eax
mov rdi, rdx
mov eax, dword [rsp + 0x188]
mov qword [rbp + 8], r8
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x20], rcx
cmp eax, 0xc
jne 0x1400ccba3
movsd xmm0, qword [r9]
mov eax, dword [r9 + 8]
movsd qword [rbp + 0x40], xmm0
mov dword [rbp + 0x48], eax
mov dword [rbp + 0x4c], 0x1000000
jmp 0x1400ccbe2
mov ebx, dword [rcx + 0x150]
xor r8d, r8d
mov dword [rcx + 0x150], 0
xor edx, edx
lea rcx, [rbp + 0x40]
mov dword [rsp + 0x30], 0x10
mov qword [rsp + 0x28], rcx
mov rcx, r13
mov dword [rsp + 0x20], eax
call fcn.1400cd090
mov dword [r13 + 0x150], ebx
mov r8, r14
mov rbx, rdi
movaps xmm0, xmmword [rbp + 0x40]
mov esi, 0xf
movaps xmmword [rbp + 0x80], xmm0
cmp rbx, r8
je 0x1400ccc5c
test r15d, r15d
je 0x1400ccc5c
cmp r12d, 0x10
jb 0x1400ccc28
dec r15d
mov rax, rsi
add byte [rbp + rax + 0x40], 1
jne 0x1400ccc18
dec rax
cmp rax, 0xc
jge 0x1400ccc08
movaps xmm0, xmmword [rbp + 0x40]
movups xmmword [rdi], xmm0
add rdi, 0x10
test r15d, r15d
jne 0x1400ccc02
mov eax, r12d
mov r8, rbx
and eax, 0xfffffff0
mov rdx, rbx
mov r9d, eax
mov r14d, eax
mov rcx, r13
call fcn.1400ceee0
mov r15, qword [rbp + 8]
mov r8d, r14d
mov rdx, r15
mov rcx, rbx
call fcn.1400d1790
add r14, r15
jmp 0x1400ccd6b
cmp r12d, 0x10
jb 0x1400ccd68
mov r13, r8
lea rax, [rbp + 0x60]
sub r13, rdi
add rbx, rsi
mov r12, r13
sub r12, rax
nop dword [rax]
dec r15d
mov rax, rsi
add byte [rbp + rax + 0x40], 1
jne 0x1400ccc96
dec rax
cmp rax, 0xc
jge 0x1400ccc86
mov rcx, qword [rbp + 0x20]
lea r8, [rbp + 0x60]
lea rdx, [rbp + 0x40]
call fcn.1400cef00
test eax, eax
jne 0x1400cce1c
mov rax, rdi
lea rcx, [rbp + 0x60]
or rax, r14
or rax, rcx
test al, 7
jne 0x1400cccd9
mov rax, qword [rbp + 0x60]
xor rax, qword [r14]
mov qword [rdi], rax
mov rax, qword [rbp + 0x68]
xor rax, qword [rbx + r13 - 7]
mov qword [rbx - 7], rax
jmp 0x1400ccd41
lea rax, [rbp + 0x6f]
cmp rdi, rax
ja 0x1400ccceb
lea rax, [rbp + 0x60]
cmp rbx, rax
jae 0x1400cccf9
lea rax, [rbx + r13]
cmp rdi, rax
ja 0x1400ccd33
cmp rbx, r14
jb 0x1400ccd33
lea rdx, [rbp + 0x60]
mov r8d, 0x10
nop dword [rax]
nop word [rax + rax]
lea rax, [rdx + r12]
movzx ecx, byte [rax + rbx - 0xf]
lea r9, [rbp + 0x6f]
xor cl, byte [rdx]
mov rax, rdx
sub rax, r9
inc rdx
mov byte [rax + rbx], cl
sub r8, 1
jne 0x1400ccd10
jmp 0x1400ccd41
movdqu xmm0, xmmword [r14]
pxor xmm0, xmmword [rbp + 0x60]
movdqu xmmword [rdi], xmm0
add r14, 0x10
add rdi, 0x10
add rbx, 0x10
test r15d, r15d
jne 0x1400ccc80
mov r13, qword [rbp + 0x20]
mov r12d, dword [rbp + 0x10]
mov rbx, qword [rbp + 0x18]
mov r15, qword [rbp + 8]
jmp 0x1400ccd6b
mov r15, r14
cmp dword [rbp], 0
je 0x1400ccdac
add byte [rbp + rsi + 0x40], 1
jne 0x1400ccd81
dec rsi
cmp rsi, 0xc
jge 0x1400ccd71
lea r8, [rbp + 0x60]
mov rcx, r13
lea rdx, [rbp + 0x40]
call fcn.1400cef00
test eax, eax
jne 0x1400cce1c
mov r9d, dword [rbp]
lea rdx, [rbp + 0x60]
mov r8, r14
mov rcx, rdi
call fcn.1400d1960
mov rsi, qword [rbp + 0x28]
test rsi, rsi
je 0x1400cce1a
mov edi, dword [rsp + 0x198]
mov r9, rbx
mov ebx, dword [rsp + 0x1a8]
mov rcx, r13
mov rdx, qword [rbp + 0x30]
mov r8d, ebx
mov dword [rsp + 0x30], edi
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], r12d
call fcn.1400cd090
lea r8, [rbp + 0x60]
mov rcx, r13
lea rdx, [rbp + 0x80]
call fcn.1400cef00
test eax, eax
jne 0x1400cce1c
mov r8d, edi
lea rdx, [rbp + 0x60]
mov rcx, rsi
call fcn.1400d1790
test r15, r15
jne 0x1400cce1a
test r12d, r12d
jne 0x1400cce1a
mov dword [r13 + 0x150], ebx
xor eax, eax
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.1400da560
add rsp, 0x118
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
push rbx
sub rsp, 0x60
mov rbx, r8
test rcx, rcx
je 0x1400d0100
mov r10d, dword [rsp + 0xa8]
cmp r10d, 0x10
ja 0x1400d0100
mov r11d, dword [rsp + 0x98]
test r11d, r11d
je 0x1400d0100
cmp r10d, 0xc
jb 0x1400d0100
cmp dword [0x140c06ff0], 0
je 0x1400d00e6
mov eax, dword [rcx + 0xf0]
mov r8, qword [rsp + 0xb0]
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0xb8]
mov qword [rsp + 0x48], rcx
mov rcx, rbx
mov dword [rsp + 0x40], r10d
mov dword [rsp + 0x38], r11d
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0xa0]
mov dword [rsp + 0x28], r9d
mov r9, qword [rsp + 0x90]
mov qword [rsp + 0x20], rax
call fcn.1400cb2c0
xor eax, eax
add rsp, 0x60
pop rbx
ret
mov dword [rsp + 0xa8], r10d
mov dword [rsp + 0x98], r11d
add rsp, 0x60
pop rbx
jmp 0x1400ccb00
mov eax, 0xffffff53
add rsp, 0x60
pop rbx
ret