Function at 0x18007a8c0
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 - 0x288]
sub rsp, 0x348
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 [0x18021d4c0]
xor rax, rsp
mov qword [rbp + 0x190], rax
mov qword [rbp - 0x80], r9
movaps xmm12, xmm2
movaps xmm15, xmm1
movss dword [rsp + 0x70], xmm15
movsxd r13, ecx
xor edi, edi
mov dword [rsp + 0x50], edi
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
movdqa xmm6, xmmword [reloc.d2d1.dll_Ordinal_8]
movdqu xmmword [rbp + 0x110], xmm6
movabs r12, 0x4955476b63696c43
mov qword [rbp + 0x100], r12
mov byte [rbp + 0x108], dil
lea rdx, [rbp + 0x100]
lea rcx, [rbp - 0x58]
call fcn.18011e360
nop
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0x170], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x180], xmm1
mov r8d, 0x13
lea rdx, str.colors_primary1_rgb
lea rcx, [rbp + 0x170]
call fcn.18005a6f0
nop
lea rdx, [rbp + 0x170]
lea rcx, [rbx + 0x70]
call fcn.180047110
cmp byte [rax + 0x28], dil
je 0x18007a9e6
movups xmm0, xmmword [0x18026fe68]
jmp 0x18007aa9a
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xf0], xmm1
mov r8d, 8
lea rdx, str.ClickGUI
lea rcx, [rbp + 0xe0]
call fcn.18005a6f0
nop
mov dword [rsp + 0x50], 1
lea rdx, [rbp + 0xe0]
lea rcx, [rsp + 0x60]
call fcn.18011e360
nop
mov dword [rsp + 0x50], 3
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xd0], xmm1
mov r8d, 0xf
lea rdx, str.colors_primary1
lea rcx, [rbp + 0xc0]
call fcn.18005a6f0
nop
mov edi, 7
mov dword [rsp + 0x50], edi
lea rdx, [rbp + 0xc0]
lea rcx, [rbx + 0x70]
call fcn.180047110
lea rdx, [rax + 0x28]
lea rcx, [rbp - 0x68]
call fcn.1800868e0
movups xmm0, xmmword [rax]
movdqa xmm6, xmmword [reloc.d2d1.dll_Ordinal_8]
lea rax, [rbp + 0x160]
movups xmmword [rbp + 0x160], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x78], xmm0
test dil, 4
je 0x18007aad0
and edi, 0xfffffffb
mov dword [rsp + 0x50], edi
lea rcx, [rbp + 0xc0]
call fcn.18005a950
movdqa xmm6, xmmword [reloc.d2d1.dll_Ordinal_8]
test dil, 2
je 0x18007aaf4
and edi, 0xfffffffd
mov dword [rsp + 0x50], edi
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x18007aaf4
call fcn.1800037d0
movdqa xmm6, xmmword [reloc.d2d1.dll_Ordinal_8]
test dil, 1
je 0x18007ab29
and edi, 0xfffffffe
mov dword [rsp + 0x50], edi
mov r8, qword [rbp + 0xf8]
cmp r8, 0xf
jbe 0x18007ab29
mov rdx, qword [rbp + 0xe0]
lea rcx, [rbp + 0xe0]
call fcn.18005a910
movdqa xmm6, xmmword [reloc.d2d1.dll_Ordinal_8]
mov r8, qword [rbp + 0x188]
cmp r8, 0xf
jbe 0x18007ab51
mov rdx, qword [rbp + 0x170]
lea rcx, [rbp + 0x170]
call fcn.18005a910
movdqa xmm6, xmmword [reloc.d2d1.dll_Ordinal_8]
mov rcx, qword [rbp - 0x50]
test rcx, rcx
je 0x18007ab67
call fcn.1800037d0
movdqa xmm6, xmmword [reloc.d2d1.dll_Ordinal_8]
mov r8, qword [rbp + 0x118]
cmp r8, 0xf
jbe 0x18007ab8f
mov rdx, qword [rbp + 0x100]
lea rcx, [rbp + 0x100]
call fcn.18005a910
movdqa xmm6, xmmword [reloc.d2d1.dll_Ordinal_8]
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
movdqu xmmword [rbp + 0x110], xmm6
mov qword [rbp + 0x100], r12
mov byte [rbp + 0x108], 0
lea rdx, [rbp + 0x100]
lea rcx, [rbp - 0x68]
call fcn.18011e360
nop
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xf0], xmm1
mov r8d, 0x13
lea rdx, str.colors_primary3_rgb
lea rcx, [rbp + 0xe0]
call fcn.18005a6f0
nop
lea rdx, [rbp + 0xe0]
lea rcx, [rbx + 0x70]
call fcn.180047110
cmp byte [rax + 0x28], 0
je 0x18007ac14
movups xmm0, xmmword [0x18026fe68]
jmp 0x18007acbf
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x130], xmm1
mov r8d, 8
lea rdx, str.ClickGUI
lea rcx, [rbp + 0x120]
call fcn.18005a6f0
nop
or edi, 8
mov dword [rsp + 0x50], edi
lea rdx, [rbp + 0x120]
lea rcx, [rsp + 0x60]
call fcn.18011e360
nop
or edi, 0x10
mov dword [rsp + 0x50], edi
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xd0], xmm1
mov r8d, 0xf
lea rdx, str.colors_primary3
lea rcx, [rbp + 0xc0]
call fcn.18005a6f0
nop
or edi, 0x20
mov dword [rsp + 0x50], edi
lea rdx, [rbp + 0xc0]
lea rcx, [rbx + 0x70]
call fcn.180047110
lea rdx, [rax + 0x28]
lea rcx, [rbp + 0x170]
call fcn.1800868e0
movups xmm0, xmmword [rax]
lea rax, [rbp + 0x160]
movups xmmword [rbp + 0x160], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x58], xmm0
test dil, 0x20
je 0x18007acee
and edi, 0xffffffdf
mov dword [rsp + 0x50], edi
lea rcx, [rbp + 0xc0]
call fcn.18005a950
nop
test dil, 0x10
je 0x18007ad0b
and edi, 0xffffffef
mov dword [rsp + 0x50], edi
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x18007ad0b
call fcn.1800037d0
nop
test dil, 8
je 0x18007ad25
and edi, 0xfffffff7
mov dword [rsp + 0x50], edi
lea rcx, [rbp + 0x120]
call fcn.18005a950
nop
mov r8, qword [rbp + 0xf8]
cmp r8, 0xf
jbe 0x18007ad46
mov rdx, qword [rbp + 0xe0]
lea rcx, [rbp + 0xe0]
call fcn.18005a910
nop
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x18007ad55
call fcn.1800037d0
nop
mov r8, qword [rbp + 0x118]
cmp r8, 0xf
jbe 0x18007ad75
mov rdx, qword [rbp + 0x100]
lea rcx, [rbp + 0x100]
call fcn.18005a910
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
movdqa xmm1, xmmword [reloc.d2d1.dll_Ordinal_8]
movdqu xmmword [rbp + 0xf0], xmm1
mov qword [rbp + 0xe0], r12
mov byte [rbp + 0xe8], 0
lea rdx, [rbp + 0xe0]
lea rcx, [rbp - 0x68]
call fcn.18011e360
nop
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xd0], xmm1
mov r8d, 0x13
lea rdx, str.colors_primary2_rgb
lea rcx, [rbp + 0xc0]
call fcn.18005a6f0
nop
lea rdx, [rbp + 0xc0]
lea rcx, [rbx + 0x70]
call fcn.180047110
cmp byte [rax + 0x28], 0
je 0x18007ae02
movups xmm0, xmmword [0x18026fe68]
jmp 0x18007aed4
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x130], xmm1
mov r8d, 8
lea rdx, str.ClickGUI
lea rcx, [rbp + 0x120]
call fcn.18005a6f0
nop
or edi, 0x40
mov dword [rsp + 0x50], edi
lea rdx, [rbp + 0x120]
lea rcx, [rsp + 0x60]
call fcn.18011e360
nop
bts edi, 7
mov rcx, qword [rax]
add rcx, 0x70
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
movdqa xmm1, xmmword [0x1801f5980]
movdqu xmmword [rbp + 0x110], xmm1
movsd xmm0, qword [str.colors_primary2]
movsd qword [rbp + 0x100], xmm0
mov eax, dword [0x1801e35e0]
mov dword [rbp + 0x108], eax
movzx eax, word [0x1801e35e4]
mov word [rbp + 0x10c], ax
movzx eax, byte [0x1801e35e6]
mov byte [rbp + 0x10e], al
mov byte [rbp + 0x10f], 0
bts edi, 8
mov dword [rsp + 0x50], edi
lea rdx, [rbp + 0x100]
call fcn.180047110
lea rdx, [rax + 0x28]
lea rcx, [rbp + 0x170]
call fcn.1800868e0
movups xmm0, xmmword [rax]
lea rax, [rbp + 0x160]
movups xmmword [rbp + 0x160], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x160], xmm0
bt edi, 8
jae 0x18007af07
btr edi, 8
mov dword [rsp + 0x50], edi
lea rcx, [rbp + 0x100]
call fcn.18005a950
nop
test dil, dil
jns 0x18007af24
btr edi, 7
mov dword [rsp + 0x50], edi
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x18007af24
call fcn.1800037d0
nop
test dil, 0x40
je 0x18007af3e
and edi, 0xffffffbf
mov dword [rsp + 0x50], edi
lea rcx, [rbp + 0x120]
call fcn.18005a950
nop
mov r8, qword [rbp + 0xd8]
cmp r8, 0xf
jbe 0x18007af5f
mov rdx, qword [rbp + 0xc0]
lea rcx, [rbp + 0xc0]
call fcn.18005a910
nop
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x18007af6e
call fcn.1800037d0
nop
mov r8, qword [rbp + 0xf8]
cmp r8, 0xf
jbe 0x18007af8e
mov rdx, qword [rbp + 0xe0]
lea rcx, [rbp + 0xe0]
call fcn.18005a910
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
movdqa xmm1, xmmword [reloc.d2d1.dll_Ordinal_8]
movdqu xmmword [rbp + 0xf0], xmm1
mov qword [rbp + 0xe0], r12
mov byte [rbp + 0xe8], 0
lea rdx, [rbp + 0xe0]
lea rcx, [rsp + 0x60]
call fcn.18011e360
nop
mov rbx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xd0], xmm1
mov r8d, 0x11
lea rdx, str.o_colors_primary1
lea rcx, [rbp + 0xc0]
call fcn.18005a6f0
lea rdx, [rbp + 0xc0]
lea rcx, [rbx + 0x70]
call fcn.180047110
movss xmm13, dword [rax + 0x28]
movss dword [rsp + 0x78], xmm13
movss dword [rbp - 0x6c], xmm13
mov r8, qword [rbp + 0xd8]
cmp r8, 0xf
jbe 0x18007b03d
mov rdx, qword [rbp + 0xc0]
lea rcx, [rbp + 0xc0]
call fcn.18005a910
nop
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x18007b04d
call fcn.1800037d0
nop
mov r8, qword [rbp + 0xf8]
cmp r8, 0xf
jbe 0x18007b06d
mov rdx, qword [rbp + 0xe0]
lea rcx, [rbp + 0xe0]
call fcn.18005a910
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
mov qword [rbp + 0xf0], 8
mov qword [rbp + 0xf8], 0xf
mov qword [rbp + 0xe0], r12
mov byte [rbp + 0xe8], 0
movabs rsi, 0xcbf29ce484222325
mov rcx, rsi
xor edx, edx
movabs r15, 0x100000001b3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rbp + rdx + 0xe0]
xor rcx, rax
imul rcx, r15
inc rdx
cmp rdx, 8
jb 0x18007b0c0
mov qword [rbp - 0x68], rcx
lea r8, [rbp - 0x68]
lea rdx, [rbp + 0x170]
call fcn.180123be0
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
test rax, rax
je 0x18007b10d
lock inc dword [rax + 8]
movss xmm13, dword [rbp - 0x6c]
movss dword [rsp + 0x78], xmm13
mov edi, dword [rsp + 0x50]
mov rax, qword [rcx + 0x18]
mov qword [rsp + 0x60], rax
mov r14, qword [rcx + 0x20]
mov qword [rsp + 0x68], r14
bts edi, 0xc
mov dword [rsp + 0x50], edi
lea rbx, [rax + 0x70]
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xd0], xmm1
mov r8d, 0x11
lea rdx, str.o_colors_primary3
lea rcx, [rbp + 0xc0]
call fcn.18005a6f0
lea rdx, [rbp + 0xc0]
mov rcx, rbx
call fcn.180047110
movss xmm0, dword [rax + 0x28]
movss dword [rbp - 0x68], xmm0
mov r8, qword [rbp + 0xd8]
cmp r8, 0xf
jbe 0x18007b193
mov rdx, qword [rbp + 0xc0]
lea rcx, [rbp + 0xc0]
call fcn.18005a910
nop
test r14, r14
je 0x18007b1a1
mov rcx, r14
call fcn.1800037d0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
mov qword [rbp + 0xf0], 8
mov qword [rbp + 0xf8], 0xf
mov qword [rbp + 0xe0], r12
mov byte [rbp + 0xe8], 0
xor ecx, ecx
movzx eax, byte [rbp + rcx + 0xe0]
xor rsi, rax
imul rsi, r15
inc rcx
cmp rcx, 8
jb 0x18007b1d1
mov qword [rbp + 0x170], rsi
lea r8, [rbp + 0x170]
lea rdx, [rbp + 0x100]
call fcn.180123be0
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
test rax, rax
je 0x18007b224
lock inc dword [rax + 8]
movss xmm13, dword [rbp - 0x6c]
movss dword [rsp + 0x78], xmm13
mov edi, dword [rsp + 0x50]
mov rax, qword [rcx + 0x18]
mov qword [rsp + 0x60], rax
mov rsi, qword [rcx + 0x20]
mov qword [rsp + 0x68], rsi
bts edi, 0xd
lea rbx, [rax + 0x70]
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xd0], xmm1
mov r8d, 0x11
lea rdx, str.o_colors_primary2
lea rcx, [rbp + 0xc0]
call fcn.18005a6f0
lea rdx, [rbp + 0xc0]
mov rcx, rbx
call fcn.180047110
movss xmm0, dword [rax + 0x28]
movss dword [rbp + 0x16c], xmm0
mov r8, qword [rbp + 0xd8]
cmp r8, 0xf
jbe 0x18007b2a9
mov rdx, qword [rbp + 0xc0]
lea rcx, [rbp + 0xc0]
call fcn.18005a910
nop
test rsi, rsi
je 0x18007b2b7
mov rcx, rsi
call fcn.1800037d0
nop
lea r14, [0x180000000]
movzx r12d, byte [0x18026fe5c]
test r12b, r12b
je 0x18007b34b
xor edx, edx
mov dword [rsp + 0x54], edx
mov r8d, dword [0x18026fe78]
lea eax, [r8 + 1]
test eax, eax
jle 0x18007b34b
xor ecx, ecx
xor r9d, r9d
nop dword [rax]
movsxd rax, ecx
imul rcx, rax, 0x68
cmp byte [rcx + r14 + 0x233c88], 0
je 0x18007b330
cmp r9d, dword [0x18026fe60]
jg 0x18007b330
lea r8, [rsp + 0x54]
lea rdx, [rbp + 0x100]
call fcn.18005f6f0
mov rcx, qword [rax]
addss xmm12, dword [rcx + 0x14]
mov r8d, dword [0x18026fe78]
mov edx, dword [rsp + 0x54]
inc edx
mov ecx, edx
mov dword [rsp + 0x54], edx
mov r9d, edx
lea eax, [r8 + 1]
cmp edx, eax
jl 0x18007b2f0
movzx r12d, byte [0x18026fe5c]
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], 6
mov qword [rbp + 0x138], 0xf
mov ecx, dword [str.height]
movzx eax, word [0x1801e2d50]
mov byte [rbp + 0x126], 0
movss xmm7, dword [0x180227fcc]
cmp ecx, 0x67696568
jne 0x18007b3a4
cmp ax, 0x7468
jne 0x18007b3a4
movaps xmm14, xmm7
mulss xmm14, dword [0x1801f5444]
jmp 0x18007b3ab
movss xmm14, dword [rsp + 0x70]
movss dword [rbp + 0x170], xmm14
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], 6
mov qword [rbp + 0x138], 0xf
mov byte [rbp + 0x126], 0
cmp ecx, 0x67696568
jne 0x18007b3f5
cmp ax, 0x7468
jne 0x18007b3f5
movaps xmm10, xmm7
mulss xmm10, dword [0x1801f5350]
jmp 0x18007b3fc
movss xmm10, dword [rsp + 0x70]
movss dword [rsp + 0x54], xmm10
movaps xmm6, xmm7
mulss xmm6, dword [0x1801f56d4]
divss xmm6, dword [0x1801f57b4]
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], 6
mov qword [rbp + 0x138], 0xf
mov byte [rbp + 0x126], 0
cmp ecx, 0x67696568
jne 0x18007b452
cmp ax, 0x7468
jne 0x18007b452
mulss xmm7, dword [0x1801f53d0]
jmp 0x18007b458
movss xmm7, dword [rsp + 0x70]
movups xmmword [rbp + 0xc0], xmm0
movdqa xmm1, xmmword [reloc.OLEAUT32.dll_SysStringLen]
movdqu xmmword [rbp + 0xd0], xmm1
mov dword [rbp + 0xc0], ecx
mov word [rbp + 0xc4], ax
mov byte [rbp + 0xc6], 0
mov r8b, 1
lea rdx, [rbp + 0xc0]
movss xmm0, dword [0x1801f53a4]
call fcn.18005ac60
movaps xmm8, xmm0
movaps xmm9, xmm0
mulss xmm9, dword [0x1801f54fc]
subss xmm12, xmm9
xorps xmm1, xmm1
movups xmmword [rbp + 0x140], xmm1
mov qword [rbp + 0x150], 0
mov qword [rbp + 0x158], 0xf
mov byte [rbp + 0x140], 0
test r12b, r12b
je 0x18007b4e3
mov byte [0x18026fe5c], 0
mov rsi, r13
lea r15, [r13 + 0x1e]
lea r15, [r15 + r15*2]
shl r15, 4
movss xmm11, dword [0x1801f575c]
cmp byte [r15 + r14 + 0x2280f0], 0
jne 0x18007b665
lea rcx, [rbp - 0x40]
call fcn.180043110
nop
mov rbx, qword [rbp - 0x80]
movss xmm1, dword [rbx]
movss xmm0, dword [0x1801f56c0]
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
mov eax, dword [rbp + rcx - 0x18]
btr eax, 0xc
bts eax, 0xd
mov dword [rbp + rcx - 0x18], eax
comiss xmm0, xmm1
jbe 0x18007b571
mov edx, 3
lea rcx, [rbp + 0x100]
call fcn.18016cc74
mov r8, qword [rax]
mov rcx, qword [rbp - 0x30]
movsxd rdx, dword [rcx + 4]
lea rcx, [rbp - 0x30]
add rcx, rdx
mov rdx, qword [rax + 8]
call r8
lea rcx, [rbp - 0x30]
jmp 0x18007b5af
comiss xmm11, xmm1
jbe 0x18007b57e
mov edx, 2
jmp 0x18007b546
movss xmm0, dword [0x1801f57a8]
lea rcx, [rbp + 0x100]
comiss xmm0, xmm1
jbe 0x18007b599
mov edx, 1
jmp 0x18007b59b
xor edx, edx
call fcn.18016cc74
mov rdx, rax
lea rcx, [rbp - 0x30]
call fcn.18007c300
mov rcx, rax
movss xmm1, dword [rbx]
call fcn.18007c0e0
lea rdx, [rbp + 0x120]
lea rcx, [rbp - 0x28]
call fcn.180045c20
bts edi, 0xb
mov rdx, qword [rbp + 0x158]
cmp rdx, 0xf
jbe 0x18007b60d
inc rdx
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007b608
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007c0a7
call fcn.18016ee40
movups xmm0, xmmword [rbp + 0x120]
movups xmmword [rbp + 0x140], xmm0
movups xmm1, xmmword [rbp + 0x130]
movups xmmword [rbp + 0x150], xmm1
lea rcx, [rbp - 0x40]
call fcn.18003f800
cmp byte [r15 + r14 + 0x2280f0], 0
jne 0x18007b665
movss xmm0, dword [rbp - 0x58]
movss dword [rsp + 0x60], xmm0
movss xmm0, dword [rbp - 0x54]
movss dword [rsp + 0x64], xmm0
movss xmm0, dword [rbp - 0x50]
movss xmm1, dword [rbp - 0x68]
movss dword [rsp + 0x6c], xmm1
jmp 0x18007b687
movss xmm0, dword [rbp - 0x78]
movss dword [rsp + 0x60], xmm0
movss xmm0, dword [rbp - 0x74]
movss dword [rsp + 0x64], xmm0
movss xmm0, dword [rbp - 0x70]
movss dword [rsp + 0x6c], xmm13
mov dword [rsp + 0x38], 0xf0
movss dword [rsp + 0x28], xmm6
movss dword [rsp + 0x68], xmm0
movss dword [rsp + 0x20], xmm8
movaps xmm3, xmm7
lea r8, [rsp + 0x60]
movaps xmm1, xmm12
movaps xmm0, xmm15
call fcn.180080ef0
lea rbx, [rbp + 0x140]
cmp qword [rbp + 0x158], 0xf
cmova rbx, qword [rbp + 0x140]
mov r8, qword [rbp + 0x150]
test r8, r8
je 0x18007b6f1
mov edx, 0x2d
mov rcx, rbx
call fcn.1801a48d0
test rax, rax
je 0x18007b6f1
sub rax, rbx
jmp 0x18007b6f8
mov rax, 0xffffffffffffffff
xor r14d, r14d
mov r9d, r14d
cmp rax, 0xffffffffffffffff
setne r9b
add r9d, 5
lea edx, [r13 + 0x1e]
movss dword [rsp + 0x38], xmm8
movss dword [rsp + 0x30], xmm7
movss dword [rsp + 0x28], xmm12
movss dword [rsp + 0x20], xmm15
lea r8, [rbp + 0x140]
lea rcx, [rbp + 0x120]
call fcn.18007d390
mov rbx, rax
lea rax, [rbp + 0x140]
cmp rax, rbx
je 0x18007b7c9
mov rdx, qword [rbp + 0x158]
cmp rdx, 0xf
jbe 0x18007b78c
inc rdx
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007b787
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007c0ad
call fcn.18016ee40
mov qword [rbp + 0x150], r14
mov qword [rbp + 0x158], 0xf
mov byte [rbp + 0x140], r14b
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x140], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x150], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 0xf
mov byte [rbx], r14b
mov r8, qword [rbp + 0x138]
cmp r8, 0xf
jbe 0x18007b7ea
mov rdx, qword [rbp + 0x120]
lea rcx, [rbp + 0x120]
call fcn.18005a910
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
movdqa xmm1, xmmword [0x1801f5890]
movdqu xmmword [rbp + 0x110], xmm1
mov byte [rbp + 0x100], 0
bts edi, 9
mov dword [rsp + 0x50], edi
lea r14, [rbp + 0x140]
mov r8, qword [rbp + 0x140]
mov rdx, qword [rbp + 0x158]
cmp rdx, 0xf
cmova r14, r8
add r14, qword [rbp + 0x150]
lea rdi, [rbp + 0x140]
cmp rdx, 0xf
cmova rdi, r8
cmp rdi, r14
je 0x18007b8c9
movzx ebx, byte [rsp + 0x74]
movzx r9d, byte [rdi]
lea eax, [r9 - 0x30]
cmp al, 9
jbe 0x18007b862
cmp r9b, 0x2e
jne 0x18007b8b3
mov rcx, qword [rbp + 0x110]
mov rdx, qword [rbp + 0x118]
cmp rcx, rdx
jae 0x18007b89e
lea rax, [rcx + 1]
mov qword [rbp + 0x110], rax
lea rax, [rbp + 0x100]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x100]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x18007b8b3
movzx r8d, bl
mov edx, 1
lea rcx, [rbp + 0x100]
call fcn.1800591a0
inc rdi
cmp rdi, r14
jne 0x18007b850
mov rdx, qword [rbp + 0x158]
mov r8, qword [rbp + 0x140]
cmp rdx, 0xf
jbe 0x18007b8ff
inc rdx
mov rax, r8
cmp rdx, 0x1000
jb 0x18007b8f7
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007c0b3
mov rcx, r8
call fcn.18016ee40
movups xmm0, xmmword [rbp + 0x100]
movups xmmword [rbp + 0x140], xmm0
movups xmm1, xmmword [rbp + 0x110]
movups xmmword [rbp + 0x150], xmm1
mov r13, qword [rbp - 0x80]
movss xmm0, dword [r13]
movzx r14d, byte [rbp + 0x2c0]
movss xmm13, dword [rbp + 0x2b8]
movss xmm15, dword [rbp + 0x2b0]
comiss xmm0, xmm15
jbe 0x18007b99d
movss dword [r13], xmm15
movaps xmm1, xmm15
lea rcx, [rbp + 0x120]
call fcn.18007c390
lea rdi, [0x180000000]
lea rcx, [rdi + 0x2280d0]
add rcx, r15
mov rdx, rax
call fcn.1800447c0
mov r8, qword [rbp + 0x138]
cmp r8, 0xf
jbe 0x18007ba4a
mov rdx, qword [rbp + 0x120]
lea rcx, [rbp + 0x120]
call fcn.18005a910
jmp 0x18007ba4a
comiss xmm13, xmm0
jbe 0x18007b9ef
test r14b, r14b
je 0x18007b9b2
movss xmm1, dword [0x1801f533c]
jmp 0x18007b9b6
movaps xmm1, xmm13
movss dword [r13], xmm1
lea rcx, [rbp + 0x120]
call fcn.18007c390
lea rdi, [0x180000000]
lea rcx, [rdi + 0x2280d0]
add rcx, r15
mov rdx, rax
call fcn.1800447c0
lea rcx, [rbp + 0x120]
call fcn.18005a950
jmp 0x18007ba4a
movq rax, xmm1
test rax, rax
je 0x18007ba43
call fcn.180181d34
mov rdi, rax
lea rbx, [rbp + 0x140]
cmp qword [rbp + 0x158], 0xf
cmova rbx, qword [rbp + 0x140]
mov dword [rax], 0
lea rdx, [rbp - 0x80]
mov rcx, rbx
call fcn.180183704
cmp rbx, qword [rbp - 0x80]
je 0x18007c0b9
cmp dword [rdi], 0x22
je 0x18007c0c6
movss dword [r13], xmm0
lea rdi, [0x180000000]
movaps xmm6, xmm7
mulss xmm6, dword [0x1801f56dc]
divss xmm6, xmm11
mulss xmm6, dword [0x1801f56d8]
lea rdx, [rbp + 0x140]
lea rcx, [rbp + 0xe0]
call fcn.18005a540
lea rcx, [rbp + 0x140]
mov qword [rsp + 0x20], rcx
mov r9, rax
lea rdx, [rbp + 0xc0]
call fcn.18008e3a0
nop
lea r9, [rbp + 0xc0]
cmp qword [rbp + 0xd8], 7
cmova r9, qword [rbp + 0xc0]
mov dword [rsp + 0x40], 0x190
movss dword [rsp + 0x38], xmm6
mov dword [rsp + 0x30], 2
movss dword [rsp + 0x28], xmm8
movss dword [rsp + 0x20], xmm7
movaps xmm2, xmm12
movss xmm6, dword [rsp + 0x70]
movaps xmm1, xmm6
lea rcx, [rbp + 0x120]
call fcn.1800871b0
mov r8, qword [rbp + 0x138]
cmp r8, 0xf
jbe 0x18007bb05
mov rdx, qword [rbp + 0x120]
lea rcx, [rbp + 0x120]
call fcn.18005a910
nop
mov r8, qword [rbp + 0xd8]
cmp r8, 7
jbe 0x18007bb25
mov rdx, qword [rbp + 0xc0]
lea rcx, [rbp + 0xc0]
call fcn.180059960
mulss xmm7, dword [0x1801f55b4]
addss xmm6, xmm7
mulss xmm9, dword [0x1801f554c]
addss xmm12, xmm9
movaps xmm9, xmm6
addss xmm9, dword [0x1801f5678]
movaps xmm11, xmm6
addss xmm11, xmm14
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
movdqa xmm1, xmmword [reloc.OLEAUT32.dll_SysStringLen]
movdqu xmmword [rbp + 0xd0], xmm1
mov eax, dword [str.height]
mov dword [rbp + 0xc0], eax
movzx eax, word [0x1801e2d50]
mov word [rbp + 0xc4], ax
mov byte [rbp + 0xc6], 0
mov r8b, 1
lea rdx, [rbp + 0xc0]
movss xmm0, dword [0x1801f5360]
call fcn.18005ac60
movss dword [rsp + 0x70], xmm0
movaps xmm8, xmm14
mulss xmm8, dword [0x1801f54fc]
addss xmm8, xmm6
movaps xmm1, xmm10
mulss xmm1, dword [0x1801f54fc]
cmp byte [0x18026fe55], 0
je 0x18007bbe8
movaps xmm10, xmm12
addss xmm10, dword [0x18026fe58]
addss xmm10, xmm1
jmp 0x18007bbf1
movaps xmm10, xmm1
addss xmm10, xmm12
movaps xmm14, xmm11
subss xmm14, xmm9
cmp dword [0x18026fe64], 0
je 0x18007bc0d
mov dword [0x18026feac], 1
mov rbx, rsi
add rbx, rbx
cmp byte [rdi + rbx*8 + 0x26feb1], 0
je 0x18007bc57
movaps xmm0, xmm15
subss xmm0, xmm13
movaps xmm1, xmm14
divss xmm1, xmm0
cmp byte [r15 + rdi + 0x2280f0], 0
jne 0x18007bc4a
movss xmm8, dword [rdi + rbx*8 + 0x26febc]
subss xmm8, xmm13
jmp 0x18007bc7f
movss xmm8, dword [r13]
subss xmm8, xmm13
jmp 0x18007bc7f
movss xmm1, dword [r13]
ucomiss xmm1, dword [0x1801f5744]
jp 0x18007bc68
je 0x18007bc89
movaps xmm0, xmm15
subss xmm0, xmm13
movaps xmm8, xmm14
divss xmm8, xmm0
subss xmm1, xmm13
mulss xmm8, xmm1
addss xmm8, xmm9
movaps xmm7, xmm8
subss xmm7, xmm9
movss xmm6, dword [0x180227fcc]
mulss xmm6, dword [0x1801f5678]
divss xmm6, dword [0x1801f57b4]
movss xmm0, dword [rbp - 0x58]
movss dword [rsp + 0x60], xmm0
movss xmm0, dword [rbp - 0x54]
movss dword [rsp + 0x64], xmm0
movss xmm0, dword [rbp - 0x50]
movss dword [rsp + 0x68], xmm0
movss xmm0, dword [rbp - 0x68]
movss dword [rsp + 0x6c], xmm0
mov dword [rsp + 0x38], 0xf0
movss dword [rsp + 0x28], xmm6
movss xmm0, dword [rsp + 0x54]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rbp + 0x170]
lea r8, [rsp + 0x60]
movaps xmm1, xmm12
movaps xmm0, xmm9
call fcn.180080ef0
movss xmm0, dword [rbp - 0x78]
movss dword [rsp + 0x60], xmm0
movss xmm0, dword [rbp - 0x74]
movss dword [rsp + 0x64], xmm0
movss xmm0, dword [rbp - 0x70]
movss dword [rsp + 0x68], xmm0
movss xmm1, dword [rsp + 0x78]
movss dword [rsp + 0x6c], xmm1
mov dword [rsp + 0x38], 0xf0
movss dword [rsp + 0x28], xmm6
movss xmm0, dword [rsp + 0x54]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm7
lea r8, [rsp + 0x60]
movaps xmm1, xmm12
movaps xmm0, xmm9
call fcn.180080ef0
movss xmm6, dword [rsp + 0x70]
movaps xmm3, xmm6
mulss xmm3, dword [0x1801f55a4]
lea r8, [rbp - 0x78]
movaps xmm1, xmm10
movaps xmm0, xmm8
call fcn.180080b60
movaps xmm3, xmm6
mulss xmm3, dword [0x1801f5504]
lea r8, [rbp + 0x160]
movaps xmm1, xmm10
movaps xmm0, xmm8
call fcn.180080b60
subss xmm15, xmm13
divss xmm7, xmm14
mulss xmm7, xmm15
addss xmm7, xmm13
movss dword [rdi + rbx*8 + 0x26febc], xmm7
cmp byte [0x18026fe55], 0
je 0x18007bddf
addss xmm12, dword [0x18026fe58]
addss xmm10, dword [0x18026fe58]
movzx ecx, byte [0x18026fe54]
movss xmm2, dword [0x180227fc4]
movss xmm1, dword [0x180227fc0]
comiss xmm1, xmm9
jb 0x18007be7b
movaps xmm0, xmm9
addss xmm0, dword [rbp + 0x170]
comiss xmm0, xmm1
jb 0x18007be7b
comiss xmm2, xmm12
jb 0x18007be7b
movss xmm0, dword [rsp + 0x54]
addss xmm0, xmm12
comiss xmm0, xmm2
jb 0x18007be7b
test cl, cl
je 0x18007be7b
cmp byte [rdi + rbx*8 + 0x26feb0], 0
jne 0x18007be3b
mov eax, dword [0x18026feac]
test eax, eax
jne 0x18007be81
movss dword [rdi + rbx*8 + 0x26feb4], xmm1
mov word [rdi + rbx*8 + 0x26feb0], 0x101
mov eax, 1
mov dword [0x18026feac], eax
movaps xmm7, xmm1
subss xmm7, xmm9
divss xmm7, xmm14
mulss xmm7, xmm15
addss xmm7, xmm13
movss dword [rdi + rbx*8 + 0x26febc], xmm7
jmp 0x18007be81
mov eax, dword [0x18026feac]
mulss xmm6, dword [0x1801f55d0]
movaps xmm0, xmm1
subss xmm0, xmm8
divss xmm0, xmm6
subss xmm2, xmm10
divss xmm2, xmm6
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
movss xmm0, dword [0x1801f5588]
comiss xmm0, xmm2
jb 0x18007bef8
test cl, cl
je 0x18007bfa5
test eax, eax
je 0x18007becd
cmp byte [rdi + rbx*8 + 0x26feb0], 0
je 0x18007bef8
comiss xmm1, xmm9
jbe 0x18007bf45
comiss xmm11, xmm1
jbe 0x18007bf45
movss dword [rdi + rbx*8 + 0x26feb4], xmm1
mov word [rdi + rbx*8 + 0x26feb0], 0x101
mov dword [0x18026feac], 1
jmp 0x18007bf45
test cl, cl
je 0x18007bfa5
mov rdx, rsi
add rdx, rdx
cmp byte [rdi + rdx*8 + 0x26feb0], 0
je 0x18007bfa5
comiss xmm1, xmm9
jbe 0x18007bf45
comiss xmm11, xmm1
jbe 0x18007bf45
mov rax, rsi
add rax, rax
movss dword [rdi + rax*8 + 0x26feb4], xmm1
mov rax, rsi
add rax, rax
mov byte [rdi + rax*8 + 0x26feb1], 1
mov byte [rdi + rdx*8 + 0x26feb0], 1
comiss xmm9, xmm1
jbe 0x18007bf5d
mov rax, rsi
add rax, rax
movss dword [rdi + rax*8 + 0x26feb4], xmm9
jmp 0x18007bf73
comiss xmm1, xmm11
jbe 0x18007bf73
mov rax, rsi
add rax, rax
movss dword [rdi + rax*8 + 0x26feb4], xmm11
mov rax, rsi
add rax, rax
movss xmm7, dword [rdi + rax*8 + 0x26feb4]
subss xmm7, xmm9
divss xmm7, xmm14
mov rax, rsi
mulss xmm7, xmm15
add rax, rax
addss xmm7, xmm13
movss dword [rdi + rax*8 + 0x26febc], xmm7
mov eax, dword [0x18026fe50]
test eax, eax
jne 0x18007bfb5
test cl, cl
je 0x18007bfbe
jmp 0x18007bfd3
cmp eax, 1
jne 0x18007bfd3
test cl, cl
jne 0x18007bfd3
add rsi, rsi
mov byte [rdi + rsi*8 + 0x26feb0], 0
mov dword [0x18026feac], 0
movss xmm0, dword [0x1801f5344]
comiss xmm0, xmm7
jbe 0x18007bfed
test r14b, r14b
je 0x18007bfed
movss xmm7, dword [0x1801f533c]
test r12b, r12b
je 0x18007bff9
mov byte [0x18026fe5c], 1
movss dword [r13], xmm7
mov rdx, qword [rbp + 0x158]
cmp rdx, 0xf
jbe 0x18007c03c
inc rdx
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007c037
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007c0a1
call fcn.18016ee40
movaps xmm0, xmm7
mov rcx, qword [rbp + 0x190]
xor rcx, rsp
call fcn.18016e810
lea r11, [rsp + 0x348]
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.1801819e8
nop
call fcn.1801819e8
nop
call fcn.1801819e8
nop
call fcn.1801819e8
nop
lea rcx, str.invalid_stof_argument
call fcn.18016b228
int3
lea rcx, str.stof_argument_out_of_range
call fcn.18016b270
int3