Function at 0x492f40
Capabilities:
Get common file path
Query environment variable

Disassembly:
mov eax, 0x50d8
call fcn.004e3510
mov eax, dword [0x514bc0]
xor eax, esp
mov dword [esp + 0x50d4], eax
cmp byte [0x538309], 0
push ebp
mov ebp, ecx
push edi
mov edi, dword [esp + 0x50e4]
mov dword [esp + 0xc], ebp
jne 0x492fa0
cmp word [edi], 0x2e
jne 0x492fa0
movzx eax, word [edi + 2]
push eax
call fcn.004514d0
test al, al
je 0x492f8f
add edi, 4
cmp word [edi], 0x2e
je 0x492f76
jmp 0x492fa0
cmp word [edi], 0x2e
jne 0x492fa0
cmp word [edi + 2], 0
je 0x49343b
push 0x800
lea ecx, [esp + 0x3018]
push ecx
push edi
call fcn.00452350
mov ecx, 0x4fe3ec
mov eax, edi
lea ebx, [ebx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x492fe6
test dx, dx
je 0x492fe2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x492fe6
add eax, 4
add ecx, 4
test dx, dx
jne 0x492fc0
xor eax, eax
jmp 0x492feb
sbb eax, eax
sbb eax, 0xffffffff
push ebx
test eax, eax
push esi
sete bl
push edi
mov byte [esp + 0x17], bl
call fcn.00451470
mov esi, eax
movzx edx, word [esi]
push edx
call fcn.004514d0
test al, al
je 0x49304c
test bl, bl
jne 0x49304c
lea ecx, [esp + 0x301c]
mov eax, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x49303e
test dx, dx
je 0x49303a
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x49303e
add eax, 4
add ecx, 4
test dx, dx
jne 0x493018
xor eax, eax
jmp 0x493043
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x49304c
xor eax, eax
mov word [esi], ax
xor ebx, ebx
mov esi, edi
cmp word [edi], bx
je 0x49308e
cmp word [esi], 0x2e
jne 0x49308e
cmp word [esi + 2], 0x2e
jne 0x49308e
movzx ecx, word [esi + 4]
push ecx
call fcn.004514d0
test al, al
jne 0x493077
cmp word [esi + 4], 0
jne 0x49308e
xor edx, edx
cmp word [esi + 4], dx
setne dl
inc ebx
add edx, 2
cmp word [esi + edx*2], 0
lea esi, [esi + edx*2]
jne 0x493055
cmp byte [0x538309], 0
je 0x4930a8
push edi
call fcn.004522a0
test al, al
je 0x4930a8
mov ecx, ebp
call fcn.00490010
cmp byte [ebp + 0x101a], 0
je 0x4930df
mov ecx, dword [ebp + 0x211c]
cmp ebx, ecx
mov eax, ebx
jl 0x4930bf
mov eax, ecx
cmp byte [esp + 0x13], 0
je 0x4930c8
mov eax, ecx
test eax, eax
je 0x4930df
push 0
mov esi, ebp
push eax
mov ecx, esi
call fcn.0048e720
push 0
jmp 0x493432
mov byte [ebp + 0x101a], 0
cmp byte [0x538309], 0
je 0x4931dd
push 0
push str.FlatView
push str.FileList
call fcn.00499a90
test eax, eax
je 0x493110
test ebx, ebx
je 0x493439
push 0x800
lea eax, [esp + 0x1020]
push eax
mov ecx, 0x546dc0
call fcn.004790a0
mov ecx, 0x4fe3ec
mov eax, edi
mov edi, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x493156
test dx, dx
je 0x493152
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x493156
add eax, 4
add ecx, 4
test dx, dx
jne 0x493130
xor eax, eax
jmp 0x49315b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x49318c
push edi
mov ecx, 0x546dc0
call fcn.00478f80
test al, al
je 0x49318c
xor ecx, ecx
test ebx, ebx
setle cl
lea edx, [esp + 0x101c]
dec ecx
and ecx, edx
push ecx
mov ecx, ebp
call fcn.00491780
jmp 0x493439
push 0x800
lea eax, [esp + 0x20]
push eax
mov ecx, 0x546dc0
call fcn.004790c0
push 0x800
lea ecx, [esp + 0x20]
push ecx
lea esi, [ebp + 0x101c]
push esi
call fcn.00467570
push esi
call fcn.00451d00
mov ecx, ebp
call fcn.00490010
test al, al
je 0x493439
lea edx, [esp + 0x1c]
push edx
call fcn.00451a10
push eax
mov ecx, ebp
jmp 0x493434
push 0x800
add ebp, 0x101c
push ebp
lea eax, [esp + 0x1024]
push eax
call fcn.00467570
xor ecx, ecx
mov word [esp + 0x1c], cx
test ebx, ebx
jle 0x4932e1
mov esi, dword [sym.imp.SHELL32.dll_SHGetSpecialFolderLocation]
jmp 0x493210
mov edx, dword [esp + 0x14]
cmp byte [edx + 0x101a], 0
jne 0x4932e1
push ebp
call fcn.00451940
test al, al
je 0x493297
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + 0x1020]
push ecx
call fcn.004514d0
test al, al
je 0x493297
mov eax, dword [esp + 0x14]
cmp word [eax + 0x1022], 0
jne 0x493297
cmp dword [eax + 0x211c], 0
jle 0x493260
mov byte [eax + 0x101a], 1
jmp 0x4932b3
mov eax, dword [eax]
lea edx, [esp + 0x18]
push edx
push 0x11
push eax
mov dword [esp + 0x24], 0
call esi
mov ecx, dword [esp + 0x18]
push ecx
mov ecx, 0x544c98
call fcn.00493460
mov eax, dword [0x56dadc]
mov ecx, dword [esp + 0x18]
mov edx, dword [eax]
mov edx, dword [edx + 0x14]
push ecx
push eax
call edx
jmp 0x4932b3
push 0x800
push ebp
call fcn.00451a10
push eax
lea eax, [esp + 0x24]
push eax
call fcn.00467570
push ebp
call fcn.00451d00
dec ebx
cmp word [edi], 0x2e
jne 0x4932c9
lea ebx, [ebx]
add edi, 2
cmp word [edi], 0x2e
je 0x4932c0
movzx ecx, word [edi]
push ecx
call fcn.004514d0
test al, al
je 0x4932d9
add edi, 2
test ebx, ebx
jg 0x493210
cmp byte [esp + 0x13], 0
je 0x493310
push 0x800
lea edx, [esp + 0x2020]
push edx
push ebp
call fcn.00452350
push 0x800
lea eax, [esp + 0x2020]
push eax
push ebp
call fcn.00467570
jmp 0x493345
push edi
call fcn.004522a0
test al, al
je 0x493328
push 0x800
push edi
push ebp
call fcn.00467570
jmp 0x493345
cmp word [edi], 0
je 0x493345
push 0x800
push ebp
call fcn.00451500
push 0x800
push edi
push ebp
call fcn.004675f0
push ebp
call fcn.00451c70
mov esi, eax
cmp esi, 0xffffffff
je 0x49337c
call fcn.004b0d20
mov edx, 1
mov ecx, esi
shl edx, cl
test edx, eax
jne 0x49337c
push 0x800
lea eax, [esp + 0x1020]
push eax
push ebp
call fcn.00467570
jmp 0x493439
mov esi, dword [esp + 0x14]
cmp byte [esi + 0x101a], 0
jne 0x493422
push ebp
call fcn.00443cc0
test al, al
jne 0x493422
push 0x800
lea ecx, [esp + 0x2020]
push ecx
push edi
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
test eax, eax
je 0x4933d3
lea edx, [esp + 0x201c]
push edx
call fcn.00443cc0
test al, al
je 0x4933d3
push 0x800
lea eax, [esp + 0x2020]
push eax
jmp 0x49341c
push ebp
push 0x6c
call fcn.00461b20
push eax
lea ecx, [esp + 0x4024]
push ecx
mov edx, 0x864
call fcn.00458640
add esp, 0xc
push 0x10
push 0x66
call fcn.00461b20
push eax
mov eax, dword [0x53a464]
lea edx, [esp + 0x4024]
push edx
push eax
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0x800
lea ecx, [esp + 0x1020]
push ecx
push ebp
call fcn.00467570
movzx edx, word [esp + 0x1c]
neg edx
sbb edx, edx
lea eax, [esp + 0x1c]
and edx, eax
push edx
mov ecx, esi
call fcn.00492300
pop esi
pop ebx
mov ecx, dword [esp + 0x50dc]
pop edi
pop ebp
xor ecx, esp
call fcn.004e34f4
add esp, 0x50d8
ret 4