Function at 0x411b40
Capabilities:
Delete file
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xfc
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [sym.imp.MSVCR100.dll_printf]
push edi
push str.Enter_type_of_raw_data:_n___for_ASCII_input_________________enter_1_n
call esi
add esp, 4
push str.___for_SYSTAT_.SYS_file_____________enter_2_n___for_SAS_V5_transport_file________enter_3_n___for_SPSS_file__UNIX_or_windows___enter_4_n___for_STATA_.dta_file______________enter_5_n
call esi
add esp, 4
push 5
push 1
mov edi, str.Type_
call fcn.00406cc0
dec eax
add esp, 8
cmp eax, 5
ja case.default.0x411b8b
jmp dword [eax*4 + 0x412e1c]
mov edi, 0x1000
mov dword [0x453194], 2
call fcn.00406e80
mov dword [0x444370], eax
add eax, 0x400
mov dword [0x444374], eax
add eax, 0x400
mov dword [0x444378], eax
add eax, 0x400
mov dword [0x44437c], eax
jmp 0x411c05
mov dword [0x453194], 3
jmp 0x411c05
mov dword [0x453194], 5
jmp 0x411c05
mov dword [0x453194], 6
jmp 0x411c05
mov dword [0x453194], 8
jmp 0x411c05
mov dword [0x453194], 9
mov edi, 0x410
call fcn.00406e80
mov dword [0x4444b0], eax
add eax, 0x104
mov dword [0x4444b4], eax
add eax, 0x104
mov dword [0x4444b8], eax
add eax, 0x104
mov dword [0x4444bc], eax
xor ebx, ebx
cmp ebx, 3
ja case.default.0x411c39
jmp dword [ebx*4 + 0x412e34]
push str.level_1
jmp 0x411c62
push str.level_2
lea ecx, [ebp - 0x18]
push ecx
jmp 0x411c66
push 0x43cbdc
lea edx, [ebp - 0x18]
push edx
jmp 0x411c66
push str.column
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 8
cmp dword [0x453194], 2
jne 0x411d36
lea ecx, [ebp - 0x18]
push ecx
lea edx, [ebp - 0xb0]
push str._nInput_number_of__s_variables__not_including_the_character_ID_:
push edx
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 0xc
push 0x3e8
push 1
lea edi, [ebp - 0xb0]
call fcn.00406cc0
mov edx, dword [0x448c78]
lea ecx, [ebx*8]
sub ecx, ebx
add esp, 8
xor esi, esi
mov dword [edx + ecx*8 + 4], eax
xor edi, edi
mov eax, edi
inc edi
cmp eax, 0xa
jge 0x411d2d
cmp ebx, 3
ja case.default.0x411cce
jmp dword [ebx*4 + 0x412e44]
push str.The_first_A_field_must_be_a_character_row_id__the_second__the_column_id__nthe_third__the_cluster_id_n
jmp 0x411cef
push str.The_first_A_field_must_be_a_character_row_id_n
jmp 0x411cef
push str.The_first_A_field_must_be_a_character_column_id__the_second__the_cluster_id_n
jmp 0x411cef
push str.The_first_A_field_must_be_a_character_cluster_id_n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
lea ecx, [ebp - 0x18]
push ecx
push str._Input_format_of__s_file:
call dword [sym.imp.MSVCR100.dll_printf]
mov edx, dword [ebx*4 + 0x444370]
push edx
call dword [sym.imp.MSVCR100.dll_gets]
mov ecx, dword [ebx*4 + 0x444370]
add esp, 0xc
call fcn.00409d70
test eax, eax
je 0x411d29
inc esi
test esi, esi
je 0x411cc1
cmp edi, 9
jg 0x411e32
cmp dword [0x453194], 9
je 0x411da6
xor edi, edi
xor esi, esi
lea eax, [ebp - 0x18]
push eax
push str._nInput_name_of__s_file:
call dword [sym.imp.MSVCR100.dll_printf]
mov ecx, dword [ebx*4 + 0x4444b0]
push ecx
call dword [sym.imp.MSVCR100.dll_gets]
mov eax, dword [ebx*4 + 0x4444b0]
add esp, 0xc
test eax, eax
je 0x411d81
push 0
push eax
call dword [sym.imp.MSVCR100.dll__access]
add esp, 8
test eax, eax
jne 0x411d81
inc edi
jmp 0x411d98
cmp dword [0x453194], 5
jne 0x411d98
mov edi, dword [ebx*4 + 0x4444b0]
call fcn.00408380
mov edi, eax
inc esi
cmp esi, 9
jg 0x411e82
test edi, edi
je 0x411d43
inc ebx
cmp ebx, 4
jl 0x411c34
mov eax, dword [0x453194]
cmp eax, 2
je 0x412153
cmp eax, 9
je 0x411ed3
mov ecx, dword [0x4444b0]
mov eax, 0x43c71c
call fcn.004066f0
mov ecx, dword [0x448c78]
mov dword [ecx], eax
mov ecx, dword [0x4444b4]
mov eax, 0x43c71c
call fcn.004066f0
mov edx, dword [0x448c78]
mov ecx, dword [0x4444b8]
mov dword [edx + 0x38], eax
mov eax, 0x43c71c
call fcn.004066f0
mov ecx, dword [0x448c78]
mov dword [ecx + 0x70], eax
mov ecx, dword [0x4444bc]
mov eax, 0x43c71c
call fcn.004066f0
mov ecx, dword [0x448c78]
mov dword [ecx + 0xa8], eax
jmp 0x411ed9
push str.Unable_to_get_a_proper_response_n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
call fcn.00406fe0
mov edx, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push edx
mov dword [0x443e58], 1
call esi
mov eax, dword [0x448bc8]
add esp, 4
push eax
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x411e7a
call fcn.00406b90
push 0xe
call dword [sym.imp.MSVCR100.dll_exit]
push str.Unable_to_get_a_proper_response_n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
call fcn.00406fe0
mov ecx, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], 1
call esi
mov edx, dword [0x448bc8]
add esp, 4
push edx
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x411ecb
call fcn.00406b90
push 0xe
call dword [sym.imp.MSVCR100.dll_exit]
mov ecx, dword [0x448c78]
mov eax, dword [0x453194]
add eax, 0xfffffffd
cmp eax, 5
ja case.0x411eea.4
jmp dword [eax*4 + 0x412e54]
xor ebx, ebx
mov ecx, ebx
call fcn.00407520
test eax, eax
jne 0x411f0f
inc ebx
cmp ebx, 4
jl 0x411ef3
mov ecx, dword [0x448c78]
jmp case.0x411eea.4
mov ebx, dword [ebx*4 + 0x4444b0]
push ebx
push str.__s_is_an_empty_file_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov edx, dword [0x4596c4]
mov edi, dword [sym.imp.MSVCR100.dll_remove]
push edx
mov dword [0x443e58], 1
call edi
mov eax, dword [0x448bc8]
add esp, 0xc
push eax
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x411f5c
call fcn.00406b90
push 1
call dword [sym.imp.MSVCR100.dll_exit]
xor ebx, ebx
xor esi, esi
mov ecx, ebx
call fcn.00407d80
test eax, eax
jne 0x411faa
mov ecx, dword [0x448c78]
mov eax, dword [esi + ecx + 4]
lea edi, [eax*8]
sub edi, eax
add edi, edi
add edi, edi
call fcn.00406e80
mov ecx, dword [0x448c78]
mov dword [esi + ecx + 0x18], eax
add esi, 0x38
inc ebx
cmp esi, 0xe0
jl 0x411f68
jmp case.0x411eea.4
mov ebx, dword [ebx*4 + 0x4444b0]
push ebx
push str.__s_is_an_empty_file_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov edx, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push edx
mov dword [0x443e58], 1
call esi
mov eax, dword [0x448bc8]
add esp, 0xc
push eax
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x411ff7
call fcn.00406b90
push 1
call dword [sym.imp.MSVCR100.dll_exit]
xor ebx, ebx
mov ecx, ebx
call fcn.004084e0
test eax, eax
jne 0x412085
inc ebx
cmp ebx, 4
jl 0x412001
mov eax, dword [0x443e80]
lea edi, [eax + eax*2]
shl edi, 4
call fcn.00406e80
mov ecx, dword [0x448c78]
mov dword [ecx + 0x1c], eax
mov eax, dword [0x443ea8]
lea edi, [eax + eax*2]
shl edi, 4
call fcn.00406e80
mov edx, dword [0x448c78]
mov dword [edx + 0x54], eax
mov eax, dword [0x443ed0]
lea edi, [eax + eax*2]
shl edi, 4
call fcn.00406e80
mov ecx, dword [0x448c78]
mov dword [ecx + 0x8c], eax
mov eax, dword [0x443ef8]
lea edi, [eax + eax*2]
shl edi, 4
call fcn.00406e80
mov ecx, dword [0x448c78]
mov dword [ecx + 0xc4], eax
jmp case.0x411eea.4
mov ebx, dword [ebx*4 + 0x4444b0]
push ebx
push str.__s_is_an_empty_file_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov ecx, dword [0x4596c4]
mov edi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], 1
call edi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x4120d3
call fcn.00406b90
push 1
call dword [sym.imp.MSVCR100.dll_exit]
xor ebx, ebx
lea ecx, [ecx]
push ebx
call fcn.00408f30
add esp, 4
test eax, eax
jne 0x4120fe
inc ebx
cmp ebx, 4
jl 0x4120e0
mov ecx, dword [0x448c78]
jmp case.0x411eea.4
mov ebx, dword [ebx*4 + 0x4444b0]
push ebx
push str.__s_is_an_empty_file_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov edx, dword [0x4596c4]
mov edi, dword [sym.imp.MSVCR100.dll_remove]
push edx
mov dword [0x443e58], 1
call edi
mov eax, dword [0x448bc8]
add esp, 0xc
push eax
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x41214b
call fcn.00406b90
push 1
call dword [sym.imp.MSVCR100.dll_exit]
mov ecx, dword [0x4444b0]
mov eax, 0x43cd84
call fcn.004066f0
mov ecx, dword [0x448c78]
mov dword [ecx], eax
mov ecx, dword [0x4444b4]
mov eax, 0x43cd84
call fcn.004066f0
mov edx, dword [0x448c78]
mov ecx, dword [0x4444b8]
mov dword [edx + 0x38], eax
mov eax, 0x43cd84
call fcn.004066f0
mov ecx, dword [0x448c78]
mov dword [ecx + 0x70], eax
mov ecx, dword [0x4444bc]
mov eax, 0x43cd84
call fcn.004066f0
mov ecx, dword [0x448c78]
mov dword [ecx + 0xa8], eax
mov edi, dword [ecx + 4]
mov edx, dword [ecx + 0x3c]
mov eax, dword [ecx + 0x74]
mov ecx, dword [ecx + 0xac]
mov dword [0x453180], edi
inc edi
imul edi, edi, 0xd
mov dword [0x448664], edx
mov dword [0x448ba8], eax
mov dword [0x448694], ecx
call fcn.00406e80
mov edx, dword [0x43c138]
mov dword [eax], edx
mov ecx, dword [0x43c13c]
mov dword [eax + 4], ecx
mov edx, dword [0x43c140]
mov dword [eax + 8], edx
movzx ecx, byte [0x43c144]
mov byte [eax + 0xc], cl
mov edi, dword [0x448664]
inc edi
imul edi, edi, 0xd
mov dword [0x45315c], eax
mov dword [0x448650], eax
call fcn.00406e80
mov edx, dword [str.INTRCPT2]
mov dword [eax], edx
mov ecx, dword [0x43c14c]
mov dword [eax + 4], ecx
mov edx, dword [0x43c150]
mov dword [eax + 8], edx
movzx ecx, byte [0x43c154]
mov byte [eax + 0xc], cl
mov edi, dword [0x448ba8]
inc edi
imul edi, edi, 0xd
mov dword [0x448bc0], eax
mov dword [0x448654], eax
call fcn.00406e80
mov edx, dword [str._ICPTROW]
mov dword [eax], edx
mov ecx, dword [0x43c15c]
mov dword [eax + 4], ecx
mov edx, dword [0x43c160]
mov dword [eax + 8], edx
movzx ecx, byte [0x43c164]
mov byte [eax + 0xc], cl
mov edi, dword [0x448694]
inc edi
imul edi, edi, 0xd
mov dword [0x4444d0], eax
mov dword [0x448658], eax
call fcn.00406e80
mov edx, dword [str._ICPTCOL]
mov dword [eax], edx
mov ecx, dword [0x43c16c]
mov dword [eax + 4], ecx
mov edx, dword [0x43c170]
mov dword [eax + 8], edx
movzx ecx, byte [0x43c174]
mov byte [eax + 0xc], cl
mov dword [0x4595a0], eax
mov dword [0x44865c], eax
mov eax, dword [0x453194]
add eax, 0xfffffffd
cmp eax, 6
ja case.0x4122de.4
jmp dword [eax*4 + 0x412e6c]
or eax, 0xffffffff
xor esi, esi
mov dword [0x444058], eax
mov dword [0x44405c], esi
mov dword [0x444060], esi
mov dword [0x444084], eax
mov dword [0x444088], eax
mov dword [0x44408c], eax
mov dword [0x4440b0], esi
mov dword [0x4440b4], eax
mov dword [0x4440b8], esi
mov dword [0x4440dc], esi
mov dword [0x4440e0], esi
mov dword [0x4440e4], eax
mov dword [ebp - 0xf4], esi
mov ebx, 0x444040
jmp 0x412340
mov edx, dword [0x448c78]
mov eax, dword [ebp - 0xf4]
mov edi, dword [eax + edx + 4]
imul edi, edi, 0xd
call fcn.00406e80
mov ecx, dword [0x448c78]
mov edx, dword [ebp - 0xf4]
mov edi, dword [edx + ecx + 4]
imul edi, edi, 0xd
mov dword [ebx + 0x24], eax
call fcn.00406e80
mov ecx, dword [ebp - 0xf4]
mov dword [ebx + 0x28], eax
mov eax, dword [0x448c78]
mov edi, dword [ecx + eax + 4]
add edi, edi
add edi, edi
call fcn.00406e80
mov edx, dword [0x448c78]
mov dword [ebx + 4], eax
mov eax, dword [ebp - 0xf4]
mov ecx, dword [eax + edx]
mov dword [ebx], ecx
mov ecx, ebx
call fcn.00407660
test eax, eax
jne 0x412424
push esi
mov ecx, ebx
call fcn.0042a430
add dword [ebp - 0xf4], 0x38
add ebx, 0x2c
add esp, 4
inc esi
cmp ebx, 0x4440f0
jl 0x412340
mov esi, 1
xor eax, eax
mov dword [ebp - 0xf4], eax
mov dword [0x453154], eax
mov dword [0x448660], esi
mov dword [ebp - 0xf8], eax
lea ecx, [ecx]
test eax, eax
jne 0x412c42
cmp dword [0x453194], 6
je 0x412b5c
mov edx, dword [0x448c78]
mov esi, dword [edx + 4]
lea ebx, [esi*8]
test ebx, ebx
jne 0x412b24
xor edi, edi
jmp 0x412b44
mov esi, dword [esi*4 + 0x4444b0]
push esi
push str.__s_is_an_empty_file_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov edx, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push edx
mov dword [0x443e58], 1
call esi
mov eax, dword [0x448bc8]
add esp, 0xc
push eax
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x412471
call fcn.00406b90
push 1
call dword [sym.imp.MSVCR100.dll_exit]
mov eax, dword [0x448c78]
mov ecx, dword [eax + 0x18]
mov edx, dword [eax + 4]
push ecx
push edx
mov edx, dword [eax]
xor ecx, ecx
call fcn.00407ff0
add esp, 8
test eax, eax
jne 0x4124ea
mov eax, dword [0x4444b0]
push eax
push str.__s_is_an_empty_file_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov ecx, dword [0x4596c4]
mov edi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], 1
call edi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x4124e2
call fcn.00406b90
push 1
call dword [sym.imp.MSVCR100.dll_exit]
mov eax, dword [0x448c78]
mov ecx, dword [eax + 0x50]
mov edx, dword [eax + 0x3c]
push ecx
push edx
mov edx, dword [eax + 0x38]
mov esi, 1
mov ecx, esi
call fcn.00407ff0
add esp, 8
test eax, eax
jne 0x41255c
mov eax, dword [0x4444b4]
push eax
push str.__s_is_an_empty_file_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov ecx, dword [0x4596c4]
mov edi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], esi
call edi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x412555
call fcn.00406b90
push esi
call dword [sym.imp.MSVCR100.dll_exit]
mov eax, dword [0x448c78]
mov ecx, dword [eax + 0x88]
mov edx, dword [eax + 0x74]
push ecx
push edx
mov edx, dword [eax + 0x70]
mov ecx, 2
call fcn.00407ff0
add esp, 8
test eax, eax
jne 0x4125cf
mov eax, dword [0x4444b8]
push eax
push str.__s_is_an_empty_file_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov ecx, dword [0x4596c4]
mov edi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], esi
call edi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x4125c8
call fcn.00406b90
push esi
call dword [sym.imp.MSVCR100.dll_exit]
mov eax, dword [0x448c78]
mov ecx, dword [eax + 0xc0]
mov edx, dword [eax + 0xac]
push ecx
push edx
mov edx, dword [eax + 0xa8]
mov ecx, 3
call fcn.00407ff0
add esp, 8
test eax, eax
jne 0x412648
mov eax, dword [0x4444bc]
push eax
push str.__s_is_an_empty_file_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov ecx, dword [0x4596c4]
mov edi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], esi
call edi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x412641
call fcn.00406b90
push esi
call dword [sym.imp.MSVCR100.dll_exit]
mov eax, dword [0x448c78]
mov ecx, dword [eax + 0x18]
mov edx, dword [0x45315c]
mov eax, dword [eax + 4]
push ecx
push edx
push eax
push 0
call fcn.004267b0
mov eax, dword [0x448c78]
mov ecx, dword [eax + 0x50]
mov edx, dword [0x448bc0]
mov eax, dword [eax + 0x3c]
push ecx
push edx
push eax
push esi
call fcn.004267b0
mov eax, dword [0x448c78]
mov ecx, dword [eax + 0x88]
mov edx, dword [0x4444d0]
mov eax, dword [eax + 0x74]
push ecx
push edx
push eax
push 2
call fcn.004267b0
mov eax, dword [0x448c78]
mov ecx, dword [eax + 0xc0]
mov edx, dword [0x4595a0]
mov eax, dword [eax + 0xac]
push ecx
push edx
push eax
push 3
call fcn.004267b0
add esp, 0x40
jmp 0x4123d4
mov edi, dword [0x443e80]
add edi, edi
add edi, edi
add edi, edi
call fcn.00406e80
mov edx, dword [0x443e80]
mov dword [0x4444d4], eax
mov eax, dword [0x448c78]
mov ecx, dword [eax + 0x1c]
push ecx
mov ecx, dword [eax]
push edx
push 0
call fcn.004086e0
mov esi, 1
sub eax, esi
add esp, 0xc
test eax, eax
jg 0x412750
mov eax, dword [0x4444b0]
push eax
push str.__s_is_an_empty_file_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov ecx, dword [0x4596c4]
mov edi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], esi
call edi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x412749
call fcn.00406b90
push esi
call dword [sym.imp.MSVCR100.dll_exit]
mov eax, dword [0x448c78]
mov ecx, dword [eax + 0x54]
mov edx, dword [0x443ea8]
push ecx
mov ecx, dword [eax + 0x38]
push edx
push esi
call fcn.004086e0
sub eax, esi
add esp, 0xc
test eax, eax
jg 0x4127c1
mov eax, dword [0x4444b4]
push eax
push str.__s_is_an_empty_file_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov ecx, dword [0x4596c4]
mov edi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], esi
call edi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x4127ba
call fcn.00406b90
push esi
call dword [sym.imp.MSVCR100.dll_exit]
mov eax, dword [0x448c78]
mov ecx, dword [eax + 0x8c]
mov edx, dword [0x443ed0]
push ecx
mov ecx, dword [eax + 0x70]
push edx
push 2
call fcn.004086e0
sub eax, esi
add esp, 0xc
test eax, eax
jg 0x412836
mov eax, dword [0x4444b8]
push eax
push str.__s_is_an_empty_file_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov ecx, dword [0x4596c4]
mov edi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], esi
call edi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x41282f
call fcn.00406b90
push esi
call dword [sym.imp.MSVCR100.dll_exit]
mov eax, dword [0x448c78]
mov ecx, dword [eax + 0xc4]
mov edx, dword [0x443ef8]
push ecx
mov ecx, dword [eax + 0xa8]
push edx
push 3
call fcn.004086e0
sub eax, esi
add esp, 0xc
test eax, eax
jg 0x4128ae
mov eax, dword [0x4444bc]
push eax
push str.__s_is_an_empty_file_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov ecx, dword [0x4596c4]
mov edi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], esi
call edi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x4128a7
call fcn.00406b90
push esi
call dword [sym.imp.MSVCR100.dll_exit]
xor edi, edi
xor ebx, ebx
jmp 0x4128c0
mov eax, dword [0x448c78]
mov edx, dword [ebx + eax + 0x1c]
mov ecx, dword [edi*4 + 0x448650]
push edi
call fcn.004274c0
add edi, esi
add esp, 4
add ebx, 0x38
cmp edi, 4
jl 0x4128c0
jmp 0x4123d4
mov ecx, dword [0x45315c]
push ecx
xor ecx, ecx
call fcn.004286d0
mov edx, dword [0x448bc0]
add esp, 4
mov esi, 1
push edx
mov ecx, esi
call fcn.004286d0
mov eax, dword [0x4444d0]
add esp, 4
push eax
lea ecx, [esi + 1]
call fcn.004286d0
mov ecx, dword [0x4595a0]
add esp, 4
push ecx
lea ecx, [esi + 2]
call fcn.004286d0
add esp, 4
jmp 0x4123d4
xor edi, edi
lea esi, [edi + 1]
lea esp, [esp]
push edi
call fcn.004299e0
add edi, esi
add esp, 4
cmp edi, 4
jl 0x412940
jmp 0x4123d4
call dword [sym.imp.MSVCR100.dll___iob_func]
add eax, 0x20
push eax
push 0xa
call dword [sym.imp.MSVCR100.dll_fputc]
add esp, 8
xor esi, esi
mov dword [ebp - 0xf8], esi
cmp esi, 3
ja case.default.0x412977
jmp dword [esi*4 + 0x412e88]
push str.level_1
jmp 0x4129a0
push str.level_2
lea eax, [ebp - 0x18]
push eax
jmp 0x4129a4
push 0x43cbdc
lea ecx, [ebp - 0x18]
push ecx
jmp 0x4129a4
push str.column
lea edx, [ebp - 0x18]
push edx
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 8
mov ecx, dword [ebx*4 + 0x448650]
mov edx, dword [0x448c78]
lea eax, [esi*8]
sub eax, esi
add eax, eax
add eax, eax
add eax, eax
mov ebx, 1
mov dword [ebp - 0xfc], eax
cmp dword [eax + edx + 4], ebx
jl 0x412a77
lea esi, [ecx + 0xd]
xor edi, edi
mov dword [ebp - 0xf4], edi
lea esp, [esp]
push ebx
lea eax, [ebp - 0x18]
push eax
push str.Enter_8_character_name_for__s_variable_number__d:
call dword [sym.imp.MSVCR100.dll_printf]
lea ecx, [ebp - 0x2c]
add esp, 0xc
push ecx
mov byte [ebp - 0x2c], 0
call dword [sym.imp.MSVCR100.dll_gets]
add esp, 4
cmp byte [ebp - 0x2c], 0
je 0x412a37
push 8
lea edx, [ebp - 0x2c]
push edx
push esi
call dword [sym.imp.MSVCR100.dll_strncpy]
add esp, 0xc
mov eax, 8
call fcn.00406820
inc edi
jmp 0x412a4b
push str._Invalid_response._Try_again._n
call dword [sym.imp.MSVCR100.dll_puts]
add esp, 4
inc dword [ebp - 0xf4]
cmp dword [ebp - 0xf4], 0x19
jg 0x412aa1
test edi, edi
je 0x4129f0
mov eax, dword [0x448c78]
mov ecx, dword [ebp - 0xfc]
inc ebx
add esi, 0xd
cmp ebx, dword [ecx + eax + 4]
jle 0x4129e1
mov esi, dword [ebp - 0xf8]
call dword [sym.imp.MSVCR100.dll___iob_func]
add eax, 0x20
push eax
push 0xa
call dword [sym.imp.MSVCR100.dll_fputc]
inc esi
add esp, 8
mov dword [ebp - 0xf8], esi
cmp esi, 4
jl 0x412972
jmp 0x4123cf
push str.Unable_to_get_a_proper_response_n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
call fcn.00406fe0
mov edx, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push edx
mov dword [0x443e58], 1
call esi
mov eax, dword [0x448bc8]
add esp, 4
push eax
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x412b1c
mov edi, dword [sym.imp.MSVCR100.dll_clock]
call edi
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov esi, edx
shr esi, 0x1f
add esi, edx
nop
call edi
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ecx, esi
cmp ecx, 3
jbe 0x412b00
push 0xe
call dword [sym.imp.MSVCR100.dll_exit]
push ebx
call dword [sym.imp.MSVCR100.dll_malloc]
mov edi, eax
add esp, 4
test edi, edi
je 0x412cc6
push ebx
push 0
push edi
call sub.MSVCR100.dll_memset
add esp, 0xc
mov dword [0x4444d4], edi
test esi, esi
jle 0x412b5c
mov ecx, esi
and ecx, 0x1fffffff
add ecx, ecx
xor eax, eax
rep stosd dword es:[edi], eax
push str.Are_there_missing_data_in_the_level_1_file_
call fcn.00406bd0
add esp, 4
test eax, eax
je 0x412c42
cmp dword [0x453194], 2
jne 0x412c38
push str.Is_the_missing_value_the_same_for_all_variables_
call fcn.00406bd0
add esp, 4
test eax, eax
je 0x412bd7
push 0x3b9aca00
push 0xc4653600
mov edi, str.Enter_the_number_that_represents_missing_data
mov dword [ebp - 0xf4], 1
call fcn.00406d90
mov eax, dword [0x448c78]
add esp, 8
cmp dword [eax + 4], 0
jle 0x412c36
mov esi, dword [0x4444d4]
mov ecx, dword [eax + 4]
fstp qword [esi]
lea ecx, [ecx*8 - 5]
shr ecx, 2
lea edi, [esi + 8]
rep movsd dword es:[edi], dword [esi]
jmp 0x412c38
mov eax, dword [0x448c78]
xor ebx, ebx
cmp dword [eax + 4], ebx
jle 0x412c38
xor esi, esi
mov ecx, dword [0x45315c]
lea edx, [esi + ecx]
push edx
lea eax, [ebp - 0xb0]
push str.Enter_the_value_for_missing_data_for__8.8s
push eax
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 0xc
push 0x3b9aca00
push 0xc4653600
lea edi, [ebp - 0xb0]
call fcn.00406d90
mov ecx, dword [0x4444d4]
mov edx, dword [0x448c78]
fstp qword [ecx + ebx*8]
inc ebx
add esp, 8
add esi, 0xd
cmp ebx, dword [edx + 4]
jl 0x412be5
jmp 0x412c38
fstp st(0)
mov dword [0x453154], 1
mov eax, dword [ebp - 0xf8]
inc eax
mov dword [ebp - 0xf8], eax
cmp eax, 4
jl 0x4123f0
mov esi, dword [sym.imp.MSVCR100.dll_gets]
xor ebx, ebx
xor edi, edi
mov byte [0x463b60], bl
jmp 0x412c70
push str._nEnter_name_of_MDM_file:
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
push 0x463b60
call esi
add esp, 4
cmp byte [0x463b60], 0
je 0x412c92
inc ebx
inc edi
cmp edi, 9
jg 0x412d48
test ebx, ebx
je 0x412c70
mov ecx, dword [ebp - 0xf4]
push ecx
lea ecx, [ebp - 0xf0]
call fcn.00410820
mov ecx, dword [ebp - 4]
add esp, 4
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004391bc
mov esp, ebp
pop ebp
ret
push str._Out_of_memory._Please_run_a_smaller_problem_n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
call fcn.00406fe0
mov eax, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push eax
mov dword [0x443e58], 1
call esi
mov ecx, dword [0x448bc8]
add esp, 4
push ecx
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x412d40
mov edi, dword [sym.imp.MSVCR100.dll_clock]
call edi
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov esi, edx
shr esi, 0x1f
add esi, edx
call edi
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, esi
cmp eax, 3
jbe 0x412d24
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push str.Unable_to_get_a_proper_response_n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
call fcn.00406fe0
mov ecx, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], 1
call esi
mov edx, dword [0x448bc8]
add esp, 4
push edx
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x412dc3
mov edi, dword [sym.imp.MSVCR100.dll_clock]
call edi
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov esi, edx
shr esi, 0x1f
add esi, edx
call edi
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, esi
cmp eax, 3
jbe 0x412da7
push 0xe
call dword [sym.imp.MSVCR100.dll_exit]
push str.Wrong_data_type._How_did_this_happen_
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
call fcn.00406fe0
mov edx, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push edx
mov dword [0x443e58], 1
call esi
mov eax, dword [0x448bc8]
add esp, 4
push eax
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x412e13
call fcn.00406b90
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
nop
xchg edx, eax
sbb eax, dword [ecx]
retf