Function at 0x480738
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x40
mov eax, dword [0xbd33e0]
mov ebx, ecx
xor eax, ebp
mov dword [esp + 0x38], eax
call fcn.0047aaa8
cmp byte [eax], 0
jne 0x48076a
push str.Configuration_file_unspecified_n
call fcn.00444bcb
jmp 0x480a86
mov ecx, eax
mov edi, eax
call fcn.00480e1b
cmp eax, 0xffffffff
jne 0x4807db
call fcn.00981400
cmp eax, 2
jne 0x480795
push edi
push str.No_configuration_file_found__s_n
call fcn.00444bcb
add esp, 8
jmp 0x480a89
call fcn.004a6b2e
test eax, eax
jne 0x4809e8
xor ebx, ebx
push 0xb79cdb
push ebx
call fcn.004a6b8b
add esp, 8
call fcn.009813f0
mov esi, eax
call fcn.00980fe0
push esi
push eax
push edi
push str.Error_opening_configuration_file__s__syserr__d__s__n
call fcn.00447218
add esp, 0x10
push 0xb79d13
push ebx
call fcn.004a6b8b
jmp 0x48078d
lea esi, [esp + 0x10]
push esi
mov dword [esp + 8], eax
push eax
call fcn.009855e0
add esp, 8
test eax, eax
je 0x480831
call fcn.004a6b2e
test eax, eax
jne 0x480a2c
xor esi, esi
push 0xb79d15
push esi
call fcn.004a6b8b
add esp, 8
call fcn.009813f0
mov ebx, eax
call fcn.00980fe0
push ebx
push eax
push edi
push str.Error_accessing_configuration_file__s__syserr__d__s__n
call fcn.00447218
add esp, 0x10
push 0xb79d4f
jmp 0x48087a
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x28]
push esi
call fcn.0049927d
add esp, 4
cmp ebx, 0x100001
jb 0x480882
call fcn.004a6b2e
test eax, eax
jne 0x480a09
xor esi, esi
push 0xb79d51
push esi
call fcn.004a6b8b
add esp, 8
push edi
push str.Too_big_configuration_file__s_n
call fcn.00447218
add esp, 8
push 0xb79d74
push esi
call fcn.004a6b8b
jmp 0x480891
test ebx, ebx
jne 0x480899
push edi
push str.Empty_configuration_file__s_n
call fcn.00447218
add esp, 8
jmp 0x480a48
lea eax, [ebx + 1]
push eax
call fcn.004e93b3
add esp, 4
test eax, eax
mov dword [esp + 8], eax
jne 0x4808df
call fcn.004a6b2e
test eax, eax
jne 0x480a14
xor esi, esi
push 0xb79d95
push esi
call fcn.004a6b8b
add esp, 8
push edi
push str.Low_memory_reading_configuration_file__s_n
call fcn.00447218
add esp, 8
push 0xb79dc3
jmp 0x48087a
push ebx
push dword [esp + 0xc]
push dword [esp + 0xc]
call fcn.009856c0
add esp, 0xc
test eax, eax
js 0x4808f8
cmp eax, ebx
je 0x48093b
call fcn.004a6b2e
test eax, eax
jne 0x480a54
xor esi, esi
push 0xb79dc5
push esi
call fcn.004a6b8b
add esp, 8
call fcn.009813f0
mov ebx, eax
call fcn.00980fe0
push ebx
push eax
push edi
push str.Error_reading_configuration_file__s__syserr__d__s__n
call fcn.00447218
add esp, 0x10
push 0xb79dfd
jmp 0x4809da
mov eax, dword [esp + 8]
cmp ebx, 2
mov byte [eax + ebx], 0
jb 0x480960
mov eax, dword [esp + 8]
mov al, byte [eax]
cmp al, 0xfe
je 0x4809a4
cmp al, 0xff
jne 0x480960
mov eax, dword [esp + 8]
cmp byte [eax + 1], 0xfe
je 0x4809ae
mov esi, dword [esp + 8]
mov edx, ebx
mov ecx, esi
push edi
push 2
call fcn.0047da72
add esp, 8
push edi
push str.Reading_configuration_file__s_n
call fcn.00444bcb
add esp, 8
mov ecx, esi
mov edx, ebx
push edi
push dword [esp + 0x10]
call fcn.0047da72
add esp, 8
push dword [esp + 4]
call fcn.00983c50
add esp, 4
push esi
jmp 0x480a81
mov eax, dword [esp + 8]
cmp byte [eax + 1], 0xff
jne 0x480960
call fcn.004a6b2e
test eax, eax
jne 0x480a1f
xor esi, esi
push 0xb79dff
push esi
call fcn.004a6b8b
add esp, 8
push edi
push str.Invalid_configuration_file__s__it_looks_like_UTF16_n
call fcn.00447218
add esp, 8
push 0xb79e37
push esi
call fcn.004a6b8b
add esp, 8
jmp 0x480a70
call fcn.009813f0
mov esi, eax
call fcn.00980fe0
push esi
push eax
push edi
push str.Error_opening_configuration_file__s__syserr__d__s__n
call fcn.00447218
add esp, 0x10
jmp 0x480a89
push edi
push str.Too_big_configuration_file__s_n
jmp 0x48088c
push edi
push str.Low_memory_reading_configuration_file__s_n
jmp 0x48088c
push edi
push str.Invalid_configuration_file__s__it_looks_like_UTF16_n
call fcn.00447218
jmp 0x4809e0
call fcn.009813f0
mov ebx, eax
call fcn.00980fe0
push ebx
push eax
push edi
push str.Error_accessing_configuration_file__s__syserr__d__s__n
call fcn.00447218
add esp, 0x10
mov eax, dword [esp + 4]
push eax
call fcn.00983c50
jmp 0x480a86
call fcn.009813f0
mov ebx, eax
call fcn.00980fe0
push ebx
push eax
push edi
push str.Error_reading_configuration_file__s__syserr__d__s__n
call fcn.00447218
add esp, 0x10
mov eax, dword [esp + 4]
push eax
call fcn.00983c50
add esp, 4
push dword [esp + 8]
call fcn.004e9d74
add esp, 4
mov ecx, dword [esp + 0x38]
xor ecx, ebp
call fcn.00989fe9
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret