Function at 0x4fc9b0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x45c
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x3f0], eax
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
jne 0x4fc9f7
push str.FOR__IS_DEBUGGER_PRESENT
call fcn.00501ed0
add esp, 4
test eax, eax
jne 0x4fc9f7
push str.FOR_DEBUGGER_IS_PRESENT
call fcn.00501ed0
add esp, 4
test eax, eax
je 0x4fc9fe
mov esi, 1
jmp 0x4fca00
xor esi, esi
push str.FOR_DISABLE_STACK_TRACE
call fcn.00501ed0
xor edx, edx
test eax, eax
lea eax, [ebp - 0x18]
push eax
push 0
push 0x4000
setne dl
mov dword [ebp - 0x444], edx
call fcn.004f1dd0
add esp, 0x10
xor ebx, ebx
test eax, eax
movzx eax, word [ebp - 0x3f0]
mov dword [ebp - 8], eax
sete bl
cmp dword [0x579180], 0
je 0x4fcb55
mov dword [0x579180], 0
call dword [sym.imp.KERNEL32.dll_GetThreadLocale]
push str.ifcore_msg.dll
push eax
push str._lu__s
lea edx, [ebp - 0x8e]
push edx
call fcn.0052ad36
add esp, 0x10
lea eax, [ebp - 0x8e]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x58bc38], eax
test eax, eax
je 0x4fcf2a
mov dword [0x579184], 0
xor eax, eax
mov edi, 0x1c2
mov dword [ebp - 0x44c], ebx
mov ebx, eax
mov dword [ebp - 0x448], esi
mov eax, edi
mov edx, 0x585060
lea ecx, [ebp - 0x1c]
call fcn.004fd840
mov ecx, dword [ebp - 0x1c]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fcad4
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fcabf
dec eax
mov esi, eax
lea edx, [ebx*4 + 0x579188]
push edx
push 0
inc esi
push esi
call fcn.004f1dd0
push esi
push dword [ebp - 0x1c]
push dword [ebx*4 + 0x579188]
call fcn.0052a440
add esp, 0x18
inc ebx
inc edi
cmp ebx, 5
jl 0x4fcaab
mov eax, 0x1c7
mov edx, 0x585060
mov ebx, dword [ebp - 0x44c]
lea ecx, [ebp - 0x1c]
mov esi, dword [ebp - 0x448]
call fcn.004fd840
push 0x10
push dword [ebp - 0x1c]
push str.forrtl
call fcn.0052a440
add esp, 0xc
mov eax, 0x1f9
mov edx, 0x585060
lea ecx, [ebp - 0x1c]
call fcn.004fd840
push 0x40
push dword [ebp - 0x1c]
push str.Intel_r__Visual_Fortran_run_time_error
call fcn.0052a440
add esp, 0xc
mov ecx, dword [ebp - 8]
xor edx, edx
lea eax, [edx*8]
cmp ecx, dword [eax + edx*4 + 0x577bc0]
je 0x4fd57b
inc edx
cmp edx, 0x1d0
jl 0x4fcb5a
xor edi, edi
mov dword [ebp - 4], edi
cmp dword [ebp + 0xc], 0
jle 0x4fcb9c
lea eax, [ebp + 0x10]
push eax
push edi
lea edx, [ebp - 0x3a0]
push edx
call fcn.0052b1a8
add esp, 0xc
lea edi, [ebp - 0x3a0]
mov eax, dword [0x585078]
test eax, eax
mov dword [ebp - 0x3ec], eax
je 0x4fcc1d
mov ecx, edi
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fcbc4
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fcbaf
dec eax
mov dword [ebp - 0x450], eax
cmp eax, dword [ebp - 0x3ec]
jb 0x4fcbe9
push dword [ebp - 0x3ec]
push edi
push dword [0x585074]
call fcn.0053ba70
add esp, 0xc
jmp 0x4fcc1d
push dword [ebp - 0x450]
push edi
push dword [0x585074]
call fcn.0053ba70
mov eax, dword [ebp - 0x450]
mov edx, dword [0x585078]
sub edx, eax
push edx
mov ecx, dword [0x585074]
push 0x20
add ecx, eax
push ecx
call fcn.0053bad0
add esp, 0x18
push 0x585068
call fcn.004d87b0
add esp, 4
mov eax, dword [0x58506c]
test eax, eax
jne 0x4fcc75
push str.FORT0
mov dword [0x58506c], 1
call fcn.0052aa9f
mov dword [ebp - 0x450], eax
add esp, 4
cmp dword [ebp - 0x450], 0
je 0x4fcc75
call fcn.0052b1c2
add eax, 0x40
push eax
push 0x566d74
push dword [ebp - 0x450]
call fcn.0052b448
add esp, 0xc
mov eax, dword [ebp - 4]
test ebx, ebx
mov dword [0x585068], 0
mov edx, dword [eax*4 + 0x579188]
mov dword [ebp - 0x3ec], edx
je 0x4fccc1
push dword [ebp - 8]
push dword [ebp - 0x3ec]
push 0x584e60
call fcn.0052ad36
push edi
push 0x584e60
push str._s_s_r_n
push dword [ebp - 0x18]
call fcn.0052ad36
add esp, 0x1c
jmp 0x4fcee2
mov ecx, edx
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fccda
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fccc5
dec eax
mov ecx, edi
mov dword [ebp - 0x450], eax
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fccf9
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fcce4
dec eax
mov edx, dword [ebp - 0x450]
lea ecx, [ebp - 0x18]
push ecx
push 0
lea eax, [edx + eax + 0x15]
push eax
call fcn.004f1dd0
add esp, 0xc
test eax, eax
je 0x4fceb4
mov eax, dword [ebp - 0x3f0]
mov dword [ebp - 0x30], 0x1f6
mov dword [ebp - 0x2c], 1
mov dword [ebp - 0x28], eax
cmp dword [0x579180], 0
je 0x4fce4b
mov dword [0x579180], 0
call dword [sym.imp.KERNEL32.dll_GetThreadLocale]
push str.ifcore_msg.dll
push eax
push str._lu__s
lea edx, [ebp - 0x3f0]
push edx
call fcn.0052ad36
add esp, 0x10
lea eax, [ebp - 0x3f0]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x58bc38], eax
test eax, eax
je 0x4fcf3c
mov dword [0x579184], 0
xor eax, eax
mov edi, 0x1c2
mov dword [ebp - 0x44c], ebx
mov ebx, eax
mov dword [ebp - 0x448], esi
mov eax, edi
mov edx, 0x585060
lea ecx, [ebp - 0x24]
call fcn.004fd840
mov ecx, dword [ebp - 0x24]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fcdca
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fcdb5
dec eax
mov esi, eax
lea edx, [ebx*4 + 0x579188]
push edx
push 0
inc esi
push esi
call fcn.004f1dd0
push esi
push dword [ebp - 0x24]
push dword [ebx*4 + 0x579188]
call fcn.0052a440
add esp, 0x18
inc ebx
inc edi
cmp ebx, 5
jl 0x4fcda1
mov eax, 0x1c7
mov edx, 0x585060
mov ebx, dword [ebp - 0x44c]
lea ecx, [ebp - 0x24]
mov esi, dword [ebp - 0x448]
call fcn.004fd840
push 0x10
push dword [ebp - 0x24]
push str.forrtl
call fcn.0052a440
add esp, 0xc
mov eax, 0x1f9
mov edx, 0x585060
lea ecx, [ebp - 0x24]
call fcn.004fd840
push 0x40
push dword [ebp - 0x24]
push str.Intel_r__Visual_Fortran_run_time_error
call fcn.0052a440
add esp, 0xc
xor edx, edx
lea eax, [edx*8]
cmp dword [eax + edx*4 + 0x577bc0], 0x1f6
je 0x4fcf68
inc edx
cmp edx, 0x1d0
jl 0x4fce4d
xor eax, eax
mov dword [ebp - 0x450], eax
cmp dword [ebp - 0x2c], 0
jle 0x4fcf4e
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x450]
push 0x584f60
call fcn.0052b1a8
add esp, 0xc
call fcn.0052b1c2
push 0x584f60
push 0x566d08
add eax, 0x40
push eax
call fcn.0052b46e
add esp, 0xc
jmp 0x4fcee2
push dword [ebp - 8]
push dword [ebp - 0x3ec]
push 0x584e60
call fcn.0052ad36
push edi
push 0x584e60
push str._s_s_r_n
push dword [ebp - 0x18]
call fcn.0052ad36
add esp, 0x1c
mov ebx, 2
cmp dword [ebp - 4], 4
je 0x4fd291
mov eax, dword [0x58ba08]
test eax, eax
je 0x4fcf07
cmp dword [ebp - 0x444], 0
jne 0x4fcf07
cmp ebx, 1
je 0x4fd01a
test ebx, ebx
jne 0x4fd057
test esi, esi
je 0x4fcf1d
cmp dword [ebp - 4], 3
je 0x4fd27c
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
cmp dword [0x579184], 0
je 0x4fca96
jmp 0x4fcb55
cmp dword [0x579184], 0
je 0x4fcd8c
jmp 0x4fce4b
push 0x100
push dword [ebp - 0x450]
push 0x584f60
call fcn.0052a440
jmp 0x4fce94
mov ecx, dword [eax + edx*4 + 0x577bc4]
mov dword [0x585060], ecx
cmp dword [0x579184], 0
je 0x4fcf90
mov eax, dword [eax + edx*4 + 0x577bc8]
mov dword [ebp - 0x450], eax
jmp 0x4fce76
push 0
mov eax, dword [eax + edx*4 + 0x577bc8]
lea edx, [ebp - 0x38]
push 0x200
push edx
push 0x409
mov dword [ebp - 0x450], eax
push 0x800001f6
push dword [0x58bc38]
push 0x900
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
test eax, eax
je 0x4fce76
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x450], ecx
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fcfeb
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fcfd6
dec eax
cmp eax, 1
jbe 0x4fce76
mov edx, dword [ebp - 0x450]
cmp byte [edx + eax - 2], 0xd
jne 0x4fce76
cmp byte [edx + eax - 1], 0xa
jne 0x4fce76
mov byte [edx + eax - 2], 0
jmp 0x4fce76
cmp dword [eax + 4], 0
jne 0x4fd04a
cmp dword [ebp - 4], 3
je 0x4fd04a
cmp dword [ebp - 8], 0x197
je 0x4fd04a
cmp dword [ebp - 8], 0x196
je 0x4fd04a
cmp dword [ebp - 8], 0x195
je 0x4fd04a
cmp dword [ebp - 8], 0x194
jne 0x4fd057
push dword [ebp - 0x18]
push dword [eax]
call fcn.0050fcc0
add esp, 8
push str.FOR_DIAGNOSTIC_LOG_FILE
mov ebx, dword [ebp - 0x18]
call fcn.0052aa9f
add esp, 4
test eax, eax
je 0x4fd09c
cmp dword [ebp - 8], 0xaa
je 0x4fd215
push 0x566d74
push eax
call fcn.0052b636
add esp, 8
mov edi, eax
test edi, edi
je 0x4fd09c
push edi
push ebx
call fcn.0052b64d
push edi
call fcn.0052b7c0
add esp, 0xc
push str.FOR_DISABLE_DIAGNOSTIC_DISPLAY
call fcn.00501ed0
add esp, 4
test eax, eax
jne 0x4fd0fe
cmp dword [0x587060], 0
je 0x4fd0cb
push 0x2010
push str.Intel_r__Visual_Fortran_run_time_error
push ebx
call fcn.005504e0
add esp, 0xc
jmp 0x4fd0fe
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, dword [eax + 0x3c]
movzx edx, word [ecx + eax + 0x18]
cmp edx, 0x10b
je 0x4fd145
cmp dword [ebp - 8], 0xaa
je 0x4fd10e
call fcn.0052b1c2
add eax, 0x40
push eax
push ebx
call fcn.0052b64d
add esp, 8
push dword [ebp - 0x18]
call fcn.004f1e90
add esp, 4
jmp 0x4fcf0f
push 0xfffffffffffffff4
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edi, eax
mov ecx, ebx
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fd131
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fd11c
dec eax
push 0
lea edx, [ebp - 0x448]
push edx
push eax
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x4fd0fe
movzx eax, word [ecx + eax + 0x5c]
cmp eax, 2
jne 0x4fd0e3
push str.user32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
je 0x4fd193
push str.MessageBoxA
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x4fd193
push 0x12010
push str.Intel_r__Visual_Fortran_run_time_error
push ebx
push 0
call eax
test eax, eax
jne 0x4fd0fe
cmp dword [ebp - 8], 0xaa
je 0x4fd1a1
jmp 0x4fd0ec
cmp dword [ebp - 8], 0xaa
je 0x4fd1db
jmp 0x4fd0ec
push 0xfffffffffffffff4
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edi, eax
mov ecx, ebx
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fd1c4
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fd1af
dec eax
push 0
lea edx, [ebp - 0x450]
push edx
push eax
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x4fd0fe
push 0xfffffffffffffff4
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edi, eax
mov ecx, ebx
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fd1fe
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fd1e9
dec eax
push 0
lea edx, [ebp - 0x44c]
push edx
push eax
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x4fd0fe
xor edx, edx
push edx
push 0x80
push 4
push edx
push edx
push 0x40000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov edi, eax
cmp edi, 0xffffffff
je 0x4fd09c
push 2
xor eax, eax
push eax
push eax
push edi
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
mov ecx, ebx
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fd25e
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fd249
dec eax
push 0
lea edx, [ebp - 0x444]
push edx
push eax
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x4fd09c
mov eax, dword [0x58ba08]
cmp dword [eax + 4], 0
jne 0x4fcf1d
int3
cmp dword [ebp - 0x444], 0
jne 0x4fd2a8
mov eax, dword [0x58ba08]
test eax, eax
je 0x4fd2a8
cmp ebx, 1
je 0x4fd2d0
test ebx, ebx
jne 0x4fd2dd
mov eax, dword [0x58ba08]
test eax, eax
je 0x4fd502
cmp dword [eax + 4], 0
je 0x4fd502
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x18]
push dword [eax]
call fcn.0050fcc0
add esp, 8
push str.FOR_DIAGNOSTIC_LOG_FILE
mov ebx, dword [ebp - 0x18]
call fcn.0052aa9f
add esp, 4
test eax, eax
je 0x4fd322
cmp dword [ebp - 8], 0xaa
je 0x4fd49b
push 0x566d74
push eax
call fcn.0052b636
add esp, 8
mov edi, eax
test edi, edi
je 0x4fd322
push edi
push ebx
call fcn.0052b64d
push edi
call fcn.0052b7c0
add esp, 0xc
push str.FOR_DISABLE_DIAGNOSTIC_DISPLAY
call fcn.00501ed0
add esp, 4
test eax, eax
jne 0x4fd384
cmp dword [0x587060], 0
je 0x4fd351
push 0x2010
push str.Intel_r__Visual_Fortran_run_time_error
push ebx
call fcn.005504e0
add esp, 0xc
jmp 0x4fd384
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, dword [eax + 0x3c]
movzx edx, word [ecx + eax + 0x18]
cmp edx, 0x10b
je 0x4fd3cb
cmp dword [ebp - 8], 0xaa
je 0x4fd394
call fcn.0052b1c2
add eax, 0x40
push eax
push ebx
call fcn.0052b64d
add esp, 8
push dword [ebp - 0x18]
call fcn.004f1e90
add esp, 4
jmp 0x4fd2ac
push 0xfffffffffffffff4
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edi, eax
mov ecx, ebx
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fd3b7
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fd3a2
dec eax
push 0
lea edx, [ebp - 0x448]
push edx
push eax
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x4fd384
movzx eax, word [ecx + eax + 0x5c]
cmp eax, 2
jne 0x4fd369
push str.user32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
je 0x4fd419
push str.MessageBoxA
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x4fd419
push 0x12010
push str.Intel_r__Visual_Fortran_run_time_error
push ebx
push 0
call eax
test eax, eax
jne 0x4fd384
cmp dword [ebp - 8], 0xaa
je 0x4fd427
jmp 0x4fd372
cmp dword [ebp - 8], 0xaa
je 0x4fd461
jmp 0x4fd372
push 0xfffffffffffffff4
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edi, eax
mov ecx, ebx
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fd44a
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fd435
dec eax
push 0
lea edx, [ebp - 0x450]
push edx
push eax
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x4fd384
push 0xfffffffffffffff4
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edi, eax
mov ecx, ebx
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fd484
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fd46f
dec eax
push 0
lea edx, [ebp - 0x44c]
push edx
push eax
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x4fd384
xor edx, edx
push edx
push 0x80
push 4
push edx
push edx
push 0x40000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov edi, eax
cmp edi, 0xffffffff
je 0x4fd322
push 2
xor eax, eax
push eax
push eax
push edi
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
mov ecx, ebx
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fd4e4
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fd4cf
dec eax
push 0
lea edx, [ebp - 0x444]
push edx
push eax
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x4fd322
call fcn.00500f20
mov eax, dword [0x58ba08]
test eax, eax
je 0x4fd523
push eax
call fcn.004f1e90
add esp, 4
mov dword [0x58ba08], 0
test esi, esi
je 0x4fd528
int3
push str.f77_dump_flag
call fcn.00501ed0
add esp, 4
test eax, eax
jne 0x4fd576
push str.decfort_dump_flag
call fcn.00501ed0
add esp, 4
test eax, eax
jne 0x4fd576
cmp dword [0x585070], 0
jne 0x4fd576
cmp dword [0x587060], 0
je 0x4fd56b
push 1
call fcn.005504e0
add esp, 4
jmp 0x4fcf1d
push dword [ebp - 8]
call fcn.0052a7e7
add esp, 4
call fcn.0052b834
mov ecx, dword [eax + edx*4 + 0x577bc4]
mov dword [ebp - 4], ecx
cmp dword [0x579184], 0
je 0x4fd597
mov edi, dword [eax + edx*4 + 0x577bc8]
jmp 0x4fd5f9
push 0
mov edi, dword [eax + edx*4 + 0x577bc8]
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 8]
push 0x200
push edx
push 0x409
lea ecx, [eax - 0x80000000]
push ecx
push dword [0x58bc38]
push 0x900
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
test eax, eax
je 0x4fd5f9
mov edi, dword [ebp - 0x20]
mov ecx, edi
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fd5e9
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fd5d4
dec eax
cmp eax, 1
jbe 0x4fd5f9
cmp byte [edi + eax - 2], 0xd
je 0x4fd785
xor edx, edx
lea eax, [ebp - 0x217]
push edx
push 0x189
push eax
push edx
push edx
push edi
push 0x600
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
test eax, eax
jne 0x4fcb7c
cmp dword [0x579180], 0
je 0x4fd746
mov dword [0x579180], 0
call dword [sym.imp.KERNEL32.dll_GetThreadLocale]
push str.ifcore_msg.dll
push eax
push str._lu__s
lea edx, [ebp - 0x440]
push edx
call fcn.0052ad36
add esp, 0x10
lea eax, [ebp - 0x440]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x58bc38], eax
test eax, eax
je 0x4fd79a
mov dword [0x579184], 0
xor edx, edx
mov eax, 0x1c2
mov dword [ebp - 0x450], edi
mov edi, eax
mov dword [ebp - 0x44c], ebx
mov dword [ebp - 0x448], esi
mov esi, edx
mov eax, edi
mov edx, 0x585060
lea ecx, [ebp - 0x34]
call fcn.004fd840
mov ecx, dword [ebp - 0x34]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fd6bf
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fd6aa
dec eax
mov ebx, eax
lea ecx, [esi*4 + 0x579188]
push ecx
push 0
inc ebx
push ebx
call fcn.004f1dd0
push ebx
push dword [ebp - 0x34]
push dword [esi*4 + 0x579188]
call fcn.0052a440
add esp, 0x18
inc esi
inc edi
cmp esi, 5
jl 0x4fd696
mov eax, 0x1c7
mov edx, 0x585060
mov edi, dword [ebp - 0x450]
lea ecx, [ebp - 0x34]
mov ebx, dword [ebp - 0x44c]
mov esi, dword [ebp - 0x448]
call fcn.004fd840
push 0x10
push dword [ebp - 0x34]
push str.forrtl
call fcn.0052a440
add esp, 0xc
mov eax, 0x1f9
mov edx, 0x585060
lea ecx, [ebp - 0x34]
call fcn.004fd840
push 0x40
push dword [ebp - 0x34]
push str.Intel_r__Visual_Fortran_run_time_error
call fcn.0052a440
add esp, 0xc
xor edx, edx
lea eax, [edx*8]
cmp dword [eax + edx*4 + 0x577bc0], 0x1f4
je 0x4fd7a9
inc edx
cmp edx, 0x1d0
jl 0x4fd748
push edi
push 0x566d08
lea eax, [ebp - 0x217]
push eax
call fcn.0052ad36
add esp, 0xc
lea edi, [ebp - 0x217]
jmp 0x4fcb7c
cmp byte [edi + eax - 1], 0xa
jne 0x4fd5f9
mov byte [edi + eax - 2], 0
jmp 0x4fd5f9
cmp dword [0x579184], 0
je 0x4fd679
jmp 0x4fd746
mov ecx, dword [eax + edx*4 + 0x577bc4]
mov dword [ebp - 4], ecx
cmp dword [0x579184], 0
je 0x4fd7c5
mov edi, dword [eax + edx*4 + 0x577bc8]
jmp 0x4fd765
push 0
mov edi, dword [eax + edx*4 + 0x577bc8]
lea eax, [ebp - 0x3c]
push 0x200
push eax
push 0x409
push 0x800001f4
push dword [0x58bc38]
push 0x900
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
test eax, eax
je 0x4fd765
mov edi, dword [ebp - 0x3c]
mov ecx, edi
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x4fd816
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x4fd801
dec eax
cmp eax, 1
jbe 0x4fd765
cmp byte [edi + eax - 2], 0xd
jne 0x4fd765
cmp byte [edi + eax - 1], 0xa
jne 0x4fd765
mov byte [edi + eax - 2], 0
jmp 0x4fd765