Function at 0x401920
Capabilities:
Write file on windows

Disassembly:
sub esp, 0x208
mov eax, dword [0x458290]
xor eax, esp
mov dword [esp + 0x204], eax
mov eax, dword [section..data]
push ebp
push esi
push edi
mov esi, ecx
mov dword [esp + 0xc], eax
mov dword [section..data], 0
lea esp, [esp]
push 0
push esi
call fcn.00405400
push str._PROMPT
push esi
call fcn.00406420
add esp, 0x10
test eax, eax
jne 0x401971
mov edi, 0x4464c0
jmp 0x401992
push 0
push 0xffffffffffffffff
push esi
call fcn.00402b10
push 0xffffffffffffffff
push 0xfffffffffffffffe
push esi
mov edi, eax
call fcn.004054f0
push 0xfffffffffffffffe
push esi
call fcn.00405400
add esp, 0x20
call fcn.0042a104
add eax, 0x20
push eax
push edi
call fcn.0042a86e
call fcn.0042a104
add eax, 0x20
push eax
call fcn.00429f9c
call fcn.0042a104
push eax
lea ecx, [esp + 0x20]
push 0x200
push ecx
call fcn.0042a736
add esp, 0x18
test eax, eax
je 0x401c49
push 0xfffffffffffffffe
push esi
call fcn.00405400
lea eax, [esp + 0x18]
add esp, 8
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4019e1
sub eax, edx
je 0x4019f8
cmp byte [esp + eax + 0xf], 0xa
jne 0x4019f8
dec eax
mov byte [esp + eax + 0x10], cl
cmp byte [esp + 0x10], 0x3d
jne 0x401a11
lea edx, [esp + 0x11]
push edx
push str.return__s
push esi
call fcn.00406230
jmp 0x401a1d
push eax
lea eax, [esp + 0x14]
push eax
push esi
call fcn.00406140
add esp, 0xc
push 0
push 0xffffffffffffffff
push esi
call fcn.00405da0
push eax
push str.return__s_
push esi
call fcn.00406230
mov ecx, eax
add esp, 0x18
lea edi, [ecx + 1]
mov edi, edi
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x401a40
push 0
push 0x4464ec
sub ecx, edi
push ecx
push eax
push esi
call fcn.004029d0
mov edi, eax
add esp, 0x14
test edi, edi
jne 0x401a78
push 0xffffffffffffffff
push 0xfffffffffffffffe
push esi
call fcn.004054f0
push 0xfffffffffffffffe
push esi
call fcn.00405400
add esp, 0x14
jmp 0x401a83
push 0xfffffffffffffffd
push esi
call fcn.00405400
add esp, 8
test edi, edi
je 0x401a8e
call fcn.00401780
mov edi, eax
push 0xffffffffffffffff
push 1
push esi
call fcn.004054f0
push 0xfffffffffffffffe
push esi
call fcn.00405400
add esp, 0x14
cmp edi, 0xffffffff
je 0x401c49
test edi, edi
jne 0x401bda
push esi
call fcn.004053e0
push 0
push 0x401150
push esi
mov edi, eax
call fcn.00406270
push 1
push edi
push esi
call fcn.004054f0
push 0x401030
push 2
mov dword [0x4595e0], esi
call fcn.00429a2f
push 0
push 0
push edi
push 0xffffffffffffffff
push 0
push esi
call fcn.00406f50
push 0
push 2
mov ebp, eax
call fcn.00429a2f
add esp, 0x44
push 0xffffffffffffffff
push edi
push esi
call fcn.004054f0
push 0xfffffffffffffffe
push esi
call fcn.00405400
add esp, 0x14
test ebp, ebp
jne 0x401bda
push esi
call fcn.004053e0
mov edi, eax
add esp, 4
test edi, edi
jle 0x401950
push str.too_many_results_to_print
push 0x14
push esi
call fcn.004024c0
push str.print
push esi
call fcn.00406420
push 1
push 1
push esi
call fcn.004054f0
push ebp
push ebp
push ebp
push ebp
push edi
push esi
call fcn.00406f50
add esp, 0x38
test eax, eax
je 0x401950
push ebp
push 0xffffffffffffffff
push esi
call fcn.00405da0
push eax
push str.error_calling_print___s_
push esi
call fcn.00406230
mov edi, eax
mov eax, dword [section..data]
add esp, 0x18
test eax, eax
je 0x401bb0
push eax
push str._s:
call fcn.0042a104
add eax, 0x40
push eax
call fcn.00429ff8
call fcn.0042a104
add eax, 0x40
push eax
call fcn.00429f9c
add esp, 0x10
push edi
push 0x4463d8
call fcn.0042a104
add eax, 0x40
push eax
call fcn.00429ff8
call fcn.0042a104
add eax, 0x40
push eax
call fcn.00429f9c
add esp, 0x10
jmp 0x401950
push 0
push 0xffffffffffffffff
push esi
call fcn.00405da0
mov edi, eax
mov eax, dword [section..data]
add esp, 0xc
test eax, eax
je 0x401c17
push eax
push str._s:
call fcn.0042a104
add eax, 0x40
push eax
call fcn.00429ff8
call fcn.0042a104
add eax, 0x40
push eax
call fcn.00429f9c
add esp, 0x10
push edi
push 0x4463d8
call fcn.0042a104
add eax, 0x40
push eax
call fcn.00429ff8
call fcn.0042a104
add eax, 0x40
push eax
call fcn.00429f9c
push 0xfffffffffffffffe
push esi
call fcn.00405400
add esp, 0x18
jmp 0x401950
push 0
push esi
call fcn.00405400
call fcn.0042a104
add eax, 0x20
push eax
push 1
push 1
push 0x446408
call fcn.0042a410
call fcn.0042a104
add eax, 0x20
push eax
call fcn.00429f9c
mov ecx, dword [esp + 0x28]
add esp, 0x1c
pop edi
mov dword [section..data], ecx
mov ecx, dword [esp + 0x20c]
pop esi
pop ebp
xor ecx, esp
call fcn.0042a974
add esp, 0x208
ret