Function at 0x443830
Capabilities:
Query environment variable

Disassembly:
push ebx
push ebp
push esi
push edi
mov esi, ecx
call fcn.00443b80
mov ebp, dword [esp + 0x14]
test ebp, ebp
je 0x4438cc
mov eax, dword [esi + 0x44]
mov edi, dword [sym.imp.MSVCIRT.dll_public:_class_ostream____thiscall_ostream::operator___char_const__]
test eax, eax
je 0x443870
mov ecx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
push ebp
push str.Reading_config_file:
call edi
mov ecx, eax
call edi
push eax
call dword [sym.imp.MSVCIRT.dll_class_ostream____cdecl_endl_class_ostream__]
add esp, 4
push ebp
lea ecx, [esi + 0x198]
call fcn.0043e300
mov ebx, eax
test ebx, ebx
je 0x443b40
mov ecx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
push ebx
push str.ERROR:
call edi
mov ecx, eax
call dword [sym.imp.MSVCIRT.dll_public:_class_ostream____thiscall_ostream::operator___int_]
push eax
call dword [sym.imp.MSVCIRT.dll_class_ostream____cdecl_endl_class_ostream__]
mov ecx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
add esp, 4
push ebp
push str.Error_reading_config_file:
call edi
mov ecx, eax
call edi
push eax
call dword [sym.imp.MSVCIRT.dll_class_ostream____cdecl_endl_class_ostream__]
add esp, 4
push str.Default_parameters_will_be_used
jmp 0x443b2e
mov edi, dword [esi + 0x18c]
test edi, edi
je 0x443970
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0x1d
push ecx
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
mov ebp, eax
mov eax, dword [esi + 0x18c]
push eax
push str.tess_s.config
push ebp
call dword [sym.imp.MSVCRT.dll_sprintf]
mov eax, dword [esi + 0x44]
mov edi, dword [sym.imp.MSVCIRT.dll_public:_class_ostream____thiscall_ostream::operator___char_const__]
add esp, 0x10
test eax, eax
je 0x44392d
mov ecx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
push ebp
push str.Looking_for_config_file:_._
call edi
mov ecx, eax
call edi
push eax
call dword [sym.imp.MSVCIRT.dll_class_ostream____cdecl_endl_class_ostream__]
add esp, 4
push ebp
lea ecx, [esi + 0x198]
call fcn.0043e300
mov ebx, eax
mov eax, dword [esi + 0x44]
test eax, eax
je 0x44395d
test ebx, ebx
jne 0x44395d
mov ecx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
push str.Config_file_found_and_read
call edi
push eax
call dword [sym.imp.MSVCIRT.dll_class_ostream____cdecl_endl_class_ostream__]
add esp, 4
push ebp
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
add esp, 4
test ebx, ebx
je 0x443b40
jmp 0x443976
mov edi, dword [sym.imp.MSVCIRT.dll_public:_class_ostream____thiscall_ostream::operator___char_const__]
mov eax, dword [esi + 0x44]
test eax, eax
je 0x443994
mov ecx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
push str.Looking_for_config_file:_._tess.config
call edi
push eax
call dword [sym.imp.MSVCIRT.dll_class_ostream____cdecl_endl_class_ostream__]
add esp, 4
lea ecx, [esi + 0x198]
push str.tess.config
call fcn.0043e300
mov ebx, eax
mov eax, dword [esi + 0x44]
test eax, eax
je 0x4439bb
test ebx, ebx
jne 0x4439c3
push str.Config_file_found_and_read
jmp 0x443b2e
test ebx, ebx
je 0x443b40
push str.EAI_INSTALL
call dword [sym.imp.MSVCRT.dll_getenv]
mov ebp, eax
add esp, 4
test ebp, ebp
je 0x443b1e
mov edi, dword [esi + 0x18c]
test edi, edi
je 0x443a88
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ebp
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [edx + ecx + 0x1e]
push eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
mov ecx, dword [esi + 0x18c]
mov edi, eax
push ecx
push ebp
push str._s_etc_tess_s.config
push edi
call dword [sym.imp.MSVCRT.dll_sprintf]
mov eax, dword [esi + 0x44]
add esp, 0x14
test eax, eax
je 0x443a4b
mov ecx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
mov ebx, dword [sym.imp.MSVCIRT.dll_public:_class_ostream____thiscall_ostream::operator___char_const__]
push edi
push str.Looking_for_config_file:
call ebx
mov ecx, eax
call ebx
push eax
call dword [sym.imp.MSVCIRT.dll_class_ostream____cdecl_endl_class_ostream__]
add esp, 4
push edi
lea ecx, [esi + 0x198]
call fcn.0043e300
mov ebx, eax
mov eax, dword [esi + 0x44]
test eax, eax
je 0x443a7f
test ebx, ebx
jne 0x443a7f
mov ecx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
push str.Config_file_found_and_read
call dword [sym.imp.MSVCIRT.dll_public:_class_ostream____thiscall_ostream::operator___char_const__]
push eax
call dword [sym.imp.MSVCIRT.dll_class_ostream____cdecl_endl_class_ostream__]
add esp, 4
push edi
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
add esp, 4
test ebx, ebx
je 0x443b40
mov edi, ebp
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0x1d
push ecx
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
mov edi, eax
push ebp
push str._s_etc_tess.config
push edi
call dword [sym.imp.MSVCRT.dll_sprintf]
mov eax, dword [esi + 0x44]
mov ebp, dword [sym.imp.MSVCIRT.dll_public:_class_ostream____thiscall_ostream::operator___char_const__]
add esp, 0x10
test eax, eax
je 0x443adf
mov ecx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
push edi
push str.Looking_for_config_file:
call ebp
mov ecx, eax
call ebp
push eax
call dword [sym.imp.MSVCIRT.dll_class_ostream____cdecl_endl_class_ostream__]
add esp, 4
push edi
lea ecx, [esi + 0x198]
call fcn.0043e300
mov ebx, eax
mov eax, dword [esi + 0x44]
test eax, eax
je 0x443b0f
test ebx, ebx
jne 0x443b0f
mov ecx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
push str.Config_file_found_and_read
call ebp
push eax
call dword [sym.imp.MSVCIRT.dll_class_ostream____cdecl_endl_class_ostream__]
add esp, 4
push edi
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
mov edi, dword [sym.imp.MSVCIRT.dll_public:_class_ostream____thiscall_ostream::operator___char_const__]
add esp, 4
test ebx, ebx
je 0x443b40
mov eax, dword [esi + 0x44]
test eax, eax
je 0x443b57
push str.No_config_file_found___default_parameters_will_be_used
mov ecx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
call edi
push eax
call dword [sym.imp.MSVCIRT.dll_class_ostream____cdecl_endl_class_ostream__]
add esp, 4
mov eax, dword [esi + 0x44]
test eax, eax
je 0x443b57
mov edx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
push edx
call dword [sym.imp.MSVCIRT.dll_class_ostream____cdecl_endl_class_ostream__]
add esp, 4
test ebx, ebx
jne 0x443b6c
mov eax, dword [esi + 0x2ac]
test eax, eax
je 0x443b6c
mov ecx, esi
call fcn.004434f0
pop edi
pop esi
mov eax, ebx
pop ebp
pop ebx
ret 4