Function at 0x50ed4c
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
mov ecx, 4
push 0
push 0
dec ecx
jne 0x50ed54
push ecx
push ebx
push esi
push edi
mov dword [ebp - 0xc], edx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
call fcn.004060c4
mov eax, dword [ebp - 0xc]
call fcn.004060c4
xor eax, eax
push ebp
push 0x50efe1
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 8]
call fcn.0040d9a0
test al, al
je 0x50efa4
xor eax, eax
push ebp
push 0x50edff
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 4]
mov edx, 0x104
call fcn.00406468
mov eax, dword [ebp - 4]
call fcn.00406168
push eax
push 0x104
call sub.kernel32.dll_GetTempPathW
mov eax, dword [ebp - 4]
call fcn.00406168
call fcn.0040e32c
mov edx, eax
lea eax, [ebp - 4]
call fcn.00406468
push dword [ebp - 4]
push 0x50effc
push dword [ebp - 0xc]
push 0x50f020
lea eax, [ebp - 4]
mov edx, 4
call fcn.004066a4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x50ee40
mov eax, dword [ebp - 4]
call fcn.0048d340
test al, al
je 0x50ee54
mov eax, dword [ebp - 4]
call fcn.00505d50
mov eax, dword [ebp - 4]
call fcn.0048d340
test al, al
jne 0x50ee70
mov eax, dword [ebp - 4]
call fcn.0040e2c8
test al, al
je 0x50efa4
xor eax, eax
push ebp
push 0x50ef9d
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
mov edx, 0x50f030
call fcn.00406890
jne 0x50eeef
mov dl, 1
mov eax, dword [0x4fae58]
call fcn.004fc5a4
mov dword [ebp - 0x10], eax
xor eax, eax
push ebp
push 0x50eedb
push dword fs:[eax]
mov dword fs:[eax], esp
push 0xffffffffffffffff
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov eax, dword [eax - 4]
mov edx, dword [eax + 0x3c0]
or ecx, 0xffffffff
mov eax, dword [ebp - 0x10]
call fcn.004fcfac
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
call fcn.004fcc94
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x50eee5
mov eax, dword [ebp - 0x10]
call fcn.0040426c
jmp 0x50ef50
mov eax, dword [ebp - 0xc]
mov edx, 0x50f048
call fcn.00406890
jne 0x50ef50
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov eax, dword [eax - 4]
mov edx, dword [eax + 0x3c0]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov eax, dword [eax - 4]
mov eax, dword [eax + 0x3a4]
call fcn.004c1290
test al, al
je 0x50ef50
push 0
lea eax, [ebp - 0x1c]
mov edx, dword [ebp - 4]
mov ecx, 0
call fcn.00406330
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov eax, dword [eax - 4]
mov eax, dword [eax + 0x3a4]
mov cl, 1
call fcn.004c1de4
xor ebx, ebx
push ebp
mov eax, ebx
call fcn.0050e4f0
pop ecx
test al, al
jne 0x50ef65
inc ebx
cmp ebx, 0x14
jne 0x50ef52
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x50efa4
lea edx, [ebp - 0x24]
mov eax, dword [0x520340]
mov eax, dword [eax]
call fcn.0048907c
mov eax, dword [ebp - 0x24]
lea edx, [ebp - 0x20]
call fcn.0040dfd4
mov eax, dword [ebp - 0x20]
call fcn.0040e2b0
mov eax, dword [ebp - 4]
call fcn.00505d50
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x50efe8
lea eax, [ebp - 0x24]
mov edx, 2
call fcn.004060d4
lea eax, [ebp - 0x1c]
call fcn.004054e4
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.004060d4
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.004060d4
ret