Function at 0x402e1c
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x8c
mov dword [ebp - 0x54], sym.___gxx_personality_sj0
mov dword [ebp - 0x50], 0x413c10
lea eax, [ebp - 0x4c]
lea edx, [ebp - 0x18]
mov dword [eax], edx
mov edx, 0x403132
mov dword [eax + 4], edx
mov dword [eax + 8], esp
lea eax, [ebp - 0x6c]
mov dword [esp], eax
call sym.__Unwind_SjLj_Register
mov eax, dword [ebp + 8]
mov byte [eax], 0
mov dword [esp + 4], 0x415218
mov eax, dword [ebp + 8]
add eax, 4
mov dword [esp], eax
mov dword [ebp - 0x68], 0xffffffff
call fcn.00413334
mov dword [esp + 4], 0x415218
mov eax, dword [ebp + 8]
add eax, 8
mov dword [esp], eax
call fcn.00413334
mov dword [esp + 4], 0x415218
mov eax, dword [ebp + 8]
add eax, 0xc
mov dword [esp], eax
call fcn.00413334
mov dword [esp + 4], 0x415218
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [esp], eax
call fcn.00413334
mov eax, dword [ebp + 8]
mov dword [ebp - 0x70], eax
call sym.getInDevelopmentMode__
mov edx, dword [ebp - 0x70]
mov byte [edx], al
mov eax, dword [ebp + 8]
cmp byte [eax], 0
je 0x402f17
mov dword [esp], str.DCC_CONTROLLER_INSTALL_DIR
call sym._getenv
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x402ef5
mov dword [esp], str.MAXSYS_ROOT
call sym._getenv
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x402f17
mov eax, dword [ebp - 0x1c]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
add eax, 8
mov dword [esp], eax
mov dword [ebp - 0x68], 0xffffffff
call fcn.00413334
mov eax, dword [ebp + 8]
add eax, 8
mov dword [esp], eax
mov dword [ebp - 0x68], 0xffffffff
call method.std::string.size___const
test eax, eax
jne 0x402f9e
lea eax, [ebp - 0x38]
mov dword [esp], eax
call sym.getInstallDirFromMaxsysService__
sub esp, 4
lea eax, [ebp - 0x38]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
add eax, 8
mov dword [esp], eax
mov dword [ebp - 0x68], 3
call fcn.00413374
jmp 0x402f8c
lea eax, [ebp - 0x38]
mov dword [esp], eax
mov dword [ebp - 0x68], 0xffffffff
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
mov eax, dword [ebp + 8]
cmp byte [eax], 0
je 0x402fef
mov dword [esp], str.DCC_CONTROLLER_CLASSPATH_PREFIX
call sym._getenv
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x402fef
mov eax, dword [ebp - 0x1c]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
add eax, 4
mov dword [esp], eax
mov dword [ebp - 0x68], 0xffffffff
call fcn.00413334
mov eax, dword [ebp + 8]
add eax, 4
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
add eax, 0xc
mov dword [esp], eax
call fcn.00413374
mov eax, dword [ebp + 8]
add eax, 0xc
mov dword [esp], eax
mov dword [ebp - 0x68], 0xffffffff
call method.std::string.size___const
test eax, eax
je 0x40301e
mov dword [esp + 4], 0x415514
mov eax, dword [ebp + 8]
add eax, 0xc
mov dword [esp], eax
call method.std::string.operator_char_const_
lea edx, [ebp - 0x38]
mov dword [esp + 8], str._binController.jar
mov eax, dword [ebp + 8]
add eax, 8
mov dword [esp + 4], eax
mov dword [esp], edx
mov dword [ebp - 0x68], 0xffffffff
call method.std::basic_string_char__std::char_traits_char___std::allocator_char____std::operator_char__std::char_traits_char___std.allocator_char____std::basic_string_char__std::char_traits_char___std::allocator_char____const__char_const_
sub esp, 4
lea eax, [ebp - 0x38]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
add eax, 0xc
mov dword [esp], eax
mov dword [ebp - 0x68], 2
call method.std::string.operator_std::string_const_
jmp 0x403093
lea eax, [ebp - 0x38]
mov dword [esp], eax
mov dword [ebp - 0x68], 0xffffffff
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
mov eax, dword [ebp + 8]
cmp byte [eax], 0
je 0x4030d7
mov dword [esp], str.DCC_CONTROLLER_JVM_DIR
call sym._getenv
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x4030d7
mov eax, dword [ebp - 0x1c]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [esp], eax
call fcn.00413334
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [esp], eax
mov dword [ebp - 0x68], 0xffffffff
call method.std::string.size___const
test eax, eax
jne 0x4031a0
lea edx, [ebp - 0x38]
mov dword [esp + 8], str.libjre
mov eax, dword [ebp + 8]
add eax, 8
mov dword [esp + 4], eax
mov dword [esp], edx
call method.std::basic_string_char__std::char_traits_char___std::allocator_char____std::operator_char__std::char_traits_char___std.allocator_char____std::basic_string_char__std::char_traits_char___std::allocator_char____const__char_const_
sub esp, 4
lea eax, [ebp - 0x38]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [esp], eax
mov dword [ebp - 0x68], 1
call fcn.00413374
jmp 0x40318e
lea eax, [ebp - 0x38]
mov dword [esp], eax
mov dword [ebp - 0x68], 0xffffffff
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
mov dword [esp], str.environment:
mov dword [ebp - 0x68], 0xffffffff
call sym.du_startupTrace_char_const__..._
mov eax, dword [ebp + 8]
movzx eax, byte [eax]
mov dword [esp + 4], eax
mov dword [esp], str.__inDevMode_d
call sym.du_startupTrace_char_const__..._
mov eax, dword [ebp + 8]
add eax, 4
mov dword [esp], eax
call method.std::string.c_str___const
mov dword [esp + 4], eax
mov dword [esp], str.__classpathPrefix_s
call sym.du_startupTrace_char_const__..._
mov eax, dword [ebp + 8]
add eax, 8
mov dword [esp], eax
call method.std::string.c_str___const
mov dword [esp + 4], eax
mov dword [esp], str.__installDir_s
call sym.du_startupTrace_char_const__..._
mov eax, dword [ebp + 8]
add eax, 0xc
mov dword [esp], eax
call method.std::string.c_str___const
mov dword [esp + 4], eax
mov dword [esp], str.__lookupClasspath_s
call sym.du_startupTrace_char_const__..._
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [esp], eax
call method.std::string.c_str___const
mov dword [esp + 4], eax
mov dword [esp], str.__jvmDir_s
call sym.du_startupTrace_char_const__..._
lea eax, [ebp - 0x6c]
mov dword [esp], eax
call sym.__Unwind_SjLj_Unregister
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret