Function at 0x100809e0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100e832a
mov eax, dword fs:[0]
push eax
sub esp, 0x27c
mov eax, dword [0x10112200]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword fs:[0x2c]
mov ecx, dword [0x101149cc]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x10114444]
cmp eax, dword [ecx + 4]
jg 0x10080aa6
mov edi, dword [ebp + 8]
lea eax, [ebp - 0x268]
push edi
push eax
mov ecx, 0x1011443c
call fcn.1007df90
mov esi, dword [ebp - 0x260]
mov eax, dword [0x1011443c]
cmp byte [esi + 0xd], 0
jne 0x10080a7e
cmp dword [esi + 0x24], 0xf
lea edx, [esi + 0x10]
jbe 0x10080a5b
mov edx, dword [esi + 0x10]
cmp dword [edi + 0x14], 0xf
mov ecx, edi
jbe 0x10080a65
mov ecx, dword [edi]
push dword [esi + 0x20]
push edx
push dword [edi + 0x10]
push ecx
call fcn.1007e020
add esp, 0x10
test eax, eax
mov eax, dword [0x1011443c]
jns 0x10080a80
mov esi, eax
cmp esi, eax
jne 0x10080a88
xor eax, eax
jmp 0x10080a8b
mov eax, dword [esi + 0x28]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100bb287
mov esp, ebp
pop ebp
ret
push 0x10114444
call fcn.100bb691
add esp, 4
cmp dword [0x10114444], 0xffffffff
jne 0x10080a29
mov eax, dword [str.circle]
xorps xmm0, xmm0
movups xmmword [ebp - 0x25c], xmm0
mov dword [ebp - 0x25c], eax
movzx eax, word [0x100eafd4]
mov dword [ebp - 4], 0
mov dword [ebp - 0x24c], 6
mov dword [ebp - 0x248], 0xf
mov word [ebp - 0x258], ax
mov byte [ebp - 0x256], 0
mov dword [ebp - 0x244], 2
movups xmmword [ebp - 0x240], xmm0
mov dword [ebp - 0x230], 8
mov dword [ebp - 0x22c], 0xf
mov dword [ebp - 0x240], 0x70696c63
mov dword [ebp - 0x23c], 0x68746150
mov byte [ebp - 0x238], 0
mov dword [ebp - 0x228], 3
movups xmmword [ebp - 0x224], xmm0
mov dword [ebp - 0x214], 4
mov dword [ebp - 0x210], 0xf
mov dword [ebp - 0x224], 0x73666564
mov byte [ebp - 0x220], 0
mov dword [ebp - 0x20c], 4
mov eax, dword [str.ellipse]
movups xmmword [ebp - 0x208], xmm0
mov dword [ebp - 0x208], eax
movzx eax, word [0x100eafdc]
mov word [ebp - 0x204], ax
movzx eax, byte [0x100eafde]
mov dword [ebp - 0x1f8], 7
mov dword [ebp - 0x1f4], 0xf
mov byte [ebp - 0x202], al
mov byte [ebp - 0x201], 0
mov dword [ebp - 0x1f0], 5
movups xmmword [ebp - 0x1ec], xmm0
mov dword [ebp - 0x1dc], 1
mov dword [ebp - 0x1d8], 0xf
mov word [ebp - 0x1ec], 0x67
mov dword [ebp - 0x1d4], 6
movups xmmword [ebp - 0x1d0], xmm0
mov dword [ebp - 0x1c0], 4
mov dword [ebp - 0x1bc], 0xf
mov dword [ebp - 0x1d0], 0x656e696c
mov byte [ebp - 0x1cc], 0
mov dword [ebp - 0x1b8], 7
mov eax, dword [0x100eafe8]
movups xmmword [ebp - 0x1b4], xmm0
mov dword [ebp - 0x1ac], eax
movq xmm0, qword [str.linearGradient]
movzx eax, word [0x100eafec]
mov dword [ebp - 0x1a4], 0xe
mov dword [ebp - 0x1a0], 0xf
movq qword [ebp - 0x1b4], xmm0
mov word [ebp - 0x1a8], ax
mov byte [ebp - 0x1a6], 0
mov dword [ebp - 0x19c], 8
mov eax, dword [str.marker]
xorps xmm0, xmm0
movups xmmword [ebp - 0x198], xmm0
mov dword [ebp - 0x198], eax
movzx eax, word [0x100eaff4]
mov dword [ebp - 0x188], 6
mov dword [ebp - 0x184], 0xf
mov word [ebp - 0x194], ax
mov byte [ebp - 0x192], 0
mov dword [ebp - 0x180], 9
movups xmmword [ebp - 0x17c], xmm0
mov dword [ebp - 0x16c], 4
mov dword [ebp - 0x168], 0xf
mov dword [ebp - 0x17c], 0x6b73616d
mov byte [ebp - 0x178], 0
mov dword [ebp - 0x164], 0xa
movups xmmword [ebp - 0x160], xmm0
mov dword [ebp - 0x150], 4
mov dword [ebp - 0x14c], 0xf
mov dword [ebp - 0x160], 0x68746170
mov byte [ebp - 0x15c], 0
mov dword [ebp - 0x148], 0xb
mov eax, dword [str.pattern]
movups xmmword [ebp - 0x144], xmm0
mov dword [ebp - 0x144], eax
movzx eax, word [0x100eaffc]
mov word [ebp - 0x140], ax
movzx eax, byte [0x100eaffe]
mov dword [ebp - 0x134], 7
mov dword [ebp - 0x130], 0xf
mov byte [ebp - 0x13e], al
mov byte [ebp - 0x13d], 0
mov dword [ebp - 0x12c], 0xc
mov eax, dword [str.polygon]
movups xmmword [ebp - 0x128], xmm0
mov dword [ebp - 0x128], eax
movzx eax, word [0x100eb004]
mov word [ebp - 0x124], ax
movzx eax, byte [0x100eb006]
mov dword [ebp - 0x118], 7
mov dword [ebp - 0x114], 0xf
mov byte [ebp - 0x122], al
mov byte [ebp - 0x121], 0
mov dword [ebp - 0x110], 0xd
movups xmmword [ebp - 0x10c], xmm0
mov dword [ebp - 0xfc], 8
mov dword [ebp - 0xf8], 0xf
mov dword [ebp - 0x10c], 0x796c6f70
mov dword [ebp - 0x108], 0x656e696c
mov byte [ebp - 0x104], 0
mov dword [ebp - 0xf4], 0xe
mov eax, dword [0x100eb010]
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe8], eax
movq xmm0, qword [str.radialGradient]
movzx eax, word [0x100eb014]
mov dword [ebp - 0xe0], 0xe
mov dword [ebp - 0xdc], 0xf
movq qword [ebp - 0xf0], xmm0
mov word [ebp - 0xe4], ax
mov byte [ebp - 0xe2], 0
mov dword [ebp - 0xd8], 0xf
xorps xmm0, xmm0
mov dword [ebp - 0xc4], 4
movups xmmword [ebp - 0xd4], xmm0
mov dword [ebp - 0xc0], 0xf
mov dword [ebp - 0xd4], 0x74636572
mov byte [ebp - 0xd0], 0
mov dword [ebp - 0xbc], 0x10
movups xmmword [ebp - 0xb8], xmm0
mov dword [ebp - 0xa8], 4
mov dword [ebp - 0xa4], 0xf
mov dword [ebp - 0xb8], 0x706f7473
mov byte [ebp - 0xb4], 0
mov dword [ebp - 0xa0], 0x12
mov eax, dword [str.style]
movups xmmword [ebp - 0x9c], xmm0
mov dword [ebp - 0x9c], eax
movzx eax, byte [0x100eb01c]
mov dword [ebp - 0x8c], 5
mov dword [ebp - 0x88], 0xf
mov byte [ebp - 0x98], al
mov byte [ebp - 0x97], 0
mov dword [ebp - 0x84], 0x13
movups xmmword [ebp - 0x80], xmm0
mov dword [ebp - 0x70], 0xa
mov dword [ebp - 0x6c], 0xf
movq xmm0, qword [str.solidColor]
movzx eax, word [0x100eb028]
movq qword [ebp - 0x80], xmm0
mov word [ebp - 0x78], ax
mov byte [ebp - 0x76], 0
mov dword [ebp - 0x68], 0x11
movzx eax, word [0x100eb02c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x64], xmm0
mov word [ebp - 0x64], ax
movzx eax, byte [0x100eb02e]
mov dword [ebp - 0x54], 3
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x62], al
mov byte [ebp - 0x61], 0
mov dword [ebp - 0x4c], 0x14
mov eax, dword [str.symbol]
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x48], eax
movzx eax, word [0x100eb034]
mov dword [ebp - 0x38], 6
mov dword [ebp - 0x34], 0xf
mov word [ebp - 0x44], ax
mov byte [ebp - 0x42], 0
mov dword [ebp - 0x30], 0x15
movzx eax, word [0x100eb038]
movups xmmword [ebp - 0x2c], xmm0
mov word [ebp - 0x2c], ax
movzx eax, byte [0x100eb03a]
mov dword [ebp - 0x1c], 3
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2a], al
mov byte [ebp - 0x29], 0
mov dword [ebp - 0x14], 0x16
push 0x2c
mov byte [ebp - 4], 0x15
lea esi, [ebp - 0x25c]
lea edi, [ebp - 0x10]
call fcn.100bb295
add esp, 4
mov dword [ebp - 0x274], eax
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [0x1011443c], eax
mov byte [ebp - 4], 0x16
cmp esi, edi
je 0x10081129
jmp 0x10081040
push esi
push eax
lea eax, [ebp - 0x288]
mov ecx, 0x1011443c
push eax
call fcn.1007dcb0
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0x268], xmm0
mov dword [ebp - 0x260], eax
test al, al
jne 0x10081112
cmp dword [0x10114440], 0x5d1745d
je 0x10081124
mov eax, dword [0x1011443c]
mov dword [ebp - 0x270], eax
mov dword [ebp - 0x27c], 0x1011443c
push 0x2c
mov byte [ebp - 4], 0x17
mov dword [ebp - 0x278], 0
call fcn.100bb295
add esp, 4
mov dword [ebp - 0x26c], eax
mov dword [ebp - 0x278], eax
lea edi, [eax + 0x10]
mov byte [ebp - 4], 0x18
push esi
mov ecx, edi
call fcn.1000e270
mov eax, dword [ebp - 0x26c]
mov ecx, dword [esi + 0x18]
mov dword [edi + 0x18], ecx
mov ecx, dword [ebp - 0x270]
push eax
push dword [ebp - 0x264]
mov dword [eax], ecx
push dword [ebp - 0x268]
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov ecx, 0x1011443c
mov word [eax + 0xc], 0
mov byte [ebp - 4], 0x16
mov dword [ebp - 0x278], 0
call fcn.1007a100
lea edi, [ebp - 0x10]
jmp 0x10081112
add esi, 0x1c
cmp esi, edi
je 0x10081129
mov eax, dword [ebp - 0x274]
jmp 0x10081040
call fcn.1007a3b0
push fcn.10005ce0
push 0x15
push 0x1c
lea eax, [ebp - 0x25c]
mov byte [ebp - 4], 0
push eax
call fcn.100bbed2
push 0x100e9e90
call fcn.100bb5fb
push 0x10114444
call fcn.100bb640
add esp, 8
jmp 0x10080a29