Function at 0x18007fe70
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x278]
sub rsp, 0x338
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
movaps xmmword [rax - 0xb8], xmm12
movaps xmmword [rax - 0xc8], xmm13
movaps xmmword [rax - 0xd8], xmm14
movaps xmmword [rax - 0xe8], xmm15
mov rax, qword [0x1802ec4c0]
xor rax, rsp
mov qword [rbp + 0x180], rax
mov qword [rbp + 8], r9
mov r14, r8
mov qword [rbp - 0x10], r8
mov rdi, rdx
mov qword [rbp], rdx
mov dword [rbp - 0x48], ecx
xor esi, esi
mov dword [rsp + 0x60], esi
movsxd r15, ecx
imul r12, r15, 0x70
mov qword [rbp - 0x28], r12
lea r13, [0x18034e600]
cmp byte [r12 + r13 + 0x48], sil
je 0x180081f9c
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
movdqa xmm1, xmmword [reloc.OLEAUT32.dll_SysStringLen]
movdqa xmmword [rbp + 0xf0], xmm1
movdqu xmmword [rbp + 0x20], xmm1
mov eax, dword [str.height]
mov dword [rbp + 0x10], eax
movzx eax, word [0x1802a1e88]
mov word [rbp + 0x14], ax
mov byte [rbp + 0x16], sil
mov r8b, 1
lea rdx, [rbp + 0x10]
movss xmm6, dword [0x1802b8278]
movaps xmm0, xmm6
call fcn.180059ab0
movaps xmm7, xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x30], xmm1
xorps xmm2, xmm2
movdqu xmmword [rbp + 0x40], xmm2
mov r8d, 5
lea rdx, str.width
lea rcx, [rbp + 0x30]
call fcn.1800596c0
nop
mov r8b, 1
lea rdx, [rbp + 0x30]
movaps xmm0, xmm6
call fcn.180059ab0
movdqa xmm1, xmmword [0x1802b9370]
movdqa xmmword [rbp + 0x80], xmm1
mov dword [rsp + 0x38], 0xf0
xorps xmm12, xmm12
movss dword [rsp + 0x28], xmm12
movss dword [rsp + 0x20], xmm7
movaps xmm3, xmm0
lea r8, [rbp + 0x80]
xorps xmm1, xmm1
xorps xmm0, xmm0
call fcn.18007f8c0
nop
mov r8, qword [rbp + 0x48]
cmp r8, 0xf
jbe 0x18007fff5
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x30]
call fcn.180059850
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
mov r8d, 6
lea rdx, str.height
lea rcx, [rbp + 0x30]
call fcn.1800596c0
mov r8b, 1
lea rdx, [rbp + 0x30]
movss xmm0, dword [0x1802b81a4]
call fcn.180059ab0
movaps xmm10, xmm0
mov r8, qword [rbp + 0x48]
cmp r8, 0xf
jbe 0x180080049
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x30]
call fcn.180059850
xorps xmm1, xmm1
movups xmmword [rbp + 0x30], xmm1
xorps xmm2, xmm2
movdqu xmmword [rbp + 0x40], xmm2
mov r8d, 6
lea rdx, str.height
lea rcx, [rbp + 0x30]
call fcn.1800596c0
mov r8b, 1
lea rdx, [rbp + 0x30]
movss xmm0, dword [0x1802b818c]
call fcn.180059ab0
movaps xmm8, xmm0
mov r8, qword [rbp + 0x48]
cmp r8, 0xf
jbe 0x18008009d
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x30]
call fcn.180059850
xorps xmm1, xmm1
movups xmmword [rbp + 0x30], xmm1
xorps xmm2, xmm2
movdqu xmmword [rbp + 0x40], xmm2
mov r8d, 2
lea rdx, [0x1802a344c]
lea rcx, [rbp + 0x30]
call fcn.1800596c0
movss dword [rsp + 0x28], xmm12
movss dword [rsp + 0x20], xmm12
lea r9, [rbp + 0x30]
movaps xmm2, xmm8
movaps xmm1, xmm10
lea rcx, [rbp - 0x50]
call fcn.180059bb0
mov r8, qword [rbp + 0x48]
cmp r8, 0xf
jbe 0x1800800fc
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x30]
call fcn.180059850
movss xmm11, dword [0x1802f8f0c]
mulss xmm11, dword [0x1802b83f4]
divss xmm11, dword [0x1802b8474]
movss dword [rbp - 0x30], xmm11
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
mov r8d, 8
lea rdx, str.ClickGUI
lea rcx, [rbp + 0x30]
call fcn.1800596c0
nop
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x78]
call fcn.180133930
nop
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0xd0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xe0], xmm1
mov r8d, 0x15
lea rdx, str.colors_secondary2_rgb
lea rcx, [rbp + 0xd0]
call fcn.1800596c0
nop
lea rdx, [rbp + 0xd0]
lea rcx, [rbx + 0x70]
call fcn.180044ae0
cmp byte [rax + 0x28], 0
je 0x1800801a5
movups xmm0, xmmword [0x180343f50]
jmp 0x180080245
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xa0], xmm1
mov r8d, 8
lea rdx, str.ClickGUI
lea rcx, [rbp + 0x90]
call fcn.1800596c0
nop
mov dword [rsp + 0x60], 1
lea rdx, [rbp + 0x90]
lea rcx, [rbp + 0x50]
call fcn.180133930
nop
mov dword [rsp + 0x60], 3
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
mov r8d, 0x11
lea rdx, str.colors_secondary2
lea rcx, [rbp + 0x10]
call fcn.1800596c0
nop
mov esi, 7
mov dword [rsp + 0x60], esi
lea rdx, [rbp + 0x10]
lea rcx, [rbx + 0x70]
call fcn.180044ae0
lea rdx, [rax + 0x28]
lea rcx, [rsp + 0x70]
call fcn.180085120
movups xmm0, xmmword [rax]
lea rax, [rbp + 0x80]
movups xmmword [rbp + 0x80], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x70], xmm0
test sil, 4
je 0x180080271
and esi, 0xfffffffb
mov dword [rsp + 0x60], esi
lea rcx, [rbp + 0x10]
call fcn.180059890
nop
test sil, 2
je 0x180080288
and esi, 0xfffffffd
mov dword [rsp + 0x60], esi
lea rcx, [rbp + 0x50]
call fcn.18005fd70
nop
test sil, 1
je 0x1800802a2
and esi, 0xfffffffe
mov dword [rsp + 0x60], esi
lea rcx, [rbp + 0x90]
call fcn.180059890
nop
lea rcx, [rbp + 0xd0]
call fcn.180059890
nop
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x1800802be
call fcn.180003820
nop
mov r8, qword [rbp + 0x48]
cmp r8, 0xf
jbe 0x1800802d5
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x30]
call fcn.180059850
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xa0], xmm1
mov r8d, 8
lea rdx, str.ClickGUI
lea rcx, [rbp + 0x90]
call fcn.1800596c0
nop
lea rdx, [rbp + 0x90]
lea rcx, [rbp + 0x80]
call fcn.180133930
nop
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
mov r8d, 0x13
lea rdx, str.o_colors_secondary2
lea rcx, [rbp + 0x30]
call fcn.1800596c0
lea rdx, [rbp + 0x30]
lea rcx, [rbx + 0x70]
call fcn.180044ae0
movss xmm6, dword [rax + 0x28]
movss dword [rbp - 0x34], xmm6
mov r8, qword [rbp + 0x48]
cmp r8, 0xf
jbe 0x18008036f
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x30]
call fcn.180059850
nop
lea rcx, [rbp + 0x80]
call fcn.18005fd70
nop
mov r8, qword [rbp + 0xa8]
cmp r8, 0xf
jbe 0x18008039c
mov rdx, qword [rbp + 0x90]
lea rcx, [rbp + 0x90]
call fcn.180059850
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
mov r8d, 8
lea rdx, str.ClickGUI
lea rcx, [rbp + 0x10]
call fcn.1800596c0
nop
lea rdx, [rbp + 0x10]
lea rcx, [rsp + 0x70]
call fcn.180133930
nop
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xa0], xmm1
mov r8d, 0x15
lea rdx, str.colors_secondary1_rgb
lea rcx, [rbp + 0x90]
call fcn.1800596c0
nop
lea rdx, [rbp + 0x90]
lea rcx, [rbx + 0x70]
call fcn.180044ae0
cmp byte [rax + 0x28], 0
je 0x180080425
movups xmm0, xmmword [0x180343f50]
jmp 0x1800804c3
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
mov r8d, 8
lea rdx, str.ClickGUI
lea rcx, [rbp + 0x30]
call fcn.1800596c0
nop
or esi, 8
mov dword [rsp + 0x60], esi
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x50]
call fcn.180133930
nop
or esi, 0x10
mov dword [rsp + 0x60], esi
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xc0], xmm1
mov r8d, 0x11
lea rdx, str.colors_secondary1
lea rcx, [rbp + 0xb0]
call fcn.1800596c0
nop
or esi, 0x20
mov dword [rsp + 0x60], esi
lea rdx, [rbp + 0xb0]
lea rcx, [rbx + 0x70]
call fcn.180044ae0
lea rdx, [rax + 0x28]
lea rcx, [rbp + 0xd0]
call fcn.180085120
movups xmm0, xmmword [rax]
lea rax, [rbp + 0x80]
movups xmmword [rbp + 0x80], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x78], xmm0
test sil, 0x20
je 0x1800804f2
and esi, 0xffffffdf
mov dword [rsp + 0x60], esi
lea rcx, [rbp + 0xb0]
call fcn.180059890
nop
test sil, 0x10
je 0x180080509
and esi, 0xffffffef
mov dword [rsp + 0x60], esi
lea rcx, [rbp + 0x50]
call fcn.18005fd70
nop
test sil, 8
je 0x18008052e
and esi, 0xfffffff7
mov dword [rsp + 0x60], esi
mov r8, qword [rbp + 0x48]
cmp r8, 0xf
jbe 0x18008052e
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x30]
call fcn.180059850
nop
mov r8, qword [rbp + 0xa8]
cmp r8, 0xf
jbe 0x18008054f
mov rdx, qword [rbp + 0x90]
lea rcx, [rbp + 0x90]
call fcn.180059850
nop
lea rcx, [rsp + 0x70]
call fcn.18005fd70
nop
mov r8, qword [rbp + 0x28]
cmp r8, 0xf
jbe 0x180080571
mov rdx, qword [rbp + 0x10]
lea rcx, [rbp + 0x10]
call fcn.180059850
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
mov r8d, 8
lea rdx, str.ClickGUI
lea rcx, [rbp + 0x30]
call fcn.1800596c0
nop
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x80]
call fcn.180133930
nop
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
mov r8d, 0x13
lea rdx, str.o_colors_secondary1
lea rcx, [rbp + 0x10]
call fcn.1800596c0
lea rdx, [rbp + 0x10]
lea rcx, [rbx + 0x70]
call fcn.180044ae0
movss xmm9, dword [rax + 0x28]
mov r8, qword [rbp + 0x28]
cmp r8, 0xf
jbe 0x1800805fb
mov rdx, qword [rbp + 0x10]
lea rcx, [rbp + 0x10]
call fcn.180059850
nop
lea rcx, [rbp + 0x80]
call fcn.18005fd70
nop
mov r8, qword [rbp + 0x48]
cmp r8, 0xf
jbe 0x18008061f
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x30]
call fcn.180059850
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
mov r8d, 8
lea rdx, str.ClickGUI
lea rcx, [rbp + 0x30]
call fcn.1800596c0
nop
lea rdx, [rbp + 0x30]
lea rcx, [rsp + 0x70]
call fcn.180133930
nop
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
mov r8d, 0xf
lea rdx, str.colors_text_rgb
lea rcx, [rbp + 0x10]
call fcn.1800596c0
nop
lea rdx, [rbp + 0x10]
lea rcx, [rbx + 0x70]
call fcn.180044ae0
cmp byte [rax + 0x28], 0
je 0x18008069c
movups xmm0, xmmword [0x180343f50]
jmp 0x180080748
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xa0], xmm1
mov r8d, 8
lea rdx, str.ClickGUI
lea rcx, [rbp + 0x90]
call fcn.1800596c0
nop
or esi, 0x40
mov dword [rsp + 0x60], esi
lea rdx, [rbp + 0x90]
lea rcx, [rbp + 0x50]
call fcn.180133930
nop
bts esi, 7
mov dword [rsp + 0x60], esi
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xc0], xmm1
mov r8d, 0xb
lea rdx, str.colors_text
lea rcx, [rbp + 0xb0]
call fcn.1800596c0
nop
bts esi, 8
mov dword [rsp + 0x60], esi
lea rdx, [rbp + 0xb0]
lea rcx, [rbx + 0x70]
call fcn.180044ae0
lea rdx, [rax + 0x28]
lea rcx, [rbp + 0xd0]
call fcn.180085120
movups xmm0, xmmword [rax]
lea rax, [rbp + 0x80]
movups xmmword [rbp + 0x80], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x80], xmm0
bt esi, 8
jae 0x18008077b
btr esi, 8
mov dword [rsp + 0x60], esi
lea rcx, [rbp + 0xb0]
call fcn.180059890
nop
test sil, sil
jns 0x180080792
btr esi, 7
mov dword [rsp + 0x60], esi
lea rcx, [rbp + 0x50]
call fcn.18005fd70
nop
test sil, 0x40
je 0x1800807ac
and esi, 0xffffffbf
mov dword [rsp + 0x60], esi
lea rcx, [rbp + 0x90]
call fcn.180059890
nop
mov r8, qword [rbp + 0x28]
cmp r8, 0xf
jbe 0x1800807c4
mov rdx, qword [rbp + 0x10]
lea rcx, [rbp + 0x10]
call fcn.180059850
nop
lea rcx, [rsp + 0x70]
call fcn.18005fd70
nop
mov r8, qword [rbp + 0x48]
cmp r8, 0xf
jbe 0x1800807e6
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x30]
call fcn.180059850
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
mov r8d, 8
lea rdx, str.ClickGUI
lea rcx, [rbp + 0x30]
call fcn.1800596c0
nop
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x50]
call fcn.180133930
nop
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
mov r8d, 0xd
lea rdx, str.o_colors_text
lea rcx, [rbp + 0x10]
call fcn.1800596c0
lea rdx, [rbp + 0x10]
lea rcx, [rbx + 0x70]
call fcn.180044ae0
movss xmm0, dword [rax + 0x28]
movss dword [rbp - 0x44], xmm0
mov r8, qword [rbp + 0x28]
cmp r8, 0xf
jbe 0x180080871
mov rdx, qword [rbp + 0x10]
lea rcx, [rbp + 0x10]
call fcn.180059850
nop
lea rcx, [rbp + 0x50]
call fcn.18005fd70
nop
mov r8, qword [rbp + 0x48]
cmp r8, 0xf
jbe 0x180080892
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x30]
call fcn.180059850
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xc0], xmm1
mov r8d, 6
lea rdx, str.height
lea rcx, [rbp + 0xb0]
call fcn.1800596c0
nop
movss xmm0, dword [rbp + 0x70]
movss dword [rbp - 0x40], xmm0
movss dword [rbp + 0x50], xmm0
movss xmm0, dword [rbp + 0x74]
movss dword [rbp - 0x3c], xmm0
movss dword [rbp + 0x54], xmm0
movss xmm0, dword [rbp + 0x78]
movss dword [rbp - 0x38], xmm0
movss dword [rbp + 0x58], xmm0
movss dword [rbp + 0x5c], xmm6
mov r8b, 1
lea rdx, [rbp + 0xb0]
movss xmm0, dword [0x1802b8004]
call fcn.180059ab0
movaps xmm2, xmm0
movss dword [rsp + 0x30], xmm11
movss dword [rsp + 0x28], xmm8
movss dword [rsp + 0x20], xmm10
lea r9, [rbp + 0x50]
movss xmm7, dword [rbp - 0x4c]
movaps xmm1, xmm7
movss xmm6, dword [rbp - 0x50]
movaps xmm0, xmm6
call fcn.18007f6e0
nop
lea rcx, [rbp + 0xb0]
call fcn.180059890
movss xmm0, dword [rbp - 0x78]
movss dword [rbp + 0x50], xmm0
movss xmm2, dword [rbp - 0x74]
movss dword [rbp + 0x54], xmm2
movss xmm3, dword [rbp - 0x70]
movss dword [rbp + 0x58], xmm3
movss dword [rbp + 0x5c], xmm9
mov dword [rsp + 0x38], 0xf0
movss dword [rsp + 0x28], xmm11
movss dword [rsp + 0x20], xmm8
movaps xmm3, xmm10
lea r8, [rbp + 0x50]
movaps xmm1, xmm7
movaps xmm0, xmm6
call fcn.18007f8c0
movaps xmm3, xmm8
movaps xmm2, xmm10
movaps xmm1, xmm7
movaps xmm0, xmm6
call fcn.180084c70
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
mov r8d, 4
lea rdx, str.left
lea rcx, [rbp + 0x10]
call fcn.1800596c0
xor r8d, r8d
lea rdx, [rbp + 0x10]
movss xmm0, dword [0x1802b8088]
call fcn.1800598f0
movaps xmm11, xmm0
mov r8, qword [rbp + 0x28]
cmp r8, 0xf
jbe 0x1800809fc
mov rdx, qword [rbp + 0x10]
lea rcx, [rbp + 0x10]
call fcn.180059850
xorps xmm1, xmm1
movups xmmword [rbp + 0x10], xmm1
xorps xmm2, xmm2
movdqu xmmword [rbp + 0x20], xmm2
mov r8d, 3
lea rdx, [0x1802a1e60]
lea rcx, [rbp + 0x10]
call fcn.1800596c0
xor r8d, r8d
lea rdx, [rbp + 0x10]
movss xmm6, dword [0x1802b80a0]
movaps xmm0, xmm6
call fcn.1800598f0
movaps xmm7, xmm0
movss dword [rsp + 0x64], xmm0
mov r8, qword [rbp + 0x28]
cmp r8, 0xf
jbe 0x180080a58
mov rdx, qword [rbp + 0x10]
lea rcx, [rbp + 0x10]
call fcn.180059850
movaps xmm0, xmm8
mulss xmm0, dword [0x1802b80e4]
movss dword [rbp - 0x50], xmm0
mulss xmm8, dword [0x1802b8144]
movss dword [rbp - 0x64], xmm8
movaps xmm14, xmm10
mulss xmm14, dword [0x1802b8204]
movaps xmm0, xmm8
mulss xmm0, dword [0x1802b8154]
movss dword [rbp - 0x60], xmm0
movaps xmm0, xmm8
mulss xmm0, xmm6
movss dword [rbp - 0x68], xmm0
movaps xmm15, xmm8
addss xmm15, xmm8
movaps xmm13, xmm0
addss xmm13, xmm15
movss dword [rbp - 0x80], xmm13
movaps xmm0, xmm8
mulss xmm0, dword [0x1802b82a8]
subss xmm10, xmm0
movss dword [rbp - 0x58], xmm10
movss xmm2, dword [r12 + r13 + 0x60]
movss xmm9, dword [0x1802b822c]
movss xmm1, dword [0x1802b84c8]
ucomiss xmm2, xmm1
jp 0x180080c62
jne 0x180080c62
movss xmm0, dword [r12 + r13 + 0x64]
ucomiss xmm0, xmm1
jp 0x180080c62
jne 0x180080c62
mov rdx, rdi
lea rcx, [rbp + 0x70]
call fcn.180085120
movups xmm3, xmmword [rax]
movaps xmm0, xmm3
movaps xmm4, xmm3
shufps xmm4, xmm3, 0x55
minss xmm0, xmm4
movaps xmm6, xmm3
shufps xmm6, xmm3, 0xaa
xorps xmm1, xmm1
cvtss2sd xmm1, xmm6
xorps xmm2, xmm2
cvtss2sd xmm2, xmm0
minsd xmm2, xmm1
movaps xmm0, xmm3
maxss xmm0, xmm4
xorps xmm5, xmm5
cvtss2sd xmm5, xmm0
maxsd xmm5, xmm1
cvtpd2ps xmm8, xmm5
movaps xmm1, xmm5
subsd xmm1, xmm2
movsd xmm0, qword [0x1802b8180]
comisd xmm0, xmm1
xorps xmm0, xmm0
ja 0x180080c14
comisd xmm5, xmm0
jbe 0x180080c0c
movaps xmm0, xmm1
divsd xmm0, xmm5
cvtpd2ps xmm7, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm3
comisd xmm0, xmm5
xorps xmm0, xmm0
jb 0x180080bab
subss xmm4, xmm6
cvtss2sd xmm0, xmm4
divsd xmm0, xmm1
jmp 0x180080be2
cvtss2sd xmm0, xmm4
comisd xmm0, xmm5
xorps xmm0, xmm0
jb 0x180080bce
subss xmm6, xmm3
cvtss2sd xmm0, xmm6
divsd xmm0, xmm1
addsd xmm0, qword [0x1802b82d0]
jmp 0x180080be2
subss xmm3, xmm4
cvtss2sd xmm0, xmm3
divsd xmm0, xmm1
addsd xmm0, qword [0x1802b82e8]
cvtpd2ps xmm2, xmm0
cvtps2pd xmm0, xmm2
mulsd xmm0, qword [0x1802b8318]
cvtpd2ps xmm0, xmm0
comiss xmm12, xmm0
jbe 0x180080c17
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x1802b8328]
cvtpd2ps xmm0, xmm0
jmp 0x180080c17
movss xmm0, dword [0x1802b84a0]
xorps xmm7, xmm7
movss xmm4, dword [0x1802b8454]
divss xmm0, xmm4
mulss xmm0, xmm14
movss dword [r12 + r13 + 0x4c], xmm0
movss dword [r12 + r13 + 0x50], xmm0
movaps xmm2, xmm10
mulss xmm2, xmm7
movss dword [r12 + r13 + 0x60], xmm2
movaps xmm0, xmm9
subss xmm0, xmm8
mulss xmm0, xmm13
movss dword [r12 + r13 + 0x64], xmm0
movss xmm7, dword [rsp + 0x64]
jmp 0x180080c6a
movss xmm4, dword [0x1802b8454]
movss xmm0, dword [r12 + r13 + 0x64]
divss xmm0, xmm13
movaps xmm3, xmm9
subss xmm3, xmm0
divss xmm2, xmm10
movss xmm1, dword [r12 + r13 + 0x4c]
divss xmm1, xmm14
mulss xmm1, xmm4
lea rcx, [rbp + 0x70]
call fcn.180084f60
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x70], xmm0
movss xmm13, dword [r12 + r13 + 0x58]
divss xmm13, xmm14
movaps xmm0, xmm14
mulss xmm0, dword [r14]
movss dword [r12 + r13 + 0x58], xmm0
cmp qword [r12 + r13 + 0x10], 0
jne 0x180080cd3
lea rcx, [r12 + r13]
mov rdx, rdi
call fcn.180040620
movss xmm0, dword [r12 + r13 + 0x20]
ucomiss xmm0, xmm12
jp 0x180080cea
jne 0x180080cea
mov eax, dword [r14]
mov dword [r12 + r13 + 0x20], eax
lea rdx, [r12 + r13]
lea rcx, [rbp + 0x50]
call fcn.180085120
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x78], xmm0
movss xmm10, dword [r12 + r13 + 0x20]
movaps xmm9, xmm11
movss xmm2, dword [0x1802b822c]
addss xmm9, xmm2
movaps xmm8, xmm7
addss xmm8, xmm2
movss xmm1, dword [rbp - 0x64]
movaps xmm0, xmm1
addss xmm0, xmm11
movss dword [rbp - 0x5c], xmm0
movaps xmm7, xmm0
subss xmm7, xmm2
movss xmm6, dword [rsp + 0x64]
subss xmm6, xmm2
movaps xmm0, xmm6
addss xmm0, xmm1
subss xmm0, xmm2
movss dword [rbp + 0x50], xmm9
movss dword [rbp + 0x54], xmm8
movss dword [rbp + 0x58], xmm7
movss dword [rbp + 0x5c], xmm0
mov r9b, 1
lea r8, [0x1802a0cc0]
lea rdx, [rbp + 0x50]
mov ecx, 0xa0
call fcn.1800734b0
movss xmm0, dword [rbp + 0x70]
movss dword [rbp + 0x50], xmm0
movss xmm1, dword [rbp + 0x74]
movss dword [rbp + 0x54], xmm1
movss xmm0, dword [rbp + 0x78]
movss dword [rbp + 0x58], xmm0
movss dword [rbp + 0x5c], xmm13
mov dword [rsp + 0x38], 0xf0
movss dword [rsp + 0x28], xmm12
movss xmm13, dword [rbp - 0x64]
movss dword [rsp + 0x20], xmm13
movaps xmm3, xmm13
lea r8, [rbp + 0x50]
movss xmm1, dword [rsp + 0x64]
movaps xmm0, xmm11
call fcn.18007f8c0
addss xmm6, xmm15
addss xmm6, dword [rbp - 0x68]
subss xmm6, dword [0x1802b822c]
addss xmm8, xmm13
movss xmm13, dword [rbp - 0x68]
addss xmm8, xmm13
movss dword [rbp + 0x50], xmm9
movss dword [rbp + 0x54], xmm8
movss dword [rbp + 0x58], xmm7
movss dword [rbp + 0x5c], xmm6
mov r9b, 1
lea r8, [0x1802a0cc0]
lea rdx, [rbp + 0x50]
mov ecx, 0xa0
call fcn.1800734b0
movss xmm0, dword [rbp - 0x78]
movss dword [rbp + 0x50], xmm0
movss xmm1, dword [rbp - 0x74]
movss dword [rbp + 0x54], xmm1
movss xmm0, dword [rbp - 0x70]
movss dword [rbp + 0x58], xmm0
movss dword [rbp + 0x5c], xmm10
movss xmm9, dword [rbp - 0x64]
movaps xmm1, xmm9
addss xmm1, dword [rsp + 0x64]
addss xmm1, xmm13
mov dword [rsp + 0x38], 0xf0
movss dword [rsp + 0x28], xmm12
movss dword [rsp + 0x20], xmm9
movaps xmm3, xmm9
lea r8, [rbp + 0x50]
movaps xmm0, xmm11
call fcn.18007f8c0
movdqa xmm2, xmmword [0x1802b93f0]
movaps xmmword [rbp + 0x110], xmm2
movdqa xmm0, xmmword [0x1802b9430]
movaps xmmword [rbp + 0x120], xmm0
movdqa xmm1, xmmword [0x1802b9420]
movaps xmmword [rbp + 0x130], xmm1
movdqa xmm0, xmmword [0x1802b9580]
movaps xmmword [rbp + 0x140], xmm0
movdqa xmm1, xmmword [0x1802b9560]
movaps xmmword [rbp + 0x150], xmm1
movdqa xmm0, xmmword [0x1802b9570]
movaps xmmword [rbp + 0x160], xmm0
movaps xmmword [rbp + 0x170], xmm2
xor r14d, r14d
movaps xmm1, xmm15
addss xmm1, dword [rsp + 0x64]
movaps xmm0, xmm9
mulss xmm0, dword [0x1802b8168]
addss xmm0, xmm1
movaps xmm6, xmm14
divss xmm6, dword [0x1802b8360]
movss dword [rsp + 0x74], xmm0
movss xmm0, dword [rbp - 0x60]
addss xmm0, xmm1
movss dword [rbp + 0xd4], xmm0
lea rdi, [rbp + 0x110]
nop word [rax + rax]
mov rax, qword [0x180343a38]
mov rax, qword [rax + 0x4b28]
lea r8, [0x180299d98]
xor edx, edx
mov rcx, qword [rax]
call fcn.180009c50
mov r10, rax
mov rcx, rdi
call fcn.180005a70
mov r9d, eax
add rdi, 0x10
mov rcx, rdi
call fcn.180005a70
lea ebx, [r14 + 1]
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm6
addss xmm0, xmm11
movss dword [rsp + 0x70], xmm0
movd xmm1, r14d
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm6
addss xmm1, xmm11
movss dword [rbp + 0xd0], xmm1
mov dword [rsp + 0x30], r9d
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], eax
lea r8, [rsp + 0x70]
lea rdx, [rbp + 0xd0]
mov rcx, r10
call fcn.1800224d0
mov r14d, ebx
cmp ebx, 6
jl 0x180080f30
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
movdqa xmm1, xmmword [0x1802b85a0]
movdqu xmmword [rbp + 0x20], xmm1
mov eax, dword [0x1802a1e60]
mov word [rbp + 0x10], ax
movzx eax, byte [0x1802a1e62]
mov byte [rbp + 0x12], al
mov byte [rbp + 0x13], 0
xor r8d, r8d
lea rdx, [rbp + 0x10]
movss xmm7, dword [0x1802b80a0]
movaps xmm0, xmm7
call fcn.1800598f0
movaps xmm10, xmm0
movss dword [rsp + 0x64], xmm10
mov rax, qword [0x180343a38]
mov rax, qword [rax + 0x4b28]
lea r8, [0x180299d98]
xor edx, edx
mov rcx, qword [rax]
call fcn.180009c50
mov rdi, rax
imul rcx, r15, 0x70
movss xmm6, dword [rcx + r13 + 0x4c]
divss xmm6, xmm14
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xd0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x68]
movss xmm8, dword [0x1802b822c]
movaps xmm2, xmm8
movaps xmm1, xmm8
movaps xmm0, xmm6
call fcn.180005b20
movss xmm0, dword [rsp + 0x68]
movss dword [rbp + 0x50], xmm0
movss xmm1, dword [rbp + 0xd0]
movss dword [rbp + 0x54], xmm1
movss xmm2, dword [rsp + 0x70]
movss dword [rbp + 0x58], xmm2
mov dword [rbp + 0x5c], 0x3f800000
lea rcx, [rbp + 0x50]
call fcn.180005a70
mov ebx, eax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xd0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x70]
movaps xmm2, xmm8
movaps xmm1, xmm8
movaps xmm0, xmm6
call fcn.180005b20
movss xmm0, dword [rsp + 0x70]
movss dword [rbp + 0x50], xmm0
movss xmm1, dword [rbp + 0xd0]
movss dword [rbp + 0x54], xmm1
movss xmm0, dword [rsp + 0x68]
movss dword [rbp + 0x58], xmm0
mov dword [rbp + 0x5c], 0x3f800000
lea rcx, [rbp + 0x50]
call fcn.180005a70
movss xmm6, dword [rbp - 0x5c]
addss xmm6, xmm13
movss dword [rbp - 0x5c], xmm6
movaps xmm8, xmm6
addss xmm8, dword [rbp - 0x58]
movss dword [rsp + 0x68], xmm8
movss dword [rsp + 0x70], xmm8
movss xmm13, dword [rbp - 0x80]
addss xmm13, xmm10
movss dword [rbp + 0xd0], xmm13
movss dword [rsp + 0x74], xmm13
movss dword [rbp - 0x78], xmm6
movss dword [rbp - 0x74], xmm10
mov dword [rsp + 0x30], 0xffffffff
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], eax
mov r9d, 0xffffffff
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x78]
mov rcx, rdi
call fcn.1800224d0
mov rax, qword [0x180343a38]
mov rax, qword [rax + 0x4b28]
lea r8, [0x180299d98]
xor edx, edx
mov rcx, qword [rax]
call fcn.180009c50
movss dword [rbp - 0x78], xmm8
movss dword [rbp - 0x74], xmm13
movss dword [rsp + 0x70], xmm6
movss dword [rsp + 0x74], xmm10
mov dword [rsp + 0x30], 0xff000000
mov dword [rsp + 0x28], 0xff000000
mov dword [rsp + 0x20], 0
xor r9d, r9d
lea r8, [rbp - 0x78]
lea rdx, [rsp + 0x70]
mov rcx, rax
call fcn.1800224d0
xorps xmm1, xmm1
movups xmmword [rbp + 0x10], xmm1
movdqa xmm2, xmmword [0x1802b85a0]
movdqu xmmword [rbp + 0x20], xmm2
mov eax, dword [0x1802a1e60]
mov word [rbp + 0x10], ax
movzx eax, byte [0x1802a1e62]
mov byte [rbp + 0x12], al
mov byte [rbp + 0x13], 0
xor r8d, r8d
lea rdx, [rbp + 0x10]
movaps xmm0, xmm7
call fcn.1800598f0
movaps xmm13, xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x10], xmm1
mov qword [rbp + 0x20], 8
mov qword [rbp + 0x28], 0xf
movabs rax, 0x4955476b63696c43
mov qword [rbp + 0x10], rax
mov byte [rbp + 0x18], 0
movabs rdi, 0xcbf29ce484222325
mov rcx, rdi
xor edx, edx
movabs rbx, 0x100000001b3
nop dword [rax]
movzx eax, byte [rbp + rdx + 0x10]
xor rcx, rax
imul rcx, rbx
inc rdx
cmp rdx, 8
jb 0x180081270
mov qword [rbp - 0x78], rcx
lea rdx, [rbp - 0x78]
call fcn.180134530
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x1800812a3
lock inc dword [rcx + 8]
mov esi, dword [rsp + 0x60]
mov r13, qword [rax]
mov qword [rbp + 0x50], r13
mov qword [rbp + 0x70], r13
mov rax, qword [rax + 8]
mov qword [rbp - 0x78], rax
mov qword [rbp + 0x78], rax
bts esi, 0xc
mov dword [rsp + 0x60], esi
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov ecx, 0x20
call fcn.18020e888
mov r14, rax
mov qword [rbp + 0xb0], rax
mov qword [rbp + 0xc0], 0x13
mov qword [rbp + 0xc8], 0x1f
movups xmm0, xmmword [str.colors_primary2_rgb]
movups xmmword [rax], xmm0
movzx ecx, word [0x1802a2598]
mov word [rax + 0x10], cx
movzx ecx, byte [0x1802a259a]
mov byte [rax + 0x12], cl
mov byte [rax + 0x13], 0
mov rcx, rdi
xor edx, edx
nop
movzx eax, byte [rdx + r14]
xor rcx, rax
imul rcx, rbx
inc rdx
cmp rdx, 0x13
jb 0x180081320
mov rax, qword [r13 + 0xa0]
and rax, rcx
add rax, rax
mov rcx, qword [r13 + 0x88]
mov rbx, qword [rcx + rax*8 + 8]
mov r13, qword [r13 + 0x78]
cmp rbx, r13
je 0x180081394
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x70], rax
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x180081372
mov rdx, qword [rdx]
cmp rax, 0x13
jne 0x180081387
mov r8, rax
mov rcx, r14
call fcn.180245950
test eax, eax
je 0x180081396
cmp rbx, qword [rsp + 0x70]
je 0x180081394
mov rbx, qword [rbx + 8]
jmp 0x180081360
xor ebx, ebx
test rbx, rbx
cmovne r13, rbx
mov rax, qword [rbp + 0x50]
cmp r13, qword [rax + 0x78]
je 0x1800813ad
mov rax, qword [r13 + 0x30]
jmp 0x1800813af
xor eax, eax
cmp byte [rax + 0x28], 0
je 0x1800813ca
movups xmm0, xmmword [0x180343f50]
mov rbx, qword [rbp + 0x48]
mov r13, qword [rsp + 0x78]
jmp 0x1800814d3
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], 8
mov ebx, 0xf
mov qword [rbp + 0x48], rbx
movabs rax, 0x4955476b63696c43
mov qword [rbp + 0x30], rax
mov byte [rbp + 0x38], 0
bts esi, 9
mov dword [rsp + 0x60], esi
mov rcx, rdi
xor edx, edx
movabs r8, 0x100000001b3
nop dword [rax + rax]
movzx eax, byte [rbp + rdx + 0x30]
xor rcx, rax
imul rcx, r8
inc rdx
cmp rdx, 8
jb 0x180081410
mov qword [rbp + 0x50], rcx
lea rdx, [rbp + 0x50]
call fcn.180134530
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x18008144f
lock inc dword [rcx + 8]
mov rcx, qword [rbp + 0x78]
mov qword [rbp - 0x78], rcx
mov rbx, qword [rbp + 0x48]
mov esi, dword [rsp + 0x60]
mov rcx, qword [rax]
mov qword [rsp + 0x70], rcx
mov r13, qword [rax + 8]
mov qword [rsp + 0x78], r13
bts esi, 0xe
bts esi, 0xa
add rcx, 0x70
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
movdqa xmm1, xmmword [0x1802b8660]
movdqu xmmword [rbp + 0x60], xmm1
movsd xmm0, qword [str.colors_primary2]
movsd qword [rbp + 0x50], xmm0
mov eax, dword [0x1802a25c0]
mov dword [rbp + 0x58], eax
movzx eax, word [0x1802a25c4]
mov word [rbp + 0x5c], ax
movzx eax, byte [0x1802a25c6]
mov byte [rbp + 0x5e], al
mov byte [rbp + 0x5f], 0
bts esi, 0xb
mov dword [rsp + 0x60], esi
lea rdx, [rbp + 0x50]
call fcn.180044ae0
lea rdx, [rax + 0x28]
lea rcx, [rbp + 0x90]
call fcn.180085120
movups xmm0, xmmword [rax]
lea rax, [rbp + 0x70]
movups xmmword [rbp + 0x70], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x70], xmm0
bt esi, 0xb
jae 0x180081508
btr esi, 0xb
mov dword [rsp + 0x60], esi
mov r8, qword [rbp + 0x68]
cmp r8, 0xf
jbe 0x180081508
mov rdx, qword [rbp + 0x50]
lea rcx, [rbp + 0x50]
call fcn.180059850
nop
bt esi, 0xa
jae 0x180081524
btr esi, 0xa
mov dword [rsp + 0x60], esi
test r13, r13
je 0x180081524
mov rcx, r13
call fcn.180003820
nop
bt esi, 9
jae 0x180081541
cmp rbx, 0xf
jbe 0x180081541
mov r8, rbx
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x30]
call fcn.180059850
nop
mov edx, 0x20
mov rcx, r14
call fcn.18020e750
nop
mov rax, qword [rbp - 0x78]
test rax, rax
je 0x180081561
mov rcx, rax
call fcn.180003820
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], 8
mov qword [rbp + 0x28], 0xf
movabs rax, 0x4955476b63696c43
mov qword [rbp + 0x10], rax
mov byte [rbp + 0x18], 0
mov rcx, rdi
xor ebx, ebx
mov edx, ebx
movabs r12, 0x100000001b3
nop dword [rax + rax]
movzx eax, byte [rbp + rdx + 0x10]
xor rcx, rax
imul rcx, r12
inc rdx
cmp rdx, 8
jb 0x1800815a0
mov qword [rbp + 0x50], rcx
lea rdx, [rbp + 0x50]
call fcn.180134530
mov rcx, qword [rax + 8]
test rcx, rcx
mov r12, qword [rbp - 0x28]
je 0x1800815d3
lock inc dword [rcx + 8]
mov rcx, qword [rax]
mov qword [rbp - 0x28], rcx
mov rsi, qword [rax + 8]
mov qword [rbp - 0x20], rsi
lea r14, [rcx + 0x70]
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], rbx
mov qword [rbp + 0x68], rbx
mov r8d, 0x11
lea rdx, str.o_colors_primary2
lea rcx, [rbp + 0x50]
call fcn.1800596c0
lea rdx, [rbp + 0x50]
mov r13, qword [rbp + 0x50]
mov rbx, qword [rbp + 0x68]
cmp rbx, 0xf
cmova rdx, r13
xor ecx, ecx
mov r8, qword [rbp + 0x60]
test r8, r8
je 0x180081657
movabs r13, 0x100000001b3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor rdi, rax
imul rdi, r13
inc rcx
cmp rcx, r8
jb 0x180081640
mov r13, qword [rbp + 0x50]
mov r9, rdi
lea r8, [rbp + 0x50]
lea rdx, [rbp + 0x90]
mov rcx, r14
call fcn.18004b0e0
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x180081682
cmp rcx, qword [r14 + 8]
je 0x180081682
mov rax, qword [rcx + 0x30]
jmp 0x180081684
xor eax, eax
movss xmm0, dword [rax + 0x28]
movss dword [rbp + 0x7c], xmm0
cmp rbx, 0xf
jbe 0x1800816a4
mov r8, rbx
mov rdx, r13
lea rcx, [rbp + 0x50]
call fcn.180059850
nop
test rsi, rsi
je 0x1800816b2
mov rcx, rsi
call fcn.180003820
nop
imul rbx, r15, 0x70
movaps xmm7, xmm11
lea rdi, [0x18034e600]
addss xmm7, dword [rbx + rdi + 0x50]
movaps xmm10, xmm15
addss xmm10, xmm13
movaps xmm8, xmm9
mulss xmm8, dword [0x1802b815c]
addss xmm8, xmm10
movaps xmm0, xmm9
mulss xmm0, dword [0x1802b80c0]
movss dword [rsp + 0x70], xmm0
movaps xmm3, xmm0
lea r8, [rbp + 0x70]
movaps xmm1, xmm8
movaps xmm0, xmm7
call fcn.18007f5c0
movaps xmm6, xmm9
mulss xmm6, dword [0x1802b808c]
movss xmm1, dword [rbx + rdi + 0x50]
divss xmm1, xmm14
mulss xmm1, dword [0x1802b8454]
movss xmm0, dword [0x1802b822c]
movaps xmm3, xmm0
movaps xmm2, xmm0
lea rcx, [rbp + 0x90]
call fcn.180084f60
movaps xmm3, xmm6
mov r8, rax
movaps xmm1, xmm8
movaps xmm0, xmm7
call fcn.18007f5c0
mulss xmm9, dword [0x1802b80e4]
movss xmm2, dword [0x1802f8f00]
movaps xmm1, xmm2
subss xmm1, xmm7
divss xmm1, xmm9
movss xmm3, dword [0x1802f8f04]
movaps xmm0, xmm3
subss xmm0, xmm8
divss xmm0, xmm9
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
movzx ecx, byte [0x180343f30]
movss xmm1, dword [0x1802b822c]
comiss xmm1, xmm0
jb 0x1800817ac
test cl, cl
jne 0x18008193d
imul rax, r15, 0x70
cmp byte [rax + rdi + 0x54], 0
je 0x1800818f8
test cl, cl
jne 0x18008193d
imul rax, r15, 0x70
mov byte [rax + rdi + 0x54], 0
imul rax, r15, 0x70
imul rcx, r15, 0x70
mov eax, dword [rax + rdi + 0x50]
mov dword [rcx + rdi + 0x4c], eax
movaps xmm7, xmm14
addss xmm7, xmm11
lea rbx, [rdi + 0x5c]
add rbx, r12
movss xmm10, dword [rbp - 0x60]
addss xmm13, xmm10
addss xmm8, xmm10
imul rax, r15, 0x70
movaps xmm6, xmm11
addss xmm6, dword [rax + rdi + 0x58]
movss xmm3, dword [rsp + 0x70]
lea r8, [rbp + 0x70]
movaps xmm1, xmm8
movaps xmm0, xmm6
call fcn.18007f5c0
movss xmm2, dword [0x1802f8f00]
movaps xmm1, xmm2
subss xmm1, xmm6
divss xmm1, xmm9
movss xmm3, dword [0x1802f8f04]
movaps xmm0, xmm3
subss xmm0, xmm8
divss xmm0, xmm9
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
movzx edx, byte [0x180343f30]
movss xmm4, dword [0x1802b822c]
comiss xmm4, xmm0
jb 0x180081871
test dl, dl
jne 0x1800819dc
cmp byte [rbx], 0
je 0x18008199d
test dl, dl
jne 0x1800819dc
xor ecx, ecx
mov byte [rbx], cl
subss xmm13, xmm10
movss xmm7, dword [rbp - 0x5c]
movss xmm5, dword [rsp + 0x68]
movss xmm1, dword [rbp - 0x80]
comiss xmm2, xmm7
jb 0x1800818b8
comiss xmm5, xmm2
jb 0x1800818b8
comiss xmm3, xmm13
jb 0x1800818b8
movaps xmm0, xmm1
addss xmm0, xmm13
comiss xmm0, xmm3
jae 0x1800818c7
imul rax, r15, 0x70
cmp byte [rax + rdi + 0x68], 0
je 0x180081aa2
test dl, dl
je 0x180081aa2
test cl, cl
jne 0x180081aa2
imul rax, r15, 0x70
cmp byte [rax + rdi + 0x54], cl
jne 0x180081aa2
comiss xmm2, xmm5
jbe 0x180081a48
movss xmm2, dword [rbp - 0x58]
jmp 0x180081a57
test cl, cl
je 0x1800817c3
movss xmm1, dword [rbp - 0x60]
addss xmm1, xmm10
comiss xmm2, xmm11
jb 0x1800817c3
movaps xmm0, xmm14
addss xmm0, xmm11
comiss xmm0, xmm2
jb 0x1800817c3
comiss xmm3, xmm1
jb 0x1800817c3
addss xmm1, dword [rbp - 0x68]
comiss xmm1, xmm3
jb 0x1800817c3
imul rbx, r15, 0x70
add rbx, 0x5c
add rbx, rdi
cmp byte [rbx], 0
jne 0x1800817c3
imul rax, r15, 0x70
cmp byte [rax + rdi + 0x68], 0
jne 0x1800817c3
movaps xmm7, xmm14
addss xmm7, xmm11
comiss xmm2, xmm7
jbe 0x180081974
movaps xmm2, xmm14
jmp 0x180081985
comiss xmm11, xmm2
jbe 0x180081980
movaps xmm2, xmm12
jmp 0x180081985
subss xmm2, xmm11
imul rax, r15, 0x70
movss dword [rax + rdi + 0x50], xmm2
imul rax, r15, 0x70
mov byte [rax + rdi + 0x54], 1
jmp 0x1800817ec
test dl, dl
je 0x180081882
addss xmm15, xmm13
addss xmm15, xmm10
comiss xmm2, xmm11
jb 0x180081882
comiss xmm7, xmm2
jb 0x180081882
comiss xmm3, xmm15
jb 0x180081882
addss xmm15, dword [rbp - 0x68]
comiss xmm15, xmm3
jb 0x180081882
imul rax, r15, 0x70
cmp byte [rax + rdi + 0x54], 0
jne 0x180081882
imul rax, r15, 0x70
cmp byte [rax + rdi + 0x68], 0
jne 0x180081882
comiss xmm2, xmm7
jbe 0x180081a14
movaps xmm0, xmm14
imul rax, r15, 0x70
movss dword [rax + rdi + 0x58], xmm0
mov cl, 1
jmp 0x180081884
comiss xmm11, xmm2
jbe 0x180081a2f
movaps xmm0, xmm12
imul rax, r15, 0x70
movss dword [rax + rdi + 0x58], xmm0
mov cl, 1
jmp 0x180081884
movaps xmm0, xmm2
subss xmm0, xmm11
imul rax, r15, 0x70
movss dword [rax + rdi + 0x58], xmm0
mov cl, 1
jmp 0x180081884
comiss xmm7, xmm2
jbe 0x180081a53
movaps xmm2, xmm12
jmp 0x180081a57
subss xmm2, xmm7
imul rax, r15, 0x70
movss dword [rax + rdi + 0x60], xmm2
movss xmm8, dword [rsp + 0x64]
comiss xmm3, dword [rbp + 0xd0]
jbe 0x180081a84
movaps xmm12, xmm1
imul rax, r15, 0x70
movss dword [rax + rdi + 0x64], xmm12
mov al, 1
jmp 0x180081aab
comiss xmm8, xmm3
ja 0x180081a93
subss xmm3, xmm8
movaps xmm12, xmm3
imul rax, r15, 0x70
movss dword [rax + rdi + 0x64], xmm12
mov al, 1
jmp 0x180081aab
xor al, al
movss xmm8, dword [rsp + 0x64]
mov byte [r12 + rdi + 0x68], al
movsxd rbx, dword [rbp - 0x48]
imul rcx, rbx, 0x70
movss xmm0, dword [rcx + rdi + 0x64]
divss xmm0, xmm1
subss xmm4, xmm0
imul rcx, rbx, 0x70
movss xmm2, dword [rcx + rdi + 0x60]
divss xmm2, dword [rbp - 0x58]
imul rcx, rbx, 0x70
movss xmm1, dword [rcx + rdi + 0x4c]
divss xmm1, xmm14
mulss xmm1, dword [0x1802b8454]
movaps xmm3, xmm4
lea rcx, [rbp + 0x90]
call fcn.180084f60
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x28], xmm0
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0xb0]
call fcn.180085220
mov rdx, rax
mov rcx, qword [rbp]
call fcn.180040650
mov r8, qword [rbp + 0xc8]
cmp r8, 0xf
jbe 0x180081b3e
mov rdx, qword [rbp + 0xb0]
lea rcx, [rbp + 0xb0]
call fcn.180059850
imul rcx, rbx, 0x70
movss xmm0, dword [rcx + rdi + 0x58]
divss xmm0, xmm14
mov rax, qword [rbp - 0x10]
movss dword [rax], xmm0
movss xmm6, dword [rbp - 0x64]
movaps xmm3, xmm6
mulss xmm3, dword [0x1802b80c0]
imul rcx, rbx, 0x70
movaps xmm1, xmm8
addss xmm1, dword [rcx + rdi + 0x64]
imul rcx, rbx, 0x70
movaps xmm0, xmm7
addss xmm0, dword [rcx + rdi + 0x60]
lea r8, [rbp + 0x70]
call fcn.18007f5c0
mulss xmm6, dword [0x1802b808c]
imul rcx, rbx, 0x70
addss xmm8, dword [rcx + rdi + 0x64]
imul rcx, rbx, 0x70
addss xmm7, dword [rcx + rdi + 0x60]
movaps xmm3, xmm6
lea r8, [rbp - 0x28]
movaps xmm1, xmm8
movaps xmm0, xmm7
call fcn.18007f5c0
movss xmm8, dword [rbp - 0x50]
movaps xmm0, xmm8
mulss xmm0, dword [0x1802b8348]
addss xmm13, xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
movdqa xmm1, xmmword [0x1802b85c0]
movdqu xmmword [rbp + 0x20], xmm1
mov eax, dword [str.width]
mov dword [rbp + 0x10], eax
movzx eax, byte [0x1802a1e80]
mov byte [rbp + 0x14], al
mov byte [rbp + 0x15], 0
xor r8d, r8d
lea rdx, [rbp + 0x10]
movss xmm0, dword [0x1802b8134]
call fcn.180059ab0
movaps xmm7, xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x10], xmm1
movdqa xmm11, xmmword [rbp + 0xf0]
movdqu xmmword [rbp + 0x20], xmm11
mov eax, dword [str.height]
mov dword [rbp + 0x10], eax
movzx eax, word [0x1802a1e88]
mov word [rbp + 0x14], ax
mov byte [rbp + 0x16], 0
xor r8d, r8d
lea rdx, [rbp + 0x10]
movss xmm0, dword [0x1802b80c8]
call fcn.180059ab0
movaps xmm6, xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x10], xmm1
movdqa xmm2, xmmword [0x1802b85c0]
movdqu xmmword [rbp + 0x20], xmm2
mov eax, dword [str.right]
mov dword [rbp + 0x10], eax
movzx eax, byte [0x1802a1e78]
mov byte [rbp + 0x14], al
mov byte [rbp + 0x15], 0
movss xmm1, dword [rbp + 0x80]
movss dword [rbp + 0x70], xmm1
movss xmm2, dword [rbp + 0x84]
movss dword [rbp + 0x74], xmm2
movss xmm1, dword [rbp + 0x88]
movss dword [rbp + 0x78], xmm1
movss xmm0, dword [rbp - 0x44]
movss dword [rbp + 0x7c], xmm0
movss xmm2, dword [rbp - 0x40]
movss dword [rbp - 0x10], xmm2
movss xmm1, dword [rbp - 0x3c]
movss dword [rbp - 0xc], xmm1
movss xmm3, dword [rbp - 0x38]
movss dword [rbp - 8], xmm3
movss xmm0, dword [rbp - 0x34]
movss dword [rbp - 4], xmm0
xor r8d, r8d
lea rdx, [rbp + 0x10]
movss xmm0, dword [0x1802b8088]
call fcn.1800598f0
subss xmm0, xmm7
movss xmm1, dword [rbp - 0x30]
movss dword [rsp + 0x40], xmm1
movss dword [rsp + 0x38], xmm6
movss dword [rsp + 0x30], xmm7
lea rax, str.Close
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x70]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x10]
movaps xmm2, xmm13
movaps xmm1, xmm0
xor ecx, ecx
call fcn.180077c60
nop
test al, al
je 0x180081d89
imul rcx, rbx, 0x70
mov byte [rcx + rdi + 0x48], 0
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0xb0]
call fcn.180085220
imul rcx, rbx, 0x70
add rcx, rdi
mov rdx, rax
call fcn.180040650
lea rcx, [rbp + 0xb0]
call fcn.180059890
imul rcx, rbx, 0x70
movss xmm0, dword [rcx + rdi + 0x58]
divss xmm0, xmm14
imul rcx, rbx, 0x70
movss dword [rcx + rdi + 0x20], xmm0
dec dword [0x180343f48]
mulss xmm8, dword [0x1802b8154]
addss xmm13, xmm8
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
movdqa xmm1, xmmword [0x1802b85b0]
movdqu xmmword [rbp + 0xc0], xmm1
mov dword [rbp + 0xb0], 0x7466656c
mov byte [rbp + 0xb4], 0
xor r8d, r8d
lea rdx, [rbp + 0xb0]
movss xmm0, dword [0x1802b8054]
call fcn.1800598f0
movaps xmm10, xmm0
mov byte [rsp + 0x20], 1
mov rbx, qword [rbp + 8]
movzx r9d, byte [rbx]
movaps xmm2, xmm13
movaps xmm1, xmm0
mov ecx, 0x7b
call fcn.18007c2d0
test al, al
je 0x180081e07
cmp byte [rbx], 0
sete al
mov byte [rbx], al
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
movdqu xmmword [rbp + 0x20], xmm11
mov edi, dword [str.height]
mov dword [rbp + 0x10], edi
movzx ebx, word [0x1802a1e88]
mov word [rbp + 0x14], bx
mov byte [rbp + 0x16], 0
mov r8b, 1
lea rdx, [rbp + 0x10]
movss xmm8, dword [0x1802b80b8]
movaps xmm0, xmm8
call fcn.180059ab0
movaps xmm9, xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x30], xmm1
movdqu xmmword [rbp + 0x40], xmm11
mov dword [rbp + 0x30], edi
mov word [rbp + 0x34], bx
mov byte [rbp + 0x36], 0
mov r8b, 1
lea rdx, [rbp + 0x30]
movss xmm0, dword [0x1802b8044]
call fcn.180059ab0
movaps xmm7, xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x90], xmm1
movdqu xmmword [rbp + 0xa0], xmm11
mov dword [rbp + 0x90], edi
mov word [rbp + 0x94], bx
mov byte [rbp + 0x96], 0
mov r8b, 1
lea rdx, [rbp + 0x90]
movaps xmm0, xmm8
call fcn.180059ab0
movaps xmm6, xmm0
mulss xmm6, dword [0x1802b8308]
xorps xmm1, xmm1
movups xmmword [rbp + 0xf0], xmm1
movdqu xmmword [rbp + 0x100], xmm11
mov dword [rbp + 0xf0], edi
mov word [rbp + 0xf4], bx
mov byte [rbp + 0xf6], 0
mov r8b, 1
lea rdx, [rbp + 0xf0]
movaps xmm0, xmm8
call fcn.180059ab0
mulss xmm0, dword [0x1802b81ac]
addss xmm0, xmm10
mov byte [rsp + 0x50], 0
movss dword [rsp + 0x38], xmm9
mov dword [rsp + 0x30], 0
movss dword [rsp + 0x28], xmm7
movss dword [rsp + 0x20], xmm6
lea r9, str.Chroma
movaps xmm2, xmm13
movaps xmm1, xmm0
lea rcx, [rbp + 0xb0]
call fcn.1800859f0
mov rdx, qword [rbp + 0xc8]
cmp rdx, 0xf
jbe 0x180081f80
inc rdx
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081f7a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180081ffe
call fcn.18020e750
nop
sub qword [0x18034e550], 1
jne 0x180081f95
mov qword [0x18034e548], 0
mov byte [0x18034dbe5], 0
mov rcx, qword [rbp + 0x180]
xor rcx, rsp
call fcn.18020e120
lea r11, [rsp + 0x338]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [r11 - 0x88]
movaps xmm14, xmmword [r11 - 0x98]
movaps xmm15, xmmword [r11 - 0xa8]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1802214b8
nop
int3