Function at 0x43419b
Capabilities:
Get common file path

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x448
mov eax, dword [0x46a010]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 8]
push ebx
mov dword [ebp - 0x448], eax
mov eax, dword [ebp + 0x14]
push esi
push edi
mov dword [ebp - 0x444], eax
xor edi, edi
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x440], eax
lea eax, [ebp - 0x21c]
push ecx
push eax
lea eax, [ebp - 0x43c]
mov dword [ebp - 0x438], edi
push eax
lea eax, [ebp - 0x438]
mov dword [ebp - 0x43c], edi
push eax
mov dword [ebp - 0x428], edi
mov dword [ebp - 0x430], edi
mov dword [ebp - 0x42c], edi
mov dword [ebp - 0x434], edi
call fcn.0042e7f5
mov esi, eax
test esi, esi
jns 0x43425e
mov eax, dword [0x46a020]
cmp eax, 0x46a020
je 0x4342b6
test byte [eax + 0x1c], 8
je 0x4342b6
cmp byte [eax + 0x19], 2
jb 0x4342b6
push esi
push 0x4066f0
call fcn.00411040
push eax
mov eax, dword [0x46a020]
mov edx, 0x406758
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x20
pop ecx
call fcn.00410eec
jmp 0x4342b6
mov ebx, dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp dword [ebp + 0xc], edi
je 0x434279
cmp dword [ebp - 0x438], edi
je 0x4342de
cmp dword [ebp - 0x43c], edi
je 0x4342e7
mov esi, edi
mov eax, dword [ebp - 0x42c]
test eax, eax
je 0x434288
push eax
call ebx
mov eax, dword [ebp - 0x430]
test eax, eax
je 0x434295
push eax
call ebx
mov eax, dword [ebp - 0x428]
test eax, eax
je 0x4342a2
push eax
call ebx
test edi, edi
je 0x4342a9
push edi
call ebx
mov eax, dword [ebp - 0x434]
test eax, eax
je 0x4342b6
push eax
call ebx
test esi, esi
jns 0x4342c9
push 1
push ecx
mov edx, 0x33f5
xor ecx, ecx
call fcn.00461b4d
mov ecx, dword [ebp - 8]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00468719
mov esp, ebp
pop ebp
ret 0x14
cmp word [ebp - 0x21c], di
je 0x434279
lea eax, [ebp - 0x424]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
test eax, eax
jne 0x434358
mov eax, dword [0x46a020]
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x46a020
je 0x43433e
test byte [eax + 0x1c], 1
je 0x43433e
cmp byte [eax + 0x19], 2
jb 0x43433e
call esi
push eax
push ecx
call fcn.00411040
pop ecx
push eax
mov eax, dword [0x46a020]
mov edx, 0x406758
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x21
pop ecx
call fcn.00412c68
call esi
mov esi, eax
test esi, esi
jle 0x4342b8
movzx esi, si
or esi, 0x80070000
jmp 0x4342b6
push dword [ebp - 0x448]
mov esi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
call esi
mov edi, eax
test edi, edi
jne 0x4343b3
mov eax, dword [0x46a020]
cmp eax, 0x46a020
je 0x4343a9
test byte [eax + 0x1c], 8
je 0x4343a9
cmp byte [eax + 0x19], 2
jb 0x4343a9
push 0x405008
push ecx
call fcn.00411040
pop ecx
push eax
mov eax, dword [0x46a020]
mov edx, 0x406758
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x22
pop ecx
call fcn.0040f9dc
mov esi, 0x8007000e
jmp 0x4342ba
push dword [ebp - 0x444]
call esi
mov dword [ebp - 0x428], eax
test eax, eax
jne 0x43440c
mov eax, dword [0x46a020]
cmp eax, 0x46a020
je 0x434402
test byte [eax + 0x1c], 8
je 0x434402
cmp byte [eax + 0x19], 2
jb 0x434402
push 0x405008
push ecx
call fcn.00411040
pop ecx
push eax
mov eax, dword [0x46a020]
mov edx, 0x406758
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x23
pop ecx
call fcn.0040f9dc
mov esi, 0x8007000e
jmp 0x4342a2
lea eax, [ebp - 0x424]
push eax
call esi
mov dword [ebp - 0x430], eax
test eax, eax
jne 0x434466
mov eax, dword [0x46a020]
cmp eax, 0x46a020
je 0x43445c
test byte [eax + 0x1c], 8
je 0x43445c
cmp byte [eax + 0x19], 2
jb 0x43445c
push 0x405008
push ecx
call fcn.00411040
pop ecx
push eax
mov eax, dword [0x46a020]
mov edx, 0x406758
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x24
pop ecx
call fcn.0040f9dc
mov esi, 0x8007000e
jmp 0x434295
lea eax, [ebp - 0x21c]
push eax
call esi
mov dword [ebp - 0x42c], eax
test eax, eax
jne 0x4344c0
mov eax, dword [0x46a020]
cmp eax, 0x46a020
je 0x4344b6
test byte [eax + 0x1c], 8
je 0x4344b6
cmp byte [eax + 0x19], 2
jb 0x4344b6
push 0x405008
push ecx
call fcn.00411040
pop ecx
push eax
mov eax, dword [0x46a020]
mov edx, 0x406758
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x25
pop ecx
call fcn.0040f9dc
mov esi, 0x8007000e
jmp 0x434288
push dword [ebp - 0x440]
call esi
mov dword [ebp - 0x434], eax
test eax, eax
jne 0x43451b
mov ecx, dword [0x46a020]
cmp ecx, 0x46a020
je 0x434511
test byte [ecx + 0x1c], 8
je 0x434511
cmp byte [ecx + 0x19], 2
jb 0x434511
push 0x405008
push ecx
call fcn.00411040
pop ecx
push eax
mov eax, dword [0x46a020]
mov edx, 0x406758
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x26
pop ecx
call fcn.0040f9dc
mov esi, 0x8007000e
jmp 0x43427b
mov edx, dword [ebp - 0x428]
mov ecx, edi
push eax
mov eax, dword [ebp - 0x42c]
push eax
mov eax, dword [ebp - 0x430]
push eax
call fcn.00463289
mov esi, eax
test esi, esi
jns 0x43458a
mov eax, dword [0x46a020]
cmp eax, 0x46a020
je 0x43427b
test byte [eax + 0x1c], 8
je 0x43427b
cmp byte [eax + 0x19], 2
jb 0x43427b
push esi
push 0x406718
call fcn.00411040
push eax
mov eax, dword [0x46a020]
mov edx, 0x406758
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x27
pop ecx
call fcn.00410eec
jmp 0x43427b
mov esi, 0x40200
jmp 0x43427b