Function at 0x40d47b
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
mov eax, 0x10cc
call fcn.004288a8
mov dword [ebp - 0x10], 0
call fcn.00402a82
test eax, eax
jne 0x40de56
mov dword [ebp - 0x10a8], 0
mov dword [esp + 4], str.factor
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.0040205f
test eax, eax
jne 0x40d4cc
mov dword [ebp - 0x10a8], 1
jmp 0x40d4ed
mov dword [esp + 4], str.repeat
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.0040205f
test eax, eax
jne 0x40d4fd
mov dword [0x43c5e8], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.00401ddc
mov dword [ebp + 8], eax
jmp 0x40d4a9
mov eax, dword [0x43cb28]
mov dword [ebp - 0x10bc], eax
mov edx, dword [eax*4 + 0x434540]
mov dword [ebp - 0x10ac], edx
test edx, edx
je 0x40d528
mov ecx, dword [eax*4 + 0x43c980]
mov dword [ebp - 0x10b0], ecx
jmp 0x40d54e
mov eax, dword [ebp - 0x10bc]
mov eax, dword [eax*4 + 0x434740]
mov dword [ebp - 0x10b0], eax
mov edx, dword [ebp - 0x10bc]
mov edx, dword [edx*4 + 0x433380]
mov dword [ebp - 0x10ac], edx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x10b4], 1
cmp byte [eax], 0
je 0x40d65a
mov dword [esp + 4], eax
lea eax, [ebp - 0x10]
mov dword [esp], eax
call fcn.00406285
mov dword [ebp + 8], eax
test eax, eax
je 0x40de56
mov eax, dword [ebp - 0x10]
mov dword [esp + 8], eax
mov ecx, dword [ebp - 0x10ac]
mov dword [esp + 4], ecx
mov eax, dword [ebp - 0x10b0]
mov dword [esp], eax
call fcn.00401c11
test eax, eax
jne 0x40d5b7
mov dword [esp], str.Specified_iteration_variable_not_found.
call fcn.004029a3
mov eax, 0
jmp 0x40de62
mov eax, dword [ebp + 8]
cmp byte [eax], 0
jne 0x40d5fc
mov dword [esp + 8], 0x50
mov dword [esp + 4], str.Enter_number_of_iterations:
mov dword [esp], 0x4346e0
call fcn.00407b94
mov dword [esp + 4], 0x1000
lea eax, [ebp - 0x1094]
mov dword [esp], eax
call fcn.004021a9
mov dword [ebp + 8], eax
test eax, eax
je 0x40de56
lea edx, [ebp + 8]
mov dword [esp + 4], edx
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.00402104
mov dword [ebp - 0x10b4], eax
mov eax, dword [ebp + 8]
cmp byte [eax], 0
jne 0x40d625
cmp dword [ebp - 0x10b4], 0
jns 0x40d63b
mov dword [esp], str.Positive_integer_required.
call fcn.004029a3
mov eax, 0
jmp 0x40de62
cmp dword [ebp - 0x10b4], 0
jne 0x40d65a
mov dword [esp], str.Calculation_will_be_iterated_until_convergence.
call fcn.004027d8
mov dword [ebp - 0x10b4], 0x7ffffffe
mov ecx, dword [ebp - 0x10ac]
shl ecx, 4
mov dword [ebp - 0x10c0], ecx
mov eax, dword [ebp - 0x10ac]
mov dword [0x43c5ec], eax
mov edx, dword [ebp - 0x10c0]
mov dword [esp + 8], edx
mov ecx, dword [ebp - 0x10b0]
mov dword [esp + 4], ecx
mov eax, dword [0x43cb18]
mov dword [esp], eax
call sub.cygwin1.dll_memmove
mov dword [ebp - 0x10a4], 0
cmp dword [ebp - 0x10ac], 0
jle 0x40d700
mov esi, 0
mov dword [ebp - 0x10a4], 0
mov edi, dword [ebp - 0x10b0]
jmp 0x40d6c1
mov esi, ebx
mov edx, edi
mov ecx, 0
mov eax, 0xffffffff
cmp dword [edx], 1
jne 0x40d6e5
mov ebx, dword [edx + 8]
cmp esi, ebx
jge 0x40d6e5
cmp eax, 0xffffffff
je 0x40d6e7
cmp ebx, eax
cmovg ebx, eax
jmp 0x40d6e7
mov ebx, eax
add ecx, 2
add edx, 0x20
cmp dword [ebp - 0x10ac], ecx
jle 0x40d6f9
mov eax, ebx
jmp 0x40d6cd
mov esi, ebx
cmp ebx, 0xffffffff
jne 0x40d717
mov ecx, 0
cmp dword [0x43c5ec], 0
jg 0x40d7db
jmp 0x40d804
mov eax, ebx
and eax, 0x3fff
cmp eax, 4
jle 0x40d6bf
cmp ebx, dword [ebp - 0x10]
je 0x40d6bf
mov dword [esp + 4], 0
mov dword [esp], ebx
call fcn.00425022
mov dword [esp + 0xc], 0x43cc20
mov dword [esp + 8], str.Enter__s:
mov dword [esp + 4], 0x50
mov dword [esp], 0x4346e0
call sub.cygwin1.dll_snprintf
mov dword [esp + 4], 0x43ccd4
mov eax, dword [0x43c820]
mov dword [esp], eax
call fcn.00402318
test eax, eax
je 0x40d6bf
mov eax, dword [0x43ccd4]
test eax, eax
jle 0x40d7a6
mov edx, 0
mov eax, edx
shl eax, 4
add eax, dword [0x43c820]
cmp dword [eax], 1
jne 0x40d79a
neg dword [eax + 8]
add edx, 2
mov eax, dword [0x43ccd4]
cmp eax, edx
jg 0x40d787
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], eax
mov eax, dword [0x43c820]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x43c5ec
mov eax, dword [0x43cb18]
mov dword [esp], eax
call fcn.00402408
mov dword [ebp - 0x10a4], 1
jmp 0x40d6bf
mov eax, ecx
shl eax, 4
mov edx, eax
add edx, dword [0x43cb18]
cmp dword [edx], 1
jne 0x40d7f9
mov eax, dword [edx + 8]
test eax, eax
jns 0x40d7f9
neg eax
mov dword [edx + 8], eax
add ecx, 2
cmp dword [0x43c5ec], ecx
jg 0x40d7db
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x40da02
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.00425022
mov dword [esp + 0xc], 0x43cc20
mov dword [esp + 8], str.Enter_initial__s:
mov dword [esp + 4], 0x50
mov dword [esp], 0x4346e0
call sub.cygwin1.dll_snprintf
mov dword [esp + 4], 0x433514
mov eax, dword [0x43c5e4]
mov dword [esp], eax
call fcn.00402318
test eax, eax
jne 0x40d866
mov eax, dword [0x43c5e8]
jmp 0x40de62
mov dword [esp + 4], 0x433514
mov eax, dword [0x43c5e4]
mov dword [esp], eax
call fcn.004147c8
mov eax, dword [0x43c5ec]
shl eax, 4
mov dword [esp + 8], eax
mov eax, dword [0x43cb18]
mov dword [esp + 4], eax
mov eax, dword [0x43c820]
mov dword [esp], eax
call sub.cygwin1.dll_memmove
mov eax, dword [0x43c5ec]
mov dword [0x43ccd4], eax
cmp dword [ebp - 0x10b4], 0
jle 0x40d9f8
mov ebx, 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov eax, dword [0x433514]
mov dword [esp + 8], eax
mov eax, dword [0x43c5e4]
mov dword [esp + 4], eax
mov dword [esp], 1
call fcn.00426c13
mov eax, dword [0x43ccd4]
shl eax, 4
mov dword [esp + 8], eax
mov eax, dword [0x43c820]
mov dword [esp + 4], eax
mov eax, dword [0x43cb18]
mov dword [esp], eax
call sub.cygwin1.dll_memmove
mov eax, dword [0x43ccd4]
mov dword [0x43c5ec], eax
mov eax, dword [ebp - 0x10]
mov dword [esp + 0x10], eax
mov eax, dword [0x433514]
mov dword [esp + 0xc], eax
mov eax, dword [0x43c5e4]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x43c5ec
mov eax, dword [0x43cb18]
mov dword [esp], eax
call fcn.00402408
mov dword [esp + 4], 0x43c5ec
mov eax, dword [0x43cb18]
mov dword [esp], eax
call fcn.004147c8
lea eax, [ebp - 0x94]
mov dword [esp + 0x10], eax
mov eax, dword [0x433514]
mov dword [esp + 0xc], eax
mov eax, dword [0x43c5e4]
mov dword [esp + 8], eax
mov eax, dword [0x43c5ec]
mov dword [esp + 4], eax
mov eax, dword [0x43cb18]
mov dword [esp], eax
call fcn.00412a61
test eax, eax
je 0x40d9bd
cmp dword [ebp - 0x94], 0
jne 0x40d9bd
lea eax, [ebx + 1]
mov dword [esp + 8], eax
mov dword [esp + 4], str.Convergence_reached_after__ld_iterations._n
mov eax, dword [0x43cce0]
mov dword [esp], eax
call sub.cygwin1.dll_fprintf
mov dword [ebp - 0x10a4], 1
jmp 0x40da02
mov eax, dword [0x43c5ec]
shl eax, 4
mov dword [esp + 8], eax
mov eax, dword [0x43cb18]
mov dword [esp + 4], eax
mov eax, dword [0x43c5e4]
mov dword [esp], eax
call sub.cygwin1.dll_memmove
mov eax, dword [0x43c5ec]
mov dword [0x433514], eax
add ebx, 1
cmp ebx, dword [ebp - 0x10b4]
jl 0x40d8b9
mov dword [ebp - 0x10a4], 1
mov dword [esp + 4], 0x43c5ec
mov eax, dword [0x43cb18]
mov dword [esp], eax
call fcn.004147c8
lea edi, [ebp - 0x50]
mov ecx, 0x10
mov eax, 0
rep stosd dword es:[edi], eax
cmp dword [0x43c5ec], 0
jle 0x40da6b
mov edx, 0
mov eax, edx
shl eax, 4
add eax, dword [0x43cb18]
cmp dword [eax], 1
jne 0x40da60
mov ecx, dword [eax + 8]
mov eax, ecx
and eax, 0x3fff
cmp eax, 4
jne 0x40da60
mov eax, ecx
sar eax, 0xe
and eax, 0x3f
mov byte [ebp + eax - 0x50], 1
add edx, 2
cmp dword [0x43c5ec], edx
jg 0x40da34
lea eax, [ebp - 0x50]
mov ecx, 0
lea edx, [ebp - 0x10]
cmp byte [eax], 1
sbb ecx, 0xffffffff
add eax, 1
cmp eax, edx
jne 0x40da76
mov eax, 1
shl eax, cl
mov edx, eax
sub edx, 1
mov dword [ebp - 0x10b8], edx
je 0x40de7c
mov dword [esp + 8], eax
mov dword [esp + 4], str.There_are__ld_solutions._n
mov eax, dword [0x43cce0]
mov dword [esp], eax
call sub.cygwin1.dll_fprintf
mov eax, dword [0x43cce0]
mov dword [esp + 4], eax
mov dword [esp], 0xa
call sub.cygwin1.dll_fputc
cmp dword [ebp - 0x10b8], 0
jns 0x40de91
jmp 0x40de3e
mov eax, dword [0x43c5ec]
shl eax, 4
mov dword [esp + 8], eax
mov eax, dword [0x43cb18]
mov dword [esp + 4], eax
mov eax, dword [0x43c820]
mov dword [esp], eax
call sub.cygwin1.dll_memmove
mov ecx, dword [0x43c5ec]
mov dword [ebp - 0x10a0], ecx
mov dword [0x43ccd4], ecx
mov edx, 0
mov ebx, 0
lea esi, [ebp - 0x90]
mov dword [ebp - 0x10c4], edx
cmp byte [ebp + edx - 0x50], 0
je 0x40db3b
mov eax, edi
mov ecx, ebx
sar eax, cl
and eax, 1
mov byte [esi + edx], al
add ebx, 1
add edx, 1
cmp edx, 0x40
jne 0x40db1f
cmp dword [ebp - 0x10a0], 0
jle 0x40de6d
mov ecx, 0
mov ebx, ecx
shl ebx, 4
mov edx, ebx
add edx, dword [0x43c820]
cmp dword [edx], 1
jne 0x40dbae
mov esi, dword [edx + 8]
mov eax, esi
and eax, 0x3fff
cmp eax, 4
jne 0x40dbae
mov eax, esi
sar eax, 0xe
and eax, 0x3f
cmp byte [ebp + eax - 0x90], 0
je 0x40db9d
mov dword [edx], 0
mov eax, dword [0x43c820]
fld1
fchs
fstp qword [eax + ebx + 8]
jmp 0x40dbae
mov dword [edx], 0
mov eax, dword [0x43c820]
fld1
fstp qword [eax + ebx + 8]
add ecx, 2
cmp dword [0x43ccd4], ecx
jg 0x40db55
jmp 0x40de6d
mov esi, ebx
cmp byte [ebp + ebx - 0x50], 0
je 0x40dc9a
test eax, eax
lea esi, [esi]
je 0x40dbf9
mov eax, dword [0x43cce0]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 2
mov dword [esp + 4], 1
mov dword [esp], 0x42eb1b
call sub.cygwin1.dll_fwrite
jmp 0x40dc15
lea eax, [edi + 1]
mov dword [esp + 8], eax
mov dword [esp + 4], str.Solution_number__ld_with
mov eax, dword [0x43cce0]
mov dword [esp], eax
call sub.cygwin1.dll_fprintf
mov dword [esp + 4], 0
mov eax, ebx
shl eax, 0xe
add eax, 4
mov dword [esp], eax
call fcn.00425022
mov dword [esp + 8], 0x43cc20
mov dword [esp + 4], str._s_
mov eax, dword [0x43cce0]
mov dword [esp], eax
call sub.cygwin1.dll_fprintf
cmp byte [ebp + esi - 0x90], 0
je 0x40dc80
mov eax, dword [0x43cce0]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 2
mov dword [esp + 4], 1
mov dword [esp], 0x42eb3e
call sub.cygwin1.dll_fwrite
mov eax, 1
jmp 0x40dc9a
mov eax, dword [0x43cce0]
mov dword [esp + 4], eax
mov dword [esp], 0x31
call sub.cygwin1.dll_fputc
mov eax, 1
add ebx, 1
cmp ebx, 0x40
jne 0x40dbbe
test eax, eax
je 0x40dccf
mov eax, dword [0x43cce0]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 2
mov dword [esp + 4], 1
mov dword [esp], 0x42eb41
call sub.cygwin1.dll_fwrite
mov dword [esp + 4], 0x43ccd4
mov eax, dword [0x43c820]
mov dword [esp], eax
call fcn.004147c8
cmp dword [ebp - 0x10a8], 0
je 0x40dd02
mov dword [esp + 4], 0x43ccd4
mov eax, dword [0x43c820]
mov dword [esp], eax
call fcn.00414788
mov eax, dword [0x43cce0]
mov dword [esp + 4], eax
mov dword [esp], 0x20
call sub.cygwin1.dll_fputc
mov eax, dword [ebp - 0x10bc]
cmp dword [eax*4 + 0x434540], 0
je 0x40dd70
mov dword [esp + 8], 0
mov edx, eax
mov eax, dword [eax*4 + 0x433380]
mov dword [esp + 4], eax
mov eax, dword [edx*4 + 0x434740]
mov dword [esp], eax
call fcn.00426be2
mov eax, dword [0x43cce0]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 3
mov dword [esp + 4], 1
mov dword [esp], 0x42ee05
call sub.cygwin1.dll_fwrite
mov ecx, dword [ebp - 0x10a8]
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x43ccd4
mov eax, dword [0x43c820]
mov dword [esp], eax
call fcn.00428795
cmp dword [0x43ccd4], 9
jg 0x40de0a
mov dword [esp + 4], 0x43ccd4
mov eax, dword [0x43c820]
mov dword [esp], eax
call fcn.00427734
test eax, eax
je 0x40de0a
mov dword [esp + 4], 0x43ccd4
mov eax, dword [0x43c820]
mov dword [esp], eax
call fcn.00418f75
mov eax, dword [0x43cce0]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 3
mov dword [esp + 4], 1
mov dword [esp], 0x42ee05
call sub.cygwin1.dll_fwrite
mov eax, dword [ebp - 0x10a8]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x43ccd4
mov eax, dword [0x43c820]
mov dword [esp], eax
call fcn.00428795
mov eax, dword [0x43cce0]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 2
mov dword [esp + 4], 1
mov dword [esp], 0x42ee09
call sub.cygwin1.dll_fwrite
add edi, 1
cmp dword [ebp - 0x10b8], edi
jge 0x40dadb
cmp dword [ebp - 0x10a4], 0
je 0x40de5d
cmp dword [0x43c5e8], 0
jne 0x40d669
jmp 0x40de5d
mov eax, 0
jmp 0x40de62
mov eax, 1
add esp, 0x10cc
pop ebx
pop esi
pop edi
pop ebp
ret
mov ebx, 0
mov eax, 0
jmp 0x40dbbe
mov eax, dword [0x43cce0]
mov dword [esp + 4], eax
mov dword [esp], 0xa
call sub.cygwin1.dll_fputc
mov edi, 0
jmp 0x40dadb