Function at 0x39e98971
Capabilities:
Get common file path

Disassembly:
push 0x3ac
mov eax, 0x39ebcd17
call fcn.39eaecb8
push dword [0x39ee9090]
mov edi, dword [ebp + 8]
mov dword [ebp - 0x2b0], ecx
lea ecx, [ebp - 0x28c]
call fcn.39eb4742
xor ebx, ebx
mov dword [ebp - 4], ebx
push dword [0x39ee9090]
lea ecx, [ebp - 0x254]
call fcn.39eb4742
mov byte [ebp - 4], 1
push dword [0x39ee9090]
lea ecx, [ebp - 0x270]
call fcn.39eb4742
mov byte [ebp - 4], 2
push dword [0x39ee9090]
lea ecx, [ebp - 0x238]
call fcn.39eb4742
mov byte [ebp - 4], 3
push dword [0x39ee9090]
lea ecx, [ebp - 0x2a8]
call fcn.39eb4742
mov byte [ebp - 4], 4
push ebx
push 0x39ee0ea4
mov esi, 0x39ee0e80
push esi
push ebx
push edi
call fcn.39e6ba89
push ebx
push 0x39ee0e50
push esi
push ebx
push edi
mov dword [ebp - 0x2ac], eax
call fcn.39e6ba89
push ebx
push 0x39ee0e28
push esi
push ebx
push edi
mov dword [ebp - 0x2b8], eax
call fcn.39e6ba89
push ebx
push 0x39ee0e00
push esi
push ebx
push edi
mov dword [ebp - 0x2b4], eax
call fcn.39e6ba89
add esp, 0x50
mov dword [ebp - 0x2bc], eax
lea ecx, [ebp - 0x28c]
cmp dword [ebp - 0x2ac], ebx
je 0x39e9891f
push 0x39e09568
call fcn.39eb4742
mov ecx, dword [ebp - 0x2ac]
call dword [sym.imp.dlmgr.dll_public:_unsigned_short_int_const____thiscall_dlmgr::CDownloadError::Msg_void_const]
push eax
lea ecx, [ebp - 0x254]
call fcn.39eb4742
push 0x1388
lea eax, [ebp - 0x2f4]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 5
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x238]
call fcn.39eb4742
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2f4]
jmp 0x39e98cb2
mov esi, dword [ebp - 0x2b8]
cmp esi, ebx
je 0x39e98b70
push 0x39e09538
call fcn.39eb4742
mov eax, dword [esi + 0x50]
cmp eax, 7
ja case.default.0x39e98943
jmp dword [eax*4 + 0x39e98e86]
push 0x39e0951c
lea ecx, [ebp - 0x254]
call fcn.39eb4742
push 0x1389
lea eax, [ebp - 0x2f4]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 6
jmp 0x39e98901
push 0x39e094e4
lea ecx, [ebp - 0x254]
call fcn.39eb4742
push 0x138a
lea eax, [ebp - 0x310]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 7
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x238]
call fcn.39eb4742
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x310]
jmp 0x39e98cb2
push 0x39e094ac
lea ecx, [ebp - 0x254]
call fcn.39eb4742
push 0x138b
lea eax, [ebp - 0x380]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 8
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x238]
call fcn.39eb4742
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x380]
jmp 0x39e98cb2
push 0x39e09474
lea ecx, [ebp - 0x254]
call fcn.39eb4742
push 0x138c
lea eax, [ebp - 0x3b8]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 9
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x238]
call fcn.39eb4742
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x3b8]
jmp 0x39e98cb2
push 0x39e0943c
lea ecx, [ebp - 0x254]
call fcn.39eb4742
push 0x138d
lea eax, [ebp - 0x39c]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 0xa
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x238]
call fcn.39eb4742
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x39c]
jmp 0x39e98cb2
push 0x39e09418
lea ecx, [ebp - 0x254]
call fcn.39eb4742
push 0x138e
lea eax, [ebp - 0x364]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 0xb
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x238]
call fcn.39eb4742
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x364]
jmp 0x39e98cb2
push 0x39e093f4
lea ecx, [ebp - 0x254]
call fcn.39eb4742
push 0x138f
lea eax, [ebp - 0x32c]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 0xc
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x238]
call fcn.39eb4742
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x32c]
jmp 0x39e98cb2
push 0x39e093cc
lea ecx, [ebp - 0x254]
call fcn.39eb4742
push 0x1390
lea eax, [ebp - 0x348]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 0xd
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x238]
call fcn.39eb4742
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x348]
jmp 0x39e98cb2
push 0x39e093a8
lea ecx, [ebp - 0x254]
call fcn.39eb4742
push 0x1391
lea eax, [ebp - 0x2d8]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 0xe
jmp 0x39e98c99
mov esi, dword [ebp - 0x2b4]
cmp esi, ebx
je 0x39e98c09
push 0x39e09388
call fcn.39eb4742
mov ecx, esi
call dword [sym.imp.dlmgr.dll_public:_unsigned_short_int_const____thiscall_dlmgr::CDownloadBitsError::ShortMsg_void_]
push eax
lea ecx, [ebp - 0x254]
call fcn.39eb4742
push dword [esi + 0x3c]
lea eax, [ebp - 0x2d8]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 0xf
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x270]
call fcn.39eb4742
mov byte [ebp - 4], 4
push ebx
push 1
lea ecx, [ebp - 0x2d8]
call fcn.39eb4742
push dword [esi + 0x40]
lea eax, [ebp - 0x2d8]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 0x10
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x238]
call fcn.39eb4742
mov byte [ebp - 4], 4
push ebx
push 1
lea ecx, [ebp - 0x2d8]
call fcn.39eb4742
jmp 0x39e98ccf
cmp eax, ebx
je 0x39e98c66
push 0x39e09358
call fcn.39eb4742
mov esi, dword [ebp - 0x2bc]
lea eax, [ebp - 0x2d8]
push eax
mov ecx, esi
call dword [sym.imp.dlmgr.dll_public:_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int_____thiscall_dlmgr::CBitsDisabledError::ShortMsg_void_]
mov byte [ebp - 4], 0x11
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x254]
call fcn.39eb4742
mov byte [ebp - 4], 4
push ebx
push 1
lea ecx, [ebp - 0x2d8]
call fcn.39eb4742
push dword [esi + 0x3c]
lea eax, [ebp - 0x2d8]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 0x12
jmp 0x39e98c99
push 0x39e09330
call fcn.39eb4742
mov ecx, edi
call dword [sym.imp.dlmgr.dll_public:_unsigned_short_int_const____thiscall_dlmgr::CDownloadError::Msg_void_const]
push eax
lea ecx, [ebp - 0x254]
call fcn.39eb4742
push 0x1392
lea eax, [ebp - 0x2d8]
push eax
call fcn.39ea2974
mov byte [ebp - 4], 0x13
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x238]
call fcn.39eb4742
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2d8]
push ebx
push 1
call fcn.39eb4742
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x238]
push eax
lea ecx, [ebp - 0x270]
call fcn.39eb4742
call fcn.39e9ee17
mov esi, dword [eax + 0x10]
cmp esi, ebx
je 0x39e98d8c
xor eax, eax
push 0x208
mov word [ebp - 0x21c], ax
lea eax, [ebp - 0x21a]
push ebx
push eax
call fcn.39e6fce0
add esp, 0xc
push 0x104
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.kernel32.dll_GetSystemDirectoryW]
push 0x39e0931c
push 0x20a
lea eax, [ebp - 0x21c]
push eax
call fcn.39eb4742
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x2f4]
call fcn.39eb4742
mov byte [ebp - 4], 0x14
push dword [0x39ee9104]
lea ecx, [ebp - 0x310]
call fcn.39eb4742
mov byte [ebp - 4], 0x15
lea eax, [ebp - 0x2f4]
push eax
lea eax, [ebp - 0x310]
push eax
mov ecx, esi
call fcn.39ea1be6
mov byte [ebp - 4], 0x14
xor edi, edi
push ebx
inc edi
push edi
lea ecx, [ebp - 0x310]
call fcn.39eb4742
mov byte [ebp - 4], 4
push ebx
push edi
lea ecx, [ebp - 0x2f4]
call fcn.39eb4742
jmp 0x39e98d8f
xor edi, edi
inc edi
mov eax, dword [ebp - 0x2b0]
mov eax, dword [eax + 0xc]
lea ecx, [ebp - 0x2a8]
push ecx
lea ecx, [ebp - 0x238]
push ecx
lea ecx, [ebp - 0x270]
push ecx
lea ecx, [ebp - 0x254]
push ecx
lea ecx, [ebp - 0x28c]
push ecx
push edi
push ebx
push eax
call fcn.39e95619
cmp esi, ebx
je 0x39e98e27
push 0x39e162d8
lea ecx, [ebp - 0x310]
call fcn.39eb4742
mov byte [ebp - 4], 0x16
push dword [0x39ee9104]
lea ecx, [ebp - 0x2f4]
call fcn.39eb4742
mov byte [ebp - 4], 0x17
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x2f4]
push eax
mov ecx, esi
call fcn.39ea1be6
mov byte [ebp - 4], 0x16
push ebx
push edi
lea ecx, [ebp - 0x2f4]
call fcn.39eb4742
mov byte [ebp - 4], 4
push ebx
push edi
lea ecx, [ebp - 0x310]
call fcn.39eb4742
mov byte [ebp - 4], 3
push ebx
push edi
lea ecx, [ebp - 0x2a8]
call fcn.39eb4742
mov byte [ebp - 4], 2
push ebx
push edi
lea ecx, [ebp - 0x238]
call fcn.39eb4742
mov byte [ebp - 4], 1
push ebx
push edi
lea ecx, [ebp - 0x270]
call fcn.39eb4742
mov byte [ebp - 4], bl
push ebx
push edi
lea ecx, [ebp - 0x254]
call fcn.39eb4742
or dword [ebp - 4], 0xffffffff
push ebx
push edi
lea ecx, [ebp - 0x28c]
call fcn.39eb4742
call fcn.39eaed4a
ret 4