Function at 0x40ba50
Capabilities:
Query environment variable

Disassembly:
push ebp
mov eax, 1
mov ebp, esp
sub esp, 0x18
mov dword [esp + 4], eax
mov dword [esp], 0
call fcn.0040cf90
call fcn.0040fcc0
test eax, eax
jne 0x40bfd8
mov edx, dword [0x44e218]
test edx, edx
jne 0x40bfc7
mov dword [esp], 0x4267f4
call sub.msys_1.0.dll_getenv
test eax, eax
je 0x40baa1
mov ecx, 1
mov dword [0x44a248], ecx
mov eax, dword [0x4492b8]
test eax, eax
jne 0x40bf80
xor eax, eax
mov dword [0x44a188], eax
mov eax, dword [0x44a148]
cmp eax, 1
je 0x40c041
test eax, eax
je 0x40bd18
mov eax, dword [0x44a1b8]
cmp eax, 1
je 0x40bd2d
test eax, eax
jne 0x40bae4
xor eax, eax
mov dword [0x44ea88], eax
mov eax, dword [0x449218]
test eax, eax
jle 0x40bf37
mov ecx, dword [0x44d3f8]
test ecx, ecx
jne 0x40c070
mov ecx, dword [0x4496d8]
test ecx, ecx
jne 0x40c205
dec eax
jle 0x40bb2c
mov ecx, dword [0x449f98]
test ecx, ecx
jne 0x40c258
mov ecx, dword [0x44aac8]
test ecx, ecx
jne 0x40c233
mov ecx, dword [0x44ea88]
test ecx, ecx
jne 0x40c0c0
mov edx, dword [0x449288]
test edx, edx
jne 0x40bf16
mov eax, dword [0x44ea88]
test eax, eax
je 0x40bb5c
mov ecx, 1
mov dword [0x44e1c8], ecx
test edx, edx
je 0x40bb6f
mov eax, 1
mov dword [0x44ea88], eax
mov eax, 1
mov edx, dword [0x4496e8]
test edx, edx
jne 0x40bb83
mov ecx, dword [0x449198]
test ecx, ecx
je 0x40bbbb
test eax, eax
je 0x40bbc3
mov eax, dword [0x44e1c8]
test eax, eax
jne 0x40c280
mov edx, dword [0x4496d8]
test edx, edx
jne 0x40c1a0
mov dword [esp], str.variable_trailing_context_rules_cannot_be_used_with__f_or__F
call sub.msys_intl_8.dll_libintl_gettext
mov dword [esp], eax
call fcn.0040cdf0
mov eax, dword [0x44ea88]
test eax, eax
jne 0x40c162
mov eax, dword [0x44d448]
test eax, eax
jne 0x40bbe6
mov edx, dword [0x44b2d8]
test edx, edx
je 0x40c211
mov dword [esp], str.define_YY_SKIP_YYWRAP
call fcn.0040d860
mov ecx, dword [0x44f028]
test ecx, ecx
jne 0x40bf42
mov dword [esp], 0x426858
call fcn.0040d860
cmp dword [0x449248], 0x100
je 0x40bf70
mov dword [esp], str.typedef_char_YY_CHAR_
call fcn.0040d860
mov dword [esp], 0x426890
call fcn.0040d860
mov eax, dword [0x44b2d8]
test eax, eax
je 0x40bd37
mov dword [esp], str.define_yytext_ptr_yytext
call fcn.0040d860
mov edx, dword [0x449f98]
test edx, edx
jne 0x40c222
mov dword [esp], 0x426858
call fcn.0040d860
mov ecx, dword [0x449198]
test ecx, ecx
jne 0x40bdf0
mov eax, dword [0x44b2d8]
test eax, eax
je 0x40c151
mov dword [esp], 0x426890
call fcn.0040d860
mov edx, dword [0x44d3f8]
test edx, edx
jne 0x40be16
mov ecx, dword [0x44b2d8]
test ecx, ecx
jne 0x40be30
mov eax, dword [0x44e268]
test eax, eax
je 0x40c0e5
mov ecx, dword [0x44a288]
test ecx, ecx
je 0x40c000
mov eax, dword [0x44e268]
test eax, eax
je 0x40c28c
mov ecx, dword [0x44d458]
test ecx, ecx
jne 0x40c028
lea esi, [esi]
lea edi, [edi]
mov ecx, dword [0x449788]
test ecx, ecx
jne 0x40bec0
mov eax, dword [0x449248]
mov dword [0x44d408], eax
mov eax, dword [eax*4 + 0x44f048]
cdq
mov dword [0x44f048], eax
xor eax, edx
sub eax, edx
mov dword [0x44eef8], eax
test ecx, ecx
jne 0x40bf10
leave
ret
xor eax, eax
mov dword [0x44aac8], eax
mov eax, dword [0x44a1b8]
cmp eax, 1
jne 0x40bad9
mov eax, 1
jmp 0x40badf
mov dword [esp], 0x426858
call fcn.0040d860
mov ecx, dword [0x44a138]
test ecx, ecx
je 0x40c050
mov eax, dword [0x44e268]
test eax, eax
jne 0x40c1ac
mov dword [esp], str.ifdef_VMS
call fcn.0040d860
mov dword [esp], str.ifndef___VMS_POSIX
call fcn.0040d860
mov dword [esp], str.FILE_yyin___FILE___0__yyout___FILE___0_
call fcn.0040d860
mov dword [esp], 0x4268cd
call fcn.0040d860
mov dword [esp], str.FILE_yyin__stdin__yyout__stdout_
call fcn.0040d860
mov dword [esp], 0x4268d3
call fcn.0040d860
mov dword [esp], 0x4268cd
call fcn.0040d860
mov dword [esp], str.FILE_yyin__stdin__yyout__stdout_
call fcn.0040d860
mov dword [esp], 0x4268d3
call fcn.0040d860
mov dword [esp], 0x426890
call fcn.0040d860
mov dword [esp], 0x426858
call fcn.0040d860
mov ecx, dword [0x449198]
test ecx, ecx
je 0x40bc69
mov dword [esp], str.typedef_yyconst_struct_yy_trans_info_yy_state_type_
call fcn.0040d860
mov dword [esp], 0x426890
call fcn.0040d860
mov edx, dword [0x44d3f8]
test edx, edx
je 0x40bc90
mov dword [esp], str.define_YY_FLEX_LEX_COMPAT
call fcn.0040d860
mov ecx, dword [0x44b2d8]
test ecx, ecx
je 0x40bc9e
mov dword [esp], str._ninclude__FlexLexer.h_
call fcn.0040d860
mov ecx, dword [0x44d448]
test ecx, ecx
je 0x40c140
mov eax, dword [0x44d458]
test eax, eax
je 0x40bce0
mov dword [esp], str.int_yyFlexLexer::yylex__
call fcn.0040d860
mov dword [esp], 0x42695d
call fcn.0040d860
mov dword [esp], str._tLexerError___yyFlexLexer::yylex_invoked_but__option_yyclass_used____
call fcn.0040d860
mov dword [esp], 0x4269a6
call fcn.0040d860
mov dword [esp], 0x4269b1
call fcn.0040d860
mov edx, dword [0x44d458]
mov dword [esp], str._ndefine_YY_DECL_int__s::yylex___n
mov dword [esp + 4], edx
call fcn.0040d620
mov ecx, dword [0x449788]
test ecx, ecx
je 0x40bcee
mov esi, esi
lea edi, [edi]
mov edx, dword [0x449248]
mov eax, 0x44f048
mov dword [esp + 4], eax
mov dword [esp], 0x44eae8
mov dword [esp + 8], edx
call fcn.00403920
mov dword [0x44d408], eax
mov eax, dword [0x449248]
mov ecx, dword [0x449788]
mov eax, dword [eax*4 + 0x44f048]
cdq
mov dword [0x44f048], eax
xor eax, edx
sub eax, edx
mov dword [0x44eef8], eax
test ecx, ecx
je 0x40bd16
lea esi, [esi]
leave
jmp fcn.004038a0
mov dword [esp], str.Variable_trailing_context_rules_entail_a_large_performance_penalty_n
call sub.msys_intl_8.dll_libintl_gettext
mov dword [esp + 4], eax
mov edx, dword [0x4490a0]
mov ecx, dword [edx + 0xc]
mov dword [esp], ecx
call sub.msys_intl_8.dll_libintl_fprintf
mov edx, dword [0x449288]
jmp 0x40bb48
mov dword [esp], str._ndefine_FLEX_DEBUG
call fcn.0040d860
mov dword [esp], 0x426858
call fcn.0040d860
cmp dword [0x449248], 0x100
jne 0x40bc10
lea esi, [esi]
mov dword [esp], str.typedef_unsigned_char_YY_CHAR_
jmp 0x40bc17
mov ecx, 0x425ce2
mov dword [esp + 4], ecx
mov edx, dword [str.lex.backup]
mov dword [esp], edx
call sub.msys_1.0.dll_fopen
mov dword [0x44a188], eax
test eax, eax
jne 0x40bab5
mov dword [esp], str.could_not_create_backing_up_info_file__s
call sub.msys_intl_8.dll_libintl_gettext
mov edx, dword [str.lex.backup]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0040cf20
jmp 0x40bab5
mov dword [esp], 1
call fcn.0040a0a0
jmp 0x40ba86
mov dword [esp], str.fatal_parse_error
call sub.msys_intl_8.dll_libintl_gettext
mov dword [esp], eax
call fcn.00411fd0
mov dword [esp], 1
call fcn.0040a0a0
jmp 0x40ba78
mov edx, dword [0x44e268]
test edx, edx
je 0x40c180
mov dword [esp], str.define_yytext_ptr_yytext_r
call fcn.0040d860
mov ecx, dword [0x44d458]
test ecx, ecx
je 0x40bce0
mov dword [esp], str._option_yyclass_only_meaningful_for_C_scanners
call sub.msys_intl_8.dll_libintl_gettext
mov dword [esp], eax
call fcn.0040cdf0
jmp 0x40bce0
mov eax, 1
jmp 0x40bd1a
mov edx, dword [0x44e268]
test edx, edx
jne 0x40bdca
mov dword [esp], str.FILE_yyin___FILE___0__yyout___FILE___0_
call fcn.0040d860
jmp 0x40bdca
mov dword [esp], str._l_ATT_lex_compatibility_option_entails_a_large_performance_penalty_n
call sub.msys_intl_8.dll_libintl_gettext
mov dword [esp + 4], eax
mov eax, dword [0x4490a0]
mov edx, dword [eax + 0xc]
mov dword [esp], edx
call sub.msys_intl_8.dll_libintl_fprintf
mov dword [esp], str._and_may_be_the_actual_source_of_other_reported_performance_penalties_n
call sub.msys_intl_8.dll_libintl_gettext
mov dword [esp + 4], eax
mov eax, dword [0x4490a0]
mov edx, dword [eax + 0xc]
mov dword [esp], edx
call sub.msys_intl_8.dll_libintl_fprintf
mov eax, dword [0x449218]
jmp 0x40bb0d
mov dword [esp], str.REJECT_entails_a_large_performance_penalty_n
call sub.msys_intl_8.dll_libintl_gettext
mov dword [esp + 4], eax
mov eax, dword [0x4490a0]
mov edx, dword [eax + 0xc]
mov dword [esp], edx
call sub.msys_intl_8.dll_libintl_fprintf
jmp 0x40bb3a
mov dword [esp], str.extern_int_yylineno_
call fcn.0040d860
mov dword [esp], 0x426858
call fcn.0040d860
mov dword [esp], str.int_yylineno__1_
call fcn.0040d860
mov dword [esp], 0x426890
call fcn.0040d860
mov edx, dword [0x44b2d8]
test edx, edx
je 0x40bcab
mov dword [esp], str._ninclude__FlexLexer.h_
call fcn.0040d860
mov ecx, dword [0x44d448]
test ecx, ecx
jne 0x40be4a
lea esi, [esi]
mov dword [esp], str._nint_yyFlexLexer::yywrap____return_1__
call fcn.0040d860
jmp 0x40be4a
mov dword [esp], str.typedef_int_yy_state_type_
call fcn.0040d860
jmp 0x40bdfc
mov dword [esp], str.M4_YY_USES_REJECT
xor ecx, ecx
mov dword [esp + 4], ecx
call fcn.0040d8f0
jmp 0x40bbc3
mov dword [esp], str.extern_char_yytext_
call fcn.0040d860
mov dword [esp], str.define_yytext_ptr_yytext
call fcn.0040d860
jmp 0x40c01a
mov dword [esp], str._option_yylineno_cannot_be_used_with_REJECT
jmp 0x40bba9
mov dword [esp], str.ifdef_VMS
call fcn.0040d860
mov dword [esp], str.ifdef___VMS_POSIX
call fcn.0040d860
mov dword [esp], str.define_YY_STDINIT
call fcn.0040d860
mov dword [esp], 0x4268d3
call fcn.0040d860
mov dword [esp], 0x4268cd
call fcn.0040d860
mov dword [esp], str.define_YY_STDINIT
call fcn.0040d860
mov dword [esp], 0x4268d3
call fcn.0040d860
jmp 0x40bd5e
mov dword [esp], str.__option_yylineno_entails_a_performance_penalty_ONLY_on_rules_that_can_match_newline_characters_n
jmp 0x40c097
mov dword [esp], str._ndefine_yywrap_n__1
call fcn.0040d860
jmp 0x40bbda
mov dword [esp], str.define_YY_INTERACTIVE
call fcn.0040d860
jmp 0x40bdd6
mov dword [esp], str.yymore___entails_a_minor_performance_penalty_n
call sub.msys_intl_8.dll_libintl_gettext
mov dword [esp + 4], eax
mov eax, dword [0x4490a0]
mov edx, dword [eax + 0xc]
mov dword [esp], edx
call sub.msys_intl_8.dll_libintl_fprintf
jmp 0x40bb2c
mov dword [esp], str._I__interactive__entails_a_minor_performance_penalty_n
call sub.msys_intl_8.dll_libintl_gettext
mov dword [esp + 4], eax
mov eax, dword [0x4490a0]
mov edx, dword [eax + 0xc]
mov dword [esp], edx
call sub.msys_intl_8.dll_libintl_fprintf
jmp 0x40bb1e
mov dword [esp], str.REJECT_cannot_be_used_with__f_or__F
jmp 0x40bba9
mov dword [esp], str.extern_char_yytext____n
call fcn.0040d860
jmp 0x40c01a