Function at 0x439700
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x104
mov eax, dword [0x56211c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, ecx
push edi
cmp dword [esi + 0xb0], 0
jle 0x4399d9
mov eax, dword [esi + 0xac]
mov ebx, dword [eax]
test ebx, ebx
je 0x4399de
cmp dword [esi + 0xb0], 1
jle 0x4399e3
mov edi, dword [eax + 4]
test edi, edi
je 0x4399e8
push 0x423
mov ecx, ebx
call sub.mfc120.dll_Ordinal_5306
push 0
push 0
push 0xf0
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, 1
mov ecx, ebx
push 0x428
sete al
mov byte [esi + 0xcc], al
call sub.mfc120.dll_Ordinal_5306
push 0
push 0
push 0xf0
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, 1
mov ecx, ebx
push 0x429
sete al
mov byte [esi + 0xcd], al
call sub.mfc120.dll_Ordinal_5306
push 0
push 0
push 0xf0
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, 1
mov ecx, ebx
push 0x424
sete al
mov byte [esi + 0xce], al
call sub.mfc120.dll_Ordinal_5306
push 0
push 0
push 0xf0
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, 1
mov ecx, ebx
push 0x426
sete al
mov byte [esi + 0xcf], al
call sub.mfc120.dll_Ordinal_5306
push 0
push 0
push 0xf0
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, 1
mov ecx, ebx
push 0x427
sete al
mov byte [esi + 0xd1], al
call sub.mfc120.dll_Ordinal_5306
push 0
push 0
push 0xf0
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, 1
mov ecx, ebx
push 0x425
sete al
mov byte [esi + 0xd2], al
call sub.mfc120.dll_Ordinal_5306
push 0
push 0
push 0xf0
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, 1
mov ecx, ebx
push 0x42f
sete al
mov byte [esi + 0xdf], al
call sub.mfc120.dll_Ordinal_5306
push eax
mov ecx, esi
call fcn.00439a70
push 0x433
mov ecx, ebx
mov dword [esi + 0xe0], eax
call sub.mfc120.dll_Ordinal_5306
push eax
mov ecx, esi
call fcn.00439a70
push 0x42a
mov ecx, edi
mov dword [esi + 0xe8], eax
call sub.mfc120.dll_Ordinal_5306
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0xf0
push dword [eax + 0x20]
call ebx
cmp eax, 1
mov ecx, edi
push 0x42b
sete al
mov byte [esi + 0xdc], al
call sub.mfc120.dll_Ordinal_5306
push 0
push 0
push 0xf0
push dword [eax + 0x20]
call ebx
cmp eax, 1
mov ecx, edi
sete al
mov byte [esi + 0xdd], al
lea eax, [esi + 0xd4]
push eax
push 0x428
call sub.mfc120.dll_Ordinal_5306
mov ecx, eax
call sub.mfc120.dll_Ordinal_7667
mov eax, dword [esi + 0xd4]
lea ecx, [esi + 0xd4]
cmp dword [eax - 0xc], 0
jne 0x439930
push 0x44e790
call dword [sym.imp.mfc120.dll_Ordinal_1524]
push 0x44e790
lea eax, [ebp - 0x104]
push 0x100
push eax
call dword [sym.imp.MSVCR120.dll_strcpy_s]
add esp, 0xc
lea eax, [ebp - 0x104]
push eax
push 0x100
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
lea eax, [ebp - 0x104]
push eax
lea ecx, [esi + 0xd8]
call dword [sym.imp.mfc120.dll_Ordinal_1524]
push 0x433
mov ecx, edi
call sub.mfc120.dll_Ordinal_5306
push 0
push 0
push 0xf0
push dword [eax + 0x20]
call ebx
test eax, eax
je 0x439999
mov dword [esi + 0xe4], 0x13
jmp 0x4399c1
push 0x434
mov ecx, edi
call sub.mfc120.dll_Ordinal_5306
push 0
push 0
push 0xf0
push dword [eax + 0x20]
call ebx
test eax, eax
je 0x4399c1
mov dword [esi + 0xe4], 0x3e
mov ecx, esi
call sub.mfc120.dll_Ordinal_3890
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0043babe
mov esp, ebp
pop ebp
ret
call sub.mfc120.dll_Ordinal_2339
call sub.mfc120.dll_Ordinal_2339
call sub.mfc120.dll_Ordinal_2339
call sub.mfc120.dll_Ordinal_2339
int3