Function at 0x10019939
Capabilities:
Get common file path

Disassembly:
push 0x160
mov eax, 0x10084284
call fcn.1005825d
mov edi, ecx
mov eax, dword [ebp + 0xc]
xor ebx, ebx
mov esi, dword [ebp + 8]
push eax
lea eax, [ebp - 0x130]
mov dword [ebp - 0x164], esi
push eax
call fcn.10023969
push 0x1008bcc4
lea ecx, [ebp - 0x130]
mov dword [ebp - 4], ebx
call fcn.10010dc4
test al, al
je 0x10019986
push str.Intel
jmp 0x10019caa
push 0x1008bcd0
lea ecx, [ebp - 0x130]
call fcn.10010dc4
test al, al
je 0x10019a6a
mov eax, dword [edi + 0x94]
sub eax, 3
je 0x10019a53
sub eax, 1
je 0x10019a1d
sub eax, 1
je 0x100199e7
sub eax, 1
jne 0x10019ca5
mov eax, dword [edi + 0x98]
sub eax, ebx
je 0x100199dd
sub eax, 1
jne 0x10019ca5
push str.Windows_7
jmp 0x10019caa
push str.Windows_Vista
jmp 0x10019caa
mov eax, dword [edi + 0x98]
sub eax, ebx
je 0x10019a13
sub eax, 1
je 0x10019a09
sub eax, 1
jne 0x10019ca5
push str.Windows_Server_2003
jmp 0x10019caa
push str.Windows_XP
jmp 0x10019caa
push str.Windows_2000
jmp 0x10019caa
mov eax, dword [edi + 0x98]
test eax, eax
je 0x10019a49
cmp eax, 0xa
je 0x10019a3f
cmp eax, 0x5a
jne 0x10019ca5
push str.Windows_ME
jmp 0x10019caa
push str.Windows_98
jmp 0x10019caa
push str.Windows_95
jmp 0x10019caa
cmp dword [edi + 0x98], 0x33
jne 0x10019ca5
push str.Windows_NT_3.1
jmp 0x10019caa
push str.appdir
lea ecx, [ebp - 0x130]
call fcn.10010dc4
test al, al
je 0x10019b46
push 0x104
lea eax, [ebp - 0x118]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x10019ca5
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x148]
call fcn.10002198
cmp dword [ebp - 0x134], 0xf
lea eax, [ebp - 0x148]
push 0x5c
cmova eax, dword [ebp - 0x148]
push 0xffffffffffffffff
push dword [ebp - 0x138]
mov byte [ebp - 4], 1
push eax
call fcn.10017bd3
cmp eax, 0xffffffff
je 0x10019b1f
lea ecx, [ebp - 0x165]
push ecx
push eax
push ebx
lea eax, [ebp - 0x148]
push eax
lea ecx, [ebp - 0x160]
call fcn.10002149
lea ecx, [ebp - 0x148]
call fcn.10002eed
lea eax, [ebp - 0x160]
push eax
lea ecx, [ebp - 0x148]
call fcn.10002e58
lea ecx, [ebp - 0x160]
call fcn.10002eed
sub esp, 0x18
lea eax, [ebp - 0x148]
mov ecx, esp
push eax
call fcn.10002112
push esi
call fcn.10019d10
lea ecx, [ebp - 0x148]
call fcn.10002eed
jmp 0x10019cb1
push str.apphwnd
lea ecx, [ebp - 0x130]
call fcn.10010dc4
test al, al
je 0x10019b67
push dword [edi]
push esi
call fcn.10023925
jmp 0x10019cb1
push str.apphinstance
lea ecx, [ebp - 0x130]
call fcn.10010dc4
test al, al
je 0x10019b80
push dword [edi + 4]
jmp 0x10019b5c
push str.windowsdir
lea ecx, [ebp - 0x130]
call fcn.10010dc4
test al, al
je 0x10019bca
push 0x104
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
test eax, eax
je 0x10019ca5
sub esp, 0x18
lea eax, [ebp - 0x118]
mov ecx, esp
push eax
call fcn.10002198
push esi
call fcn.10019d10
jmp 0x10019cb1
push str.systemdir
lea ecx, [ebp - 0x130]
call fcn.10010dc4
test al, al
je 0x10019bf2
push 0x104
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
jmp 0x10019ba6
push str.tempdir
lea ecx, [ebp - 0x130]
call fcn.10010dc4
test al, al
je 0x10019c1a
lea eax, [ebp - 0x118]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
jmp 0x10019ba6
push str.direct3d7
lea ecx, [ebp - 0x130]
call fcn.10010dc4
test al, al
je 0x10019c3d
mov eax, dword [edi + 0x14]
test eax, eax
je 0x10019ca5
push dword [eax + 8]
jmp 0x10019b5c
push str.direct3ddevice7
lea ecx, [ebp - 0x130]
call fcn.10010dc4
test al, al
je 0x10019c60
mov eax, dword [edi + 0x14]
test eax, eax
je 0x10019ca5
push dword [eax + 0xc]
jmp 0x10019b5c
push str.directdraw7
lea ecx, [ebp - 0x130]
call fcn.10010dc4
test al, al
je 0x10019c82
mov eax, dword [edi + 0x14]
test eax, eax
je 0x10019ca5
push dword [eax]
jmp 0x10019b5c
push str.directinput7
lea ecx, [ebp - 0x130]
call fcn.10010dc4
test al, al
je 0x10019ca5
mov eax, dword [edi + 0xc]
test eax, eax
je 0x10019ca5
push dword [eax + 4]
jmp 0x10019b5c
push 0x100876a4
mov ecx, esi
call fcn.10002198
lea ecx, [ebp - 0x130]
call fcn.10002eed
mov eax, esi
call fcn.1005820c
ret 8