Function at 0x5b3730
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push esi
push edi
push ebx
sub esp, 0x49c
mov ebx, edx
xor edx, edx
mov esi, eax
mov edi, dword [0x6d159c]
lea eax, [ebp - 0x410]
xor edi, ebp
push edx
push 0x400
push eax
push edx
push ebx
push edx
push 0x1200
mov dword [ebp - 0x10], edi
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
test eax, eax
je 0x5b3779
mov byte [ebp + eax - 0x410], 0
jmp 0x5b3857
cmp dword [0x6d3120], 0
je 0x5b37fb
mov dword [0x6d3120], 0
call dword [sym.imp.KERNEL32.dll_GetThreadLocale]
mov edi, str._lu__s
mov dword [ebp - 0x4a8], edi
mov dword [ebp - 0x4a4], eax
mov dword [ebp - 0x4a0], str.ifcore_msg.dll
call fcn.0062fd20
mov edx, eax
lea eax, [ebp - 0x4a4]
push eax
push 0
push edi
push 0xffffffffffffffff
mov eax, dword [edx]
lea edi, [ebp - 0x460]
push edi
push dword [edx + 4]
or eax, 1
push eax
call fcn.0064c89e
add esp, 0x1c
push edi
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x81f668], eax
test eax, eax
je 0x5b3a32
mov dword [0x6d3124], 0
call fcn.005b2bb0
xor edx, edx
lea eax, [edx + edx*2]
cmp dword [eax*4 + 0x6d1600], 0x1f8
je 0x5b3a49
inc edx
cmp edx, 0x23b
jl 0x5b37fd
mov edi, dword [0x71856c]
mov dword [ebp - 0x484], edi
mov dword [ebp - 0x480], ebx
call fcn.0062fd20
mov edx, eax
lea eax, [ebp - 0x480]
push eax
push 0
push edi
push 0xffffffffffffffff
mov ebx, dword [edx]
lea edi, [ebp - 0x410]
push edi
push dword [edx + 4]
or ebx, 1
push ebx
call fcn.0064c89e
add esp, 0x1c
push 0x71859c
call fcn.005e0700
add esp, 4
mov eax, dword [0x7185a0]
test eax, eax
jne 0x5b38e6
mov dword [0x7185a0], 1
lea eax, [ebp - 0x468]
push eax
push 0
push 0x1001
call fcn.005c09a0
add esp, 0xc
push 0x105
mov ebx, dword [ebp - 0x468]
push ebx
push str.FORT0
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
test eax, eax
jbe 0x5b38af
cmp eax, 0x105
jb 0x5b38b6
test ebx, ebx
je 0x5b38b6
mov byte [ebx], 0
mov ebx, dword [ebp - 0x468]
cmp byte [ebx], 0
je 0x5b38dd
push 2
call fcn.00647235
push eax
push 0x697654
push ebx
call fcn.006572e0
add esp, 0x10
mov ebx, dword [ebp - 0x468]
push ebx
call fcn.005c0a60
add esp, 4
mov dword [0x71859c], 0
cmp dword [0x7253f4], 0
jne 0x5b393d
push 2
call fcn.00647235
mov edi, eax
add esp, 4
mov ebx, str._s:__s
lea eax, [ebp - 0x410]
mov dword [eax - 0x68], ebx
mov dword [eax - 0x64], esi
mov dword [eax - 0x60], eax
call fcn.0062fd20
mov edx, eax
lea eax, [ebp - 0x474]
push eax
push 0
push ebx
push edi
push dword [edx + 4]
push dword [edx]
call fcn.0064c712
add esp, 0x18
jmp 0x5b3a16
mov ecx, esi
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x5b3956
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x5b3941
dec eax
mov ebx, eax
lea ecx, [ebp - 0x410]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x5b3975
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x5b3960
dec eax
lea edx, [ebp - 0x464]
push edx
push 0
lea ebx, [ebx + eax + 1]
push ebx
call fcn.005c09a0
add esp, 0xc
test eax, eax
jne 0x5b3999
mov edi, dword [ebp - 0x464]
test edi, edi
jne 0x5b39b7
push 0x2010
push str.Intel_r__Visual_Fortran_run_time_error
lea eax, [ebp - 0x410]
mov dword [eax - 0x54], eax
push eax
call fcn.0062f340
add esp, 0xc
jmp 0x5b3a16
mov ebx, str._s:__s
lea eax, [ebp - 0x410]
mov dword [ebp - 0x498], ebx
mov dword [ebp - 0x494], esi
mov dword [eax - 0x80], eax
call fcn.0062fd20
mov edx, eax
lea eax, [ebp - 0x494]
push eax
push 0
push ebx
push 0xffffffffffffffff
push edi
mov ecx, dword [edx]
push dword [edx + 4]
or ecx, 1
push ecx
call fcn.0064c89e
push 0x2010
push str.Intel_r__Visual_Fortran_run_time_error
push dword [ebp - 0x464]
call fcn.0062f340
push dword [ebp - 0x464]
call fcn.005c0a60
add esp, 0x2c
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x6d159c]
jne 0x5b3a44
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
cmp dword [0x6d3124], 0
je 0x5b37f6
jmp 0x5b37fb
call fcn.0063f93a
mov edx, dword [eax*4 + 0x6d1604]
mov dword [0x718568], edx
cmp dword [0x6d3124], 0
je 0x5b3a71
mov edi, dword [eax*4 + 0x6d1608]
mov dword [0x71856c], edi
jmp 0x5b3820
push 0
push 0x200
mov edi, dword [eax*4 + 0x6d1608]
lea eax, [ebp - 0x488]
push eax
push 0x409
push 0x800001f8
push dword [0x81f668]
push 0x900
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
test eax, eax
je 0x5b3ad0
mov edi, dword [ebp - 0x488]
mov ecx, edi
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x5b3ac4
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x5b3aaf
dec eax
cmp eax, 1
jbe 0x5b3ad0
cmp byte [edi + eax - 2], 0xd
je 0x5b3adb
mov dword [0x71856c], edi
jmp 0x5b3820
cmp byte [edi + eax - 1], 0xa
jne 0x5b3ad0
mov byte [edi + eax - 2], 0
jmp 0x5b3ad0