Function at 0x100c6fb0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x500
push ebx
push esi
mov dword [esp + 0x2a0], ecx
push 0
mov edx, dword [esp + 0x2a4]
mov ecx, str.Example:_Custom_rendering
call fcn.10097590
movzx eax, al
test eax, eax
jne 0x100c6fe9
call fcn.1009b0f0
jmp 0x100c95b4
xor edx, edx
mov ecx, str.TabBar
call fcn.10116a70
movzx ecx, al
test ecx, ecx
je 0x100c95af
push 0
xor edx, edx
mov ecx, str.Primitives
call fcn.10119170
movzx edx, al
test edx, edx
je 0x100c89db
call fcn.1009c620
xorps xmm0, xmmword [0x101ca7c0]
mulss xmm0, dword [0x101ca49c]
call fcn.1009d7a0
call fcn.1009c5d0
mov dword [esp + 0x10], eax
push str.Gradients
call fcn.100f6a40
add esp, 4
call fcn.1009dd00
movss dword [esp + 0x2a8], xmm0
call fcn.1009da60
movss dword [esp + 0x2a4], xmm0
movss xmm0, dword [esp + 0x2a4]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x2a8]
movss dword [esp + 0x54], xmm0
call fcn.1009d2b0
movss dword [esp + 0x2cc], xmm1
movss dword [esp + 0x2c8], xmm0
mov eax, dword [esp + 0x2c8]
mov ecx, dword [esp + 0x2cc]
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], ecx
movss xmm0, dword [esp + 0xa4]
addss xmm0, dword [esp + 0x50]
movss dword [esp + 0x2ac], xmm0
movss xmm0, dword [esp + 0xa8]
addss xmm0, dword [esp + 0x54]
movss dword [esp + 0x2b0], xmm0
movss xmm0, dword [esp + 0x2ac]
movss dword [esp + 0x35c], xmm0
movss xmm0, dword [esp + 0x2b0]
movss dword [esp + 0x360], xmm0
mov ecx, 0xff000000
call fcn.10089690
mov dword [esp + 0x84], eax
or ecx, 0xffffffff
call fcn.10089690
mov dword [esp + 0x80], eax
mov edx, dword [esp + 0x84]
push edx
mov eax, dword [esp + 0x84]
push eax
mov ecx, dword [esp + 0x88]
push ecx
mov edx, dword [esp + 0x90]
push edx
lea eax, [esp + 0x36c]
push eax
lea ecx, [esp + 0xb8]
push ecx
mov ecx, dword [esp + 0x28]
call fcn.100dc260
push 0
lea edx, [esp + 0x54]
mov ecx, str.gradient1
call fcn.100f8090
call fcn.1009d2b0
movss dword [esp + 0x2d4], xmm1
movss dword [esp + 0x2d0], xmm0
mov edx, dword [esp + 0x2d0]
mov eax, dword [esp + 0x2d4]
mov dword [esp + 0xac], edx
mov dword [esp + 0xb0], eax
movss xmm0, dword [esp + 0xac]
addss xmm0, dword [esp + 0x50]
movss dword [esp + 0x2b4], xmm0
movss xmm0, dword [esp + 0xb0]
addss xmm0, dword [esp + 0x54]
movss dword [esp + 0x2b8], xmm0
movss xmm0, dword [esp + 0x2b4]
movss dword [esp + 0x364], xmm0
movss xmm0, dword [esp + 0x2b8]
movss dword [esp + 0x368], xmm0
mov ecx, 0xff00ff00
call fcn.10089690
mov dword [esp + 0x8c], eax
mov ecx, 0xff0000ff
call fcn.10089690
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 0x8c]
push ecx
mov edx, dword [esp + 0x8c]
push edx
mov eax, dword [esp + 0x90]
push eax
mov ecx, dword [esp + 0x98]
push ecx
lea edx, [esp + 0x374]
push edx
lea eax, [esp + 0xc0]
push eax
mov ecx, dword [esp + 0x28]
call fcn.100dc260
push 0
lea edx, [esp + 0x54]
mov ecx, str.gradient2
call fcn.100f8090
push str.All_primitives
call fcn.100f6a40
add esp, 4
mov ecx, dword [0x101d8c04]
mov edx, dword fs:[0x2c]
mov eax, dword [edx + ecx*4]
mov ecx, dword [0x101e4df8]
cmp ecx, dword [eax + 4]
jle 0x100c72f2
push 0x101e4df8
call fcn.1016c49a
add esp, 4
cmp dword [0x101e4df8], 0xffffffff
jne 0x100c72f2
movss xmm0, dword [0x101ca378]
movss dword [0x101e4198], xmm0
movss xmm0, dword [0x101ca378]
movss dword [0x101e419c], xmm0
movss xmm0, dword [0x101ca260]
movss dword [0x101e41a0], xmm0
movss xmm0, dword [0x101ca378]
movss dword [0x101e41a4], xmm0
push 0x101e4df8
call fcn.1016c450
add esp, 4
push 0
push str._.0f
movss xmm2, dword [0x101ca534]
movss xmm1, dword [0x101ca3e0]
movss xmm0, dword [0x101ca1fc]
mov edx, 0x101d7dc4
mov ecx, str.Size
call fcn.100ffca0
push 0
push str._.02f
movss xmm2, dword [0x101ca474]
movss xmm1, dword [0x101ca378]
movss xmm0, dword [0x101ca1b4]
mov edx, 0x101d7dc0
mov ecx, str.Thickness
call fcn.100ffca0
push 0
push 0x101b2dbc
push 0xc
push 3
mov edx, 0x101d7d04
mov ecx, str.N_gon_sides
call fcn.10101100
mov edx, 0x101d9be0
mov ecx, str.circlesegmentoverride
call fcn.100fa810
call fcn.10089590
movss xmm1, dword [eax + 0x50]
xorps xmm0, xmm0
call fcn.1009d170
movzx ebx, byte [0x101d9be0]
push 0
push 0x101b2dbc
push 0x28
push 3
mov edx, 0x101d3b38
mov ecx, str.Circle_segments_override
call fcn.10101100
movzx edx, al
or ebx, edx
mov byte [0x101d9be0], bl
mov edx, 0x101d9c69
mov ecx, str.curvessegmentoverride
call fcn.100fa810
call fcn.10089590
movss xmm1, dword [eax + 0x50]
xorps xmm0, xmm0
call fcn.1009d170
movzx ebx, byte [0x101d9c69]
push 0
push 0x101b2dbc
push 0x28
push 3
mov edx, 0x101d3b78
mov ecx, str.Curves_segments_override
call fcn.10101100
movzx eax, al
or ebx, eax
mov byte [0x101d9c69], bl
push 0
mov edx, 0x101e4198
mov ecx, str.Color
call fcn.1010a460
call fcn.1009d2b0
movss dword [esp + 0x2dc], xmm1
movss dword [esp + 0x2d8], xmm0
mov ecx, dword [esp + 0x2d8]
mov edx, dword [esp + 0x2dc]
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], edx
lea eax, [esp + 0x4f8]
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0x44]
xorps xmm0, xmm0
movss dword [ecx + 0xc], xmm0
mov edx, dword [esp + 0x44]
xorps xmm0, xmm0
movss dword [edx + 8], xmm0
mov eax, dword [esp + 0x44]
xorps xmm0, xmm0
movss dword [eax + 4], xmm0
mov ecx, dword [esp + 0x44]
xorps xmm0, xmm0
movss dword [ecx], xmm0
lea edx, [esp + 0x4f8]
mov eax, dword [0x101e4198]
mov dword [edx], eax
mov ecx, dword [0x101e419c]
mov dword [edx + 4], ecx
mov eax, dword [0x101e41a0]
mov dword [edx + 8], eax
mov ecx, dword [0x101e41a4]
mov dword [edx + 0xc], ecx
lea ecx, [esp + 0x4f8]
call fcn.10087f10
mov dword [esp + 0x14], eax
movss xmm0, dword [0x101ca47c]
movss dword [esp + 0x4d0], xmm0
mov dword [esp + 0x4d4], 0x90
movss xmm0, dword [0x101d7dc4]
divss xmm0, dword [0x101ca44c]
movss dword [esp + 0x70], xmm0
movzx edx, byte [0x101d9be0]
test edx, edx
je 0x100c7503
mov eax, dword [0x101d3b38]
mov dword [esp + 0x90], eax
jmp 0x100c750e
mov dword [esp + 0x90], 0
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x78], ecx
movzx edx, byte [0x101d9c69]
test edx, edx
je 0x100c752f
mov eax, dword [0x101d3b78]
mov dword [esp + 0x68], eax
jmp 0x100c7537
mov dword [esp + 0x68], 0
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x74], ecx
movss xmm0, dword [esp + 0xb4]
addss xmm0, dword [0x101ca438]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 0xb8]
addss xmm0, dword [0x101ca438]
movss dword [esp + 0xc], xmm0
mov dword [esp + 0x48], 0
jmp 0x100c7582
mov edx, dword [esp + 0x48]
add edx, 1
mov dword [esp + 0x48], edx
cmp dword [esp + 0x48], 2
jge 0x100c80f3
cmp dword [esp + 0x48], 0
jne 0x100c75a4
movss xmm0, dword [0x101ca378]
movss dword [esp + 0x6c], xmm0
jmp 0x100c75b2
movss xmm0, dword [0x101d7dc0]
movss dword [esp + 0x6c], xmm0
movss xmm0, dword [esp + 0x6c]
movss dword [esp + 0x1c], xmm0
mov eax, dword [0x101d7d04]
mov dword [esp + 0x2c4], eax
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
movss dword [esp + 0xbc], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
addss xmm0, dword [esp + 8]
movss dword [esp + 0x2bc], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
addss xmm0, dword [esp + 0xc]
movss dword [esp + 0x2c0], xmm0
movss xmm0, dword [esp + 0x2bc]
movss dword [esp + 0x36c], xmm0
movss xmm0, dword [esp + 0x2c0]
movss dword [esp + 0x370], xmm0
lea ecx, [esp + 0x36c]
mov dword [esp + 0xc0], ecx
push ecx
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
mov edx, dword [esp + 0x2c8]
push edx
mov eax, dword [esp + 0x1c]
push eax
push ecx
movss xmm0, dword [esp + 0xcc]
movss dword [esp], xmm0
mov ecx, dword [esp + 0xd0]
push ecx
mov ecx, dword [esp + 0x24]
call fcn.100dc8a0
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
movss dword [esp + 0xcc], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
addss xmm0, dword [esp + 8]
movss dword [esp + 0xc4], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
addss xmm0, dword [esp + 0xc]
movss dword [esp + 0xc8], xmm0
movss xmm0, dword [esp + 0xc4]
movss dword [esp + 0x32c], xmm0
movss xmm0, dword [esp + 0xc8]
movss dword [esp + 0x330], xmm0
lea edx, [esp + 0x32c]
mov dword [esp + 0xd0], edx
push ecx
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
mov eax, dword [esp + 0x7c]
push eax
mov ecx, dword [esp + 0x1c]
push ecx
push ecx
movss xmm0, dword [esp + 0xdc]
movss dword [esp], xmm0
mov edx, dword [esp + 0xe0]
push edx
mov ecx, dword [esp + 0x24]
call fcn.100dc640
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0xd4], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0xd8], xmm0
movss xmm0, dword [esp + 0xd4]
movss dword [esp + 0x37c], xmm0
movss xmm0, dword [esp + 0xd8]
movss dword [esp + 0x380], xmm0
lea eax, [esp + 0x37c]
mov dword [esp + 0xdc], eax
movss xmm0, dword [esp + 8]
movss dword [esp + 0x384], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x388], xmm0
lea ecx, [esp + 0x384]
mov dword [esp + 0xe0], ecx
push ecx
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
push 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
mov edx, dword [esp + 0x20]
push edx
mov eax, dword [esp + 0xec]
push eax
mov ecx, dword [esp + 0xf4]
push ecx
mov ecx, dword [esp + 0x28]
call fcn.100dbf70
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0xe4], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0xe8], xmm0
movss xmm0, dword [esp + 0xe4]
movss dword [esp + 0x38c], xmm0
movss xmm0, dword [esp + 0xe8]
movss dword [esp + 0x390], xmm0
lea edx, [esp + 0x38c]
mov dword [esp + 0xec], edx
movss xmm0, dword [esp + 8]
movss dword [esp + 0x394], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x398], xmm0
lea eax, [esp + 0x394]
mov dword [esp + 0xf0], eax
push ecx
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
push 0
push ecx
movss xmm0, dword [esp + 0x7c]
movss dword [esp], xmm0
mov ecx, dword [esp + 0x20]
push ecx
mov edx, dword [esp + 0xfc]
push edx
mov eax, dword [esp + 0x104]
push eax
mov ecx, dword [esp + 0x28]
call fcn.100dbf70
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0xf4], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0xf8], xmm0
movss xmm0, dword [esp + 0xf4]
movss dword [esp + 0x39c], xmm0
movss xmm0, dword [esp + 0xf8]
movss dword [esp + 0x3a0], xmm0
lea ecx, [esp + 0x39c]
mov dword [esp + 0xfc], ecx
movss xmm0, dword [esp + 8]
movss dword [esp + 0x374], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x378], xmm0
lea edx, [esp + 0x374]
mov dword [esp + 0x100], edx
push ecx
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
push 0x90
push ecx
movss xmm0, dword [esp + 0x7c]
movss dword [esp], xmm0
mov eax, dword [esp + 0x20]
push eax
mov ecx, dword [esp + 0x10c]
push ecx
mov edx, dword [esp + 0x114]
push edx
mov ecx, dword [esp + 0x28]
call fcn.100dbf70
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
subss xmm0, dword [0x101ca28c]
movss dword [esp + 0x104], xmm0
movss xmm0, dword [esp + 8]
movss dword [esp + 0x3bc], xmm0
movss xmm0, dword [esp + 0x104]
movss dword [esp + 0x3c0], xmm0
lea eax, [esp + 0x3bc]
mov dword [esp + 0x114], eax
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x108], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
subss xmm0, dword [0x101ca28c]
movss dword [esp + 0x10c], xmm0
movss xmm0, dword [esp + 0x108]
movss dword [esp + 0x3c4], xmm0
movss xmm0, dword [esp + 0x10c]
movss dword [esp + 0x3c8], xmm0
lea ecx, [esp + 0x3c4]
mov dword [esp + 0x118], ecx
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
addss xmm0, dword [esp + 8]
movss dword [esp + 0x110], xmm0
movss xmm0, dword [esp + 0x110]
movss dword [esp + 0x3cc], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x3d0], xmm0
lea edx, [esp + 0x3cc]
mov dword [esp + 0x11c], edx
push ecx
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
mov eax, dword [esp + 0x18]
push eax
mov ecx, dword [esp + 0x11c]
push ecx
mov edx, dword [esp + 0x124]
push edx
mov eax, dword [esp + 0x12c]
push eax
mov ecx, dword [esp + 0x24]
call fcn.100dc530
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x120], xmm0
movss xmm0, dword [esp + 0x120]
movss dword [esp + 0x3d4], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x3d8], xmm0
lea ecx, [esp + 0x3d4]
mov dword [esp + 0x124], ecx
movss xmm0, dword [esp + 8]
movss dword [esp + 0x3dc], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x3e0], xmm0
lea edx, [esp + 0x3dc]
mov dword [esp + 0x128], edx
push ecx
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
mov eax, dword [esp + 0x18]
push eax
mov ecx, dword [esp + 0x12c]
push ecx
mov edx, dword [esp + 0x134]
push edx
mov ecx, dword [esp + 0x20]
call fcn.100dbe20
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x12c], xmm0
movss xmm0, dword [esp + 8]
movss dword [esp + 0x3e4], xmm0
movss xmm0, dword [esp + 0x12c]
movss dword [esp + 0x3e8], xmm0
lea eax, [esp + 0x3e4]
mov dword [esp + 0x130], eax
movss xmm0, dword [esp + 8]
movss dword [esp + 0x3ec], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x3f0], xmm0
lea ecx, [esp + 0x3ec]
mov dword [esp + 0x134], ecx
push ecx
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
mov edx, dword [esp + 0x18]
push edx
mov eax, dword [esp + 0x138]
push eax
mov ecx, dword [esp + 0x140]
push ecx
mov ecx, dword [esp + 0x20]
call fcn.100dbe20
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101ca47c]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x138], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x13c], xmm0
movss xmm0, dword [esp + 0x138]
movss dword [esp + 0x3f4], xmm0
movss xmm0, dword [esp + 0x13c]
movss dword [esp + 0x3f8], xmm0
lea edx, [esp + 0x3f4]
mov dword [esp + 0x140], edx
movss xmm0, dword [esp + 8]
movss dword [esp + 0x3fc], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x400], xmm0
lea eax, [esp + 0x3fc]
mov dword [esp + 0x144], eax
push ecx
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
mov ecx, dword [esp + 0x18]
push ecx
mov edx, dword [esp + 0x148]
push edx
mov eax, dword [esp + 0x150]
push eax
mov ecx, dword [esp + 0x20]
call fcn.100dbe20
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca2b4]
addss xmm0, dword [esp + 0xc]
movss dword [esp + 0x148], xmm0
movss xmm0, dword [esp + 8]
movss dword [esp + 0x3a4], xmm0
movss xmm0, dword [esp + 0x148]
movss dword [esp + 0x3a8], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
addss xmm0, dword [esp + 8]
movss dword [esp + 0x14c], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca260]
movss xmm1, dword [esp + 0xc]
subss xmm1, xmm0
movss dword [esp + 0x150], xmm1
movss xmm0, dword [esp + 0x14c]
movss dword [esp + 0x3ac], xmm0
movss xmm0, dword [esp + 0x150]
movss dword [esp + 0x3b0], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x154], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x158], xmm0
movss xmm0, dword [esp + 0x154]
movss dword [esp + 0x3b4], xmm0
movss xmm0, dword [esp + 0x158]
movss dword [esp + 0x3b8], xmm0
mov ecx, dword [esp + 0x74]
push ecx
push ecx
movss xmm0, dword [esp + 0x24]
movss dword [esp], xmm0
mov edx, dword [esp + 0x1c]
push edx
mov eax, 8
shl eax, 1
lea ecx, [esp + eax + 0x3b0]
push ecx
mov edx, 8
shl edx, 0
lea eax, [esp + edx + 0x3b4]
push eax
mov ecx, 8
imul edx, ecx, 0
lea eax, [esp + edx + 0x3b8]
push eax
mov ecx, dword [esp + 0x28]
call fcn.100dca80
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 8]
movss dword [esp + 0x33c], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x340], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca3a0]
addss xmm0, dword [esp + 8]
movss dword [esp + 0x15c], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca22c]
addss xmm0, dword [esp + 0xc]
movss dword [esp + 0x160], xmm0
movss xmm0, dword [esp + 0x15c]
movss dword [esp + 0x344], xmm0
movss xmm0, dword [esp + 0x160]
movss dword [esp + 0x348], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca3a0]
movss xmm1, dword [esp + 8]
addss xmm1, dword [0x101d7dc4]
subss xmm1, xmm0
movss dword [esp + 0x164], xmm1
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca22c]
movss xmm1, dword [esp + 0xc]
addss xmm1, dword [0x101d7dc4]
subss xmm1, xmm0
movss dword [esp + 0x168], xmm1
movss xmm0, dword [esp + 0x164]
movss dword [esp + 0x34c], xmm0
movss xmm0, dword [esp + 0x168]
movss dword [esp + 0x350], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x16c], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x170], xmm0
movss xmm0, dword [esp + 0x16c]
movss dword [esp + 0x354], xmm0
movss xmm0, dword [esp + 0x170]
movss dword [esp + 0x358], xmm0
mov ecx, dword [esp + 0x74]
push ecx
push ecx
movss xmm0, dword [esp + 0x24]
movss dword [esp], xmm0
mov edx, dword [esp + 0x1c]
push edx
mov eax, 8
imul ecx, eax, 3
lea edx, [esp + ecx + 0x348]
push edx
mov eax, 8
shl eax, 1
lea ecx, [esp + eax + 0x34c]
push ecx
mov edx, 8
shl edx, 0
lea eax, [esp + edx + 0x350]
push eax
mov ecx, 8
imul edx, ecx, 0
lea eax, [esp + edx + 0x354]
push eax
mov ecx, dword [esp + 0x2c]
call fcn.100dca00
movss xmm0, dword [esp + 0xb4]
addss xmm0, dword [0x101ca438]
movss dword [esp + 8], xmm0
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 0xc]
movss dword [esp + 0xc], xmm0
jmp 0x100c7577
mov ecx, dword [0x101d7d04]
mov dword [esp + 0x17c], ecx
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
movss dword [esp + 0x180], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
addss xmm0, dword [esp + 8]
movss dword [esp + 0x174], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
addss xmm0, dword [esp + 0xc]
movss dword [esp + 0x178], xmm0
movss xmm0, dword [esp + 0x174]
movss dword [esp + 0x404], xmm0
movss xmm0, dword [esp + 0x178]
movss dword [esp + 0x408], xmm0
lea edx, [esp + 0x404]
mov dword [esp + 0x184], edx
mov eax, dword [esp + 0x17c]
push eax
mov ecx, dword [esp + 0x18]
push ecx
push ecx
movss xmm0, dword [esp + 0x18c]
movss dword [esp], xmm0
mov edx, dword [esp + 0x190]
push edx
mov ecx, dword [esp + 0x20]
call fcn.100dc960
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
movss dword [esp + 0x190], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
addss xmm0, dword [esp + 8]
movss dword [esp + 0x188], xmm0
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
addss xmm0, dword [esp + 0xc]
movss dword [esp + 0x18c], xmm0
movss xmm0, dword [esp + 0x188]
movss dword [esp + 0x40c], xmm0
movss xmm0, dword [esp + 0x18c]
movss dword [esp + 0x410], xmm0
lea eax, [esp + 0x40c]
mov dword [esp + 0x194], eax
mov ecx, dword [esp + 0x78]
push ecx
mov edx, dword [esp + 0x18]
push edx
push ecx
movss xmm0, dword [esp + 0x19c]
movss dword [esp], xmm0
mov eax, dword [esp + 0x1a0]
push eax
mov ecx, dword [esp + 0x20]
call fcn.100dc780
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x198], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x19c], xmm0
movss xmm0, dword [esp + 0x198]
movss dword [esp + 0x414], xmm0
movss xmm0, dword [esp + 0x19c]
movss dword [esp + 0x418], xmm0
lea ecx, [esp + 0x414]
mov dword [esp + 0x1a0], ecx
movss xmm0, dword [esp + 8]
movss dword [esp + 0x41c], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x420], xmm0
lea edx, [esp + 0x41c]
mov dword [esp + 0x1a4], edx
push 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
mov eax, dword [esp + 0x1c]
push eax
mov ecx, dword [esp + 0x1ac]
push ecx
mov edx, dword [esp + 0x1b4]
push edx
mov ecx, dword [esp + 0x24]
call fcn.100dc1c0
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x1a8], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x1ac], xmm0
movss xmm0, dword [esp + 0x1a8]
movss dword [esp + 0x424], xmm0
movss xmm0, dword [esp + 0x1ac]
movss dword [esp + 0x428], xmm0
lea eax, [esp + 0x424]
mov dword [esp + 0x1b0], eax
movss xmm0, dword [esp + 8]
movss dword [esp + 0x42c], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x430], xmm0
lea ecx, [esp + 0x42c]
mov dword [esp + 0x1b4], ecx
push 0
push ecx
movss xmm0, dword [0x101ca47c]
movss dword [esp], xmm0
mov edx, dword [esp + 0x1c]
push edx
mov eax, dword [esp + 0x1bc]
push eax
mov ecx, dword [esp + 0x1c4]
push ecx
mov ecx, dword [esp + 0x24]
call fcn.100dc1c0
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x1b8], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x1bc], xmm0
movss xmm0, dword [esp + 0x1b8]
movss dword [esp + 0x434], xmm0
movss xmm0, dword [esp + 0x1bc]
movss dword [esp + 0x438], xmm0
lea edx, [esp + 0x434]
mov dword [esp + 0x1c0], edx
movss xmm0, dword [esp + 8]
movss dword [esp + 0x43c], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x440], xmm0
lea eax, [esp + 0x43c]
mov dword [esp + 0x1c4], eax
push 0x90
push ecx
movss xmm0, dword [0x101ca47c]
movss dword [esp], xmm0
mov ecx, dword [esp + 0x1c]
push ecx
mov edx, dword [esp + 0x1cc]
push edx
mov eax, dword [esp + 0x1d4]
push eax
mov ecx, dword [esp + 0x24]
call fcn.100dc1c0
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
subss xmm0, dword [0x101ca28c]
movss dword [esp + 0x1c8], xmm0
movss xmm0, dword [esp + 8]
movss dword [esp + 0x444], xmm0
movss xmm0, dword [esp + 0x1c8]
movss dword [esp + 0x448], xmm0
lea ecx, [esp + 0x444]
mov dword [esp + 0x1d8], ecx
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x1cc], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
subss xmm0, dword [0x101ca28c]
movss dword [esp + 0x1d0], xmm0
movss xmm0, dword [esp + 0x1cc]
movss dword [esp + 0x44c], xmm0
movss xmm0, dword [esp + 0x1d0]
movss dword [esp + 0x450], xmm0
lea edx, [esp + 0x44c]
mov dword [esp + 0x1dc], edx
movss xmm0, dword [0x101d7dc4]
mulss xmm0, dword [0x101ca28c]
addss xmm0, dword [esp + 8]
movss dword [esp + 0x1d4], xmm0
movss xmm0, dword [esp + 0x1d4]
movss dword [esp + 0x454], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x458], xmm0
lea eax, [esp + 0x454]
mov dword [esp + 0x1e0], eax
mov ecx, dword [esp + 0x14]
push ecx
mov edx, dword [esp + 0x1dc]
push edx
mov eax, dword [esp + 0x1e4]
push eax
mov ecx, dword [esp + 0x1ec]
push ecx
mov ecx, dword [esp + 0x20]
call fcn.100dc5c0
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x1e4], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc0]
movss dword [esp + 0x1e8], xmm0
movss xmm0, dword [esp + 0x1e4]
movss dword [esp + 0x45c], xmm0
movss xmm0, dword [esp + 0x1e8]
movss dword [esp + 0x460], xmm0
lea edx, [esp + 0x45c]
mov dword [esp + 0x1ec], edx
movss xmm0, dword [esp + 8]
movss dword [esp + 0x464], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x468], xmm0
lea eax, [esp + 0x464]
mov dword [esp + 0x1f0], eax
push 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
mov ecx, dword [esp + 0x1c]
push ecx
mov edx, dword [esp + 0x1f8]
push edx
mov eax, dword [esp + 0x200]
push eax
mov ecx, dword [esp + 0x24]
call fcn.100dc1c0
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
addss xmm0, dword [esp + 8]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc0]
movss dword [esp + 0x1f4], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x1f8], xmm0
movss xmm0, dword [esp + 0x1f4]
movss dword [esp + 0x46c], xmm0
movss xmm0, dword [esp + 0x1f8]
movss dword [esp + 0x470], xmm0
lea ecx, [esp + 0x46c]
mov dword [esp + 0x1fc], ecx
movss xmm0, dword [esp + 8]
movss dword [esp + 0x474], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x478], xmm0
lea edx, [esp + 0x474]
mov dword [esp + 0x200], edx
push 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
mov eax, dword [esp + 0x1c]
push eax
mov ecx, dword [esp + 0x208]
push ecx
mov edx, dword [esp + 0x210]
push edx
mov ecx, dword [esp + 0x24]
call fcn.100dc1c0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101ca4b0]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101ca378]
movss dword [esp + 0x47c], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101ca378]
movss dword [esp + 0x480], xmm0
lea eax, [esp + 0x47c]
mov dword [esp + 0x204], eax
movss xmm0, dword [esp + 8]
movss dword [esp + 0x484], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x488], xmm0
lea ecx, [esp + 0x484]
mov dword [esp + 0x208], ecx
push 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
mov edx, dword [esp + 0x1c]
push edx
mov eax, dword [esp + 0x210]
push eax
mov ecx, dword [esp + 0x218]
push ecx
mov ecx, dword [esp + 0x24]
call fcn.100dc1c0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 8]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x20c], xmm0
movss xmm0, dword [esp + 0xc]
addss xmm0, dword [0x101d7dc4]
movss dword [esp + 0x210], xmm0
movss xmm0, dword [esp + 0x20c]
movss dword [esp + 0x48c], xmm0
movss xmm0, dword [esp + 0x210]
movss dword [esp + 0x490], xmm0
lea edx, [esp + 0x48c]
mov dword [esp + 0x214], edx
movss xmm0, dword [esp + 8]
movss dword [esp + 0x494], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x498], xmm0
lea eax, [esp + 0x494]
mov dword [esp + 0x218], eax
push 0xff00ff00
push 0xff00ffff
push 0xff0000ff
push 0xff000000
mov ecx, dword [esp + 0x224]
push ecx
mov edx, dword [esp + 0x22c]
push edx
mov ecx, dword [esp + 0x28]
call fcn.100dc260
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
mulss xmm0, dword [0x101ca480]
movss dword [esp + 0x21c], xmm0
movss xmm0, dword [0x101d7dc4]
addss xmm0, dword [0x101ca47c]
mulss xmm0, dword [0x101ca404]
movss dword [esp + 0x220], xmm0
movss xmm0, dword [esp + 0x21c]
movss dword [esp + 0x49c], xmm0
movss xmm0, dword [esp + 0x220]
movss dword [esp + 0x4a0], xmm0
lea ecx, [esp + 0x49c]
call fcn.100fbec0
call fcn.1009d9f0
call fcn.10119210
push 0
xor edx, edx
mov ecx, str.Canvas
call fcn.10119170
movzx eax, al
test eax, eax
je 0x100c93e0
mov ecx, dword [0x101d8c04]
mov edx, dword fs:[0x2c]
mov eax, dword [edx + ecx*4]
mov ecx, dword [0x101e41c4]
cmp ecx, dword [eax + 4]
jle 0x100c8a60
push 0x101e41c4
call fcn.1016c49a
add esp, 4
cmp dword [0x101e41c4], 0xffffffff
jne 0x100c8a60
mov dword [0x101e420c], 0
mov dword [0x101e4208], 0
mov dword [0x101e4210], 0
push 0x10193790
call fcn.1016c35a
add esp, 4
push 0x101e41c4
call fcn.1016c450
add esp, 4
mov edx, dword [0x101d8c04]
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + edx*4]
mov edx, dword [0x101e4d98]
cmp edx, dword [ecx + 4]
jle 0x100c8ab6
push 0x101e4d98
call fcn.1016c49a
add esp, 4
cmp dword [0x101e4d98], 0xffffffff
jne 0x100c8ab6
xorps xmm0, xmm0
movss dword [0x101e4da0], xmm0
xorps xmm0, xmm0
movss dword [0x101e4da4], xmm0
push 0x101e4d98
call fcn.1016c450
add esp, 4
mov edx, 0x101d7f98
mov ecx, str.Enable_grid
call fcn.100fa810
mov edx, 0x101d7e8d
mov ecx, str.Enable_context_menu
call fcn.100fa810
push str.Mouse_Left:_drag_to_add_lines__nMouse_Right:_drag_to_scroll__click_for_context_menu.
call fcn.100f6a40
add esp, 4
call fcn.1009d2b0
movss dword [esp + 0x2e4], xmm1
movss dword [esp + 0x2e0], xmm0
mov eax, dword [esp + 0x2e0]
mov ecx, dword [esp + 0x2e4]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], ecx
call fcn.1009deb0
movss dword [esp + 0x2ec], xmm1
movss dword [esp + 0x2e8], xmm0
mov edx, dword [esp + 0x2e8]
mov eax, dword [esp + 0x2ec]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], eax
movss xmm0, dword [0x101ca4f0]
comiss xmm0, dword [esp + 0x3c]
jbe 0x100c8b58
movss xmm0, dword [0x101ca4f0]
movss dword [esp + 0x3c], xmm0
movss xmm0, dword [0x101ca4f0]
comiss xmm0, dword [esp + 0x40]
jbe 0x100c8b75
movss xmm0, dword [0x101ca4f0]
movss dword [esp + 0x40], xmm0
movss xmm0, dword [esp + 0x2c]
addss xmm0, dword [esp + 0x3c]
movss dword [esp + 0x224], xmm0
movss xmm0, dword [esp + 0x30]
addss xmm0, dword [esp + 0x40]
movss dword [esp + 0x228], xmm0
movss xmm0, dword [esp + 0x224]
movss dword [esp + 0x58], xmm0
movss xmm0, dword [esp + 0x228]
movss dword [esp + 0x5c], xmm0
call fcn.1008cee0
mov dword [esp + 0x4c], eax
call fcn.1009c5d0
mov dword [esp + 0x28], eax
push 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 0xff323232
lea ecx, [esp + 0x64]
push ecx
lea edx, [esp + 0x3c]
push edx
mov ecx, dword [esp + 0x3c]
call fcn.100dc1c0
push ecx
movss xmm0, dword [0x101ca378]
movss dword [esp], xmm0
push 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 0xffffffffffffffff
lea eax, [esp + 0x68]
push eax
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [esp + 0x40]
call fcn.100dbf70
push 3
lea edx, [esp + 0x40]
mov ecx, str.canvas
call fcn.100f8090
xor ecx, ecx
call fcn.1008c610
mov byte [esp + 0x22], al
call fcn.10092040
mov byte [esp + 0x23], al
movss xmm0, dword [esp + 0x2c]
addss xmm0, dword [0x101e4da0]
movss dword [esp + 0x22c], xmm0
movss xmm0, dword [esp + 0x30]
addss xmm0, dword [0x101e4da4]
movss dword [esp + 0x230], xmm0
movss xmm0, dword [esp + 0x22c]
movss dword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x230]
movss dword [esp + 0x64], xmm0
mov edx, dword [esp + 0x4c]
movss xmm0, dword [edx + 0xdc]
subss xmm0, dword [esp + 0x60]
movss dword [esp + 0x234], xmm0
mov eax, dword [esp + 0x4c]
movss xmm0, dword [eax + 0xe0]
subss xmm0, dword [esp + 0x64]
movss dword [esp + 0x238], xmm0
movss xmm0, dword [esp + 0x234]
movss dword [esp + 0x94], xmm0
movss xmm0, dword [esp + 0x238]
movss dword [esp + 0x98], xmm0
movzx ecx, byte [esp + 0x22]
test ecx, ecx
je 0x100c8d39
movzx edx, byte [0x101d9764]
test edx, edx
jne 0x100c8d39
xor dl, dl
xor ecx, ecx
call fcn.10091ba0
movzx eax, al
test eax, eax
je 0x100c8d39
lea ecx, [esp + 0x94]
push ecx
mov ecx, 0x101e4208
call fcn.100ae650
lea edx, [esp + 0x94]
push edx
mov ecx, 0x101e4208
call fcn.100ae650
mov byte [0x101d9764], 1
movzx eax, byte [0x101d9764]
test eax, eax
je 0x100c8d98
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x98]
mov dword [esp + 0x2f0], ecx
mov dword [esp + 0x2f4], edx
mov eax, 0x101e4208
mov ecx, dword [eax]
mov edx, dword [0x101e4210]
mov eax, dword [esp + 0x2f0]
mov esi, dword [esp + 0x2f4]
mov dword [edx + ecx*8 - 8], eax
mov dword [edx + ecx*8 - 4], esi
xor ecx, ecx
call fcn.10091b70
movzx ecx, al
test ecx, ecx
jne 0x100c8d98
mov byte [0x101d9764], 0
movzx edx, byte [0x101d7e8d]
test edx, edx
je 0x100c8db3
movss xmm0, dword [0x101ca668]
movss dword [esp + 0x7c], xmm0
jmp 0x100c8dbc
xorps xmm0, xmm0
movss dword [esp + 0x7c], xmm0
movss xmm0, dword [esp + 0x7c]
movss dword [esp + 0x23c], xmm0
movzx eax, byte [esp + 0x23]
test eax, eax
je 0x100c8e26
movss xmm0, dword [esp + 0x23c]
mov ecx, 1
call fcn.10091d10
movzx ecx, al
test ecx, ecx
je 0x100c8e26
mov edx, dword [esp + 0x4c]
movss xmm0, dword [0x101e4da0]
addss xmm0, dword [edx + 0x36c]
movss dword [0x101e4da0], xmm0
mov eax, dword [esp + 0x4c]
movss xmm0, dword [0x101e4da4]
addss xmm0, dword [eax + 0x370]
movss dword [0x101e4da4], xmm0
movss xmm0, dword [0x101ca668]
mov ecx, 1
call fcn.10091e50
movss dword [esp + 0x2fc], xmm1
movss dword [esp + 0x2f8], xmm0
mov ecx, dword [esp + 0x2f8]
mov edx, dword [esp + 0x2fc]
mov dword [esp + 0x300], ecx
mov dword [esp + 0x304], edx
movzx eax, byte [0x101d7e8d]
test eax, eax
je 0x100c8ebd
mov ecx, 1
call fcn.10091c40
movzx ecx, al
test ecx, ecx
je 0x100c8ebd
movss xmm0, dword [esp + 0x300]
ucomiss xmm0, dword [0x101ca16c]
lahf
test ah, 0x44
jp 0x100c8ebd
movss xmm0, dword [esp + 0x304]
ucomiss xmm0, dword [0x101ca16c]
lahf
test ah, 0x44
jp 0x100c8ebd
mov edx, 1
mov ecx, str.context
call fcn.1009fcf0
xor edx, edx
mov ecx, str.context
call fcn.1009fb10
movzx edx, al
test edx, edx
je 0x100c8fc1
movzx eax, byte [0x101d9764]
test eax, eax
je 0x100c8f01
mov ecx, dword [0x101e4208]
mov dword [esp + 0x240], ecx
mov edx, dword [esp + 0x240]
sub edx, 2
push edx
mov ecx, 0x101e4208
call fcn.100ae960
mov byte [0x101d9764], 0
cmp dword [0x101e4208], 0
jle 0x100c8f18
mov byte [esp + 0x1a], 1
jmp 0x100c8f1d
mov byte [esp + 0x1a], 0
movzx eax, byte [esp + 0x1a]
push eax
push 0
xor edx, edx
mov ecx, str.Remove_one
call fcn.10116060
movzx ecx, al
test ecx, ecx
je 0x100c8f5a
mov edx, dword [0x101e4208]
mov dword [esp + 0x244], edx
mov eax, dword [esp + 0x244]
sub eax, 2
push eax
mov ecx, 0x101e4208
call fcn.100ae960
cmp dword [0x101e4208], 0
jle 0x100c8f6a
mov byte [esp + 0x1b], 1
jmp 0x100c8f6f
mov byte [esp + 0x1b], 0
movzx ecx, byte [esp + 0x1b]
push ecx
push 0
xor edx, edx
mov ecx, str.Remove_all
call fcn.10116060
movzx edx, al
test edx, edx
je 0x100c8fbc
cmp dword [0x101e4210], 0
je 0x100c8fbc
mov dword [0x101e420c], 0
mov dword [0x101e4208], 0
mov ecx, dword [0x101e4210]
call fcn.1008cc70
mov dword [0x101e4210], 0
call fcn.1009fc90
push 1
mov eax, dword [esp + 0x60]
push eax
mov ecx, dword [esp + 0x60]
push ecx
mov edx, dword [esp + 0x3c]
push edx
mov eax, dword [esp + 0x3c]
push eax
mov ecx, dword [esp + 0x3c]
call fcn.100d74c0
movzx ecx, byte [0x101d7f98]
test ecx, ecx
je 0x100c929e
movss xmm0, dword [0x101ca4fc]
movss dword [esp + 0x4cc], xmm0
movss xmm0, dword [0x101e4da0]
movss dword [esp + 0x248], xmm0
cvtss2sd xmm0, dword [esp + 0x248]
movsd qword [esp + 0x4f0], xmm0
fld qword [esp + 0x4f0]
movsd xmm0, qword [0x101ca418]
movsd qword [esp + 0x4e8], xmm0
fld qword [esp + 0x4e8]
call fcn.10190190
fstp dword [esp + 0x34]
jmp 0x100c9061
movss xmm0, dword [esp + 0x34]
addss xmm0, dword [0x101ca4fc]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [esp + 0x3c]
comiss xmm0, dword [esp + 0x34]
jbe 0x100c914f
movss xmm0, dword [esp + 0x2c]
addss xmm0, dword [esp + 0x34]
movss dword [esp + 0x24c], xmm0
movss xmm0, dword [esp + 0x5c]
movss dword [esp + 0x250], xmm0
movss xmm0, dword [esp + 0x24c]
movss dword [esp + 0x4a4], xmm0
movss xmm0, dword [esp + 0x250]
movss dword [esp + 0x4a8], xmm0
lea edx, [esp + 0x4a4]
mov dword [esp + 0x25c], edx
movss xmm0, dword [esp + 0x2c]
addss xmm0, dword [esp + 0x34]
movss dword [esp + 0x254], xmm0
movss xmm0, dword [esp + 0x30]
movss dword [esp + 0x258], xmm0
movss xmm0, dword [esp + 0x254]
movss dword [esp + 0x4ac], xmm0
movss xmm0, dword [esp + 0x258]
movss dword [esp + 0x4b0], xmm0
lea eax, [esp + 0x4ac]
mov dword [esp + 0x260], eax
push ecx
movss xmm0, dword [0x101ca378]
movss dword [esp], xmm0
push 0x28c8c8c8
mov ecx, dword [esp + 0x264]
push ecx
mov edx, dword [esp + 0x26c]
push edx
mov ecx, dword [esp + 0x38]
call fcn.100dbe20
jmp 0x100c904d
movss xmm0, dword [0x101e4da4]
movss dword [esp + 0x264], xmm0
cvtss2sd xmm0, dword [esp + 0x264]
movsd qword [esp + 0x4d8], xmm0
fld qword [esp + 0x4d8]
movsd xmm0, qword [0x101ca418]
movsd qword [esp + 0x4e0], xmm0
fld qword [esp + 0x4e0]
call fcn.10190190
fstp dword [esp + 0x38]
jmp 0x100c91b0
movss xmm0, dword [esp + 0x38]
addss xmm0, dword [0x101ca4fc]
movss dword [esp + 0x38], xmm0
movss xmm0, dword [esp + 0x40]
comiss xmm0, dword [esp + 0x38]
jbe 0x100c929e
movss xmm0, dword [esp + 0x58]
movss dword [esp + 0x268], xmm0
movss xmm0, dword [esp + 0x30]
addss xmm0, dword [esp + 0x38]
movss dword [esp + 0x26c], xmm0
movss xmm0, dword [esp + 0x268]
movss dword [esp + 0x4b4], xmm0
movss xmm0, dword [esp + 0x26c]
movss dword [esp + 0x4b8], xmm0
lea eax, [esp + 0x4b4]
mov dword [esp + 0x278], eax
movss xmm0, dword [esp + 0x2c]
movss dword [esp + 0x270], xmm0
movss xmm0, dword [esp + 0x30]
addss xmm0, dword [esp + 0x38]
movss dword [esp + 0x274], xmm0
movss xmm0, dword [esp + 0x270]
movss dword [esp + 0x4bc], xmm0
movss xmm0, dword [esp + 0x274]
movss dword [esp + 0x4c0], xmm0
lea ecx, [esp + 0x4bc]
mov dword [esp + 0x27c], ecx
push ecx
movss xmm0, dword [0x101ca378]
movss dword [esp], xmm0
push 0x28c8c8c8
mov edx, dword [esp + 0x280]
push edx
mov eax, dword [esp + 0x288]
push eax
mov ecx, dword [esp + 0x38]
call fcn.100dbe20
jmp 0x100c919c
mov dword [esp + 0x24], 0
jmp 0x100c92b3
mov ecx, dword [esp + 0x24]
add ecx, 2
mov dword [esp + 0x24], ecx
mov edx, dword [esp + 0x24]
cmp edx, dword [0x101e4208]
jge 0x100c93d2
mov eax, dword [0x101e4210]
mov ecx, dword [esp + 0x24]
movss xmm0, dword [esp + 0x64]
addss xmm0, dword [eax + ecx*8 + 0xc]
movss dword [esp + 0x284], xmm0
mov edx, dword [0x101e4210]
mov eax, dword [esp + 0x24]
movss xmm0, dword [esp + 0x60]
addss xmm0, dword [edx + eax*8 + 8]
movss dword [esp + 0x280], xmm0
movss xmm0, dword [esp + 0x280]
movss dword [esp + 0x4c4], xmm0
movss xmm0, dword [esp + 0x284]
movss dword [esp + 0x4c8], xmm0
lea ecx, [esp + 0x4c4]
mov dword [esp + 0x290], ecx
mov edx, dword [0x101e4210]
mov eax, dword [esp + 0x24]
movss xmm0, dword [esp + 0x64]
addss xmm0, dword [edx + eax*8 + 4]
movss dword [esp + 0x28c], xmm0
mov ecx, dword [0x101e4210]
mov edx, dword [esp + 0x24]
movss xmm0, dword [esp + 0x60]
addss xmm0, dword [ecx + edx*8]
movss dword [esp + 0x288], xmm0
movss xmm0, dword [esp + 0x288]
movss dword [esp + 0x334], xmm0
movss xmm0, dword [esp + 0x28c]
movss dword [esp + 0x338], xmm0
lea eax, [esp + 0x334]
mov dword [esp + 0x294], eax
push ecx
movss xmm0, dword [0x101ca3e0]
movss dword [esp], xmm0
push 0xff00ffff
mov ecx, dword [esp + 0x298]
push ecx
mov edx, dword [esp + 0x2a0]
push edx
mov ecx, dword [esp + 0x38]
call fcn.100dbe20
jmp 0x100c92a8
mov ecx, dword [esp + 0x28]
call fcn.100d7600
call fcn.10119210
push 0
xor edx, edx
mov ecx, str.BG_FG_draw_lists
call fcn.10119170
movzx eax, al
test eax, eax
je 0x100c95aa
mov edx, 0x101d8010
mov ecx, str.Draw_in_Background_draw_list
call fcn.100fa810
movss xmm1, dword [0x101ca668]
xorps xmm0, xmm0
call fcn.1009d170
mov ecx, str.The_Background_draw_list_will_be_rendered_below_every_Dear_ImGui_windows.
call fcn.100a9900
mov edx, 0x101d7cc1
mov ecx, str.Draw_in_Foreground_draw_list
call fcn.100fa810
movss xmm1, dword [0x101ca668]
xorps xmm0, xmm0
call fcn.1009d170
mov ecx, str.The_Foreground_draw_list_will_be_rendered_over_every_Dear_ImGui_windows.
call fcn.100a9900
call fcn.1009be90
movss dword [esp + 0x30c], xmm1
movss dword [esp + 0x308], xmm0
mov ecx, dword [esp + 0x308]
mov edx, dword [esp + 0x30c]
mov dword [esp + 0x31c], ecx
mov dword [esp + 0x320], edx
call fcn.1009c130
movss dword [esp + 0x314], xmm1
movss dword [esp + 0x310], xmm0
mov eax, dword [esp + 0x310]
mov ecx, dword [esp + 0x314]
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], ecx
movss xmm0, dword [esp + 0x9c]
mulss xmm0, dword [0x101ca28c]
addss xmm0, dword [esp + 0x31c]
movss dword [esp + 0x324], xmm0
movss xmm0, dword [esp + 0xa0]
mulss xmm0, dword [0x101ca28c]
addss xmm0, dword [esp + 0x320]
movss dword [esp + 0x328], xmm0
movzx edx, byte [0x101d8010]
test edx, edx
je 0x100c954e
call fcn.1008d0f0
mov dword [esp + 0x298], eax
push ecx
movss xmm0, dword [0x101ca498]
movss dword [esp], xmm0
push 0
push 0xc80000ff
movss xmm0, dword [esp + 0xa8]
mulss xmm0, dword [0x101ca2b4]
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0x334]
push eax
mov ecx, dword [esp + 0x2ac]
call fcn.100dc640
movzx ecx, byte [0x101d7cc1]
test ecx, ecx
je 0x100c95a5
call fcn.1008d150
mov dword [esp + 0x29c], eax
push ecx
movss xmm0, dword [0x101ca47c]
movss dword [esp], xmm0
push 0
push 0xc800ff00
movss xmm0, dword [esp + 0xac]
mulss xmm0, dword [0x101ca2b4]
push ecx
movss dword [esp], xmm0
lea edx, [esp + 0x334]
push edx
mov ecx, dword [esp + 0x2b0]
call fcn.100dc640
call fcn.10119210
call fcn.10116ef0
call fcn.1009b0f0
pop esi
pop ebx
mov esp, ebp
pop ebp
ret