Function at 0x40a730
Capabilities:
Delete file
Manipulate console buffer
Read file on windows
Terminate process
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x26c
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [0x453194]
push ebx
xor edx, edx
add eax, 0xfffffffe
push esi
push edi
mov dword [0x453160], 0x32
mov dword [ebp - 0x228], edx
mov dword [ebp - 0x1e0], edx
mov dword [0x444024], edx
cmp eax, 7
ja case.0x40a775.4
jmp dword [eax*4 + 0x40db14]
mov eax, dword [0x444054]
mov ecx, dword [0x444080]
mov edi, dword [0x448c78]
mov dword [ebp - 0x1ac], eax
mov eax, dword [0x4440ac]
mov dword [ebp - 0x1b4], ecx
mov ecx, dword [0x4440d8]
mov dword [ebp - 0x1b0], eax
mov dword [ebp - 0x1b8], ecx
xor ebx, ebx
mov dword [ebp - 0x1bc], 0x444040
mov esi, 0x448be0
mov edx, dword [ebx + edi]
push edx
call dword [sym.imp.MSVCR100.dll__ftelli64]
mov edi, dword [0x448c78]
mov dword [esi], eax
mov eax, dword [ebp - 0x1bc]
mov dword [esi + 4], edx
mov dword [ebx + edi + 8], eax
add esi, 8
add eax, 0x2c
add esp, 4
add ebx, 0x38
mov dword [ebp - 0x1bc], eax
cmp esi, 0x448c00
jl 0x40a7c1
xor edx, edx
jmp 0x40acae
mov edi, dword [0x448c78]
xor ecx, ecx
mov dword [ebp - 0x1ac], edx
mov dword [edi + 0x10], edx
cmp dword [edi + 4], edx
jle 0x40a83e
mov eax, dword [edi + 0x18]
xor esi, esi
add eax, 4
nop
movsx ebx, word [eax - 2]
add esi, ebx
cmp word [eax], 1
mov dword [edi + 0x10], esi
jne 0x40a835
inc dword [ebp - 0x1ac]
inc ecx
add eax, 0x1c
cmp ecx, dword [edi + 4]
jl 0x40a820
xor ecx, ecx
mov dword [ebp - 0x1b4], edx
mov dword [edi + 0x48], edx
cmp dword [edi + 0x3c], edx
jle 0x40a874
mov eax, dword [edi + 0x50]
xor esi, esi
add eax, 4
movsx ebx, word [eax - 2]
add esi, ebx
cmp word [eax], 1
mov dword [edi + 0x48], esi
jne 0x40a86b
inc dword [ebp - 0x1b4]
inc ecx
add eax, 0x1c
cmp ecx, dword [edi + 0x3c]
jl 0x40a856
xor ecx, ecx
mov dword [ebp - 0x1b0], edx
mov dword [edi + 0x80], edx
cmp dword [edi + 0x74], edx
jle 0x40a8b3
mov eax, dword [edi + 0x88]
xor esi, esi
add eax, 4
movsx ebx, word [eax - 2]
add esi, ebx
cmp word [eax], 1
mov dword [edi + 0x80], esi
jne 0x40a8aa
inc dword [ebp - 0x1b0]
inc ecx
add eax, 0x1c
cmp ecx, dword [edi + 0x74]
jl 0x40a892
xor ecx, ecx
mov dword [ebp - 0x1b8], edx
mov dword [edi + 0xb8], edx
cmp dword [edi + 0xac], edx
jle 0x40a8f8
mov eax, dword [edi + 0xc0]
xor esi, esi
add eax, 4
movsx ebx, word [eax - 2]
add esi, ebx
cmp word [eax], 1
mov dword [edi + 0xb8], esi
jne 0x40a8ec
inc dword [ebp - 0x1b8]
inc ecx
add eax, 0x1c
cmp ecx, dword [edi + 0xac]
jl 0x40a8d4
mov eax, dword [edi + 0x48]
mov esi, dword [edi + 0x10]
cmp esi, eax
ja 0x40a904
mov esi, eax
cmp esi, edx
jne 0x40a915
xor ebx, ebx
mov dword [edi + 0x14], ebx
mov dword [edi + 0x4c], ebx
jmp 0x40acae
push esi
call dword [sym.imp.MSVCR100.dll_malloc]
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x40a9aa
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], ebx
je 0x40a9a2
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 0x40a986
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push esi
push 0
push ebx
call sub.MSVCR100.dll_memset
add esp, 0xc
xor edx, edx
mov dword [edi + 0x14], ebx
mov dword [edi + 0x4c], ebx
jmp 0x40acae
mov ecx, dword [0x443e80]
mov edi, dword [0x448c78]
mov dword [ebp - 0x1ac], edx
cmp ecx, edx
jle 0x40a9f8
mov eax, dword [edi + 0x1c]
add eax, 0x20
nop
cmp word [eax - 2], dx
jl 0x40a9f2
cmp word [eax], 1
jne 0x40a9f2
inc dword [ebp - 0x1ac]
add eax, 0x30
dec ecx
jne 0x40a9e0
mov ecx, dword [0x443ea8]
mov dword [ebp - 0x1b4], edx
cmp ecx, edx
jle 0x40aa28
mov eax, dword [edi + 0x54]
add eax, 0x20
mov edi, edi
cmp word [eax - 2], dx
jl 0x40aa22
cmp word [eax], 1
jne 0x40aa22
inc dword [ebp - 0x1b4]
add eax, 0x30
dec ecx
jne 0x40aa10
mov ebx, dword [0x443ed0]
mov dword [ebp - 0x1b0], edx
cmp ebx, edx
jle 0x40aa5b
mov eax, dword [edi + 0x8c]
add eax, 0x20
mov ecx, ebx
cmp word [eax - 2], dx
jl 0x40aa55
cmp word [eax], 1
jne 0x40aa55
inc dword [ebp - 0x1b0]
add eax, 0x30
dec ecx
jne 0x40aa43
mov esi, dword [0x443ef8]
mov dword [ebp - 0x1b8], edx
cmp esi, edx
jle 0x40aa90
mov eax, dword [edi + 0xc4]
add eax, 0x20
mov ecx, esi
cmp word [eax - 2], dx
jl 0x40aa8a
cmp word [eax], 1
jne 0x40aa8a
inc dword [ebp - 0x1b8]
xor edx, edx
add eax, 0x30
dec ecx
jne 0x40aa76
mov ecx, dword [0x443e80]
mov eax, 8
mov dword [edi + 4], ecx
mov ecx, dword [0x443ea8]
mov dword [0x443e90], eax
mov dword [edi + 0x3c], ecx
mov dword [0x443eb8], eax
mov dword [edi + 0x74], ebx
mov dword [0x443ee0], eax
mov dword [edi + 0xac], esi
mov dword [0x443f08], eax
jmp 0x40acae
movsx ecx, word [0x443ae8]
xor eax, eax
mov dword [ebp - 0x1ac], edx
cmp ecx, edx
jle 0x40aafa
mov esi, dword [0x443af4]
mov edi, 1
cmp dword [esi + eax*4], edi
jne 0x40aaf2
add dword [ebp - 0x1ac], edi
add eax, edi
cmp eax, ecx
jl 0x40aae2
jmp 0x40aaff
mov edi, 1
movsx ecx, word [0x443b78]
xor eax, eax
mov dword [ebp - 0x1b4], edx
cmp ecx, edx
jle 0x40ab29
mov esi, dword [0x443b84]
cmp dword [esi + eax*4], edi
jne 0x40ab23
add dword [ebp - 0x1b4], edi
add eax, edi
cmp eax, ecx
jl 0x40ab18
movsx ecx, word [0x443c08]
xor eax, eax
mov dword [ebp - 0x1b0], edx
cmp ecx, edx
jle 0x40ab53
mov esi, dword [0x443c14]
cmp dword [esi + eax*4], edi
jne 0x40ab4d
add dword [ebp - 0x1b0], edi
add eax, edi
cmp eax, ecx
jl 0x40ab42
movsx ecx, word [0x443c98]
xor eax, eax
mov dword [ebp - 0x1b8], edx
cmp ecx, edx
jle case.0x40a775.4
mov esi, dword [0x443ca4]
cmp dword [esi + eax*4], edi
jne 0x40ab7b
add dword [ebp - 0x1b8], edi
add eax, edi
cmp eax, ecx
jl 0x40ab70
jmp case.0x40a775.4
mov edi, dword [0x448c78]
mov dword [ebp - 0x1ac], edx
cmp dword [edi + 4], edx
jle 0x40abb9
mov eax, dword [edi + 0x30]
mov ecx, dword [edi + 4]
add eax, 4
mov esi, 1
cmp word [eax], si
jne 0x40abb0
add dword [ebp - 0x1ac], esi
add eax, 0x14
sub ecx, esi
jne 0x40aba0
jmp 0x40abbe
mov esi, 1
mov dword [ebp - 0x1b4], edx
cmp dword [edi + 0x3c], edx
jle 0x40abe4
mov eax, dword [edi + 0x68]
mov ecx, dword [edi + 0x3c]
add eax, 4
cmp word [eax], si
jne 0x40abdd
add dword [ebp - 0x1b4], esi
add eax, 0x14
sub ecx, esi
jne 0x40abd2
mov dword [ebp - 0x1b0], edx
cmp dword [edi + 0x74], edx
jle 0x40ac12
mov eax, dword [edi + 0xa0]
mov ecx, dword [edi + 0x74]
add eax, 4
jmp 0x40ac00
cmp word [eax], si
jne 0x40ac0b
add dword [ebp - 0x1b0], esi
add eax, 0x14
sub ecx, esi
jne 0x40ac00
mov dword [ebp - 0x1b8], edx
cmp dword [edi + 0xac], edx
jle 0x40acae
mov eax, dword [edi + 0xd8]
mov ecx, dword [edi + 0xac]
add eax, 4
cmp word [eax], 1
jne 0x40ac3f
inc dword [ebp - 0x1b8]
add eax, 0x14
dec ecx
jne 0x40ac33
jmp 0x40acae
mov eax, dword [0x453180]
mov ecx, dword [0x448664]
mov dword [ebp - 0x1ac], eax
mov eax, dword [0x448ba8]
mov dword [ebp - 0x1b4], ecx
mov ecx, dword [0x448694]
mov dword [ebp - 0x1b0], eax
mov dword [ebp - 0x1b8], ecx
mov dword [0x448be0], edx
mov dword [0x448be4], edx
mov dword [0x448be8], edx
mov dword [0x448bec], edx
mov dword [0x448bf0], edx
mov dword [0x448bf4], edx
mov dword [0x448bf8], edx
mov dword [0x448bfc], edx
mov edi, dword [0x448c78]
mov eax, dword [ebp - 0x1ac]
mov dword [0x444100], eax
cmp dword [ebp - 0x1b4], edx
jg 0x40ad48
push str.You_must_select_at_least_one_level_2_variable__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 0x40ad40
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 0x40ad24
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
cmp dword [ebp - 0x1b0], edx
jg 0x40add7
push str.You_must_select_at_least_one_row_variable__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 0x40adcf
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 0x40adb3
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
cmp dword [ebp - 0x1b8], edx
jg 0x40ae66
push str.You_must_select_at_least_one_column_variable__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 0x40ae5e
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 0x40ae42
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
mov esi, dword [ebp - 0x1ac]
lea ecx, [esi + 1]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, dword [edi + 4]
cdq
sub eax, edx
sar eax, 1
xor edx, edx
mov dword [ebp - 0x1bc], eax
mov eax, dword [edi + 0x3c]
mov dword [0x463b20], edx
mov dword [0x463b14], edx
mov dword [0x453198], edx
mov dword [0x448690], edx
mov dword [ebp - 0x1c4], edx
cmp ecx, eax
jle 0x40aeac
mov eax, ecx
mov edi, dword [edi + 0x74]
mov dword [0x463b1c], eax
cmp eax, edi
jg 0x40aebf
mov eax, edi
mov dword [0x463b1c], eax
lea ecx, [esi + esi*2 + 1]
cmp eax, ecx
jg 0x40aece
mov eax, ecx
mov dword [0x463b1c], eax
lea ecx, [esi + 2]
imul ecx, esi
cmp eax, ecx
jg 0x40aedf
mov eax, ecx
mov dword [0x463b1c], eax
lea ebx, [eax*8]
cmp ebx, edx
jne 0x40aef5
mov dword [ebp - 0x1dc], edx
jmp 0x40af9d
push ebx
call dword [sym.imp.MSVCR100.dll_malloc]
mov edi, eax
add esp, 4
test edi, edi
jne 0x40af8b
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 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], edi
je 0x40af83
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 0x40af67
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push ebx
push 0
push edi
call sub.MSVCR100.dll_memset
add esp, 0xc
mov dword [ebp - 0x1dc], edi
mov esi, dword [0x463b1c]
add esi, esi
add esi, esi
mov dword [ebp - 0x1c0], esi
jne 0x40afbe
mov dword [ebp - 0x1d0], 0
jmp 0x40b066
push esi
call dword [sym.imp.MSVCR100.dll_malloc]
mov edi, eax
add esp, 4
test edi, edi
jne 0x40b054
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 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], edi
je 0x40b04c
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 0x40b030
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push esi
push 0
push edi
call sub.MSVCR100.dll_memset
add esp, 0xc
mov dword [ebp - 0x1d0], edi
mov edx, dword [ebp - 0x1b4]
mov eax, dword [0x463b1c]
mov ecx, dword [ebp - 0x1ac]
mov esi, dword [ebp - 0x1b8]
add eax, edx
add eax, ecx
lea edi, [esi + eax*2]
add edi, dword [ebp - 0x1b0]
add edi, edi
add edi, edi
add edi, edi
jne 0x40b09d
mov dword [ebp - 0x1f0], edi
jmp 0x40b152
push edi
call dword [sym.imp.MSVCR100.dll_malloc]
mov esi, eax
add esp, 4
test esi, esi
jne 0x40b134
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 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 0x40b12c
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 0x40b110
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push edi
push 0
push esi
call sub.MSVCR100.dll_memset
mov ecx, dword [ebp - 0x1ac]
mov edx, dword [ebp - 0x1b4]
add esp, 0xc
mov dword [ebp - 0x1f0], esi
mov eax, dword [ebp - 0x1f0]
lea eax, [eax + ecx*8]
mov dword [ebp - 0x1e4], eax
lea eax, [eax + edx*8]
mov dword [ebp - 0x1c8], eax
add eax, ebx
mov dword [ebp - 0x1d8], eax
add eax, ebx
cmp dword [0x448520], 0
mov dword [ebp - 0x214], eax
lea eax, [eax + ecx*8]
mov ecx, dword [ebp - 0x1b0]
mov dword [ebp - 0x204], eax
lea eax, [eax + edx*8]
lea edx, [eax + ecx*8]
mov dword [ebp - 0x208], eax
mov dword [ebp - 0x20c], edx
je 0x40b306
mov esi, dword [sym.imp.MSVCR100.dll_malloc]
push 0x320
call esi
mov edi, eax
add esp, 4
test edi, edi
jne 0x40b244
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 edi, dword [sym.imp.MSVCR100.dll_remove]
push eax
mov dword [0x443e58], 1
call edi
mov ecx, dword [0x448bc8]
add esp, 4
push ecx
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x40b23c
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 0x40b220
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push 0x320
push 0
push edi
call sub.MSVCR100.dll_memset
add esp, 0xc
push 0x320
mov dword [0x443ad4], edi
call esi
mov edi, eax
add esp, 4
test edi, edi
jne 0x40b2f4
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 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, 4
push edx
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x40b2ec
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
lea ecx, [ecx]
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 0x40b2d0
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push 0x320
push 0
push edi
call sub.MSVCR100.dll_memset
jmp 0x40b473
mov edi, dword [sym.imp.MSVCR100.dll_malloc]
push 0x514
call edi
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x40b3a4
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 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], ebx
je 0x40b39c
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
mov edi, edi
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 0x40b380
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push 0x514
push 0
push ebx
call sub.MSVCR100.dll_memset
add esp, 0xc
push 0x514
mov dword [0x443d30], ebx
call edi
mov edi, eax
add esp, 4
test edi, edi
jne 0x40b454
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 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], edi
je 0x40b44c
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
lea esp, [esp]
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 0x40b430
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push 0x514
push 0
push edi
call sub.MSVCR100.dll_memset
mov esi, dword [sym.imp.MSVCR100.dll_malloc]
mov dword [0x443ad0], edi
mov dword [0x443ad4], ebx
mov dword [0x443e44], edi
mov edi, dword [ebp - 0x1b0]
imul edi, edi, 0x320
add esp, 0xc
test edi, edi
jne 0x40b493
xor ebx, ebx
jmp 0x40b531
push edi
call esi
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x40b525
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 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, 4
push edx
call edi
add esp, 4
cmp dword [0x443e58], ebx
je 0x40b51d
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 0x40b501
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push edi
push 0
push ebx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov edi, dword [ebp - 0x1b8]
imul edi, edi, 0x320
mov dword [0x463b40], ebx
test edi, edi
jne 0x40b54e
xor ebx, ebx
jmp 0x40b5f0
push edi
call esi
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x40b5e4
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 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, 4
push edx
call edi
add esp, 4
cmp dword [0x443e58], ebx
je 0x40b5dc
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
lea esp, [esp]
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 0x40b5c0
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push edi
push 0
push ebx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov edi, dword [0x453180]
imul edi, dword [0x453160]
add edi, edi
add edi, edi
add edi, edi
mov dword [0x448bd0], ebx
jne 0x40b616
mov dword [ebp - 0x1fc], edi
jmp 0x40b6ba
push edi
call esi
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x40b6a8
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 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, 4
push edx
call edi
add esp, 4
cmp dword [0x443e58], ebx
je 0x40b6a0
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 0x40b684
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push edi
push 0
push ebx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov dword [ebp - 0x1fc], ebx
mov edi, dword [0x463b1c]
add edi, dword [0x453180]
add edi, dword [ebp - 0x1bc]
add edi, edi
add edi, edi
add edi, edi
jne 0x40b6df
mov dword [ebp - 0x1f4], edi
jmp 0x40b788
push edi
call esi
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x40b774
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 edi, dword [sym.imp.MSVCR100.dll_remove]
push eax
mov dword [0x443e58], 1
call edi
mov ecx, dword [0x448bc8]
add esp, 4
push ecx
call edi
add esp, 4
cmp dword [0x443e58], ebx
je 0x40b76c
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
lea esp, [esp]
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 0x40b750
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push edi
push 0
push ebx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov dword [ebp - 0x1f4], ebx
mov edi, ebx
mov ecx, dword [0x453180]
lea edx, [edi + ecx*8]
mov ecx, dword [ebp - 0x1ac]
mov dword [ebp - 0x1d4], edx
test ecx, ecx
jle 0x40b7b5
and ecx, 0x1fffffff
add ecx, ecx
xor eax, eax
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x1ac]
test ecx, ecx
fldz
jle 0x40b7f8
mov eax, dword [ebp - 0x1d8]
fld qword [0x448528]
mov edi, dword [ebp - 0x1c8]
fld qword [0x4596d0]
sub edx, eax
sub edi, eax
jmp 0x40b7dd
fxch st(1)
fxch st(2)
fxch st(1)
fxch st(2)
add eax, 8
dec ecx
fst qword [edx + eax - 8]
fxch st(1)
fst qword [eax - 8]
fxch st(2)
fst qword [edi + eax - 8]
jne 0x40b7d7
fstp st(2)
fstp st(1)
mov esi, dword [ebp - 0x1dc]
fstp st(0)
mov edx, dword [ebp - 0x1b0]
push esi
push edx
call fcn.0040e050
mov eax, dword [ebp - 0x1b8]
push esi
push eax
call fcn.0040db50
mov eax, dword [0x4531c4]
mov ecx, dword [0x448698]
lea edi, [eax*4]
add esp, 0x10
mov dword [0x463b20], eax
mov dword [0x448690], ecx
test edi, edi
jne 0x40b849
mov dword [ebp - 0x21c], edi
jmp 0x40b8f6
push edi
call dword [sym.imp.MSVCR100.dll_malloc]
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x40b8e4
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 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, 4
push eax
call edi
add esp, 4
cmp dword [0x443e58], ebx
je 0x40b8dc
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
lea ebx, [ebx]
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 0x40b8c0
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push edi
push 0
push ebx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov dword [ebp - 0x21c], ebx
mov ebx, dword [0x448698]
add ebx, ebx
add ebx, ebx
jne 0x40b90d
mov dword [ebp - 0x218], ebx
jmp 0x40b9b6
push ebx
call dword [sym.imp.MSVCR100.dll_malloc]
mov edi, eax
add esp, 4
test edi, edi
jne 0x40b9a4
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 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, 4
push eax
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x40b99c
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 0x40b980
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push ebx
push 0
push edi
call sub.MSVCR100.dll_memset
add esp, 0xc
mov dword [ebp - 0x218], edi
cmp dword [0x448520], 0
je 0x40b9f1
lea edx, [ebp - 0x258]
mov dword [ebp - 0x1e8], edx
lea eax, [ebp - 0x240]
lea ecx, [ebp - 0x238]
lea edx, [ebp - 0x248]
mov dword [ebp - 0x1bc], eax
mov dword [ebp - 0x224], ecx
mov dword [ebp - 0x22c], edx
jmp 0x40ba35
fldz
lea eax, [ebp - 0x74]
fst qword [ebp - 0x258]
mov dword [ebp - 0x1e8], eax
fst qword [ebp - 0x240]
lea ecx, [ebp - 0x44]
fst qword [ebp - 0x238]
lea edx, [ebp - 0x14]
lea eax, [ebp - 0x54]
fst qword [ebp - 0x248]
fstp qword [ebp - 0x268]
mov dword [ebp - 0x1bc], ecx
mov dword [ebp - 0x224], edx
mov dword [ebp - 0x22c], eax
mov ecx, dword [ebp - 0x1e8]
mov edi, dword [ebp - 0x1f0]
push esi
push 0
push 0
push ecx
xor ebx, ebx
call fcn.004266c0
add esp, 0x10
mov dword [ebp - 0x1f8], eax
mov dword [ebp - 0x1ec], ebx
lea ecx, [ecx]
mov edx, dword [ebp - 0x22c]
mov eax, dword [ebp - 0x224]
mov ecx, dword [ebp - 0x1bc]
mov edi, dword [ebp - 0x1e4]
push esi
push edx
push eax
push ecx
mov ebx, 1
call fcn.004266c0
mov edi, eax
mov eax, dword [0x453194]
add esp, 0x10
cmp eax, 2
je 0x40bab1
cmp eax, 4
je 0x40bab1
mov edx, dword [ebp - 0x1e4]
mov eax, dword [ebp - 0x1b4]
push edx
call fcn.00412ea0
add esp, 4
jmp 0x40bab3
xor eax, eax
test edi, edi
jne 0x40bad2
test eax, eax
jne 0x40bac3
add dword [ebp - 0x1ec], ebx
jmp 0x40bac9
add dword [0x444024], ebx
cmp dword [ebp - 0x1ec], 0
je 0x40ba60
cmp dword [ebp - 0x1f8], 0
je 0x40bb64
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], ebx
call edi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x40bb5c
mov ebx, dword [sym.imp.MSVCR100.dll_clock]
call ebx
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov edi, edx
shr edi, 0x1f
add edi, edx
lea ecx, [ecx]
call ebx
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, edi
cmp eax, 3
jbe 0x40bb40
push 1
call dword [sym.imp.MSVCR100.dll_exit]
test edi, edi
je 0x40bbf4
mov ecx, dword [0x4444b4]
push ecx
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], ebx
call edi
mov eax, dword [0x448bc8]
add esp, 0xc
push eax
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x40bbec
mov ebx, dword [sym.imp.MSVCR100.dll_clock]
call ebx
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov edi, edx
shr edi, 0x1f
add edi, edx
lea ebx, [ebx]
call ebx
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ecx, edi
cmp ecx, 3
jbe 0x40bbd0
push 1
call dword [sym.imp.MSVCR100.dll_exit]
call fcn.004064d0
mov dword [ebp - 0x1ec], eax
mov eax, 0x43b498
mov ecx, str.HLMHCMMDM.STS
call fcn.004066f0
push 0xfffffffffffffff5
mov dword [ebp - 0x1cc], eax
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
mov dword [ebp - 0x1a0], eax
cmp eax, 0xffffffff
je 0x40bc77
lea edx, [ebp - 0x19c]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_GetConsoleScreenBufferInfo]
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x186], eax
test ax, ax
jle 0x40bc56
xor ecx, ecx
add word [ebp - 0x184], bx
mov word [ebp - 0x186], cx
push 0
mov dword [ebp - 0x180], 0xffffffff
call dword [sym.imp.MSVCR100.dll__time64]
add esp, 4
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x1a4], edx
push 5
push 2
mov eax, str.matching_level1_and_leve2_files_at_level3
lea esi, [ebp - 0x1a8]
call fcn.004015d0
add esp, 8
mov edi, edi
cmp dword [0x448520], 0
je 0x40bd46
fld qword [ebp - 0x240]
fld qword [ebp - 0x258]
fcom st(1)
fnstsw ax
test ah, 5
jnp 0x40be01
fcompp
fnstsw ax
test ah, 0x41
je 0x40bd83
fld qword [ebp - 0x238]
mov ebx, dword [0x463b20]
sub esp, 8
lea edx, [ebp - 0x14]
fstp qword [esp]
push edx
call fcn.0040e530
add esp, 0xc
mov dword [ebp - 0x220], eax
cmp eax, 0xffffffff
jne 0x40bea4
cmp dword [0x448520], 0
je 0x40be34
fld qword [ebp - 0x268]
fld qword [ebp - 0x238]
fld st(0)
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x40c0b6
mov eax, dword [ebp - 0x1cc]
fst qword [ebp - 0x268]
sub esp, 8
fstp qword [esp]
push str._Group__12.0lf_not_in_row_file._n
push eax
call dword [sym.imp.MSVCR100.dll_fprintf]
add esp, 0x10
inc dword [ebp - 0x1e0]
jmp 0x40c0b8
lea ecx, [ebp - 0x44]
lea eax, [ebp - 0x74]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40bd70
test dl, dl
je 0x40bd6c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40bd70
add eax, 2
add ecx, 2
test dl, dl
jne 0x40bd50
xor eax, eax
jmp 0x40bd75
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x40bcc3
jle 0x40be05
xor esi, esi
jmp 0x40bd90
mov edx, dword [ebp - 0x1dc]
mov eax, dword [ebp - 0x22c]
mov ecx, dword [ebp - 0x224]
mov edi, dword [ebp - 0x1e4]
push edx
mov edx, dword [ebp - 0x1bc]
push eax
push ecx
push edx
mov ebx, 1
call fcn.004266c0
mov ebx, eax
mov eax, dword [0x453194]
add esp, 0x10
cmp eax, 2
je 0x40bde1
cmp eax, 4
je 0x40bde1
mov eax, dword [ebp - 0x1b4]
push edi
call fcn.00412ea0
add esp, 4
jmp 0x40bde3
xor eax, eax
test ebx, ebx
jne 0x40c180
test eax, eax
jne 0x40bdf2
inc esi
jmp 0x40bdf8
inc dword [0x444024]
test esi, esi
je 0x40bd90
jmp 0x40bc90
fstp st(1)
fstp st(0)
mov eax, dword [ebp - 0x1dc]
mov ecx, dword [ebp - 0x1e8]
mov edi, dword [ebp - 0x1f0]
push eax
push 0
push 0
push ecx
xor ebx, ebx
call fcn.004266c0
add esp, 0x10
test eax, eax
je 0x40bc90
jmp 0x40c180
lea ecx, [ebp - 0x14]
lea eax, [ebp - 0x24]
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40be60
test dl, dl
je 0x40be5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40be60
add eax, 2
add ecx, 2
test dl, dl
jne 0x40be40
xor eax, eax
jmp 0x40be65
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x40c0b8
push 0xd
lea ecx, [ebp - 0x14]
push ecx
lea edx, [ebp - 0x24]
push edx
call dword [sym.imp.MSVCR100.dll_strncpy]
mov ecx, dword [ebp - 0x1cc]
add esp, 0xc
lea eax, [ebp - 0x14]
push eax
push str._Group__s_not_in_row_file._n
push ecx
call dword [sym.imp.MSVCR100.dll_fprintf]
add esp, 0xc
inc dword [ebp - 0x1e0]
jmp 0x40c0b8
mov ecx, dword [ebp - 0x21c]
mov edi, 1
add dword [ecx + eax*4], edi
fld qword [ebp - 0x248]
mov ebx, dword [0x448690]
sub esp, 8
lea edx, [ebp - 0x54]
fstp qword [esp]
push edx
call fcn.0040e4b0
add esp, 0xc
mov dword [ebp - 0x200], eax
cmp eax, 0xffffffff
jne 0x40bf34
cmp dword [0x448520], 0
je 0x40bf10
fld qword [ebp - 0x248]
mov eax, dword [ebp - 0x1cc]
sub esp, 8
fstp qword [esp]
push str._col__12.0lf_not_in_column_file._n
push eax
call dword [sym.imp.MSVCR100.dll_fprintf]
add esp, 0x10
add dword [ebp - 0x1e0], edi
jmp 0x40c0b8
mov edx, dword [ebp - 0x1cc]
lea ecx, [ebp - 0x54]
push ecx
push str._col__s_not_in_column_file._n
push edx
call dword [sym.imp.MSVCR100.dll_fprintf]
add esp, 0xc
add dword [ebp - 0x1e0], edi
jmp 0x40c0b8
mov ecx, dword [0x453160]
cmp dword [ebp - 0x1c4], ecx
jne 0x40bf7d
mov eax, dword [0x453180]
add ecx, ecx
imul eax, ecx
add eax, eax
add eax, eax
add eax, eax
push eax
mov eax, dword [ebp - 0x1fc]
push eax
mov dword [0x453160], ecx
call dword [sym.imp.MSVCR100.dll_realloc]
add esp, 8
test eax, eax
je 0x40c43e
mov dword [ebp - 0x1fc], eax
mov eax, dword [ebp - 0x200]
mov ecx, dword [ebp - 0x218]
add dword [ecx + eax*4], edi
cmp dword [0x448520], 0
je 0x40bfa9
fld qword [ebp - 0x238]
fstp qword [ebp - 0x250]
fld qword [ebp - 0x248]
fstp qword [ebp - 0x260]
jmp 0x40bfce
xor eax, eax
jmp 0x40bfb0
mov cl, byte [ebp + eax - 0x14]
mov byte [ebp + eax - 0x34], cl
add eax, edi
test cl, cl
jne 0x40bfb0
xor eax, eax
mov cl, byte [ebp + eax - 0x54]
mov byte [ebp + eax - 0x64], cl
add eax, edi
test cl, cl
jne 0x40bfc0
add dword [ebp - 0x1c4], edi
cmp dword [0x453154], 0
mov esi, dword [ebp - 0x1ac]
jne 0x40c005
cmp dword [0x453194], 2
je 0x40c005
mov ecx, dword [ebp - 0x1f0]
push ecx
mov eax, esi
call fcn.00412ea0
add esp, 4
test eax, eax
jne 0x40c4c4
xor edx, edx
test esi, esi
jle 0x40c0b8
mov ecx, dword [ebp - 0x1f4]
mov eax, dword [ebp - 0x1f0]
mov edi, dword [ebp - 0x1d4]
mov ebx, dword [ebp - 0x1d8]
sub eax, ecx
mov dword [ebp - 0x1f8], eax
mov eax, dword [ebp - 0x1c8]
sub edi, ecx
sub ebx, ecx
sub eax, ecx
mov dword [ebp - 0x210], eax
mov eax, dword [ebp - 0x1f8]
fld qword [eax + ecx]
mov eax, dword [ebp - 0x1c4]
mov esi, dword [ebp - 0x1fc]
dec eax
imul eax, dword [0x453180]
add eax, edx
fst qword [esi + eax*8]
mov eax, dword [ebp - 0x1d0]
inc dword [eax + edx*4]
fld st(0)
fadd qword [ecx]
fstp qword [ecx]
fld st(0)
fmul st(1)
fadd qword [edi + ecx]
fstp qword [edi + ecx]
fcom qword [ebx + ecx]
fnstsw ax
test ah, 5
jp 0x40c08a
fld st(0)
jmp 0x40c08d
fld qword [ebx + ecx]
mov esi, dword [ebp - 0x210]
fstp qword [ebx + ecx]
fcom qword [esi + ecx]
fnstsw ax
test ah, 0x41
je 0x40c0a5
fstp st(0)
fld qword [esi + ecx]
fstp qword [esi + ecx]
inc edx
add ecx, 8
cmp edx, dword [ebp - 0x1ac]
jl 0x40c041
jmp 0x40c0b8
fstp st(0)
mov ecx, dword [ebp - 0x1dc]
mov edx, dword [ebp - 0x1e8]
mov edi, dword [ebp - 0x1f0]
push ecx
push 0
push 0
push edx
xor ebx, ebx
call fcn.004266c0
mov esi, eax
add esp, 0x10
mov dword [ebp - 0x1f8], esi
test esi, esi
jne 0x40c14b
cmp dword [0x448520], ebx
je 0x40c112
fld qword [ebp - 0x240]
fld qword [ebp - 0x258]
fcom st(1)
fnstsw ax
test ah, 5
jnp 0x40c147
fcompp
fnstsw ax
test ah, 0x41
jne 0x40bc90
jmp 0x40c14b
lea ecx, [ebp - 0x44]
lea eax, [ebp - 0x74]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40c138
test dl, dl
je 0x40c134
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40c138
add eax, 2
add ecx, 2
test dl, dl
jne 0x40c118
xor eax, eax
jmp 0x40c13d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x40bc90
jmp 0x40c14b
fstp st(1)
fstp st(0)
mov edi, dword [ebp - 0x1f4]
mov ecx, dword [ebp - 0x214]
mov eax, dword [ebp - 0x1ac]
push edi
push 1
mov edx, ecx
call fcn.00406220
mov edx, dword [ebp - 0x1c4]
add esp, 8
test edx, edx
jne 0x40c214
test esi, esi
je 0x40bc77
cmp dword [0x453198], 0
jne 0x40c6d4
mov edx, dword [ebp - 0x1cc]
push str.No_groups_left_for_analysis_n
push edx
call dword [sym.imp.MSVCR100.dll_fprintf]
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, 0xc
push ecx
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x40c20c
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 eax, edx
shr eax, 0x1f
add eax, edx
sub eax, esi
cmp eax, 3
jbe 0x40c1f0
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
fild dword [ebp - 0x1c4]
mov ecx, dword [ebp - 0x1ac]
fld1
xor eax, eax
fdivrp st(1)
test ecx, ecx
jle 0x40c23f
fld st(0)
inc eax
fmul qword [edi + eax*8 - 8]
fstp qword [edi + eax*8 - 8]
cmp eax, ecx
jl 0x40c22a
mov edx, dword [ebp - 0x1c4]
fstp st(0)
cmp dword [ebp - 0x228], edx
jg 0x40c24f
mov dword [ebp - 0x228], edx
mov edi, dword [ebp - 0x1ec]
mov esi, dword [sym.imp.MSVCR100.dll_fwrite]
push edi
push 1
lea eax, [ebp - 0x1c4]
push 4
push eax
call esi
add esp, 0x10
cmp eax, 1
jne 0x40c544
push edi
push eax
lea ecx, [ebp - 0x220]
push 4
push ecx
call esi
add esp, 0x10
cmp eax, 1
jne 0x40c5c6
push edi
push eax
lea edx, [ebp - 0x200]
push 4
push edx
call esi
add esp, 0x10
cmp eax, 1
jne 0x40cc68
push edi
push eax
cmp dword [0x448520], ebx
je 0x40c2d5
lea eax, [ebp - 0x250]
push 8
push eax
call esi
add esp, 0x10
cmp eax, 1
jne 0x40cc68
push edi
push eax
push 8
lea ecx, [ebp - 0x260]
push ecx
jmp 0x40c2f1
lea edx, [ebp - 0x34]
push 0xd
push edx
call esi
add esp, 0x10
cmp eax, 1
jne 0x40cc68
push edi
push eax
push 0xd
lea eax, [ebp - 0x64]
push eax
call esi
add esp, 0x10
cmp eax, 1
jne 0x40cc68
mov eax, dword [ebp - 0x1ac]
mov edx, dword [ebp - 0x1f4]
add eax, eax
add eax, eax
add eax, eax
mov ecx, edi
call fcn.004067b0
xor ebx, ebx
cmp dword [ebp - 0x1c4], ebx
jle 0x40c35e
jmp 0x40c330
mov ecx, dword [0x453180]
mov eax, dword [ebp - 0x1ac]
imul ecx, ebx
mov edx, dword [ebp - 0x1fc]
add eax, eax
add eax, eax
lea edx, [edx + ecx*8]
add eax, eax
mov ecx, edi
call fcn.004067b0
inc ebx
cmp ebx, dword [ebp - 0x1c4]
jl 0x40c330
cmp dword [0x448520], 0
push edi
push 1
je 0x40c375
push 8
lea eax, [ebp - 0x240]
push eax
jmp 0x40c37b
push 0xd
lea ecx, [ebp - 0x44]
push ecx
call esi
add esp, 0x10
cmp eax, 1
jne 0x40cc68
mov eax, dword [ebp - 0x1b4]
mov esi, dword [ebp - 0x1e4]
add eax, eax
add eax, eax
add eax, eax
mov ecx, edi
mov edx, esi
call fcn.004067b0
mov ebx, dword [0x453194]
mov edi, dword [ebp - 0x1b4]
cmp ebx, 2
je 0x40c3cd
cmp ebx, 4
je 0x40c3cd
push esi
mov eax, edi
call fcn.00412ea0
add esp, 4
test eax, eax
jne 0x40c648
mov ecx, dword [ebp - 0x204]
push esi
push 1
mov edx, ecx
mov eax, edi
call fcn.00406220
mov edx, dword [ebp - 0x1c4]
mov ecx, dword [ebp - 0x1ac]
add dword [0x463b14], edx
inc dword [0x453198]
add esp, 8
mov dword [ebp - 0x1c4], 0
test ecx, ecx
jle 0x40c41a
mov edi, dword [ebp - 0x1f4]
and ecx, 0x1fffffff
add ecx, ecx
xor eax, eax
rep stosd dword es:[edi], eax
cmp ebx, 8
jne 0x40c432
mov eax, dword [0x463b14]
cmp eax, dword [0x443ae0]
jl 0x40c432
inc dword [ebp - 0x1f8]
cmp dword [ebp - 0x1f8], 0
jmp 0x40c17a
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 ecx, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], edi
call esi
mov edx, dword [0x448bc8]
add esp, 4
push edx
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x40c4bc
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
lea esp, [esp]
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 0x40c4a0
push 3
call dword [sym.imp.MSVCR100.dll_exit]
push edi
push str.There_are_missing_data_at_level__d._Unable_to_continue._n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov ecx, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], edi
call esi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x40c53c
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
lea ecx, [ecx]
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 0x40c520
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
push str._Unable_to_write._Full_disk__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], ebx
je 0x40c5be
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 0x40c5a2
push 5
call dword [sym.imp.MSVCR100.dll_exit]
push str._Unable_to_write._Full_disk__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], ebx
je 0x40c640
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 0x40c624
push 5
call dword [sym.imp.MSVCR100.dll_exit]
mov ecx, dword [ebp - 0x1cc]
push 2
push str.There_are_missing_data_at_level__d._Unable_to_continue._n
push ecx
call dword [sym.imp.MSVCR100.dll_fprintf]
add esp, 0xc
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 0x40c6cc
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 0x40c6b0
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
mov esi, dword [0x4531c4]
lea ebx, [esi - 1]
mov dword [ebp - 0x1e4], 0
test ebx, ebx
js 0x40c7ae
lea ecx, [ebx + 1]
mov dword [ebp - 0x1bc], ecx
mov edi, 1
mov edx, dword [ebp - 0x21c]
cmp dword [edx + ebx*4], 0
jne 0x40c7a0
add dword [ebp - 0x1e4], edi
cmp dword [0x448520], 0
je 0x40c74a
mov edx, dword [0x443ad4]
lea eax, [esi - 1]
lea edi, [edx + ebx*8]
cmp ebx, eax
jge 0x40c743
mov ecx, eax
sub ecx, ebx
add ecx, ecx
lea esi, [edi + 8]
and ecx, 0x3ffffffe
rep movsd dword es:[edi], dword [esi]
mov esi, dword [0x4531c4]
fldz
fstp qword [edx + eax*8]
jmp 0x40c75c
mov eax, dword [0x443d30]
push eax
mov eax, esi
mov ecx, ebx
call fcn.00401ef0
add esp, 4
mov eax, dword [ebp - 0x1b0]
mov edx, dword [ebp - 0x1bc]
mov ecx, dword [0x463b40]
imul edx, eax
sub esi, ebx
mov edi, 1
sub esi, edi
imul esi, eax
add esi, esi
add esi, esi
lea edx, [ecx + edx*8]
add esi, esi
push esi
push edx
mov edx, ebx
imul edx, eax
lea eax, [ecx + edx*8]
push eax
call dword [sym.imp.MSVCR100.dll_memmove]
mov esi, dword [0x4531c4]
add esp, 0xc
sub dword [ebp - 0x1bc], edi
sub ebx, edi
jns 0x40c6fd
sub esi, dword [ebp - 0x1e4]
mov ebx, dword [0x448698]
dec ebx
mov dword [0x463b20], esi
mov dword [ebp - 0x1e8], 0
js 0x40c8d4
lea ecx, [ebx + 1]
mov dword [ebp - 0x1bc], ecx
mov edx, dword [ebp - 0x218]
cmp dword [edx + ebx*4], 0
jg 0x40c877
inc dword [ebp - 0x1e8]
cmp dword [0x448520], 0
je 0x40c824
mov eax, dword [0x448698]
mov edx, dword [0x443e44]
dec eax
lea edi, [edx + ebx*8]
cmp ebx, eax
jge 0x40c81d
mov ecx, eax
sub ecx, ebx
add ecx, ecx
lea esi, [edi + 8]
and ecx, 0x3ffffffe
rep movsd dword es:[edi], dword [esi]
fldz
fstp qword [edx + eax*8]
jmp 0x40c839
mov eax, dword [0x443ad0]
push eax
mov eax, dword [0x448698]
mov ecx, ebx
call fcn.00401ef0
add esp, 4
mov ecx, dword [0x448698]
mov eax, dword [ebp - 0x1b8]
mov edx, dword [ebp - 0x1bc]
sub ecx, ebx
imul edx, eax
dec ecx
imul ecx, eax
add ecx, ecx
add ecx, ecx
add ecx, ecx
push ecx
mov ecx, dword [0x448bd0]
lea edx, [ecx + edx*8]
push edx
mov edx, ebx
imul edx, eax
lea eax, [ecx + edx*8]
push eax
call dword [sym.imp.MSVCR100.dll_memmove]
add esp, 0xc
push 0xff
lea ecx, [ebp - 0x177]
push 0
push ecx
mov byte [ebp - 0x178], 0
call sub.MSVCR100.dll_memset
mov eax, dword [0x448698]
add esp, 0xc
push eax
sub eax, ebx
push eax
lea edx, [ebp - 0x178]
push str.processing__ld__ld_records
push edx
call dword [sym.imp.MSVCR100.dll_sprintf]
push 0
push 0xa
lea eax, [ebp - 0x178]
lea esi, [ebp - 0x1a8]
call fcn.004015d0
dec dword [ebp - 0x1bc]
add esp, 0x18
dec ebx
jns 0x40c7da
mov eax, dword [ebp - 0x1a0]
cmp eax, 0xffffffff
je 0x40c958
mov edx, dword [ebp - 0x186]
lea ecx, [ebp - 0x1bc]
push ecx
movsx ecx, word [ebp - 0x19c]
push edx
mov edx, dword [ebp - 0x194]
push ecx
push edx
push eax
mov dword [ebp - 0x180], 0xffffffff
mov dword [ebp - 0x1bc], 0
call dword [sym.imp.KERNEL32.dll_FillConsoleOutputAttribute]
test eax, eax
je 0x40c944
mov ecx, dword [ebp - 0x186]
movsx edx, word [ebp - 0x19c]
lea eax, [ebp - 0x1bc]
push eax
mov eax, dword [ebp - 0x1a0]
push ecx
push edx
push 0x20
push eax
call dword [sym.imp.KERNEL32.dll_FillConsoleOutputCharacterA]
mov ecx, dword [ebp - 0x198]
mov edx, dword [ebp - 0x1a0]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
mov eax, dword [0x448698]
sub eax, dword [ebp - 0x1e8]
cmp dword [0x463b14], 0x1f40
mov dword [0x448690], eax
jle 0x40ca3b
mov eax, dword [ebp - 0x1cc]
push str._n_nThe_student_version_of_HLM_HCM_will_not_make_mdm_files_this_big__n
push eax
call dword [sym.imp.MSVCR100.dll_fprintf]
mov esi, dword [sym.imp.MSVCR100.dll_clock]
add esp, 8
cmp dword [0x443e58], 0
je 0x40c9cd
call esi
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov edi, edx
shr edi, 0x1f
add edi, edx
call esi
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ecx, edi
cmp ecx, 3
jbe 0x40c9b1
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, 4
push eax
call edi
add esp, 4
cmp dword [0x443e58], 0
je 0x40ca33
call esi
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov edi, edx
shr edi, 0x1f
add edi, edx
call esi
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ecx, edi
cmp ecx, 3
jbe 0x40ca17
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
mov ecx, dword [ebp - 0x1ac]
mov ebx, dword [ebp - 0x214]
xor eax, eax
test ecx, ecx
jle 0x40ca7c
lea ecx, [ecx]
mov edi, dword [ebp - 0x1d0]
mov ecx, dword [edi + eax*4]
mov dword [ebp - 0x210], ecx
test ecx, ecx
je 0x40ca6f
fild dword [ebp - 0x210]
fdivr qword [ebx + eax*8]
fstp qword [ebx + eax*8]
mov ecx, dword [ebp - 0x1ac]
inc eax
cmp eax, ecx
jl 0x40ca50
jmp 0x40ca82
mov edi, dword [ebp - 0x1d0]
mov edx, dword [ebp - 0x1d4]
mov eax, dword [ebp - 0x1c8]
push edx
push eax
push ebx
push ecx
mov ecx, dword [0x45315c]
push ecx
push 1
call dword [sym.imp.MSVCR100.dll___iob_func]
mov esi, dword [ebp - 0x1d8]
add eax, 0x20
push eax
mov edx, esi
mov ecx, edi
call fcn.00407120
mov edx, dword [ebp - 0x1d4]
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [ebp - 0x1ac]
add esp, 0x1c
push edx
mov edx, dword [0x45315c]
push eax
mov eax, dword [ebp - 0x1cc]
push ebx
push ecx
push edx
push 1
push eax
mov edx, esi
mov ecx, edi
call fcn.00407120
xor eax, eax
add esp, 0x1c
cmp dword [ebp - 0x1b4], eax
jle 0x40cb21
mov ecx, dword [ebp - 0x204]
lea esp, [esp]
fild dword [0x453198]
inc eax
fdivr qword [ecx + eax*8 - 8]
fstp qword [ecx + eax*8 - 8]
mov edx, dword [0x453198]
mov dword [edi + eax*4 - 4], edx
cmp eax, dword [ebp - 0x1b4]
jl 0x40cb00
mov edx, dword [0x463b40]
mov ecx, dword [ebp - 0x1b0]
xor edi, edi
mov dword [ebp - 0x1c0], edi
cmp dword [0x463b20], edi
jle 0x40cb78
lea ecx, [ecx]
xor eax, eax
cmp ecx, edi
jle 0x40cb63
mov ecx, dword [ebp - 0x208]
fld qword [ecx + eax*8]
inc eax
fadd qword [edx]
add edx, 8
fstp qword [ecx + eax*8 - 8]
mov ecx, dword [ebp - 0x1b0]
cmp eax, ecx
jl 0x40cb46
mov eax, dword [ebp - 0x1c0]
inc eax
mov dword [ebp - 0x1c0], eax
cmp eax, dword [0x463b20]
jl 0x40cb40
xor eax, eax
cmp ecx, edi
jle 0x40cb9d
mov edi, edi
fild dword [0x463b20]
mov ecx, dword [ebp - 0x208]
inc eax
fdivr qword [ecx + eax*8 - 8]
fstp qword [ecx + eax*8 - 8]
cmp eax, dword [ebp - 0x1b0]
jl 0x40cb80
mov edx, dword [0x448bd0]
mov ecx, dword [ebp - 0x1b8]
mov dword [ebp - 0x1c0], edi
cmp dword [0x448690], edi
jle 0x40cbf2
xor eax, eax
cmp ecx, edi
jle 0x40cbdd
lea ecx, [ecx]
fld qword [edx]
mov ecx, dword [ebp - 0x20c]
fadd qword [ecx + eax*8]
inc eax
add edx, 8
fstp qword [ecx + eax*8 - 8]
mov ecx, dword [ebp - 0x1b8]
cmp eax, ecx
jl 0x40cbc0
mov eax, dword [ebp - 0x1c0]
inc eax
mov dword [ebp - 0x1c0], eax
cmp eax, dword [0x448690]
jl 0x40cbb7
xor eax, eax
cmp ecx, edi
jle 0x40cc1d
jmp 0x40cc00
fild dword [0x448690]
mov ecx, dword [ebp - 0x20c]
inc eax
fdivr qword [ecx + eax*8 - 8]
fstp qword [ecx + eax*8 - 8]
cmp eax, dword [ebp - 0x1b8]
jl 0x40cc00
mov edi, dword [ebp - 0x1ec]
push edi
call dword [sym.imp.MSVCR100.dll_fflush]
add esp, 4
push 0
push 0
push 0
push edi
call dword [sym.imp.MSVCR100.dll__fseeki64]
lea eax, [ebp - 0x24]
push str.SSHC3Y
push eax
call dword [sym.imp.MSVCR100.dll_sprintf]
mov ecx, dword [0x44872c]
mov ebx, dword [sym.imp.MSVCR100.dll_fwrite]
push ecx
push 1
lea edx, [ebp - 0x24]
push 6
push edx
call ebx
add esp, 0x28
cmp eax, 1
je 0x40cc77
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
push str.8.00
call dword [sym.imp.MSVCR100.dll_atof]
fstp qword [0x443d28]
mov eax, dword [0x44872c]
add esp, 4
push eax
push 1
push 8
push 0x443d28
call ebx
add esp, 0x10
cmp eax, 1
je 0x40ccb3
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov ecx, dword [0x44872c]
push ecx
push 1
lea edx, [ebp - 0x1ac]
push 4
push edx
call ebx
add esp, 0x10
cmp eax, 1
je 0x40ccde
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov eax, dword [0x44872c]
push eax
push 1
lea ecx, [ebp - 0x1b4]
push 4
push ecx
call ebx
add esp, 0x10
cmp eax, 1
je 0x40cd08
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov edx, dword [0x44872c]
push edx
push 1
lea eax, [ebp - 0x1b0]
push 4
push eax
call ebx
add esp, 0x10
cmp eax, 1
je 0x40cd33
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov ecx, dword [0x44872c]
push ecx
push 1
lea edx, [ebp - 0x1b8]
push 4
push edx
call ebx
add esp, 0x10
cmp eax, 1
je 0x40cd5e
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov eax, dword [0x44872c]
push eax
push 1
push 4
push 0x463b14
call ebx
add esp, 0x10
cmp eax, 1
je 0x40cd86
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov ecx, dword [0x44872c]
push ecx
push 1
push 4
push 0x453198
call ebx
add esp, 0x10
cmp eax, 1
je 0x40cdaf
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov edx, dword [0x44872c]
push edx
push 1
push 4
push 0x463b20
call ebx
add esp, 0x10
cmp eax, 1
je 0x40cdd8
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov eax, dword [0x44872c]
push eax
push 1
push 4
push 0x448690
call ebx
add esp, 0x10
cmp eax, 1
je 0x40ce00
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov ecx, dword [0x44872c]
push ecx
push 1
push 4
push 0x453154
call ebx
add esp, 0x10
cmp eax, 1
je 0x40ce29
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov edx, dword [0x44872c]
push edx
push 1
push 4
push 0x448660
mov dword [0x448660], 1
call ebx
add esp, 0x10
cmp eax, 1
je 0x40ce5c
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
cmp dword [0x448520], 0
je 0x40ce74
mov eax, dword [0x453194]
neg eax
mov dword [ebp - 0x1c0], eax
jmp 0x40ce80
mov ecx, dword [0x453194]
mov dword [ebp - 0x1c0], ecx
mov edx, dword [0x44872c]
push edx
push 1
lea eax, [ebp - 0x1c0]
push 4
push eax
call ebx
add esp, 0x10
cmp eax, 1
je 0x40ceab
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov ecx, dword [0x44872c]
push ecx
push 1
lea edx, [ebp - 0x228]
push 4
push edx
call ebx
add esp, 0x10
cmp eax, 1
je 0x40ced6
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov eax, dword [ebp - 0x1ac]
mov ecx, dword [0x44872c]
mov edx, dword [0x45315c]
inc eax
imul eax, eax, 0xd
call fcn.004067b0
mov eax, dword [ebp - 0x1b4]
mov ecx, dword [0x44872c]
mov edx, dword [0x448bc0]
inc eax
imul eax, eax, 0xd
call fcn.004067b0
mov eax, dword [ebp - 0x1b0]
mov ecx, dword [0x44872c]
mov edx, dword [0x4444d0]
inc eax
imul eax, eax, 0xd
call fcn.004067b0
mov eax, dword [ebp - 0x1b8]
mov ecx, dword [0x44872c]
mov edx, dword [0x4595a0]
inc eax
imul eax, eax, 0xd
call fcn.004067b0
mov eax, dword [0x44872c]
push eax
push 1
lea ecx, [ebp - 0x1c0]
push 4
push ecx
mov dword [ebp - 0x1c0], 0x104
call ebx
add esp, 0x10
cmp eax, 1
je 0x40cf76
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov edx, dword [0x44872c]
mov eax, dword [0x4444b0]
push edx
push 1
push 0x104
push eax
call ebx
add esp, 0x10
cmp eax, 1
je 0x40cfa3
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov ecx, dword [0x44872c]
mov edx, dword [0x4444b4]
push ecx
push 1
push 0x104
push edx
call ebx
add esp, 0x10
cmp eax, 1
je 0x40cfd1
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov eax, dword [0x44872c]
mov ecx, dword [0x4444b8]
push eax
push 1
push 0x104
push ecx
call ebx
add esp, 0x10
cmp eax, 1
je 0x40cffe
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov edx, dword [0x44872c]
mov eax, dword [0x4444bc]
push edx
push 1
push 0x104
push eax
call ebx
add esp, 0x10
cmp eax, 1
je 0x40d02b
mov eax, 0x43b54c
mov ebx, 5
call fcn.004016c0
mov ecx, dword [0x448c78]
mov edx, dword [ecx]
mov ebx, dword [sym.imp.MSVCR100.dll_fclose]
push edx
call ebx
mov eax, dword [0x448c78]
mov ecx, dword [eax + 0x38]
add esp, 4
push ecx
call ebx
mov eax, dword [ebp - 0x1ac]
mov ecx, dword [0x44872c]
mov edx, dword [ebp - 0x214]
add eax, eax
add eax, eax
add esp, 4
add eax, eax
call fcn.004067b0
mov eax, dword [ebp - 0x1b4]
mov ecx, dword [0x44872c]
mov edx, dword [ebp - 0x204]
add eax, eax
add eax, eax
add eax, eax
call fcn.004067b0
mov eax, dword [ebp - 0x1b0]
mov ecx, dword [0x44872c]
mov edx, dword [ebp - 0x208]
add eax, eax
add eax, eax
add eax, eax
call fcn.004067b0
mov eax, dword [ebp - 0x1b8]
mov ecx, dword [0x44872c]
mov edx, dword [ebp - 0x20c]
add eax, eax
add eax, eax
add eax, eax
call fcn.004067b0
cmp dword [0x448520], 0
mov eax, dword [0x463b20]
mov ecx, dword [0x44872c]
je 0x40d0e3
mov edx, dword [0x443ad4]
add eax, eax
add eax, eax
add eax, eax
jmp 0x40d0ec
mov edx, dword [0x443d30]
imul eax, eax, 0xd
call fcn.004067b0
mov eax, dword [0x463b20]
imul eax, dword [ebp - 0x1b0]
mov ecx, dword [0x44872c]
mov edx, dword [0x463b40]
add eax, eax
add eax, eax
add eax, eax
call fcn.004067b0
cmp dword [0x448520], 0
mov eax, dword [0x448690]
mov ecx, dword [0x44872c]
je 0x40d136
mov edx, dword [0x443e44]
add eax, eax
add eax, eax
add eax, eax
jmp 0x40d13f
mov edx, dword [0x443ad0]
imul eax, eax, 0xd
call fcn.004067b0
mov eax, dword [0x448690]
imul eax, dword [ebp - 0x1b8]
mov ecx, dword [0x44872c]
mov edx, dword [0x448bd0]
add eax, eax
add eax, eax
add eax, eax
call fcn.004067b0
mov ebx, dword [ebp - 0x1b4]
test ebx, ebx
jle 0x40d1c1
mov ecx, dword [ebp - 0x1d4]
fld qword [0x448528]
mov edx, dword [ebp - 0x1c8]
fld qword [0x4596d0]
fldz
sub ecx, esi
sub edx, dword [ebp - 0x1d8]
mov eax, esi
jmp 0x40d19b
fxch st(1)
fxch st(2)
fst qword [eax + ecx]
add eax, 8
dec ebx
fxch st(2)
fst qword [eax - 8]
fxch st(1)
fst qword [eax + edx - 8]
jne 0x40d197
mov ebx, dword [ebp - 0x1b4]
fstp st(1)
mov esi, dword [ebp - 0x1d8]
fstp st(0)
fstp st(0)
cmp dword [0x453198], 0
mov dword [ebp - 0x1c0], 0
jle 0x40d529
jmp 0x40d1e0
mov esi, dword [sym.imp.MSVCR100.dll_fread]
push edi
push 1
lea edx, [ebp - 0x1c4]
push 4
push edx
call esi
mov eax, dword [0x44872c]
push eax
push 1
lea ecx, [ebp - 0x1c4]
push 4
push ecx
call dword [sym.imp.MSVCR100.dll_fwrite]
add esp, 0x20
cmp eax, 1
jne 0x40cc68
push edi
push eax
lea edx, [ebp - 0x220]
push 4
push edx
call esi
push edi
push 1
lea eax, [ebp - 0x200]
push 4
push eax
call esi
add esp, 0x20
cmp dword [ebp - 0x1e4], 0
je 0x40d292
cmp dword [0x448520], 0
push edi
push 1
je 0x40d255
push 8
lea ecx, [ebp - 0x250]
push ecx
jmp 0x40d25b
push 0xd
lea edx, [ebp - 0x34]
push edx
call esi
fld qword [ebp - 0x250]
mov ebx, dword [0x463b20]
add esp, 0x10
sub esp, 8
lea eax, [ebp - 0x34]
fstp qword [esp]
push eax
call fcn.0040e530
mov edi, dword [ebp - 0x1ec]
mov ebx, dword [sym.imp.MSVCR100.dll__fseeki64]
add esp, 0xc
mov dword [ebp - 0x220], eax
jmp 0x40d2b1
cmp dword [0x448520], 0
mov ebx, dword [sym.imp.MSVCR100.dll__fseeki64]
push 1
push 0
je 0x40d2a9
push 8
jmp 0x40d2ab
push 0xd
push edi
call ebx
add esp, 0x10
cmp dword [ebp - 0x1e8], 0
je 0x40d308
cmp dword [0x448520], 0
push edi
push 1
je 0x40d2d1
push 8
lea ecx, [ebp - 0x260]
push ecx
jmp 0x40d2d7
push 0xd
lea edx, [ebp - 0x64]
push edx
call esi
fld qword [ebp - 0x260]
mov ebx, dword [0x448690]
add esp, 0x10
sub esp, 8
lea eax, [ebp - 0x64]
fstp qword [esp]
push eax
call fcn.0040e4b0
mov edi, dword [ebp - 0x1ec]
add esp, 0xc
mov dword [ebp - 0x200], eax
jmp 0x40d321
cmp dword [0x448520], 0
push 1
push 0
je 0x40d319
push 8
jmp 0x40d31b
push 0xd
push edi
call ebx
add esp, 0x10
mov ecx, dword [0x44872c]
mov ebx, dword [sym.imp.MSVCR100.dll_fwrite]
push ecx
push 1
lea edx, [ebp - 0x220]
push 4
push edx
call ebx
add esp, 0x10
cmp eax, 1
jne 0x40cc68
mov eax, dword [0x44872c]
push eax
push 1
lea ecx, [ebp - 0x200]
push 4
push ecx
call ebx
add esp, 0x10
cmp eax, 1
jne 0x40cc68
mov eax, dword [ebp - 0x1ac]
mov ebx, dword [ebp - 0x1dc]
add eax, eax
add eax, eax
add eax, eax
je 0x40d384
push edi
push 1
push eax
push ebx
call esi
add esp, 0x10
mov eax, dword [ebp - 0x1ac]
mov ecx, dword [0x44872c]
add eax, eax
add eax, eax
add eax, eax
mov edx, ebx
call fcn.004067b0
cmp dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1bc], 0
jle 0x40d3f6
mov eax, dword [ebp - 0x1ac]
add eax, eax
add eax, eax
add eax, eax
je 0x40d3c8
push edi
push 1
push eax
push ebx
call esi
add esp, 0x10
mov eax, dword [ebp - 0x1ac]
mov ecx, dword [0x44872c]
add eax, eax
add eax, eax
add eax, eax
mov edx, ebx
call fcn.004067b0
mov eax, dword [ebp - 0x1bc]
inc eax
mov dword [ebp - 0x1bc], eax
cmp eax, dword [ebp - 0x1c4]
jl 0x40d3b0
cmp dword [0x448520], 0
push edi
push 1
je 0x40d41f
lea edx, [ebp - 0x238]
push 8
push edx
call esi
mov eax, dword [0x44872c]
push eax
push 1
push 8
lea ecx, [ebp - 0x238]
jmp 0x40d434
lea edx, [ebp - 0x14]
push 0xd
push edx
call esi
mov eax, dword [0x44872c]
push eax
push 1
push 0xd
lea ecx, [ebp - 0x14]
push ecx
call dword [sym.imp.MSVCR100.dll_fwrite]
add esp, 0x20
cmp eax, 1
jne 0x40cc68
mov eax, dword [ebp - 0x1b4]
add eax, eax
add eax, eax
add eax, eax
je 0x40d45f
push edi
push 1
push eax
push ebx
call esi
add esp, 0x10
mov eax, dword [ebp - 0x1b4]
mov ecx, dword [0x44872c]
mov edx, dword [ebp - 0x1dc]
add eax, eax
add eax, eax
add eax, eax
call fcn.004067b0
mov ebx, dword [ebp - 0x1b4]
xor esi, esi
test ebx, ebx
jle 0x40d50a
mov edx, dword [ebp - 0x1d4]
mov ecx, dword [ebp - 0x1d8]
mov eax, dword [ebp - 0x1dc]
sub eax, edx
sub edx, ecx
mov dword [ebp - 0x1bc], edx
mov edx, dword [ebp - 0x1c8]
mov dword [ebp - 0x210], eax
sub edx, ecx
jmp 0x40d4c0
mov eax, dword [ebp - 0x1bc]
mov ebx, dword [ebp - 0x210]
add eax, ecx
fld qword [eax + ebx]
fld st(0)
fmul st(1)
fadd qword [eax]
fstp qword [eax]
fcom qword [ecx]
fnstsw ax
test ah, 5
jp 0x40d4e6
fld st(0)
jmp 0x40d4e8
fld qword [ecx]
fstp qword [ecx]
fcom qword [ecx + edx]
fnstsw ax
test ah, 0x41
je 0x40d4f9
fstp st(0)
fld qword [ecx + edx]
fstp qword [ecx + edx]
mov ebx, dword [ebp - 0x1b4]
inc esi
add ecx, 8
cmp esi, ebx
jl 0x40d4c0
mov eax, dword [ebp - 0x1c0]
inc eax
mov dword [ebp - 0x1c0], eax
cmp eax, dword [0x453198]
jl 0x40d1e0
mov esi, dword [ebp - 0x1d8]
mov edi, dword [ebp - 0x1d4]
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [ebp - 0x204]
mov eax, dword [0x448bc0]
push edi
push ecx
push edx
push ebx
push eax
push 2
call dword [sym.imp.MSVCR100.dll___iob_func]
mov ebx, dword [ebp - 0x1d0]
add eax, 0x20
push eax
mov edx, esi
mov ecx, ebx
call fcn.00407120
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [ebp - 0x204]
mov eax, dword [ebp - 0x1b4]
add esp, 0x1c
push edi
push ecx
mov ecx, dword [0x448bc0]
push edx
mov edx, dword [ebp - 0x1cc]
push eax
push ecx
push 2
push edx
mov edx, esi
mov ecx, ebx
call fcn.00407120
mov eax, dword [ebp - 0x1b0]
add esp, 0x1c
test eax, eax
jle 0x40d5e1
fld qword [0x448528]
mov edx, edi
mov edi, dword [ebp - 0x1c8]
fld qword [0x4596d0]
fldz
sub edx, esi
mov ecx, esi
sub edi, esi
jmp 0x40d5c1
fxch st(1)
fxch st(2)
fst qword [ecx + edx]
add ecx, 8
dec eax
fxch st(2)
fst qword [ecx - 8]
fxch st(1)
fst qword [ecx + edi - 8]
jne 0x40d5bd
mov eax, dword [ebp - 0x1b0]
fstp st(1)
fstp st(0)
fstp st(0)
cmp dword [0x463b20], 0
mov edi, dword [0x463b40]
mov dword [ebp - 0x1c0], 0
jle 0x40d679
lea ebx, [ebx]
xor ebx, ebx
test eax, eax
jle 0x40d664
mov ecx, dword [ebp - 0x1d8]
mov esi, dword [ebp - 0x1d4]
mov edx, dword [ebp - 0x1c8]
sub esi, ecx
sub edx, ecx
lea esp, [esp]
fld qword [edi]
fmul st(0), st(0)
fadd qword [ecx + esi]
fstp qword [ecx + esi]
fld qword [ecx]
fcomp qword [edi]
fnstsw ax
test ah, 0x41
jne 0x40d639
fld qword [edi]
jmp 0x40d63b
fld qword [ecx]
fstp qword [ecx]
fld qword [ecx + edx]
fcomp qword [edi]
fnstsw ax
test ah, 5
jp 0x40d64d
fld qword [edi]
jmp 0x40d650
fld qword [ecx + edx]
fstp qword [ecx + edx]
mov eax, dword [ebp - 0x1b0]
inc ebx
add edi, 8
add ecx, 8
cmp ebx, eax
jl 0x40d620
mov ecx, dword [ebp - 0x1c0]
inc ecx
mov dword [ebp - 0x1c0], ecx
cmp ecx, dword [0x463b20]
jl 0x40d600
xor ecx, ecx
test eax, eax
jle 0x40d698
mov edx, dword [ebp - 0x1d0]
mov eax, dword [0x463b20]
mov dword [edx + ecx*4], eax
mov eax, dword [ebp - 0x1b0]
inc ecx
cmp ecx, eax
jl 0x40d685
mov ebx, dword [ebp - 0x1d4]
mov edi, dword [ebp - 0x1c8]
mov ecx, dword [ebp - 0x208]
mov edx, dword [0x4444d0]
push ebx
push edi
push ecx
push eax
push edx
push 3
call dword [sym.imp.MSVCR100.dll___iob_func]
mov esi, dword [ebp - 0x1d8]
mov ecx, dword [ebp - 0x1d0]
add eax, 0x20
push eax
mov edx, esi
call fcn.00407120
mov eax, dword [ebp - 0x208]
mov ecx, dword [ebp - 0x1b0]
mov edx, dword [0x4444d0]
add esp, 0x1c
push ebx
push edi
push eax
mov eax, dword [ebp - 0x1cc]
push ecx
mov ecx, dword [ebp - 0x1d0]
push edx
push 3
push eax
mov edx, esi
call fcn.00407120
mov eax, dword [ebp - 0x1b8]
add esp, 0x1c
test eax, eax
jle 0x40d74d
fld qword [0x448528]
mov edx, ebx
fld qword [0x4596d0]
sub edx, esi
fldz
mov ecx, esi
sub edi, esi
jmp 0x40d72d
fxch st(1)
fxch st(2)
fst qword [edx + ecx]
add ecx, 8
dec eax
fxch st(2)
fst qword [ecx - 8]
fxch st(1)
fst qword [edi + ecx - 8]
jne 0x40d729
mov eax, dword [ebp - 0x1b8]
fstp st(1)
fstp st(0)
fstp st(0)
cmp dword [0x448690], 0
mov edi, dword [0x448bd0]
mov dword [ebp - 0x1c0], 0
jle 0x40d7e3
xor ebx, ebx
test eax, eax
jle 0x40d7ce
mov eax, dword [ebp - 0x1d4]
mov edx, dword [ebp - 0x1c8]
sub eax, esi
mov ecx, esi
mov dword [ebp - 0x1bc], eax
sub edx, esi
fld qword [edi]
mov eax, dword [ebp - 0x1bc]
fmul st(0), st(0)
fadd qword [ecx + eax]
fstp qword [ecx + eax]
fld qword [ecx]
fcomp qword [edi]
fnstsw ax
test ah, 0x41
jne 0x40d7a3
fld qword [edi]
jmp 0x40d7a5
fld qword [ecx]
fstp qword [ecx]
fld qword [ecx + edx]
fcomp qword [edi]
fnstsw ax
test ah, 5
jp 0x40d7b7
fld qword [edi]
jmp 0x40d7ba
fld qword [ecx + edx]
fstp qword [ecx + edx]
mov eax, dword [ebp - 0x1b8]
inc ebx
add edi, 8
add ecx, 8
cmp ebx, eax
jl 0x40d784
mov ecx, dword [ebp - 0x1c0]
inc ecx
mov dword [ebp - 0x1c0], ecx
cmp ecx, dword [0x448690]
jl 0x40d766
xor ecx, ecx
test eax, eax
jle 0x40d802
mov edx, dword [ebp - 0x1d0]
mov eax, dword [0x448690]
mov dword [edx + ecx*4], eax
mov eax, dword [ebp - 0x1b8]
inc ecx
cmp ecx, eax
jl 0x40d7ef
mov esi, dword [ebp - 0x1d4]
mov edi, dword [ebp - 0x1c8]
mov ecx, dword [ebp - 0x20c]
mov edx, dword [0x4595a0]
push esi
push edi
push ecx
push eax
push edx
push 4
call dword [sym.imp.MSVCR100.dll___iob_func]
mov ebx, dword [ebp - 0x1d8]
mov ecx, dword [ebp - 0x1d0]
add eax, 0x20
push eax
mov edx, ebx
call fcn.00407120
mov eax, dword [ebp - 0x20c]
mov ecx, dword [ebp - 0x1b8]
mov edx, dword [0x4595a0]
add esp, 0x1c
push esi
push edi
push eax
mov eax, dword [ebp - 0x1cc]
push ecx
mov ecx, dword [ebp - 0x1d0]
push edx
push 4
push eax
mov edx, ebx
call fcn.00407120
mov eax, dword [0x463b40]
mov edi, dword [sym.imp.MSVCR100.dll_free]
add esp, 0x1c
test eax, eax
je 0x40d886
push eax
call edi
add esp, 4
mov eax, dword [0x448bd0]
test eax, eax
je 0x40d895
push eax
call edi
add esp, 4
cmp dword [0x448520], 0
je 0x40d8b4
mov eax, dword [0x443ad4]
test eax, eax
je 0x40d8ad
push eax
call edi
add esp, 4
mov eax, dword [0x443e44]
jmp 0x40d8c8
mov eax, dword [0x443d30]
test eax, eax
je 0x40d8c3
push eax
call edi
add esp, 4
mov eax, dword [0x443ad0]
test eax, eax
je 0x40d8d2
push eax
call edi
add esp, 4
mov eax, dword [ebp - 0x21c]
test eax, eax
je 0x40d8e2
push eax
call edi
add esp, 4
mov eax, dword [ebp - 0x218]
test eax, eax
je 0x40d8f2
push eax
call edi
add esp, 4
mov eax, dword [ebp - 0x1fc]
test eax, eax
je 0x40d902
push eax
call edi
add esp, 4
mov eax, dword [ebp - 0x1f4]
test eax, eax
je 0x40d912
push eax
call edi
add esp, 4
mov eax, dword [ebp - 0x1f0]
test eax, eax
je 0x40d922
push eax
call edi
add esp, 4
mov eax, dword [ebp - 0x1dc]
test eax, eax
je 0x40d932
push eax
call edi
add esp, 4
mov eax, dword [0x453194]
add eax, 0xfffffffe
cmp eax, 6
ja case.0x40d943.4
jmp dword [eax*4 + 0x40db34]
mov eax, dword [0x444370]
test eax, eax
je case.0x40d943.4
push eax
call edi
add esp, 4
jmp case.0x40d943.4
mov esi, 0x444064
mov eax, dword [esi - 0x20]
test eax, eax
je 0x40d974
push eax
call edi
add esp, 4
mov eax, dword [esi]
test eax, eax
je 0x40d980
push eax
call edi
add esp, 4
add esi, 0x2c
cmp esi, 0x444114
jl 0x40d967
jmp case.0x40d943.4
mov esi, dword [0x448c78]
mov eax, dword [esi + 0x14]
test eax, eax
je 0x40d9a3
push eax
call edi
add esp, 4
add esi, 0x18
mov ebx, 4
jmp 0x40d9b0
mov eax, dword [esi]
test eax, eax
je 0x40d9bc
push eax
call edi
add esp, 4
add esi, 0x38
dec ebx
jne 0x40d9b0
jmp case.0x40d943.4
mov esi, dword [0x448c78]
add esi, 0x1c
mov ebx, 4
mov eax, dword [esi]
test eax, eax
je 0x40d9de
push eax
call edi
add esp, 4
add esi, 0x38
dec ebx
jne 0x40d9d2
jmp case.0x40d943.4
mov esi, 0x443af4
jmp 0x40d9f0
mov eax, dword [esi - 8]
test eax, eax
je 0x40d9fd
push eax
call edi
add esp, 4
mov eax, dword [esi]
test eax, eax
je 0x40da09
push eax
call edi
add esp, 4
add esi, 0x90
cmp esi, 0x443ca4
jl 0x40d9f0
mov ecx, dword [ebp - 0x1ec]
push ecx
call fcn.00406690
mov edx, dword [0x44872c]
mov ebx, dword [sym.imp.MSVCR100.dll_fclose]
add esp, 4
push edx
call ebx
mov eax, dword [0x4444b0]
add esp, 4
test eax, eax
je 0x40da47
push eax
call edi
add esp, 4
mov eax, dword [ebp - 0x1d0]
test eax, eax
je 0x40da57
push eax
call edi
add esp, 4
mov eax, dword [0x4444d4]
test eax, eax
je 0x40da66
push eax
call edi
add esp, 4
mov eax, dword [ebp - 0x1cc]
mov esi, dword [sym.imp.MSVCR100.dll_fprintf]
push 0x443f20
push str.MDM_template:___s_n
push eax
call esi
mov edi, dword [ebp - 0x1cc]
add esp, 0xc
push 0x463b60
push str.MDM_file_name:__s_n
push edi
call esi
mov ecx, dword [0x4531b4]
mov edx, dword [0x4531ac]
mov eax, dword [0x4531b0]
add esp, 0xc
add ecx, 0x76c
push ecx
push edx
lea ecx, [eax*4 + 0x4444e0]
push ecx
push str.Date:___________s__d___d_n
push edi
call esi
mov edx, dword [0x4531a0]
mov eax, dword [0x4531a4]
mov ecx, dword [0x4531a8]
add esp, 0x14
push edx
push eax
push ecx
push str.Time:___________02d:_02d:_02d_n
push edi
call esi
add esp, 0x14
push edi
call ebx
add esp, 4
cmp dword [ebp - 0x1e0], 0
je 0x40db00
push str._nThere_are_extra_messages_in_HLMHCM.STS.__Please_examine_this_file._n_n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004391bc
mov esp, ebp
pop ebp
ret