Function at 0x425200
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
mov ebx, 1
sub esp, 0x48c
mov dword [ebp - 0x46c], ebx
call fcn.00481370
call fcn.004971f0
jmp 0x425230
lea eax, [ebp - 0x46c]
mov dword [esp], eax
call fcn.00424e60
cmp eax, 7
ja case.0x425243.1132
jmp dword [eax*4 + 0x4abc6c]
mov eax, 0xc
call fcn.00424890
call fcn.004971f0
lea esi, [esi]
xor eax, eax
test al, al
je 0x425230
call fcn.00481230
call fcn.004813c0
add esp, 0x48c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], 6
mov eax, str.Debugging_Options
mov dword [esp + 4], eax
call fcn.00424960
call fcn.004971f0
jmp case.0x425243.1132
call fcn.004971f0
call fcn.00481230
call fcn.004813c0
add esp, 0x48c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], 2
mov eax, str._Escape_to_cancel_
mov edi, 0xc
mov dword [esp + 0x10], eax
mov eax, 2
mov ebx, 0x50
mov dword [esp + 0xc], eax
mov eax, 0xffffffff
mov esi, 0x4ab7d0
mov dword [esp + 8], eax
mov eax, 0xe
mov dword [esp + 4], eax
call fcn.00496ff0
mov dword [esp + 4], edi
mov eax, 2
mov dword [esp + 8], eax
mov dword [esp], 0x4ab7c9
call fcn.004814e0
mov dword [esp + 4], ebx
mov eax, dword [0x4a49ec]
lea ebx, [ebp - 0x68]
mov dword [esp + 8], esi
add eax, 0x20
mov dword [esp + 0xc], eax
mov dword [esp], ebx
call fcn.00495420
mov dword [esp], ebx
mov ecx, 0x50
mov dword [esp + 4], ecx
call fcn.00481a80
test al, al
je 0x425254
mov dword [esp + 0xc], ebx
mov eax, dword [0x873420]
mov edx, 0x400
mov dword [esp + 4], edx
lea ebx, [ebp - 0x468]
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.0047eb50
mov edx, dword [str.Options_Dump]
mov eax, ebx
call fcn.0041b800
mov dword [esp], ebx
mov eax, 0x4abbc1
mov dword [esp + 4], eax
call fcn.0047ec20
test eax, eax
mov edi, eax
je 0x4255a6
mov edx, dword [str.Options_Dump]
xor ebx, ebx
call fcn.0041bae0
mov dword [esp + 0xc], edi
mov eax, 2
mov dword [esp + 8], eax
mov eax, 1
mov dword [esp + 4], eax
mov dword [esp], 0x4abbc3
call sub.msvcrt.dll_fwrite
mov dword [esp + 0xc], edi
mov eax, 0x19
mov dword [esp + 8], eax
mov eax, 1
mov dword [esp + 4], eax
mov dword [esp], str._Automatic_option_dump_n_n
call sub.msvcrt.dll_fwrite
jmp 0x4253e9
inc ebx
cmp ebx, 0x9f
jg 0x425455
mov eax, dword [ebx*4 + 0x4a3da0]
test eax, eax
je 0x4253e0
mov dword [esp], edi
mov eax, dword [ebx*4 + 0x4a39a0]
mov esi, str._Option__s_n
mov dword [esp + 4], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [0x4a49ec]
cmp byte [ebx + eax + 0x40], 0
je 0x425550
mov eax, dword [ebx*4 + 0x4a3da0]
mov ecx, str.Y:_s_n
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp], edi
inc ebx
call sub.msvcrt.dll_fprintf
mov dword [esp + 4], edi
mov dword [esp], 0xa
call sub.msvcrt.dll_fputc
cmp ebx, 0x9f
jle 0x4253e9
mov ebx, 1
jmp 0x425466
inc ebx
cmp ebx, 7
jg 0x42557b
mov eax, dword [ebx*4 + 0x4f2e80]
test eax, eax
je 0x42545c
mov eax, ebx
xor esi, esi
shl eax, 4
add eax, 0x4a4e00
mov dword [ebp - 0x470], eax
jmp 0x42548b
inc esi
cmp esi, 0x1f
jg 0x42545c
mov eax, dword [esi*4 + 0x4a41a0]
test eax, eax
je 0x425485
mov dword [esp + 0xc], eax
mov ecx, dword [ebp - 0x470]
mov eax, str._Window__s__Flag__s_n
mov dword [esp + 4], eax
mov dword [esp], edi
mov dword [esp + 8], ecx
call sub.msvcrt.dll_fprintf
mov edx, dword [0x4a49ec]
mov eax, 1
mov ecx, esi
shl eax, cl
test dword [edx + ebx*4 + 0x140], eax
je 0x425569
mov dword [esp + 0xc], esi
mov eax, str.W:_d:_d:1_n
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
mov dword [esp], edi
call sub.msvcrt.dll_fprintf
mov dword [esp + 4], edi
mov dword [esp], 0xa
call sub.msvcrt.dll_fputc
jmp 0x425485
mov dword [esp], 5
mov eax, str.Challenge_Options
mov dword [esp + 4], eax
call fcn.00424960
jmp 0x425290
mov dword [esp], 4
mov edx, str.Visual_Options
mov dword [esp + 4], edx
call fcn.00424960
jmp 0x425290
mov dword [esp], 0
mov ecx, str.Interface_Options
mov dword [esp + 4], ecx
call fcn.00424960
jmp 0x425290
mov eax, dword [ebx*4 + 0x4a3da0]
mov edx, str.X:_s_n
mov dword [esp + 4], edx
mov dword [esp + 8], eax
jmp 0x425434
mov dword [esp + 0xc], esi
mov eax, str.W:_d:_d:0_n
mov dword [esp + 8], ebx
jmp 0x4254de
mov edx, dword [str.Options_Dump]
mov eax, edi
call fcn.0041bb60
mov dword [esp], edi
call fcn.0047ec70
mov dword [esp], str.Done.
call fcn.004811d0
call fcn.004971f0
jmp case.0x425243.1132
mov dword [esp], str.Failed_
call fcn.004811d0
jmp 0x42559c