Function at 0x18008495c
Capabilities:
Open clipboard
Write clipboard data

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1b8]
sub rsp, 0x280
mov rsi, qword [0x1802ce2d0]
mov r13, r9
movaps xmmword [rax - 0x48], xmm6
mov ebx, r8d
movaps xmmword [rax - 0x58], xmm7
mov r15, rdx
movaps xmmword [rax - 0x68], xmm8
mov r9, rcx
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
mov rax, qword [rsi + 0x3ec8]
mov qword [rbp + 0x38], rsi
mov byte [rax + 0xb8], 1
mov r14, qword [rsi + 0x3ec8]
cmp byte [r14 + 0xbb], 0
je 0x180084a03
xor al, al
jmp 0x1800867eb
mov rax, qword [r14 + 0x298]
mov qword [rbp + 0x30], rax
call fcn.180068118
and dword [rsi + 0x4750], 0
mov rcx, r9
movaps xmm15, xmm0
call fcn.180065ba0
mov eax, dword [rsi + 0x5b00]
mov dword [rbp + 0x7c], eax
test eax, eax
jne 0x180084a4b
movsxd rcx, dword [r14 + 0xf0]
mov rax, qword [r14 + 0xf8]
mov ecx, dword [rax + rcx*4 - 4]
mov dword [rsi + 0x5b00], ecx
call fcn.1800682e4
mov edi, ebx
or edi, 0x10
bt ebx, 8
cmovb edi, ebx
test dil, 8
jne 0x180084a6c
mov edx, edi
mov rcx, r15
call fcn.180087500
mov edx, 0x6000000
mov ecx, 0xa900000
test edx, edi
jne 0x180084a8d
mov eax, dword [rsi + 0x5afc]
mov ebx, ecx
test edx, eax
cmovne ebx, eax
and ebx, edx
or ebx, edi
jmp 0x180084a8f
mov ebx, edi
mov edx, 0x18000000
test edx, ebx
jne 0x180084aa7
mov eax, dword [rsi + 0x5afc]
test edx, eax
cmovne ecx, eax
and ecx, edx
or ebx, ecx
mov r8d, 0x10000
test bl, 8
jne 0x180084abd
mov eax, dword [rsi + 0x5afc]
and eax, r8d
or ebx, eax
mov rax, qword [0x1802ce2d0]
mov ecx, ebx
movsd xmm0, qword [r14 + 0x100]
and ecx, 2
movss xmm2, dword [rsi + 0x3848]
mov edx, ebx
movsd qword [rsp + 0x78], xmm0
and edx, 0x10002
movss xmm7, dword [rax + 0x3834]
movss xmm8, dword [rsp + 0x78]
addss xmm7, xmm7
movsd qword [rbp - 0x30], xmm0
movaps xmm0, xmm2
mov dword [rbp + 0x18], ecx
mov dword [rbp + 0x28], edx
addss xmm7, dword [rax + 0x3c28]
xor eax, eax
cmp edx, r8d
mov rdx, r15
sete al
inc eax
movss dword [rbp - 0x50], xmm7
movaps xmm9, xmm7
subss xmm9, dword [0x180183ef4]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm0, xmm9
movss dword [rbp - 0x78], xmm9
mulss xmm1, xmm0
movaps xmm0, xmm8
subss xmm15, xmm1
maxss xmm15, xmm9
addss xmm0, xmm15
movss dword [rbp - 0x58], xmm15
movss dword [rbp + 0x4c], xmm0
addss xmm0, xmm2
movss dword [rbp - 0x48], xmm0
movaps xmm0, xmm9
mulss xmm0, dword [0x180183dc8]
cvttss2si eax, xmm0
movd xmm0, eax
mov eax, ecx
neg eax
lea rcx, [rbp + 0x88]
cvtdq2ps xmm0, xmm0
sbb rax, rax
and rax, 0xfffffffffffffffc
add rax, 0x10
mov r8, rax
mov qword [rbp + 0x58], rax
movss dword [rbp + 0x78], xmm0
call sub.VCRUNTIME140.dll_memcpy
movss xmm11, dword [0x180183e14]
movaps xmm1, xmm15
movss xmm13, dword [rsp + 0x7c]
movaps xmm0, xmm15
mulss xmm0, dword [0x180183da4]
mulss xmm1, xmm11
movss dword [rbp + 0x24], xmm0
movaps xmm6, xmm1
movss dword [rbp - 0x10], xmm1
subss xmm6, xmm0
movaps xmm0, xmm9
mulss xmm0, xmm11
addss xmm0, xmm1
movss dword [rbp + 0x48], xmm6
movaps xmm2, xmm6
addss xmm0, xmm8
movss dword [rbp + 0x1c], xmm0
movss dword [rbp - 0x68], xmm0
movaps xmm0, xmm1
addss xmm0, xmm13
movss dword [rbp + 0x20], xmm0
movss dword [rbp - 0x64], xmm0
movaps xmm0, xmm15
mulss xmm0, dword [0x180183d80]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm2, xmm1
movss dword [rbp + 0x68], xmm2
movss xmm8, dword [r15 + 4]
movaps xmm0, xmm2
mulss xmm0, dword [0x1801840c0]
movaps xmm1, xmm2
mov eax, ebx
and dword [rbp + 0x6c], 0
mulss xmm1, dword [0x1801840cc]
and eax, 0x8000000
mov dword [rsp + 0x70], eax
movss xmm14, dword [r15 + 8]
xorps xmm9, xmm9
movss xmm10, dword [r15]
movss dword [rbp - 0x3c], xmm0
movss dword [rsp + 0x58], xmm0
movss dword [rbp - 8], xmm0
movaps xmm0, xmm2
mulss xmm0, dword [0x180183e50]
movss dword [rbp + 0x50], xmm1
movss dword [rsp + 0x5c], xmm1
movss dword [rbp - 0x40], xmm0
movss dword [rbp - 4], xmm0
movss dword [rsp + 0x6c], xmm10
movss dword [rbp - 0x7c], xmm8
movss dword [rbp - 0x80], xmm8
movss dword [rbp - 0x70], xmm14
movss dword [rsp + 0x68], xmm14
je 0x180084d24
lea rax, [rsp + 0x68]
movaps xmm2, xmm14
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x6c]
lea rax, [rbp - 0x80]
movaps xmm1, xmm8
movaps xmm0, xmm10
mov qword [rsp + 0x20], rax
call fcn.18005be0c
lea r9, [rsp + 0x68]
mov rcx, r15
lea r8, [rbp - 0x80]
lea rdx, [rsp + 0x6c]
call fcn.180083600
movss xmm8, dword [rbp - 0x80]
movss xmm14, dword [rsp + 0x68]
movss xmm10, dword [rsp + 0x6c]
movss dword [rbp - 0x7c], xmm8
movss dword [rbp - 0x70], xmm14
jmp 0x180084d51
bt ebx, 0x1c
jae 0x180084d51
lea rax, [rbp - 0x6c]
movaps xmm2, xmm14
mov qword [rsp + 0x28], rax
lea r9, [rbp - 0x20]
lea rax, [rbp + 0x60]
movaps xmm1, xmm8
movaps xmm0, xmm10
mov qword [rsp + 0x20], rax
call fcn.18005beb4
xor r14b, r14b
mov ecx, 8
mov byte [rsp + 0x50], r14b
mov byte [rsp + 0x52], r14b
mov byte [rsp + 0x51], r14b
call fcn.1800657a8
movss xmm12, dword [0x180183e74]
mov eax, ebx
and eax, 0x4000000
mov dword [rbp + 0x80], eax
je 0x180085133
movaps xmm0, xmm15
movss dword [rbp - 0x1c], xmm15
addss xmm0, dword [rsi + 0x3848]
lea rdx, [rbp - 0x20]
lea rcx, [0x1801838cc]
addss xmm0, dword [rbp - 0x78]
movss dword [rbp - 0x20], xmm0
call fcn.18007b168
mov rdi, qword [0x1802ce2d0]
mov eax, dword [rdi + 0x3f28]
test eax, eax
je 0x180085063
cmp eax, dword [rdi + 0x4764]
jne 0x180085063
movss xmm7, dword [rsi + 0x36f8]
movaps xmm1, xmm6
movss xmm13, dword [rsi + 0x36fc]
subss xmm1, xmm12
subss xmm7, dword [rbp + 0x1c]
subss xmm13, dword [rbp + 0x20]
movss xmm3, dword [rsi + 0xe0c]
subss xmm3, dword [rbp + 0x20]
movss xmm15, dword [rsi + 0xe08]
subss xmm15, dword [rbp + 0x1c]
movaps xmm2, xmm13
mulss xmm1, xmm1
movaps xmm0, xmm7
mulss xmm2, xmm13
mulss xmm0, xmm7
movss dword [rbp - 0x6c], xmm3
addss xmm2, xmm0
comiss xmm2, xmm1
jb 0x180084e85
movss xmm0, dword [rbp - 0x10]
addss xmm0, xmm12
mulss xmm0, xmm0
comiss xmm2, xmm0
ja 0x180084e85
movaps xmm1, xmm15
movaps xmm0, xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2f
movaps xmm10, xmm0
mulss xmm10, dword [0x180183dc0]
comiss xmm10, xmm9
movss dword [rsp + 0x6c], xmm10
jae 0x180084e7d
addss xmm10, xmm12
movss dword [rsp + 0x6c], xmm10
mov r14b, 1
mov byte [rsp + 0x50], r14b
movaps xmm1, xmm10
xorps xmm0, xmm0
mulss xmm1, dword [0x1801840d8]
mov r12b, r14b
mulss xmm1, dword [0x180183efc]
movss xmm0, xmm1
call fcn.1800f9920
movaps xmm6, xmm0
mov byte [rsp + 0x52], r14b
shufps xmm6, xmm0, 1
lea r9, [rbp - 0x20]
movaps xmm1, xmm0
lea r8, [rbp - 8]
movaps xmm2, xmm6
mulss xmm1, xmm13
lea rdx, [rsp + 0x58]
movaps xmm3, xmm6
mulss xmm2, xmm7
lea rcx, [rbp + 0x68]
movaps xmm11, xmm0
mulss xmm3, xmm13
mulss xmm0, xmm7
subss xmm2, xmm1
addss xmm3, xmm0
movss dword [rbp - 0x20], xmm2
movss dword [rbp - 0x1c], xmm3
call fcn.18005b1dc
test al, al
je 0x180085048
movaps xmm7, xmm6
lea r9, [rbp - 0x20]
mulss xmm6, dword [rbp - 0x6c]
lea r8, [rbp - 8]
lea rdx, [rsp + 0x58]
movaps xmm0, xmm11
mulss xmm7, xmm15
lea rcx, [rbp + 0x68]
mulss xmm0, dword [rbp - 0x6c]
mulss xmm11, xmm15
subss xmm7, xmm0
addss xmm6, xmm11
movss dword [rbp - 0x20], xmm7
movss dword [rbp - 0x1c], xmm6
call fcn.18005b1dc
test al, al
jne 0x180084f7d
lea rax, [rbp - 0x20]
lea r9, [rbp - 8]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x58]
lea rdx, [rbp + 0x68]
lea rcx, [rbp + 0x60]
call fcn.18005b2a8
movsd xmm0, qword [rax]
movsd qword [rbp - 0x20], xmm0
movss xmm6, dword [rbp - 0x1c]
movss xmm7, dword [rbp - 0x20]
movss xmm5, dword [rbp - 0x40]
movaps xmm2, xmm12
movss xmm4, dword [rbp + 0x50]
movaps xmm1, xmm5
movss xmm3, dword [rbp - 0x3c]
movaps xmm0, xmm4
subss xmm3, dword [rbp + 0x68]
subss xmm7, dword [rbp + 0x68]
movss xmm8, dword [0x180183d44]
movaps xmm14, xmm12
movss dword [rbp - 0x7c], xmm8
mulss xmm0, xmm3
mulss xmm6, xmm3
mulss xmm1, xmm3
subss xmm1, xmm0
movaps xmm0, xmm5
mulss xmm0, xmm7
subss xmm0, xmm6
divss xmm2, xmm1
mulss xmm0, xmm2
subss xmm14, xmm0
movaps xmm0, xmm4
mulss xmm0, xmm7
comiss xmm14, xmm8
subss xmm6, xmm0
movaps xmm0, xmm14
mulss xmm6, xmm2
subss xmm0, xmm6
jae 0x180085004
movss dword [rbp - 0x70], xmm8
movaps xmm14, xmm8
jmp 0x18008500f
minss xmm14, xmm12
movss dword [rbp - 0x70], xmm14
divss xmm0, xmm14
movss dword [rsp + 0x68], xmm14
comiss xmm0, xmm8
jb 0x180085030
movaps xmm8, xmm0
minss xmm8, xmm12
movss dword [rbp - 0x7c], xmm8
mov r14b, 1
movss dword [rbp - 0x80], xmm8
mov byte [rsp + 0x50], r14b
mov byte [rsp + 0x51], 1
mov byte [rsp + 0x52], r12b
movss xmm13, dword [rsp + 0x7c]
movss xmm7, dword [rbp - 0x50]
movss xmm11, dword [0x180183e14]
movss xmm15, dword [rbp - 0x58]
test bl, 8
jne 0x180085074
call fcn.180069424
mov rdi, qword [0x1802ce2d0]
cmp dword [rbp + 0x28], 0x10000
jne 0x18008534d
mov rax, qword [rdi + 0x3ec8]
lea rdx, [rsp + 0x58]
movss xmm6, dword [rsp + 0x78]
lea rcx, [0x1801838d8]
movaps xmm0, xmm13
movss dword [rsp + 0x58], xmm15
addss xmm0, xmm15
addss xmm0, dword [rsi + 0x384c]
mov byte [rax + 0xb8], 1
mov rax, qword [rdi + 0x3ec8]
movss dword [rax + 0x104], xmm0
movss xmm0, dword [rbp - 0x78]
movss dword [rsp + 0x5c], xmm0
movss dword [rax + 0x100], xmm6
mov byte [rax + 0x141], 1
call fcn.18007b168
mov rdi, qword [0x1802ce2d0]
mov eax, dword [rdi + 0x3f28]
test eax, eax
je 0x18008534d
cmp eax, dword [rdi + 0x4764]
jne 0x18008534d
movss xmm1, dword [rsi + 0xe08]
movaps xmm0, xmm15
subss xmm1, xmm6
subss xmm0, xmm12
divss xmm1, xmm0
comiss xmm1, xmm9
jae 0x180085332
xorps xmm1, xmm1
jmp 0x180085337
bt ebx, 0x19
jae 0x18008506d
lea rdx, [rsp + 0x58]
movss dword [rsp + 0x58], xmm15
lea rcx, [0x1801838d0]
movss dword [rsp + 0x5c], xmm15
call fcn.18007b168
mov r8, qword [0x1802ce2d0]
movaps xmm6, xmm15
subss xmm6, xmm12
mov eax, dword [r8 + 0x3f28]
test eax, eax
je 0x18008525c
cmp eax, dword [r8 + 0x4764]
jne 0x18008525c
movss xmm8, dword [rsi + 0xe08]
movaps xmm1, xmm12
subss xmm8, dword [rsp + 0x78]
divss xmm1, xmm6
mulss xmm8, xmm1
comiss xmm8, xmm9
jae 0x1800851b1
xorps xmm8, xmm8
jmp 0x1800851b6
minss xmm8, xmm12
movss xmm0, dword [rsi + 0xe0c]
subss xmm0, xmm13
movss dword [rbp - 0x7c], xmm8
movss dword [rbp - 0x80], xmm8
mulss xmm0, xmm1
comiss xmm0, xmm9
jae 0x1800851de
xorps xmm0, xmm0
jmp 0x1800851e3
minss xmm0, xmm12
mov eax, dword [r8 + 0x5b00]
movaps xmm14, xmm12
subss xmm14, xmm0
movss dword [rbp - 0x70], xmm14
movss dword [rsp + 0x68], xmm14
cmp dword [r8 + 0x5b04], eax
jne 0x180085254
movss xmm0, dword [r15]
lea rcx, [rsp + 0x58]
movss xmm1, dword [r15 + 4]
and dword [rsp + 0x64], 0
movss dword [rsp + 0x58], xmm0
movss xmm0, dword [r15 + 8]
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x5c], xmm1
call fcn.18005bd68
cmp dword [r8 + 0x5b10], eax
jne 0x180085254
movss xmm10, dword [r8 + 0x5b08]
movss dword [rsp + 0x6c], xmm10
mov r14b, 1
mov byte [rsp + 0x50], r14b
mov byte [rsp + 0x51], r14b
mov r12b, r14b
test bl, 8
jne 0x180085275
call fcn.180069424
mov r8, qword [0x1802ce2d0]
mov rax, qword [r8 + 0x3ec8]
lea rdx, [rsp + 0x58]
movss xmm0, dword [rbp - 0x48]
lea rcx, [0x1801838d4]
movss dword [rsp + 0x5c], xmm15
mov byte [rax + 0xb8], 1
mov rax, qword [r8 + 0x3ec8]
movss dword [rax + 0x100], xmm0
movss xmm0, dword [rbp - 0x78]
movss dword [rsp + 0x58], xmm0
movss dword [rax + 0x104], xmm13
mov byte [rax + 0x141], 1
call fcn.18007b168
mov rdi, qword [0x1802ce2d0]
mov eax, dword [rdi + 0x3f28]
test eax, eax
je 0x180085074
mov byte [rsp + 0x51], r14b
cmp eax, dword [rdi + 0x4764]
jne 0x180085074
movss xmm10, dword [rsi + 0xe0c]
subss xmm10, xmm13
divss xmm10, xmm6
comiss xmm10, xmm9
jae 0x18008530f
xorps xmm10, xmm10
jmp 0x180085314
minss xmm10, xmm12
mov r14b, 1
movss dword [rsp + 0x6c], xmm10
mov byte [rsp + 0x50], r14b
mov byte [rsp + 0x52], 1
mov byte [rsp + 0x51], r12b
jmp 0x180085074
minss xmm1, xmm12
movaps xmm0, xmm12
mov r14b, 1
subss xmm0, xmm1
mov byte [rsp + 0x50], r14b
movss dword [r15 + 0xc], xmm0
movsxd rcx, dword [rdi + 0x4850]
lea eax, [rcx - 1]
mov dword [rdi + 0x4850], eax
mov rax, qword [rdi + 0x4858]
mov ecx, dword [rax + rcx*4 - 8]
mov dword [rdi + 0x4748], ecx
mov edi, ebx
and edi, 0x100
jne 0x18008538d
movss xmm1, dword [rsi + 0x3848]
xorps xmm0, xmm0
call fcn.180067fc4
call fcn.1800682e4
mov r12d, ebx
and r12d, 0x80
jne 0x1800853d1
mov r9, qword [rbp + 0x1c0]
xor edx, edx
mov rcx, r9
call fcn.18005c4ec
mov rdx, rax
cmp r9, rax
je 0x1800853d1
test edi, edi
je 0x1800853c6
movss xmm1, dword [rsi + 0x3848]
xorps xmm0, xmm0
call fcn.180067fc4
xor r8d, r8d
mov rcx, r9
call fcn.18007a30c
test edi, edi
jne 0x18008551c
lea ecx, [rdi + 0x10]
call fcn.1800657a8
cmp dword [rbp + 0x18], edi
je 0x1800853ec
movaps xmm2, xmm12
jmp 0x1800853f2
movss xmm2, dword [r15 + 0xc]
movss xmm0, dword [r15]
movss xmm1, dword [r15 + 4]
movss dword [rbp - 8], xmm0
movss xmm0, dword [r15 + 8]
movss dword [rbp], xmm0
movss dword [rbp - 4], xmm1
movss dword [rbp + 4], xmm2
test r12d, r12d
je 0x180085428
lea rcx, str.Current
call fcn.18007a76c
movaps xmm6, xmm7
lea r9, [rsp + 0x58]
mulss xmm6, dword [0x180183ef4]
addss xmm7, xmm7
mov edi, ebx
lea rdx, [rbp - 8]
and edi, 0x180e0040
lea rcx, str.current
mov r8d, edi
movss dword [rsp + 0x58], xmm6
movss dword [rsp + 0x5c], xmm7
call fcn.180086840
test r13, r13
je 0x1800854ef
lea rcx, str.Original
call fcn.18007a76c
cmp dword [rbp + 0x18], 0
je 0x180085484
movaps xmm2, xmm12
jmp 0x18008548a
movss xmm2, dword [r13 + 0xc]
movss xmm0, dword [r13]
lea r9, [rsp + 0x58]
movss xmm1, dword [r13 + 4]
lea rdx, [rbp - 0x20]
movss dword [rbp - 0x20], xmm0
lea rcx, str.original
movss xmm0, dword [r13 + 8]
mov r8d, edi
movss dword [rbp - 0x18], xmm0
movss dword [rbp - 0x1c], xmm1
movss dword [rbp - 0x14], xmm2
movss dword [rsp + 0x58], xmm6
movss dword [rsp + 0x5c], xmm7
call fcn.180086840
test al, al
je 0x1800854ef
mov r8, qword [rbp + 0x58]
mov rdx, r13
mov rcx, r15
call sub.VCRUNTIME140.dll_memcpy
mov r14b, 1
mov byte [rsp + 0x50], r14b
mov rdx, qword [0x1802ce2d0]
movsxd rcx, dword [rdx + 0x4850]
lea eax, [rcx - 1]
mov dword [rdx + 0x4850], eax
mov rax, qword [rdx + 0x4858]
mov ecx, dword [rax + rcx*4 - 8]
mov dword [rdx + 0x4748], ecx
call fcn.18006840c
movss xmm0, dword [r15]
comiss xmm0, xmm9
jae 0x18008552c
xorps xmm0, xmm0
jmp 0x180085531
minss xmm0, xmm12
movss xmm13, dword [0x180184014]
lea rdi, [r15 + 4]
movss xmm1, dword [rdi]
comiss xmm1, xmm9
mulss xmm0, xmm13
addss xmm0, xmm11
cvttss2si r9d, xmm0
jae 0x18008555c
xorps xmm1, xmm1
jmp 0x180085561
minss xmm1, xmm12
mulss xmm1, xmm13
lea r12, [r15 + 8]
movss xmm0, dword [r12]
comiss xmm0, xmm9
addss xmm1, xmm11
cvttss2si edx, xmm1
jae 0x180085584
xorps xmm0, xmm0
jmp 0x180085589
minss xmm0, xmm12
cmp dword [rbp + 0x18], 0
mulss xmm0, xmm13
addss xmm0, xmm11
cvttss2si ecx, xmm0
jne 0x1800855e7
movss xmm0, dword [r15 + 0xc]
comiss xmm0, xmm9
jae 0x1800855ae
xorps xmm0, xmm0
jmp 0x1800855b3
minss xmm0, xmm12
mulss xmm0, xmm13
lea r8, [0x180183848]
addss xmm0, xmm11
cvttss2si eax, xmm0
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], ecx
lea rcx, [rbp + 0xa0]
mov dword [rsp + 0x20], edx
mov edx, 0x40
call fcn.18005b388
jmp 0x180085607
mov dword [rsp + 0x28], ecx
lea r8, [0x180183860]
mov dword [rsp + 0x20], edx
lea rcx, [rbp + 0xa0]
mov edx, 0x40
call fcn.18005b388
movss xmm0, dword [0x180183f48]
lea rdx, [rsp + 0x58]
mov ecx, 0xe
movss dword [rsp + 0x5c], xmm0
mov dword [rsp + 0x58], 0x40400000
call fcn.18005c3d4
movss xmm7, dword [0x1801840d0]
lea rdx, [rbp + 0xa0]
movss xmm6, dword [rsi + 0x3840]
lea rcx, [rbp - 8]
xor r9d, r9d
movss dword [rsp + 0x20], xmm7
xor r8d, r8d
call fcn.18006086c
movss xmm1, dword [rbp - 0x10]
lea rdx, [rsp + 0x58]
and dword [rsp + 0x5c], 0
lea rcx, str.Copy
mulss xmm6, xmm11
movss xmm0, dword [rax]
mulss xmm0, xmm11
subss xmm1, xmm6
subss xmm1, xmm0
subss xmm1, dword [0x180183f04]
movss dword [rsp + 0x58], xmm1
call fcn.18007aee0
mov r13, qword [rbp + 0x58]
test al, al
je 0x1800856b1
mov r8, r13
lea rcx, [0x1801b3b48]
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
movaps xmm1, xmm7
xorps xmm0, xmm0
call fcn.180067fc4
and dword [rsp + 0x58], 0
lea rcx, [rbp + 0xa0]
and dword [rsp + 0x5c], 0
lea rdx, [rsp + 0x58]
call fcn.18007aee0
test al, al
je 0x180085741
xor ecx, ecx
call qword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x180085741
call qword [sym.imp.USER32.dll_EmptyClipboard]
lea rax, [rbp + 0xa0]
or rdx, 0xffffffffffffffff
inc rdx
cmp byte [rax + rdx], 0
jne 0x1800856f8
inc rdx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov r8, rax
lea rcx, [rbp + 0xa0]
sub r8, rcx
lea rdx, [rbp + 0xa0]
mov cl, byte [rdx]
mov byte [r8 + rdx], cl
inc rdx
test cl, cl
jne 0x180085720
mov rdx, rax
mov ecx, 1
call qword [sym.imp.USER32.dll_SetClipboardData]
call qword [sym.imp.USER32.dll_CloseClipboard]
movaps xmm1, xmm7
movaps xmm0, xmm9
call fcn.180067fc4
movss xmm6, dword [rsi + 0x3840]
lea rcx, [rbp - 8]
xor r9d, r9d
movss dword [rsp + 0x20], xmm7
xor r8d, r8d
lea rdx, [rbp + 0xa0]
call fcn.18006086c
movss xmm7, dword [rbp - 0x10]
lea rdx, [rsp + 0x58]
and dword [rsp + 0x5c], 0
lea rcx, str.Paste
mulss xmm6, xmm11
movaps xmm1, xmm7
movss xmm0, dword [rax]
mulss xmm0, xmm11
subss xmm1, xmm6
subss xmm1, xmm0
subss xmm1, dword [0x180183f04]
movss dword [rsp + 0x58], xmm1
call fcn.18007aee0
test al, al
je 0x1800857d1
mov r8, r13
lea rdx, [0x1801b3b48]
mov rcx, r15
call sub.VCRUNTIME140.dll_memcpy
mov r14b, 1
mov byte [rsp + 0x50], r14b
mov ecx, 1
call fcn.18005c460
xor r13d, r13d
cmp byte [rsp + 0x52], r13b
jne 0x1800857f0
cmp byte [rsp + 0x51], r13b
je 0x180085881
cmp dword [rsp + 0x70], r13d
je 0x18008586b
mov qword [rsp + 0x28], r12
mov r9, r15
movaps xmm2, xmm14
mov qword [rsp + 0x20], rdi
movaps xmm1, xmm8
movaps xmm0, xmm10
call fcn.18005beb4
mov eax, dword [rsi + 0x5b00]
lea rcx, [rsp + 0x58]
and dword [rsp + 0x64], r13d
mov dword [rsi + 0x5b04], eax
movss dword [rsi + 0x5b08], xmm10
movss dword [rsi + 0x5b0c], xmm8
movss xmm0, dword [r15]
movss xmm1, dword [rdi]
movss dword [rsp + 0x58], xmm0
movss xmm0, dword [r12]
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x5c], xmm1
call fcn.18005bd68
mov dword [rsi + 0x5b10], eax
jmp 0x180085881
bt ebx, 0x1c
jae 0x180085881
movss dword [r15], xmm10
movss dword [rdi], xmm8
movss dword [r12], xmm14
movss xmm6, dword [rsp + 0x78]
test bl, 0x20
jne 0x180085a2e
cmp dword [rbp + 0x28], 0x10000
jne 0x18008589e
movaps xmm0, xmm6
jmp 0x1800858a3
movss xmm0, dword [rbp - 0x48]
addss xmm0, dword [rbp - 0x78]
subss xmm0, xmm6
call fcn.180068070
mov r12d, ebx
mov edi, ebx
and r12d, 0x198e001a
bt ebx, 0x14
jb 0x1800858cd
and edi, 0x700000
jne 0x18008590d
jmp 0x1800858d3
and edi, 0x700000
mov r8d, r12d
lea rcx, str.rgb
or r8d, 0x100004
mov rdx, r15
call fcn.1800836a0
test al, al
je 0x18008590d
cmp dword [rsi + 0x3f28], r13d
je 0x180085905
cmp byte [rsi + 0x3f35], r13b
jne 0x180085905
mov r13b, 1
mov r14b, 1
mov byte [rsp + 0x50], r14b
bt ebx, 0x15
jb 0x180085917
test edi, edi
jne 0x180085938
mov r8d, r12d
lea rcx, str.hsv
or r8d, 0x200004
mov rdx, r15
call fcn.1800836a0
or r14b, al
mov byte [rsp + 0x50], r14b
bt ebx, 0x16
jb 0x180085942
test edi, edi
jne 0x180085963
or r12d, 0x400004
lea rcx, str.hex
mov r8d, r12d
mov rdx, r15
call fcn.1800836a0
or r14b, al
mov byte [rsp + 0x50], r14b
mov r8, qword [0x1802ce2d0]
lea r12, [r15 + 8]
lea rdi, [r15 + 4]
mov rax, qword [r8 + 0x3ec8]
mov byte [rax + 0xb8], 1
mov r8, qword [r8 + 0x3ec8]
movsxd rdx, dword [r8 + 0x1c8]
mov rax, qword [r8 + 0x1d0]
mov ecx, dword [rax + rdx*4 - 4]
lea eax, [rdx - 1]
mov dword [r8 + 0x1c8], eax
mov eax, dword [rsp + 0x70]
mov dword [r8 + 0x1c0], ecx
test r13b, r13b
je 0x180085a32
test eax, eax
je 0x180085a32
movss xmm2, dword [r12]
lea rax, [rbp - 0x6c]
movss xmm1, dword [rdi]
lea r9, [rbp - 0x3c]
movss xmm0, dword [r15]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
call fcn.18005be0c
movss xmm0, dword [rbp - 0x3c]
comiss xmm0, xmm9
ja 0x180085a2e
comiss xmm10, xmm9
jbe 0x180085a2e
movss xmm2, dword [rbp - 0x6c]
comiss xmm2, xmm9
ja 0x180085aab
ucomiss xmm14, xmm2
je 0x180085aab
movaps xmm2, xmm14
movaps xmm1, xmm8
mulss xmm2, xmm11
mov qword [rsp + 0x28], r12
mov r9, r15
movaps xmm0, xmm10
mov qword [rsp + 0x20], rdi
call fcn.18005beb4
mov eax, dword [rsp + 0x70]
mov byte [rbp - 0x74], r14b
test r14b, r14b
je 0x180085b11
test eax, eax
je 0x180085ac8
movss xmm2, dword [r12]
lea rax, [rsp + 0x68]
movss xmm1, dword [rdi]
lea r9, [rsp + 0x6c]
movss xmm0, dword [r15]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x20], rax
call fcn.18005be0c
lea r9, [rsp + 0x68]
mov rcx, r15
lea r8, [rbp - 0x80]
lea rdx, [rsp + 0x6c]
call fcn.180083600
movss xmm8, dword [rbp - 0x80]
movss xmm14, dword [rsp + 0x68]
movss xmm10, dword [rsp + 0x6c]
movss dword [rbp - 0x7c], xmm8
movss dword [rbp - 0x70], xmm14
jmp 0x180085b11
movss xmm0, dword [rbp - 0x50]
comiss xmm0, xmm9
ja 0x180085a2e
movaps xmm1, xmm8
mulss xmm1, xmm11
jmp 0x180085a18
bt ebx, 0x1c
jae 0x180085b11
movss xmm8, dword [rdi]
lea rax, [rbp - 0x6c]
movss xmm14, dword [r12]
lea r9, [rbp - 0x20]
movss xmm10, dword [r15]
movaps xmm2, xmm14
mov qword [rsp + 0x28], rax
movaps xmm1, xmm8
lea rax, [rbp + 0x60]
movss dword [rbp - 0x7c], xmm8
movaps xmm0, xmm10
mov qword [rsp + 0x20], rax
movss dword [rbp - 0x70], xmm14
call fcn.18005beb4
movss xmm1, dword [rsi + 0x37f4]
comiss xmm1, xmm9
jae 0x180085b25
movaps xmm0, xmm9
jmp 0x180085b2d
movaps xmm0, xmm1
minss xmm0, xmm12
mulss xmm0, xmm13
lea r9, [rsp + 0x58]
mov dword [rsp + 0x58], 0x3f800000
movss dword [rsp + 0x64], xmm1
movaps xmm2, xmm12
movaps xmm1, xmm12
mov dword [rsp + 0x5c], 0x3f800000
addss xmm0, xmm11
mov dword [rsp + 0x60], 0x3f800000
cvttss2si r12d, xmm0
movaps xmm0, xmm10
shl r12d, 0x18
mov eax, r12d
mov dword [rbp - 0x3c], r12d
or eax, 0xffffff
mov r13d, r12d
mov dword [rsp + 0x68], eax
or r13d, 0xff
mov eax, r12d
mov dword [rbp - 8], r13d
or eax, 0x808080
mov dword [rbp + 0x10], r13d
mov dword [rbp + 0x60], eax
mov edi, r12d
mov eax, r12d
or edi, 0xffff
or eax, 0xff00
mov dword [rbp - 4], edi
mov dword [rbp], eax
mov eax, r12d
or eax, 0xffff00
mov dword [rbp + 4], eax
mov eax, r12d
or eax, 0xff0000
mov dword [rbp + 8], eax
mov eax, r12d
or eax, 0xff00ff
mov dword [rbp - 0x6c], eax
mov dword [rbp + 0xc], eax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x5c]
mov qword [rsp + 0x20], rax
call fcn.18005beb4
lea rcx, [rsp + 0x58]
call fcn.18005bd68
cmp dword [rbp + 0x80], 0
mov r8d, eax
movss dword [rbp - 0x50], xmm9
movaps xmm13, xmm9
movss dword [rbp - 0x4c], xmm9
movaps xmm11, xmm9
mov dword [rbp - 0x20], eax
mov r9d, 4
je 0x1800860d7
movss xmm15, dword [0x180183e14]
lea r14, [rbp - 8]
movss xmm12, dword [rbp + 0x48]
mov eax, 0x2aaaaaab
movss xmm9, dword [rbp + 0x24]
movaps xmm11, xmm12
movss xmm14, dword [rbp + 0x1c]
addss xmm11, xmm7
movss xmm8, dword [rbp + 0x20]
movaps xmm13, xmm15
mov r15d, dword [rbp - 8]
mov esi, dword [rsp + 0x68]
cvttss2si ecx, xmm7
divss xmm13, xmm7
imul ecx
mulss xmm11, xmm15
mov r13d, edx
sar r13d, 1
mov eax, r13d
shr eax, 0x1f
add r13d, eax
cmp r13d, r9d
cmovle r13d, r9d
xor r12d, r12d
mov rbx, qword [rbp + 0x30]
lea rdx, [rbp - 0x68]
movd xmm7, r12d
movaps xmm2, xmm11
cvtdq2ps xmm7, xmm7
mov dword [rsp + 0x28], r13d
mov rcx, rbx
mov edi, dword [rbx + 0x20]
mulss xmm7, dword [0x180183e78]
movaps xmm6, xmm7
addss xmm7, dword [0x180183e78]
subss xmm6, xmm13
addss xmm7, xmm13
movaps xmm3, xmm6
movss dword [rsp + 0x20], xmm7
call fcn.1800723f0
mov r8d, dword [rbx + 0x78]
mov r9d, esi
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
movss dword [rsp + 0x28], xmm9
and dword [rsp + 0x20], 0
call fcn.180070d60
and dword [rbx + 0x78], 0
movaps xmm1, xmm6
movaps xmm2, xmm7
movaps xmm0, xmm1
movaps xmm1, xmm2
call fcn.1800f9963
mov rax, qword [rbp + 0x30]
movaps xmm2, xmm0
shufps xmm2, xmm0, 0xe
movaps xmm1, xmm0
shufps xmm1, xmm0, 1
movaps xmm3, xmm0
movaps xmm0, xmm2
mulss xmm1, xmm12
mov r8d, dword [rax + 0x20]
add r14, 4
shufps xmm0, xmm2, 1
mov edx, edi
mulss xmm0, xmm12
mov rcx, rax
mulss xmm3, xmm12
addss xmm1, xmm14
mov ebx, dword [r14]
mulss xmm2, xmm12
addss xmm0, xmm14
mov dword [rsp + 0x30], ebx
addss xmm3, xmm8
mov dword [rsp + 0x28], r15d
addss xmm2, xmm8
unpcklps xmm1, xmm3
movq r9, xmm1
unpcklps xmm0, xmm2
movsd qword [rsp + 0x20], xmm0
call fcn.180074bf4
inc r12d
mov r15d, ebx
cmp r12d, 6
jl 0x180085c8f
mulss xmm10, dword [0x180183eb8]
xorps xmm0, xmm0
mulss xmm10, dword [0x180183efc]
movss xmm0, xmm10
call fcn.1800f9920
cmp byte [rsp + 0x52], 0
movaps xmm6, xmm0
movss xmm9, dword [rbp + 0x1c]
movaps xmm7, xmm0
movss xmm14, dword [rbp + 0x20]
movss xmm10, dword [rbp + 0x24]
shufps xmm6, xmm0, 1
movss xmm0, dword [rbp + 0x48]
addss xmm0, dword [rbp - 0x10]
movaps xmm1, xmm0
mulss xmm0, xmm7
mulss xmm1, xmm6
mulss xmm0, xmm15
mulss xmm1, xmm15
addss xmm0, xmm14
addss xmm1, xmm9
movss dword [rsp + 0x5c], xmm0
movss dword [rsp + 0x58], xmm1
je 0x180085e15
mulss xmm10, dword [0x180183e20]
jmp 0x180085e1e
mulss xmm10, dword [0x180183e18]
mov r13, qword [rbp + 0x30]
movaps xmm1, xmm10
mov rcx, r13
call fcn.180070688
mov edi, dword [rbp - 0x20]
lea rdx, [rsp + 0x58]
mov r9d, edi
mov dword [rsp + 0x20], eax
movaps xmm2, xmm10
mov rcx, r13
mov ebx, eax
call fcn.180074464
movss xmm12, dword [0x180183e74]
lea rdx, [rsp + 0x58]
mov esi, dword [rbp + 0x60]
movaps xmm2, xmm10
movss dword [rsp + 0x28], xmm12
addss xmm2, xmm12
mov r9d, esi
mov dword [rsp + 0x20], ebx
mov rcx, r13
call fcn.180074388
mov r15d, dword [rsp + 0x68]
lea rdx, [rsp + 0x58]
movss dword [rsp + 0x28], xmm12
mov r9d, r15d
movaps xmm2, xmm10
mov dword [rsp + 0x20], ebx
mov rcx, r13
call fcn.180074388
mov rax, qword [0x1802ce2d0]
movaps xmm2, xmm6
mulss xmm2, dword [rbp + 0x68]
movaps xmm11, xmm6
mov edx, 3
mov rcx, r13
mulss xmm11, dword [rbp + 0x50]
movaps xmm0, xmm7
mov r8d, edx
mulss xmm0, dword [rbp + 0x50]
movaps xmm1, xmm7
mulss xmm1, dword [rbp + 0x68]
movaps xmm10, xmm9
addss xmm10, xmm2
mulss xmm2, dword [0x1801840c0]
movaps xmm15, xmm1
mulss xmm1, dword [0x1801840c0]
movaps xmm13, xmm2
addss xmm15, xmm14
subss xmm13, xmm0
movss xmm0, dword [rbp - 0x40]
mulss xmm6, xmm0
addss xmm11, xmm1
mulss xmm7, xmm0
addss xmm6, xmm1
addss xmm13, xmm9
subss xmm2, xmm7
movss xmm7, dword [rax + 0x3c34]
addss xmm11, xmm14
addss xmm6, xmm14
addss xmm2, xmm9
movaps xmmword [rbp - 0x30], xmm6
movss xmm6, dword [rax + 0x3c30]
movss dword [rbp - 0x40], xmm2
call fcn.1800709e4
movzx eax, word [r13 + 0x34]
movaps xmm0, xmm10
mov rcx, qword [r13 + 0x50]
unpcklps xmm0, xmm15
movsd qword [rbp - 8], xmm0
mov word [rcx], ax
mov rax, qword [r13 + 0x48]
add qword [r13 + 0x50], 2
movsd qword [rax], xmm0
mov rax, qword [r13 + 0x48]
movss dword [rax + 8], xmm6
movss dword [rax + 0xc], xmm7
mov rax, qword [r13 + 0x48]
mov dword [rax + 0x10], edi
add qword [r13 + 0x48], 0x14
inc dword [r13 + 0x34]
mov rcx, qword [r13 + 0x50]
lea r9, [rbp - 0x68]
movzx eax, word [r13 + 0x34]
lea r8, [rsp + 0x58]
movaps xmm1, xmmword [rbp - 0x30]
lea rdx, [rbp - 8]
mov r12d, dword [rbp - 0x3c]
movaps xmm0, xmm13
mov word [rcx], ax
mov rax, qword [r13 + 0x48]
add qword [r13 + 0x50], 2
unpcklps xmm0, xmm11
movsd qword [rsp + 0x58], xmm0
movsd qword [rax], xmm0
mov rax, qword [r13 + 0x48]
movss xmm0, dword [rbp - 0x40]
unpcklps xmm0, xmm1
movsd qword [rbp - 0x68], xmm0
movss dword [rax + 8], xmm6
movss dword [rax + 0xc], xmm7
mov rax, qword [r13 + 0x48]
mov dword [rsp + 0x20], esi
mov dword [rax + 0x10], r12d
add qword [r13 + 0x48], 0x14
mov rcx, qword [r13 + 0x50]
inc dword [r13 + 0x34]
movzx eax, word [r13 + 0x34]
mov word [rcx], ax
mov rcx, r13
mov rax, qword [r13 + 0x48]
add qword [r13 + 0x50], 2
movsd qword [rax], xmm0
mov rax, qword [r13 + 0x48]
movss dword [rax + 8], xmm6
movss dword [rax + 0xc], xmm7
mov rax, qword [r13 + 0x48]
mov dword [rax + 0x10], r15d
add qword [r13 + 0x48], 0x14
inc dword [r13 + 0x34]
call fcn.180074110
movaps xmm0, xmm12
xorps xmm9, xmm9
subss xmm0, dword [rbp - 0x70]
comiss xmm0, xmm9
jae 0x180086052
xorps xmm0, xmm0
jmp 0x180086057
minss xmm0, xmm12
movss xmm8, dword [rbp - 0x7c]
comiss xmm8, xmm9
jae 0x180086069
xorps xmm8, xmm8
jmp 0x18008606e
minss xmm8, xmm12
movaps xmm1, xmmword [rbp - 0x30]
mov r9d, 4
subss xmm10, dword [rbp - 0x40]
mov rsi, qword [rbp + 0x38]
subss xmm15, xmm1
mov r14b, byte [rsp + 0x50]
mov r15, qword [rbp + 0x1c8]
mulss xmm10, xmm8
mulss xmm15, xmm8
addss xmm10, dword [rbp - 0x40]
addss xmm15, xmm1
subss xmm13, xmm10
subss xmm11, xmm15
mulss xmm13, xmm0
mulss xmm11, xmm0
addss xmm13, xmm10
addss xmm11, xmm15
movss dword [rbp - 0x50], xmm13
movss dword [rbp - 0x4c], xmm11
jmp 0x1800864f3
bt ebx, 0x19
jae 0x1800864ef
mov rax, qword [0x1802ce2d0]
lea rcx, [rbp + 0x38]
movss xmm7, dword [rsp + 0x7c]
movss xmm11, dword [rbp + 0x4c]
addss xmm7, xmm15
movss dword [rbp - 0x68], xmm11
movdqu xmm0, xmmword [rax + 0x38f0]
movups xmmword [rbp + 0x38], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37f4]
movss dword [rbp - 0x64], xmm7
movss dword [rbp + 0x44], xmm0
call fcn.18005bd68
mov rbx, qword [rbp + 0x30]
lea rdx, [rsp + 0x78]
mov dword [rsp + 0x48], 0xf0
mov r9d, eax
mov eax, dword [rsp + 0x68]
mov rcx, rbx
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], r8d
mov dword [rsp + 0x28], r8d
lea r8, [rbp - 0x68]
mov dword [rsp + 0x20], eax
call fcn.180073084
mov rax, qword [0x1802ce2d0]
lea rcx, [rbp + 0x38]
movss dword [rbp - 0x68], xmm11
movss dword [rbp - 0x64], xmm7
movdqu xmm0, xmmword [rax + 0x38f0]
movups xmmword [rbp + 0x38], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37f4]
movss dword [rbp + 0x44], xmm0
call fcn.18005bd68
mov dword [rsp + 0x48], 0xf0
lea r8, [rbp - 0x68]
mov dword [rsp + 0x38], r12d
lea rdx, [rsp + 0x78]
mov dword [rsp + 0x30], r12d
mov r9d, eax
and dword [rsp + 0x28], 0
mov rcx, rbx
and dword [rsp + 0x20], 0
call fcn.180073084
movss xmm2, dword [0x180183ef4]
movaps xmm0, xmm11
mov rcx, qword [rbp - 0x30]
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18005cb00
comiss xmm8, xmm9
jae 0x1800861f1
movaps xmm8, xmm9
jmp 0x1800861f6
minss xmm8, xmm12
mulss xmm8, dword [rbp - 0x58]
movaps xmm13, xmm6
movss xmm1, dword [0x180183e14]
movss xmm15, dword [0x180183eb8]
addss xmm8, xmm6
addss xmm13, xmm15
addss xmm8, xmm1
cvttss2si eax, xmm8
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm13
jb 0x180086240
movaps xmm13, xmm11
subss xmm13, xmm15
minss xmm13, xmm0
movaps xmm0, xmm12
movss dword [rbp - 0x50], xmm13
subss xmm0, xmm14
comiss xmm0, xmm9
jae 0x18008625b
movaps xmm0, xmm9
jmp 0x180086260
minss xmm0, xmm12
movss xmm2, dword [rsp + 0x7c]
movss xmm14, dword [rbp - 0x58]
movaps xmm11, xmm2
mulss xmm0, xmm14
addss xmm11, xmm15
addss xmm0, xmm2
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm11
jb 0x1800862a1
movaps xmm11, xmm7
subss xmm11, xmm15
minss xmm11, xmm1
mov rax, qword [0x1802ce2d0]
lea rcx, [rbp - 0x30]
movss xmm12, dword [rbp - 0x48]
movaps xmm6, xmm14
mulss xmm6, dword [0x180183dc4]
movaps xmm8, xmm12
movdqu xmm0, xmmword [rax + 0x38f0]
addss xmm8, dword [rbp - 0x78]
movups xmmword [rbp - 0x30], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37f4]
movss dword [rbp - 0x4c], xmm11
movss dword [rbp - 0x68], xmm8
movss dword [rbp - 0x24], xmm0
movaps xmm0, xmm6
addss xmm0, xmm2
movss dword [rsp + 0x58], xmm12
movss dword [rsp + 0x5c], xmm2
movss dword [rbp - 0x64], xmm0
call fcn.18005bd68
mov dword [rsp + 0x48], 0x30
lea r8, [rbp - 0x68]
mov dword [rsp + 0x38], edi
lea rdx, [rsp + 0x58]
mov dword [rsp + 0x30], edi
mov r9d, eax
mov dword [rsp + 0x28], r13d
mov rcx, rbx
mov dword [rsp + 0x20], r13d
call fcn.180073084
movss dword [rsp + 0x58], xmm12
lea r12, [rbp - 4]
movss xmm12, dword [rsp + 0x7c]
mov eax, 1
movss dword [rbp - 0x68], xmm8
mov r14, rbx
mov r9d, edi
movd xmm1, eax
cvtdq2ps xmm1, xmm1
lea ebx, [rax + 1]
add r12, 4
lea r8, [rbp - 0x68]
mov rcx, r14
lea rdx, [rsp + 0x58]
movd xmm0, ebx
mov edi, dword [r12]
cvtdq2ps xmm0, xmm0
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], r9d
mulss xmm1, xmm6
mulss xmm0, xmm6
addss xmm1, xmm12
addss xmm0, xmm12
movss dword [rsp + 0x5c], xmm1
movss dword [rbp - 0x64], xmm0
call fcn.180072ea4
mov eax, ebx
cmp ebx, 5
jl 0x18008635d
mov rax, qword [0x1802ce2d0]
lea rcx, [rbp - 0x30]
mulss xmm6, dword [0x180183f14]
movss dword [rbp - 0x68], xmm8
movdqu xmm0, xmmword [rax + 0x38f0]
addss xmm6, xmm12
movss dword [rbp - 0x64], xmm7
movups xmmword [rbp - 0x30], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37f4]
movss dword [rsp + 0x5c], xmm6
movss dword [rbp - 0x24], xmm0
movss xmm0, dword [rbp - 0x48]
movss dword [rsp + 0x58], xmm0
call fcn.18005bd68
mov dword [rsp + 0x48], 0xc0
lea r8, [rbp - 0x68]
mov dword [rsp + 0x38], r13d
lea rdx, [rsp + 0x58]
mov dword [rsp + 0x30], r13d
mov r9d, eax
mov eax, dword [rbp - 0x6c]
mov rcx, r14
mov dword [rsp + 0x28], eax
mov r13, r14
mov dword [rsp + 0x20], eax
call fcn.180073084
movss xmm6, dword [rbp - 0x48]
movaps xmm0, xmm8
unpcklps xmm0, xmm7
movaps xmm1, xmm6
movss xmm7, dword [rsp + 0x7c]
movaps xmm2, xmm9
unpcklps xmm1, xmm7
movq rdx, xmm0
movq rcx, xmm1
call fcn.18005cb00
movss xmm4, dword [rbp + 0x78]
mov rcx, r14
movss xmm0, dword [rsi + 0x37f4]
movaps xmm1, xmm4
movss xmm12, dword [0x180183e74]
movss xmm8, dword [rbp - 0x78]
subss xmm6, xmm12
mulss xmm10, xmm14
addss xmm1, xmm12
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm8
addss xmm3, xmm15
addss xmm10, xmm7
movaps xmm0, xmm6
unpcklps xmm1, xmm4
movq r8, xmm1
addss xmm10, dword [0x180183e14]
cvttss2si eax, xmm10
movd xmm2, eax
cvtdq2ps xmm2, xmm2
unpcklps xmm0, xmm2
movq rdx, xmm0
call fcn.1800847b0
mov r14b, byte [rsp + 0x50]
mov r9d, 4
jmp 0x180086505
mov r13, qword [rbp + 0x30]
movss xmm8, dword [rbp - 0x78]
movss xmm7, dword [rsp + 0x7c]
movss xmm14, dword [rbp - 0x58]
movaps xmm0, xmmword [0x180184230]
addss xmm11, xmm12
neg byte [rsp + 0x51]
lea rcx, [rbp - 0x30]
movss dword [rbp - 0x68], xmm13
sbb eax, eax
and eax, 2
add eax, r9d
movss dword [rbp - 0x64], xmm11
movups xmmword [rbp - 0x30], xmm0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
call fcn.18005bd68
lea rdx, [rbp - 0x68]
xor edi, edi
mov r9d, eax
mov rcx, r13
movss dword [rsp + 0x28], xmm12
movaps xmm2, xmm6
mov dword [rsp + 0x20], edi
call fcn.180074388
mov r9d, dword [rsp + 0x68]
lea rdx, [rbp - 0x50]
movss dword [rsp + 0x28], xmm12
movaps xmm2, xmm6
mov rcx, r13
mov dword [rsp + 0x20], edi
call fcn.180074388
cmp dword [rbp + 0x28], 0x10000
jne 0x18008678d
movss xmm0, dword [r15 + 0xc]
comiss xmm0, xmm9
jb 0x18008659d
movaps xmm9, xmm0
minss xmm9, xmm12
movss xmm3, dword [r15]
lea rcx, [rbp + 0x38]
movss xmm2, dword [r15 + 4]
movaps xmm6, xmm14
mov rax, qword [0x1802ce2d0]
movss xmm1, dword [rbp + 0x4c]
addss xmm6, dword [rsi + 0x384c]
and dword [rbp - 0x5c], edi
and dword [rsp + 0x64], edi
movss dword [rbp - 0x28], xmm1
movss xmm1, dword [r15 + 8]
movaps xmm0, xmm6
movss dword [rbp + 0x38], xmm3
addss xmm0, xmm8
movss dword [rbp + 0x3c], xmm2
addss xmm6, xmm7
movss dword [rbp + 0x40], xmm1
movss dword [rbp - 0x68], xmm3
movss dword [rbp - 0x64], xmm2
movss dword [rbp - 0x60], xmm1
addss xmm0, xmm7
movss dword [rsp + 0x58], xmm3
movss xmm7, dword [rsp + 0x78]
movss dword [rbp - 0x30], xmm7
movss dword [rbp - 0x2c], xmm6
movss dword [rsp + 0x5c], xmm2
movss dword [rbp - 0x24], xmm0
movss xmm0, dword [rsi + 0x37f4]
movss dword [rbp + 0x44], xmm0
movss dword [rbp + 4], xmm0
movdqu xmm0, xmmword [rax + 0x38f0]
movss dword [rsp + 0x60], xmm1
movups xmmword [rbp + 0x68], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37f4]
movss dword [rbp - 8], xmm3
movss dword [rbp - 4], xmm2
movss dword [rbp + 0x74], xmm0
movss dword [rbp], xmm1
call fcn.18005bd68
lea rcx, [rbp - 0x68]
mov ebx, eax
call fcn.18005bd68
lea rcx, [rsp + 0x58]
mov r11d, eax
call fcn.18005bd68
lea rcx, [rbp - 8]
mov r10d, eax
call fcn.18005bd68
lea rcx, [rbp + 0x68]
mov r8d, eax
call fcn.18005bd68
mov dword [rsp + 0x48], 0xf0
lea rdx, [rbp - 0x30]
mov dword [rsp + 0x38], ebx
mov r9d, eax
mov dword [rsp + 0x30], r11d
mov rcx, r13
mov dword [rsp + 0x28], r10d
mov dword [rsp + 0x20], r8d
lea r8, [rbp - 0x28]
call fcn.180073084
mov r8, qword [0x1802ce2d0]
movaps xmm0, xmm12
and dword [rbp - 0x30], edi
subss xmm0, xmm9
and dword [rbp - 0x2c], edi
movss xmm2, dword [rsi + 0x37f4]
and dword [rbp - 0x28], edi
movss dword [rsp + 0x5c], xmm6
mulss xmm0, xmm14
addss xmm0, xmm7
addss xmm0, dword [0x180183e14]
cvttss2si eax, xmm0
movd xmm1, eax
mov rax, qword [r8 + 0x3ec8]
cvtdq2ps xmm1, xmm1
mov byte [rax + 0xb8], 1
movaps xmm0, xmm1
subss xmm0, xmm12
movss dword [rsp + 0x58], xmm0
mulss xmm2, dword [r8 + 0x37f4]
addss xmm6, xmm8
lea rcx, [rbp - 0x30]
movss xmm7, dword [0x180183f04]
addss xmm1, xmm7
movss dword [rbp - 0x24], xmm2
movss dword [rbp - 0x64], xmm6
movss dword [rbp - 0x68], xmm1
call fcn.18005bd68
mov rcx, qword [r8 + 0x3ec8]
lea rdx, [rsp + 0x58]
movss dword [rsp + 0x30], xmm12
lea r8, [rbp - 0x68]
mov r9d, eax
mov dword [rsp + 0x28], edi
movss dword [rsp + 0x20], xmm7
mov rcx, qword [rcx + 0x298]
call fcn.180072cf4
call fcn.18006840c
test r14b, r14b
je 0x1800867c9
mov r8, qword [rbp + 0x58]
lea rcx, [rbp + 0x88]
mov rdx, r15
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1800867b3
mov r14b, dil
jmp 0x1800867c9
mov ecx, dword [rsi + 0x4764]
mov r8b, byte [rbp - 0x74]
mov r14b, r8b
test ecx, ecx
je 0x1800867c9
call fcn.18005dd04
cmp dword [rbp + 0x7c], edi
jne 0x1800867d4
mov dword [rsi + 0x5b00], edi
mov rcx, qword [0x1802ce2d0]
mov al, r14b
mov rdx, qword [rcx + 0x3ec8]
dec dword [rdx + 0xf0]
lea r11, [rsp + 0x280]
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