Function at 0x510c50
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x34], ecx
mov edi, edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00404be0
xor eax, eax
push ebp
push 0x510d0e
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, edi
call fcn.00404724
mov eax, 0x104
call fcn.004027d8
mov ebx, eax
mov eax, 0x104
call fcn.004027d8
mov esi, eax
push ebx
push 0x104
call sub.KERNEL32.DLL_GetTempPathA
test eax, eax
je 0x510ce2
lea eax, [ebp - 0x34]
push eax
mov ecx, 9
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.00404c50
mov edx, dword [ebp - 0x34]
lea eax, [ebp - 0x2d]
call fcn.004097a4
push esi
push 0
lea eax, [ebp - 0x2d]
push eax
push ebx
call sub.KERNEL32.DLL_GetTempFileNameA
test eax, eax
je 0x510ce2
mov eax, edi
mov edx, esi
call fcn.00404914
mov eax, esi
call fcn.004027f8
mov eax, ebx
call fcn.004027f8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x510d15
lea eax, [ebp - 0x34]
call fcn.00404724
lea eax, [ebp - 4]
call fcn.00404724
ret

Function at 0x510d1c
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffb8
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x40], ebx
mov byte [ebp - 5], cl
mov dword [ebp - 4], edx
mov edi, eax
mov ebx, dword [ebp + 8]
mov eax, dword [ebp - 4]
call fcn.00404be0
xor eax, eax
push ebp
push 0x510e85
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, ebx
call fcn.00404724
cmp byte [ebp - 5], 0
je 0x510d6a
mov ecx, ebx
mov edx, dword [ebp - 4]
mov eax, edi
call fcn.0050990c
cmp dword [ebx], 0
jne 0x510e62
mov eax, 0x104
call fcn.004027d8
mov esi, eax
mov eax, 0x104
call fcn.004027d8
mov dword [ebp - 0xc], eax
push esi
push 0x104
call sub.KERNEL32.DLL_GetTempPathA
test eax, eax
je 0x510e0b
lea eax, [ebp - 0x40]
push eax
mov ecx, 9
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.00404c50
mov edx, dword [ebp - 0x40]
lea eax, [ebp - 0x39]
call fcn.004097a4
xor eax, eax
mov dword [ebp - 0x10], eax
push 0
mov eax, dword [ebp - 0xc]
push eax
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x39]
mov eax, dword [edi + 0x60]
mov edx, esi
call fcn.00509bc8
test al, al
je 0x510de8
mov eax, ebx
mov edx, dword [ebp - 0xc]
call fcn.00404914
jmp 0x510e0b
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
lea ecx, [ebp - 0x39]
mov eax, dword [edi + 0x60]
mov edx, esi
call fcn.00509ab8
test al, al
je 0x510e0b
mov eax, ebx
mov edx, dword [ebp - 0xc]
call fcn.00404914
cmp dword [ebx], 0
jne 0x510e53
lea eax, [ebp - 0x44]
mov edx, esi
call fcn.00404914
push dword [ebp - 0x44]
push dword [ebp - 4]
mov eax, 0x2710
call fcn.004031ec
lea edx, [ebp - 0x48]
call fcn.00408f9c
push dword [ebp - 0x48]
push 0x510ea0
mov eax, ebx
mov edx, 4
call fcn.00404ab8
mov edx, dword [ebx]
mov eax, dword [edi + 0x60]
mov ecx, dword [ebp - 4]
call fcn.005099c0
mov eax, esi
call fcn.004027f8
mov eax, dword [ebp - 0xc]
call fcn.004027f8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x510e8c
lea eax, [ebp - 0x48]
mov edx, 3
call fcn.00404748
lea eax, [ebp - 4]
call fcn.00404724
ret