Function at 0x40d4dd
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x378
push esi
push edi
mov edi, 0x104
xor esi, esi
push edi
lea eax, [ebp - 0x110]
push esi
push eax
call fcn.00403e70
push edi
lea eax, [ebp - 0x214]
push esi
push eax
call fcn.00403e70
push edi
lea eax, [ebp - 0x378]
push esi
push eax
call fcn.00403e70
call fcn.0040f2ff
lea eax, [ebp - 0x110]
push edi
push eax
call fcn.0040d8c0
add esp, 0x2c
test eax, eax
je 0x40d53a
push 3
pop eax
jmp 0x40d75e
push ebx
call fcn.0040d787
lea eax, [ebp - 0x110]
push eax
call fcn.00403ed0
add eax, 0xfffffffd
push eax
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x378]
push eax
call fcn.00404040
lea eax, [ebp - 0x378]
push 0x427914
push eax
call fcn.00403f60
lea eax, [ebp - 4]
push eax
push esi
push esi
push 0x447a8c
push 1
push esi
push esi
push 1
push 1
call fcn.0040fba4
add esp, 0x3c
test eax, eax
je 0x40d59b
push 3
pop esi
jmp 0x40d756
lea eax, [ebp - 0x110]
push esi
push eax
lea eax, [ebp - 4]
push eax
call fcn.0040fe4a
mov ebx, dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
add esp, 0xc
cmp eax, 0x32f
jne 0x40d604
lea eax, [ebp - 0x214]
push edi
push eax
call ebx
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 4]
push eax
call fcn.0041123f
add esp, 0xc
test eax, eax
je 0x40d5ec
push 5
pop esi
jmp 0x40d74c
lea eax, [ebp - 0x110]
push esi
push eax
lea eax, [ebp - 4]
push eax
call fcn.0040fe4a
add esp, 0xc
test eax, eax
jne 0x40d675
lea eax, [ebp - 0x110]
push esi
push eax
call fcn.00411560
pop ecx
cmp eax, 0xffffffff
pop ecx
jne 0x40d65e
lea eax, [ebp - 0x214]
push edi
push eax
call ebx
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 4]
push eax
call fcn.0041123f
add esp, 0xc
test eax, eax
je 0x40d65e
lea eax, [ebp - 0x110]
push 0x41f088
push eax
call fcn.00418354
pop ecx
cmp eax, esi
pop ecx
je 0x40d5e4
push eax
call fcn.004076c8
pop ecx
push esi
push esi
push esi
push esi
push esi
push esi
lea eax, [ebp - 8]
push esi
push eax
call fcn.00410076
add esp, 0x20
test eax, eax
je 0x40d67c
push 3
jmp 0x40d5e6
push esi
lea eax, [ebp - 0xc]
push 3
push eax
lea eax, [ebp - 0x110]
push 1
push eax
push dword [ebp - 8]
call fcn.004101f0
add esp, 0x18
test eax, eax
je 0x40d6b4
lea eax, [ebp - 4]
push eax
call fcn.0040fc1c
lea eax, [ebp - 8]
push eax
call fcn.004101c6
pop ecx
pop ecx
jmp 0x40d593
lea eax, [ebp - 0x274]
mov ebx, 0x427910
push eax
mov edi, str.DummyGrace
push ebx
push edi
push dword [ebp - 0xc]
call fcn.004104f9
add esp, 0x10
test eax, eax
je 0x40d6ea
lea eax, [ebp - 0x274]
push eax
push ebx
push edi
push dword [ebp - 0xc]
call fcn.00410618
add esp, 0x10
push esi
lea eax, [ebp - 0xc]
push 3
push eax
call fcn.004103e2
lea eax, [ebp - 8]
push eax
call fcn.004101c6
lea eax, [ebp - 0x214]
push esi
push eax
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 4]
push eax
call fcn.0040fc82
lea eax, [ebp - 0x110]
push esi
push eax
call fcn.00411a4d
lea eax, [ebp - 0x378]
push esi
push eax
call fcn.00411a4d
push esi
push dword [0x447a8c]
call fcn.00411a4d
push esi
push dword [0x447a90]
call fcn.00411a4d
add esp, 0x40
lea eax, [ebp - 4]
push eax
call fcn.0040fc1c
pop ecx
call fcn.0040d762
mov eax, esi
pop ebx
pop edi
pop esi
leave
ret