Function at 0x1034db1
Capabilities:
Get common file path

Disassembly:
push 0x48
mov eax, 0x105d8e8
call fcn.0104dd12
mov ebx, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
mov esi, 0x10049f4
lea edi, [ebp - 0x24]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
xor edx, edx
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x34], edx
movsw word es:[edi], word [esi]
cmp ebx, edx
jne 0x1034e05
push 0x10049c0
push 0x10049b0
mov eax, 0x80070057
push eax
mov dword [ebp - 0x28], eax
call fcn.01048c52
add esp, 0xc
mov eax, dword [ebp - 0x28]
call fcn.0104dd7d
ret 8
cmp ecx, edx
jne 0x1034e15
push 0x1004974
push 0x1004964
jmp 0x1034de9
xor eax, eax
mov edi, ecx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov edi, ebx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push 6
pop ecx
xor eax, eax
lea edi, [ebp - 0x54]
rep stosd dword es:[edi], eax
mov dword [ebp - 4], edx
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x30], edx
mov byte [ebp - 4], 2
cmp dword [0x106681c], edx
jne 0x1034e65
push 0x1002428
push 0x1004934
push 0x4000000
call fcn.01048e9b
add esp, 0xc
push 0
mov byte [ebp - 4], 0
call sub.msvcrt.dll_void___cdecl_operator_delete___void__
pop ecx
jmp 0x1034dfa
mov esi, dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
push edx
push edx
call esi
test eax, eax
jne 0x1034eab
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
jle 0x1034e89
and eax, 0xffff
or eax, 0x80070000
mov dword [ebp - 0x28], eax
test eax, eax
jl 0x1034e97
mov dword [ebp - 0x28], 0x80004005
push 0x10048e0
push 0x10048d0
call esi
push eax
call fcn.01048d15
jmp 0x1034e54
lea edi, [eax + 1]
push edi
lea ecx, [ebp - 0x2c]
call fcn.01033530
movzx eax, al
test eax, eax
jne 0x1034ee1
push 0x10048a8
mov eax, 0x8007000e
push 0x1004898
push eax
mov dword [ebp - 0x28], eax
call fcn.01048c52
add esp, 0xc
push dword [ebp - 0x2c]
jmp 0x1034e59
push edi
mov edi, dword [ebp - 0x2c]
push edi
call esi
test eax, eax
jne 0x1034f2b
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
jle 0x1034f02
and eax, 0xffff
or eax, 0x80070000
mov dword [ebp - 0x28], eax
test eax, eax
jl 0x1034f10
mov dword [ebp - 0x28], 0x80004005
push 0x1004858
push 0x1004844
call esi
push eax
call fcn.01048d15
add esp, 0xc
push edi
jmp 0x1034e59
movzx eax, word [edi]
push eax
call dword [sym.imp.msvcrt.dll_towupper]
mov word [ebp - 0x1c], ax
lea eax, [ebp - 0x24]
push eax
push 0x1002428
push 0x1004820
push 0x4000000
call fcn.01048e9b
add esp, 0x14
push 0xffffffffffffffff
push 0x80
push 3
push 0
push 3
push 0xc0000000
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
xor esi, esi
mov dword [ebp - 0x30], edi
cmp edi, esi
je 0x1034ff3
cmp edi, 0xffffffff
je 0x1034ff3
push esi
lea eax, [ebp - 0x34]
push eax
push 0x18
lea eax, [ebp - 0x54]
push eax
push esi
push esi
push 0x53002c
push edi
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
cmp eax, esi
jne 0x1034fd8
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
jle 0x1034fb3
and eax, 0xffff
or eax, 0x80070000
mov dword [ebp - 0x28], eax
test eax, eax
jl 0x1034fc1
mov dword [ebp - 0x28], 0x80004005
push 0x10047b8
push 0x10047a8
call esi
push eax
call fcn.01048d15
add esp, 0xc
jmp 0x1035038
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x4c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x48]
mov dword [eax + 4], ecx
mov eax, dword [ebp - 0x44]
mov dword [ebx], eax
mov eax, dword [ebp - 0x40]
mov dword [ebx + 4], eax
jmp 0x1035038
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
jle 0x1035009
and eax, 0xffff
or eax, 0x80070000
mov dword [ebp - 0x28], eax
test eax, eax
jl 0x1035017
mov dword [ebp - 0x28], 0x80004005
lea eax, [ebp - 0x24]
push eax
push 0x100476c
push 0x100475c
call esi
push eax
call fcn.01048d15
add esp, 0x10
test edi, edi
je 0x1034ed9
lea ecx, [ebp - 0x30]
call fcn.0102fb22
jmp 0x1034ed9