Function at 0x14005e4d0
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 r12
push r13
push r14
push r15
lea rbp, [rax - 0x878]
sub rsp, 0x950
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x1402a87c0]
xor rax, rsp
mov qword [rbp + 0x7a0], rax
xor r15d, r15d
mov rdx, qword [0x1401e1200]
xorps xmm9, xmm9
movaps xmmword [rbp + 0x510], xmm9
movabs rax, 0xcccccccccccccccc
movabs rcx, 0x7fffffffffbffffe
add rdx, qword [0x1402a8ef0]
je 0x14005e62e
cmp rdx, rax
je 0x14005e62e
cmp rdx, 0xffffffffffffffff
je 0x14005e62e
lea rax, [rdx - 0x400001]
cmp rax, rcx
ja 0x14005e62e
mov dword [rbp + 0x571], r15d
mov word [rbp + 0x575], r15w
mov byte [rbp + 0x577], r15b
mov dword [rbp + 0x550], 0x457c1d6
mov qword [rbp + 0x558], rdx
lea rax, [rbp + 0x510]
mov qword [rbp + 0x560], rax
mov qword [rbp + 0x568], 0x10
mov eax, dword [0x1402a90b0]
mov dword [rbp + 0x554], eax
mov byte [rbp + 0x570], r15b
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
mov r9d, 0x28
lea r8, [rbp + 0x550]
mov edx, 0x231d58
mov rcx, qword [0x1402a90a8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movaps xmm9, xmmword [rbp + 0x510]
movdqa xmmword [rbp + 0x2c0], xmm9
movdqa xmm2, xmmword [0x1400c0df0]
movdqa xmmword [rbp - 0x30], xmm2
movdqa xmm3, xmmword [0x1400bf080]
movdqa xmmword [rbp + 0x290], xmm3
movss xmm11, dword [0x1400beec0]
movss dword [rsp + 0x58], xmm11
movss xmm12, dword [0x1400c0db8]
movss dword [rbp - 0x3c], xmm12
cmp byte [0x1402a93be], r15b
je 0x14005e8e4
mov eax, dword [0x1402a90b8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1402a90b4]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x470], xmm0
movss dword [rbp + 0x474], xmm1
movups xmmword [rbp + 0x5e0], xmm3
movdqa xmm0, xmmword [0x1401b6970]
movups xmmword [rbp + 0x5d0], xmm0
movups xmmword [rbp + 0x5c0], xmm2
call fcn.14000d170
mov r14, rax
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x4f0], xmm1
mov rsi, r15
mov qword [rbp + 0x500], r15
mov edi, r15d
movss xmm10, dword [0x1401b6824]
mov rbx, qword [rbp + 0x4f8]
xorps xmm6, xmm6
cvtsi2ss xmm6, edi
mulss xmm6, xmm10
xorps xmm7, xmm7
cvtsi2ss xmm7, dword [0x1402a8788]
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm8, xmm0
mulss xmm8, xmm7
addss xmm8, dword [rbp + 0x474]
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
mulss xmm0, xmm7
addss xmm0, dword [rbp + 0x470]
movss dword [rbp - 0x78], xmm0
movss dword [rbp - 0x74], xmm8
cmp rbx, rsi
je 0x14005e777
unpcklps xmm0, xmm8
movsd qword [rbp - 0x78], xmm0
movsd qword [rbx], xmm0
mov rbx, qword [rbp + 0x4f8]
add rbx, 8
mov qword [rbp + 0x4f8], rbx
jmp 0x14005e791
lea r8, [rbp - 0x78]
mov rdx, rbx
lea rcx, [rbp + 0x4f0]
call fcn.140047590
mov rbx, qword [rbp + 0x4f8]
inc edi
cmp edi, 0x40
jge 0x14005e7a4
mov rsi, qword [rbp + 0x500]
jmp 0x14005e701
cmp byte [0x1402a93bf], 0
je 0x14005e827
lea rcx, [rbp + 0x5c0]
call fcn.14000a040
movd xmm2, dword [0x1402a8788]
cvtdq2ps xmm2, xmm2
subss xmm2, xmm11
movss dword [rsp + 0x28], xmm12
mov dword [rsp + 0x20], 0x40
mov r9d, eax
lea rdx, [rbp + 0x470]
mov rcx, r14
call fcn.140020ec0
lea rcx, [rbp + 0x5c0]
call fcn.14000a040
movd xmm2, dword [0x1402a8788]
cvtdq2ps xmm2, xmm2
addss xmm2, xmm11
movss dword [rsp + 0x28], xmm12
mov dword [rsp + 0x20], 0x40
mov r9d, eax
lea rdx, [rbp + 0x470]
mov rcx, r14
call fcn.140020ec0
cmp byte [0x1402a93c1], 0
je 0x14005e85c
lea rcx, [rbp + 0x5d0]
call fcn.14000a040
mov r8, qword [rbp + 0x4f8]
mov rdx, qword [rbp + 0x4f0]
sub r8, rdx
sar r8, 3
mov r9d, eax
mov rcx, r14
call fcn.140021080
lea rcx, [rbp + 0x5e0]
call fcn.14000a040
movd xmm2, dword [0x1402a8788]
cvtdq2ps xmm2, xmm2
movss dword [rsp + 0x28], xmm11
mov dword [rsp + 0x20], 0x40
mov r9d, eax
lea rdx, [rbp + 0x470]
mov rcx, r14
call fcn.140020ec0
nop
mov rcx, qword [rbp + 0x4f0]
test rcx, rcx
je 0x14005e8e4
mov rax, qword [rbp + 0x500]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005e8df
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14005e8df
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400baeac
mov rcx, qword [0x1402a8eb8]
add rcx, qword [0x1401e1260]
call fcn.1400481e0
mov r12d, eax
mov dword [rsp + 0x68], eax
call fcn.14000d800
movss xmm6, dword [rax + 0xc]
movss xmm15, dword [0x1400befc8]
movss dword [rsp + 0x54], xmm15
mulss xmm6, xmm15
call fcn.14000d800
movss xmm0, dword [rax + 8]
mulss xmm0, xmm15
movss dword [rbp + 0x30], xmm0
movss dword [rbp + 0x34], xmm6
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x538], xmm0
mov qword [rbp + 0x548], r15
psrldq xmm9, 8
movd ebx, xmm9
mov dword [rbp - 0x38], ebx
lea eax, [rbx + rbx]
mov ecx, eax
mov qword [rbp + 0x508], rcx
test eax, eax
je 0x14005e979
lea rdx, [rbp + 0x508]
lea rcx, [rbp + 0x538]
call fcn.1400478e0
mov rdx, qword [0x1402a8ec0]
lea rcx, [rbp + 0x450]
call fcn.14004f080
mov rdx, rax
lea rcx, [0x1402a8740]
call fcn.140049510
mov rdx, qword [rbp + 0x468]
cmp rdx, 0xf
jbe 0x14005e9df
inc rdx
mov rcx, qword [rbp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005e9da
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14005e9da
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400baeac
mov eax, r15d
mov dword [rbp - 0x60], eax
test ebx, ebx
je 0x140062731
mov ecx, dword [0x1402a8820]
mov dword [rbp - 0x7c], ecx
mov rdx, qword [rbp + 0x510]
mov qword [rbp + 0x260], rdx
movzx edi, byte [rsp + 0x51]
movzx ebx, byte [rsp + 0x51]
movzx esi, byte [rsp + 0x51]
movzx r14d, byte [rsp + 0x51]
movdqa xmm0, xmmword [0x1401b6950]
movdqa xmmword [rbp + 0x180], xmm0
movdqa xmm0, xmmword [0x1401b68f0]
movdqa xmmword [rbp + 0x5d0], xmm0
movdqa xmm1, xmmword [0x1400c4d30]
movdqa xmmword [rbp + 0x150], xmm1
movdqa xmm0, xmmword [0x1401b6960]
movdqa xmmword [rbp + 0x5e0], xmm0
movdqa xmm2, xmmword [0x1401b6940]
movdqa xmmword [rbp + 0x170], xmm2
movdqa xmm0, xmmword [0x1401b6a80]
movdqa xmmword [rbp + 0x160], xmm0
movdqa xmm1, xmmword [0x1401b69d0]
movdqa xmmword [rbp + 0x2e0], xmm1
movdqa xmm0, xmmword [0x1401b69e0]
movdqa xmmword [rbp + 0x320], xmm0
movdqa xmm0, xmmword [0x1401b6a60]
movups xmmword [rbp + 0x340], xmm0
movdqa xmm0, xmmword [0x1401b69f0]
movdqa xmmword [rbp + 0x360], xmm0
movdqa xmm0, xmmword [0x1401b6a40]
movdqa xmmword [rbp + 0x370], xmm0
movdqa xmm0, xmmword [0x1401b69c0]
movdqa xmmword [rbp + 0x380], xmm0
movdqa xmm0, xmmword [0x1401b6a10]
movdqa xmmword [rbp + 0x390], xmm0
movsd xmm6, qword [0x1400c54d0]
movsd xmm8, qword [0x1401b6840]
movss xmm7, dword [0x1400c0c4c]
movsd xmm9, qword [0x1401b6848]
movss xmm12, dword [0x1400c0bf4]
movsd xmm0, qword [0x1401b6870]
movsd qword [rbp + 0x278], xmm0
nop dword [rax]
nop word [rax + rax]
lea ecx, [rax*8]
add rcx, rdx
call fcn.140048650
mov r13, rax
mov qword [rbp - 0x78], rax
test rax, rax
je 0x1400626eb
mov rdx, qword [0x1401e1270]
xor r8d, r8d
mov ecx, r8d
mov qword [rbp + 0x470], rcx
mov qword [rbp + 0x438], rcx
add rdx, rax
movabs r9, 0xcccccccccccccccc
je 0x14005ec49
cmp rdx, r9
je 0x14005ec49
movabs r10, 0x7fffffffffbffffe
cmp rdx, 0xffffffffffffffff
je 0x14005ec53
lea rax, [rdx - 0x400001]
cmp rax, r10
ja 0x14005ec53
mov dword [rbp + 0x571], r8d
mov word [rbp + 0x575], r8w
mov byte [rbp + 0x577], cl
mov dword [rbp + 0x550], 0x457c1d6
mov qword [rbp + 0x558], rdx
lea rax, [rbp + 0x438]
mov qword [rbp + 0x560], rax
mov qword [rbp + 0x568], 8
mov eax, dword [0x1402a90b0]
mov dword [rbp + 0x554], eax
mov byte [rbp + 0x570], cl
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x30], r8
mov dword [rsp + 0x28], r8d
mov qword [rsp + 0x20], r8
mov r9d, 0x28
lea r8, [rbp + 0x550]
mov edx, 0x231d58
mov rcx, qword [0x1402a90a8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [rbp + 0x438]
mov qword [rbp + 0x470], rcx
xor r8d, r8d
movabs r9, 0xcccccccccccccccc
movabs r10, 0x7fffffffffbffffe
test rcx, rcx
je 0x1400626eb
cmp rcx, qword [0x1402a8ec0]
je 0x1400626eb
add rcx, qword [0x1401e1258]
mov r15, r8
mov qword [rbp - 0x68], r8
mov qword [rbp + 0x448], r8
je 0x14005ed38
cmp rcx, r9
je 0x14005ed38
cmp rcx, 0xffffffffffffffff
je 0x14005ed38
lea rax, [rcx - 0x400001]
cmp rax, r10
ja 0x14005ed38
mov dword [rbp + 0x571], r8d
mov word [rbp + 0x575], r8w
mov byte [rbp + 0x577], 0
mov dword [rbp + 0x550], 0x457c1d6
mov qword [rbp + 0x558], rcx
lea rax, [rbp + 0x448]
mov qword [rbp + 0x560], rax
mov qword [rbp + 0x568], 8
mov eax, dword [0x1402a90b0]
mov dword [rbp + 0x554], eax
mov byte [rbp + 0x570], 0
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x30], r8
mov dword [rsp + 0x28], r8d
mov qword [rsp + 0x20], r8
mov r9d, 0x28
lea r8, [rbp + 0x550]
mov edx, 0x231d58
mov rcx, qword [0x1402a90a8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov r15, qword [rbp + 0x448]
mov qword [rbp - 0x68], r15
test r15, r15
je 0x1400626eb
mov rcx, qword [0x1401e1260]
add rcx, r13
call fcn.1400481e0
test r12d, r12d
je 0x14005ed5e
cmp eax, r12d
je 0x1400626eb
lea rax, [r13 + 0x29a]
mov qword [rbp - 0x58], rax
mov rdx, qword [rbp + 0x540]
cmp rdx, qword [rbp + 0x548]
je 0x14005ed86
mov qword [rdx], rax
add qword [rbp + 0x540], 8
jmp 0x14005ed96
lea r8, [rbp - 0x58]
lea rcx, [rbp + 0x538]
call fcn.140047740
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x520], xmm0
mov qword [rbp + 0x530], rax
lea rdx, [rbp + 0x538]
lea rcx, [rbp + 0x520]
call fcn.140047c90
nop
mov rax, qword [rbp + 0x520]
movzx eax, byte [rax]
mov byte [rsp + 0x51], al
mov rcx, qword [0x1401e12e8]
add rcx, r15
call fcn.1400481e0
mov dword [rsp + 0x78], eax
lea rdx, [r15 + 0x1c0]
lea rcx, [rbp + 0x3d0]
call fcn.140048490
lea rdx, [rbp + 0x640]
lea rcx, [rbp + 0x3d0]
call fcn.140059d50
mov r8d, 0x6e
lea rdx, [rbp + 8]
mov rcx, r15
call fcn.14004ef00
movups xmm11, xmmword [rbp + 8]
movaps xmmword [rbp + 0x240], xmm11
movsd xmm14, qword [rbp + 0x18]
movsd qword [rbp + 0x250], xmm14
lea rdx, [rbp + 0x240]
lea rcx, [rbp + 0x4c0]
call fcn.1400594c0
xor r8d, r8d
lea rdx, [rbp + 0x2a0]
mov rcx, r15
call fcn.14004ef00
movups xmm0, xmmword [rbp + 0x2a0]
movups xmmword [rbp + 0x240], xmm0
movaps xmmword [rbp + 0x480], xmm0
movsd xmm0, qword [rbp + 0x2b0]
movsd qword [rbp + 0x270], xmm0
movsd qword [rbp + 0x490], xmm0
lea rdx, [rbp + 0x480]
lea rcx, [rbp + 0x450]
call fcn.1400594c0
movsd xmm10, qword [rbp + 0x4c8]
movaps xmm0, xmm10
movsd xmm13, qword [rbp + 0x458]
subsd xmm0, xmm13
andps xmm0, xmm6
mulsd xmm0, xmm8
cvtpd2ps xmm0, xmm0
movss dword [rsp + 0x64], xmm0
movaps xmm8, xmm0
mulss xmm8, xmm15
movss dword [rsp + 0x6c], xmm8
movsd xmm1, qword [0x1402a9268]
movaps xmm0, xmm11
unpckhpd xmm0, xmm11
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm6, xmm0
movsd xmm0, qword [0x1402a9260]
subsd xmm0, xmm11
cvtpd2ps xmm0, xmm0
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
movsd xmm1, qword [0x1402a9270]
subsd xmm1, xmm14
cvtpd2ps xmm0, xmm1
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm6
ja 0x14005ef43
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x14005ef4b
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
cvtss2sd xmm0, xmm0
divsd xmm0, qword [0x1400c5460]
cvtsd2ss xmm0, xmm0
movss dword [rbp - 0x80], xmm0
comiss xmm0, dword [0x1402a8784]
jbe 0x14005efb2
mov rcx, qword [rbp + 0x520]
test rcx, rcx
je 0x1400626da
mov rdx, qword [rbp + 0x530]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005efa8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140062707
call fcn.1400baeac
jmp 0x1400626da
mov eax, dword [0x1402a90b8]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mov eax, dword [0x1402a90b4]
cdq
sub eax, edx
sar eax, 1
movd xmm6, eax
cvtdq2pd xmm6, xmm6
subsd xmm0, xmm10
movaps xmm1, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm7, xmm0
movsd xmm9, qword [rbp + 0x4c0]
movsd qword [rbp + 0x280], xmm9
subsd xmm6, xmm9
movsd xmm1, qword [0x1401b6848]
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm7, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm7
ja 0x14005f028
xorps xmm15, xmm15
sqrtsd xmm15, xmm7
jmp 0x14005f034
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movaps xmm15, xmm0
movaps xmm7, xmm13
addsd xmm7, xmm10
mulsd xmm7, qword [0x1400c5450]
movsd qword [rbp + 0x438], xmm7
mov rcx, qword [0x1402a8e90]
add rcx, 0x150
call fcn.1400483b0
movaps xmm6, xmm0
lea rcx, [r15 + 0x2f0]
call fcn.1400482d0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
subsd xmm6, xmm1
movsd xmm0, qword [0x1401b6830]
comisd xmm0, xmm6
setae al
mov byte [rsp + 0x50], al
test al, al
je 0x14005f09a
movups xmm0, xmmword [0x1402a86f0]
jmp 0x14005f0a1
movups xmm0, xmmword [0x1402a8700]
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp + 0x4e0], xmm0
call fcn.14000d170
mov qword [rbp - 0x58], rax
movaps xmm0, xmm13
addsd xmm0, qword [0x1401b6848]
cvtpd2ps xmm1, xmm0
movss dword [rbp - 0x70], xmm1
movss xmm1, dword [rbp - 0x80]
mulss xmm1, dword [0x1401b681c]
movss xmm6, dword [rsp + 0x58]
addss xmm1, xmm6
comiss xmm6, xmm1
jbe 0x14005f0e9
movaps xmm1, xmm6
movaps xmm0, xmm8
mulss xmm0, xmm1
cvtps2pd xmm1, xmm0
movaps xmm2, xmm7
subsd xmm2, xmm1
cvtpd2ps xmm0, xmm2
movss dword [rsp + 0x70], xmm0
cmp byte [0x1402a93a4], 0
je 0x14005f2a8
movaps xmm0, xmm8
mulss xmm0, dword [rsp + 0x54]
cvtps2pd xmm0, xmm0
movaps xmm1, xmm9
subsd xmm1, xmm0
cvtpd2ps xmm8, xmm1
movss xmm2, dword [rsp + 0x6c]
cvtps2pd xmm2, xmm2
movaps xmm0, xmm7
subsd xmm0, xmm2
cvtpd2ps xmm7, xmm0
call fcn.14000dee0
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm0
mulss xmm6, dword [0x1400befcc]
movaps xmm0, xmm6
addss xmm0, dword [0x1400c5424]
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
mulss xmm0, dword [0x1401b6898]
addss xmm0, dword [0x1401b689c]
cvttss2si r13d, xmm0
movaps xmm0, xmm6
addss xmm0, dword [0x1400c0c4c]
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
mulss xmm0, dword [0x1401b6898]
addss xmm0, dword [0x1401b689c]
cvttss2si r12d, xmm0
addss xmm6, dword [0x1400befd0]
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
mulss xmm0, dword [0x1401b6898]
addss xmm0, dword [0x1401b689c]
cvttss2si r15d, xmm0
mov rcx, qword [0x1402a8e90]
add rcx, 0x150
call fcn.1400483b0
movaps xmm6, xmm0
mov rcx, qword [rbp - 0x68]
add rcx, 0x2f0
call fcn.1400482d0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
subsd xmm6, xmm1
movsd xmm0, qword [0x1401b6830]
comisd xmm0, xmm6
setae al
movd xmm0, r13d
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm12
movss dword [rbp + 0x1a0], xmm0
movd xmm1, r12d
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm12
movss dword [rbp + 0x1a4], xmm1
movd xmm0, r15d
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm12
movss dword [rbp + 0x1a8], xmm0
mov dword [rbp + 0x1ac], 0x3f800000
cvttss2si r9d, dword [rsp + 0x64]
cvttss2si r8d, dword [rsp + 0x6c]
cvttss2si edx, xmm7
cvttss2si ecx, xmm8
movss xmm0, dword [0x1400befcc]
movss dword [rsp + 0x40], xmm0
mov byte [rsp + 0x38], al
mov byte [rsp + 0x30], 0
mov dword [rsp + 0x28], 1
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x20], rax
call fcn.14004d050
movss xmm8, dword [rsp + 0x6c]
movss xmm6, dword [rsp + 0x58]
movsd xmm7, qword [rbp + 0x438]
mov eax, dword [0x1402a9358]
cmp eax, 1
jne 0x14005f55e
movups xmm0, xmmword [rbp + 0x4e0]
movdqa xmmword [rbp + 0x4c0], xmm0
cvttss2si eax, xmm8
mov dword [rbp - 0x40], eax
cvtps2pd xmm0, xmm8
movaps xmm1, xmm7
subsd xmm1, xmm0
cvttsd2si r13d, xmm1
movaps xmm0, xmm8
mulss xmm0, dword [rsp + 0x54]
cvtps2pd xmm1, xmm0
movaps xmm2, xmm9
subsd xmm2, xmm1
cvttsd2si r12d, xmm2
movdqa xmm0, xmmword [rbp - 0x30]
movups xmmword [rbp + 0x480], xmm0
lea rcx, [rbp + 0x480]
call fcn.14000a040
mov r15d, eax
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
cvttss2si ecx, xmm8
add ecx, r12d
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
cvtps2pd xmm7, xmm0
movd xmm1, r13d
cvtdq2ps xmm1, xmm1
cvtps2pd xmm9, xmm1
movd xmm0, r12d
cvtdq2ps xmm0, xmm0
cvtps2pd xmm8, xmm0
movaps xmm0, xmm7
unpcklpd xmm0, xmm9
movaps xmmword [rbp + 0x480], xmm0
movsd xmm0, qword [rbp + 0x460]
movsd qword [rbp + 0x490], xmm0
movaps xmm1, xmm8
unpcklpd xmm1, xmm9
movaps xmmword [rbp + 0x4a0], xmm1
movsd xmm0, qword [rbp + 0x460]
movsd qword [rbp + 0x4b0], xmm0
movss dword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], r15d
movaps xmm3, xmm6
mov r8d, eax
lea rdx, [rbp + 0x480]
lea rcx, [rbp + 0x4a0]
call fcn.1400499b0
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
cvttss2si ecx, dword [rsp + 0x64]
add ecx, r13d
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
cvtps2pd xmm6, xmm0
movaps xmm0, xmm7
unpcklpd xmm0, xmm6
movaps xmmword [rbp + 0x4a0], xmm0
movsd xmm0, qword [rbp + 0x460]
movsd qword [rbp + 0x4b0], xmm0
movaps xmm1, xmm7
unpcklpd xmm1, xmm9
movaps xmmword [rbp + 0x480], xmm1
movsd xmm0, qword [rbp + 0x460]
movsd qword [rbp + 0x490], xmm0
movss xmm3, dword [rsp + 0x58]
movss dword [rsp + 0x28], xmm3
mov dword [rsp + 0x20], r15d
mov r8d, eax
lea rdx, [rbp + 0x4a0]
lea rcx, [rbp + 0x480]
call fcn.1400499b0
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movaps xmm0, xmm7
unpcklpd xmm0, xmm6
movaps xmmword [rbp + 0x4a0], xmm0
movsd xmm0, qword [rbp + 0x460]
movsd qword [rbp + 0x4b0], xmm0
movaps xmm1, xmm8
unpcklpd xmm1, xmm6
movaps xmmword [rbp + 0x480], xmm1
movsd xmm0, qword [rbp + 0x460]
movsd qword [rbp + 0x490], xmm0
movss xmm0, dword [rsp + 0x58]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], r15d
movaps xmm3, xmm0
mov r8d, eax
lea rdx, [rbp + 0x4a0]
lea rcx, [rbp + 0x480]
call fcn.1400499b0
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movaps xmm0, xmm8
unpcklpd xmm0, xmm6
movaps xmmword [rbp + 0x4a0], xmm0
movsd xmm0, qword [rbp + 0x460]
movsd qword [rbp + 0x4b0], xmm0
movaps xmm1, xmm8
unpcklpd xmm1, xmm9
movaps xmmword [rbp + 0x480], xmm1
movsd xmm0, qword [rbp + 0x460]
movsd qword [rbp + 0x490], xmm0
movss xmm6, dword [rsp + 0x58]
movss dword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], r15d
movaps xmm3, xmm6
mov r8d, eax
lea rdx, [rbp + 0x4a0]
lea rcx, [rbp + 0x480]
call fcn.1400499b0
movups xmm0, xmmword [rbp + 0x4e0]
movdqa xmmword [rbp + 0x480], xmm0
mov dword [rsp + 0x28], 1
lea rax, [rbp + 0x480]
mov qword [rsp + 0x20], rax
cvttss2si r9d, dword [rsp + 0x64]
mov r8d, dword [rbp - 0x40]
mov edx, r13d
mov ecx, r12d
call fcn.14004b150
movsd xmm9, qword [rbp + 0x280]
jmp 0x14005f604
cmp eax, 2
jne 0x14005f604
movups xmm0, xmmword [rbp + 0x4e0]
movdqa xmmword [rbp + 0x480], xmm0
cvttss2si r13d, dword [rsp + 0x64]
cvttss2si r8d, xmm8
cvtps2pd xmm0, xmm8
movaps xmm1, xmm7
subsd xmm1, xmm0
cvttsd2si r12d, xmm1
movaps xmm2, xmm8
mulss xmm2, dword [rsp + 0x54]
cvtps2pd xmm0, xmm2
movaps xmm1, xmm9
subsd xmm1, xmm0
cvttsd2si r15d, xmm1
mov dword [rsp + 0x28], 1
lea rcx, [rbp + 0x480]
mov qword [rsp + 0x20], rcx
mov r9d, r13d
mov edx, r12d
mov ecx, r15d
call fcn.14004ace0
movups xmm0, xmmword [rbp + 0x4e0]
movdqa xmmword [rbp + 0x480], xmm0
mov dword [rsp + 0x28], 1
lea rax, [rbp + 0x480]
mov qword [rsp + 0x20], rax
mov r9d, r13d
cvttss2si r8d, xmm8
mov edx, r12d
mov ecx, r15d
call fcn.14004b150
movss xmm8, dword [rbp - 0x80]
cmp byte [0x1402a938f], 0
je 0x14005f67e
movups xmm0, xmmword [rbp + 0x4e0]
movdqa xmmword [rbp + 0x480], xmm0
movups xmm1, xmmword [rbp + 0x640]
movaps xmmword [rbp + 0x550], xmm1
movups xmm0, xmmword [rbp + 0x650]
movaps xmmword [rbp + 0x560], xmm0
movups xmm1, xmmword [rbp + 0x660]
movaps xmmword [rbp + 0x570], xmm1
movups xmm0, xmmword [rbp + 0x670]
movaps xmmword [rbp + 0x580], xmm0
lea rax, [rbp + 0x480]
mov qword [rsp + 0x20], rax
movaps xmm3, xmm8
lea r8, [rbp + 0x550]
mov edx, dword [rsp + 0x78]
mov rcx, qword [rbp - 0x68]
call fcn.14004b220
cmp byte [0x1402a938e], 0
je 0x14005f6f1
movups xmm0, xmmword [0x1402a8770]
movdqa xmmword [rbp + 0x480], xmm0
movups xmm1, xmmword [rbp + 0x4e0]
movdqa xmmword [rbp + 0x4c0], xmm1
movaps xmmword [rbp + 0x4a0], xmm11
movsd qword [rbp + 0x4b0], xmm14
movzx eax, byte [0x1402a939c]
mov byte [rsp + 0x28], al
movss xmm0, dword [0x1402a8728]
movss dword [rsp + 0x20], xmm0
lea r9, [rbp + 0x480]
lea r8, [rbp + 0x4c0]
movss xmm1, dword [0x1402a872c]
lea rcx, [rbp + 0x4a0]
call fcn.14004a150
cmp byte [0x1402a9387], 0
je 0x14005f7fc
mov eax, dword [0x1402a90b4]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x5b0], xmm0
mov dword [rbp + 0x5b4], 0x40a00000
xorps xmm0, xmm0
comisd xmm9, xmm0
jbe 0x14005f7fc
comisd xmm10, xmm0
jbe 0x14005f7fc
movaps xmm1, xmm8
divss xmm1, dword [0x1400c0c6c]
movaps xmm0, xmm6
divss xmm0, xmm1
movaps xmm1, xmm6
maxss xmm1, xmm0
cvtps2pd xmm0, xmm1
movaps xmm1, xmm10
subsd xmm1, xmm0
cvtpd2ps xmm2, xmm1
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x5b8], xmm0
movss dword [rbp + 0x5bc], xmm2
cmp byte [0x1402a9394], 0
je 0x14005f7c9
call fcn.14000d170
mov r15, rax
movdqa xmm0, xmmword [rbp - 0x30]
movups xmmword [rbp + 0x3b0], xmm0
lea rcx, [rbp + 0x3b0]
call fcn.14000a040
movss xmm0, dword [0x1400c0c54]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x5b8]
lea rdx, [rbp + 0x5b0]
mov rcx, r15
call fcn.140022480
call fcn.14000d170
mov r15, rax
lea rcx, [rbp + 0x4e0]
call fcn.14000a040
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x5b8]
lea rdx, [rbp + 0x5b0]
mov rcx, r15
call fcn.140022480
mov eax, dword [0x1402a90b8]
cdq
sub eax, edx
sar eax, 1
movd xmm6, eax
cvtdq2pd xmm6, xmm6
mov eax, dword [0x1402a90b4]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm0, xmm9
movsd xmm1, qword [0x1401b6848]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm7, xmm0
subsd xmm6, xmm10
movsd xmm1, qword [0x1401b6848]
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm7, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm7
ja 0x14005f862
xorps xmm2, xmm2
sqrtsd xmm2, xmm7
jmp 0x14005f86d
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movaps xmm2, xmm0
xorps xmm6, xmm6
comisd xmm9, xmm6
jbe 0x14005f8c0
comisd xmm10, xmm6
jbe 0x14005f8c0
movd xmm1, dword [0x1402a8788]
cvtdq2pd xmm1, xmm1
comisd xmm1, xmm2
jbe 0x14005f8c0
movss xmm0, dword [0x1402a878c]
cvtps2pd xmm0, xmm0
mov r13, qword [rbp + 0x470]
comisd xmm0, xmm2
jbe 0x14005f8c7
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm2
movss dword [0x1402a878c], xmm0
mov qword [0x1402a93d0], r13
jmp 0x14005f8c7
mov r13, qword [rbp + 0x470]
cmp byte [0x1402a9392], 0
je 0x14005f9d6
movsd xmm0, qword [0x1402a9280]
mulsd xmm0, qword [0x1401b6828]
cvtpd2ps xmm6, xmm0
movss xmm1, dword [0x1402a9290]
mulss xmm1, dword [0x1401b6818]
subss xmm6, xmm1
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm7, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movaps xmm6, xmm0
mulss xmm0, xmm6
movaps xmm1, xmm7
mulss xmm1, xmm7
addss xmm0, xmm1
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14005f92f
sqrtss xmm0, xmm0
jmp 0x14005f934
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
divss xmm7, xmm0
divss xmm6, xmm0
movss xmm2, dword [0x1401b68a0]
divss xmm2, xmm8
mulss xmm7, xmm2
xorps xmm0, xmm0
cvtss2sd xmm0, xmm7
addsd xmm0, xmm10
cvtpd2ps xmm1, xmm0
mulss xmm6, xmm2
xorps xmm0, xmm0
cvtss2sd xmm0, xmm6
addsd xmm0, xmm9
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x5f0], xmm0
movss dword [rbp + 0x5f4], xmm1
movups xmm1, xmmword [rbp + 0x4e0]
movups xmmword [rbp + 0x480], xmm1
lea rcx, [rbp + 0x480]
call fcn.14000a040
cvtpd2ps xmm1, xmm10
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x28], xmm0
movss dword [rbp + 0x2c], xmm1
movss xmm0, dword [rbp - 0x3c]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x5f0]
lea rdx, [rbp + 0x28]
mov r15, qword [rbp - 0x58]
mov rcx, r15
call fcn.140022480
jmp 0x14005f9da
mov r15, qword [rbp - 0x58]
lea rcx, [r13 + 0x982]
call fcn.1400480f0
test al, 0x10
je 0x14005fa36
mov rcx, qword [rbp + 0x520]
test rcx, rcx
je 0x14005fa2a
mov rdx, qword [rbp + 0x530]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005fa25
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140062707
call fcn.1400baeac
movss xmm15, dword [rsp + 0x54]
jmp 0x1400626c4
cmp byte [0x1402a939a], 0
je 0x14005fa89
movups xmm0, xmmword [rbp + 0x4e0]
movdqa xmmword [rbp + 0x480], xmm0
movaps xmmword [rbp + 0x4a0], xmm11
movsd qword [rbp + 0x4b0], xmm14
lea rax, [rbp + 0x480]
mov qword [rsp + 0x20], rax
mov r9, qword [rbp + 0x30]
movzx r8d, byte [rsp + 0x50]
movss xmm1, dword [0x1401b68a4]
lea rcx, [rbp + 0x4a0]
call fcn.14005a330
mov eax, dword [0x1402a90b8]
cdq
sub eax, edx
sar eax, 1
movd xmm6, eax
cvtdq2ps xmm6, xmm6
mov eax, dword [0x1402a90b4]
cdq
sub eax, edx
sar eax, 1
movd xmm7, eax
cvtdq2ps xmm7, xmm7
movsd xmm14, qword [rbp + 0x450]
mov eax, dword [0x1402a9354]
cmp eax, 1
jne 0x14005fb45
movups xmm0, xmmword [rbp + 0x4e0]
movups xmmword [rbp + 0x480], xmm0
lea rcx, [rbp + 0x480]
call fcn.14000a040
mov r9d, eax
cvtpd2ps xmm1, xmm13
cvtpd2ps xmm0, xmm14
movss dword [rbp + 0x38], xmm0
movss dword [rbp + 0x3c], xmm1
mov ecx, dword [0x1402a90b8]
add ecx, 0xfffffffb
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1402a90b4]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x40], xmm0
movss dword [rbp + 0x44], xmm1
movss xmm11, dword [rsp + 0x58]
movss dword [rsp + 0x20], xmm11
lea r8, [rbp + 0x38]
lea rdx, [rbp + 0x40]
mov rcx, r15
call fcn.140022480
jmp 0x14005fc20
cmp eax, 2
jne 0x14005fbb9
movups xmm0, xmmword [rbp + 0x4e0]
movups xmmword [rbp + 0x480], xmm0
lea rcx, [rbp + 0x480]
call fcn.14000a040
mov r9d, eax
cvtpd2ps xmm1, xmm10
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x48], xmm0
movss dword [rbp + 0x4c], xmm1
mov eax, dword [0x1402a90b4]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x50], xmm0
mov dword [rbp + 0x54], 0
movss xmm11, dword [rsp + 0x58]
movss dword [rsp + 0x20], xmm11
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x50]
mov rcx, r15
call fcn.140022480
jmp 0x14005fc20
cmp eax, 3
jne 0x14005fc19
movups xmm0, xmmword [rbp + 0x4e0]
movups xmmword [rbp + 0x480], xmm0
lea rcx, [rbp + 0x480]
call fcn.14000a040
cvtpd2ps xmm1, xmm10
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x58], xmm0
movss dword [rbp + 0x5c], xmm1
movss dword [rbp + 0x60], xmm7
movss dword [rbp + 0x64], xmm6
movss xmm11, dword [rsp + 0x58]
movss dword [rsp + 0x20], xmm11
mov r9d, eax
lea r8, [rbp + 0x58]
lea rdx, [rbp + 0x60]
mov rcx, r15
call fcn.140022480
jmp 0x14005fc20
movss xmm11, dword [rsp + 0x58]
cmp byte [0x1402a9395], 0
je 0x14005ff2f
movups xmm2, xmmword [0x1401b5f20]
movups xmmword [rbp + 0x480], xmm2
movzx eax, byte [0x1401b5f30]
mov byte [rbp + 0x490], al
xor eax, eax
mov r8d, eax
cmp dword [rbp - 0x7c], 2
jl 0x14005fe19
movdqa xmm3, xmmword [rbp + 0x150]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
movdqa xmm4, xmmword [rbp + 0x160]
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm5, xmmword [rbp + 0x170]
pmulld xmm0, xmm5
movdqa xmm1, xmm3
psubd xmm1, xmm0
movdqa xmm3, xmmword [rbp + 0x180]
andps xmm1, xmm3
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm6, xmmword [rbp + 0x5e0]
paddb xmm1, xmm6
movd eax, xmm2
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rbp + 0x480], xmm1
movdqa xmm2, xmmword [rbp + 0x5d0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
movdqa xmm1, xmm2
psubd xmm1, xmm0
andps xmm1, xmm3
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm6
movd xmm0, dword [rbp + 0x484]
xorps xmm1, xmm0
movd dword [rbp + 0x484], xmm1
movdqa xmm2, xmmword [0x1401b6900]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
movdqa xmm1, xmm2
psubd xmm1, xmm0
andps xmm1, xmm3
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm6
movd xmm0, dword [rbp + 0x488]
xorps xmm1, xmm0
movd dword [rbp + 0x488], xmm1
movdqa xmm2, xmmword [0x1401b6910]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
movdqa xmm1, xmm2
psubd xmm1, xmm0
andps xmm1, xmm3
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm6
movd xmm0, dword [rbp + 0x48c]
xorps xmm1, xmm0
movd dword [rbp + 0x48c], xmm1
mov r8d, 0x10
mov eax, r8d
lea r9, [rbp + 0x480]
add r9, rax
nop word [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x32
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x14005fe30
mov r8d, dword [rbp - 0x38]
lea rdx, [rbp + 0x480]
lea rcx, [rbp + 0x6a0]
call fcn.140020a40
movss xmm13, dword [0x1400beffc]
movss dword [rsp + 0x20], xmm13
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x6a0]
lea rcx, [rbp + 0x638]
call fcn.140009050
movd xmm6, dword [0x1402a90b4]
cvtdq2ps xmm6, xmm6
subss xmm6, dword [rbp + 0x638]
mulss xmm6, dword [rsp + 0x54]
call fcn.14000d170
mov r12, rax
movdqa xmm0, xmmword [0x1401b69b0]
movups xmmword [rbp + 0x3a0], xmm0
lea rcx, [rbp + 0x3a0]
call fcn.14000a040
mov r15d, eax
movss dword [rbp + 0x68], xmm6
mov dword [rbp + 0x6c], 0x42a00000
call fcn.14000d450
xor ecx, ecx
mov qword [rsp + 0x40], rcx
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x6a0]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r15d
lea r9, [rbp + 0x68]
movss xmm2, dword [0x1400c0dcc]
mov rdx, rax
mov rcx, r12
call fcn.140024e90
jmp 0x14005ff38
movss xmm13, dword [0x1400beffc]
mov rcx, qword [0x1402a8fe0]
lea r15, [rbp + 0x878]
xor eax, eax
mov r12, qword [r15]
cmp byte [0x1402a9375], al
mov qword [r15], rax
je 0x14005ff5d
mov edx, 0x11
jmp 0x14005ff5f
xor edx, edx
call qword [sym.imp.USER32.dll_SetWindowDisplayAffinity]
mov qword [r15], r12
lea rcx, [r13 + 0x982]
call fcn.1400480f0
cmp byte [0x1402a93b1], 0
je 0x14005ff81
test al, 0x10
jne 0x14005ffd2
movd xmm0, dword [0x1402a8788]
cvtdq2pd xmm0, xmm0
comisd xmm0, xmm15
jbe 0x14005ffd2
movss xmm0, dword [0x1401e1368]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm15
jbe 0x14005ffd2
cmp byte [0x1402a93b3], 0
je 0x14005ffb6
test byte [rsp + 0x51], 8
jne 0x14005ffd2
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm15
movss dword [0x1401e1368], xmm0
mov rax, r13
mov qword [0x1402a8f10], rax
jmp 0x14005ffd9
mov rax, qword [0x1402a8f10]
cmp byte [0x1402a93b2], 0
je 0x140060019
cmp r13, rax
je 0x140060019
mov rdx, qword [rbp + 0x520]
test rdx, rdx
je 0x14005fa2a
mov r8, qword [rbp + 0x530]
sub r8, rdx
lea rcx, [rbp + 0x520]
call fcn.14005b3e0
movss xmm15, dword [rsp + 0x54]
jmp 0x1400626c4
cmp byte [0x1402a938c], 0
je 0x14006047b
mov rcx, qword [0x1402a8eb0]
add rcx, 0x9d8
call fcn.140048650
lea rcx, [rax + 0xc8]
call fcn.1400481e0
mov r13d, eax
mov edx, eax
lea rcx, [rbp + 0x4a0]
call fcn.14005c260
nop
mov r9, qword [rbp + 0x4b0]
test r9, r9
jne 0x140060093
xorps xmm0, xmm0
movups xmmword [rbp + 0x450], xmm0
xor r12d, r12d
mov eax, r12d
mov qword [rbp + 0x460], rax
mov ecx, 7
mov qword [rbp + 0x468], rcx
mov word [rbp + 0x450], r12w
jmp 0x14006016b
lea r8, [rbp + 0x4a0]
cmp qword [rbp + 0x4b8], 0xf
cmova r8, qword [rbp + 0x4a0]
xor r12d, r12d
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
movsxd r15, eax
xorps xmm0, xmm0
movups xmmword [rbp + 0x480], xmm0
mov qword [rbp + 0x490], r12
mov qword [rbp + 0x498], r12
mov r8, r15
xor edx, edx
lea rcx, [rbp + 0x480]
call fcn.140047340
lea rcx, [rbp + 0x480]
cmp qword [rbp + 0x498], 7
cmova rcx, qword [rbp + 0x480]
lea r8, [rbp + 0x4a0]
cmp qword [rbp + 0x4b8], 0xf
cmova r8, qword [rbp + 0x4a0]
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], rcx
mov r9d, dword [rbp + 0x4b0]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
movups xmm0, xmmword [rbp + 0x480]
movups xmmword [rbp + 0x450], xmm0
movups xmm1, xmmword [rbp + 0x490]
movups xmmword [rbp + 0x460], xmm1
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rcx, xmm0
movq rax, xmm1
test rax, rax
jne 0x1400601a8
xorps xmm0, xmm0
movups xmmword [rbp + 0x4c0], xmm0
mov qword [rbp + 0x4d0], r12
mov r12d, 0xf
mov qword [rbp + 0x4d8], r12
mov byte [rbp + 0x4c0], al
movups xmm1, xmmword [rbp + 0x4d0]
movups xmm8, xmmword [rbp + 0x4c0]
jmp 0x14006027a
lea r8, [rbp + 0x450]
cmp rcx, 7
cmova r8, qword [rbp + 0x450]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
mov r9d, dword [rbp + 0x460]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
movsxd r15, eax
mov rdx, r15
xor r8d, r8d
lea rcx, [rbp + 0x480]
call fcn.140048c90
lea rcx, [rbp + 0x480]
cmp qword [rbp + 0x498], 0xf
cmova rcx, qword [rbp + 0x480]
lea r8, [rbp + 0x450]
cmp qword [rbp + 0x468], 7
cmova r8, qword [rbp + 0x450]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], rcx
mov r9d, dword [rbp + 0x460]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
movups xmm8, xmmword [rbp + 0x480]
movups xmmword [rbp + 0x4c0], xmm8
movups xmm1, xmmword [rbp + 0x490]
movups xmmword [rbp + 0x4d0], xmm1
movdqa xmm0, xmm1
psrldq xmm0, 8
movq r12, xmm0
movaps xmmword [rbp + 0x550], xmm8
movaps xmmword [rbp + 0x560], xmm1
lea r8, [rbp + 0x550]
lea rdx, [0x1400c0ad4]
lea rcx, [rbp + 0x640]
call fcn.1400488f0
cmp r13d, 2
jbe 0x140060333
lea eax, [r13 - 3]
cmp eax, 2
jbe 0x140060329
lea eax, [r13 - 6]
cmp eax, 2
jbe 0x14006031f
lea eax, [r13 - 9]
cmp eax, 2
jbe 0x140060315
lea eax, [r13 - 0xc]
cmp eax, 2
jbe 0x14006030b
cmp r13d, 0xf
jne 0x1400602e1
movdqa xmm7, xmmword [0x1401b6a20]
jmp 0x14006033b
cmp r13d, 0x10
jne 0x1400602f1
movdqa xmm7, xmmword [0x1400c4c10]
jmp 0x14006033b
cmp r13d, 0x11
jne 0x140060301
movdqa xmm7, xmmword [0x1401b6a00]
jmp 0x14006033b
movdqa xmm7, xmmword [rbp + 0x290]
jmp 0x14006033b
movdqa xmm7, xmmword [0x1401b6a30]
jmp 0x14006033b
movdqa xmm7, xmmword [rbp + 0x390]
jmp 0x14006033b
movdqa xmm7, xmmword [rbp + 0x380]
jmp 0x14006033b
movdqa xmm7, xmmword [rbp + 0x370]
jmp 0x14006033b
movdqa xmm7, xmmword [rbp + 0x360]
lea rdx, [rbp + 0x4a0]
cmp qword [rbp + 0x4b8], 0xf
cmova rdx, qword [rbp + 0x4a0]
movss dword [rsp + 0x20], xmm13
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x300]
call fcn.140009050
movss xmm10, dword [rsp + 0x70]
addss xmm10, dword [0x1400befe0]
movss dword [rsp + 0x20], xmm13
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x640]
lea rcx, [rbp + 0x308]
call fcn.140009050
movss xmm0, dword [rax]
movss xmm15, dword [rsp + 0x54]
mulss xmm0, xmm15
cvtps2pd xmm0, xmm0
movaps xmm1, xmm14
subsd xmm1, xmm0
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm1
call fcn.14000d170
mov r15, rax
movups xmmword [rbp + 0x350], xmm7
lea rcx, [rbp + 0x350]
call fcn.14000a040
movss dword [rbp + 0x70], xmm6
movss dword [rbp + 0x74], xmm10
xor ecx, ecx
mov qword [rsp + 0x20], rcx
lea r9, [rbp + 0x640]
mov r8d, eax
lea rdx, [rbp + 0x70]
mov rcx, r15
call fcn.140024e00
nop
cmp r12, 0xf
jbe 0x14006041c
mov r8, r12
movq rdx, xmm8
lea rcx, [rbp + 0x4c0]
call fcn.14005a000
nop
mov r8, qword [rbp + 0x468]
cmp r8, 7
jbe 0x14006043c
mov rdx, qword [rbp + 0x450]
lea rcx, [rbp + 0x450]
call fcn.14005a040
xor r15d, r15d
mov qword [rbp + 0x460], r15
mov qword [rbp + 0x468], 7
mov word [rbp + 0x450], r15w
mov r8, qword [rbp + 0x4b8]
cmp r8, 0xf
jbe 0x14006048c
mov rdx, qword [rbp + 0x4a0]
lea rcx, [rbp + 0x4a0]
call fcn.14005a000
jmp 0x14006048c
movss xmm10, dword [rsp + 0x70]
movss xmm15, dword [rsp + 0x54]
xor r15d, r15d
cmp byte [0x1402a938d], 0
jne 0x1400604a2
cmp byte [0x1402a938b], 0
je 0x140060937
mov rcx, qword [0x1402a8e90]
add rcx, 0x150
call fcn.1400483b0
movaps xmm6, xmm0
mov r13, qword [rbp - 0x68]
lea rcx, [r13 + 0x2f0]
call fcn.1400482d0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
subsd xmm6, xmm1
movsd xmm7, qword [0x1401b6830]
comisd xmm7, xmm6
setae al
test al, al
je 0x1400604fd
movups xmm0, xmmword [0x1402a86f0]
movups xmmword [rbp + 0x1b0], xmm0
lea rcx, [rbp + 0x1b0]
jmp 0x140060512
movups xmm0, xmmword [0x1402a8700]
movups xmmword [rbp + 0x190], xmm0
lea rcx, [rbp + 0x190]
call fcn.14000a040
movzx ecx, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x618], xmm0
mov ecx, eax
shr ecx, 8
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x61c], xmm0
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x620], xmm0
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm12
movss dword [rbp + 0x624], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x450], xmm0
mov rax, r15
mov qword [rbp + 0x460], rax
mov qword [rbp + 0x468], 0xf
mov byte [rbp + 0x450], 0
mov r15, qword [rbp - 0x78]
cmp byte [0x1402a938d], 0
je 0x1400605e5
mov rdx, r15
lea rcx, [rbp + 0x550]
call fcn.14004ecd0
mov rdx, rax
lea rcx, [rbp + 0x450]
call fcn.140049510
lea rcx, [rbp + 0x550]
call fcn.1400020d0
mov rax, qword [rbp + 0x460]
cmp byte [0x1402a938b], 0
je 0x1400606af
test rax, rax
je 0x14006062b
mov byte [rsp + 0x50], 0
lea rax, [rsp + 0x50]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140060610
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x450]
call fcn.14005ad30
mov rdx, r15
lea rcx, [rbp + 0x4a0]
call fcn.14004dd10
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x140060649
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp + 0x450]
call fcn.14005ad30
nop
mov r8, qword [rbp + 0x4b8]
cmp r8, 0xf
jbe 0x140060679
mov rdx, qword [rbp + 0x4a0]
lea rcx, [rbp + 0x4a0]
call fcn.14005a000
cmp qword [rbp + 0x460], 0
je 0x1400606af
mov byte [rsp + 0x50], 0
lea rax, [rsp + 0x50]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x140060694
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x450]
call fcn.14005ad30
lea rdx, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova rdx, qword [rbp + 0x450]
movss dword [rsp + 0x20], xmm13
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x310]
call fcn.140009050
movss xmm0, dword [rax]
mulss xmm0, xmm15
cvtps2pd xmm0, xmm0
movaps xmm1, xmm14
subsd xmm1, xmm0
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm1
cmp byte [0x1402a9394], 0
je 0x140060893
movdqa xmm0, xmmword [rbp - 0x30]
movups xmmword [rbp + 0x4c0], xmm0
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movaps xmm0, xmm6
movss xmm8, dword [0x1400c0c4c]
subss xmm0, xmm8
movss dword [rbp + 0x78], xmm0
movss dword [rbp + 0x7c], xmm10
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0x78]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movaps xmm0, xmm6
addss xmm0, xmm8
movss dword [rbp + 0x80], xmm0
movss dword [rbp + 0x84], xmm10
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0x80]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movss dword [rbp + 0x88], xmm6
movaps xmm0, xmm10
subss xmm0, xmm8
movss dword [rbp + 0x8c], xmm0
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0x88]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movss dword [rbp + 0x90], xmm6
movaps xmm0, xmm10
addss xmm0, xmm8
movss dword [rbp + 0x94], xmm0
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0x90]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x618]
call fcn.14000a040
movss dword [rbp + 0x98], xmm6
movss dword [rbp + 0x9c], xmm10
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0x98]
mov rcx, r12
call fcn.140024e00
addss xmm10, dword [0x1400befe0]
mov rdx, qword [rbp + 0x468]
cmp rdx, 0xf
jbe 0x140060943
inc rdx
mov rcx, qword [rbp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140060930
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006270e
call fcn.1400baeac
jmp 0x140060943
movsd xmm7, qword [0x1401b6830]
mov r13, qword [rbp - 0x68]
cmp byte [0x1402a9374], 0
je 0x140060aa1
cmp qword [0x1402a8ec0], 0
je 0x140060aa1
cmp byte [0x1402a93d8], 0
jne 0x140060aa1
lea rcx, [0x1401b5f58]
call fcn.140020980
mov rcx, qword [0x1402a8ec0]
add rcx, 0x10
call fcn.140048650
lea rcx, [rax + 0x110]
call fcn.140048650
lea rcx, [rax + 0x310]
call fcn.140048650
lea rcx, [rax + 0x508]
call fcn.140048650
lea r15, [rax + 0x338]
xorps xmm0, xmm0
movups xmmword [rbp + 0x5c0], xmm0
mov rcx, r15
call fcn.14005c450
test al, al
je 0x1400609dd
mov r8d, 0x10
lea rdx, [rbp + 0x5c0]
mov rcx, r15
call fcn.1400630e0
mov rdx, qword [rbp + 0x5c0]
add rdx, 0x1e0
lea rcx, [rbp + 0x640]
call fcn.140048490
mov r15, qword [rbp + 0x5c0]
movups xmm0, xmmword [rbp + 0x640]
movaps xmmword [rbp + 0x550], xmm0
movups xmm1, xmmword [rbp + 0x650]
movaps xmmword [rbp + 0x560], xmm1
movups xmm0, xmmword [rbp + 0x660]
movaps xmmword [rbp + 0x570], xmm0
movups xmm1, xmmword [rbp + 0x670]
movaps xmmword [rbp + 0x580], xmm1
movups xmm0, xmmword [rbp + 0x340]
movaps xmmword [rbp + 0x590], xmm0
movups xmm0, xmmword [rbp + 0x690]
movsd xmm1, qword [rbp + 0x278]
movsd xmm0, xmm1
movups xmmword [rbp + 0x690], xmm0
movaps xmmword [rbp + 0x5a0], xmm0
lea rcx, [r15 + 0x1e0]
call fcn.14005c450
test al, al
je 0x140060a8e
mov r8d, 0x60
lea rdx, [rbp + 0x550]
lea rcx, [r15 + 0x1e0]
call fcn.1400650f0
mov byte [0x1402a93d8], 1
lea rcx, [0x1401b5f58]
call fcn.140020980
cmp byte [0x1402a937b], 0
je 0x140060bdb
cmp qword [0x1402a8ec0], 0
je 0x140060c49
lea rcx, [rbp + 0x878]
mov r12, qword [rcx]
xor eax, eax
mov qword [rcx], rax
mov rcx, qword [0x1402a8ec0]
add rcx, qword [0x1401e1258]
call fcn.140048650
lea r15, [rax + 0x338]
cmp byte [0x1402a917a], 0
jne 0x140060b30
mov byte [0x1402a917a], 1
mov rdx, r15
lea rcx, [rbp + 0x4a0]
call fcn.1400485e0
movsd xmm0, qword [rax]
movsd qword [0x1402a9338], xmm0
movsd xmm1, qword [rax + 8]
movsd qword [0x1402a9340], xmm1
movsd xmm0, qword [rax + 0x10]
movsd qword [0x1402a9348], xmm0
cvtpd2ps xmm2, xmm1
jmp 0x140060b38
movss xmm2, dword [0x1402a8738]
addss xmm2, dword [0x1402a8734]
movss dword [0x1402a8738], xmm2
mov rdx, r15
lea rcx, [rbp + 0x450]
call fcn.1400485e0
movss xmm1, dword [0x1402a8738]
cvtps2pd xmm1, xmm1
movsd xmm0, qword [rbp + 0x450]
movsd qword [rbp + 0x480], xmm0
movsd qword [rbp + 0x488], xmm1
movsd xmm1, qword [rbp + 0x460]
movsd qword [rbp + 0x490], xmm1
test r15, r15
je 0x140060bcf
movabs rax, 0xcccccccccccccccc
cmp r15, rax
je 0x140060bcf
cmp r15, 0xffffffffffffffff
je 0x140060bcf
lea rax, [r15 - 0x400001]
movabs rcx, 0x7fffffffffbffffe
cmp rax, rcx
ja 0x140060bcf
mov r8d, 0x18
lea rdx, [rbp + 0x480]
mov rcx, r15
call fcn.1400650f0
lea rax, [rbp + 0x878]
mov qword [rax], r12
jmp 0x140060c49
mov rcx, qword [0x1402a8ec0]
test rcx, rcx
je 0x140060c49
add rcx, qword [0x1401e1258]
call fcn.140048650
cmp byte [0x1402a917a], 0
je 0x140060c49
mov byte [0x1402a917a], 0
movups xmm0, xmmword [0x1402a9338]
movaps xmmword [rbp + 0x450], xmm0
movsd xmm1, qword [0x1402a9348]
movsd qword [rbp + 0x460], xmm1
lea r15, [rax + 0x338]
mov rcx, r15
call fcn.14005c450
test al, al
je 0x140060c49
mov r8d, 0x18
lea rdx, [rbp + 0x450]
mov rcx, r15
call fcn.1400650f0
cmp byte [0x1402a9386], 0
je 0x140061050
mov qword [rbp + 0xa0], 0
mov dword [rbp + 0xa8], 0x41200000
mov dword [rbp + 0xac], 0x42700000
lea r8, [rbp + 0xa0]
xor edx, edx
lea rcx, [rbp + 0xa8]
call fcn.14001aee0
mov dword [rbp + 0xb0], 0x437a0000
mov dword [rbp + 0xb4], 0x437a0000
xor edx, edx
lea rcx, [rbp + 0xb0]
call fcn.14001af20
mov rax, qword [0x1401b5f38]
mov qword [rsp + 0x78], rax
cmp byte [0x1401b5f3f], 0
je 0x140060df2
xor eax, eax
mov r8d, eax
cmp dword [rbp - 0x7c], 2
jl 0x140060dba
movdqa xmm2, xmmword [rbp + 0x150]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
movdqa xmm3, xmmword [rbp + 0x160]
pmuldq xmm1, xmm3
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [rbp + 0x170]
psubd xmm2, xmm0
andps xmm2, xmmword [rbp + 0x180]
packuswb xmm2, xmm2
packuswb xmm2, xmm2
mov eax, dword [rbp + 0x5e0]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x78]
xorps xmm2, xmm1
movd dword [rsp + 0x78], xmm2
movdqa xmm2, xmmword [rbp + 0x5d0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [rbp + 0x170]
psubd xmm2, xmm0
andps xmm2, xmmword [rbp + 0x180]
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x7c]
xorps xmm2, xmm1
movd dword [rsp + 0x7c], xmm2
jmp 0x140060df2
lea r9, [rsp + 0x78]
nop
mov eax, 0x3521cfb3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x32
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x140060dc0
xor edx, edx
mov r8d, 0x1b
lea rcx, [rsp + 0x78]
call fcn.140005a20
xor eax, eax
mov dword [rsp + 0x70], eax
movups xmm0, xmmword [rbp + 0x240]
movaps xmmword [rbp + 0x450], xmm0
movsd xmm1, qword [rbp + 0x270]
movsd qword [rbp + 0x460], xmm1
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x5c]
lea rcx, [rbp + 0x450]
call fcn.140062f20
call fcn.14000e090
mov r15, rax
movdqa xmm0, xmmword [rbp + 0x320]
movups xmmword [rbp + 0x2f0], xmm0
lea rcx, [rbp + 0x2f0]
call fcn.14000a040
movd xmm1, dword [rsp + 0x70]
cvtdq2ps xmm1, xmm1
movd xmm0, dword [rbp - 0x5c]
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xb8], xmm0
movss dword [rbp + 0xbc], xmm1
mov dword [rsp + 0x20], 0x40
mov r9d, eax
movss xmm6, dword [0x1400c0c4c]
movaps xmm2, xmm6
lea rdx, [rbp + 0xb8]
mov rcx, r15
call fcn.140020fb0
lea rcx, [rbp + 0x440]
call fcn.14000e0e0
lea rcx, [rbp + 0x430]
call fcn.14000e100
call fcn.14000e090
mov r15, rax
movdqa xmm8, xmmword [rbp + 0x2e0]
movups xmmword [rbp + 0x2d0], xmm8
lea rcx, [rbp + 0x2d0]
call fcn.14000a040
movss xmm1, dword [rbp + 0x434]
movss xmm2, dword [rbp + 0x444]
addss xmm1, xmm2
movss xmm0, dword [rbp + 0x430]
mulss xmm0, xmm15
addss xmm0, dword [rbp + 0x440]
movss dword [rbp + 0xc0], xmm0
movss dword [rbp + 0xc4], xmm1
movss dword [rbp + 0xc8], xmm0
movss dword [rbp + 0xcc], xmm2
movss dword [rsp + 0x20], xmm11
mov r9d, eax
lea r8, [rbp + 0xc0]
lea rdx, [rbp + 0xc8]
mov rcx, r15
call fcn.140022480
call fcn.14000e090
mov r15, rax
movups xmmword [rbp + 0x3c0], xmm8
lea rcx, [rbp + 0x3c0]
call fcn.14000a040
movss xmm2, dword [rbp + 0x434]
mulss xmm2, xmm15
addss xmm2, dword [rbp + 0x444]
movss xmm0, dword [rbp + 0x430]
movss xmm1, dword [rbp + 0x440]
addss xmm0, xmm1
movss dword [rbp + 0xd0], xmm0
movss dword [rbp + 0xd4], xmm2
movss dword [rbp + 0xd8], xmm1
movss dword [rbp + 0xdc], xmm2
movss dword [rsp + 0x20], xmm11
mov r9d, eax
lea r8, [rbp + 0xd0]
lea rdx, [rbp + 0xd8]
mov rcx, r15
call fcn.140022480
call fcn.14000e090
mov r15, rax
movdqa xmm0, xmmword [rbp + 0x290]
movups xmmword [rbp + 0x4f0], xmm0
lea rcx, [rbp + 0x4f0]
call fcn.14000a040
movss xmm1, dword [rbp + 0x434]
mulss xmm1, xmm15
addss xmm1, dword [rbp + 0x444]
movss xmm0, dword [rbp + 0x430]
mulss xmm0, xmm15
addss xmm0, dword [rbp + 0x440]
movss dword [rbp + 0xe0], xmm0
movss dword [rbp + 0xe4], xmm1
mov dword [rsp + 0x20], 0x40
mov r9d, eax
movaps xmm2, xmm6
lea rdx, [rbp + 0xe0]
mov rcx, r15
call fcn.140020fb0
call fcn.14000b090
cmp byte [0x1402a9397], 0
je 0x1400611f1
mov rcx, qword [0x1402a8e90]
add rcx, 0x150
call fcn.1400483b0
movaps xmm6, xmm0
lea rcx, [r13 + 0x2f0]
call fcn.1400482d0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
subsd xmm6, xmm1
comisd xmm7, xmm6
setae r15b
test r15b, r15b
je 0x1400610b9
movss xmm0, dword [0x1402a86fc]
movss xmm1, dword [0x1402a86f8]
movss xmm2, dword [0x1402a86f4]
movss xmm3, dword [0x1402a86f0]
jmp 0x1400610d9
movss xmm0, dword [0x1402a870c]
movss xmm1, dword [0x1402a8708]
movss xmm2, dword [0x1402a8704]
movss xmm3, dword [0x1402a8700]
movss dword [rbp + 0x1c0], xmm3
movss dword [rbp + 0x1c4], xmm2
movss dword [rbp + 0x1c8], xmm1
movss dword [rbp + 0x1cc], xmm0
lea rcx, [rbp + 0x1c0]
call fcn.14000a040
movzx ecx, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x628], xmm0
mov ecx, eax
shr ecx, 8
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x62c], xmm0
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x630], xmm0
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm12
movss dword [rbp + 0x634], xmm0
lea rcx, [rbp + 0x628]
call fcn.14000a040
mov dword [rsp + 0x78], eax
movss xmm13, dword [rsp + 0x64]
cvttss2si r9d, xmm13
movss xmm7, dword [rsp + 0x6c]
cvttss2si r8d, xmm7
movaps xmm0, xmm13
mulss xmm0, xmm15
cvtps2pd xmm1, xmm0
movsd xmm8, qword [rbp + 0x438]
movaps xmm2, xmm8
subsd xmm2, xmm1
cvttsd2si edx, xmm2
movaps xmm0, xmm7
mulss xmm0, xmm15
cvtps2pd xmm1, xmm0
movaps xmm2, xmm9
subsd xmm2, xmm1
cvttsd2si ecx, xmm2
mov byte [rsp + 0x38], r15b
mov byte [rsp + 0x30], 0
mov dword [rsp + 0x28], 1
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
call fcn.140049ab0
jmp 0x140061207
movss xmm7, dword [rsp + 0x6c]
movsd xmm8, qword [rbp + 0x438]
movss xmm13, dword [rsp + 0x64]
cmp byte [0x1402a9396], 0
je 0x14006135d
mov rcx, qword [0x1402a8e90]
add rcx, 0x150
call fcn.1400483b0
movaps xmm6, xmm0
lea rcx, [r13 + 0x2f0]
call fcn.1400482d0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
subsd xmm6, xmm1
movsd xmm0, qword [0x1401b6830]
comisd xmm0, xmm6
setae r15b
test r15b, r15b
je 0x140061278
movss xmm0, dword [0x1402a86fc]
movss xmm1, dword [0x1402a86f8]
movss xmm2, dword [0x1402a86f4]
movss xmm3, dword [0x1402a86f0]
jmp 0x140061298
movss xmm0, dword [0x1402a870c]
movss xmm1, dword [0x1402a8708]
movss xmm2, dword [0x1402a8704]
movss xmm3, dword [0x1402a8700]
movss dword [rbp + 0x1d0], xmm3
movss dword [rbp + 0x1d4], xmm2
movss dword [rbp + 0x1d8], xmm1
movss dword [rbp + 0x1dc], xmm0
lea rcx, [rbp + 0x1d0]
call fcn.14000a040
movzx ecx, al
xorps xmm3, xmm3
cvtsi2ss xmm3, rcx
mulss xmm3, xmm12
mov ecx, eax
shr ecx, 8
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xorps xmm1, xmm1
cvtsi2ss xmm1, rcx
mulss xmm1, xmm12
shr eax, 0x18
xorps xmm2, xmm2
cvtsi2ss xmm2, rax
mulss xmm2, xmm12
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 [rbp + 0x4c0], xmm3
movdqa xmmword [rbp + 0x240], xmm3
mov byte [rsp + 0x20], r15b
movzx r9d, byte [0x1402a9399]
lea r8, [rbp + 0x240]
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 8]
call fcn.14005b470
cmp byte [0x1402a9384], 0
je 0x1400614e4
mov rcx, qword [0x1402a8e90]
add rcx, 0x150
call fcn.1400483b0
movaps xmm6, xmm0
lea rcx, [r13 + 0x2f0]
call fcn.1400482d0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
subsd xmm6, xmm1
movsd xmm0, qword [0x1401b6830]
comisd xmm0, xmm6
setae r15b
test r15b, r15b
je 0x1400613ce
movss xmm0, dword [0x1402a86fc]
movss xmm1, dword [0x1402a86f8]
movss xmm2, dword [0x1402a86f4]
movss xmm3, dword [0x1402a86f0]
jmp 0x1400613ee
movss xmm0, dword [0x1402a870c]
movss xmm1, dword [0x1402a8708]
movss xmm2, dword [0x1402a8704]
movss xmm3, dword [0x1402a8700]
movss dword [rbp + 0x1e0], xmm3
movss dword [rbp + 0x1e4], xmm2
movss dword [rbp + 0x1e8], xmm1
movss dword [rbp + 0x1ec], xmm0
lea rcx, [rbp + 0x1e0]
call fcn.14000a040
movzx ecx, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x1f0], xmm0
mov ecx, eax
shr ecx, 8
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x1f4], xmm0
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x1f8], xmm0
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm12
movss dword [rbp + 0x1fc], xmm0
cvttss2si r9d, xmm13
cvttss2si r8d, xmm7
mulss xmm13, xmm15
cvtps2pd xmm0, xmm13
subsd xmm8, xmm0
cvttsd2si edx, xmm8
mulss xmm7, xmm15
cvtps2pd xmm0, xmm7
subsd xmm9, xmm0
cvttsd2si ecx, xmm9
movss xmm0, dword [0x1400befcc]
movss dword [rsp + 0x40], xmm0
mov byte [rsp + 0x38], r15b
mov byte [rsp + 0x30], 0
mov dword [rsp + 0x28], 1
lea rax, [rbp + 0x1f0]
mov qword [rsp + 0x20], rax
call fcn.14004d050
cmp byte [0x1402a9388], 0
je 0x140061ae2
mov rcx, qword [0x1402a8e90]
add rcx, 0x150
call fcn.1400483b0
movaps xmm6, xmm0
lea rcx, [r13 + 0x2f0]
call fcn.1400482d0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
subsd xmm6, xmm1
movsd xmm9, qword [0x1401b6830]
comisd xmm9, xmm6
setae al
test al, al
je 0x14006154a
movups xmm0, xmmword [0x1402a86f0]
movups xmmword [rbp + 0x200], xmm0
lea rcx, [rbp + 0x200]
jmp 0x14006155f
movups xmm0, xmmword [0x1402a8700]
movups xmmword [rbp + 0x210], xmm0
lea rcx, [rbp + 0x210]
call fcn.14000a040
movzx ecx, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x608], xmm0
mov ecx, eax
shr ecx, 8
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x60c], xmm0
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x610], xmm0
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm12
movss dword [rbp + 0x614], xmm0
cvttss2si edx, dword [rbp - 0x80]
lea rcx, [rbp + 0x480]
call fcn.140064840
mov r15, rax
mov rcx, qword [rax + 0x10]
mov rdx, qword [rax + 0x18]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x140061685
lea r8, [rcx + 1]
mov qword [r15 + 0x10], r8
mov r12, r15
cmp rdx, 0xf
jbe 0x14006160e
mov r12, qword [r15]
lea rax, [0x1401b5f69]
cmp rax, r12
jbe 0x14006163e
lea rax, [r12 + rcx]
lea rcx, [0x1401b5f68]
cmp rcx, rax
ja 0x14006163e
cmp r12, rcx
ja 0x140061636
xor eax, eax
mov r13d, eax
jmp 0x140061644
mov r13, r12
sub r13, rcx
jmp 0x140061644
mov r13d, 1
lea rcx, [r12 + 1]
mov rdx, r12
call sub.VCRUNTIME140.dll_memmove
mov r8, r13
lea rdx, [0x1401b5f68]
mov rcx, r12
call sub.VCRUNTIME140.dll_memcpy
mov r8d, 1
sub r8, r13
lea rdx, [0x1401b5f69]
add rdx, r13
lea rcx, [r12 + r13]
call sub.VCRUNTIME140.dll_memcpy
mov r13, qword [rbp - 0x68]
jmp 0x1400616b1
mov qword [rsp + 0x28], 1
lea rax, [0x1401b5f68]
mov qword [rsp + 0x20], rax
xor r9d, r9d
movzx r8d, dil
mov edx, 1
mov rcx, r15
call fcn.140047950
mov r15, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x4a0], xmm0
xor r12d, r12d
mov qword [rbp + 0x4b0], r12
mov qword [rbp + 0x4b8], r12
movups xmm0, xmmword [r15]
movups xmmword [rbp + 0x4a0], xmm0
movups xmm1, xmmword [r15 + 0x10]
movups xmmword [rbp + 0x4b0], xmm1
mov qword [r15 + 0x10], r12
mov qword [r15 + 0x18], 0xf
mov byte [r15], r12b
mov rcx, qword [rbp + 0x4b0]
mov rdx, qword [rbp + 0x4b8]
mov rax, rdx
sub rax, rcx
cmp rax, 3
jb 0x14006174f
lea rax, [rcx + 3]
mov qword [rbp + 0x4b0], rax
lea r15, [rbp + 0x4a0]
cmp rdx, 0xf
cmova r15, qword [rbp + 0x4a0]
add r15, rcx
mov r8d, 3
lea rdx, [0x1401b5f64]
mov rcx, r15
call sub.VCRUNTIME140.dll_memmove
mov byte [r15 + 3], r12b
lea rax, [rbp + 0x4a0]
jmp 0x140061774
mov qword [rsp + 0x20], 3
lea r9, [0x1401b5f64]
movzx r8d, bl
mov edx, 3
lea rcx, [rbp + 0x4a0]
call fcn.1400019e0
xorps xmm0, xmm0
movups xmmword [rbp + 0x450], xmm0
mov qword [rbp + 0x460], r12
mov qword [rbp + 0x468], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x450], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x460], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp + 0x4b8]
cmp rdx, 0xf
jbe 0x1400617f1
inc rdx
mov rcx, qword [rbp + 0x4a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400617ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140062715
call fcn.1400baeac
mov qword [rbp + 0x4b0], r12
mov qword [rbp + 0x4b8], 0xf
mov byte [rbp + 0x4a0], 0
mov rdx, qword [rbp + 0x498]
cmp rdx, 0xf
jbe 0x14006184b
inc rdx
mov rcx, qword [rbp + 0x480]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140061846
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006271c
call fcn.1400baeac
mov qword [rbp + 0x490], r12
mov qword [rbp + 0x498], 0xf
mov byte [rbp + 0x480], 0
lea rdx, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova rdx, qword [rbp + 0x450]
movss xmm13, dword [0x1400beffc]
movss dword [rsp + 0x20], xmm13
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x2b8]
call fcn.140009050
movss xmm0, dword [rax]
mulss xmm0, xmm15
cvtps2pd xmm0, xmm0
movaps xmm1, xmm14
subsd xmm1, xmm0
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm1
cmp byte [0x1402a9394], 0
je 0x140061a59
movdqa xmm0, xmmword [rbp - 0x30]
movups xmmword [rbp + 0x4c0], xmm0
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movaps xmm0, xmm6
subss xmm0, xmm11
movss dword [rbp + 0xe8], xmm0
movss xmm8, dword [rbp - 0x70]
movss dword [rbp + 0xec], xmm8
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0xe8]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movaps xmm0, xmm6
addss xmm0, xmm11
movss dword [rbp + 0xf0], xmm0
movss dword [rbp + 0xf4], xmm8
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0xf0]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movss dword [rbp + 0xf8], xmm6
movaps xmm0, xmm8
subss xmm0, xmm11
movss dword [rbp + 0xfc], xmm0
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0xf8]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movss dword [rbp + 0x100], xmm6
movaps xmm0, xmm8
addss xmm0, xmm11
movss dword [rbp + 0x104], xmm0
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0x100]
mov rcx, r12
call fcn.140024e00
jmp 0x140061a5f
movss xmm8, dword [rbp - 0x70]
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x608]
call fcn.14000a040
movss dword [rbp + 0x108], xmm6
movss dword [rbp + 0x10c], xmm8
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0x108]
mov rcx, r12
call fcn.140024e00
addss xmm8, dword [0x1400befe0]
mov r8, qword [rbp + 0x468]
cmp r8, 0xf
jbe 0x140061afa
mov rdx, qword [rbp + 0x450]
lea rcx, [rbp + 0x450]
call fcn.14005a000
jmp 0x140061afa
movss xmm8, dword [rbp - 0x70]
movsd xmm9, qword [0x1401b6830]
movss xmm13, dword [0x1400beffc]
cmp byte [0x1402a9393], 0
je 0x140061eae
mov rdx, qword [rbp + 0x470]
lea rcx, [rbp + 0x450]
call fcn.14004f080
nop
cmp qword [rbp + 0x460], 0
jne 0x140061b81
mov eax, dword [0x1401b5f40]
mov dword [rsp + 0x5c], eax
movzx eax, word [0x1401b5f44]
mov word [rsp + 0x60], ax
mov byte [rsp + 0x5c], 0x48
xor byte [rsp + 0x5d], 0x33
xor byte [rsp + 0x5e], 0x34
xor byte [rsp + 0x5f], 0x35
xor al, 0x36
mov byte [rsp + 0x60], al
xor byte [rsp + 0x61], 0x37
lea rax, [rsp + 0x5c]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x140061b66
lea rdx, [rsp + 0x5c]
lea rcx, [rbp + 0x450]
call fcn.14005adc0
lea rdx, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova rdx, qword [rbp + 0x450]
movss dword [rsp + 0x20], xmm13
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x330]
call fcn.140009050
movss xmm0, dword [rax]
mulss xmm0, xmm15
cvtps2pd xmm0, xmm0
movaps xmm1, xmm14
subsd xmm1, xmm0
xorps xmm7, xmm7
cvtsd2ss xmm7, xmm1
mov rcx, qword [0x1402a8e90]
add rcx, 0x150
call fcn.1400483b0
movaps xmm6, xmm0
lea rcx, [r13 + 0x2f0]
call fcn.1400482d0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
subsd xmm6, xmm1
comisd xmm9, xmm6
setae al
test al, al
je 0x140061c1c
movups xmm0, xmmword [0x1402a86f0]
movups xmmword [rbp + 0x220], xmm0
lea rcx, [rbp + 0x220]
jmp 0x140061c31
movups xmm0, xmmword [0x1402a8700]
movups xmmword [rbp + 0x230], xmm0
lea rcx, [rbp + 0x230]
call fcn.14000a040
movzx ecx, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x5f8], xmm0
mov ecx, eax
shr ecx, 8
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x5fc], xmm0
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x600], xmm0
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm12
movss dword [rbp + 0x604], xmm0
cmp byte [0x1402a9394], 0
je 0x140061e39
movdqa xmm0, xmmword [rbp - 0x30]
movups xmmword [rbp + 0x4c0], xmm0
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movaps xmm0, xmm7
subss xmm0, xmm11
movss dword [rbp + 0x110], xmm0
movss dword [rbp + 0x114], xmm10
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0x110]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movaps xmm0, xmm7
addss xmm0, xmm11
movss dword [rbp + 0x118], xmm0
movss dword [rbp + 0x11c], xmm10
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0x118]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movss dword [rbp + 0x120], xmm7
movaps xmm0, xmm10
subss xmm0, xmm11
movss dword [rbp + 0x124], xmm0
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0x120]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movss dword [rbp + 0x128], xmm7
movaps xmm0, xmm10
addss xmm0, xmm11
movss dword [rbp + 0x12c], xmm0
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0x128]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x5f8]
call fcn.14000a040
movss dword [rbp - 0x20], xmm7
movss dword [rbp - 0x1c], xmm10
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov r9, r15
mov r8d, eax
lea rdx, [rbp - 0x20]
mov rcx, r12
call fcn.140024e00
call fcn.14000d460
nop
mov r8, qword [rbp + 0x468]
cmp r8, 0xf
jbe 0x140061eae
mov rdx, qword [rbp + 0x450]
lea rcx, [rbp + 0x450]
call fcn.14005a000
mov rcx, qword [0x1402a8ec0]
add rcx, 0x2a10
call fcn.140048650
cmp byte [0x1402a9389], 0
jne 0x140061ed7
cmp byte [0x1402a938a], 0
je 0x140062688
mov rcx, qword [0x1402a8e90]
add rcx, 0x150
call fcn.1400483b0
movaps xmm6, xmm0
lea rcx, [r13 + 0x2f0]
call fcn.1400482d0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
subsd xmm6, xmm1
comisd xmm9, xmm6
setae al
test al, al
je 0x140061f27
movups xmm0, xmmword [0x1402a86f0]
movups xmmword [rbp + 0x130], xmm0
lea rcx, [rbp + 0x130]
jmp 0x140061f3c
movups xmm0, xmmword [0x1402a8700]
movups xmmword [rbp + 0x140], xmm0
lea rcx, [rbp + 0x140]
call fcn.14000a040
movzx ecx, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x510], xmm0
mov ecx, eax
shr ecx, 8
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x514], xmm0
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm12
movss dword [rbp + 0x518], xmm0
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm12
movss dword [rbp + 0x51c], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x450], xmm0
xor r12d, r12d
mov eax, r12d
mov qword [rbp + 0x460], rax
mov qword [rbp + 0x468], 0xf
mov byte [rbp + 0x450], al
mov r13, qword [rbp - 0x78]
cmp byte [0x1402a9389], r12b
je 0x1400621f5
mov rcx, qword [0x1401e1320]
add rcx, r13
call fcn.1400481e0
mov edx, eax
lea rcx, [rbp + 8]
call fcn.140064840
mov r15, rax
mov rcx, qword [str.yZXYE_r]
mov qword [rbp + 0x470], rcx
cmp byte [str.9VBPZ_r], r12b
je 0x140062152
mov r8d, r12d
cmp dword [rbp - 0x7c], 2
jl 0x140062117
movdqa xmm2, xmmword [rbp + 0x150]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
movdqa xmm3, xmmword [rbp + 0x160]
pmuldq xmm1, xmm3
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [rbp + 0x170]
psubd xmm2, xmm0
andps xmm2, xmmword [rbp + 0x180]
packuswb xmm2, xmm2
packuswb xmm2, xmm2
mov eax, dword [rbp + 0x5e0]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x470]
xorps xmm2, xmm1
movd dword [rbp + 0x470], xmm2
movdqa xmm2, xmmword [rbp + 0x5d0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [rbp + 0x170]
psubd xmm2, xmm0
andps xmm2, xmmword [rbp + 0x180]
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x474]
xorps xmm2, xmm1
movd dword [rbp + 0x474], xmm2
jmp 0x140062152
lea r9, [rbp + 0x470]
nop
mov eax, 0x3521cfb3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x32
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x140062120
xorps xmm0, xmm0
movups xmmword [rbp + 0x4a0], xmm0
mov qword [rbp + 0x4b0], r12
mov qword [rbp + 0x4b8], r12
lea rax, [rbp + 0x470]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140062180
lea rdx, [rbp + 0x470]
lea rcx, [rbp + 0x4a0]
call fcn.1400018e0
nop
mov r9, r15
lea r8, [rbp + 0x4a0]
movzx edx, sil
lea rcx, [rbp + 0x550]
call fcn.140048aa0
lea rdx, [rbp + 0x550]
lea rcx, [rbp + 0x450]
call fcn.140049510
lea rcx, [rbp + 0x550]
call fcn.1400020d0
nop
lea rcx, [rbp + 0x4a0]
call fcn.1400020d0
nop
lea rcx, [rbp + 8]
call fcn.1400020d0
mov rax, qword [rbp + 0x460]
cmp byte [0x1402a938a], 0
je 0x140062431
test rax, rax
je 0x140062220
mov r8d, 3
lea rdx, [0x1401b5f6c]
lea rcx, [rbp + 0x450]
call fcn.14005ad30
mov rcx, qword [0x1401e1328]
add rcx, r13
call fcn.1400481e0
mov edx, eax
lea rcx, [rbp + 0x550]
call fcn.140064840
mov r15, rax
mov rcx, qword [0x1401b5f50]
mov qword [rbp + 0x470], rcx
cmp byte [str.9Working..._n], 0
je 0x140062392
mov r8d, r12d
cmp dword [rbp - 0x7c], 2
jl 0x140062356
movdqa xmm2, xmmword [rbp + 0x150]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
movdqa xmm3, xmmword [rbp + 0x160]
pmuldq xmm1, xmm3
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [rbp + 0x170]
psubd xmm2, xmm0
andps xmm2, xmmword [rbp + 0x180]
packuswb xmm2, xmm2
packuswb xmm2, xmm2
mov eax, dword [rbp + 0x5e0]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x470]
xorps xmm2, xmm1
movd dword [rbp + 0x470], xmm2
movdqa xmm2, xmmword [rbp + 0x5d0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [rbp + 0x170]
psubd xmm2, xmm0
andps xmm2, xmmword [rbp + 0x180]
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x474]
xorps xmm2, xmm1
movd dword [rbp + 0x474], xmm2
jmp 0x140062392
lea r9, [rbp + 0x470]
nop dword [rax]
mov eax, 0x3521cfb3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x32
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x140062360
xorps xmm0, xmm0
movups xmmword [rbp + 8], xmm0
mov qword [rbp + 0x18], r12
mov qword [rbp + 0x20], r12
lea rax, [rbp + 0x470]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x1400623b0
lea rdx, [rbp + 0x470]
lea rcx, [rbp + 8]
call fcn.1400018e0
nop
mov r9, r15
lea r8, [rbp + 8]
movzx edx, r14b
lea rcx, [rbp + 0x4a0]
call fcn.140048aa0
nop
lea rdx, [rbp + 0x4a0]
cmp qword [rbp + 0x4b8], 0xf
cmova rdx, qword [rbp + 0x4a0]
mov r8, qword [rbp + 0x4b0]
lea rcx, [rbp + 0x450]
call fcn.14005ad30
nop
lea rcx, [rbp + 0x4a0]
call fcn.1400020d0
nop
lea rcx, [rbp + 8]
call fcn.1400020d0
nop
lea rcx, [rbp + 0x550]
call fcn.1400020d0
lea rdx, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova rdx, qword [rbp + 0x450]
movss dword [rsp + 0x20], xmm13
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x338]
call fcn.140009050
movss xmm0, dword [rax]
mulss xmm0, xmm15
cvtps2pd xmm0, xmm0
subsd xmm14, xmm0
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm14
cmp byte [0x1402a9394], 0
je 0x1400625ec
movdqa xmm0, xmmword [rbp - 0x30]
movups xmmword [rbp + 0x4c0], xmm0
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movaps xmm0, xmm6
subss xmm0, xmm11
movss dword [rbp - 0x18], xmm0
movss dword [rbp - 0x14], xmm8
xor r13d, r13d
mov qword [rsp + 0x20], r13
mov r9, r15
mov r8d, eax
lea rdx, [rbp - 0x18]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movaps xmm0, xmm6
addss xmm0, xmm11
movss dword [rbp - 0x10], xmm0
movss dword [rbp - 0xc], xmm8
mov qword [rsp + 0x20], r13
mov r9, r15
mov r8d, eax
lea rdx, [rbp - 0x10]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movss dword [rbp - 8], xmm6
movaps xmm0, xmm8
subss xmm0, xmm11
movss dword [rbp - 4], xmm0
mov qword [rsp + 0x20], r13
mov r9, r15
mov r8d, eax
lea rdx, [rbp - 8]
mov rcx, r12
call fcn.140024e00
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x4c0]
call fcn.14000a040
movss dword [rbp], xmm6
movaps xmm0, xmm8
addss xmm0, xmm11
movss dword [rbp + 4], xmm0
mov qword [rsp + 0x20], r13
mov r9, r15
mov r8d, eax
lea rdx, [rbp]
mov rcx, r12
call fcn.140024e00
jmp 0x1400625ef
xor r13d, r13d
call fcn.14000d170
mov r12, rax
lea r15, [rbp + 0x450]
cmp qword [rbp + 0x468], 0xf
cmova r15, qword [rbp + 0x450]
lea rcx, [rbp + 0x510]
call fcn.14000a040
movss dword [rbp + 0x508], xmm6
movss dword [rbp + 0x50c], xmm8
mov qword [rsp + 0x20], r13
mov r9, r15
mov r8d, eax
lea rdx, [rbp + 0x508]
mov rcx, r12
call fcn.140024e00
nop
mov rdx, qword [rbp + 0x468]
cmp rdx, 0xf
jbe 0x140062688
inc rdx
mov rcx, qword [rbp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140062682
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140062723
call fcn.1400baeac
nop
mov rcx, qword [rbp + 0x520]
test rcx, rcx
je 0x1400626c4
mov rdx, qword [rbp + 0x530]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400626bf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006272a
call fcn.1400baeac
mov r12d, dword [rsp + 0x68]
movsd xmm9, qword [0x1401b6848]
movss xmm7, dword [0x1400c0c4c]
movsd xmm8, qword [0x1401b6840]
movsd xmm6, qword [0x1400c54d0]
mov eax, dword [rbp - 0x60]
inc eax
mov dword [rbp - 0x60], eax
cmp eax, dword [rbp + 0x2c8]
jae 0x140062731
mov rdx, qword [rbp + 0x260]
jmp 0x14005eb30
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rcx, qword [rbp + 0x538]
test rcx, rcx
je 0x140062778
mov rdx, qword [rbp + 0x548]
sub rdx, rcx
and rdx, 0xfffffffffffffff8
mov rax, rcx
cmp rdx, 0x1000
jb 0x140062773
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140062773
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400baeac
mov rcx, qword [rbp + 0x7a0]
xor rcx, rsp
call fcn.1400bae50
lea r11, [rsp + 0x950]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
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 rbp
ret