Function at 0x100e383
Capabilities:
Check if file exists
Get file attributes
Identify system language via api
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x420
push ebx
push esi
xor eax, eax
push edi
mov edi, dword [ebp + 8]
cmp edi, eax
mov dword [ebp - 4], eax
mov dword [0x1037954], eax
je 0x100e76b
cmp byte [edi], al
je 0x100e76b
push 0x2e
push edi
call fcn.01007321
test eax, eax
mov esi, 0x104
jne 0x100e3e3
push edi
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push esi
push 0x1001d78
lea eax, [ebp - 0x218]
push eax
call fcn.0100d647
lea edi, [ebp - 0x218]
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0x10]
push eax
push edi
lea ebx, [ebp + 8]
call fcn.0100d820
mov eax, dword [ebp + 8]
add eax, edi
cmp byte [eax], 0
mov dword [ebp - 8], eax
je 0x100e76b
mov eax, dword [ebp - 0x10]
cmp byte [eax + edi], 0
jne 0x100e639
mov eax, dword [ebp - 0xc]
mov al, byte [eax + edi]
cmp al, 0x5c
je 0x100e639
cmp al, 0x2f
je 0x100e639
test byte [ebp + 0xd], 8
jne 0x100e60c
and dword [ebp - 4], 0
mov word [0x10374d0], 1
cmp word [0x10374d0], 0x100
ja 0x100e618
cmp dword [ebp - 4], 0
jne 0x100e618
mov ebx, dword [0x10374d0]
and ebx, dword [ebp + 0xc]
cmp bx, 1
mov dword [ebp - 8], ebx
jne 0x100e503
test byte [ebp + 0xd], 0x80
je 0x100e5b6
call fcn.0100c715
test eax, eax
mov dword [ebp - 0xc], eax
jne 0x100e49b
cmp dword [0x1037750], eax
je 0x100e5b6
push esi
push 0
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov ebx, eax
test ebx, ebx
je 0x100e5b3
mov eax, dword [0x1037750]
test eax, eax
jne 0x100e4c0
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 8]
push 3
push esi
push ebx
push eax
call fcn.0100dc41
mov eax, dword [ebp + 8]
push esi
add eax, edi
push eax
push ebx
call fcn.0100d647
push ebx
call fcn.0100d6cd
push ebx
mov dword [ebp - 4], eax
call dword [sym.imp.KERNEL32.dll_LocalFree]
push dword [ebp - 4]
call fcn.0100d7be
test eax, eax
jne 0x100e631
lea eax, [ebp - 4]
push eax
call fcn.0100d754
mov ebx, dword [ebp - 8]
cmp bx, 0x80
jne 0x100e51c
xor eax, eax
cmp dword [0x1037748], 2
setne al
push eax
jmp 0x100e5a4
cmp bx, 0x20
jne 0x100e587
lea eax, [ebp - 0x114]
push eax
push edi
call fcn.0100e03d
test eax, eax
lea eax, [ebp - 0x114]
push eax
jne 0x100e559
push edi
call fcn.0100de5f
lea eax, [ebp - 0x114]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x100e566
lea eax, [ebp - 0x114]
push eax
call fcn.0100d6cd
mov dword [ebp - 4], eax
jmp 0x100e60c
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x114]
push eax
push esi
push 0
push edi
push 0
call dword [sym.imp.KERNEL32.dll_SearchPathA]
test eax, eax
je 0x100e60c
jmp 0x100e552
cmp bx, 0x10
jne 0x100e59c
mov eax, dword [ebp + 8]
push 0
add eax, edi
push eax
call fcn.0100e0ef
jmp 0x100e55e
cmp bx, 0x40
jne 0x100e5ac
push 0
push edi
call fcn.0100dce4
jmp 0x100e55e
test bx, bx
je 0x100e60c
jmp 0x100e5b6
mov ebx, dword [ebp - 8]
lea ecx, [ebp - 0x114]
mov eax, ebx
call fcn.0100d99a
test eax, eax
je 0x100e60c
mov eax, dword [ebp + 8]
push esi
add eax, edi
push eax
lea eax, [ebp - 0x114]
push eax
call fcn.0100d647
lea eax, [ebp - 0x114]
push eax
call fcn.0100d6cd
test eax, eax
mov dword [ebp - 4], eax
jne 0x100e5f9
mov dword [0x1037954], 1
jmp 0x100e60c
push eax
call fcn.0100d7be
test eax, eax
jne 0x100e60c
lea eax, [ebp - 4]
push eax
call fcn.0100d754
shl word [0x10374d0], 1
jmp 0x100e44a
cmp dword [0x1037954], 0
jne 0x100e631
cmp dword [ebp - 4], 0
jne 0x100e631
mov dword [0x1037954], 3
mov eax, dword [ebp - 4]
jmp 0x100e777
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
mov bx, ax
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultUILanguage]
cmp ax, bx
je 0x100e704
cmp dword [ebp + 8], 0
je 0x100e704
cmp dword [ebp + 8], 0xeb
jge 0x100e704
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
movzx eax, ax
push eax
lea eax, [ebp - 0x420]
push 0x10019cc
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push esi
push dword [ebp - 8]
lea eax, [ebp - 0x420]
push eax
call fcn.0100d647
push dword [ebp + 8]
lea eax, [ebp - 0x31c]
push edi
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
push esi
lea eax, [ebp - 0x31c]
push eax
call fcn.0100d8d9
push esi
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x31c]
push eax
call fcn.0100d647
push esi
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x31c]
push eax
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsA]
lea eax, [ebp - 0x218]
push eax
call fcn.0100d6cd
push eax
mov dword [ebp - 4], eax
call fcn.0100d7be
test eax, eax
jne 0x100e631
lea eax, [ebp - 4]
push eax
call fcn.0100d754
push edi
call fcn.0100d6cd
mov esi, eax
push esi
call fcn.0100d7be
test eax, eax
jne 0x100e767
test esi, esi
je 0x100e72c
push 0x10019c0
push esi
call dword [sym.imp.msvcrt.dll_strstr]
test eax, eax
pop ecx
pop ecx
jne 0x100e767
push esi
call fcn.0100d744
push dword [ebp - 8]
lea eax, [ebp - 0x114]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push dword [ebp + 0xc]
lea eax, [ebp - 0x114]
push eax
call fcn.0100e383
mov esi, eax
push esi
call fcn.0100d7be
test eax, eax
jne 0x100e767
mov dword [0x1037954], 3
mov eax, esi
jmp 0x100e777
mov dword [0x1037954], 6
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret 8