Function at 0x10026371
Capabilities:
Check if file exists
Get system information on windows

Disassembly:
push ebp
lea ebp, [esp - 0x2d4]
sub esp, 0x354
mov eax, dword [0x100598e8]
xor eax, ebp
mov dword [ebp + 0x2d0], eax
push ebx
push esi
push edi
push 0x24
xor ebx, ebx
lea eax, [ebp - 0x80]
push ebx
push eax
call fcn.10031310
add esp, 0xc
push 0x1004aa78
push 0x1004aa68
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, ebx
je 0x100263c3
lea ecx, [ebp - 0x80]
push ecx
call eax
jmp 0x100263cd
lea eax, [ebp - 0x80]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
cmp word [ebp - 0x80], 9
je 0x100263db
cmp word [ebp - 0x80], 6
jne 0x100263e5
mov dword [0x1005d6b0], 1
mov esi, 0x11c
push esi
lea eax, [ebp - 0x54]
push ebx
push eax
xor edi, edi
call fcn.10031310
add esp, 0xc
lea eax, [ebp - 0x54]
push eax
mov dword [ebp - 0x54], esi
call fcn.1000d9c8
cmp eax, ebx
jne 0x1002641e
lea eax, [ebp - 0x54]
push eax
mov dword [ebp - 0x54], 0x114
call fcn.1000d9c8
cmp eax, ebx
je 0x1002643a
cmp dword [ebp - 0x44], 2
je 0x10026428
xor eax, eax
jmp 0x10026481
mov eax, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x48]
movzx edi, word [ebp + 0xc0]
jmp 0x10026469
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x5c]
push eax
push 0x1004f264
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], ebx
call fcn.1000cc3d
add esp, 0xc
test eax, eax
je 0x1002647e
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x58]
movzx edx, word [ebp - 0x5c]
shr eax, 0x10
shr ecx, 0x10
cmp eax, 5
jb 0x10026424
jne 0x100265b6
cmp edx, ebx
jne 0x10026499
cmp di, 4
jb 0x10026424
xor eax, eax
inc eax
mov ecx, dword [ebp + 0x2d0]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10031770
add ebp, 0x2d4
leave
ret
cmp edx, 2
jne 0x1002647e
cmp di, dx
jne 0x10026424
mov esi, dword [sym.imp.SHLWAPI.dll_PathCombineW]
push 0x1004f240
mov edi, 0x1005bb14
push edi
lea eax, [ebp + 0xc8]
push eax
call esi
mov ebx, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
lea eax, [ebp + 0xc8]
push eax
call ebx
test eax, eax
je 0x100264e4
lea eax, [ebp + 0xc8]
push 0
push eax
call fcn.1000f01b
pop ecx
pop ecx
test eax, eax
jne 0x1002651f
push 0x1004f21c
push edi
lea eax, [ebp + 0xc8]
push eax
call esi
lea eax, [ebp + 0xc8]
push eax
call ebx
test eax, eax
je 0x10026424
xor ebx, ebx
lea eax, [ebp + 0xc8]
push ebx
push eax
call fcn.1000f01b
pop ecx
pop ecx
test eax, eax
je 0x10026424
jmp 0x10026521
xor ebx, ebx
push 0x1004f1f0
push edi
lea eax, [ebp + 0xc8]
push eax
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x5c], ebx
call esi
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp + 0xc8]
push eax
call fcn.1000cc3d
mov eax, 0x10002
add esp, 0xc
cmp dword [ebp - 0x58], eax
ja 0x1002656a
jne 0x10026424
cmp dword [ebp - 0x5c], 0x3fd
jb 0x10026424
push 0x1004f1b4
push edi
lea eax, [ebp + 0xc8]
push eax
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x5c], ebx
call esi
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp + 0xc8]
push eax
call fcn.1000cc3d
mov eax, 0x10000
add esp, 0xc
cmp dword [ebp - 0x58], eax
ja 0x1002647e
jne 0x10026424
cmp dword [ebp - 0x5c], 0x56e
jmp 0x1002647c
cmp eax, 6
jne 0x1002647e
cmp edx, ebx
jne 0x100265ec
cmp ecx, 0x1770
je 0x1002647e
cmp ecx, 0x1771
je 0x1002647e
cmp ecx, 0x1772
je 0x1002647e
jmp 0x10026424
cmp edx, 1
jne 0x1002647e
cmp ecx, 0x1b58
je 0x1002647e
cmp ecx, 0x1bbc
je 0x1002647e
cmp ecx, 0x1db0
je 0x1002647e
cmp ecx, 0x1db1
jmp 0x100265e1