Function at 0x45fae0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x8b4
mov eax, dword [0x48f400]
xor eax, esp
mov dword [esp + 0x8b0], eax
fldz
mov eax, dword [ebp + 8]
fst qword [esp + 0x44]
push ebx
fst qword [esp + 0x50]
push esi
mov esi, dword [ebp + 0xc]
fst qword [esp + 0x94]
fst qword [esp + 0x8c]
mov byte [esi], 0
fst qword [esp + 0x6c]
push edi
fst qword [esp + 0x80]
push 0x491b18
fst qword [esp + 0x7c]
push eax
fstp qword [esp + 0x90]
mov dword [esp + 0x74], esi
fld qword [0x4854f0]
mov byte [esp + 0x4d], 0
fst qword [0x49a8c8]
mov byte [esp + 0x4e], 0
fstp qword [0x49a8c0]
mov byte [0x49a19c], 0
fld qword [0x4859b0]
fst qword [0x49a908]
fstp qword [0x49a900]
call fcn.0045dc60
push 0
mov edi, eax
push 0x400
lea eax, [esp + 0x4c0]
push eax
push edi
call fcn.0045f9f0
add esp, 0x18
test al, al
je 0x4611df
push 1
push 0x400
lea ecx, [esp + 0xb0]
push ecx
push edi
call fcn.0045f9f0
add esp, 0x10
test al, al
je 0x4611df
mov ecx, 0x491b1c
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x45fbe6
test dl, dl
je 0x45fbe2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x45fbe6
add eax, 2
add ecx, 2
test dl, dl
jne 0x45fbc6
xor eax, eax
jmp 0x45fbeb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4611d5
mov ebx, dword [sym.imp.MSVCR90.dll_atoi]
mov ecx, 0x491b20
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x45fc25
test dl, dl
je 0x45fc21
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x45fc25
add eax, 2
add ecx, 2
test dl, dl
jne 0x45fc05
xor eax, eax
jmp 0x45fc2a
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4608da
mov ecx, 0x491b28
lea eax, [esp + 0xa8]
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x45fc60
test dl, dl
je 0x45fc5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x45fc60
add eax, 2
add ecx, 2
test dl, dl
jne 0x45fc40
xor eax, eax
jmp 0x45fc65
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4608da
mov ecx, 0x491b30
lea eax, [esp + 0xa8]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x45fca0
test dl, dl
je 0x45fc9c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x45fca0
add eax, 2
add ecx, 2
test dl, dl
jne 0x45fc80
xor eax, eax
jmp 0x45fca5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4608da
mov ecx, 0x491b38
lea eax, [esp + 0xa8]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x45fce0
test dl, dl
je 0x45fcdc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x45fce0
add eax, 2
add ecx, 2
test dl, dl
jne 0x45fcc0
xor eax, eax
jmp 0x45fce5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4608da
mov ecx, str.LWPOLYLINE
lea eax, [esp + 0xa8]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x45fd20
test dl, dl
je 0x45fd1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x45fd20
add eax, 2
add ecx, 2
test dl, dl
jne 0x45fd00
xor eax, eax
jmp 0x45fd25
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x45fe85
call fcn.0045bb10
fldz
xor bl, bl
fstp qword [esp + 0x60]
mov byte [esp + 0x44], bl
mov byte [esp + 0x45], bl
push 0
push 0x400
lea edx, [esp + 0x4b8]
push edx
push edi
call fcn.0045f9f0
add esp, 0x10
test al, al
je 0x460dac
push 1
push 0x400
lea eax, [esp + 0xb0]
push eax
push edi
call fcn.0045f9f0
add esp, 0x10
test al, al
je 0x460dac
lea ecx, [esp + 0x4b0]
push ecx
call dword [sym.imp.MSVCR90.dll_atoi]
mov esi, eax
lea eax, [esi - 0xa]
add esp, 4
cmp eax, 0x3c
ja case.0x45fda8.11
movzx edx, byte [eax + 0x461204]
jmp dword [edx*4 + 0x4611f4]
cmp esi, 0xa
jne 0x45fe0d
lea eax, [esp + 0xa8]
push eax
call dword [sym.imp.MSVCR90.dll_atof]
fstp qword [esp + 0x54]
add esp, 4
cmp byte [esp + 0x44], 0
mov bl, 1
je 0x45fd42
fld qword [esp + 0x60]
mov edx, dword [esp + 0x6c]
sub esp, 0x18
fstp qword [esp + 0x10]
mov byte [edx], 1
fld qword [esp + 0x70]
fstp qword [esp + 8]
fld qword [esp + 0x68]
fstp qword [esp]
call fcn.0045bc20
fldz
add esp, 0x18
xor bl, bl
fstp qword [esp + 0x60]
mov byte [esp + 0x44], bl
jmp case.0x45fda8.11
lea ecx, [esp + 0xa8]
push ecx
call dword [sym.imp.MSVCR90.dll_atof]
fstp qword [esp + 0x5c]
add esp, 4
mov byte [esp + 0x44], 1
test bl, bl
je case.0x45fda8.11
jmp 0x45fdd6
lea eax, [esp + 0xa8]
push eax
call dword [sym.imp.MSVCR90.dll_atof]
fstp qword [esp + 0x64]
add esp, 4
jmp case.0x45fda8.11
lea ecx, [esp + 0xa8]
push ecx
call dword [sym.imp.MSVCR90.dll_atoi]
add esp, 4
and al, 1
mov byte [esp + 0x45], al
test esi, esi
jne 0x45fd42
cmp byte [esp + 0x45], 0
je 0x460d6a
fld qword [esp + 0x60]
sub esp, 8
fstp qword [esp]
call fcn.0045bb30
add esp, 8
jmp 0x460d6a
mov ecx, str.POLYLINE
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x45feb1
test dl, dl
je 0x45fead
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x45feb1
add eax, 2
add ecx, 2
test dl, dl
jne 0x45fe91
xor eax, eax
jmp 0x45feb6
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x460027
mov byte [esp + 0x45], al
push 0
push 0x400
lea edx, [esp + 0x4b8]
push edx
push edi
call fcn.0045f9f0
add esp, 0x10
test al, al
je 0x460df3
push 1
push 0x400
lea eax, [esp + 0xb0]
push eax
push edi
call fcn.0045f9f0
add esp, 0x10
test al, al
je 0x460df3
lea ecx, [esp + 0x4b0]
push ecx
call ebx
add esp, 4
cmp eax, 0x46
jne 0x45ff29
lea edx, [esp + 0xa8]
push edx
call ebx
add esp, 4
and al, 1
mov byte [esp + 0x45], al
jmp 0x45fec2
test eax, eax
jne 0x45fec2
mov ecx, 0x491c18
lea eax, [esp + 0xa8]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x45ff60
test dl, dl
je 0x45ff5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x45ff60
add eax, 2
add ecx, 2
test dl, dl
jne 0x45ff40
xor eax, eax
jmp 0x45ff65
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x46000f
lea ecx, [ecx]
push 0
push 0x400
lea eax, [esp + 0x4b8]
push eax
push edi
call fcn.0045f9f0
add esp, 0x10
test al, al
je 0x460e3a
push 1
push 0x400
lea ecx, [esp + 0xb0]
push ecx
push edi
call fcn.0045f9f0
add esp, 0x10
test al, al
je 0x460e3a
mov ecx, 0x491c58
lea eax, [esp + 0xa8]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x45ffe0
test dl, dl
je 0x45ffdc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x45ffe0
add eax, 2
add ecx, 2
test dl, dl
jne 0x45ffc0
xor eax, eax
jmp 0x45ffe5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x45ff70
push 0x400
lea edx, [esp + 0xac]
push edx
lea eax, [esp + 0x4b8]
push eax
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
je 0x460e81
call fcn.0045bb10
fldz
fstp qword [esp + 0x80]
mov byte [esp + 0x46], 1
jmp 0x460d6a
mov ecx, str.VERTEX
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x460053
test dl, dl
je 0x46004f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x460053
add eax, 2
add ecx, 2
test dl, dl
jne 0x460033
xor eax, eax
jmp 0x460058
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x46017a
fldz
xor bl, bl
mov byte [esp + 0x44], bl
fstp qword [esp + 0x60]
lea esp, [esp]
push 0
push 0x400
lea ecx, [esp + 0x4b8]
push ecx
push edi
call fcn.0045f9f0
add esp, 0x10
test al, al
je 0x460ec8
push 1
push 0x400
lea edx, [esp + 0xb0]
push edx
push edi
call fcn.0045f9f0
add esp, 0x10
test al, al
je 0x460ec8
lea eax, [esp + 0x4b0]
push eax
call dword [sym.imp.MSVCR90.dll_atoi]
add esp, 4
cmp eax, 0xa
je 0x460102
cmp eax, 0x14
je 0x4600e3
cmp eax, 0x2a
jne 0x46011e
lea ecx, [esp + 0xa8]
push ecx
call dword [sym.imp.MSVCR90.dll_atof]
add esp, 4
jmp 0x460068
lea edx, [esp + 0xa8]
push edx
call dword [sym.imp.MSVCR90.dll_atof]
fstp qword [esp + 0x5c]
add esp, 4
mov byte [esp + 0x44], 1
jmp 0x460070
lea eax, [esp + 0xa8]
push eax
call dword [sym.imp.MSVCR90.dll_atof]
fstp qword [esp + 0x54]
add esp, 4
mov bl, 1
jmp 0x460070
test eax, eax
jne 0x460070
cmp byte [esp + 0x46], al
je 0x460d6a
test bl, bl
je 0x460d6a
cmp byte [esp + 0x44], al
je 0x460d6a
fld qword [esp + 0x80]
sub esp, 0x18
fstp qword [esp + 0x10]
mov byte [esi], 1
fld qword [esp + 0x70]
fstp qword [esp + 8]
fld qword [esp + 0x68]
fstp qword [esp]
call fcn.0045bc20
fld qword [esp + 0x78]
add esp, 0x18
fstp qword [esp + 0x80]
jmp 0x460d6a
mov ecx, str.SEQEND
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4601a6
test dl, dl
je 0x4601a2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4601a6
add eax, 2
add ecx, 2
test dl, dl
jne 0x460186
xor eax, eax
jmp 0x4601ab
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x460240
cmp byte [esp + 0x45], al
je 0x4601ce
fld qword [esp + 0x80]
sub esp, 8
fstp qword [esp]
call fcn.0045bb30
add esp, 8
push 0x400
lea ecx, [esp + 0xac]
push ecx
lea edx, [esp + 0x4b8]
push edx
push edi
mov byte [esp + 0x56], 0
call fcn.0045faa0
add esp, 0x10
test al, al
jne 0x460d6a
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491ce0
push 0x491d08
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov al, byte [esp + 0xa8]
cmp al, 0x24
jne 0x4602b8
push 0x400
lea eax, [esp + 0xac]
push eax
lea ecx, [esp + 0x4b8]
push ecx
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
jne 0x460d6a
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491d18
push 0x491d40
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
cmp al, 0x7b
lea eax, [esp + 0xa8]
jne 0x460425
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4602d0
sub eax, edx
cmp byte [esp + eax + 0xa7], 0x7d
je 0x4603b8
jmp 0x4602f0
push 0x400
lea edx, [esp + 0xac]
push edx
lea eax, [esp + 0x4b8]
push eax
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
je 0x460f0f
mov ecx, 0x491d88
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x460342
test dl, dl
je 0x46033e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x460342
add eax, 2
add ecx, 2
test dl, dl
jne 0x460322
xor eax, eax
jmp 0x460347
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4602f0
push 0x400
lea ecx, [esp + 0xac]
push ecx
lea edx, [esp + 0x4b8]
push edx
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
jne 0x460d6a
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491d8c
push 0x491db4
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
push 0x400
lea eax, [esp + 0xac]
push eax
lea ecx, [esp + 0x4b8]
push ecx
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
jne 0x460d6a
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491dc4
push 0x491dec
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov ecx, str.LAYER
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x460450
test dl, dl
je 0x46044c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x460450
add eax, 2
add ecx, 2
test dl, dl
jne 0x460430
xor eax, eax
jmp 0x460455
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x46049c
lea esp, [esp]
push 0x400
lea edx, [esp + 0xac]
push edx
lea eax, [esp + 0x4b8]
push eax
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
je 0x460f56
lea ecx, [esp + 0x4b0]
push ecx
call ebx
add esp, 4
test eax, eax
jne 0x460460
jmp 0x460d6a
mov ecx, str.BLOCK
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4604c8
test dl, dl
je 0x4604c4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4604c8
add eax, 2
add ecx, 2
test dl, dl
jne 0x4604a8
xor eax, eax
jmp 0x4604cd
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4605a8
jmp 0x4604e0
push 0x400
lea edx, [esp + 0xac]
push edx
lea eax, [esp + 0x4b8]
push eax
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
je 0x460f9d
mov ecx, str.ENDBLK
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x460532
test dl, dl
je 0x46052e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x460532
add eax, 2
add ecx, 2
test dl, dl
jne 0x460512
xor eax, eax
jmp 0x460537
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4604e0
push 0x400
lea ecx, [esp + 0xac]
push ecx
lea edx, [esp + 0x4b8]
push edx
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
jne 0x460d6a
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491e84
push 0x491eac
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov ecx, str.INSERT
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4605d4
test dl, dl
je 0x4605d0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4605d4
add eax, 2
add ecx, 2
test dl, dl
jne 0x4605b4
xor eax, eax
jmp 0x4605d9
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x46061c
lea ecx, [ecx]
push 0x400
lea eax, [esp + 0xac]
push eax
lea ecx, [esp + 0x4b8]
push ecx
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
je 0x460fe4
lea edx, [esp + 0x4b0]
push edx
call ebx
add esp, 4
test eax, eax
jne 0x4605e0
jmp 0x460d6a
mov ecx, str.SPLINE
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x460648
test dl, dl
je 0x460644
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x460648
add eax, 2
add ecx, 2
test dl, dl
jne 0x460628
xor eax, eax
jmp 0x46064d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x46068d
push 0x400
lea eax, [esp + 0xac]
push eax
lea ecx, [esp + 0x4b8]
push ecx
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
je 0x46102b
lea edx, [esp + 0x4b0]
push edx
call ebx
add esp, 4
test eax, eax
jne 0x460651
jmp 0x460d6a
mov ecx, str.ELLIPSE
lea eax, [esp + 0xa8]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4606c0
test dl, dl
je 0x4606bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4606c0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4606a0
xor eax, eax
jmp 0x4606c5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x46070c
lea esp, [esp]
push 0x400
lea eax, [esp + 0xac]
push eax
lea ecx, [esp + 0x4b8]
push ecx
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
je 0x461072
lea edx, [esp + 0x4b0]
push edx
call ebx
add esp, 4
test eax, eax
jne 0x4606d0
jmp 0x460d6a
mov ecx, str.TEXT
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x460738
test dl, dl
je 0x460734
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x460738
add eax, 2
add ecx, 2
test dl, dl
jne 0x460718
xor eax, eax
jmp 0x46073d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x46077d
push 0x400
lea eax, [esp + 0xac]
push eax
lea ecx, [esp + 0x4b8]
push ecx
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
je 0x4610b9
lea edx, [esp + 0x4b0]
push edx
call ebx
add esp, 4
test eax, eax
jne 0x460741
jmp 0x460d6a
mov ecx, str.DIMENSION
lea eax, [esp + 0xa8]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4607b0
test dl, dl
je 0x4607ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4607b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x460790
xor eax, eax
jmp 0x4607b5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4607fc
lea esp, [esp]
push 0x400
lea eax, [esp + 0xac]
push eax
lea ecx, [esp + 0x4b8]
push ecx
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
je 0x461100
lea edx, [esp + 0x4b0]
push edx
call ebx
add esp, 4
test eax, eax
jne 0x4607c0
jmp 0x460d6a
mov ecx, str.HATCH
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x460828
test dl, dl
je 0x460824
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x460828
add eax, 2
add ecx, 2
test dl, dl
jne 0x460808
xor eax, eax
jmp 0x46082d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x46086d
push 0x400
lea eax, [esp + 0xac]
push eax
lea ecx, [esp + 0x4b8]
push ecx
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
je 0x461147
lea edx, [esp + 0x4b0]
push edx
call ebx
add esp, 4
test eax, eax
jne 0x460831
jmp 0x460d6a
push 0x400
lea eax, [esp + 0xac]
push eax
lea ecx, [esp + 0x4b8]
push ecx
push edi
call fcn.0045faa0
add esp, 0x10
test al, al
jne 0x460d6a
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push str.ReadDXFFile_____premature_end_of_file__n
push 0x492068
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
xor bl, bl
mov byte [esp + 0x44], 0
mov byte [esp + 0x4b], bl
mov byte [esp + 0x4f], bl
mov byte [esp + 0x49], bl
mov byte [esp + 0x4d], bl
mov byte [esp + 0x47], bl
mov byte [esp + 0x4a], bl
mov byte [esp + 0x48], bl
mov byte [esp + 0x4e], bl
mov byte [esp + 0x4c], bl
mov ecx, str.POINT
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x460931
test dl, dl
je 0x46092d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x460931
add eax, 2
add ecx, 2
test dl, dl
jne 0x460911
xor eax, eax
jmp 0x460936
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x46093f
mov byte [esp + 0x4c], 1
mov ecx, str.LINE
lea eax, [esp + 0xa8]
jmp 0x460950
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x460970
test dl, dl
je 0x46096c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x460970
add eax, 2
add ecx, 2
test dl, dl
jne 0x460950
xor eax, eax
jmp 0x460975
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x46097e
mov byte [esp + 0x4e], 1
mov ecx, 0x491b4c
lea eax, [esp + 0xa8]
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4609b0
test dl, dl
je 0x4609ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4609b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x460990
xor eax, eax
jmp 0x4609b5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4609be
mov byte [esp + 0x48], 1
mov ecx, str.CIRCLE
lea eax, [esp + 0xa8]
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4609f0
test dl, dl
je 0x4609ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4609f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4609d0
xor eax, eax
jmp 0x4609f5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x460a00
mov byte [esp + 0x4a], 1
mov edi, edi
push 0
push 0x400
lea edx, [esp + 0x4b8]
push edx
push edi
call fcn.0045f9f0
add esp, 0x10
test al, al
je 0x46118e
push 1
push 0x400
lea eax, [esp + 0xb0]
push eax
push edi
call fcn.0045f9f0
add esp, 0x10
test al, al
je 0x46118e
lea ecx, [esp + 0x4b0]
push ecx
call dword [sym.imp.MSVCR90.dll_atoi]
mov esi, eax
lea eax, [esi - 0xa]
add esp, 4
cmp eax, 0x29
ja case.0x460a66.12
movzx edx, byte [eax + 0x461264]
jmp dword [edx*4 + 0x461244]
lea eax, [esp + 0xa8]
push eax
call dword [sym.imp.MSVCR90.dll_atof]
fstp qword [esp + 0x54]
mov bl, 1
jmp 0x460b26
lea ecx, [esp + 0xa8]
push ecx
call dword [sym.imp.MSVCR90.dll_atof]
fstp qword [esp + 0x5c]
mov byte [esp + 0x48], 1
jmp 0x460b26
lea edx, [esp + 0xa8]
push edx
call dword [sym.imp.MSVCR90.dll_atof]
fstp qword [esp + 0x9c]
mov byte [esp + 0x53], 1
jmp 0x460b26
lea eax, [esp + 0xa8]
push eax
call dword [sym.imp.MSVCR90.dll_atof]
fstp qword [esp + 0x94]
mov byte [esp + 0x4f], 1
jmp 0x460b26
lea ecx, [esp + 0xa8]
push ecx
call dword [sym.imp.MSVCR90.dll_atof]
fstp qword [esp + 0x74]
mov byte [esp + 0x4b], 1
jmp 0x460b26
lea edx, [esp + 0xa8]
push edx
call dword [sym.imp.MSVCR90.dll_atof]
fstp qword [esp + 0x7c]
mov byte [esp + 0x51], 1
jmp 0x460b26
lea eax, [esp + 0xa8]
push eax
call dword [sym.imp.MSVCR90.dll_atof]
fstp qword [esp + 0x8c]
mov byte [esp + 0x4d], 1
add esp, 4
test esi, esi
jne 0x460a00
test bl, bl
je 0x460d6a
cmp byte [esp + 0x44], 0
je 0x460d6a
cmp byte [esp + 0x4e], 0
mov ecx, dword [esp + 0x6c]
mov byte [ecx], 1
je 0x460b9c
cmp byte [esp + 0x4f], 0
je 0x460b9c
cmp byte [esp + 0x4b], 0
je 0x460b9c
mov edx, dword [0x48b3c4]
fld qword [esp + 0x90]
push edx
sub esp, 0x20
fstp qword [esp + 0x18]
fld qword [esp + 0xbc]
fstp qword [esp + 0x10]
fld qword [esp + 0x7c]
fstp qword [esp + 8]
fld qword [esp + 0x74]
fstp qword [esp]
call fcn.0045b120
add esp, 0x24
jmp 0x460d6a
cmp byte [esp + 0x48], 0
je 0x460c85
cmp byte [esp + 0x47], 0
je 0x460c85
cmp byte [esp + 0x4d], 0
je 0x460c85
cmp byte [esp + 0x49], 0
je 0x460c85
fld qword [esp + 0x78]
mov eax, dword [0x48b3c4]
fld qword [0x48b3d8]
push eax
fmul st(1), st(0)
push 1
fxch st(1)
sub esp, 0x10
fstp qword [esp + 0x90]
fmul qword [esp + 0xa0]
fst qword [esp + 0xa0]
fld qword [esp + 0x70]
fstp qword [esp + 8]
fld qword [esp + 0x68]
fstp qword [esp]
call sub.MSVCR90.dll__CIsin
fmul qword [esp + 0x88]
sub esp, 8
fadd qword [esp + 0x78]
fstp qword [esp]
fld qword [esp + 0xa8]
call sub.MSVCR90.dll__CIcos
fmul qword [esp + 0x90]
sub esp, 8
fadd qword [esp + 0x78]
fstp qword [esp]
fld qword [esp + 0xa0]
call sub.MSVCR90.dll__CIsin
fmul qword [esp + 0x98]
sub esp, 8
fadd qword [esp + 0x88]
fstp qword [esp]
fld qword [esp + 0xa8]
call sub.MSVCR90.dll__CIcos
fmul qword [esp + 0xa0]
sub esp, 8
fadd qword [esp + 0x88]
fstp qword [esp]
call fcn.0045b240
add esp, 0x38
jmp 0x460d6a
cmp byte [esp + 0x4a], 0
je 0x460d3c
cmp byte [esp + 0x47], 0
je 0x460d3c
fld qword [esp + 0x50]
mov ecx, dword [0x48b3c4]
fld st(0)
push ecx
fld qword [esp + 0x74]
push 1
fsub st(1), st(0)
sub esp, 0x30
fxch st(1)
fst qword [esp + 0xd8]
fxch st(1)
fadd st(2)
fst qword [esp + 0x98]
fld qword [esp + 0x90]
fst qword [esp + 0x28]
fxch st(3)
fstp qword [esp + 0x20]
fxch st(2)
fst qword [esp + 0x18]
fxch st(1)
fstp qword [esp + 0x10]
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0045b240
mov edx, dword [0x48b3c4]
fld qword [esp + 0x90]
add esp, 0x38
push edx
push 1
sub esp, 0x30
fst qword [esp + 0x28]
fld qword [esp + 0x88]
fstp qword [esp + 0x20]
fst qword [esp + 0x18]
fld qword [esp + 0x98]
fstp qword [esp + 0x10]
fstp qword [esp + 8]
fld qword [esp + 0xd8]
fstp qword [esp]
call fcn.0045b240
add esp, 0x38
jmp 0x460d6a
cmp byte [esp + 0x4c], 0
je 0x460d6a
mov eax, dword [0x48b3c0]
fld qword [esp + 0x58]
push eax
sub esp, 0x10
fstp qword [esp + 8]
fld qword [esp + 0x64]
fstp qword [esp]
call fcn.0045b100
add esp, 0x14
mov byte [0x49a19c], 1
mov ecx, 0x491b1c
lea eax, [esp + 0xa8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x460d96
test dl, dl
je 0x460d92
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x460d96
add eax, 2
add ecx, 2
test dl, dl
jne 0x460d76
xor eax, eax
jmp 0x460d9b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4611d5
mov esi, dword [esp + 0x6c]
jmp 0x45fbf3
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491b9c
push 0x491bc4
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491be0
push 0x491c08
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491c20
push 0x491c48
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491c60
push 0x491c88
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491ca0
push 0x491cc8
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491d50
push 0x491d78
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491e04
push 0x491e2c
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491e44
push 0x491e6c
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491ec4
push 0x491eec
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491f04
push 0x491f2c
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491f44
push 0x491f6c
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491f84
push 0x491fac
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491fc8
push 0x491ff0
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x492008
push 0x492030
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
mov byte [0x49a922], 1
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fflush]
add eax, 0x20
push eax
call edi
add esp, 4
push 0x491b58
push 0x491b80
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
call esi
add eax, 0x40
push eax
call edi
add esp, 0x10
push 2
call dword [sym.imp.MSVCR90.dll_exit]
push edi
call dword [sym.imp.MSVCR90.dll_fclose]
add esp, 4
mov ecx, dword [esp + 0x8bc]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0042809b
mov esp, ebp
pop ebp
ret