Function at 0x1400063a0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xd8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x40], xmm9
movdqa xmmword [rbp + 0x30], xmm8
movdqa xmmword [rbp + 0x20], xmm7
movdqa xmmword [rbp + 0x10], xmm6
mov qword [rbp + 8], 0xfffffffffffffffe
mov rdi, rcx
mov rax, qword [rcx + 0x28]
cmp dword [rcx], 1
mov rdx, qword [rcx + 0x50]
jne 0x140006428
test rax, rax
js 0x140006463
cvtsi2ss xmm0, rax
test rdx, rdx
jns 0x140006481
mov rax, rdx
shr rax, 1
mov ecx, edx
and ecx, 1
or rcx, rax
cvtsi2ss xmm1, rcx
addss xmm1, xmm1
divss xmm0, xmm1
ucomiss xmm0, dword [0x1401bfaf0]
jb 0x140006493
mov qword [rdi], 0
jmp 0x140006447
mov rcx, rdx
shr rcx, 2
mov r8, rdx
sub r8, rcx
cmp rax, r8
jne 0x14000689f
test rax, rax
je 0x1400067d2
add rdx, rdx
mov rcx, rdi
call fcn.140007070
mov ecx, eax
mov al, 1
test cl, cl
je 0x14000689f
jmp 0x1400068a1
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
test rdx, rdx
js 0x1400063fb
cvtsi2ss xmm1, rdx
divss xmm0, xmm1
ucomiss xmm0, dword [0x1401bfaf0]
jae 0x14000641f
mov rcx, rdi
call fcn.140183770
mov rax, qword [rdi + 0x50]
test rax, rax
je 0x14000650f
mov rdx, qword [rdi + 0x48]
lea rcx, [rax - 1]
movabs r8, 0x3fffffffffffffff
and r8, rcx
mov rcx, rdx
cmp r8, 7
jb 0x1400064f9
inc r8
mov r9, r8
and r9, 0xfffffffffffffff8
lea rcx, [rdx + r9*4]
xor r10d, r10d
movaps xmm0, xmmword [0x1401bfae0]
nop word [rax + rax]
movups xmmword [rdx + r10*4], xmm0
movups xmmword [rdx + r10*4 + 0x10], xmm0
add r10, 8
cmp r9, r10
jne 0x1400064e0
cmp r8, r9
je 0x14000650f
lea rax, [rdx + rax*4]
nop dword [rax]
mov dword [rcx], 0xffff
add rcx, 4
cmp rcx, rax
jne 0x140006500
mov rax, qword [rdi + 0x28]
test rax, rax
je 0x14000689f
mov r9, qword [rdi + 0x20]
imul rax, rax, 0x68
add rax, r9
mov qword [rbp], rax
cmp dword [rdi], 2
movzx r14d, word [rdi + 0x58]
movzx eax, r14w
mov qword [rbp - 8], rax
mov r12, qword [rdi + 0x50]
mov r13, qword [rdi + 0x48]
jne 0x1400068c7
movdqu xmm6, xmmword [rdi + 8]
pshufd xmm7, xmm6, 0x44
pxor xmm7, xmmword [str.uespemosarenegylmodnarodsetybdet]
pshufd xmm8, xmm6, 0xee
pxor xmm8, xmmword [0x1401bfad0]
lea rax, [rbp - 0x30]
xorps xmm9, xmm9
lea rdi, [rbp - 0x60]
lea r15, [rbp - 0x18]
xor ebx, ebx
mov dword [rbp - 0x10], r14d
movdqa xmmword [rbp - 0x60], xmm7
movdqa xmmword [rbp - 0x50], xmm8
movdqa xmmword [rbp - 0x40], xmm6
movaps xmmword [rax], xmm9
mov qword [rax + 0x10], 0
mov rsi, qword [r9 + 0x40]
xor eax, eax
test rsi, rsi
setne al
mov qword [rbp - 0x18], rax
mov r8d, 8
mov rcx, rdi
mov rdx, r15
mov r14, r9
call fcn.1400074d0
test rsi, rsi
je 0x1400065d2
mov rdx, qword [r14 + 0x48]
mov r8, qword [r14 + 0x50]
mov rcx, rdi
jmp 0x1400065e7
movzx eax, byte [r14 + 0x48]
mov qword [rbp - 0x18], rax
mov r8d, 8
mov rcx, rdi
mov rdx, r15
call fcn.1400074d0
mov r8, qword [rbp - 0x50]
mov rcx, qword [rbp - 0x30]
shl rcx, 0x38
or rcx, qword [rbp - 0x28]
mov r9, qword [rbp - 0x48]
mov r10, qword [rbp - 0x60]
add r10, r8
rol r8, 0xd
xor r9, rcx
xor r8, r10
rol r10, 0x20
mov rax, qword [rbp - 0x58]
add rax, r9
rol r9, 0x10
xor r9, rax
add r10, r9
rol r9, 0x15
add rax, r8
rol r8, 0x11
xor r9, r10
xor r8, rax
rol rax, 0x20
xor r10, rcx
add r10, r8
rol r8, 0xd
xor r8, r10
rol r10, 0x20
xor rax, 0xff
add rax, r9
rol r9, 0x10
xor r9, rax
add r10, r9
rol r9, 0x15
add rax, r8
rol r8, 0x11
xor r8, rax
rol rax, 0x20
xor r9, r10
add r10, r8
rol r8, 0xd
xor r8, r10
rol r10, 0x20
lea rcx, [r14 + 0x68]
add rax, r9
rol r9, 0x10
xor r9, rax
add r10, r9
rol r9, 0x15
lea rdx, [rbx + 1]
add rax, r8
rol r8, 0x11
xor r9, r10
xor r8, rax
rol rax, 0x20
add r10, r8
rol r8, 0xd
xor r8, r10
add rax, r9
shl r9, 0x10
xor r9, rax
shr r9, 0x2b
add rax, r8
shr r8, 0x2f
mov r10, rax
shr r10, 0x20
xor r9d, r8d
xor eax, r10d
xor eax, r9d
and eax, 0x7fff
mov r8d, eax
mov rdi, qword [rbp - 8]
and r8d, edi
mov word [r14 + 0x60], ax
xor r9d, r9d
xor esi, esi
mov r14d, dword [rbp - 0x10]
cmp r8, r12
cmovae r8, rsi
jb 0x140006719
nop word cs:[rax + rax]
test r12, r12
je 0x1400067c0
cmp word [r13 + r8*4], 0xffff
je 0x140006786
movzx r10d, word [r13 + r8*4 + 2]
and r10d, r14d
mov r11d, r8d
sub r11d, r10d
mov r10d, edi
and r10d, r11d
cmp r10, r9
jb 0x14000676b
inc r9
inc r8
cmp r8, r12
cmovae r8, rsi
jae 0x140006710
jmp 0x140006719
movzx r10d, word [r13 + r8*4 + 2]
mov word [r13 + r8*4], bx
mov word [r13 + r8*4 + 2], ax
inc r8
mov eax, r10d
mov ebx, r9d
cmp r8, r12
cmovae r8, rsi
jb 0x140006779
test r12, r12
je 0x1400067d0
movzx r9d, word [r13 + r8*4]
cmp r9w, 0xffff
jne 0x140006750
mov word [r13 + r8*4], bx
mov word [r13 + r8*4 + 2], ax
mov r9, rcx
mov rbx, rdx
cmp rcx, qword [rbp]
lea rax, [rbp - 0x30]
lea rdi, [rbp - 0x60]
lea r15, [rbp - 0x18]
jne 0x140006580
jmp 0x14000689f
jmp 0x1400067c0
jmp 0x1400067d0
mov word [rdi + 0x58], 7
movzx eax, byte [0x1402c9f71]
mov ecx, 0x20
mov edx, 2
call fcn.14000c710
test rax, rax
je 0x140006ab2
mov rsi, rax
movaps xmm0, xmmword [0x1401bfae0]
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov rdx, qword [rdi + 0x50]
test rdx, rdx
je 0x140006824
mov rcx, qword [rdi + 0x48]
shl rdx, 2
mov r8d, 2
call fcn.14000c720
mov qword [rdi + 0x48], rsi
mov qword [rdi + 0x50], 8
movzx eax, byte [0x1402c9f71]
mov ecx, 0x270
mov edx, 8
call fcn.14000c710
mov qword [rbp - 8], rax
test rax, rax
je 0x140006ac1
mov qword [rbp], rdi
lea rcx, [rdi + 0x18]
mov qword [rbp - 0x10], rcx
call fcn.1400081e0
mov rax, qword [rbp - 0x10]
mov rax, qword [rax]
test rax, rax
mov rsi, qword [rbp]
je 0x140006887
mov rcx, qword [rsi + 0x20]
imul rdx, rax, 0x68
mov r8d, 8
call fcn.14000c720
mov qword [rsi + 0x18], 6
mov rax, qword [rbp - 8]
mov qword [rsi + 0x20], rax
mov qword [rsi + 0x28], 0
xor eax, eax
movaps xmm6, xmmword [rbp + 0x10]
movaps xmm7, xmmword [rbp + 0x20]
movaps xmm8, xmmword [rbp + 0x30]
movaps xmm9, xmmword [rbp + 0x40]
add rsp, 0xd8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
xor eax, eax
xor ecx, ecx
mov r8, qword [r9 + 0x40]
xor edx, edx
test r8, r8
setne dl
xor edx, 0x2325
imul edx, edx, 0x4a21
test r8, r8
je 0x1400069c1
mov r10, qword [r9 + 0x50]
test r10, r10
mov rbx, qword [rbp - 8]
je 0x1400069d8
mov rdi, r9
mov r8, qword [r9 + 0x48]
mov r11, r10
mov r9, r8
and r11, 7
je 0x140006924
movzx esi, byte [r9]
inc r9
xor edx, esi
imul edx, edx, 0x1b3
dec r11
jne 0x140006910
cmp r10, 8
jb 0x1400069db
add r8, r10
nop word cs:[rax + rax]
movzx r10d, byte [r9]
xor edx, r10d
imul edx, edx, 0x1b3
movzx r10d, byte [r9 + 1]
xor r10d, edx
imul edx, r10d, 0x1b3
movzx r10d, byte [r9 + 2]
xor r10d, edx
imul edx, r10d, 0x1b3
movzx r10d, byte [r9 + 3]
xor r10d, edx
imul edx, r10d, 0x1b3
movzx r10d, byte [r9 + 4]
xor r10d, edx
imul edx, r10d, 0x1b3
movzx r10d, byte [r9 + 5]
xor r10d, edx
imul edx, r10d, 0x1b3
movzx r10d, byte [r9 + 6]
xor r10d, edx
imul edx, r10d, 0x1b3
movzx r10d, byte [r9 + 7]
add r9, 8
xor r10d, edx
imul edx, r10d, 0x1b3
cmp r9, r8
jne 0x140006940
jmp 0x1400069db
mov rdi, r9
movzx r8d, byte [r9 + 0x48]
xor edx, r8d
imul edx, edx, 0x4a21
mov rbx, qword [rbp - 8]
jmp 0x1400069db
mov rdi, r9
lea r8, [rcx + 1]
and edx, 0x7fff
mov r9d, edx
and r9d, r14d
mov word [rdi + 0x60], dx
add rdi, 0x68
xor r10d, r10d
cmp r9, r12
cmovae r9, rax
jb 0x140006a09
nop
test r12, r12
je 0x140006aa0
cmp word [r13 + r9*4], 0xffff
je 0x140006a76
movzx r11d, word [r13 + r9*4 + 2]
and r11d, r14d
mov esi, r9d
sub esi, r11d
mov r11d, ebx
and r11d, esi
cmp r11, r10
jb 0x140006a5b
inc r10
inc r9
cmp r9, r12
cmovae r9, rax
jae 0x140006a00
jmp 0x140006a09
movzx r11d, word [r13 + r9*4 + 2]
mov word [r13 + r9*4], cx
mov word [r13 + r9*4 + 2], dx
inc r9
mov edx, r11d
mov ecx, r10d
cmp r9, r12
cmovae r9, rax
jb 0x140006a69
test r12, r12
je 0x140006ab0
movzx r10d, word [r13 + r9*4]
cmp r10w, 0xffff
jne 0x140006a40
mov word [r13 + r9*4], cx
mov word [r13 + r9*4 + 2], dx
mov rcx, r8
mov r9, rdi
cmp rdi, qword [rbp]
jne 0x1400068cb
jmp 0x14000689f
jmp 0x140006aa0
jmp 0x140006ab0
mov ecx, 2
mov edx, 0x20
call fcn.1401bda40
mov ecx, 8
mov edx, 0x270
call fcn.1401bda40
int3