Function at 0x4198a0
Capabilities:
Delete file
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x78
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x10]
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov esi, dword [ebp + 8]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp + 0x18]
dec eax
push edi
mov edi, edx
mov edx, dword [0x443944]
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x40], 0
je 0x419915
dec eax
je 0x4198fc
dec eax
jne 0x419931
mov ecx, dword [0x43ed24]
mov dl, byte [0x43ed28]
mov eax, dword [str.Delta_0_]
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], dl
jmp 0x41992e
mov ecx, dword [0x43ed18]
mov dl, byte [0x43ed1c]
mov eax, dword [str.Omega_0_]
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], dl
jmp 0x41992e
mov cx, word [0x43ed10]
mov dl, byte [0x43ed12]
mov eax, dword [str.Tau_0_]
mov word [ebp - 0x1c], cx
mov byte [ebp - 0x1a], dl
mov dword [ebp - 0x20], eax
push str.Do_you_wish_to:_n___Set_all_off_diagonal_elements_to_0___Enter_1._n___Manually_reset_values________________Enter_2._n___Automatic_fixup______________________Enter_3._n___Quit_________________________________Enter_4._n___Your_choice_
push 0x444520
call dword [sym.imp.MSVCR100.dll_sprintf]
lea eax, [edi - 1]
add esp, 8
cmp eax, 3
ja 0x419951
cmp edi, 2
jne 0x41999a
call dword [sym.imp.MSVCR100.dll___iob_func]
add eax, 0x20
cmp dword [0x453188], eax
je 0x419974
lea ecx, [ebp - 0x20]
push ecx
push str._n__s_n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 8
mov edx, dword [ebp + 0x18]
push ebx
push esi
push 1
dec edx
push 0
push edx
call fcn.00423820
add esp, 0x14
push 4
push 1
mov edi, 0x444520
call fcn.00406cc0
add esp, 8
mov edi, eax
lea eax, [edi - 1]
cmp eax, 3
ja case.default.0x4199a8
fldz
jmp dword [eax*4 + 0x41a5dc]
mov dword [ebp - 0x3c], 0
test esi, esi
jle 0x4199f4
xor edx, edx
mov ecx, ebx
mov dword [ebp - 0x4c], ebx
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x4199d0
lea edi, [edx + eax]
fst qword [ebx + edi*8]
fst qword [ecx]
lea edi, [esi*8]
inc eax
add ecx, edi
cmp eax, esi
jl 0x4199c3
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x4c]
inc eax
add ecx, 8
add edx, esi
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x4c], ecx
cmp eax, esi
jl 0x4199c1
mov eax, dword [ebp - 0x54]
fstp st(0)
mov ecx, dword [ebp - 0x58]
push esi
push esi
push eax
push ecx
push ebx
push esi
call fcn.00404e60
add esp, 0x18
cmp eax, 1
jge 0x419a5c
xor ecx, ecx
test esi, esi
jle 0x419a32
fldz
lea edi, [esi*8 + 8]
mov edx, ebx
fcom qword [edx]
fnstsw ax
test ah, 0x41
je 0x419a5a
inc ecx
add edx, edi
cmp ecx, esi
jl 0x419a20
fstp st(0)
push esi
push ebx
push esi
call fcn.00403ac0
add esp, 0xc
test eax, eax
jne 0x419a5c
push esi
lea edx, [ebp - 0x6c]
push edx
push ebx
push esi
call fcn.00403c90
add esp, 0x10
test eax, eax
jne case.default.0x4199a8
jmp 0x419a5c
fstp st(0)
inc dword [ebp - 0x40]
mov edi, dword [sym.imp.MSVCR100.dll_printf]
xor eax, eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x4c], eax
lea ecx, [ecx]
push 0x444520
push 0x43b59c
call edi
call dword [sym.imp.MSVCR100.dll___iob_func]
push eax
lea eax, [ebp - 0x10]
push 5
push eax
call dword [sym.imp.MSVCR100.dll_fgets]
lea ecx, [ebp - 0x10]
add esp, 0x14
push ecx
call dword [sym.imp.MSVCR100.dll_atol]
lea edx, [eax - 1]
add esp, 4
cmp edx, 3
ja 0x419aaa
inc dword [ebp - 0x38]
mov ecx, dword [ebp - 0x4c]
inc ecx
mov dword [ebp - 0x4c], ecx
cmp ecx, 9
jg 0x419ac2
cmp dword [ebp - 0x38], 0
je 0x419a70
dec eax
jmp 0x41999d
push str.Unable_to_get_a_proper_response__n
push 0x43a944
call edi
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 0x419b08
call fcn.00406b90
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
fstp st(0)
xor edi, edi
test esi, esi
jle 0x419bdf
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], ebx
xor ebx, ebx
test edi, edi
js 0x419bc5
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x44]
fld qword [ecx]
sub esp, 8
fstp qword [esp]
push ebx
push edi
lea edx, [ebp - 0x20]
push edx
push str.The_current_value_of__s__d__d__is__lf_n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 0x18
push ebx
push edi
lea eax, [ebp - 0x20]
push eax
push str.Reset__s__d__d__to__hit_return_to_leave_unchanged_
call dword [sym.imp.MSVCR100.dll_printf]
lea ecx, [ebp - 0x34]
push ecx
mov byte [ebp - 0x34], 0
call dword [sym.imp.MSVCR100.dll_gets]
add esp, 0x14
cmp byte [ebp - 0x34], 0
je 0x419bae
lea edx, [ebp - 0x64]
push edx
lea eax, [ebp - 0x34]
push 0x43b6dc
push eax
call dword [sym.imp.MSVCR100.dll_sscanf]
add esp, 0xc
test eax, eax
je 0x419b57
fld qword [ebp - 0x64]
mov ecx, dword [ebp - 0x44]
fst qword [ecx]
cmp edi, ebx
je 0x419bac
mov edx, dword [ebp - 0x38]
fstp qword [edx]
jmp 0x419bae
fstp st(0)
add dword [ebp - 0x44], 8
lea eax, [esi*8]
add dword [ebp - 0x38], eax
inc ebx
cmp ebx, edi
jle 0x419b38
add dword [ebp - 0x3c], 8
lea eax, [esi*8]
add dword [ebp - 0x40], eax
inc edi
cmp edi, esi
jl 0x419b22
mov ebx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x58]
push esi
push esi
push eax
push ecx
push ebx
push esi
call fcn.00404e60
add esp, 0x18
cmp eax, 1
jge 0x419d2a
xor ecx, ecx
test esi, esi
jle 0x419c23
fldz
lea edi, [esi*8 + 8]
mov edx, ebx
fcom qword [edx]
fnstsw ax
test ah, 0x41
je 0x419d28
inc ecx
add edx, edi
cmp ecx, esi
jl 0x419c0d
fstp st(0)
push esi
push ebx
push esi
call fcn.00403ac0
add esp, 0xc
test eax, eax
jne 0x419d2a
push esi
lea edx, [ebp - 0x6c]
push edx
push ebx
push esi
call fcn.00403c90
add esp, 0x10
test eax, eax
je 0x419d2a
push str.Do_you_want_to_change_the_gammas_
call fcn.00406bd0
add esp, 4
test eax, eax
je 0x419d81
xor ebx, ebx
cmp dword [0x463b30], ebx
jle 0x419d81
mov edi, dword [sym.imp.MSVCR100.dll_printf]
xor esi, esi
jmp 0x419c80
mov edx, dword [0x453144]
push 0xc
lea eax, [esi + edx]
push 0x4532f0
push eax
call dword [sym.imp.MSVCR100.dll_strncmp]
add esp, 0xc
test eax, eax
je 0x419cb2
mov ecx, dword [0x453144]
lea edx, [esi + ecx]
push edx
push str._For__s_n
call edi
add esp, 8
mov eax, dword [ebp - 0x48]
mov ecx, dword [0x459594]
fld qword [eax + ebx*8]
sub esp, 8
lea edx, [esi + ecx]
fstp qword [esp]
push edx
push str.The_current_value_of__s_is__lf_n
call edi
add esp, 0x10
push str.Reset_gamma_to__hit_return_to_leave_unchanged_
call edi
lea eax, [ebp - 0x34]
add esp, 4
push eax
mov byte [ebp - 0x34], 0
call dword [sym.imp.MSVCR100.dll_gets]
add esp, 4
cmp byte [ebp - 0x34], 0
je 0x419d16
lea ecx, [ebp - 0x64]
push ecx
lea edx, [ebp - 0x34]
push 0x43b6dc
push edx
call dword [sym.imp.MSVCR100.dll_sscanf]
add esp, 0xc
test eax, eax
je 0x419cd2
fld qword [ebp - 0x64]
mov eax, dword [ebp - 0x48]
fstp qword [eax + ebx*8]
inc ebx
sub esi, 0xffffff80
cmp ebx, dword [0x463b30]
jl 0x419c80
jmp 0x419d87
fstp st(0)
xor edi, edi
mov dword [ebp - 0x38], edi
nop
push 0x444520
push 0x43b59c
call dword [sym.imp.MSVCR100.dll_printf]
call dword [sym.imp.MSVCR100.dll___iob_func]
push eax
lea eax, [ebp - 0x10]
push 5
push eax
call dword [sym.imp.MSVCR100.dll_fgets]
lea ecx, [ebp - 0x10]
add esp, 0x14
push ecx
call dword [sym.imp.MSVCR100.dll_atol]
dec eax
add esp, 4
cmp eax, 3
ja 0x419d6c
inc dword [ebp - 0x38]
inc edi
cmp edi, 9
jg 0x419e14
cmp dword [ebp - 0x38], 0
je 0x419d30
jmp 0x419b12
mov edi, dword [sym.imp.MSVCR100.dll_printf]
fld qword [0x443a50]
sub esp, 8
fstp qword [esp]
push str.Sigma_0__squared___lf_n
call edi
add esp, 0xc
push str.Would_you_like_to_change_it_
call fcn.00406bd0
add esp, 4
test eax, eax
je case.default.0x4199a8
push str.Enter_new_value_for_sigma
call edi
lea ecx, [ebp - 0x34]
add esp, 4
push ecx
mov byte [ebp - 0x34], 0
call dword [sym.imp.MSVCR100.dll_gets]
add esp, 4
cmp byte [ebp - 0x34], 0
je case.default.0x4199a8
lea edx, [ebp - 0x64]
push edx
lea eax, [ebp - 0x34]
push 0x43b6dc
push eax
call dword [sym.imp.MSVCR100.dll_sscanf]
fld qword [ebp - 0x64]
add esp, 4
fst qword [0x443a50]
fstp qword [esp]
push str.New_sigma_0__squared___lf_n
call edi
add esp, 0xc
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.004391bc
mov esp, ebp
pop ebp
ret
push str.Unable_to_get_a_proper_response__n
push 0x43a944
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], 1
call esi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x419e91
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 0x419e75
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
mov ecx, dword [ebp - 0x40]
inc ecx
cmp ecx, 0x64
jle 0x419f0f
mov edx, dword [0x453188]
fstp st(0)
mov esi, dword [sym.imp.MSVCR100.dll_fprintf]
push str.Unable_to_generate_a_good
push edx
call esi
mov ecx, dword [0x453188]
lea eax, [ebp - 0x20]
push eax
push 0x43a944
push ecx
call esi
add esp, 0x14
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 0x419f07
call fcn.00406b90
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
fld qword [0x441a90]
xor ecx, ecx
test esi, esi
jle 0x41a19b
lea edi, [esi*8 + 8]
mov edx, ebx
jmp 0x419f2c
fxch st(1)
fxch st(1)
fcom qword [edx]
fnstsw ax
test ah, 0x41
je 0x41a09b
inc ecx
add edx, edi
cmp ecx, esi
jl 0x419f2a
fstp st(0)
push esi
fstp st(0)
push ebx
push esi
mov dword [ebp - 0x4c], 0
call fcn.00403ac0
add esp, 0xc
test eax, eax
je 0x41a059
mov eax, dword [ebp - 0x4c]
mov ecx, eax
inc eax
mov dword [ebp - 0x4c], eax
cmp ecx, 0x32
jge 0x41a059
mov dword [ebp - 0x3c], 0
test esi, esi
jle 0x41a040
mov eax, dword [ebp - 0x50]
lea edx, [esi*8 + 8]
mov dword [ebp - 0x10], edx
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x3c], 0
mov eax, dword [ebp - 0x38]
fld qword [eax]
fstp qword [ebp - 0x64]
jl 0x41a01d
mov edx, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x50]
mov edi, dword [ebp - 0x40]
mov ebx, dword [ebp - 0x44]
inc edx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x68], edx
fldz
fcom qword [edi]
fnstsw ax
fld qword [edi]
test ah, 0x41
jne 0x419fc7
fchs
mov eax, dword [ebp - 0x48]
fstp qword [ebp - 0x74]
fld qword [eax]
fmul qword [ebp - 0x64]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 5
jp 0x419fdf
fchs
call sub.MSVCR100.dll__CIsqrt
fdivr qword [ebp - 0x74]
fcomp qword [0x441a18]
fnstsw ax
test ah, 1
jne 0x41a006
fld qword [edi]
fld qword [0x441b78]
fmul st(1), st(0)
fxch st(1)
fstp qword [edi]
fmul qword [ebx]
fstp qword [ebx]
mov ecx, dword [ebp - 0x10]
add dword [ebp - 0x48], ecx
lea eax, [esi*8]
add edi, 8
add ebx, eax
dec dword [ebp - 0x68]
jne 0x419fb8
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x10]
add dword [ebp - 0x38], edx
add dword [ebp - 0x44], 8
inc eax
lea ecx, [esi*8]
add dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], eax
cmp eax, esi
jl 0x419f97
mov eax, dword [ebp - 0x50]
push esi
push eax
push esi
call fcn.00403ac0
mov ebx, dword [ebp - 0x50]
add esp, 0xc
test eax, eax
jne 0x419f60
cmp dword [0x463b3c], 0
je 0x41a1a2
cmp dword [ebp + 0x18], 1
jne 0x41a1a2
xor ecx, ecx
test esi, esi
jle 0x41a1a2
fldz
xor edx, edx
xor eax, eax
cmp ecx, eax
je 0x41a08a
lea edi, [edx + eax]
fst qword [ebx + edi*8]
inc eax
cmp eax, esi
jl 0x41a080
inc ecx
add edx, esi
cmp ecx, esi
jl 0x41a07e
jmp 0x41a1a4
mov dword [ebp - 0x3c], 0
cmp esi, 4
jl 0x41a158
lea edx, [esi + esi*2 + 3]
lea eax, [ebx + edx*8]
mov dword [ebp - 0x38], eax
lea eax, [ebx + esi*8 + 8]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp + 0x14]
sub eax, ebx
mov dword [ebp - 0x44], eax
lea eax, [esi - 4]
shr eax, 2
inc eax
lea edx, [esi + 1]
shl edx, 4
mov dword [ebp - 0x4c], eax
lea ecx, [esi + 1]
add eax, eax
shl ecx, 5
add edx, ebx
mov edi, ebx
add eax, eax
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x3c], eax
fcom qword [edi]
fnstsw ax
test ah, 1
jne 0x41a0fb
mov eax, dword [ebp - 0x44]
fld qword [eax + edi]
fmul st(2)
fstp qword [edi]
mov eax, dword [ebp - 0x40]
fcom qword [eax]
fnstsw ax
test ah, 1
jne 0x41a117
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
fld qword [edi + eax]
mov edi, dword [ebp - 0x48]
fmul st(2)
fstp qword [eax]
fcom qword [edx]
fnstsw ax
test ah, 1
jne 0x41a12a
mov eax, dword [ebp - 0x44]
fld qword [eax + edx]
fmul st(2)
fstp qword [edx]
mov eax, dword [ebp - 0x38]
fcom qword [eax]
fnstsw ax
test ah, 1
jne 0x41a146
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0x38]
fld qword [edi + eax]
mov edi, dword [ebp - 0x48]
fmul st(2)
fstp qword [eax]
add dword [ebp - 0x40], ecx
add dword [ebp - 0x38], ecx
add edi, ecx
add edx, ecx
dec dword [ebp - 0x4c]
mov dword [ebp - 0x48], edi
jne 0x41a0e8
cmp dword [ebp - 0x3c], esi
jge 0x419f42
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp + 0x14]
lea edi, [esi*8 + 8]
mov ecx, edi
imul ecx, eax
sub edx, ebx
mov dword [ebp - 0x44], edx
mov edx, esi
add ecx, ebx
sub edx, eax
fcom qword [ecx]
fnstsw ax
test ah, 1
jne 0x41a191
mov eax, dword [ebp - 0x44]
fld qword [eax + ecx]
fmul st(2)
fstp qword [ecx]
add ecx, edi
dec edx
jne 0x41a17e
jmp 0x419f42
fstp st(1)
jmp 0x419f44
fldz
cmp dword [0x448c7c], 0
je 0x41a1d3
cmp dword [ebp + 0x18], 2
jne 0x41a1d3
xor ecx, ecx
test esi, esi
jle 0x41a1d3
xor edx, edx
xor eax, eax
cmp ecx, eax
je 0x41a1c7
lea edi, [edx + eax]
fst qword [ebx + edi*8]
inc eax
cmp eax, esi
jl 0x41a1bd
inc ecx
add edx, esi
cmp ecx, esi
jl 0x41a1bb
cmp dword [0x453174], 0
je 0x41a202
cmp dword [ebp + 0x18], 3
jne 0x41a202
xor ecx, ecx
test esi, esi
jle 0x41a202
xor edx, edx
xor eax, eax
cmp ecx, eax
je 0x41a1f6
lea edi, [edx + eax]
fst qword [ebx + edi*8]
inc eax
cmp eax, esi
jl 0x41a1ec
inc ecx
add edx, esi
cmp ecx, esi
jl 0x41a1ea
mov ecx, dword [ebp - 0x54]
fstp st(0)
mov edx, dword [ebp - 0x58]
push esi
push esi
push ecx
push edx
push ebx
push esi
call fcn.00404e60
add esp, 0x18
test eax, eax
jne 0x41a265
xor ecx, ecx
test esi, esi
jle 0x41a23f
fldz
lea edi, [esi*8 + 8]
mov edx, ebx
fcom qword [edx]
fnstsw ax
test ah, 0x41
je 0x41a267
inc ecx
add edx, edi
cmp ecx, esi
jl 0x41a22d
fstp st(0)
push esi
push ebx
push esi
call fcn.00403ac0
add esp, 0xc
test eax, eax
jne 0x41a265
push esi
lea eax, [ebp - 0x6c]
push eax
push ebx
push esi
call fcn.00403c90
add esp, 0x10
test eax, eax
jne 0x41a3f3
fldz
xor eax, eax
cmp esi, eax
jle 0x41a3f5
fld qword [0x441a90]
lea ecx, [ebx + esi*8]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x4c], ecx
xor ecx, ecx
test eax, eax
js 0x41a3d8
lea edx, [eax + 1]
cmp edx, 4
jl 0x41a38a
mov edx, esi
shl edx, 5
mov dword [ebp - 0x10], edx
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x48], edx
lea edx, [eax + esi*2]
add edx, esi
lea edx, [ebx + edx*8]
mov dword [ebp - 0x50], edx
lea edx, [eax + esi*2]
lea edx, [ebx + edx*8]
mov dword [ebp - 0x40], edx
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x38], edx
cmp ecx, eax
je 0x41a2d9
mov edx, dword [ebp - 0x3c]
fxch st(1)
add edx, ecx
fst qword [ebx + edx*8]
mov edx, dword [ebp - 0x48]
fst qword [edx]
mov edx, dword [ebp + 0x14]
jmp 0x41a2f0
mov edx, dword [ebp + 0x14]
lea edi, [esi*8 + 8]
imul edi, eax
fld qword [edi + edx]
fmul st(1)
fstp qword [edi + ebx]
fxch st(1)
lea edi, [ecx + 1]
cmp edi, eax
je 0x41a307
mov edi, dword [ebp - 0x3c]
add edi, ecx
fst qword [ebx + edi*8 + 8]
mov edi, dword [ebp - 0x38]
fst qword [edi]
jmp 0x41a319
lea edi, [esi*8 + 8]
imul edi, eax
fld qword [edi + edx]
fmul st(2)
fstp qword [edi + ebx]
lea edi, [ecx + 2]
cmp edi, eax
je 0x41a330
mov edi, dword [ebp - 0x3c]
add edi, ecx
fst qword [ebx + edi*8 + 0x10]
mov edi, dword [ebp - 0x40]
fst qword [edi]
jmp 0x41a342
lea edi, [esi*8 + 8]
imul edi, eax
fld qword [edi + edx]
fmul st(2)
fstp qword [edi + ebx]
lea edi, [ecx + 3]
cmp edi, eax
je 0x41a359
mov edx, dword [ebp - 0x3c]
add edx, ecx
fst qword [ebx + edx*8 + 0x18]
mov edx, dword [ebp - 0x50]
fst qword [edx]
jmp 0x41a36b
lea edi, [esi*8 + 8]
imul edi, eax
fld qword [edi + edx]
fmul st(2)
fstp qword [edi + ebx]
mov edx, dword [ebp - 0x10]
fxch st(1)
add dword [ebp - 0x48], edx
add dword [ebp - 0x38], edx
add dword [ebp - 0x40], edx
add dword [ebp - 0x50], edx
add ecx, 4
lea edx, [eax - 3]
cmp ecx, edx
jle 0x41a2c1
cmp ecx, eax
jg 0x41a3d8
mov edx, esi
imul edx, ecx
add edx, eax
lea edx, [ebx + edx*8]
mov dword [ebp - 0x48], edx
cmp ecx, eax
je 0x41a3b0
mov edx, dword [ebp - 0x3c]
fxch st(1)
add edx, ecx
fst qword [ebx + edx*8]
mov edx, dword [ebp - 0x48]
fst qword [edx]
jmp 0x41a3c7
mov edi, dword [ebp + 0x14]
lea edx, [esi*8 + 8]
imul edx, eax
fld qword [edx + edi]
fmul st(1)
fstp qword [edx + ebx]
fxch st(1)
lea edx, [esi*8]
fxch st(1)
add dword [ebp - 0x48], edx
inc ecx
cmp ecx, eax
jle 0x41a39d
add dword [ebp - 0x3c], esi
mov ecx, 8
add dword [ebp - 0x44], ecx
add dword [ebp - 0x4c], ecx
inc eax
cmp eax, esi
jl 0x41a283
fstp st(0)
jmp 0x41a3f5
fldz
cmp dword [0x463b3c], 0
je 0x41a424
cmp dword [ebp + 0x18], 1
jne 0x41a424
xor ecx, ecx
test esi, esi
jle 0x41a424
xor edx, edx
xor eax, eax
cmp ecx, eax
je 0x41a418
lea edi, [edx + eax]
fst qword [ebx + edi*8]
inc eax
cmp eax, esi
jl 0x41a40e
inc ecx
add edx, esi
cmp ecx, esi
jl 0x41a40c
cmp dword [0x448c7c], 0
je 0x41a453
cmp dword [ebp + 0x18], 2
jne 0x41a453
xor ecx, ecx
test esi, esi
jle 0x41a453
xor edx, edx
xor eax, eax
cmp ecx, eax
je 0x41a447
lea edi, [edx + eax]
fst qword [ebx + edi*8]
inc eax
cmp eax, esi
jl 0x41a43d
inc ecx
add edx, esi
cmp ecx, esi
jl 0x41a43b
cmp dword [0x453174], 0
je 0x41a482
cmp dword [ebp + 0x18], 3
jne 0x41a482
xor ecx, ecx
test esi, esi
jle 0x41a482
xor edx, edx
xor eax, eax
cmp ecx, eax
je 0x41a476
lea edi, [edx + eax]
fst qword [ebx + edi*8]
inc eax
cmp eax, esi
jl 0x41a46c
inc ecx
add edx, esi
cmp ecx, esi
jl 0x41a46a
mov eax, dword [ebp - 0x54]
fstp st(0)
mov ecx, dword [ebp - 0x58]
push esi
push esi
push eax
push ecx
push ebx
push esi
call fcn.00404e60
add esp, 0x18
test eax, eax
jne 0x41a4e9
xor ecx, ecx
test esi, esi
jle 0x41a4bf
fldz
lea edi, [esi*8 + 8]
mov edx, ebx
fcom qword [edx]
fnstsw ax
test ah, 0x41
je 0x41a4e7
inc ecx
add edx, edi
cmp ecx, esi
jl 0x41a4ad
fstp st(0)
push esi
push ebx
push esi
call fcn.00403ac0
add esp, 0xc
test eax, eax
jne 0x41a4e9
push esi
lea edx, [ebp - 0x6c]
push edx
push ebx
push esi
call fcn.00403c90
add esp, 0x10
test eax, eax
jne case.default.0x4199a8
jmp 0x41a4e9
fstp st(0)
lea eax, [ebp - 0x20]
push eax
push str.Unable_to_compute__s_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], 1
call esi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x41a56c
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 0x41a550
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
mov ecx, dword [0x453188]
fstp st(0)
push str.fix_tau_delta__set_to_4__so_no_correction_to_tau_made._Unable_to_continue._n
push ecx
call dword [sym.imp.MSVCR100.dll_fprintf]
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 0x41a5c2
call fcn.00406b90
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004391bc
mov esp, ebp
pop ebp
ret