Function at 0x437350
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5225c6
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x2018
call fcn.004fe1a0
mov eax, dword [0x5a4aa8]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov edi, ecx
push 0x535a4c
lea ecx, [ebp - 0x201c]
call fcn.00405c00
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x2024], eax
mov byte [ebp - 4], 1
push 0x800
push eax
lea eax, [ebp - 0x1818]
push eax
call fcn.004fd670
add esp, 0xc
lea ecx, [ebp - 0x2024]
push ecx
push 0x400
lea ebx, [ebp - 0x1818]
mov edx, str.MANUAL
mov ecx, dword [edi + 0x3c]
call fcn.004880c0
test eax, eax
je 0x43740a
mov esi, dword [edi + 0x20]
mov ecx, edi
call fcn.00436ff0
mov esi, dword [edi + 0x24]
mov ecx, edi
call fcn.00437070
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x201c]
call fcn.00406150
jmp 0x4376cc
lea esi, [ebp - 0x1818]
mov dword [ebp - 0x2020], 0
lea ebx, [ebx]
mov edx, dword [ebp - 0x2020]
cmp edx, dword [ebp - 0x2024]
jae 0x437688
push 0x800
push 0
lea eax, [ebp - 0x2018]
push eax
call fcn.004fd670
push 0x800
push 0
lea ecx, [ebp - 0x818]
push ecx
call fcn.004fd670
push 0x800
push 0
lea edx, [ebp - 0x1018]
push edx
call fcn.004fd670
push esi
push str.MANUAL__s
lea eax, [ebp - 0x201c]
push eax
call fcn.004081a0
add esp, 0x30
push 1
push 0x400
lea ebx, [ebp - 0x818]
mov edx, dword [ebp - 0x201c]
mov ecx, dword [edi + 0x3c]
call fcn.00487e80
test eax, eax
jne 0x43765d
push 0x3ff
mov ecx, ebx
push ecx
push 0x400
lea edx, [ebp - 0x2018]
push edx
call fcn.004fa71b
push 0x400
push str._ORG_LANG_DIR_
push str._MANUAL_LANG_DIR_
mov eax, ebx
push eax
call fcn.00494840
push 0x400
push str._ORG_LANG_ABBR_
push str._MANUAL_LANG_ABBR_
mov ecx, ebx
push ecx
call fcn.00494840
add esp, 0x30
push 0
push 0x400
lea edx, [ebp - 0x1018]
push edx
mov eax, ebx
push eax
call fcn.004290d0
mov ecx, eax
call fcn.00480760
mov ebx, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x437525
lea ecx, [ebp - 0x1018]
push ecx
call ebx
test eax, eax
jne 0x4373df
push 0x3ff
lea edx, [ebp - 0x2018]
push edx
push 0x400
lea eax, [ebp - 0x818]
push eax
call fcn.004fa71b
push 0x400
push str._LANG_DIR_
push str._MANUAL_LANG_DIR_
lea ecx, [ebp - 0x818]
push ecx
call fcn.00494840
push 0x400
push str._LANG_ABBR_
push str._MANUAL_LANG_ABBR_
lea edx, [ebp - 0x818]
push edx
call fcn.00494840
add esp, 0x30
push 0
push 0x400
lea eax, [ebp - 0x1018]
push eax
lea ecx, [ebp - 0x818]
push ecx
call fcn.004290d0
mov ecx, eax
call fcn.00480760
test eax, eax
jne 0x4375bf
lea edx, [ebp - 0x1018]
push edx
call ebx
test eax, eax
je 0x4375bf
mov esi, dword [edi + 0x34]
mov ecx, edi
call fcn.00436ff0
mov esi, dword [edi + 0x38]
jmp 0x4373ec
push 0x3ff
lea eax, [ebp - 0x2018]
push eax
push 0x400
lea ecx, [ebp - 0x818]
push ecx
call fcn.004fa71b
push 0x400
push 0x54919c
push str._MANUAL_LANG_DIR_
lea edx, [ebp - 0x818]
push edx
call fcn.00494840
push 0x400
push 0x543f14
push str._MANUAL_LANG_ABBR_
lea eax, [ebp - 0x818]
push eax
call fcn.00494840
add esp, 0x30
push 0
push 0x400
lea ecx, [ebp - 0x1018]
push ecx
lea edx, [ebp - 0x818]
push edx
call fcn.004290d0
mov ecx, eax
call fcn.00480760
test eax, eax
jne 0x43765d
lea eax, [ebp - 0x1018]
push eax
call ebx
test eax, eax
je 0x43765d
mov esi, 0x543f14
mov ecx, edi
call fcn.00436ff0
mov esi, 0x54919c
jmp 0x4373ec
add dword [ebp - 0x2020], 1
mov eax, esi
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x437670
sub eax, edx
sar eax, 1
lea esi, [esi + eax*2 + 2]
jmp 0x437420
mov esi, dword [edi + 0x20]
mov ecx, edi
call fcn.00436ff0
mov esi, dword [edi + 0x24]
mov ecx, edi
call fcn.00437070
mov dword [ebp - 4], 0
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x201c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4376cc
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004fa103
mov esp, ebp
pop ebp
ret