Function at 0x14001cd60
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
movss dword [rax + 0x20], xmm3
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xc8]
sub rsp, 0x190
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
movaps xmmword [rax - 0xb8], xmm13
movaps xmmword [rax - 0xc8], xmm14
movaps xmmword [rax - 0xd8], xmm15
movaps xmm15, xmm3
movaps xmm6, xmm2
mov rbx, rdx
mov dword [rbp + 0xd8], 1
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm14, xmm0
movss dword [rsp + 0x60], xmm14
mov ecx, 0x40000000
call fcn.140030720
movss dword [rsp + 0x64], xmm0
mov ecx, 0x40400000
call fcn.140030720
movss dword [rsp + 0x70], xmm0
mov ecx, 0x40800000
call fcn.140030720
movss dword [rbp - 0x74], xmm0
mov ecx, 0x41c00000
call fcn.140030720
movaps xmm9, xmm0
mov ecx, 0x41d80000
call fcn.140030720
movaps xmm12, xmm0
mov rdx, qword [rbx + 0x18]
sub rdx, qword [rbx + 0x10]
je 0x14001ceae
lea rcx, [rbp - 0x30]
call fcn.14000bde0
mov r8, qword [rbp - 0x28]
mov qword [rbp - 0x70], r8
mov r12, qword [rbp - 0x30]
sub r8, r12
xor edx, edx
mov rcx, r12
call fcn.1400a6950
xor edx, edx
mov r9, qword [rbx + 0x10]
mov rax, qword [rbx + 0x18]
sub rax, r9
cmp rax, 1
je 0x14001cee6
xor r8d, r8d
movzx eax, dl
add al, al
lea ecx, [rax + rdx]
add cl, byte [rbx + 8]
xor cl, byte [r8 + r9]
mov byte [r8 + r12], cl
inc edx
mov r9, qword [rbx + 0x10]
movsxd r8, edx
mov rax, qword [rbx + 0x18]
sub rax, r9
dec rax
cmp r8, rax
jb 0x14001ce81
jmp 0x14001cee6
mov ecx, 1
call fcn.14000d790
mov r12, rax
mov qword [rbp - 0x30], rax
lea rdi, [rax + 1]
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x20], rdi
xor eax, eax
mov byte [r12], al
mov qword [rbp - 0x28], rdi
mov r8, rdi
sub r8, r12
xor edx, edx
mov rcx, r12
call fcn.1400a6950
nop
movss xmm7, dword [rbx + 4]
mov rax, qword [0x1401c50d0]
subss xmm7, dword [rax + 0x68]
comiss xmm6, xmm7
ja 0x14001ceff
movaps xmm7, xmm6
divss xmm7, xmm6
mov dword [rsp + 0x58], 0xff
mov dword [rbp + 0xd8], 0
mov ecx, 0x433f0000
call fcn.140030720
mulss xmm0, xmm7
cvttss2si eax, xmm0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
mov ecx, 0x42800000
call fcn.140030720
addss xmm0, xmm6
cvttss2si r8d, xmm0
mov dword [rsp + 0x5c], r8d
lea rcx, [rbp + 0xd8]
lea rax, [rsp + 0x5c]
test r8d, r8d
cmovns rcx, rax
lea rax, [rsp + 0x58]
cmp r8d, 0xff
cmovle rax, rcx
mov r13d, dword [rax]
mov dword [rsp + 0x5c], r13d
movups xmm0, xmmword [rbx + 0x28]
movups xmmword [rbp - 0x60], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, xmm7
movups xmmword [rbp - 0x50], xmm0
mov dword [rsp + 0x20], r13d
mov edx, 0xff
mov r9d, edx
mov r8d, edx
lea rcx, [rbp - 0x40]
call fcn.14001f770
mov rsi, rax
movss xmm6, dword [rax]
xorps xmm8, xmm8
comiss xmm8, xmm6
jbe 0x14001cfb4
xorps xmm7, xmm7
jmp 0x14001cfc5
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si edi, xmm0
movss xmm6, dword [rsi + 4]
comiss xmm8, xmm6
jbe 0x14001cff8
xorps xmm7, xmm7
jmp 0x14001d009
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 8
or edi, eax
movss xmm6, dword [rsi + 8]
comiss xmm8, xmm6
jbe 0x14001d041
xorps xmm7, xmm7
jmp 0x14001d052
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x10
or edi, eax
movss xmm6, dword [rsi + 0xc]
comiss xmm8, xmm6
jbe 0x14001d08a
xorps xmm7, xmm7
jmp 0x14001d09b
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si esi, xmm0
shl esi, 0x18
or esi, edi
mov dword [rsp + 0x58], esi
xorps xmm10, xmm10
xorps xmm11, xmm11
xor r14d, r14d
xor sil, sil
mov byte [rbp + 0xd8], sil
movzx eax, byte [rbx + 0x38]
mov r15d, 0x40
cmp al, 3
jne 0x14001d1ad
movaps xmm10, xmm12
movaps xmm11, xmm9
mov rdi, qword [rbp + 0xd0]
mov r8, qword [rdi + 0x18]
mov eax, dword [r8 + 0x108]
mov r14, qword [r8 + 0x100]
xor r14, qword [r8 + 0xf0]
mov rdx, r14
cmp eax, 0x7fffffff
jb 0x14001d163
mov ecx, r15d
test eax, eax
jle 0x14001d144
and eax, 0x3f
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl r14, cl
or r14, rdx
xor r14, qword [r8 + 0xf8]
jmp 0x14001d5c4
neg eax
and eax, 0x3f
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr r14, cl
or r14, rdx
xor r14, qword [r8 + 0xf8]
jmp 0x14001d5c4
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14001d18d
and ecx, 0x3f
mov eax, ecx
mov ecx, r15d
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl r14, cl
or r14, rdx
xor r14, qword [r8 + 0xf8]
jmp 0x14001d5c4
and eax, 0x3f
mov ecx, r15d
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr r14, cl
or r14, rdx
xor r14, qword [r8 + 0xf8]
jmp 0x14001d5c4
cmp al, 1
jne 0x14001d43f
movaps xmm10, xmm9
movaps xmm11, xmm9
mov r8, qword [0x1401c3028]
mov ebx, dword [r8 + 0xb4]
mov dword [rsp + 0x44], ebx
mov rdx, qword [r8 + 0xa0]
mov eax, ebx
shr eax, 0x18
shr ebx, 0x10
cmp qword [r8 + 0x98], rdx
je 0x14001d203
add rdx, 0xfffffffffffffffc
movzx eax, byte [rdx + 3]
movzx ebx, byte [rdx + 2]
movzx edi, byte [rdx]
movzx esi, byte [rdx + 1]
mov qword [r8 + 0xa0], rdx
jmp 0x14001d20d
movzx esi, byte [rsp + 0x45]
movzx edi, byte [rsp + 0x44]
movd xmm6, r13d
cvtdq2ps xmm6, xmm6
movzx eax, al
movd xmm7, eax
cvtdq2ps xmm7, xmm7
mov ecx, 0x437f0000
call fcn.140030720
divss xmm7, xmm0
mulss xmm7, xmm6
movzx r9d, bl
movzx r8d, sil
movzx edx, dil
cvttss2si eax, xmm7
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x40]
call fcn.14000b960
movzx eax, byte [rsp + 0x43]
movzx r9d, byte [rsp + 0x42]
movzx r8d, byte [rsp + 0x41]
movzx edx, byte [rsp + 0x40]
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x48]
call fcn.14001f770
movss xmm6, dword [rsp + 0x48]
comiss xmm8, xmm6
jbe 0x14001d284
xorps xmm7, xmm7
jmp 0x14001d295
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si ebx, xmm0
movss xmm6, dword [rsp + 0x4c]
comiss xmm8, xmm6
jbe 0x14001d2c9
xorps xmm7, xmm7
jmp 0x14001d2da
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 8
or ebx, eax
movss xmm6, dword [rsp + 0x50]
comiss xmm8, xmm6
jbe 0x14001d313
xorps xmm7, xmm7
jmp 0x14001d324
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x10
or ebx, eax
movss xmm6, dword [rsp + 0x54]
comiss xmm8, xmm6
jbe 0x14001d35d
xorps xmm7, xmm7
jmp 0x14001d36e
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x18
or eax, ebx
mov dword [rsp + 0x58], eax
mov rdi, qword [rbp + 0xd0]
mov r8, qword [rdi + 0x18]
mov eax, dword [r8 + 0xd0]
mov r14, qword [r8 + 0xc8]
xor r14, qword [r8 + 0xb8]
mov rdx, r14
cmp eax, 0x7fffffff
jb 0x14001d3ef
mov ecx, r15d
test eax, eax
jle 0x14001d3eb
and eax, 0x3f
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl r14, cl
or r14, rdx
xor r14, qword [r8 + 0xc0]
xor sil, sil
jmp 0x14001d5c4
neg eax
jmp 0x14001d41f
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14001d41c
and ecx, 0x3f
mov eax, ecx
mov ecx, r15d
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl r14, cl
or r14, rdx
xor r14, qword [r8 + 0xc0]
xor sil, sil
jmp 0x14001d5c4
mov ecx, r15d
and eax, 0x3f
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr r14, cl
or r14, rdx
xor r14, qword [r8 + 0xc0]
xor sil, sil
jmp 0x14001d5c4
mov rdi, qword [rbp + 0xd0]
cmp al, 2
jne 0x14001d506
movaps xmm10, xmm9
movaps xmm11, xmm9
mov r8, qword [rdi + 0x18]
mov eax, dword [r8 + 0xec]
mov r14, qword [r8 + 0xe4]
xor r14, qword [r8 + 0xd4]
mov rdx, r14
cmp eax, 0x7fffffff
jb 0x14001d4bc
mov ecx, r15d
test eax, eax
jle 0x14001d49d
and eax, 0x3f
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl r14, cl
or r14, rdx
xor r14, qword [r8 + 0xdc]
jmp 0x14001d5c4
neg eax
and eax, 0x3f
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr r14, cl
or r14, rdx
xor r14, qword [r8 + 0xdc]
jmp 0x14001d5c4
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14001d4e6
and ecx, 0x3f
mov eax, ecx
mov ecx, r15d
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl r14, cl
or r14, rdx
xor r14, qword [r8 + 0xdc]
jmp 0x14001d5c4
and eax, 0x3f
mov ecx, r15d
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr r14, cl
or r14, rdx
xor r14, qword [r8 + 0xdc]
jmp 0x14001d5c4
cmp al, 4
jne 0x14001d5ba
movaps xmm10, xmm9
movaps xmm11, xmm9
mov r8, qword [rdi + 0x18]
mov eax, dword [r8 + 0x124]
mov r14, qword [r8 + 0x11c]
xor r14, qword [r8 + 0x10c]
mov rdx, r14
cmp eax, 0x7fffffff
jb 0x14001d576
mov ecx, r15d
test eax, eax
jle 0x14001d55a
and eax, 0x3f
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl r14, cl
or r14, rdx
xor r14, qword [r8 + 0x114]
jmp 0x14001d5c4
neg eax
and eax, 0x3f
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr r14, cl
or r14, rdx
xor r14, qword [r8 + 0x114]
jmp 0x14001d5c4
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14001d59d
and ecx, 0x3f
mov eax, ecx
mov ecx, r15d
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl r14, cl
or r14, rdx
xor r14, qword [r8 + 0x114]
jmp 0x14001d5c4
and eax, 0x3f
mov ecx, r15d
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr r14, cl
or r14, rdx
xor r14, qword [r8 + 0x114]
jmp 0x14001d5c4
mov sil, 1
mov byte [rbp + 0xd8], sil
mov rax, qword [0x1401c3028]
mulss xmm11, dword [rax + 0x1c]
movaps xmm0, xmm11
call fcn.14000e260
movaps xmm6, xmm11
subss xmm6, xmm0
mov ecx, 0x3f000000
call fcn.140030720
mov ebx, 0x7fffff
comiss xmm0, xmm6
jbe 0x14001d601
movaps xmm0, xmm11
call fcn.14000e260
jmp 0x14001d65b
movss dword [rsp + 0x44], xmm11
mov eax, dword [rsp + 0x44]
mov ecx, eax
shr ecx, 0x17
movzx ecx, cl
sub ecx, 0x7f
cmp ecx, 0x17
jge 0x14001d65f
test ecx, ecx
js 0x14001d63f
mov edx, ebx
sar edx, cl
test eax, edx
je 0x14001d65f
test eax, eax
js 0x14001d62e
add eax, edx
not edx
and eax, edx
mov dword [rsp + 0x44], eax
movss xmm11, dword [rsp + 0x44]
jmp 0x14001d65f
test eax, eax
jns 0x14001d64a
mov ecx, 0x80000000
jmp 0x14001d656
test eax, 0x7fffffff
je 0x14001d65f
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm11, xmm0
mov rax, qword [0x1401c3028]
mulss xmm10, dword [rax + 0x1c]
movaps xmm0, xmm10
call fcn.14000e260
movaps xmm6, xmm10
subss xmm6, xmm0
mov ecx, 0x3f000000
call fcn.140030720
comiss xmm0, xmm6
jbe 0x14001d697
movaps xmm0, xmm10
call fcn.14000e260
jmp 0x14001d6ef
movss dword [rsp + 0x44], xmm10
mov eax, dword [rsp + 0x44]
mov ecx, eax
shr ecx, 0x17
movzx ecx, cl
sub ecx, 0x7f
cmp ecx, 0x17
jge 0x14001d6f3
test ecx, ecx
js 0x14001d6d3
sar ebx, cl
test eax, ebx
je 0x14001d6f3
test eax, eax
js 0x14001d6c2
add eax, ebx
not ebx
and eax, ebx
mov dword [rsp + 0x44], eax
movss xmm10, dword [rsp + 0x44]
jmp 0x14001d6f3
test eax, eax
jns 0x14001d6de
mov ecx, 0x80000000
jmp 0x14001d6ea
test eax, 0x7fffffff
je 0x14001d6f3
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm10, xmm0
mov rax, qword [0x1401c50d0]
mov rcx, qword [rax + 0x78]
mov qword [rsp + 0x28], r12
movss xmm0, dword [0x1400c8850]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1400c884c]
movss xmm2, dword [rcx + 0x14]
lea rdx, [rbp - 0x40]
call fcn.1400225f0
mov ecx, 0x3fc00000
call fcn.140030720
mulss xmm0, xmm15
movaps xmm13, xmm0
addss xmm13, dword [rbp - 0x3c]
addss xmm0, dword [rbp - 0x40]
test sil, sil
je 0x14001d750
movaps xmm7, xmm14
jmp 0x14001d756
movss xmm7, dword [rsp + 0x70]
mulss xmm7, xmm15
addss xmm7, xmm10
addss xmm7, xmm0
movss xmm0, dword [rsp + 0x64]
mulss xmm0, xmm15
movss dword [rbp - 0x7c], xmm0
addss xmm0, xmm11
comiss xmm0, xmm13
jbe 0x14001d783
movaps xmm13, xmm0
mov rax, qword [rbp + 0xf8]
movd xmm15, dword [rax]
cvtdq2ps xmm15, xmm15
addss xmm15, dword [rdi + 0x24]
movss dword [rsp + 0x44], xmm15
mov rax, qword [0x1401c50d0]
movss xmm9, dword [rax + 0x18]
subss xmm9, xmm7
subss xmm9, dword [rbp + 0xe8]
subss xmm9, dword [rdi + 0x20]
mov ecx, dword [rdi]
test cl, 2
je 0x14001d7d4
movaps xmm0, xmm7
addss xmm0, xmm9
movaps xmm9, xmm0
test cl, 8
je 0x14001d7f3
mov ecx, 0x3f000000
call fcn.140030720
mulss xmm0, xmm7
addss xmm9, xmm0
mov rax, qword [0x1401c50d0]
movss xmm0, dword [rax + 0x1c]
comiss xmm0, xmm15
jb 0x14001e53f
mov r13, qword [rdi + 0x18]
mov rax, qword [0x1401c3028]
mov esi, dword [rax + 0xd4]
mov edi, esi
shr edi, 8
mov ebx, esi
shr ebx, 0x10
movd xmm12, dword [rsp + 0x5c]
cvtdq2ps xmm12, xmm12
movss dword [rsp + 0x5c], xmm12
mov eax, esi
shr eax, 0x18
movd xmm6, eax
cvtdq2ps xmm6, xmm6
mov ecx, 0x437f0000
call fcn.140030720
divss xmm6, xmm0
mulss xmm6, xmm12
movzx r9d, bl
movzx r8d, dil
movzx edx, sil
cvttss2si eax, xmm6
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x40]
call fcn.14000b960
movzx eax, byte [rsp + 0x43]
movzx r9d, byte [rsp + 0x42]
movzx r8d, byte [rsp + 0x41]
movzx edx, byte [rsp + 0x40]
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x48]
call fcn.14001f770
movaps xmm0, xmm13
addss xmm0, xmm15
movss dword [rsp + 0x68], xmm0
movaps xmm12, xmm0
movss xmm1, dword [rsp + 0x60]
subss xmm12, xmm1
movaps xmm0, xmm9
addss xmm0, xmm7
movss dword [rsp + 0x7c], xmm0
movaps xmm14, xmm0
subss xmm14, xmm1
addss xmm15, xmm1
movaps xmm0, xmm9
addss xmm0, xmm1
movss dword [rsp + 0x74], xmm0
cmp byte [r13 + 0x1cd], 0
je 0x14001d98f
mov eax, dword [r13 + 0x202]
mov rbx, qword [r13 + 0x1fa]
xor rbx, qword [r13 + 0x1ea]
mov rdx, rbx
cmp eax, 0x7fffffff
jb 0x14001d948
mov ecx, r15d
test eax, eax
jle 0x14001d929
and eax, 0x3f
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl rbx, cl
or rbx, rdx
xor rbx, qword [r13 + 0x1f2]
jmp 0x14001da01
neg eax
and eax, 0x3f
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr rbx, cl
or rbx, rdx
xor rbx, qword [r13 + 0x1f2]
jmp 0x14001da01
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14001d972
and ecx, 0x3f
mov eax, ecx
mov ecx, r15d
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl rbx, cl
or rbx, rdx
xor rbx, qword [r13 + 0x1f2]
jmp 0x14001da01
and eax, 0x3f
mov ecx, r15d
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr rbx, cl
or rbx, rdx
xor rbx, qword [r13 + 0x1f2]
jmp 0x14001da01
mov eax, dword [r13 + 0x1e6]
mov rbx, qword [r13 + 0x1de]
xor rbx, qword [r13 + 0x1ce]
mov rdx, rbx
cmp eax, 0x7fffffff
jb 0x14001d9c9
mov ecx, r15d
test eax, eax
jle 0x14001d9c5
and eax, 0x3f
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl rbx, cl
jmp 0x14001d9f7
neg eax
jmp 0x14001d9e9
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14001d9e6
and ecx, 0x3f
mov eax, ecx
mov ecx, r15d
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl rbx, cl
jmp 0x14001d9f7
mov ecx, r15d
and eax, 0x3f
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr rbx, cl
or rbx, rdx
xor rbx, qword [r13 + 0x1d6]
movss xmm6, dword [rsp + 0x48]
comiss xmm8, xmm6
jbe 0x14001da12
xorps xmm7, xmm7
jmp 0x14001da23
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si edi, xmm0
movss xmm6, dword [rsp + 0x4c]
comiss xmm8, xmm6
jbe 0x14001da57
xorps xmm7, xmm7
jmp 0x14001da68
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 8
or edi, eax
movss xmm6, dword [rsp + 0x50]
comiss xmm8, xmm6
jbe 0x14001daa1
xorps xmm7, xmm7
jmp 0x14001dab2
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x10
or edi, eax
movss xmm6, dword [rsp + 0x54]
comiss xmm8, xmm6
jbe 0x14001daeb
xorps xmm7, xmm7
jmp 0x14001dafc
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si r9d, xmm0
shl r9d, 0x18
or r9d, edi
movss dword [rsp + 0x48], xmm14
movss dword [rsp + 0x4c], xmm12
movss xmm0, dword [rsp + 0x74]
movss dword [rsp + 0x74], xmm0
movss dword [rsp + 0x78], xmm15
movss xmm12, dword [rbp + 0xf0]
movss dword [rsp + 0x20], xmm12
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x74]
mov rcx, rbx
call fcn.1400217d0
mov rsi, qword [rbp + 0xd0]
mov r8, qword [rsi + 0x18]
cmp byte [r8 + 0x1cd], 0
je 0x14001dc2c
mov eax, dword [r8 + 0x202]
mov rbx, qword [r8 + 0x1fa]
xor rbx, qword [r8 + 0x1ea]
mov rdx, rbx
cmp eax, 0x7fffffff
jb 0x14001dbe5
mov ecx, r15d
test eax, eax
jle 0x14001dbc6
and eax, 0x3f
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl rbx, cl
or rbx, rdx
xor rbx, qword [r8 + 0x1f2]
jmp 0x14001dc9e
neg eax
and eax, 0x3f
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr rbx, cl
or rbx, rdx
xor rbx, qword [r8 + 0x1f2]
jmp 0x14001dc9e
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14001dc0f
and ecx, 0x3f
mov eax, ecx
mov ecx, r15d
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl rbx, cl
or rbx, rdx
xor rbx, qword [r8 + 0x1f2]
jmp 0x14001dc9e
and eax, 0x3f
mov ecx, r15d
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr rbx, cl
or rbx, rdx
xor rbx, qword [r8 + 0x1f2]
jmp 0x14001dc9e
mov eax, dword [r8 + 0x1e6]
mov rbx, qword [r8 + 0x1de]
xor rbx, qword [r8 + 0x1ce]
mov rdx, rbx
cmp eax, 0x7fffffff
jb 0x14001dc66
mov ecx, r15d
test eax, eax
jle 0x14001dc62
and eax, 0x3f
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl rbx, cl
jmp 0x14001dc94
neg eax
jmp 0x14001dc86
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14001dc83
and ecx, 0x3f
mov eax, ecx
mov ecx, r15d
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl rbx, cl
jmp 0x14001dc94
mov ecx, r15d
and eax, 0x3f
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr rbx, cl
or rbx, rdx
xor rbx, qword [r8 + 0x1d6]
movss xmm6, dword [rbp - 0x60]
comiss xmm8, xmm6
jbe 0x14001dcae
xorps xmm7, xmm7
jmp 0x14001dcbf
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si edi, xmm0
movss xmm6, dword [rbp - 0x5c]
comiss xmm8, xmm6
jbe 0x14001dcf2
xorps xmm7, xmm7
jmp 0x14001dd03
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 8
or edi, eax
movss xmm6, dword [rbp - 0x58]
comiss xmm8, xmm6
jbe 0x14001dd3b
xorps xmm7, xmm7
jmp 0x14001dd4c
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x10
or edi, eax
movups xmm6, xmmword [rbp - 0x50]
comiss xmm8, xmm6
jbe 0x14001dd83
xorps xmm7, xmm7
jmp 0x14001dd94
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si r9d, xmm0
shl r9d, 0x18
or r9d, edi
movss xmm0, dword [rsp + 0x7c]
movss dword [rsp + 0x48], xmm0
movss xmm0, dword [rsp + 0x68]
movss dword [rsp + 0x4c], xmm0
movss dword [rsp + 0x68], xmm9
movss xmm6, dword [rsp + 0x44]
movss dword [rsp + 0x6c], xmm6
movss xmm7, dword [rsp + 0x60]
movss dword [rsp + 0x30], xmm7
movss dword [rsp + 0x20], xmm12
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x68]
mov rcx, rbx
call fcn.140021660
movzx r13d, byte [rbp + 0xd8]
test r13b, r13b
jne 0x14001e3ac
movaps xmm15, xmm6
addss xmm15, dword [rbp + 0xe8]
movss xmm0, dword [rbp - 0x7c]
movaps xmm12, xmm0
addss xmm12, xmm9
addss xmm12, xmm10
movaps xmm14, xmm15
addss xmm14, xmm13
subss xmm14, xmm0
mov r13, qword [rsi + 0x18]
mov rax, qword [0x1401c3028]
mov esi, dword [rax + 0xb8]
mov edi, esi
shr edi, 8
mov ebx, esi
shr ebx, 0x10
mov eax, esi
shr eax, 0x18
movd xmm6, eax
cvtdq2ps xmm6, xmm6
mov ecx, 0x437f0000
call fcn.140030720
divss xmm6, xmm0
mulss xmm6, dword [rsp + 0x5c]
movzx r9d, bl
movzx r8d, dil
movzx edx, sil
cvttss2si eax, xmm6
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x40]
call fcn.14000b960
movzx eax, byte [rsp + 0x43]
movzx r9d, byte [rsp + 0x42]
movzx r8d, byte [rsp + 0x41]
movzx edx, byte [rsp + 0x40]
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x48]
call fcn.14001f770
cmp byte [r13 + 0x1cd], 0
je 0x14001df82
mov eax, dword [r13 + 0x202]
mov rbx, qword [r13 + 0x1fa]
xor rbx, qword [r13 + 0x1ea]
mov rdx, rbx
cmp eax, 0x7fffffff
jb 0x14001df3b
mov ecx, r15d
test eax, eax
jle 0x14001df1c
and eax, 0x3f
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl rbx, cl
or rbx, rdx
xor rbx, qword [r13 + 0x1f2]
jmp 0x14001dff4
neg eax
and eax, 0x3f
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr rbx, cl
or rbx, rdx
xor rbx, qword [r13 + 0x1f2]
jmp 0x14001dff4
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14001df65
and ecx, 0x3f
mov eax, ecx
mov ecx, r15d
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl rbx, cl
or rbx, rdx
xor rbx, qword [r13 + 0x1f2]
jmp 0x14001dff4
and eax, 0x3f
mov ecx, r15d
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr rbx, cl
or rbx, rdx
xor rbx, qword [r13 + 0x1f2]
jmp 0x14001dff4
mov eax, dword [r13 + 0x1e6]
mov rbx, qword [r13 + 0x1de]
xor rbx, qword [r13 + 0x1ce]
mov rdx, rbx
cmp eax, 0x7fffffff
jb 0x14001dfbc
mov ecx, r15d
test eax, eax
jle 0x14001dfb8
and eax, 0x3f
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl rbx, cl
jmp 0x14001dfea
neg eax
jmp 0x14001dfdc
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14001dfd9
and ecx, 0x3f
mov eax, ecx
mov ecx, r15d
sub ecx, eax
shr rdx, cl
movzx ecx, al
shl rbx, cl
jmp 0x14001dfea
mov ecx, r15d
and eax, 0x3f
sub ecx, eax
shl rdx, cl
movzx ecx, al
shr rbx, cl
or rbx, rdx
xor rbx, qword [r13 + 0x1d6]
movss xmm6, dword [rsp + 0x48]
comiss xmm8, xmm6
jbe 0x14001e005
xorps xmm7, xmm7
jmp 0x14001e016
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si esi, xmm0
movss xmm6, dword [rsp + 0x4c]
comiss xmm8, xmm6
jbe 0x14001e04a
xorps xmm7, xmm7
jmp 0x14001e05b
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 8
or esi, eax
movss xmm6, dword [rsp + 0x50]
comiss xmm8, xmm6
jbe 0x14001e094
xorps xmm7, xmm7
jmp 0x14001e0a5
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm7, xmm0
minss xmm7, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm7
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x10
or esi, eax
movss xmm6, dword [rsp + 0x54]
comiss xmm8, xmm6
ja 0x14001e0ec
mov ecx, 0x3f800000
call fcn.140030720
movaps xmm8, xmm0
minss xmm8, xmm6
mov ecx, 0x437f0000
call fcn.140030720
movaps xmm6, xmm0
mulss xmm6, xmm8
mov ecx, 0x3f000000
call fcn.140030720
addss xmm0, xmm6
cvttss2si edi, xmm0
shl edi, 0x18
or edi, esi
test edi, 0xff000000
je 0x14001e1c5
mov ecx, 0x3f000000
call fcn.140030720
movaps xmm6, xmm0
mov ecx, 0x3f000000
call fcn.140030720
addss xmm6, xmm15
addss xmm0, xmm12
movss dword [rsp + 0x48], xmm0
movss dword [rsp + 0x4c], xmm6
lea rdx, [rsp + 0x48]
mov rcx, rbx
call fcn.14000bd00
mov ecx, 0x3f000000
call fcn.140030720
movaps xmm6, xmm0
mov ecx, 0x3f000000
call fcn.140030720
addss xmm6, xmm14
addss xmm0, xmm12
movss dword [rsp + 0x48], xmm0
movss dword [rsp + 0x4c], xmm6
lea rdx, [rsp + 0x48]
mov rcx, rbx
call fcn.14000bd00
movss xmm7, dword [rsp + 0x60]
movss dword [rsp + 0x28], xmm7
mov byte [rsp + 0x20], 0
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.140020070
mov dword [rbx + 0x78], 0
jmp 0x14001e1cb
movss xmm7, dword [rsp + 0x60]
movaps xmm0, xmm13
subss xmm0, xmm11
divss xmm0, dword [rsp + 0x64]
movss xmm6, dword [rsp + 0x44]
addss xmm0, xmm6
movss xmm8, dword [rbp + 0xe8]
subss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm3, eax
cvtdq2ps xmm3, xmm3
mov rsi, qword [rbp + 0xd0]
mov r8, qword [rsi + 0x18]
cmp byte [r8 + 0x1cd], 0
je 0x14001e2a8
mov eax, dword [r8 + 0x202]
mov r10, qword [r8 + 0x1fa]
xor r10, qword [r8 + 0x1ea]
mov rdx, r10
cmp eax, 0x7fffffff
jb 0x14001e27f
test eax, eax
jle 0x14001e25b
and eax, 0x3f
sub r15d, eax
movzx ecx, r15b
shr rdx, cl
movzx ecx, al
shl r10, cl
or r10, rdx
xor r10, qword [r8 + 0x1f2]
jmp 0x14001e303
neg eax
and eax, 0x3f
sub r15d, eax
movzx ecx, r15b
shl rdx, cl
movzx ecx, al
shr r10, cl
or r10, rdx
xor r10, qword [r8 + 0x1f2]
jmp 0x14001e303
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14001e25d
and ecx, 0x3f
mov eax, ecx
sub r15d, ecx
movzx ecx, r15b
shr rdx, cl
movzx ecx, al
shl r10, cl
or r10, rdx
xor r10, qword [r8 + 0x1f2]
jmp 0x14001e303
mov eax, dword [r8 + 0x1e6]
mov r10, qword [r8 + 0x1de]
xor r10, qword [r8 + 0x1ce]
mov rdx, r10
cmp eax, 0x7fffffff
jb 0x14001e386
test eax, eax
jle 0x14001e2e4
and eax, 0x3f
sub r15d, eax
movzx ecx, r15b
shr rdx, cl
movzx ecx, al
shl r10, cl
jmp 0x14001e2f9
neg eax
and eax, 0x3f
sub r15d, eax
movzx ecx, r15b
shl rdx, cl
movzx ecx, al
shr r10, cl
or r10, rdx
xor r10, qword [r8 + 0x1d6]
movss dword [rsp + 0x48], xmm7
movss dword [rsp + 0x4c], xmm7
mov qword [rbp - 0x7c], 0
addss xmm3, xmm8
movaps xmm2, xmm9
addss xmm2, xmm8
movaps xmm1, xmm3
addss xmm1, xmm11
movaps xmm0, xmm2
addss xmm0, xmm10
movss dword [rsp + 0x68], xmm0
movss dword [rsp + 0x6c], xmm1
movss dword [rsp + 0x7c], xmm2
movss dword [rbp - 0x80], xmm3
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x30], eax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x7c]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x68]
lea r8, [rsp + 0x7c]
mov rdx, r14
mov rcx, r10
call fcn.140021950
movzx r13d, byte [rbp + 0xd8]
jmp 0x14001e3b5
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14001e2e6
and ecx, 0x3f
mov eax, ecx
sub r15d, ecx
movzx ecx, r15b
shr rdx, cl
movzx ecx, al
shl r10, cl
jmp 0x14001e2f9
movss xmm8, dword [rbp + 0xe8]
movaps xmm1, xmm13
subss xmm1, dword [rbp - 0x3c]
divss xmm1, dword [rsp + 0x64]
addss xmm1, xmm6
movaps xmm0, xmm8
divss xmm0, dword [rbp - 0x74]
subss xmm1, xmm0
cvttss2si r15d, xmm1
mov r14, qword [rsi + 0x18]
mov ecx, 0x3f4ccccd
call fcn.140030720
mov qword [rsp + 0x48], 0
mov dword [rsp + 0x50], 0
movss dword [rsp + 0x54], xmm0
mov r8, qword [0x1401c3028]
mov ebx, dword [r8 + 0xb4]
mov dword [rsp + 0x58], ebx
mov rdx, qword [r8 + 0xa0]
mov eax, ebx
shr eax, 0x18
shr ebx, 0x10
cmp qword [r8 + 0x98], rdx
je 0x14001e445
add rdx, 0xfffffffffffffffc
movzx eax, byte [rdx + 3]
movzx ebx, byte [rdx + 2]
movzx edi, byte [rdx]
movzx esi, byte [rdx + 1]
mov qword [r8 + 0xa0], rdx
jmp 0x14001e44f
movzx esi, byte [rsp + 0x59]
movzx edi, byte [rsp + 0x58]
movzx eax, al
movd xmm6, eax
cvtdq2ps xmm6, xmm6
mov ecx, 0x437f0000
call fcn.140030720
divss xmm6, xmm0
mulss xmm6, dword [rsp + 0x5c]
movzx r9d, bl
movzx r8d, sil
movzx edx, dil
cvttss2si eax, xmm6
mov dword [rsp + 0x20], eax
lea rcx, [rbp + 0xd8]
call fcn.14000b960
movzx eax, byte [rbp + 0xdb]
movzx r9d, byte [rbp + 0xda]
movzx r8d, byte [rbp + 0xd9]
movzx edx, byte [rbp + 0xd8]
mov dword [rsp + 0x20], eax
lea rcx, [rbp - 0x50]
call fcn.14001f770
movd xmm2, r15d
cvtdq2ps xmm2, xmm2
test r13b, r13b
jne 0x14001e4cb
movss xmm7, dword [rsp + 0x70]
mulss xmm7, xmm8
addss xmm7, xmm9
addss xmm7, xmm10
movups xmm0, xmmword [rsp + 0x48]
movdqa xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rbp - 0x50]
movdqa xmmword [rbp - 0x50], xmm1
lea rax, [rbp - 0x60]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], 0
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
lea r9, [rbp - 0x50]
mov r8, r12
unpcklps xmm7, xmm2
movq rdx, xmm7
mov rcx, r14
call fcn.14001bef0
addss xmm13, xmm8
mov rcx, qword [rbp + 0xf8]
movd xmm0, dword [rcx]
cvtdq2ps xmm0, xmm0
addss xmm13, xmm0
cvttss2si eax, xmm13
mov dword [rcx], eax
mov r8, qword [rbp - 0x70]
sub r8, r12
xor edx, edx
mov rcx, r12
call fcn.1400a6950
nop
test r12, r12
je 0x14001e583
mov rax, qword [rbp - 0x20]
sub rax, r12
mov rcx, r12
cmp rax, 0x1000
jb 0x14001e57a
mov r12, qword [r12 - 8]
sub rcx, r12
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001e5d6
mov rcx, r12
call fcn.14000da60
nop
lea r11, [rsp + 0x190]
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]
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 r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140087d64
int3