Function at 0x42cbc0
Capabilities:
Get common file path
Set current directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x485ecb
mov eax, dword fs:[0]
push eax
sub esp, 0x144
mov eax, dword [0x4c0e0c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
lea eax, [ebp - 0x114]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0x184
push dword [ebx + 0x164]
call esi
push 0
push 0
push 0x147
push dword [ebx + 0xe4]
call esi
mov esi, eax
cmp esi, 0xffffffff
je 0x42cea0
lea ecx, [ebp - 0x128]
call dword [sym.imp.mfc140.dll_Ordinal_316]
lea eax, [ebp - 0x128]
mov dword [ebp - 4], 0
push eax
push esi
lea ecx, [ebx + 0xc4]
call sub.mfc140.dll_Ordinal_5858
mov edi, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::constructor_void_]
lea ecx, [ebp - 0x118]
call edi
mov esi, dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::operator_char_const__]
lea ecx, [ebp - 0x118]
push str.Devices
mov byte [ebp - 4], 1
call esi
lea ecx, [ebp - 0x128]
call dword [sym.imp.mfc140.dll_Ordinal_1661]
push eax
lea ecx, [ebp - 0x118]
call esi
push str.Presets
lea ecx, [ebp - 0x118]
call esi
push dword [ebp - 0x118]
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0x184
push dword [ebx + 0x164]
call esi
lea ecx, [ebp - 0x148]
call sub.mfc140.dll_Ordinal_503
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 2
call edi
push 0
push str..xml
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 3
call sub.mfc140.dll_Ordinal_4705
test eax, eax
je 0x42cd6f
nop word [eax + eax]
lea ecx, [ebp - 0x148]
call sub.mfc140.dll_Ordinal_4725
mov edx, dword [ebp - 0x148]
lea ecx, [ebp - 0x148]
push 0x10
mov edi, eax
call dword [edx + 0x40]
test eax, eax
jne 0x42cd6b
lea ecx, [ebp - 0x148]
call sub.mfc140.dll_Ordinal_8140
test eax, eax
jne 0x42cd6b
push ecx
push esp
lea ecx, [ebp - 0x148]
call sub.mfc140.dll_Ordinal_5562
lea ecx, [ebp - 0x120]
call dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::operator_class_ATL::CStringT_char__class_StrTraitMFC_DLL_char__class_ATL::ChTraitsCRT_char____]
lea ecx, [ebp - 0x120]
call dword [sym.imp.FSUTIL.dll_public:_int___thiscall_AFilePath::stripExtension_void_]
push dword [ebp - 0x120]
push 0
push 0x180
push dword [ebx + 0x164]
call esi
test edi, edi
jne 0x42cd00
lea ecx, [ebp - 0x11c]
call dword [sym.imp.mfc140.dll_Ordinal_316]
push dword [ebx + 0x164]
mov byte [ebp - 4], 4
xor edi, edi
call dword [sym.imp.USER32.dll_GetDC]
push eax
call sub.mfc140.dll_Ordinal_4865
push edi
push edi
push 0x18b
push dword [ebx + 0x164]
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x124], edi
call esi
test eax, eax
jle 0x42ce33
lea eax, [ebx + 0x144]
xor ecx, ecx
nop
lea edx, [ebp - 0x11c]
push edx
push ecx
mov ecx, eax
call sub.mfc140.dll_Ordinal_6996
lea eax, [ebp - 0x150]
push eax
lea ecx, [ebp - 0x11c]
call dword [sym.imp.mfc140.dll_Ordinal_5861]
push eax
lea ecx, [ebp - 0x11c]
call dword [sym.imp.mfc140.dll_Ordinal_1661]
push eax
mov eax, dword [ebp - 0x12c]
push dword [eax + 8]
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32A]
cmp dword [ebp - 0x150], edi
push 0
cmovg edi, dword [ebp - 0x150]
inc dword [ebp - 0x124]
push 0
push 0x18b
push dword [ebx + 0x164]
call esi
mov ecx, dword [ebp - 0x124]
cmp ecx, eax
lea eax, [ebx + 0x144]
jl 0x42cdc0
mov eax, dword [ebp - 0x12c]
push dword [eax + 4]
push dword [ebx + 0x164]
call dword [sym.imp.USER32.dll_ReleaseDC]
push 0
push edi
push 0x194
push dword [ebx + 0x164]
call esi
lea eax, [ebp - 0x114]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
lea ecx, [ebp - 0x11c]
call dword [sym.imp.mfc140.dll_Ordinal_1044]
lea ecx, [ebp - 0x120]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
lea ecx, [ebp - 0x148]
call sub.mfc140.dll_Ordinal_1142
lea ecx, [ebp - 0x118]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
lea ecx, [ebp - 0x128]
call dword [sym.imp.mfc140.dll_Ordinal_1044]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0047ff18
mov esp, ebp
pop ebp
ret