Function at 0x180062a30
Capabilities:
Encode data using xor

Disassembly:
mov dword [rsp + 0x18], r8d
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x27]
sub rsp, 0xe0
mov rsi, qword [0x180147368]
mov rdi, rdx
mov rbx, rcx
movaps xmmword [rsp + 0xd0], xmm6
mov edx, 1
xor ecx, ecx
mov r14d, r8d
call fcn.180044870
test rbx, rbx
je 0x180062aba
xor edx, edx
mov rcx, rbx
call fcn.1800478a0
cmp rax, rbx
jbe 0x180062aba
xor r8d, r8d
mov rdx, rax
mov rcx, rbx
call fcn.18006bd50
mov rax, qword [0x180147368]
mov rcx, qword [rax + 0x1a80]
cmp byte [rcx + 0x83], 0
jne 0x180062aba
mov eax, dword [rcx + 0x1a8]
neg eax
sbb ecx, ecx
add ecx, 6
call fcn.180068ea0
movss xmm0, dword [rsi + 0x1928]
movss xmm1, dword [rsi + 0x15a4]
mov esi, r14d
mulss xmm0, dword [0x180005cf8]
addss xmm1, xmm1
addss xmm1, xmm0
movss xmm0, dword [0x180004c54]
movss dword [rbp + 0x6f], xmm1
movss dword [rbp + 0x73], xmm1
and esi, 2
je 0x180062af9
movaps xmm1, xmm0
jmp 0x180062afe
movss xmm1, dword [rdi + 0xc]
movss xmm2, dword [rdi]
xorps xmm6, xmm6
comiss xmm6, xmm2
movss xmm3, dword [rdi + 4]
movss xmm5, dword [rdi + 8]
movss dword [rbp + 7], xmm2
movss dword [rbp + 0xb], xmm3
movss dword [rbp + 0xf], xmm5
movss dword [rbp + 0x13], xmm1
jbe 0x180062b2d
xorps xmm1, xmm1
jmp 0x180062b34
movaps xmm1, xmm0
minss xmm1, xmm2
comiss xmm6, xmm3
movss xmm2, dword [0x180004cb4]
movss xmm4, dword [0x180004c48]
mulss xmm1, xmm2
addss xmm1, xmm4
cvttss2si eax, xmm1
mov dword [rbp + 0x67], eax
jbe 0x180062b5d
xorps xmm1, xmm1
jmp 0x180062b64
movaps xmm1, xmm0
minss xmm1, xmm3
comiss xmm6, xmm5
mulss xmm1, xmm2
addss xmm1, xmm4
cvttss2si r13d, xmm1
jbe 0x180062b7b
xorps xmm1, xmm1
jmp 0x180062b82
movaps xmm1, xmm0
minss xmm1, xmm5
mulss xmm1, xmm2
mov qword [rsp + 0x138], r15
addss xmm1, xmm4
cvttss2si r12d, xmm1
test esi, esi
je 0x180062ba3
mov r15d, 0xff
jmp 0x180062bc3
movss xmm1, dword [rdi + 0xc]
comiss xmm6, xmm1
jbe 0x180062bb2
xorps xmm0, xmm0
jmp 0x180062bb6
minss xmm0, xmm1
mulss xmm0, xmm2
addss xmm0, xmm4
cvttss2si r15d, xmm0
movsd xmm0, qword [0x180006080]
xor ebx, ebx
cmp byte [0x180006089], bl
movzx eax, word [0x180006088]
movsd qword [rbp - 0x49], xmm0
mov word [rbp - 0x41], ax
je 0x180062c36
mov r8d, ebx
movabs r14, 0x29e4129e4129e413
nop dword [rax]
nop word [rax + rax]
mov rax, r14
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [rbp + r8 - 0x49], al
inc r8
cmp r8, 0xa
jb 0x180062c00
mov r14d, dword [rbp + 0x77]
mov r9, qword [rbp + 0x6f]
lea rdx, [rbp + 7]
mov r8d, r14d
lea rcx, [rbp - 0x49]
and r8d, 0x18060002
or r8d, 0x40
call fcn.18005d8d0
movss xmm1, dword [0x180004ce4]
movaps xmm0, xmm6
call fcn.1800526d0
movaps xmm6, xmmword [rsp + 0xd0]
bt r14d, 0x1b
jb 0x180062de6
test r14d, 0x18000000
je 0x180062de6
bt r14d, 0x1c
jae 0x180062f84
movss xmm3, dword [rdi + 8]
movss xmm2, dword [rdi + 4]
cvtps2pd xmm3, xmm3
cvtps2pd xmm2, xmm2
test esi, esi
je 0x180062d40
cmp byte [0x180006131], bl
movups xmm0, xmmword [0x180006118]
movzx eax, word [0x180006130]
movss xmm4, dword [rdi]
movsd xmm1, qword [0x180006128]
movups xmmword [rbp - 0x3f], xmm0
mov word [rbp - 0x27], ax
cvtps2pd xmm4, xmm4
movsd qword [rbp - 0x2f], xmm1
je 0x180062d20
movabs r8, 0x29e4129e4129e413
nop dword [rax]
nop dword [rax + rax]
mov rax, r8
mul rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x37
movzx eax, bl
sub al, cl
add al, 0x31
xor byte [rbp + rbx - 0x3f], al
inc rbx
cmp rbx, 0x1a
jb 0x180062cf0
movq r9, xmm3
lea rcx, [rbp - 0x3f]
movq r8, xmm2
movaps xmm1, xmm4
movq rdx, xmm4
call fcn.18006bcd0
jmp 0x180062f84
movzx eax, word [0x180006158]
movabs r8, 0x29e4129e4129e413
movups xmm0, xmmword [0x180006138]
mov word [rbp - 0x1f], ax
movups xmm1, xmmword [0x180006148]
movzx eax, byte [0x18000615a]
movss xmm4, dword [rdi + 0xc]
movss xmm5, dword [rdi]
mov byte [rbp - 0x1d], al
cvtps2pd xmm4, xmm4
cvtps2pd xmm5, xmm5
movups xmmword [rbp - 0x3f], xmm0
movups xmmword [rbp - 0x2f], xmm1
nop dword [rax]
nop dword [rax + rax]
mov rax, r8
mul rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x37
movzx eax, bl
sub al, cl
add al, 0x31
xor byte [rbp + rbx - 0x3f], al
inc rbx
cmp rbx, 0x23
jb 0x180062d90
movq r9, xmm3
movsd qword [rsp + 0x20], xmm4
movq r8, xmm2
lea rcx, [rbp - 0x3f]
movaps xmm1, xmm5
movq rdx, xmm5
call fcn.18006bcd0
jmp 0x180062f84
movabs r8, 0x29e4129e4129e413
test esi, esi
je 0x180062eb9
movups xmm0, xmmword [0x180006090]
mov eax, dword [0x1800060c0]
movups xmm1, xmmword [0x1800060a0]
mov dword [rbp - 0xf], eax
movss xmm2, dword [rdi + 8]
movss xmm3, dword [rdi + 4]
movss xmm4, dword [rdi]
movzx eax, byte [0x1800060c4]
movups xmmword [rbp - 0x3f], xmm0
mov byte [rbp - 0xb], al
movups xmm0, xmmword [0x1800060b0]
cvtps2pd xmm2, xmm2
movups xmmword [rbp - 0x1f], xmm0
cvtps2pd xmm3, xmm3
cvtps2pd xmm4, xmm4
movups xmmword [rbp - 0x2f], xmm1
nop dword [rax]
nop word [rax + rax]
mov rax, r8
mul rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x37
movzx eax, bl
sub al, cl
add al, 0x31
xor byte [rbp + rbx - 0x3f], al
inc rbx
cmp rbx, 0x35
jb 0x180062e50
mov eax, dword [rbp + 0x67]
lea rcx, [rbp - 0x3f]
movsd qword [rsp + 0x48], xmm2
mov r9d, r12d
movsd qword [rsp + 0x40], xmm3
mov r8d, r13d
movsd qword [rsp + 0x38], xmm4
mov edx, eax
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], eax
call fcn.18006bcd0
jmp 0x180062f84
movaps xmm0, xmmword [0x1800060d0]
movaps xmm1, xmmword [0x1800060e0]
movss xmm2, dword [rdi + 0xc]
movss xmm3, dword [rdi + 8]
movss xmm4, dword [rdi + 4]
movss xmm5, dword [rdi]
movzx eax, word [0x180006110]
movups xmmword [rbp - 0x3f], xmm0
mov word [rbp + 1], ax
movaps xmm0, xmmword [0x1800060f0]
movups xmmword [rbp - 0x2f], xmm1
movaps xmm1, xmmword [0x180006100]
movups xmmword [rbp - 0x1f], xmm0
movups xmmword [rbp - 0xf], xmm1
cvtps2pd xmm2, xmm2
cvtps2pd xmm3, xmm3
cvtps2pd xmm4, xmm4
cvtps2pd xmm5, xmm5
nop
mov rax, r8
mul rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x37
movzx eax, bl
sub al, cl
add al, 0x31
xor byte [rbp + rbx - 0x3f], al
inc rbx
cmp rbx, 0x42
jb 0x180062f10
mov eax, dword [rbp + 0x67]
lea rcx, [rbp - 0x3f]
movsd qword [rsp + 0x60], xmm2
mov r9d, r12d
movsd qword [rsp + 0x58], xmm3
mov r8d, r13d
movsd qword [rsp + 0x50], xmm4
mov edx, eax
movsd qword [rsp + 0x48], xmm5
mov dword [rsp + 0x40], r15d
mov dword [rsp + 0x38], r12d
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r15d
call fcn.18006bcd0
call fcn.1800471f0
mov r15, qword [rsp + 0x138]
add rsp, 0xe0
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret