Function at 0x180060214
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 - 0x1a8]
sub rsp, 0x270
mov r14, qword [0x1802d3cd8]
xor r12d, r12d
movaps xmmword [rax - 0x48], xmm6
mov r13, r9
movaps xmmword [rax - 0x58], xmm7
mov ebx, r8d
movaps xmmword [rax - 0x68], xmm8
mov rsi, rdx
movaps xmmword [rax - 0x78], xmm9
mov r9, rcx
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 [r14 + 0x3ec8]
mov qword [rbp - 0x10], r14
mov byte [rax + 0xb8], 1
mov r15, qword [r14 + 0x3ec8]
cmp byte [r15 + 0xbb], r12b
je 0x1800602bd
xor al, al
jmp 0x1800620d3
mov rax, qword [r15 + 0x298]
mov qword [rbp + 0x18], rax
call fcn.18004399c
mov rcx, r9
mov dword [r14 + 0x4750], r12d
movaps xmm13, xmm0
call fcn.180041458
mov eax, dword [r14 + 0x5b08]
mov dword [rbp + 0x54], eax
test eax, eax
jne 0x180060307
movsxd rcx, dword [r15 + 0xf0]
mov rax, qword [r15 + 0xf8]
mov ecx, dword [rax + rcx*4 - 4]
mov dword [r14 + 0x5b08], ecx
call fcn.180043b70
mov edi, ebx
or edi, 0x10
bt ebx, 8
cmovb edi, ebx
test dil, 8
jne 0x180060328
mov edx, edi
mov rcx, rsi
call fcn.180062e14
mov edx, 0x6000000
mov ecx, 0xa900000
test edx, edi
jne 0x18006034a
mov eax, dword [r14 + 0x5b04]
mov ebx, ecx
test edx, eax
cmovne ebx, eax
and ebx, edx
or ebx, edi
jmp 0x18006034c
mov ebx, edi
mov edx, 0x18000000
test edx, ebx
jne 0x180060365
mov eax, dword [r14 + 0x5b04]
test edx, eax
cmovne ecx, eax
and ecx, edx
or ebx, ecx
mov r8d, 0x10000
test bl, 8
jne 0x18006037c
mov eax, dword [r14 + 0x5b04]
and eax, r8d
or ebx, eax
mov rax, qword [0x1802d3cd8]
mov ecx, ebx
movsd xmm0, qword [r15 + 0x100]
and ecx, 2
movss xmm2, dword [r14 + 0x3848]
mov edx, ebx
movsd qword [rbp - 0x80], xmm0
and edx, 0x10002
movss xmm7, dword [rax + 0x3834]
cmp edx, r8d
movss xmm12, dword [rbp - 0x80]
addss xmm7, xmm7
movsd qword [rbp - 0x20], xmm0
movaps xmm0, xmm2
mov dword [rbp - 0x60], ecx
mov dword [rbp + 0x14], edx
mov rdx, rsi
addss xmm7, dword [rax + 0x3c28]
mov eax, r12d
sete al
inc eax
movaps xmm6, xmm7
movss dword [rbp - 0x5c], xmm7
subss xmm6, dword [0x1801b862c]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm0, xmm6
movss dword [rsp + 0x74], xmm6
mulss xmm1, xmm0
movaps xmm0, xmm12
subss xmm13, xmm1
maxss xmm13, xmm6
addss xmm0, xmm13
movss dword [rbp + 0x58], xmm13
addss xmm0, xmm2
movss dword [rbp - 0x38], xmm0
movaps xmm0, xmm6
mulss xmm0, dword [0x1801b810c]
cvttss2si eax, xmm0
movd xmm0, eax
mov eax, ecx
neg eax
lea rcx, [rbp + 0x80]
cvtdq2ps xmm0, xmm0
sbb r8, r8
and r8, 0xfffffffffffffffc
add r8, 0x10
movss dword [rbp + 0x50], xmm0
call sub.VCRUNTIME140.dll_memcpy
movss xmm15, dword [0x1801b8174]
movaps xmm2, xmm13
and dword [rbp + 0x2c], r12d
movaps xmm0, xmm13
mulss xmm0, dword [0x1801b80e0]
xorps xmm10, xmm10
mulss xmm2, xmm15
movss dword [rbp + 0x10], xmm0
movaps xmm1, xmm2
movss dword [rbp + 4], xmm2
subss xmm1, xmm0
movaps xmm0, xmm6
movss xmm6, dword [rbp - 0x7c]
mulss xmm0, xmm15
movss dword [rbp], xmm1
addss xmm0, xmm2
addss xmm0, xmm12
movss dword [rbp + 8], xmm0
movss dword [rbp - 0x70], xmm0
movaps xmm0, xmm2
addss xmm0, xmm6
movss dword [rbp + 0xc], xmm0
movss dword [rbp - 0x6c], xmm0
movaps xmm0, xmm13
mulss xmm0, dword [0x1801b80a8]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movaps xmm2, xmm1
movss dword [rbp + 0x28], xmm1
mulss xmm2, dword [0x1801b8838]
movss xmm8, dword [rsi + 4]
movaps xmm0, xmm1
mulss xmm0, dword [0x1801b8844]
movss xmm14, dword [rsi + 8]
movss xmm9, dword [rsi]
movss dword [rbp - 0x58], xmm0
movss dword [rsp + 0x5c], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [0x1801b8240]
movss dword [rbp + 0x20], xmm2
movss dword [rsp + 0x58], xmm2
movss dword [rbp - 0x54], xmm0
movss dword [rbp - 0x2c], xmm0
movss dword [rbp - 0x30], xmm2
movss dword [rsp + 0x6c], xmm9
movss dword [rsp + 0x70], xmm8
movss dword [rsp + 0x78], xmm8
movss dword [rbp - 0x74], xmm14
movss dword [rsp + 0x68], xmm14
bt ebx, 0x1b
jae 0x1800605cb
lea rax, [rsp + 0x68]
movaps xmm2, xmm14
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x6c]
lea rax, [rsp + 0x78]
movaps xmm1, xmm8
movaps xmm0, xmm9
mov qword [rsp + 0x20], rax
call fcn.18003788c
lea r9, [rsp + 0x68]
mov rcx, rsi
lea r8, [rsp + 0x78]
lea rdx, [rsp + 0x6c]
call fcn.18005ee9c
movss xmm8, dword [rsp + 0x78]
movss xmm14, dword [rsp + 0x68]
movss xmm9, dword [rsp + 0x6c]
movss dword [rsp + 0x70], xmm8
movss dword [rbp - 0x74], xmm14
jmp 0x1800605f8
bt ebx, 0x1c
jae 0x1800605f8
lea rax, [rbp + 0x40]
movaps xmm2, xmm14
mov qword [rsp + 0x28], rax
lea r9, [rbp - 0x48]
lea rax, [rbp - 0x50]
movaps xmm1, xmm8
movaps xmm0, xmm9
mov qword [rsp + 0x20], rax
call fcn.180037934
mov ecx, 8
mov byte [rsp + 0x50], r12b
mov r15b, r12b
mov byte [rsp + 0x52], r12b
mov byte [rsp + 0x51], r12b
call fcn.180041068
movss xmm11, dword [0x1801b82bc]
bt ebx, 0x1a
jae 0x180060925
movaps xmm0, xmm13
movss dword [rbp - 0x44], xmm13
addss xmm0, dword [r14 + 0x3848]
lea rdx, [rbp - 0x48]
lea rcx, [0x1801b7bf4]
addss xmm0, dword [rsp + 0x74]
movss dword [rbp - 0x48], xmm0
call fcn.1800564bc
mov rdi, qword [0x1802d3cd8]
mov eax, dword [rdi + 0x3f28]
test eax, eax
je 0x18006090a
cmp eax, dword [rdi + 0x4764]
jne 0x18006090a
movss xmm15, dword [r14 + 0x36f8]
movss xmm7, dword [r14 + 0x36fc]
subss xmm15, dword [rbp + 8]
subss xmm7, dword [rbp + 0xc]
movss xmm1, dword [rbp]
movss xmm12, dword [r14 + 0xe08]
subss xmm1, xmm11
movss xmm6, dword [r14 + 0xe0c]
subss xmm12, dword [rbp + 8]
subss xmm6, dword [rbp + 0xc]
movaps xmm2, xmm7
movaps xmm0, xmm15
mulss xmm2, xmm7
mulss xmm0, xmm15
mulss xmm1, xmm1
addss xmm2, xmm0
comiss xmm2, xmm1
jb 0x180060724
movss xmm0, dword [rbp + 4]
addss xmm0, xmm11
mulss xmm0, xmm0
comiss xmm2, xmm0
ja 0x180060724
movaps xmm1, xmm12
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2f
movaps xmm9, xmm0
mulss xmm9, dword [0x1801b8100]
comiss xmm9, xmm10
movss dword [rsp + 0x6c], xmm9
jae 0x18006071c
addss xmm9, xmm11
movss dword [rsp + 0x6c], xmm9
mov r15b, 1
mov byte [rsp + 0x50], r15b
movaps xmm1, xmm9
xorps xmm0, xmm0
mulss xmm1, dword [0x1801b8880]
mov r12b, r15b
mulss xmm1, dword [0x1801b8634]
movss xmm0, xmm1
call fcn.1800d43d0
movaps xmm1, xmm7
movaps xmmword [rbp + 0x60], xmm0
movaps xmm2, xmm15
mulss xmm1, xmm0
lea r9, [rbp - 0x48]
mov byte [rsp + 0x52], r15b
movaps xmm3, xmm0
mulss xmm15, xmm0
lea r8, [rbp - 0x30]
shufps xmm3, xmm0, 1
lea rdx, [rsp + 0x58]
mulss xmm2, xmm3
lea rcx, [rbp + 0x28]
mulss xmm7, xmm3
subss xmm2, xmm1
movaps xmmword [rbp + 0x40], xmm3
addss xmm7, xmm15
movss dword [rbp - 0x48], xmm2
movss dword [rbp - 0x44], xmm7
call fcn.180036c0c
test al, al
je 0x1800608f1
movaps xmm2, xmmword [rbp + 0x40]
lea r9, [rbp - 0x48]
movaps xmm1, xmmword [rbp + 0x60]
lea r8, [rbp - 0x30]
movaps xmm0, xmm6
lea rdx, [rsp + 0x58]
movaps xmm7, xmm12
mulss xmm0, xmm1
lea rcx, [rbp + 0x28]
mulss xmm7, xmm2
mulss xmm6, xmm2
mulss xmm12, xmm1
subss xmm7, xmm0
addss xmm6, xmm12
movss dword [rbp - 0x48], xmm7
movss dword [rbp - 0x44], xmm6
call fcn.180036c0c
test al, al
jne 0x180060823
lea rax, [rbp - 0x48]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x58]
lea rdx, [rbp + 0x28]
lea rcx, [rbp + 0x40]
call fcn.180036cd8
movsd xmm0, qword [rax]
movsd qword [rbp - 0x48], xmm0
movss xmm6, dword [rbp - 0x44]
movss xmm7, dword [rbp - 0x48]
movss xmm5, dword [rbp - 0x54]
movaps xmm3, xmm11
movss xmm4, dword [rbp - 0x58]
movaps xmm1, xmm5
movss xmm2, dword [rbp + 0x20]
movaps xmm0, xmm4
subss xmm2, dword [rbp + 0x28]
subss xmm7, dword [rbp + 0x28]
movss xmm8, dword [0x1801b8054]
movaps xmm14, xmm11
movss dword [rsp + 0x70], xmm8
mulss xmm0, xmm2
mulss xmm6, xmm2
mulss xmm1, xmm2
subss xmm1, xmm0
movaps xmm0, xmm5
mulss xmm0, xmm7
subss xmm0, xmm6
divss xmm3, xmm1
mulss xmm0, xmm3
subss xmm14, xmm0
movaps xmm0, xmm4
mulss xmm0, xmm7
comiss xmm14, xmm8
subss xmm6, xmm0
movaps xmm0, xmm14
mulss xmm6, xmm3
subss xmm0, xmm6
jae 0x1800608ab
movss dword [rbp - 0x74], xmm8
movaps xmm14, xmm8
jmp 0x1800608b6
minss xmm14, xmm11
movss dword [rbp - 0x74], xmm14
divss xmm0, xmm14
movss dword [rsp + 0x68], xmm14
comiss xmm0, xmm8
jb 0x1800608d8
movaps xmm8, xmm0
minss xmm8, xmm11
movss dword [rsp + 0x70], xmm8
mov r15b, 1
movss dword [rsp + 0x78], xmm8
mov byte [rsp + 0x50], r15b
mov byte [rsp + 0x51], 1
mov byte [rsp + 0x52], r12b
movss xmm12, dword [rbp - 0x80]
movss xmm6, dword [rbp - 0x7c]
movss xmm7, dword [rbp - 0x5c]
movss xmm15, dword [0x1801b8174]
test bl, 8
jne 0x18006091b
call fcn.180044bc4
mov rdi, qword [0x1802d3cd8]
mov r12b, byte [rsp + 0x51]
jmp 0x180060b26
bt ebx, 0x19
jae 0x180060b1f
lea rdx, [rsp + 0x58]
movss dword [rsp + 0x58], xmm13
lea rcx, [0x1801b7bf8]
movss dword [rsp + 0x5c], xmm13
call fcn.1800564bc
mov r8, qword [0x1802d3cd8]
mov eax, dword [r8 + 0x3f28]
test eax, eax
je 0x180060a4b
cmp eax, dword [r8 + 0x4764]
jne 0x180060a4b
movss xmm8, dword [r14 + 0xe08]
movaps xmm0, xmm13
subss xmm0, xmm11
movaps xmm1, xmm11
subss xmm8, xmm12
divss xmm1, xmm0
mulss xmm8, xmm1
comiss xmm8, xmm10
jae 0x1800609a1
xorps xmm8, xmm8
jmp 0x1800609a6
minss xmm8, xmm11
movss xmm0, dword [r14 + 0xe0c]
subss xmm0, xmm6
movss dword [rsp + 0x70], xmm8
movss dword [rsp + 0x78], xmm8
mulss xmm0, xmm1
comiss xmm0, xmm10
jae 0x1800609d0
xorps xmm0, xmm0
jmp 0x1800609d5
minss xmm0, xmm11
mov eax, dword [r8 + 0x5b08]
movaps xmm14, xmm11
subss xmm14, xmm0
movss dword [rbp - 0x74], xmm14
movss dword [rsp + 0x68], xmm14
cmp dword [r8 + 0x5b0c], eax
jne 0x180060a43
movss xmm0, dword [rsi]
lea rcx, [rsp + 0x58]
movss xmm1, dword [rsi + 4]
and dword [rsp + 0x64], r12d
movss dword [rsp + 0x58], xmm0
movss xmm0, dword [rsi + 8]
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x5c], xmm1
call fcn.1800377e8
cmp dword [r8 + 0x5b18], eax
jne 0x180060a43
movss xmm9, dword [r8 + 0x5b10]
movss dword [rsp + 0x6c], xmm9
mov r15b, 1
mov byte [rsp + 0x50], r15b
mov byte [rsp + 0x51], r15b
mov r12b, r15b
test bl, 8
jne 0x180060a64
call fcn.180044bc4
mov r8, qword [0x1802d3cd8]
mov rax, qword [r8 + 0x3ec8]
lea rdx, [rsp + 0x58]
movss xmm0, dword [rbp - 0x38]
lea rcx, [0x1801b7bfc]
movss dword [rsp + 0x5c], xmm13
mov byte [rax + 0xb8], 1
mov rax, qword [r8 + 0x3ec8]
movss dword [rax + 0x100], xmm0
movss xmm0, dword [rsp + 0x74]
movss dword [rsp + 0x58], xmm0
movss dword [rax + 0x104], xmm6
mov byte [rax + 0x141], 1
call fcn.1800564bc
mov rdi, qword [0x1802d3cd8]
mov eax, dword [rdi + 0x3f28]
test eax, eax
je 0x180060b26
mov byte [rsp + 0x51], r15b
cmp eax, dword [rdi + 0x4764]
jne 0x180060b26
movss xmm9, dword [r14 + 0xe0c]
movaps xmm0, xmm13
subss xmm9, xmm6
subss xmm0, xmm11
divss xmm9, xmm0
comiss xmm9, xmm10
jae 0x180060aff
xorps xmm9, xmm9
jmp 0x180060b04
minss xmm9, xmm11
mov r15b, 1
movss dword [rsp + 0x6c], xmm9
mov byte [rsp + 0x50], r15b
mov byte [rsp + 0x52], 1
mov byte [rsp + 0x51], r12b
jmp 0x180060b26
mov rdi, qword [0x1802d3cd8]
cmp dword [rbp + 0x14], 0x10000
jne 0x180060bee
mov rax, qword [rdi + 0x3ec8]
lea rdx, [rsp + 0x58]
movaps xmm0, xmm6
movss dword [rsp + 0x58], xmm13
addss xmm0, xmm13
lea rcx, [0x1801b7c00]
addss xmm0, dword [r14 + 0x384c]
mov byte [rax + 0xb8], 1
mov rax, qword [rdi + 0x3ec8]
movss dword [rax + 0x104], xmm0
movss xmm0, dword [rsp + 0x74]
movss dword [rsp + 0x5c], xmm0
movss dword [rax + 0x100], xmm12
mov byte [rax + 0x141], 1
call fcn.1800564bc
mov rdi, qword [0x1802d3cd8]
mov eax, dword [rdi + 0x3f28]
test eax, eax
je 0x180060bee
cmp eax, dword [rdi + 0x4764]
jne 0x180060bee
movss xmm1, dword [r14 + 0xe08]
movaps xmm0, xmm13
subss xmm1, xmm12
subss xmm0, xmm11
divss xmm1, xmm0
comiss xmm1, xmm10
jae 0x180060bd4
xorps xmm1, xmm1
jmp 0x180060bd9
minss xmm1, xmm11
movaps xmm0, xmm11
mov r15b, 1
subss xmm0, xmm1
mov byte [rsp + 0x50], r15b
movss dword [rsi + 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 0x180060c2c
movss xmm1, dword [r14 + 0x3848]
call fcn.180043888
call fcn.180043b70
test bl, bl
js 0x180060c66
mov r9, qword [rbp + 0x1b0]
xor edx, edx
mov rcx, r9
call fcn.180037f68
mov rdx, rax
cmp r9, rax
je 0x180060c66
test edi, edi
je 0x180060c5b
movss xmm1, dword [r14 + 0x3848]
call fcn.180043888
xor r8d, r8d
mov rcx, r9
call fcn.1800556ac
bt ebx, 8
jb 0x180060dc4
mov ecx, 0x10
call fcn.180041068
test bl, 2
je 0x180060c85
movaps xmm2, xmm11
jmp 0x180060c8a
movss xmm2, dword [rsi + 0xc]
movss xmm0, dword [rsi]
movss xmm1, dword [rsi + 4]
movss dword [rbp - 0x30], xmm0
movss xmm0, dword [rsi + 8]
movss dword [rbp - 0x28], xmm0
movss dword [rbp - 0x2c], xmm1
movss dword [rbp - 0x24], xmm2
test bl, bl
jns 0x180060cbc
lea rcx, str.Current
call fcn.180055b0c
movaps xmm6, xmm7
lea r9, [rsp + 0x58]
mulss xmm6, dword [0x1801b862c]
addss xmm7, xmm7
mov edi, ebx
lea rdx, [rbp - 0x30]
and edi, 0x180e0040
lea rcx, str.current
mov r8d, edi
movss dword [rsp + 0x58], xmm6
movss dword [rsp + 0x5c], xmm7
call fcn.180062128
test r13, r13
je 0x180060d92
lea rcx, str.Original
call fcn.180055b0c
test bl, 2
je 0x180060d17
movaps xmm2, xmm11
jmp 0x180060d1d
movss xmm2, dword [r13 + 0xc]
movss xmm0, dword [r13]
lea r9, [rsp + 0x58]
movss xmm1, dword [r13 + 4]
lea rdx, [rbp - 0x48]
movss dword [rbp - 0x48], xmm0
lea rcx, str.original
movss xmm0, dword [r13 + 8]
mov r8d, edi
movss dword [rbp - 0x40], xmm0
movss dword [rbp - 0x44], xmm1
movss dword [rbp - 0x3c], xmm2
movss dword [rsp + 0x58], xmm6
movss dword [rsp + 0x5c], xmm7
call fcn.180062128
mov edi, dword [rbp - 0x60]
test al, al
je 0x180060d95
mov eax, edi
mov rdx, r13
neg eax
mov rcx, rsi
sbb r8, r8
and r8, 0xfffffffffffffffc
add r8, 0x10
call sub.VCRUNTIME140.dll_memcpy
mov r15b, 1
mov byte [rsp + 0x50], r15b
jmp 0x180060d95
mov edi, dword [rbp - 0x60]
mov rdx, qword [0x1802d3cd8]
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.180043c98
jmp 0x180060dc7
mov edi, dword [rbp - 0x60]
movss xmm0, dword [rsi]
comiss xmm0, xmm10
jae 0x180060dd6
xorps xmm0, xmm0
jmp 0x180060ddb
minss xmm0, xmm11
movss xmm12, dword [0x1801b87a0]
movss xmm1, dword [rsi + 4]
comiss xmm1, xmm10
mulss xmm0, xmm12
addss xmm0, xmm15
cvttss2si r9d, xmm0
jae 0x180060e03
xorps xmm1, xmm1
jmp 0x180060e08
minss xmm1, xmm11
movss xmm0, dword [rsi + 8]
comiss xmm0, xmm10
mulss xmm1, xmm12
addss xmm1, xmm15
cvttss2si edx, xmm1
jae 0x180060e26
xorps xmm0, xmm0
jmp 0x180060e2b
minss xmm0, xmm11
mulss xmm0, xmm12
addss xmm0, xmm15
cvttss2si ecx, xmm0
test bl, 2
jne 0x180060e87
movss xmm0, dword [rsi + 0xc]
comiss xmm0, xmm10
jae 0x180060e4e
xorps xmm0, xmm0
jmp 0x180060e53
minss xmm0, xmm11
mulss xmm0, xmm12
lea r8, [0x1801b7b70]
addss xmm0, xmm15
cvttss2si eax, xmm0
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], ecx
lea rcx, [rbp + 0x90]
mov dword [rsp + 0x20], edx
mov edx, 0x40
call fcn.180036dec
jmp 0x180060ea7
mov dword [rsp + 0x28], ecx
lea r8, [0x1801b7b88]
mov dword [rsp + 0x20], edx
lea rcx, [rbp + 0x90]
mov edx, 0x40
call fcn.180036dec
lea rdx, [rsp + 0x58]
mov dword [rsp + 0x58], 0x40400000
mov ecx, 0xe
mov dword [rsp + 0x5c], 0x41000000
call fcn.180037e50
movss xmm7, dword [0x1801b8848]
lea rdx, [rbp + 0x90]
movss xmm6, dword [r14 + 0x3840]
lea rcx, [rbp - 0x30]
xor r9d, r9d
movss dword [rsp + 0x20], xmm7
xor r8d, r8d
call fcn.18003c328
and dword [rsp + 0x5c], 0
lea rdx, [rsp + 0x58]
movaps xmm1, xmm13
mulss xmm6, xmm15
lea rcx, str.Copy
mulss xmm1, xmm15
movss xmm0, dword [rax]
mulss xmm0, xmm15
subss xmm1, xmm6
subss xmm1, xmm0
subss xmm1, dword [0x1801b8650]
movss dword [rsp + 0x58], xmm1
call fcn.180056234
xor r13d, r13d
test al, al
je 0x180060f5b
mov eax, edi
lea rcx, [0x1801c9718]
neg eax
mov rdx, rsi
sbb r8, r8
and r8, 0xfffffffffffffffc
add r8, 0x10
call sub.VCRUNTIME140.dll_memcpy
movaps xmm1, xmm7
call fcn.180043888
and dword [rsp + 0x58], r13d
lea rcx, [rbp + 0x90]
and dword [rsp + 0x5c], r13d
lea rdx, [rsp + 0x58]
call fcn.180056234
test al, al
je 0x180060fe8
xor ecx, ecx
call qword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x180060fe8
call qword [sym.imp.USER32.dll_EmptyClipboard]
lea rax, [rbp + 0x90]
or rdx, 0xffffffffffffffff
inc rdx
cmp byte [rax + rdx], r13b
jne 0x180060f9f
inc rdx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov r8, rax
lea rcx, [rbp + 0x90]
sub r8, rcx
lea rdx, [rbp + 0x90]
mov cl, byte [rdx]
mov byte [rdx + r8], cl
inc rdx
test cl, cl
jne 0x180060fc7
mov rdx, rax
mov ecx, 1
call qword [sym.imp.USER32.dll_SetClipboardData]
call qword [sym.imp.USER32.dll_CloseClipboard]
movaps xmm1, xmm7
call fcn.180043888
movss xmm6, dword [r14 + 0x3840]
lea rcx, [rbp - 0x30]
xor r9d, r9d
movss dword [rsp + 0x20], xmm7
xor r8d, r8d
lea rdx, [rbp + 0x90]
call fcn.18003c328
and dword [rsp + 0x5c], r13d
lea rdx, [rsp + 0x58]
movaps xmm1, xmm13
mulss xmm6, xmm15
lea rcx, str.Paste
mulss xmm1, xmm15
movss xmm0, dword [rax]
mulss xmm0, xmm15
subss xmm1, xmm6
subss xmm1, xmm0
subss xmm1, dword [0x1801b8650]
movss dword [rsp + 0x58], xmm1
call fcn.180056234
test al, al
je 0x180061082
mov eax, edi
lea rdx, [0x1801c9718]
neg eax
mov rcx, rsi
sbb r8, r8
and r8, 0xfffffffffffffffc
add r8, 0x10
call sub.VCRUNTIME140.dll_memcpy
mov r15b, 1
mov byte [rsp + 0x50], r15b
mov ecx, 1
call fcn.180037edc
cmp byte [rsp + 0x52], r13b
jne 0x18006109c
test r12b, r12b
je 0x180061137
bt ebx, 0x1b
jae 0x180061120
lea rax, [rsi + 8]
mov r9, rsi
lea rcx, [rsi + 4]
mov qword [rsp + 0x28], rax
movaps xmm2, xmm14
mov qword [rsp + 0x20], rcx
movaps xmm1, xmm8
movaps xmm0, xmm9
call fcn.180037934
mov eax, dword [r14 + 0x5b08]
lea rcx, [rsp + 0x58]
and dword [rsp + 0x64], r13d
mov dword [r14 + 0x5b0c], eax
movss dword [r14 + 0x5b10], xmm9
movss dword [r14 + 0x5b14], xmm8
movss xmm0, dword [rsi]
movss xmm1, dword [rsi + 4]
movss dword [rsp + 0x58], xmm0
movss xmm0, dword [rsi + 8]
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x5c], xmm1
call fcn.1800377e8
mov dword [r14 + 0x5b18], eax
jmp 0x180061137
bt ebx, 0x1c
jae 0x180061137
movss dword [rsi], xmm9
movss dword [rsi + 4], xmm8
movss dword [rsi + 8], xmm14
mov r12b, r13b
test bl, 0x20
jne 0x1800612f5
cmp dword [rbp + 0x14], 0x10000
movss xmm1, dword [rbp - 0x80]
jne 0x180061156
movaps xmm0, xmm1
jmp 0x18006115b
movss xmm0, dword [rbp - 0x38]
addss xmm0, dword [rsp + 0x74]
subss xmm0, xmm1
call fcn.1800438f4
mov edi, ebx
and edi, 0x198e001a
bt ebx, 0x14
jb 0x180061180
test ebx, 0x700000
jne 0x1800611ba
mov r8d, edi
lea rcx, str.rgb
or r8d, 0x100004
mov rdx, rsi
call fcn.18005ef3c
test al, al
je 0x1800611ba
cmp dword [r14 + 0x3f28], r13d
je 0x1800611b2
cmp byte [r14 + 0x3f35], r13b
jne 0x1800611b2
mov r12b, 1
mov r15b, 1
mov byte [rsp + 0x50], r15b
bt ebx, 0x15
jb 0x1800611c8
test ebx, 0x700000
jne 0x1800611e9
mov r8d, edi
lea rcx, str.hsv
or r8d, 0x200004
mov rdx, rsi
call fcn.18005ef3c
or r15b, al
mov byte [rsp + 0x50], r15b
bt ebx, 0x16
jb 0x1800611f7
test ebx, 0x700000
jne 0x180061217
or edi, 0x400004
lea rcx, str.hex
mov r8d, edi
mov rdx, rsi
call fcn.18005ef3c
or r15b, al
mov byte [rsp + 0x50], r15b
mov r8, qword [0x1802d3cd8]
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 dword [r8 + 0x1bc], ecx
test r12b, r12b
je 0x1800612f5
bt ebx, 0x1b
jae 0x1800612f5
movss xmm2, dword [rsi + 8]
lea rax, [rbp - 0x50]
movss xmm1, dword [rsi + 4]
lea r9, [rbp - 0x5c]
movss xmm0, dword [rsi]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
call fcn.18003788c
movss xmm0, dword [rbp - 0x5c]
comiss xmm0, xmm10
ja 0x1800612f5
comiss xmm9, xmm10
jbe 0x1800612f5
movss xmm2, dword [rbp - 0x50]
comiss xmm2, xmm10
ja 0x1800612c3
ucomiss xmm14, xmm2
je 0x1800612c3
movaps xmm2, xmm14
movaps xmm1, xmm8
mulss xmm2, xmm15
jmp 0x1800612d7
movss xmm0, dword [rbp + 0x40]
comiss xmm0, xmm10
ja 0x1800612f5
movaps xmm1, xmm8
mulss xmm1, xmm15
lea rax, [rsi + 8]
mov r9, rsi
lea rcx, [rsi + 4]
mov qword [rsp + 0x28], rax
movaps xmm0, xmm9
mov qword [rsp + 0x20], rcx
call fcn.180037934
mov byte [rbp - 0x78], r15b
test r15b, r15b
je 0x1800613ba
bt ebx, 0x1b
jae 0x18006136f
movss xmm2, dword [rsi + 8]
lea rax, [rsp + 0x68]
movss xmm1, dword [rsi + 4]
lea r9, [rsp + 0x6c]
movss xmm0, dword [rsi]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
call fcn.18003788c
lea r9, [rsp + 0x68]
mov rcx, rsi
lea r8, [rsp + 0x78]
lea rdx, [rsp + 0x6c]
call fcn.18005ee9c
movss xmm8, dword [rsp + 0x78]
movss xmm14, dword [rsp + 0x68]
movss xmm9, dword [rsp + 0x6c]
movss dword [rsp + 0x70], xmm8
movss dword [rbp - 0x74], xmm14
jmp 0x1800613ba
bt ebx, 0x1c
jae 0x1800613ba
movss xmm8, dword [rsi + 4]
lea rax, [rbp + 0x40]
movss xmm14, dword [rsi + 8]
lea r9, [rbp - 0x48]
movss xmm9, dword [rsi]
movaps xmm2, xmm14
mov qword [rsp + 0x28], rax
movaps xmm1, xmm8
lea rax, [rbp - 0x50]
movss dword [rsp + 0x70], xmm8
movaps xmm0, xmm9
mov qword [rsp + 0x20], rax
movss dword [rbp - 0x74], xmm14
call fcn.180037934
movss xmm1, dword [r14 + 0x37f4]
comiss xmm1, xmm10
jae 0x1800613cf
movaps xmm0, xmm10
jmp 0x1800613d7
movaps xmm0, xmm1
minss xmm0, xmm11
mulss xmm0, xmm12
lea r9, [rsp + 0x58]
mov dword [rsp + 0x58], 0x3f800000
movss dword [rsp + 0x64], xmm1
movaps xmm2, xmm11
movaps xmm1, xmm11
mov dword [rsp + 0x5c], 0x3f800000
addss xmm0, xmm15
mov dword [rsp + 0x60], 0x3f800000
cvttss2si r12d, xmm0
movaps xmm0, xmm9
shl r12d, 0x18
mov eax, r12d
mov dword [rbp - 0x50], r12d
or eax, 0xffffff
mov r13d, r12d
mov dword [rsp + 0x68], eax
or r13d, 0xff
mov eax, r12d
mov dword [rbp + 0x60], r13d
or eax, 0x808080
mov dword [rbp + 0x78], r13d
mov dword [rbp + 0x40], eax
mov edi, r12d
mov eax, r12d
or edi, 0xffff
or eax, 0xff00
mov dword [rbp + 0x64], edi
mov dword [rbp + 0x68], eax
mov eax, r12d
or eax, 0xffff00
mov dword [rbp + 0x6c], eax
mov eax, r12d
or eax, 0xff0000
mov dword [rbp + 0x70], eax
mov eax, r12d
or eax, 0xff00ff
mov dword [rbp - 0x5c], eax
mov dword [rbp + 0x74], eax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x5c]
mov qword [rsp + 0x20], rax
call fcn.180037934
lea rcx, [rsp + 0x58]
call fcn.1800377e8
movss dword [rsp + 0x78], xmm10
movaps xmm7, xmm10
movss dword [rsp + 0x7c], xmm7
mov r8d, eax
mov dword [rbp - 0x48], eax
movaps xmm12, xmm10
mov r9d, 4
bt ebx, 0x1a
jae 0x18006199b
movss xmm0, dword [rbp + 4]
lea r15, [rbp + 0x60]
movss xmm13, dword [rbp]
mov eax, 0x2aaaaaab
movss xmm10, dword [rbp + 0x10]
movaps xmm12, xmm13
movss xmm14, dword [rbp + 8]
addss xmm12, xmm0
movss xmm8, dword [rbp + 0xc]
movaps xmm11, xmm15
mov esi, dword [rbp + 0x60]
mov r14d, dword [rsp + 0x68]
cvttss2si ecx, xmm0
divss xmm11, xmm0
imul ecx
mulss xmm12, 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 + 0x18]
lea rdx, [rbp - 0x70]
movd xmm7, r12d
movaps xmm2, xmm12
cvtdq2ps xmm7, xmm7
mov dword [rsp + 0x28], r13d
mov rcx, rbx
mov edi, dword [rbx + 0x20]
mulss xmm7, dword [0x1801b82e8]
movaps xmm6, xmm7
addss xmm7, dword [0x1801b82e8]
subss xmm6, xmm11
addss xmm7, xmm11
movaps xmm3, xmm6
movss dword [rsp + 0x20], xmm7
call fcn.18004d784
mov r8d, dword [rbx + 0x78]
mov r9d, r14d
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
movss dword [rsp + 0x28], xmm10
and dword [rsp + 0x20], 0
call fcn.18004c104
and dword [rbx + 0x78], 0
movaps xmm1, xmm6
movaps xmm2, xmm7
movaps xmm0, xmm1
movaps xmm1, xmm2
call fcn.1800d4413
mov rax, qword [rbp + 0x18]
movaps xmm2, xmm0
shufps xmm2, xmm0, 0xe
movaps xmm1, xmm0
shufps xmm1, xmm0, 1
movaps xmm3, xmm0
movaps xmm0, xmm2
mulss xmm1, xmm13
mov r8d, dword [rax + 0x20]
add r15, 4
shufps xmm0, xmm2, 1
mov edx, edi
mulss xmm0, xmm13
mov rcx, rax
mulss xmm3, xmm13
addss xmm1, xmm14
mov ebx, dword [r15]
mulss xmm2, xmm13
addss xmm0, xmm14
mov dword [rsp + 0x30], ebx
addss xmm3, xmm8
mov dword [rsp + 0x28], esi
addss xmm2, xmm8
unpcklps xmm1, xmm3
movq r9, xmm1
unpcklps xmm0, xmm2
movsd qword [rsp + 0x20], xmm0
call fcn.18004ff6c
inc r12d
mov esi, ebx
cmp r12d, 6
jl 0x180061533
mulss xmm9, dword [0x1801b85e8]
xorps xmm0, xmm0
mulss xmm9, dword [0x1801b8634]
movss xmm0, xmm9
call fcn.1800d43d0
cmp byte [rsp + 0x52], 0
movaps xmm6, xmm0
movss xmm10, dword [rbp + 8]
movaps xmm7, xmm0
movss xmm13, dword [rbp + 0xc]
movss xmm9, dword [rbp + 0x10]
shufps xmm6, xmm0, 1
movss xmm0, dword [rbp]
addss xmm0, dword [rbp + 4]
movaps xmm1, xmm0
mulss xmm0, xmm7
mulss xmm1, xmm6
mulss xmm0, xmm15
mulss xmm1, xmm15
addss xmm0, xmm13
addss xmm1, xmm10
movss dword [rsp + 0x5c], xmm0
movss dword [rsp + 0x58], xmm1
je 0x1800616b7
mulss xmm9, dword [0x1801b81b0]
jmp 0x1800616c0
mulss xmm9, dword [0x1801b8180]
mov r13, qword [rbp + 0x18]
movaps xmm1, xmm9
mov rcx, r13
call fcn.18004ba58
mov edi, dword [rbp - 0x48]
lea rdx, [rsp + 0x58]
mov r9d, edi
mov dword [rsp + 0x20], eax
movaps xmm2, xmm9
mov rcx, r13
mov ebx, eax
call fcn.18004f7f0
movss xmm11, dword [0x1801b82bc]
lea rdx, [rsp + 0x58]
mov r14d, dword [rbp + 0x40]
movaps xmm2, xmm9
movss dword [rsp + 0x28], xmm11
addss xmm2, xmm11
mov r9d, r14d
mov dword [rsp + 0x20], ebx
mov rcx, r13
call fcn.18004f714
mov esi, dword [rsp + 0x68]
lea rdx, [rsp + 0x58]
movss dword [rsp + 0x28], xmm11
mov r9d, esi
movaps xmm2, xmm9
mov dword [rsp + 0x20], ebx
mov rcx, r13
call fcn.18004f714
movss xmm4, dword [rbp - 0x58]
movaps xmm3, xmm6
mulss xmm3, dword [rbp + 0x20]
movaps xmm9, xmm6
mov rax, qword [0x1802d3cd8]
mov edx, 3
mulss xmm9, dword [rbp + 0x28]
movaps xmm15, xmm6
mov r8d, edx
mov rcx, r13
movaps xmm0, xmm7
mulss xmm15, xmm4
movaps xmm2, xmm3
mulss xmm0, xmm4
movaps xmm1, xmm7
addss xmm9, xmm10
mulss xmm1, dword [rbp + 0x20]
movaps xmm12, xmm7
mulss xmm12, dword [rbp + 0x28]
subss xmm2, xmm0
movss xmm0, dword [rbp - 0x54]
addss xmm15, xmm1
mulss xmm6, xmm0
mulss xmm7, xmm0
addss xmm12, xmm13
addss xmm6, xmm1
addss xmm2, xmm10
subss xmm3, xmm7
movss xmm7, dword [rax + 0x3c34]
addss xmm15, xmm13
addss xmm6, xmm13
movss dword [rbp - 0x58], xmm2
addss xmm3, xmm10
movaps xmmword [rbp - 0x20], xmm6
movss xmm6, dword [rax + 0x3c30]
movss dword [rbp - 0x54], xmm3
call fcn.18004bd88
mov rcx, qword [r13 + 0x50]
movaps xmm0, xmm9
movzx eax, word [r13 + 0x34]
unpcklps xmm0, xmm12
movsd qword [rbp - 0x30], 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
lea r9, [rbp - 0x70]
inc dword [r13 + 0x34]
lea r8, [rsp + 0x58]
mov rcx, qword [r13 + 0x50]
lea rdx, [rbp - 0x30]
movzx eax, word [r13 + 0x34]
movss xmm0, dword [rbp - 0x58]
movaps xmm1, xmmword [rbp - 0x20]
mov r12d, dword [rbp - 0x50]
mov word [rcx], ax
mov rax, qword [r13 + 0x48]
add qword [r13 + 0x50], 2
unpcklps xmm0, xmm15
movsd qword [rsp + 0x58], xmm0
movsd qword [rax], xmm0
mov rax, qword [r13 + 0x48]
movss xmm0, dword [rbp - 0x54]
unpcklps xmm0, xmm1
movsd qword [rbp - 0x70], xmm0
movss dword [rax + 8], xmm6
movss dword [rax + 0xc], xmm7
mov rax, qword [r13 + 0x48]
mov dword [rsp + 0x20], r14d
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], esi
add qword [r13 + 0x48], 0x14
inc dword [r13 + 0x34]
call fcn.18004f49c
movaps xmm1, xmm11
xorps xmm10, xmm10
subss xmm1, dword [rbp - 0x74]
comiss xmm1, xmm10
jae 0x1800618f7
xorps xmm1, xmm1
jmp 0x1800618fc
minss xmm1, xmm11
movss xmm8, dword [rsp + 0x70]
comiss xmm8, xmm10
jae 0x18006190f
xorps xmm8, xmm8
jmp 0x180061914
minss xmm8, xmm11
movaps xmm2, xmmword [rbp - 0x20]
mov r9d, 4
subss xmm9, dword [rbp - 0x54]
movss xmm0, dword [rbp - 0x58]
subss xmm12, xmm2
movss xmm13, dword [rbp + 0x58]
mov rsi, qword [rbp + 0x1b8]
mov r14, qword [rbp - 0x10]
mov r15b, byte [rsp + 0x50]
mulss xmm12, xmm8
mulss xmm9, xmm8
addss xmm12, xmm2
addss xmm9, dword [rbp - 0x54]
subss xmm15, xmm12
subss xmm0, xmm9
mulss xmm15, xmm1
mulss xmm0, xmm1
addss xmm15, xmm12
addss xmm0, xmm9
unpcklps xmm0, xmm15
movss xmm15, dword [0x1801b8174]
movsd qword [rsp + 0x78], xmm0
movss xmm7, dword [rsp + 0x7c]
movss xmm12, dword [rsp + 0x78]
jmp 0x180061dd1
bt ebx, 0x19
jae 0x180061dcd
mov rax, qword [0x1802d3cd8]
lea rcx, [rbp - 0x10]
movss xmm7, dword [rbp - 0x80]
movss xmm6, dword [rbp - 0x7c]
addss xmm6, xmm13
movdqu xmm0, xmmword [rax + 0x38f0]
movups xmmword [rbp - 0x10], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37f4]
movss dword [rbp - 0x6c], xmm6
movss dword [rbp - 4], xmm0
movaps xmm0, xmm7
addss xmm0, xmm13
movss dword [rbp - 0x70], xmm0
call fcn.1800377e8
mov rbx, qword [rbp + 0x18]
lea rdx, [rbp - 0x80]
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 - 0x70]
mov dword [rsp + 0x20], eax
call fcn.18004e418
mov rax, qword [0x1802d3cd8]
lea rcx, [rbp - 0x10]
movss dword [rbp - 0x6c], xmm6
movdqu xmm0, xmmword [rax + 0x38f0]
movups xmmword [rbp - 0x10], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37f4]
movss dword [rbp - 4], xmm0
movaps xmm0, xmm7
addss xmm0, xmm13
movss dword [rbp - 0x70], xmm0
call fcn.1800377e8
mov dword [rsp + 0x48], 0xf0
lea r8, [rbp - 0x70]
mov dword [rsp + 0x38], r12d
lea rdx, [rbp - 0x80]
mov dword [rsp + 0x30], r12d
mov r9d, eax
and dword [rsp + 0x28], 0
mov rcx, rbx
and dword [rsp + 0x20], 0
call fcn.18004e418
movss xmm2, dword [0x1801b862c]
movaps xmm0, xmm7
mov rcx, qword [rbp - 0x20]
addss xmm0, xmm13
unpcklps xmm0, xmm6
movq rdx, xmm0
call fcn.180038580
comiss xmm8, xmm10
jae 0x180061ac3
movaps xmm8, xmm10
jmp 0x180061ac8
minss xmm8, xmm11
movss xmm1, dword [0x1801b8174]
movaps xmm12, xmm7
movss xmm15, dword [0x1801b85e8]
mulss xmm8, xmm13
addss xmm12, xmm15
addss xmm8, xmm7
addss xmm8, xmm1
cvttss2si eax, xmm8
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm12
jb 0x180061b16
movaps xmm12, xmm7
addss xmm12, xmm13
subss xmm12, xmm15
minss xmm12, xmm0
movaps xmm0, xmm11
movss dword [rsp + 0x78], xmm12
subss xmm0, xmm14
comiss xmm0, xmm10
jae 0x180061b32
movaps xmm0, xmm10
jmp 0x180061b37
minss xmm0, xmm11
movss xmm14, dword [rbp - 0x7c]
mulss xmm0, xmm13
movaps xmm7, xmm14
addss xmm7, xmm15
addss xmm0, xmm14
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
comiss xmm2, xmm7
jb 0x180061b70
movaps xmm7, xmm6
subss xmm7, xmm15
minss xmm7, xmm2
mov rax, qword [0x1802d3cd8]
lea rcx, [rbp - 0x20]
movss xmm1, dword [rbp - 0x38]
movaps xmm8, xmm13
mulss xmm8, dword [0x1801b8104]
movaps xmm6, xmm1
movdqu xmm0, xmmword [rax + 0x38f0]
addss xmm6, dword [rsp + 0x74]
movups xmmword [rbp - 0x20], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37f4]
movss dword [rsp + 0x7c], xmm7
movss dword [rbp - 0x70], xmm6
movss dword [rbp - 0x14], xmm0
movaps xmm0, xmm14
addss xmm0, xmm8
movss dword [rsp + 0x58], xmm1
movss dword [rsp + 0x5c], xmm14
movss dword [rbp - 0x6c], xmm0
call fcn.1800377e8
mov dword [rsp + 0x48], 0x30
lea r8, [rbp - 0x70]
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.18004e418
movss dword [rbp - 0x70], xmm6
lea r12, [rbp + 0x64]
movss xmm6, dword [rbp - 0x38]
mov eax, 1
movss dword [rsp + 0x58], xmm6
mov r15, rbx
mov r9d, edi
movd xmm1, eax
cvtdq2ps xmm1, xmm1
lea ebx, [rax + 1]
add r12, 4
lea r8, [rbp - 0x70]
mov rcx, r15
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, xmm8
mulss xmm0, xmm8
addss xmm1, xmm14
addss xmm0, xmm14
movss dword [rsp + 0x5c], xmm1
movss dword [rbp - 0x6c], xmm0
call fcn.18004e240
mov eax, ebx
cmp ebx, 5
jl 0x180061c28
mov rax, qword [0x1802d3cd8]
lea rcx, [rbp - 0x20]
movss xmm8, dword [rsp + 0x74]
movaps xmm1, xmm13
addss xmm1, xmm14
movss dword [rsp + 0x58], xmm6
movdqu xmm0, xmmword [rax + 0x38f0]
movups xmmword [rbp - 0x20], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37f4]
movss dword [rbp - 0x6c], xmm1
movss dword [rbp - 0x14], xmm0
movaps xmm0, xmm6
addss xmm0, xmm8
movss dword [rbp - 0x70], xmm0
movaps xmm0, xmm13
mulss xmm0, dword [0x1801b8230]
addss xmm0, xmm14
movss dword [rsp + 0x5c], xmm0
call fcn.1800377e8
mov dword [rsp + 0x48], 0xc0
lea r8, [rbp - 0x70]
mov dword [rsp + 0x38], r13d
lea rdx, [rsp + 0x58]
mov dword [rsp + 0x30], r13d
mov r9d, eax
mov eax, dword [rbp - 0x5c]
mov rcx, r15
mov dword [rsp + 0x28], eax
mov r13, r15
mov dword [rsp + 0x20], eax
call fcn.18004e418
movaps xmm0, xmm6
movaps xmm1, xmm14
addss xmm1, xmm13
movaps xmm2, xmm10
addss xmm0, xmm8
unpcklps xmm0, xmm1
movaps xmm1, xmm6
unpcklps xmm1, xmm14
movq rdx, xmm0
movq rcx, xmm1
call fcn.180038580
movss xmm2, dword [rbp + 0x50]
subss xmm6, xmm11
movss xmm0, dword [r14 + 0x37f4]
movaps xmm1, xmm2
mulss xmm9, xmm13
addss xmm1, xmm11
mov rcx, r15
movaps xmm3, xmm8
movss dword [rsp + 0x20], xmm0
addss xmm3, xmm15
addss xmm9, xmm14
unpcklps xmm1, xmm2
movq r8, xmm1
addss xmm9, dword [0x1801b8174]
cvttss2si eax, xmm9
movd xmm4, eax
cvtdq2ps xmm4, xmm4
unpcklps xmm6, xmm4
movq rdx, xmm6
call fcn.180060068
movss xmm15, dword [0x1801b8174]
mov r9d, 4
mov r15b, byte [rsp + 0x50]
jmp 0x180061dde
mov r13, qword [rbp + 0x18]
movss xmm8, dword [rsp + 0x74]
movss xmm14, dword [rbp - 0x7c]
mov al, byte [rsp + 0x51]
addss xmm7, xmm11
movdqa xmm0, xmmword [0x1801b89f0]
lea rcx, [rbp + 0x60]
neg al
movss dword [rbp - 0x70], xmm12
movups xmmword [rbp + 0x60], xmm0
sbb eax, eax
and eax, 2
movss dword [rbp - 0x6c], xmm7
add eax, r9d
movd xmm6, eax
cvtdq2ps xmm6, xmm6
call fcn.1800377e8
lea rdx, [rbp - 0x70]
xor edi, edi
mov r9d, eax
mov rcx, r13
movss dword [rsp + 0x28], xmm11
movaps xmm2, xmm6
mov dword [rsp + 0x20], edi
call fcn.18004f714
mov r9d, dword [rsp + 0x68]
lea rdx, [rsp + 0x78]
movss dword [rsp + 0x28], xmm11
movaps xmm2, xmm6
mov rcx, r13
mov dword [rsp + 0x20], edi
call fcn.18004f714
cmp dword [rbp + 0x14], 0x10000
jne 0x180062069
movss xmm0, dword [rsi + 0xc]
comiss xmm0, xmm10
jb 0x180061e78
movaps xmm10, xmm0
minss xmm10, xmm11
movss xmm3, dword [rsi]
lea rcx, [rbp - 0x10]
movss xmm2, dword [rsi + 4]
movaps xmm6, xmm13
mov rax, qword [0x1802d3cd8]
addss xmm6, dword [r14 + 0x384c]
movss xmm7, dword [rbp - 0x80]
and dword [rbp - 0x64], edi
movaps xmm1, xmm7
and dword [rsp + 0x64], edi
addss xmm1, xmm13
movss dword [rbp - 0x20], xmm7
movaps xmm0, xmm6
movss dword [rbp - 0x10], xmm3
addss xmm0, xmm8
movss dword [rbp - 0xc], xmm2
addss xmm6, xmm14
movss dword [rbp - 0x70], xmm3
movss dword [rbp - 0x18], xmm1
movss xmm1, dword [rsi + 8]
movss dword [rbp - 8], xmm1
addss xmm0, xmm14
movss dword [rbp - 0x6c], xmm2
movss dword [rbp - 0x1c], xmm6
movss dword [rbp - 0x68], xmm1
movss dword [rsp + 0x58], xmm3
movss dword [rsp + 0x5c], xmm2
movss dword [rbp - 0x14], xmm0
movss xmm0, dword [r14 + 0x37f4]
movss dword [rbp - 4], xmm0
movss dword [rbp - 0x24], xmm0
movdqu xmm0, xmmword [rax + 0x38f0]
movss dword [rsp + 0x60], xmm1
movups xmmword [rbp + 0x28], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37f4]
movss dword [rbp - 0x30], xmm3
movss dword [rbp - 0x2c], xmm2
movss dword [rbp + 0x34], xmm0
movss dword [rbp - 0x28], xmm1
call fcn.1800377e8
lea rcx, [rbp - 0x70]
mov ebx, eax
call fcn.1800377e8
lea rcx, [rsp + 0x58]
mov r11d, eax
call fcn.1800377e8
lea rcx, [rbp - 0x30]
mov r10d, eax
call fcn.1800377e8
lea rcx, [rbp + 0x28]
mov r8d, eax
call fcn.1800377e8
mov dword [rsp + 0x48], 0xf0
lea rdx, [rbp - 0x20]
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 - 0x18]
call fcn.18004e418
mov r8, qword [0x1802d3cd8]
movaps xmm0, xmm11
and dword [rbp - 0x10], edi
subss xmm0, xmm10
movss xmm2, dword [r14 + 0x37f4]
and dword [rbp - 0xc], edi
mulss xmm0, xmm13
addss xmm0, xmm7
addss xmm0, xmm15
cvttss2si eax, xmm0
movd xmm1, eax
mov rax, qword [r8 + 0x3ec8]
cvtdq2ps xmm1, xmm1
mov byte [rax + 0xb8], 1
subss xmm1, xmm11
movaps xmm0, xmm1
unpcklps xmm0, xmm6
movsd qword [rbp - 0x20], xmm0
addss xmm1, dword [0x1801b8660]
mulss xmm2, dword [r8 + 0x37f4]
addss xmm8, xmm6
and dword [rbp - 8], edi
lea rcx, [rbp - 0x10]
movss dword [rbp - 0x70], xmm1
movss dword [rbp - 0x6c], xmm8
movss dword [rbp - 4], xmm2
call fcn.1800377e8
mov rcx, qword [r8 + 0x3ec8]
lea rdx, [rbp - 0x20]
movss xmm0, dword [0x1801b8650]
lea r8, [rbp - 0x70]
movss dword [rsp + 0x30], xmm11
mov r9d, eax
mov dword [rsp + 0x28], edi
mov rcx, qword [rcx + 0x298]
movss dword [rsp + 0x20], xmm0
call fcn.18004e090
call fcn.180043c98
test r15b, r15b
je 0x1800620b0
neg dword [rbp - 0x60]
lea rcx, [rbp + 0x80]
mov rdx, rsi
sbb r8, r8
and r8, 0xfffffffffffffffc
add r8, 0x10
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x180062099
mov r15b, dil
jmp 0x1800620b0
mov ecx, dword [r14 + 0x4764]
mov r8b, byte [rbp - 0x78]
mov r15b, r8b
test ecx, ecx
je 0x1800620b0
call fcn.1800397fc
cmp dword [rbp + 0x54], edi
jne 0x1800620bc
mov dword [r14 + 0x5b08], edi
mov rcx, qword [0x1802d3cd8]
mov al, r15b
mov rdx, qword [rcx + 0x3ec8]
dec dword [rdx + 0xf0]
lea r11, [rsp + 0x270]
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