Function at 0x10182ce
Capabilities:
Get common file path

Disassembly:
push 0xc0
mov eax, 0x101c9c3
call fcn.01019ea3
mov ebx, ecx
mov edi, 0xc9
push edi
push dword [ebx]
call dword [sym.imp.USER32.dll_LoadMenuW]
push eax
push dword [ebx + 4]
mov dword [ebx + 0x3cc], eax
call dword [sym.imp.USER32.dll_SetMenu]
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0xca
push dword [ebx + 4]
call esi
push edi
push dword [ebx + 4]
mov dword [ebx + 0x14], eax
call esi
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
lea ecx, [ebp - 0xa0]
push ecx
mov dword [ebx + 0x10], eax
xor eax, eax
push eax
push 0x1061
push dword [ebx + 0x14]
mov dword [ebp - 0xa0], 0x26
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], 0x10016f0
mov dword [ebp - 0x84], eax
call edi
push 0xd0
push dword [ebx + 4]
call esi
push 0xcb
push dword [ebx + 4]
mov dword [ebx + 0x378], eax
call esi
push 0xcc
push dword [ebx + 4]
mov dword [ebx + 0x37c], eax
call esi
push 0xcd
push dword [ebx + 4]
mov dword [ebx + 0x380], eax
call esi
push 0xd1
push dword [ebx + 4]
mov dword [ebx + 0x384], eax
call esi
push 3
push dword [ebx + 4]
mov dword [ebx + 0x388], eax
call esi
push 5
push dword [ebx + 4]
mov dword [ebx + 0x38c], eax
call esi
push 4
push dword [ebx + 4]
mov dword [ebx + 0x390], eax
call esi
mov dword [ebx + 0x394], eax
lea eax, [ebx + 0x16c]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
lea ecx, [ebx + 8]
call sub.MFC42u.dll_CString::Empty
push 0x420
xor esi, esi
push esi
push 0x1036
push dword [ebx + 0x14]
mov dword [ebx + 0x64], esi
call edi
lea ecx, [ebx + 0x5c]
call sub.MFC42u.dll_CString::Empty
lea ecx, [ebx + 0x60]
call sub.MFC42u.dll_CString::Empty
mov dword [ebx + 0x2c], esi
mov dword [ebx + 0x30], esi
push esi
push esi
push esi
push esi
lea eax, [ebx + 0x34]
push eax
call dword [sym.imp.USER32.dll_SetRect]
xor eax, eax
inc eax
push eax
push esi
push 0x445
push dword [ebx + 0x37c]
mov dword [ebx + 0x18], 0x21
mov dword [ebx + 0x58], eax
mov dword [ebx + 0x374], eax
call edi
push esi
push 1
push 0x459
push dword [ebx + 0x37c]
call edi
mov esi, dword [sym.imp.USER32.dll_GetWindowRect]
lea eax, [ebp - 0x64]
push eax
push dword [ebx + 0x388]
call esi
lea eax, [ebp - 0x34]
push eax
push dword [ebx + 0x390]
call esi
lea eax, [ebp - 0x54]
push eax
push dword [ebx + 0x38c]
call esi
lea eax, [ebp - 0x44]
push eax
push dword [ebx + 0x394]
call esi
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x64]
sub ecx, dword [ebp - 0x34]
cmp eax, ecx
jle 0x101849d
lea esi, [ebp - 0x64]
lea edi, [ebp - 0x34]
jmp 0x10184a3
lea esi, [ebp - 0x34]
lea edi, [ebp - 0x64]
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x4c]
sub eax, dword [ebp - 0x44]
sub ecx, dword [ebp - 0x54]
movsd dword es:[edi], dword [esi]
cmp ecx, eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jle 0x10184bf
lea esi, [ebp - 0x54]
lea edi, [ebp - 0x44]
jmp 0x10184c5
lea esi, [ebp - 0x44]
lea edi, [ebp - 0x54]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
xor esi, esi
inc esi
push esi
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebx + 0x388]
call fcn.01014769
push esi
lea eax, [ebp - 0x34]
push eax
lea ecx, [ebx + 0x390]
call fcn.01014769
push esi
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebx + 0x38c]
call fcn.01014769
push esi
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebx + 0x394]
call fcn.01014769
xor esi, esi
mov edi, 0x10016f0
push edi
lea ecx, [ebp - 0x14]
mov dword [ebx + 0x398], esi
mov dword [ebx + 0x39c], esi
mov dword [ebx + 0x3a0], esi
call sub.MFC42u.dll_CString::CString_1
push eax
lea ecx, [ebx + 0x3ac]
mov dword [ebp - 4], esi
call fcn.01019490
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.010194b4
mov ecx, ebx
mov dword [ebx + 0x3b0], esi
mov dword [ebx + 0x3a4], esi
mov dword [ebx + 0x3a8], esi
call fcn.010169a8
mov ecx, ebx
call fcn.01014831
lea ecx, [ebx + 0x3b8]
push edi
mov dword [ebx + 0x168], esi
call fcn.01019484
lea ecx, [ebx + 0x3bc]
push edi
call fcn.01019484
push edi
lea ecx, [ebx + 0x3c0]
call fcn.01019484
push 0x24
mov dword [ebx + 0x3c8], esi
mov dword [ebx + 0x3c4], esi
mov dword [ebx + 0x1c], esi
call sub.MFC42u.dll_operatornew
pop ecx
mov dword [ebp - 0x10], eax
mov dword [ebp - 4], 1
cmp eax, esi
je 0x10185c4
mov ecx, eax
call fcn.0100ad51
mov dword [ebp - 0x10], eax
jmp 0x10185c7
mov dword [ebp - 0x10], esi
mov ecx, dword [ebp - 0x10]
or dword [ebp - 4], 0xffffffff
cmp ecx, esi
je 0x10185ec
push dword [ebx + 4]
mov eax, dword [ecx]
push edi
call dword [eax + 8]
test eax, eax
jge 0x1018741
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx]
push 1
call dword [eax]
mov dword [ebx + 0x1c], esi
lea eax, [ebx + 0x3bc]
mov ecx, dword [eax]
mov dword [ebx + 0x20], esi
mov dword [ebx + 0x28], esi
cmp dword [ecx - 8], esi
je 0x101860e
push eax
lea ecx, [ebx + 0x3b8]
call fcn.01019490
mov ecx, dword [ebx + 0x3b8]
cmp dword [ecx - 8], esi
je 0x101864d
mov eax, ecx
lea edi, [eax + 2]
mov dx, word [eax]
inc eax
inc eax
cmp dx, si
jne 0x101861e
sub eax, edi
sar eax, 1
dec eax
cmp eax, esi
jl 0x101864d
cmp word [ecx + eax*2], 0x2e
je 0x101863b
dec eax
jns 0x1018631
cmp eax, esi
jl 0x101864d
inc eax
push eax
push ecx
mov ecx, ebx
call fcn.0101791e
cmp eax, esi
jge 0x101865c
mov eax, dword [ebx + 0x1c]
cmp eax, esi
je 0x101865c
push eax
mov ecx, ebx
call fcn.01016a70
push 0xd1
push dword [0x1026830]
call dword [sym.imp.USER32.dll_LoadAcceleratorsW]
mov dword [ebx + 0x3d0], eax
xor eax, eax
mov dword [ebp - 0x74], esi
lea edi, [ebp - 0x70]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push 0xa
pop ecx
xor eax, eax
lea edi, [ebp - 0xc8]
rep stosd dword es:[edi], eax
lea edi, [ebp - 0x20]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push 0x32
pop eax
push esi
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x74]
push eax
push esi
push 0x30
mov dword [ebp - 0x1c], 0x258
mov dword [ebp - 0x18], 0x1c2
mov dword [ebp - 0xcc], 0x2c
mov dword [ebp - 0xc4], esi
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
test eax, eax
je 0x10186ea
mov eax, dword [ebp - 0x6c]
cmp eax, 0x28a
jle 0x10186da
add eax, 0xffffffce
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x68]
cmp eax, 0x1f4
jle 0x10186ea
add eax, 0xffffffce
mov dword [ebp - 0x18], eax
lea esi, [ebp - 0x24]
lea edi, [ebp - 0xb0]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0xcc]
movsd dword es:[edi], dword [esi]
push eax
push dword [ebx + 4]
movsd dword es:[edi], dword [esi]
call dword [sym.imp.USER32.dll_SetWindowPlacement]
push 0x18f
push dword [ebx]
call dword [sym.imp.USER32.dll_LoadIconW]
mov esi, eax
test esi, esi
je 0x1018737
push esi
push 0xffffffffffffffde
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SetClassLongW]
push esi
push 0
push 0x80
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
call fcn.01019f8f
ret 0x10
mov eax, dword [ebp - 0x10]
mov dword [ebx + 0x1c], eax
jmp 0x10185ef