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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x608
push ebx
push ebp
push esi
lea eax, [esp + 0x3c]
push edi
xor ebp, ebp
push eax
push ebp
push ebp
mov dword [esp + 0x38], ebp
mov esi, 0xffffec77
mov dword [esp + 0x9c], ebp
xor ebx, ebx
call fcn.004305d0
add esp, 0xc
cmp eax, 0x13ec
je 0x40e68e
push 0x3e7
push 0x44cb40
push 0xb
push ebp
call dword [sym.imp.USER32.dll_LoadStringA]
push 0x44cb40
lea ecx, [esp + 0x200]
push 0x442100
push ecx
call fcn.0043465f
lea edx, [esp + 0x208]
push edx
call fcn.00431870
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [esp + 0x10]
push eax
push ebp
push ebp
call fcn.004305d0
add esp, 0xc
cmp eax, 0x13ec
je 0x40e6f2
push 0x3e7
push 0x44cb40
push 0xb
push ebp
call dword [sym.imp.USER32.dll_LoadStringA]
push 0x44cb40
lea ecx, [esp + 0x200]
push 0x442100
push ecx
call fcn.0043465f
lea edx, [esp + 0x208]
push edx
call fcn.00431870
lea eax, [esp + 0x50]
push eax
call fcn.00430490
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [esp + 0x38]
push ecx
push ebp
push ebp
call fcn.004305d0
add esp, 0xc
cmp eax, 0x13ec
je 0x40e760
push 0x3e7
push 0x44cb40
push 0xb
push ebp
call dword [sym.imp.USER32.dll_LoadStringA]
push 0x44cb40
lea edx, [esp + 0x200]
push 0x442100
push edx
call fcn.0043465f
lea eax, [esp + 0x208]
push eax
call fcn.00431870
lea ecx, [esp + 0x50]
push ecx
call fcn.00430490
lea edx, [esp + 0x24]
push edx
call fcn.00430490
add esp, 0x18
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [esp + 0x38]
push eax
push str.POLYLINE_LWPOLYLINE_LINE_ARC_CIRCLE
call fcn.0041b5a0
mov edi, dword [sym.imp.USER32.dll_LoadStringA]
add esp, 8
mov dword [esp + 0x2c], ebp
cmp esi, 0xffffec76
je 0x40e9db
push 0x3e7
push 0x44cb40
push 1
push ebp
call edi
push 0x44cb40
lea ecx, [esp + 0x200]
push str._n_s:
push ecx
call fcn.0043465f
lea edx, [esp + 0x24]
push 0x44ad60
lea eax, [esp + 0x20c]
push edx
push eax
call fcn.0042f710
mov ecx, dword [0x44ad60]
mov edx, dword [0x44ad64]
mov esi, eax
mov eax, dword [0x44ad68]
mov dword [0x44cb00], ecx
mov ecx, dword [0x44ad6c]
mov dword [0x44cb04], edx
mov edx, dword [0x44ad70]
mov dword [0x44cb08], eax
mov eax, dword [0x44ad74]
add esp, 0x18
cmp esi, 0xffffec76
mov dword [0x44cb0c], ecx
mov dword [0x44cb10], edx
mov dword [0x44cb14], eax
je 0x40eb45
cmp esi, 0x13ec
jne 0x40e77c
lea ecx, [esp + 0x10]
lea edx, [esp + 0x10]
push ecx
push edx
call fcn.00430710
push ebp
push 0x442f9c
push 0x138d
push str..ZOOM
push 0x138d
call fcn.00430d70
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
lea edx, [esp + 0x34]
mov dword [0x44cb18], eax
push edx
mov dword [0x44cb1c], ecx
call fcn.0041a8b0
mov dword [esp + 0x48], eax
mov dword [esp + 0x188], eax
lea eax, [esp + 0x188]
lea ecx, [esp + 0x38]
push eax
push ecx
call fcn.0041aa80
mov edx, dword [esp + 0x50]
add esp, 0x28
lea eax, [edx - 1]
cmp eax, 0xd
ja case.0x40e8a0.4
xor ecx, ecx
mov cl, byte [eax + 0x40f750]
jmp dword [ecx*4 + 0x40f740]
push 0x3e7
push 0x44cb40
push 4
push ebp
call edi
push 0x44cb40
lea edx, [esp + 0x200]
push str._n_s_
push edx
call fcn.0043465f
lea eax, [esp + 0x208]
push eax
call fcn.00430d30
add esp, 0x10
mov esi, 0xffffec77
jmp 0x40e77c
lea ecx, [esp + 0x18]
push ecx
call fcn.0042f4f0
mov esi, eax
push 0x46
lea edx, [esp + 0x34]
push esi
push edx
call fcn.00419270
mov eax, dword [esp + 0x3c]
and eax, 1
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x124]
push eax
push 0x442044
push str.CMDECHO
call fcn.0041da60
lea ecx, [esp + 0x34]
push ebp
push ecx
push 0x138e
push str..EXPLODE
push 0x138d
call fcn.00430d70
lea edx, [esp + 0x144]
push edx
push str.CMDECHO
call fcn.0041daf0
lea eax, [esp + 0x78]
push eax
push ebp
push ebp
push ebp
push 0x442048
call fcn.0042f940
mov eax, dword [esp + 0x78]
add esp, 0x4c
cmp eax, ebp
je 0x40e98c
lea ecx, [esp + 0x40]
push ecx
call fcn.00430490
lea edx, [esp + 0x14]
push edx
push ebp
push ebp
push ebp
push 0x442048
call fcn.0042f940
add esp, 0x18
jmp 0x40e9d2
lea eax, [esp + 0x20]
lea ecx, [esp + 0x40]
push eax
push ecx
call fcn.004304d0
mov eax, dword [esp + 0x28]
add esp, 8
cmp eax, ebp
je 0x40e9d2
lea edx, [esp + 0x18]
dec eax
push edx
mov dword [esp + 0x24], eax
push eax
lea eax, [esp + 0x48]
push eax
call fcn.00430540
lea ecx, [esp + 0x24]
push 3
push ecx
call fcn.00431c70
mov eax, dword [esp + 0x34]
add esp, 0x14
cmp eax, ebp
jne 0x40e9a6
push esi
call fcn.0042dd90
add esp, 4
cmp dword [esp + 0x2c], ebp
jne 0x40f216
lea ecx, [esp + 0x18]
push 3
push ecx
call fcn.00431c70
add esp, 8
mov esi, 0xffffec77
cmp esi, 0xffffec76
je 0x40ec92
push 0x3e7
push 0x44cb40
push 2
push ebp
call edi
push 0x44cb40
lea edx, [esp + 0x200]
push str._n_s__End_:
push edx
call fcn.0043465f
push 0x442f8c
push ebp
call fcn.0042e470
lea eax, [esp + 0x1f8]
lea ecx, [esp + 0x9c]
push eax
lea edx, [esp + 0x214]
push ecx
push edx
call fcn.0042f710
mov esi, eax
add esp, 0x20
cmp esi, 0xffffec76
je 0x40ec65
cmp esi, 0x13ec
jne 0x40ec4f
lea eax, [esp + 0x40]
lea ecx, [esp + 0x88]
push eax
push ecx
call fcn.004306e0
add esp, 8
cmp eax, esi
jne 0x40ebb0
push 0x3e7
push 0x44cb40
push 1
push ebp
call edi
push 0x44cb40
lea edx, [esp + 0x200]
push 0x442f88
push edx
call fcn.0043465f
lea eax, [esp + 0x208]
push eax
call fcn.00430d30
add esp, 0x10
jmp 0x40e9f4
lea edx, [esp + 0x40]
mov eax, 1
push edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x24], eax
call fcn.00430490
mov eax, dword [esp + 0x1d4]
mov ecx, dword [esp + 0x1d0]
push 0x401921fb
push 0x544486e0
push ebp
push ebp
push eax
push ecx
call fcn.00416670
fstp qword [0x44ad48]
lea edx, [esp + 0x2c]
lea eax, [esp + 0x2c]
push edx
lea ecx, [esp + 0x38]
push eax
push ecx
call fcn.004305d0
add esp, 0x28
jmp 0x40e9db
lea edx, [esp + 0x40]
lea eax, [esp + 0x40]
push edx
lea ecx, [esp + 0x1c]
push eax
push ecx
call fcn.004305d0
add esp, 0xc
cmp eax, 0x13ec
jne 0x40eb70
jmp 0x40e9db
lea edx, [esp + 0x40]
push edx
call fcn.00430490
lea eax, [esp + 0x14]
push eax
call fcn.00430490
lea ecx, [esp + 0x40]
push ecx
call fcn.00430490
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
push 0x3e7
push 0x44cb40
push 0xb
push ebp
call edi
push 0x44cb40
lea edx, [esp + 0x200]
push 0x442100
push edx
call fcn.0043465f
lea eax, [esp + 0x208]
push eax
call fcn.00431870
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [esp + 0x88]
push ecx
call fcn.0041a8b0
mov dword [esp + 0x2c], eax
mov dword [esp + 0x16c], eax
lea edx, [esp + 0x16c]
lea eax, [esp + 0x8c]
push edx
push eax
call fcn.0041aa80
mov ecx, dword [esp + 0x34]
add esp, 0xc
lea eax, [ecx - 1]
cmp eax, 0xd
ja case.0x40ebf4.2
xor edx, edx
mov dl, byte [eax + 0x40f768]
jmp dword [edx*4 + 0x40f760]
push 0x3e7
push 0x44cb40
push 4
push ebp
call edi
push 0x44cb40
lea eax, [esp + 0x200]
push str._n_s_
push eax
call fcn.0043465f
lea ecx, [esp + 0x208]
push ecx
call fcn.00430d30
add esp, 0x10
mov esi, 0xffffec77
lea edx, [esp + 0x88]
push 3
push edx
call fcn.00431c70
add esp, 8
mov ebx, 1
jmp 0x40ec57
cmp esi, 0xffffec73
je 0x40ec90
cmp esi, 0x13ec
jne 0x40e9f9
jmp 0x40ec92
lea eax, [esp + 0x40]
push eax
call fcn.00430490
lea ecx, [esp + 0x14]
push ecx
call fcn.00430490
lea edx, [esp + 0x40]
push edx
call fcn.00430490
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
xor ebx, ebx
lea eax, [esp + 0x18]
push 4
push eax
call fcn.00431c70
push ebp
push ebp
call fcn.00431c70
add esp, 0x10
cmp ebx, ebp
je 0x40f216
lea ecx, [esp + 0x38]
push ecx
push 0x44cb18
call fcn.004306e0
add esp, 8
cmp eax, 0x13ec
jne 0x40ecdb
lea edx, [esp + 0x38]
push edx
push 0x44cb18
call fcn.004306b0
add esp, 8
lea eax, [esp + 0x20]
lea ecx, [esp + 0x38]
push eax
push ecx
call fcn.004304d0
mov esi, dword [esp + 0x28]
lea edx, [esp + 0x68]
lea eax, [esp + 0x50]
push edx
push eax
push 0x44cb18
call fcn.0041beb0
lea ecx, [esp + 0x38]
lea edx, [esp + 0xb4]
push ecx
lea eax, [esp + 0xc0]
push edx
lea ecx, [esp + 0xb4]
push eax
lea edx, [esp + 0x11c]
push ecx
lea eax, [esp + 0xf0]
push edx
lea ecx, [esp + 0x10c]
push eax
lea edx, [esp + 0x54]
push ecx
lea eax, [esp + 0x48]
push edx
lea ecx, [esp + 0x6c]
push eax
push ecx
lea edx, [esp + 0x9c]
push 1
push edx
push str.DUMMY
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0x412e847e
call fcn.0041a530
add esp, 0x48
test eax, eax
je 0x40edbe
lea eax, [esp + 0x168]
lea ecx, [esp + 0xcc]
push eax
lea edx, [esp + 0xe8]
push ecx
lea eax, [esp + 0x38]
push edx
lea ecx, [esp + 0x90]
push eax
lea edx, [esp + 0x34]
push ecx
lea eax, [esp + 0x74]
push edx
lea ecx, [esp + 0x30]
push eax
push ecx
call fcn.00419ec0
add esp, 0x20
cmp eax, 0x13ec
je 0x40edbe
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
lea edx, [esp + 0x24]
lea eax, [esp + 0xa0]
push edx
lea ecx, [esp + 0xac]
push eax
lea edx, [esp + 0xa0]
push ecx
lea eax, [esp + 0x108]
push edx
lea ecx, [esp + 0xdc]
push eax
lea edx, [esp + 0xf8]
push ecx
lea eax, [esp + 0x40]
push edx
lea ecx, [esp + 0x34]
push eax
lea edx, [esp + 0x58]
push ecx
push edx
lea eax, [esp + 0x70]
push 1
push eax
push str.DUMMY
call fcn.0041a530
add esp, 0x34
test eax, eax
jne 0x40ee22
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [esp + 0x168]
lea edx, [esp + 0xcc]
push ecx
lea eax, [esp + 0xe8]
push edx
lea ecx, [esp + 0x80]
push eax
lea edx, [esp + 0x90]
push ecx
lea eax, [esp + 0x34]
push edx
lea ecx, [esp + 0x5c]
push eax
lea edx, [esp + 0x30]
push ecx
push edx
call fcn.00419ec0
add esp, 0x20
cmp eax, 0x13ec
je 0x40ee72
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
push 0x44ad60
push 0x442f84
push 0x44ad60
call fcn.00431cd0
add esp, 0xc
cmp eax, 0x13ec
je 0x40eea7
push 0x44ad60
push 0x442f80
push 0x44ad60
call fcn.00431cd0
add esp, 0xc
fld qword [esp + 0x78]
fcomp qword [0x4401e8]
fnstsw ax
test ah, 0x41
je 0x40eefa
fld qword [esp + 0x30]
fcomp qword [0x4401e8]
fnstsw ax
test ah, 0x41
je 0x40eefa
lea eax, [esp + 0x48]
push 0x44ad60
push eax
call fcn.00432c80
fcomp qword [0x4401e8]
add esp, 8
fnstsw ax
test ah, 1
je 0x40eefa
lea ecx, [esp + 0x60]
lea edx, [esp + 0x48]
push ecx
push edx
call fcn.00419530
add esp, 8
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
mov dword [0x44cb00], eax
mov eax, dword [esp + 0x6c]
mov dword [0x44cb04], ecx
fld qword [esp + 0x78]
fcomp qword [0x4401f8]
mov ecx, dword [esp + 0x70]
mov dword [0x44cb0c], eax
mov eax, dword [esp + 0x48]
mov dword [0x44cb08], edx
mov edx, dword [esp + 0x74]
mov dword [0x44ad60], eax
mov eax, dword [esp + 0x54]
mov dword [0x44cb10], ecx
mov ecx, dword [esp + 0x4c]
mov dword [0x44cb14], edx
mov edx, dword [esp + 0x50]
mov dword [0x44ad6c], eax
fnstsw ax
mov dword [0x44ad64], ecx
mov ecx, dword [esp + 0x58]
mov dword [0x44ad68], edx
mov edx, dword [esp + 0x5c]
test ah, 0x41
mov dword [0x44ad70], ecx
mov dword [0x44ad74], edx
je 0x40efbe
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
mov dword [0x44ad60], eax
mov eax, dword [esp + 0x54]
mov dword [0x44ad64], ecx
mov ecx, dword [esp + 0x58]
mov dword [0x44ad68], edx
mov edx, dword [esp + 0x5c]
mov dword [0x44ad6c], eax
mov dword [0x44ad70], ecx
mov dword [0x44ad74], edx
jmp 0x40f21d
lea eax, [esp + 0x168]
lea ecx, [esp + 0xcc]
push eax
lea edx, [esp + 0xe8]
push ecx
lea eax, [esp + 0x38]
push edx
lea ecx, [esp + 0x90]
push eax
lea edx, [esp + 0x34]
push ecx
lea eax, [esp + 0x74]
push edx
lea ecx, [esp + 0x30]
push eax
push ecx
call fcn.00419ec0
add esp, 0x20
cmp eax, 0x13ec
je 0x40f00b
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
fld qword [esp + 0x30]
fcomp qword [0x4401f8]
fnstsw ax
test ah, 0x41
je 0x40f095
mov edx, dword [esp + 0x60]
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x68]
mov dword [0x44ad60], edx
mov edx, dword [esp + 0x6c]
mov dword [0x44ad64], eax
mov eax, dword [esp + 0x70]
mov dword [0x44ad68], ecx
mov ecx, dword [esp + 0x74]
mov dword [0x44ad6c], edx
mov edx, dword [esp + 0x48]
mov dword [0x44ad70], eax
mov eax, dword [esp + 0x4c]
mov dword [0x44ad74], ecx
mov ecx, dword [esp + 0x50]
mov dword [0x44cb00], edx
mov edx, dword [esp + 0x54]
mov dword [0x44cb04], eax
mov eax, dword [esp + 0x58]
mov dword [0x44cb08], ecx
mov ecx, dword [esp + 0x5c]
mov dword [0x44cb0c], edx
mov dword [0x44cb10], eax
mov dword [0x44cb14], ecx
jmp 0x40f21d
fld qword [esp + 0x30]
fcomp qword [esp + 0x78]
fnstsw ax
test ah, 1
je 0x40f0b4
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x34]
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], eax
lea ecx, [esp + 0x24]
lea edx, [esp + 0xa0]
push ecx
lea eax, [esp + 0xac]
push edx
lea ecx, [esp + 0xa0]
push eax
lea edx, [esp + 0x108]
push ecx
lea eax, [esp + 0xdc]
push edx
lea ecx, [esp + 0xf8]
push eax
lea edx, [esp + 0x40]
push ecx
lea eax, [esp + 0x34]
push edx
lea ecx, [esp + 0x58]
push eax
push ecx
lea edx, [esp + 0x88]
push 1
push edx
push str.DUMMY
call fcn.0041a530
add esp, 0x34
test eax, eax
jne 0x40f11b
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [esp + 0x168]
lea ecx, [esp + 0xcc]
push eax
lea edx, [esp + 0xe8]
push ecx
lea eax, [esp + 0x38]
push edx
lea ecx, [esp + 0x90]
push eax
lea edx, [esp + 0x34]
push ecx
lea eax, [esp + 0x74]
push edx
lea ecx, [esp + 0x30]
push eax
push ecx
call fcn.00419ec0
add esp, 0x20
cmp eax, 0x13ec
je 0x40f168
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
fld qword [esp + 0x30]
fcomp qword [0x4401f8]
fnstsw ax
test ah, 0x41
jne 0x40f01c
fld qword [esp + 0x30]
fcomp qword [esp + 0x78]
fnstsw ax
test ah, 1
je 0x40f21d
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0x64]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x68]
mov dword [0x44ad60], ecx
mov ecx, dword [esp + 0x6c]
mov dword [0x44ad64], edx
mov edx, dword [esp + 0x70]
mov dword [0x44ad68], eax
mov eax, dword [esp + 0x74]
mov dword [0x44ad6c], ecx
mov ecx, dword [esp + 0x48]
mov dword [0x44ad70], edx
mov edx, dword [esp + 0x4c]
mov dword [0x44ad74], eax
mov eax, dword [esp + 0x50]
mov dword [0x44cb00], ecx
mov ecx, dword [esp + 0x54]
mov dword [0x44cb04], edx
mov edx, dword [esp + 0x58]
mov dword [0x44cb08], eax
mov eax, dword [esp + 0x5c]
mov dword [0x44cb0c], ecx
mov dword [0x44cb10], edx
mov dword [0x44cb14], eax
jmp 0x40f21d
mov esi, dword [esp + 0x94]
cmp esi, ebp
je 0x40f35e
cmp ebx, ebp
je 0x40f35e
lea ecx, [esp + 0x18]
dec esi
push ecx
lea edx, [esp + 0x3c]
push esi
push edx
call fcn.00430540
lea eax, [esp + 0x30]
lea ecx, [esp + 0xac]
push eax
lea edx, [esp + 0xb8]
push ecx
lea eax, [esp + 0xac]
push edx
lea ecx, [esp + 0x114]
push eax
lea edx, [esp + 0x7c]
push ecx
lea eax, [esp + 0x68]
push edx
lea ecx, [esp + 0x4c]
push eax
lea edx, [esp + 0x40]
push ecx
lea eax, [esp + 0x64]
push edx
push eax
push 1
push 0x44ad60
push str.DUMMY
call fcn.0041a530
add esp, 0x40
test eax, eax
je 0x40f15e
lea ecx, [esp + 0x38]
lea edx, [esp + 0x18]
push ecx
push edx
call fcn.004306b0
mov eax, dword [esp + 0x2c]
add esp, 8
cmp eax, ebp
je 0x40f2e2
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
mov dword [0x44ad60], eax
mov eax, dword [esp + 0x54]
mov dword [0x44ad64], ecx
mov ecx, dword [esp + 0x58]
mov dword [0x44ad68], edx
mov edx, dword [esp + 0x5c]
mov dword [0x44ad6c], eax
jmp 0x40f310
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
mov dword [0x44ad60], eax
mov eax, dword [esp + 0x6c]
mov dword [0x44ad64], ecx
mov ecx, dword [esp + 0x70]
mov dword [0x44ad68], edx
mov edx, dword [esp + 0x74]
mov dword [0x44ad6c], eax
mov dword [0x44ad70], ecx
lea eax, [esp + 0x10]
mov dword [0x44ad74], edx
lea ecx, [esp + 0x10]
push eax
lea edx, [esp + 0x1c]
push ecx
push edx
call fcn.004305d0
add esp, 0xc
cmp eax, 0x13ec
jne 0x40f35e
lea eax, [esp + 0x10]
lea ecx, [esp + 0x88]
push eax
push ecx
call fcn.004306e0
add esp, 8
cmp eax, 0x13ec
je 0x40f35e
cmp esi, ebp
jne 0x40f225
lea edx, [esp + 0x114]
push edx
push 0x442044
push str.CMDECHO
call fcn.0041da60
push ebp
push str.BendPath
push str.LAYER
call fcn.004309b0
add esp, 0x18
cmp eax, ebp
jne 0x40f3a3
push str.CONTINUOUS
push 4
push ebp
push str.BendPath
call fcn.0041b0e0
add esp, 0x10
jmp 0x40f3ac
push eax
call fcn.0042dd90
add esp, 4
lea eax, [esp + 0x10]
push eax
push 0x44cb18
call fcn.004306e0
add esp, 8
cmp eax, 0x13ec
jne 0x40f3d7
lea ecx, [esp + 0x10]
push ecx
push 0x44cb18
call fcn.004306b0
add esp, 8
mov edx, dword [0x44ad60]
mov eax, dword [0x44ad64]
mov ecx, dword [0x44ad68]
mov dword [esp + 0xb4], edx
mov edx, dword [0x44ad6c]
mov dword [esp + 0xb8], eax
mov eax, dword [0x44ad70]
mov dword [esp + 0xc0], edx
mov dword [esp + 0xbc], ecx
mov ecx, dword [0x44ad74]
lea edx, [esp + 0x10]
push 0x44ad60
push edx
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd0], ecx
call fcn.00416720
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0xc4]
mov dword [0x44ad60], eax
mov eax, dword [esp + 0xc8]
mov dword [0x44ad64], ecx
mov ecx, dword [esp + 0xcc]
mov dword [0x44ad68], edx
mov edx, dword [esp + 0xd0]
push 0x44ad60
mov dword [0x44ad6c], eax
mov dword [0x44ad70], ecx
mov dword [0x44ad74], edx
call fcn.004096b0
lea eax, [esp + 0x1c]
push eax
call fcn.0041af20
lea ecx, [esp + 0x20]
lea edx, [esp + 0x20]
push ecx
push edx
push 0x44cb18
call fcn.004305d0
lea eax, [esp + 0x2c]
push eax
call fcn.0041af20
mov al, byte [0x44c650]
add esp, 0x20
test al, 1
je 0x40f4cf
mov ecx, dword [0x44c5c8]
mov dword [0x44c5c8], ebp
mov dword [esp + 0x90], ecx
lea edx, [esp + 0x10]
push 0x44ad60
push edx
call fcn.00408620
add esp, 8
cmp eax, 0x13ec
jne 0x40f5f2
push ebp
push 0x449548
push 0x138d
push str.BYLAYER
push 0x138d
push str.COLOR
push 0x138d
push str.BendPath
push 0x138d
push str.LAYER
push 0x138d
push 0x449548
lea eax, [esp + 0x40]
push 0x138d
push eax
push 0x138f
push str..CHPROP
push 0x138d
call fcn.00430d70
mov ecx, dword [0x449588]
lea edx, [esp + 0x178]
push ecx
push str.BP_d
push edx
call fcn.0043465f
mov ebx, dword [0x449588]
add esp, 0x50
lea eax, [esp + 0x134]
inc ebx
push str.BendPath
push eax
push ebp
push ebp
push 0x40140000
push ebp
push 0x44ad60
mov dword [0x449588], ebx
call fcn.0041aac0
lea ecx, [esp + 0x34]
push ecx
call fcn.0042f630
lea edx, [esp + 0x30]
lea eax, [esp + 0x30]
push edx
lea ecx, [esp + 0x3c]
push eax
push ecx
call fcn.004305d0
push ebp
push 0x449548
lea edx, [esp + 0x44]
push 0x138d
push edx
push 0x138f
push 0x449548
lea eax, [esp + 0x178]
push 0x138d
push eax
push 0x138d
push 0x449548
push 0x138d
push str.._GROUP
push 0x138d
call fcn.00430d70
add esp, 0x60
jmp 0x40f5f6
mov dword [esp + 0x20], ebp
lea ecx, [esp + 0x20]
lea edx, [esp + 0x10]
push ecx
push edx
call fcn.004304d0
mov eax, dword [esp + 0x28]
push 0x44ad60
lea ecx, [esp + 0x1c]
push eax
push ecx
call fcn.00406730
lea edx, [esp + 0x128]
push edx
push str.CMDECHO
call fcn.0041daf0
lea eax, [esp + 0x5c]
push eax
call fcn.00430490
lea ecx, [esp + 0x58]
push ecx
call fcn.00430490
lea edx, [esp + 0x34]
push edx
call fcn.00430490
mov al, byte [0x44c650]
add esp, 0x28
test al, 1
je 0x40f72a
cmp dword [0x44c530], ebp
jne 0x40f678
cmp dword [0x44c534], ebp
jne 0x40f678
push 0x44c530
push ebp
push ebp
call fcn.004305d0
add esp, 0xc
call fcn.004188b0
mov edx, eax
lea edi, [esp + 0x134]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x449540], edx
mov eax, ecx
mov esi, edi
mov edi, 0x44ad80
sub esp, 8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
dec edx
mov dword [esp + 0x9c], edx
fild dword [esp + 0x9c]
rep movsb byte es:[edi], byte [esi]
fmul qword [0x4401f0]
fstp qword [esp]
call fcn.0043495c
call fcn.0043430c
mov edx, dword [0x449540]
mov dword [0x442030], eax
lea eax, [eax + eax*2]
push 0x44c530
lea ecx, [eax + eax*4]
sub edx, ecx
add edx, 0xe
mov dword [0x4494ec], edx
call fcn.0041ae30
push 0x44c530
push 0x44ad80
call fcn.004186e0
push 0x44cb18
push ebp
push 0x44c530
call fcn.00430540
mov eax, dword [esp + 0xb0]
add esp, 0x20
mov dword [0x44c5c8], eax
call fcn.004056d0
mov eax, dword [esp + 0x20]
cmp eax, 1
jl 0x40f738
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret