Function at 0x14002bd2c
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
mov rbx, qword [0x1400b8e80]
mov rsi, r9
mov r12d, dword [rcx + 0x14]
mov r13, r8
movaps xmmword [rax - 0x48], xmm6
mov r14, rdx
movaps xmmword [rax - 0x58], xmm7
mov rdi, rcx
movaps xmmword [rax - 0x68], xmm8
lea r10, [rbx + 0x3290]
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rsp + 0x70], xmm10
test r12b, 0x20
jne 0x14002bd8f
cmp dword [r10], 0xffffffff
je 0x14002bd8f
mov cl, 1
jmp 0x14002bd91
xor cl, cl
mov r15d, dword [rbx + 0x3e18]
xorps xmm7, xmm7
and dword [rbp + 0x6f], 0
mov eax, r15d
and dword [rbp + 0x73], 0
or eax, 0x10
and dword [rbp + 0x67], 0
and dword [rbp + 0x6b], 0
mov dword [rbx + 0x3e18], eax
mov dword [rdi + 0x158], 1
movss xmm6, dword [rbx + 0x32a4]
movss xmm10, dword [rbx + 0x36a0]
movaps xmm8, xmm6
movss xmm1, dword [rdx + 8]
movss xmm2, dword [rdx + 4]
test rsi, rsi
je 0x14002be04
addss xmm8, xmm10
movaps xmm0, xmm1
subss xmm0, xmm8
movaps xmm3, xmm8
subss xmm0, xmm6
unpcklps xmm0, xmm2
movsd qword [rbp + 0x6f], xmm0
jmp 0x14002be0c
movaps xmm3, xmm10
addss xmm3, xmm6
movabs r11, 0x50850631d17d
test cl, cl
je 0x14002bed2
cmp dword [r10], 1
jne 0x14002be3c
addss xmm8, xmm10
subss xmm1, xmm8
subss xmm1, xmm6
unpcklps xmm1, xmm2
movsd qword [rbp + 0x67], xmm1
jmp 0x14002be58
cmp dword [r10], 0
jne 0x14002be58
movaps xmm0, xmm6
addss xmm0, dword [rdx]
subss xmm0, xmm6
movaps xmm6, xmm3
unpcklps xmm0, xmm2
movsd qword [rbp + 0x67], xmm0
movsd xmm0, qword [0x1400a9ce8]
lea rcx, [rbp - 0x59]
movzx eax, word [0x1400a9cf0]
xor r8d, r8d
movsd qword [rbp - 0x59], xmm0
mov word [rbp - 0x51], ax
lea r9d, [r8 + 0xa]
mov rax, r8
inc r8
cqo
idiv r11
add dl, 3
xor byte [rcx], dl
inc rcx
sub r9, 1
jne 0x14002be7b
movsxd rax, dword [rdi + 0xf0]
lea rcx, [rbp - 0x59]
mov r8, qword [rdi + 0xf8]
xor edx, edx
mov r8d, dword [r8 + rax*4 - 4]
call fcn.14002505c
lea rdx, [rbp + 0x67]
mov ecx, eax
call fcn.140036840
movabs r11, 0x50850631d17d
test al, al
je 0x14002bed2
mov byte [rdi + 0xba], 1
test rsi, rsi
je 0x14002bf48
mov eax, dword [str._GIITM_t]
lea rcx, [rbp + 0x67]
mov dword [rbp + 0x67], eax
xor r8d, r8d
movzx eax, word [0x1400a9c84]
mov word [rbp + 0x6b], ax
mov al, byte [0x1400a9c86]
mov byte [rbp + 0x6d], al
lea r9d, [r8 + 7]
mov rax, r8
inc r8
cqo
idiv r11
add dl, 3
xor byte [rcx], dl
inc rcx
sub r9, 1
jne 0x14002beff
movsxd rax, dword [rdi + 0xf0]
lea rcx, [rbp + 0x67]
mov r8, qword [rdi + 0xf8]
xor edx, edx
mov r8d, dword [r8 + rax*4 - 4]
call fcn.14002505c
lea rdx, [rbp + 0x6f]
mov ecx, eax
call fcn.140036500
test al, al
je 0x14002bf48
mov byte [rsi], 0
and dword [rdi + 0x158], 0
bt r12d, 0x14
mov dword [rbx + 0x3e18], r15d
jae 0x14002bf68
mulss xmm10, dword [0x1400a9eb4]
jmp 0x14002bf6c
movaps xmm10, xmm7
movss xmm0, dword [0x1400a9fa4]
lea rcx, [rbp + 0x6f]
mov r9b, 1
movss dword [rsp + 0x20], xmm0
xor r8d, r8d
mov rdx, r13
call fcn.140029b6c
movss xmm1, dword [rbx + 0x32a4]
movaps xmm3, xmm10
comiss xmm6, xmm1
movss xmm0, dword [rax + 4]
addss xmm3, dword [rax]
addss xmm0, xmm7
movss dword [rbp + 0x67], xmm3
movss dword [rbp + 0x6b], xmm0
jbe 0x14002bfbc
addss xmm6, dword [rbx + 0x32bc]
comiss xmm8, xmm1
jbe 0x14002bfcb
addss xmm8, dword [rbx + 0x32bc]
movss xmm2, dword [rbx + 0x3288]
comiss xmm2, xmm7
jbe 0x14002c048
movss xmm1, dword [0x1400a9ecc]
comiss xmm1, xmm2
jbe 0x14002c048
movaps xmm0, xmm2
movaps xmm4, xmm1
subss xmm0, dword [0x1400a9e90]
movd eax, xmm0
btr eax, 0x1f
movd xmm0, eax
mulss xmm0, dword [0x1400a9ef8]
subss xmm4, xmm0
comiss xmm7, xmm4
ja 0x14002c017
movaps xmm7, xmm1
minss xmm7, xmm4
movss xmm0, dword [r14 + 8]
movaps xmm1, xmm6
subss xmm0, dword [r14]
maxss xmm1, xmm8
subss xmm0, xmm6
subss xmm0, xmm8
subss xmm0, xmm3
minss xmm1, xmm0
mulss xmm1, xmm7
maxss xmm6, xmm1
maxss xmm8, xmm1
bt r12d, 0x14
movss xmm7, dword [r14 + 8]
addss xmm6, dword [r14]
movss xmm1, dword [r14 + 4]
subss xmm7, xmm8
movss xmm8, dword [r14 + 0xc]
movss dword [rbp - 0x45], xmm1
movss dword [rbp - 0x3d], xmm8
movss dword [rbp - 0x49], xmm6
movaps xmm9, xmm7
movss dword [rbp - 0x41], xmm7
addss xmm9, dword [rbx + 0x32bc]
movss dword [rbp - 0x59], xmm6
movss dword [rbp - 0x55], xmm1
movss dword [rbp - 0x4d], xmm8
minss xmm9, dword [r14 + 8]
movss dword [rbp - 0x51], xmm9
jae 0x14002c151
movaps xmm0, xmm7
subss xmm0, xmm6
subss xmm0, xmm3
mulss xmm0, xmm2
addss xmm0, xmm6
addss xmm0, xmm3
comiss xmm6, xmm0
jbe 0x14002c0ce
movaps xmm7, xmm6
jmp 0x14002c0d2
minss xmm7, xmm0
comiss xmm7, xmm6
addss xmm8, xmm1
mulss xmm8, dword [0x1400a9e90]
jbe 0x14002c151
mov rax, qword [0x1400b8e80]
lea rcx, [rbp - 0x39]
movdqu xmm0, xmmword [rax + 0x3344]
movups xmmword [rbp - 0x39], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x3268]
movss dword [rbp - 0x2d], xmm0
call fcn.1400254d4
mov rcx, qword [rdi + 0x298]
movaps xmm5, xmm7
unpcklps xmm5, xmm8
mov r8d, eax
movq rdx, xmm5
call fcn.140047a44
mulss xmm10, dword [0x1400a9e90]
cvttss2si eax, xmm10
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm7, xmm0
minss xmm9, xmm7
movss dword [rbp - 0x51], xmm9
lea rcx, [rbp - 0x59]
mov r8, r13
mov qword [rsp + 0x30], rcx
lea rax, [rbx + 0x3288]
mov qword [rsp + 0x28], rax
lea rdx, [rbp - 0x41]
lea rax, [rbp + 0x67]
lea rcx, [rbp - 0x49]
mov qword [rsp + 0x20], rax
call fcn.140025aec
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret