Function at 0x100a0390
Capabilities:
Contain obfuscated stackstrings
Get geographical location

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ee321
mov eax, dword fs:[0]
push eax
sub esp, 0x2ec
mov eax, dword [0x101eb100]
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 [0x102f5774]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x102f52e8]
cmp eax, dword [ecx + 4]
jg 0x100a0455
mov esi, dword [ebp + 8]
lea eax, [ebp - 0x2f8]
push esi
push eax
mov ecx, 0x102f52e0
call fcn.1009eb30
mov edi, dword [ebp - 0x2f0]
mov eax, dword [0x102f52e0]
cmp byte [edi + 0xd], 0
jne 0x100a042d
cmp dword [edi + 0x24], 0xf
lea eax, [edi + 0x10]
mov edx, dword [eax + 0x10]
jbe 0x100a040d
mov eax, dword [eax]
cmp dword [esi + 0x14], 0xf
mov ecx, dword [esi + 0x10]
jbe 0x100a0418
mov esi, dword [esi]
push edx
push eax
push ecx
push esi
call fcn.1006aa40
add esp, 0x10
test eax, eax
mov eax, dword [0x102f52e0]
jns 0x100a042f
mov edi, eax
cmp edi, eax
jne 0x100a0437
xor eax, eax
jmp 0x100a043a
mov eax, dword [edi + 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.100bbfd9
mov esp, ebp
pop ebp
ret
push 0x102f52e8
call fcn.100bc3ec
add esp, 4
cmp dword [0x102f52e8], 0xffffffff
jne 0x100a03d9
movzx eax, byte [0x101c6cf8]
xorps xmm0, xmm0
movups xmmword [ebp - 0x2e8], xmm0
mov dword [ebp - 4], 0
movq xmm0, qword [str.clip_path]
mov dword [ebp - 0x2d8], 9
mov dword [ebp - 0x2d4], 0xf
movq qword [ebp - 0x2e8], xmm0
mov byte [ebp - 0x2e0], al
mov byte [ebp - 0x2df], 0
mov dword [ebp - 0x2d0], 2
movzx eax, byte [0x101c6d04]
xorps xmm0, xmm0
movups xmmword [ebp - 0x2cc], xmm0
mov dword [ebp - 0x2bc], 9
movq xmm0, qword [str.clip_rule]
mov dword [ebp - 0x2b8], 0xf
movq qword [ebp - 0x2cc], xmm0
mov byte [ebp - 0x2c4], al
mov byte [ebp - 0x2c3], 0
mov dword [ebp - 0x2b4], 3
mov eax, dword [str.color]
xorps xmm0, xmm0
movups xmmword [ebp - 0x2b0], xmm0
mov dword [ebp - 0x2b0], eax
movzx eax, byte [0x101c6d0c]
mov dword [ebp - 0x2a0], 5
mov dword [ebp - 0x29c], 0xf
mov byte [ebp - 0x2ac], al
mov byte [ebp - 0x2ab], 0
mov dword [ebp - 0x298], 5
mov eax, dword [str.display]
movups xmmword [ebp - 0x294], xmm0
mov dword [ebp - 0x294], eax
movzx eax, word [0x101c6d14]
mov word [ebp - 0x290], ax
movzx eax, byte [0x101c6d16]
mov dword [ebp - 0x284], 7
mov dword [ebp - 0x280], 0xf
mov byte [ebp - 0x28e], al
mov byte [ebp - 0x28d], 0
mov dword [ebp - 0x27c], 9
movups xmmword [ebp - 0x278], xmm0
mov dword [ebp - 0x268], 4
mov dword [ebp - 0x264], 0xf
mov dword [ebp - 0x278], 0x6c6c6966
mov byte [ebp - 0x274], 0
mov dword [ebp - 0x260], 0xa
mov eax, dword [0x101c6d20]
movups xmmword [ebp - 0x25c], xmm0
mov dword [ebp - 0x24c], 0xc
movq xmm0, qword [str.fill_opacity]
mov dword [ebp - 0x248], 0xf
movq qword [ebp - 0x25c], xmm0
mov dword [ebp - 0x254], eax
mov byte [ebp - 0x250], 0
mov dword [ebp - 0x244], 0xb
movzx eax, byte [0x101c6d30]
xorps xmm0, xmm0
movups xmmword [ebp - 0x240], xmm0
mov dword [ebp - 0x230], 9
movq xmm0, qword [str.fill_rule]
mov dword [ebp - 0x22c], 0xf
movq qword [ebp - 0x240], xmm0
mov byte [ebp - 0x238], al
mov byte [ebp - 0x237], 0
mov dword [ebp - 0x228], 0xc
xorps xmm0, xmm0
mov dword [ebp - 0x214], 0xa
movups xmmword [ebp - 0x224], xmm0
mov dword [ebp - 0x210], 0xf
movq xmm0, qword [str.marker_end]
movq qword [ebp - 0x224], xmm0
movzx eax, word [0x101c6d3c]
mov word [ebp - 0x21c], ax
mov byte [ebp - 0x21a], 0
mov dword [ebp - 0x20c], 0x14
movzx eax, word [0x101c6d48]
xorps xmm0, xmm0
movups xmmword [ebp - 0x208], xmm0
mov dword [ebp - 0x1f8], 0xa
movq xmm0, qword [str.marker_mid]
mov dword [ebp - 0x1f4], 0xf
movq qword [ebp - 0x208], xmm0
mov word [ebp - 0x200], ax
mov byte [ebp - 0x1fe], 0
mov dword [ebp - 0x1f0], 0x15
mov eax, dword [0x101c6d54]
xorps xmm0, xmm0
movups xmmword [ebp - 0x1ec], xmm0
mov dword [ebp - 0x1dc], 0xc
movq xmm0, qword [str.marker_start]
mov dword [ebp - 0x1d8], 0xf
movq qword [ebp - 0x1ec], xmm0
mov dword [ebp - 0x1e4], eax
mov byte [ebp - 0x1e0], 0
mov dword [ebp - 0x1d4], 0x16
xorps xmm0, xmm0
mov dword [ebp - 0x1c0], 4
movups xmmword [ebp - 0x1d0], xmm0
mov dword [ebp - 0x1bc], 0xf
mov dword [ebp - 0x1d0], 0x6b73616d
mov byte [ebp - 0x1cc], 0
mov dword [ebp - 0x1b8], 0x1a
mov eax, dword [str.opacity]
movups xmmword [ebp - 0x1b4], xmm0
mov dword [ebp - 0x1b4], eax
movzx eax, word [0x101c6d60]
mov word [ebp - 0x1b0], ax
movzx eax, byte [0x101c6d62]
mov dword [ebp - 0x1a4], 7
mov dword [ebp - 0x1a0], 0xf
mov byte [ebp - 0x1ae], al
mov byte [ebp - 0x1ad], 0
mov dword [ebp - 0x19c], 0x1e
movups xmmword [ebp - 0x198], xmm0
mov dword [ebp - 0x188], 8
mov dword [ebp - 0x184], 0xf
mov dword [ebp - 0x198], 0x7265766f
mov dword [ebp - 0x194], 0x776f6c66
mov byte [ebp - 0x190], 0
mov dword [ebp - 0x180], 0x20
movzx eax, word [0x101c6d6c]
movups xmmword [ebp - 0x17c], xmm0
mov word [ebp - 0x174], ax
movq xmm0, qword [str.solid_color]
movzx eax, byte [0x101c6d6e]
mov dword [ebp - 0x16c], 0xb
mov dword [ebp - 0x168], 0xf
movq qword [ebp - 0x17c], xmm0
mov byte [ebp - 0x172], al
mov byte [ebp - 0x171], 0
mov dword [ebp - 0x164], 0x2b
mov eax, dword [0x101c6d78]
xorps xmm0, xmm0
movups xmmword [ebp - 0x160], xmm0
mov dword [ebp - 0x158], eax
movq xmm0, qword [str.solid_opacity]
movzx eax, byte [0x101c6d7c]
mov dword [ebp - 0x150], 0xd
mov dword [ebp - 0x14c], 0xf
movq qword [ebp - 0x160], xmm0
mov byte [ebp - 0x154], al
mov byte [ebp - 0x153], 0
mov dword [ebp - 0x148], 0x2c
xorps xmm0, xmm0
movzx eax, word [0x101c6d88]
movups xmmword [ebp - 0x144], xmm0
mov dword [ebp - 0x134], 0xa
movq xmm0, qword [str.stop_color]
mov dword [ebp - 0x130], 0xf
movq qword [ebp - 0x144], xmm0
mov word [ebp - 0x13c], ax
mov byte [ebp - 0x13a], 0
mov dword [ebp - 0x12c], 0x2e
mov eax, dword [0x101c6d94]
xorps xmm0, xmm0
movups xmmword [ebp - 0x128], xmm0
mov dword [ebp - 0x118], 0xc
movq xmm0, qword [str.stop_opacity]
mov dword [ebp - 0x114], 0xf
movq qword [ebp - 0x128], xmm0
mov dword [ebp - 0x120], eax
mov byte [ebp - 0x11c], 0
mov dword [ebp - 0x110], 0x2f
mov eax, dword [str.stroke]
xorps xmm0, xmm0
movups xmmword [ebp - 0x10c], xmm0
mov dword [ebp - 0x10c], eax
movzx eax, word [0x101c6da0]
mov dword [ebp - 0xfc], 6
mov dword [ebp - 0xf8], 0xf
mov word [ebp - 0x108], ax
mov byte [ebp - 0x106], 0
mov dword [ebp - 0xf4], 0x30
lea eax, [ebp - 0x2ec]
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0xe0], 0
push eax
push ecx
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0x2ec], 0x1f
call fcn.1000f560
movups xmm0, xmmword [str.stroke_dasharray]
mov ecx, dword [ebp - 0x2ec]
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0xe0], 0x10
mov dword [ebp - 0xdc], ecx
movups xmmword [eax], xmm0
mov byte [eax + 0x10], 0
mov dword [ebp - 0xd8], 0x31
lea eax, [ebp - 0x2ec]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xd4]
mov dword [ebp - 0xc4], 0
push eax
xorps xmm0, xmm0
mov dword [ebp - 0xc0], 0
push ecx
movups xmmword [ebp - 0xd4], xmm0
mov dword [ebp - 0x2ec], 0x1f
call fcn.1000f560
movups xmm0, xmmword [str.stroke_dashoffset]
mov ecx, dword [ebp - 0x2ec]
mov dword [ebp - 0xc0], ecx
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xc4], 0x11
movups xmmword [eax], xmm0
movzx ecx, byte [0x101c6dc8]
mov byte [eax + 0x10], cl
mov byte [eax + 0x11], 0
mov dword [ebp - 0xbc], 0x32
mov eax, dword [0x101c6dd4]
xorps xmm0, xmm0
movups xmmword [ebp - 0xb8], xmm0
mov dword [ebp - 0xa8], 0xe
movq xmm0, qword [str.stroke_linecap]
mov dword [ebp - 0xa4], 0xf
movq qword [ebp - 0xb8], xmm0
mov dword [ebp - 0xb0], eax
movzx eax, word [0x101c6dd8]
mov word [ebp - 0xac], ax
mov byte [ebp - 0xaa], 0
mov dword [ebp - 0xa0], 0x33
mov eax, dword [0x101c6de4]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9c], xmm0
mov dword [ebp - 0x94], eax
movzx eax, word [0x101c6de8]
movq xmm0, qword [str.stroke_linejoin]
mov word [ebp - 0x90], ax
movzx eax, byte [0x101c6dea]
mov dword [ebp - 0x8c], 0xf
mov dword [ebp - 0x88], 0xf
movq qword [ebp - 0x9c], xmm0
mov byte [ebp - 0x8e], al
mov byte [ebp - 0x8d], 0
mov dword [ebp - 0x84], 0x34
lea eax, [ebp - 0x2ec]
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x70], 0
push eax
xorps xmm0, xmm0
mov dword [ebp - 0x6c], 0
push ecx
movups xmmword [ebp - 0x80], xmm0
mov dword [ebp - 0x2ec], 0x1f
call fcn.1000f560
movups xmm0, xmmword [str.stroke_miterlimit]
mov ecx, dword [ebp - 0x2ec]
add esp, 0x18
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x70], 0x11
movups xmmword [eax], xmm0
movzx ecx, byte [0x101c6dfc]
mov byte [eax + 0x10], cl
mov byte [eax + 0x11], 0
mov dword [ebp - 0x68], 0x35
mov eax, dword [0x101c6e08]
xorps xmm0, xmm0
movups xmmword [ebp - 0x64], xmm0
mov dword [ebp - 0x5c], eax
movq xmm0, qword [str.stroke_opacity]
movzx eax, word [0x101c6e0c]
mov dword [ebp - 0x54], 0xe
mov dword [ebp - 0x50], 0xf
movq qword [ebp - 0x64], xmm0
mov word [ebp - 0x58], ax
mov byte [ebp - 0x56], 0
mov dword [ebp - 0x4c], 0x36
mov eax, dword [0x101c6e18]
xorps xmm0, xmm0
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x38], 0xc
movq xmm0, qword [str.stroke_width]
mov dword [ebp - 0x34], 0xf
movq qword [ebp - 0x48], xmm0
mov dword [ebp - 0x40], eax
mov byte [ebp - 0x3c], 0
mov dword [ebp - 0x30], 0x37
movzx eax, word [0x101c6e28]
xorps xmm0, xmm0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0xa
movq xmm0, qword [str.visibility]
mov dword [ebp - 0x18], 0xf
movq qword [ebp - 0x2c], xmm0
mov word [ebp - 0x24], ax
mov byte [ebp - 0x22], 0
mov dword [ebp - 0x14], 0x3b
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x2e8]
lea eax, [ebp - 0x10]
push eax
push ecx
mov ecx, 0x102f52e0
call fcn.1009f3c0
push fcn.1000f230
push 0x1a
push 0x1c
lea eax, [ebp - 0x2e8]
mov byte [ebp - 4], 0
push eax
call fcn.100bca9a
push 0x100f04e0
call fcn.100bc32a
push 0x102f52e8
call fcn.100bc39b
add esp, 8
jmp 0x100a03d9