Function at 0x1400a12f0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x118]
sub rsp, 0x200
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
movaps xmmword [rax - 0x68], xmm10
movaps xmmword [rax - 0x78], xmm11
movaps xmmword [rax - 0x88], xmm12
movaps xmmword [rax - 0x98], xmm13
movaps xmmword [rax - 0xa8], xmm14
movaps xmmword [rax - 0xb8], xmm15
mov rax, qword [0x140d81080]
xor rax, rsp
mov qword [rbp + 0x50], rax
cmp dword [0x141254cc0], 0
jbe 0x1400a21f7
movd xmm1, dword [0x14124df8c]
cvtdq2ps xmm1, xmm1
movd xmm0, dword [0x14124dfdc]
cvtdq2ps xmm0, xmm0
mov rdi, qword [0x141256160]
or dword [rdi + 0x1ce8], 2
movss dword [rdi + 0x1d08], xmm0
movss dword [rdi + 0x1d0c], xmm1
mov dword [rdi + 0x1cf0], 1
mov rax, qword [rdi + 0x1df8]
lea r8, [0x140d5fc78]
xor edx, edx
mov rcx, qword [rax]
call fcn.1400bfe80
mov r14, rax
movdqa xmm6, xmmword [0x140d62c10]
mov rbx, qword [0x141256160]
mov dword [rsp + 0x60], 2
movups xmm0, xmmword [rbx + 0x1644]
movups xmmword [rsp + 0x64], xmm0
lea rcx, [rbx + 0x1d70]
lea rdx, [rsp + 0x60]
call fcn.1400d0ba0
movups xmmword [rbx + 0x1644], xmm6
movss xmm0, dword [rdi + 0x14]
movss xmm15, dword [0x140d62054]
mulss xmm0, xmm15
addss xmm0, dword [0x140d6224c]
mov rax, qword [0x141256160]
or dword [rax + 0x1ce8], 1
mov dword [rax + 0x1cf8], 0x42480000
movss dword [rax + 0x1cfc], xmm0
mov dword [rax + 0x1d00], 0x3f000000
mov dword [rax + 0x1d04], 0x3dcccccd
mov dword [rax + 0x1cec], 4
xor edx, edx
mov r8d, 0x49
lea rcx, [0x140d5f7e8]
call fcn.1400c64d0
test al, al
je 0x1400a21c1
mov rcx, qword [0x141256160]
mov rdx, qword [rcx + 0x1c10]
movss xmm8, dword [rdx + 0x288]
movss xmm7, dword [rdx + 0x28c]
cmp qword [rdx + 0x1c0], 0
jne 0x1400a14a5
cmp qword [rcx + 0x2028], 0
je 0x1400a14ae
movss xmm8, dword [rdx + 0x258]
movss xmm12, dword [rdx + 0xec]
movss dword [rbp - 0x74], xmm12
subss xmm7, xmm12
movss xmm6, dword [rdx + 0xe8]
movss dword [rbp - 0x70], xmm6
subss xmm8, xmm6
movaps xmm0, xmm8
mulss xmm0, xmm15
movss dword [rbp - 0x6c], xmm0
movaps xmm11, xmm0
addss xmm11, xmm6
movaps xmm0, xmm7
mulss xmm0, xmm15
movss dword [rbp - 0x68], xmm0
movaps xmm10, xmm0
addss xmm10, xmm12
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x7c]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x80]
movss xmm14, dword [0x140d620a4]
movaps xmm2, xmm14
movaps xmm1, xmm14
xorps xmm9, xmm9
xorps xmm0, xmm0
call fcn.1400bd530
movss xmm0, dword [rbp - 0x80]
movss dword [rsp + 0x60], xmm0
movss xmm1, dword [rbp - 0x7c]
movss dword [rsp + 0x64], xmm1
movss xmm0, dword [rsp + 0x50]
movss dword [rsp + 0x68], xmm0
mov dword [rsp + 0x6c], 0x3f800000
lea rcx, [rsp + 0x60]
call fcn.1400bd3d0
addss xmm7, xmm12
movss dword [rbp - 0x80], xmm7
addss xmm8, xmm6
movss dword [rbp - 0x7c], xmm8
movss dword [rbp - 0x78], xmm7
movss dword [rsp + 0x50], xmm6
movss dword [rsp + 0x54], xmm12
movss xmm0, dword [0x140d620e4]
movss dword [rsp + 0x30], xmm0
mov dword [rsp + 0x28], 0xffffffff
movss dword [rsp + 0x20], xmm9
mov r9d, eax
lea r8, [rbp - 0x7c]
lea rdx, [rsp + 0x50]
mov rcx, r14
call fcn.1400db240
mov dword [rsp + 0x50], 0x6d3035
mov byte [rsp + 0x54], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
lea rax, [rsp + 0x50]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400a15f0
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x30]
call fcn.1400643b0
nop
mov dword [rsp + 0x50], 0xf5a7a6a7
mov word [rsp + 0x54], 0x100
movdqa xmm6, xmmword [0x140d62440]
xor r15d, r15d
mov ecx, r15d
movdqa xmm7, xmmword [0x140d64ec0]
movdqa xmm8, xmmword [0x140d625b0]
nop word [rax + rax]
movq xmm0, rcx
punpcklqdq xmm0, xmm0
paddq xmm0, xmm6
pshufd xmm1, xmm0, 0xd8
movq xmm0, xmm7
paddd xmm1, xmm0
movzx eax, word [rsp + rcx + 0x50]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
andps xmm1, xmm8
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rsp + rcx + 0x50], ax
add rcx, 2
cmp rcx, 4
jb 0x1400a1640
mov byte [rsp + 0x55], r15b
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
lea rax, [rsp + 0x50]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], r15b
jne 0x1400a16b2
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x10]
call fcn.1400643b0
nop
mov dword [rsp + 0x50], 0xf5a7a6a6
mov word [rsp + 0x54], 0x100
mov rcx, r15
nop dword [rax]
movq xmm0, rcx
punpcklqdq xmm0, xmm0
paddq xmm0, xmm6
pshufd xmm1, xmm0, 0xd8
movq xmm0, xmm7
paddd xmm1, xmm0
movzx eax, word [rsp + rcx + 0x50]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
andps xmm1, xmm8
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rsp + rcx + 0x50], ax
add rcx, 2
cmp rcx, 4
jb 0x1400a16e0
mov byte [rsp + 0x55], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp], xmm1
lea rax, [rsp + 0x50]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1400a1752
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x10]
call fcn.1400643b0
nop
movdqa xmm0, xmmword [0x140d62cc0]
movups xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x60]
call fcn.1400bd3d0
movss dword [rsp + 0x50], xmm11
movss dword [rsp + 0x54], xmm10
mov dword [rsp + 0x20], r15d
mov r9d, eax
movss xmm2, dword [0x140d62188]
lea rdx, [rsp + 0x50]
mov rcx, r14
call fcn.1400dbab0
mov rax, qword [0x141256160]
mov rax, qword [rax + 0x1df8]
lea r8, [0x140d5fc78]
xor edx, edx
mov rcx, qword [rax]
call fcn.1400bfe80
mov r10, rax
lea r8, [rbp + 0x30]
cmp qword [rbp + 0x48], 0xf
cmova r8, qword [rbp + 0x30]
movdqa xmm7, xmmword [0x140d62e50]
movups xmmword [rsp + 0x60], xmm7
lea rcx, [rsp + 0x60]
call fcn.1400bd3d0
mov r9d, eax
movaps xmm1, xmm10
addss xmm1, dword [0x140d621d0]
mov rcx, qword [0x1412550d8]
movss xmm6, dword [0x140d621bc]
test eax, 0xff000000
je 0x1400a1888
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1400a1820
add rdx, r8
cmp r8, rdx
je 0x1400a1888
test rcx, rcx
jne 0x1400a183f
mov rax, qword [r10 + 0x38]
mov rcx, qword [rax + 8]
movups xmm0, xmmword [r10 + 0x88]
movups xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm9
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], r8
lea rax, [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
movaps xmm0, xmm11
unpcklps xmm0, xmm1
movq r9, xmm0
movaps xmm2, xmm6
mov rdx, r10
call fcn.1400e0560
mov rax, qword [0x141256160]
mov rax, qword [rax + 0x1df8]
lea r8, [0x140d5fc78]
xor edx, edx
mov rcx, qword [rax]
call fcn.1400bfe80
mov r10, rax
lea r8, [rbp + 0x10]
cmp qword [rbp + 0x28], 0xf
cmova r8, qword [rbp + 0x10]
movups xmmword [rsp + 0x60], xmm7
lea rcx, [rsp + 0x60]
call fcn.1400bd3d0
mov r9d, eax
movaps xmm1, xmm10
addss xmm1, dword [0x140d62208]
mov rcx, qword [0x1412550d8]
test eax, 0xff000000
je 0x1400a1958
mov rdx, 0xffffffffffffffff
nop dword [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1400a18f0
add rdx, r8
cmp r8, rdx
je 0x1400a1958
test rcx, rcx
jne 0x1400a190f
mov rax, qword [r10 + 0x38]
mov rcx, qword [rax + 8]
movups xmm0, xmmword [r10 + 0x88]
movups xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm9
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], r8
lea rax, [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
movaps xmm0, xmm11
unpcklps xmm0, xmm1
movq r9, xmm0
movaps xmm2, xmm6
mov rdx, r10
call fcn.1400e0560
mov rax, qword [0x141256160]
mov rax, qword [rax + 0x1df8]
lea r8, [0x140d5fc78]
xor edx, edx
mov rcx, qword [rax]
call fcn.1400bfe80
mov r10, rax
lea r8, [rbp - 0x10]
cmp qword [rbp + 8], 0xf
cmova r8, qword [rbp - 0x10]
movups xmmword [rsp + 0x60], xmm7
lea rcx, [rsp + 0x60]
call fcn.1400bd3d0
mov r9d, eax
addss xmm10, dword [0x140d6223c]
mov rcx, qword [0x1412550d8]
test eax, 0xff000000
je 0x1400a1a29
mov rdx, 0xffffffffffffffff
nop dword [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1400a19c0
add rdx, r8
cmp r8, rdx
je 0x1400a1a29
test rcx, rcx
jne 0x1400a19df
mov rax, qword [r10 + 0x38]
mov rcx, qword [rax + 8]
movups xmm0, xmmword [r10 + 0x88]
movups xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm9
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], r8
lea rax, [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
movaps xmm0, xmm11
unpcklps xmm0, xmm10
movq r9, xmm0
movaps xmm2, xmm6
mov rdx, r10
call fcn.1400e0560
mov rdi, qword [0x141256360]
mov rsi, qword [0x141256368]
movss xmm13, dword [0x140d622ac]
movsd xmm8, qword [0x140d620b0]
movss xmm11, dword [0x140d62190]
cmp rdi, rsi
je 0x1400a1f58
nop dword [rax + rax]
mov ecx, dword [rdi + 0x150]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x80808081
imul r8d
add edx, r8d
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0xff
sub r8d, ecx
movzx eax, r8b
movd xmm10, eax
cvtdq2ps xmm10, xmm10
divss xmm10, xmm13
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x80808081
imul r8d
add edx, r8d
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0xff
sub r8d, ecx
movzx eax, r8b
movd xmm11, eax
cvtdq2ps xmm11, xmm11
divss xmm11, xmm13
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x80808081
imul r8d
add edx, r8d
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0xff
sub r8d, ecx
movzx eax, r8b
movd xmm12, eax
cvtdq2ps xmm12, xmm12
divss xmm12, xmm13
mov ebx, dword [rdi + 0x154]
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r15
xor r8d, r8d
lea rdx, [0x140d5d71a]
lea rcx, [rbp - 0x30]
call fcn.1400643b0
nop
mov edx, ebx
lea rcx, [rbp - 0x50]
call fcn.140044ad0
nop
mov r8d, 1
lea rdx, [0x140d5f618]
mov rcx, rax
call fcn.140064210
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x1400a1b6f
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp - 0x30]
call fcn.140064210
nop
lea rcx, [rbp - 0x50]
call fcn.1400641b0
movsd xmm7, qword [rdi + 0xc]
mov eax, dword [rdi + 0x14]
mov dword [rsp + 0x68], eax
movss xmm6, dword [0x141254cf4]
cvtps2pd xmm6, xmm6
mulsd xmm6, xmm8
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm8, xmm8
cvtsd2ss xmm8, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movaps xmm2, xmm7
subss xmm2, dword [0x141254cd8]
movaps xmm3, xmm7
shufps xmm3, xmm3, 0x55
movsd qword [rsp + 0x60], xmm7
subss xmm3, dword [0x141254cdc]
movaps xmm6, xmm3
mulss xmm6, xmm8
movaps xmm0, xmm2
mulss xmm0, xmm1
subss xmm6, xmm0
divss xmm6, dword [0x140d62278]
movss xmm4, dword [rbp - 0x70]
addss xmm6, xmm4
addss xmm6, dword [rbp - 0x6c]
mulss xmm3, xmm1
mulss xmm2, xmm8
addss xmm3, xmm2
divss xmm3, dword [0x140d62278]
movss xmm0, dword [rbp - 0x74]
movaps xmm7, xmm0
subss xmm7, xmm3
addss xmm7, dword [rbp - 0x68]
movss xmm1, dword [rbp - 0x7c]
comiss xmm6, xmm1
seta al
test al, al
je 0x1400a1c44
movaps xmm6, xmm1
jmp 0x1400a1c51
comiss xmm4, xmm6
seta al
test al, al
je 0x1400a1c51
movaps xmm6, xmm4
movss xmm8, dword [rbp - 0x80]
comiss xmm7, xmm8
seta al
test al, al
je 0x1400a1c68
movaps xmm7, xmm8
jmp 0x1400a1c75
comiss xmm0, xmm7
seta al
test al, al
je 0x1400a1c75
movaps xmm7, xmm0
movss xmm0, dword [rdi + 0x24]
comiss xmm0, xmm9
jbe 0x1400a1f27
cmp byte [rdi + 4], 0
je 0x1400a1cd4
movdqa xmm0, xmmword [0x140d62e50]
movups xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x60]
call fcn.1400bd3d0
movss dword [rsp + 0x50], xmm6
movss dword [rsp + 0x54], xmm7
mov dword [rsp + 0x20], r15d
mov r9d, eax
movss xmm11, dword [0x140d62190]
movaps xmm2, xmm11
lea rdx, [rsp + 0x50]
mov rcx, r14
call fcn.1400dbab0
jmp 0x1400a1f30
cmp dword [0x141256294], 0
jne 0x1400a1ee3
mov rax, qword [0x141256160]
mov rax, qword [rax + 0x1df8]
lea r8, [0x140d5fc78]
xor edx, edx
mov rcx, qword [rax]
call fcn.1400bfe80
mov r10, rax
lea r8, [rbp - 0x30]
cmp qword [rbp - 0x18], 0xf
cmova r8, qword [rbp - 0x30]
movdqa xmm0, xmmword [0x140d62cd0]
movups xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x60]
call fcn.1400bd3d0
mov r9d, eax
mov rcx, qword [0x1412550d0]
test eax, 0xff000000
je 0x1400a1dac
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1400a1d40
add rdx, r8
cmp r8, rdx
je 0x1400a1dac
test rcx, rcx
jne 0x1400a1d5f
mov rax, qword [r10 + 0x38]
mov rcx, qword [rax + 8]
movups xmm0, xmmword [r10 + 0x88]
movups xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm9
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], r8
lea rax, [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
movss xmm2, dword [0x140d621c4]
mov rdx, r10
call fcn.1400e0560
comiss xmm10, xmm14
jb 0x1400a1db9
mov ecx, 0xff
jmp 0x1400a1dd3
comiss xmm9, xmm10
jb 0x1400a1dc4
mov ecx, r15d
jmp 0x1400a1dd3
mulss xmm10, xmm13
addss xmm10, xmm15
cvttss2si rcx, xmm10
comiss xmm11, xmm14
jb 0x1400a1de0
mov edx, 0xff
jmp 0x1400a1dfa
comiss xmm9, xmm11
jb 0x1400a1deb
mov edx, r15d
jmp 0x1400a1dfa
mulss xmm11, xmm13
addss xmm11, xmm15
cvttss2si rdx, xmm11
comiss xmm12, xmm14
jb 0x1400a1e07
mov eax, 0xff
jmp 0x1400a1e21
comiss xmm9, xmm12
jb 0x1400a1e12
mov eax, r15d
jmp 0x1400a1e21
mulss xmm12, xmm13
addss xmm12, xmm15
cvttss2si rax, xmm12
or ecx, 0xffffff00
shl ecx, 8
or ecx, edx
shl ecx, 8
or ecx, eax
movzx eax, cl
xorps xmm3, xmm3
cvtsi2ss xmm3, rax
movss xmm8, dword [0x140d61ff0]
mulss xmm3, xmm8
mov eax, ecx
shr eax, 8
movzx eax, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm8
mov eax, ecx
shr eax, 0x10
movzx eax, al
xorps xmm1, xmm1
cvtsi2ss xmm1, rax
mulss xmm1, xmm8
shr ecx, 0x18
mov eax, ecx
xorps xmm2, xmm2
cvtsi2ss xmm2, rax
mulss xmm2, xmm8
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm0
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm1
shufps xmm3, xmm3, 0x27
movss xmm3, xmm2
shufps xmm3, xmm3, 0x39
movups xmmword [rsp + 0x60], xmm3
movups xmmword [rsp + 0x60], xmm3
lea rcx, [rsp + 0x60]
call fcn.1400bd3d0
movss dword [rbp - 0x5c], xmm6
movss dword [rbp - 0x58], xmm7
mov dword [rsp + 0x20], r15d
mov r9d, eax
movss xmm11, dword [0x140d62190]
movaps xmm2, xmm11
lea rdx, [rbp - 0x5c]
mov rcx, r14
call fcn.1400dbab0
jmp 0x1400a1f30
movdqa xmm0, xmmword [0x140d62cd0]
movups xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x60]
call fcn.1400bd3d0
movss dword [rbp - 0x64], xmm6
movss dword [rbp - 0x60], xmm7
mov dword [rsp + 0x20], r15d
mov r9d, eax
movss xmm11, dword [0x140d62190]
movaps xmm2, xmm11
lea rdx, [rbp - 0x64]
mov rcx, r14
call fcn.1400dbab0
jmp 0x1400a1f30
movss xmm11, dword [0x140d62190]
lea rcx, [rbp - 0x30]
call fcn.1400641b0
add rdi, 0x298
cmp rdi, rsi
movsd xmm8, qword [0x140d620b0]
jne 0x1400a1a60
movss xmm12, dword [rbp - 0x74]
mov rsi, qword [0x141256320]
mov rdi, qword [0x141256318]
cmp rdi, rsi
je 0x1400a219e
lea rbx, [rdi + 0x58]
movss xmm10, dword [rbp - 0x7c]
nop dword [rax]
movss xmm0, dword [rbx - 4]
movss xmm2, dword [rbx - 8]
movss xmm1, dword [rbx]
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400a1fb3
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400a1fbb
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm0, dword [0x140d6224c]
jbe 0x1400a217e
movss xmm6, dword [0x141254cf4]
cvtps2pd xmm6, xmm6
mulsd xmm6, xmm8
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm8, xmm8
cvtsd2ss xmm8, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm0
movsd xmm3, qword [rbx - 0x28]
subss xmm3, dword [0x141254cd8]
movsd xmm1, qword [rbx - 0x28]
shufps xmm1, xmm1, 0x55
subss xmm1, dword [0x141254cdc]
movaps xmm4, xmm1
mulss xmm4, xmm8
movaps xmm0, xmm3
mulss xmm0, xmm2
subss xmm4, xmm0
divss xmm4, dword [0x140d62278]
movss xmm0, dword [rbp - 0x70]
addss xmm4, xmm0
addss xmm4, dword [rbp - 0x6c]
mulss xmm3, xmm8
mulss xmm1, xmm2
addss xmm3, xmm1
divss xmm3, dword [0x140d62278]
movaps xmm1, xmm12
subss xmm1, xmm3
addss xmm1, dword [rbp - 0x68]
comiss xmm4, xmm10
seta al
test al, al
je 0x1400a2072
movaps xmm4, xmm10
jmp 0x1400a207f
comiss xmm0, xmm4
seta al
test al, al
je 0x1400a207f
movaps xmm4, xmm0
movss xmm8, dword [rbp - 0x80]
comiss xmm1, xmm8
seta al
test al, al
je 0x1400a2096
movaps xmm1, xmm8
jmp 0x1400a20a5
comiss xmm12, xmm1
seta al
test al, al
je 0x1400a20a5
movaps xmm1, xmm12
movss xmm2, dword [0x14124f510]
comiss xmm9, xmm2
jbe 0x1400a20b9
movaps xmm0, xmm9
jmp 0x1400a20c1
movaps xmm0, xmm14
minss xmm0, xmm2
mulss xmm0, xmm13
addss xmm0, xmm15
cvttss2si ecx, xmm0
movss xmm2, dword [0x14124f514]
comiss xmm9, xmm2
jbe 0x1400a20e3
movaps xmm0, xmm9
jmp 0x1400a20eb
movaps xmm0, xmm14
minss xmm0, xmm2
mulss xmm0, xmm13
addss xmm0, xmm15
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
movss xmm2, dword [0x14124f518]
comiss xmm9, xmm2
jbe 0x1400a2112
movaps xmm0, xmm9
jmp 0x1400a211a
movaps xmm0, xmm14
minss xmm0, xmm2
mulss xmm0, xmm13
addss xmm0, xmm15
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
movss xmm2, dword [0x14124f51c]
comiss xmm9, xmm2
jbe 0x1400a2141
movaps xmm0, xmm9
jmp 0x1400a2149
movaps xmm0, xmm14
minss xmm0, xmm2
mulss xmm0, xmm13
addss xmm0, xmm15
cvttss2si r9d, xmm0
shl r9d, 0x18
or r9d, ecx
movss dword [rbp - 0x64], xmm4
movss dword [rbp - 0x60], xmm1
mov dword [rsp + 0x20], r15d
movaps xmm2, xmm11
lea rdx, [rbp - 0x64]
mov rcx, r14
call fcn.1400dbab0
add rdi, 0x98
add rbx, 0x98
cmp rdi, rsi
movsd xmm8, qword [0x140d620b0]
jne 0x1400a1f80
call fcn.1400c8840
nop
lea rcx, [rbp - 0x10]
call fcn.1400641b0
nop
lea rcx, [rbp + 0x10]
call fcn.1400641b0
nop
lea rcx, [rbp + 0x30]
call fcn.1400641b0
mov r8, qword [0x141256160]
movsxd rax, dword [r8 + 0x1d70]
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x1d78]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
movups xmmword [r8 + rax*8 + 0x1624], xmm0
dec dword [r8 + 0x1d70]
mov rcx, qword [rbp + 0x50]
xor rcx, rsp
call fcn.14017e360
lea r11, [rsp + 0x200]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
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]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop rbp
ret