Function at 0x4388a4
Capabilities:
Get common file path

Disassembly:
mov eax, 0x4b407d
call fcn.0049dfc4
sub esp, 0x224
push ebx
push esi
push edi
mov edi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
xor ebx, ebx
mov dword [ebp - 0x44], ecx
push 0x4e5450
mov dword [ebp - 0x40], ebx
call edi
mov esi, vtable._zstring_class_ztraits_0__.0
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x54], esi
lea eax, [ebp - 0x54]
push ebx
push eax
mov eax, dword [ebp - 0x44]
add eax, 0xdc
lea ecx, [ebp - 0x230]
push eax
mov dword [ebp - 4], 1
call fcn.0043022e
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 3
call fcn.004012b4
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x10], ebx
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 5
call fcn.00401e1e
mov dword [ebp - 0x1c], esi
mov eax, dword [0x4f1ed0]
push 0x7d
lea ecx, [ebp - 0x30]
push dword [eax + 8]
call fcn.00401b9f
push 0x4e5444
call edi
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 7
call fcn.00401e1e
mov dword [ebp - 0x2c], esi
lea eax, [ebp - 0x1c]
lea ecx, [ebp - 0x230]
push eax
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 4], 8
call fcn.004310c0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 6
call fcn.004012b4
cmp dword [ebp - 0x10], ebx
je 0x43898f
push dword [ebp - 0x10]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
ja 0x438a3f
push 0x4e5450
call edi
mov dword [ebp - 0x58], eax
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 9
call fcn.00401e1e
mov dword [ebp - 0x64], esi
push 0xffffffffffffffff
push 0x4f1ef8
mov byte [ebp - 4], 0xa
call fcn.00401275
pop ecx
mov dword [ebp - 0x20], eax
pop ecx
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xb
call fcn.00401e1e
mov dword [ebp - 0x2c], esi
lea eax, [ebp - 0x64]
push ebx
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 0xc
call fcn.0043022e
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xf
call fcn.004012b4
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xe
call fcn.004012b4
push 0x4e5444
lea ecx, [ebp - 0x74]
call fcn.00401c4e
lea eax, [ebp - 0x1c]
lea ecx, [ebp - 0x12c]
push eax
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x74]
push eax
mov byte [ebp - 4], 0x10
call fcn.004310c0
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0xe
call fcn.004012b4
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 6
call fcn.00430b52
cmp dword [ebp - 0x10], ebx
je 0x438a51
push dword [ebp - 0x10]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
ja 0x438a81
lea eax, [ebp - 0x178]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
push dword [ebp - 0x10]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
lea eax, [ebp - 0x178]
push 0xffffffffffffffff
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.004126aa
add esp, 0xc
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x1c]
push eax
call fcn.0040235c
mov dword [ebp - 0x40], 1
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 4
call fcn.004012b4
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 3
call fcn.004012b4
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], bl
call fcn.00430b52
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 4