Function at 0x51d4f0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ecx, 0x1a
mov ebp, esp
push edi
push esi
push ebx
lea edi, [ebp - 0x80]
mov esi, 0x54be3d
sub esp, 0x9c
mov edx, dword [ebp + 0xc]
sub edx, dword [ebp + 8]
lea eax, [edx + 1]
mov dword [ebp - 0x8c], eax
mov eax, dword [str.not_enough_space_for_format_expansion__Please_submit_full_bug_report_at_https:__gcc.gnu.org_bugs__:_n]
mov dword [ebp - 0x81], eax
mov eax, dword [0x54bea1]
mov dword [ebp - 0x1c], eax
lea eax, [edx + 0x87]
rep movsd dword es:[edi], dword [esi]
and eax, 0xfffffff0
call fcn.00497490
mov ecx, 0x1a
sub esp, eax
lea esi, [ebp - 0x81]
lea ebx, [esp + 0x1b]
and ebx, 0xfffffff0
mov edi, ebx
lea eax, [ebx + 0x68]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp + 8]
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 4], ecx
call sub.msvcrt.dll_memcpy
mov eax, dword [ebp - 0x8c]
mov byte [ebx + eax + 0x67], 0
mov dword [esp], ebx
call fcn.0053ba90
nop
nop
nop
nop
push esi
push ebx
sub esp, 0x24
cmp byte [0x53e6c4], 0
jne 0x51d5cd
mov byte [0x53e6c4], 1
call fcn.0053cd30
test eax, eax
je 0x51d60c
mov ebx, dword [eax + 4]
cmp byte [ebx], 0x2a
je 0x51d5fa
lea eax, [esp + 0x1c]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], ebx
mov dword [esp + 0x1c], 0xffffffff
mov dword [esp + 0xc], eax
call fcn.004962e0
mov esi, eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], 0x30
mov dword [esp + 4], 1
mov dword [esp], str.terminate_called_after_throwing_an_instance_of_
add eax, 0x40
mov dword [esp + 0xc], eax
call sub.msvcrt.dll_fwrite
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
cmp dword [esp + 0x1c], 0
mov dword [esp + 4], eax
je 0x51d5c3
mov dword [esp], ebx
call sub.msvcrt.dll_fputs
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], 2
mov dword [esp + 4], 1
mov dword [esp], 0x54bfd5
add eax, 0x40
mov dword [esp + 0xc], eax
call sub.msvcrt.dll_fwrite
cmp dword [esp + 0x1c], 0
je 0x51d602
call fcn.0053cf40
mov dword [esp], esi
call sub.msvcrt.dll_fputs
jmp 0x51d58f
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], 0x1d
mov dword [esp + 4], 1
mov dword [esp], str.terminate_called_recursively_n
add eax, 0x40
mov dword [esp + 0xc], eax
call sub.msvcrt.dll_fwrite
call sub.msvcrt.dll_abort
add ebx, 1
jmp 0x51d522
mov dword [esp], esi
call sub.msvcrt.dll_free
jmp 0x51d5be
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], 0x2d
mov dword [esp + 4], 1
mov dword [esp], str.terminate_called_without_an_active_exception_n
add eax, 0x40
mov dword [esp + 0xc], eax
call sub.msvcrt.dll_fwrite
call sub.msvcrt.dll_abort
sub edx, 1
mov dword [esp], eax
jne 0x51d6aa
call fcn.0053cba0
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 8]
mov ebx, eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], 0xb
mov dword [esp + 4], 1
mov dword [esp], str.__what__:
add eax, 0x40
mov dword [esp + 0xc], eax
call sub.msvcrt.dll_fwrite
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], ebx
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], 0xa
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputc
call fcn.0053cd90
jmp 0x51d634
call fcn.0053cba0
call fcn.0053cd90
jmp 0x51d634