Function at 0x46ce58
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd8
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x18], edx
mov dword [ebp - 8], edx
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x10], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00404180
xor eax, eax
push ebp
push 0x46d238
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x47cff4]
cmp dword [eax], 2
jne 0x46cecd
mov eax, dword [0x47cf9c]
push dword [eax]
push 0x46d250
lea edx, [ebp - 0x18]
mov eax, 0x46d25c
call fcn.004550fc
push dword [ebp - 0x18]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov ecx, dword [ebp - 0x14]
mov dl, 1
mov eax, dword [0x453e20]
call fcn.00453ec8
mov eax, dword [0x47cff4]
cmp dword [eax], 2
je 0x46cef3
lea edx, [ebp - 0x14]
mov eax, 0x46d25c
call fcn.004550fc
mov ecx, dword [ebp - 0x14]
mov dl, 1
mov eax, dword [0x453e20]
call fcn.00453ec8
lea eax, [ebp - 0x18]
call fcn.00455428
push dword [ebp - 0x18]
push 0x46d250
push dword [ebp - 4]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004087e4
test al, al
je 0x46cf47
lea eax, [ebp - 0x18]
call fcn.00455428
push dword [ebp - 0x18]
push 0x46d250
push dword [ebp - 4]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089c0
mov eax, dword [0x47cf9c]
push dword [eax]
push 0x46d250
lea edx, [ebp - 0x18]
mov eax, 0x46d25c
call fcn.004550fc
push dword [ebp - 0x18]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089c0
mov edx, dword [0x47cf9c]
mov edx, dword [edx]
mov eax, 0x46d270
call fcn.0046cd2c
push dword [0x9aa150]
push 0x46d250
lea edx, [ebp - 0x18]
mov eax, 0x46d25c
call fcn.004550fc
push dword [ebp - 0x18]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089c0
mov edx, dword [0x9aa150]
mov eax, 0x46d270
call fcn.0046cd2c
mov eax, dword [0x47cf9c]
push dword [eax]
push 0x46d250
push dword [ebp - 4]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089c0
push dword [0x9aa150]
push 0x46d250
push dword [ebp - 4]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089c0
xor eax, eax
push ebp
push 0x46d035
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x47cf9c]
mov eax, dword [eax]
call fcn.00402b58
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46d03f
xor eax, eax
push ebp
push 0x46d061
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x9aa150]
call fcn.00402b58
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46d06b
lea eax, [ebp - 8]
push eax
lea edx, [ebp - 0x28]
mov eax, dword [ebp - 4]
call fcn.00453c08
lea ecx, [ebp - 0x28]
mov edx, 0x46d27c
mov eax, 0x46d28c
call fcn.0046c144
mov edx, dword [ebp - 8]
mov eax, 0x46d2a0
call fcn.004042b4
lea edx, [ebp - 8]
mov ecx, eax
mov eax, 1
xchg edx, eax
call fcn.00404210
lea eax, [ebp - 0xc]
mov edx, 0x104
call fcn.004042fc
mov eax, dword [ebp - 0xc]
call fcn.00404190
push eax
mov eax, dword [ebp - 0xc]
call fcn.00403fcc
push eax
call sub.kernel32.dll_GetTempPathA
mov eax, dword [ebp - 0xc]
call fcn.00404190
mov edx, eax
lea eax, [ebp - 0xc]
call fcn.00403f04
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 0xc]
call fcn.00403de8
mov edx, dword [ebp - 0x10]
mov eax, 0x46d270
call fcn.0046cd2c
mov eax, dword [0x47cf9c]
push dword [eax]
push 0x46d250
push dword [ebp - 8]
push 0x46d2ac
lea eax, [ebp - 0x14]
mov edx, 4
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004087e4
test al, al
je 0x46d14d
mov eax, dword [0x47cf9c]
push dword [eax]
push 0x46d250
push dword [ebp - 8]
push 0x46d2ac
lea eax, [ebp - 0x14]
mov edx, 4
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089c0
mov eax, dword [0x47cf9c]
push dword [eax]
push 0x46d250
lea edx, [ebp - 0x18]
mov eax, 0x46d25c
call fcn.004550fc
push dword [ebp - 0x18]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089c0
push dword [ebp - 0x10]
mov eax, dword [0x47cf9c]
push dword [eax]
push 0x46d250
lea edx, [ebp - 0x18]
mov eax, 0x46d25c
call fcn.004550fc
push dword [ebp - 0x18]
lea eax, [ebp - 0x14]
mov edx, 4
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089c0
xor eax, eax
push ebp
push 0x46d1e5
push dword fs:[eax]
mov dword fs:[eax], esp
mov ecx, dword [0x47cf9c]
mov ecx, dword [ecx]
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 0x10]
call fcn.00404018
mov eax, dword [ebp - 0x14]
call fcn.00402b58
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46d1ef
xor eax, eax
push ebp
push 0x46d213
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x47cf9c]
mov eax, dword [eax]
call fcn.00402b58
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46d21d
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x46d23f
lea eax, [ebp - 0x18]
mov edx, 6
call fcn.00403d74
ret