Function at 0x46c8c4
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 0x46cca4
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x47cef4]
cmp dword [eax], 2
jne 0x46c939
mov eax, dword [0x47ce9c]
push dword [eax]
push 0x46ccbc
lea edx, [ebp - 0x18]
mov eax, 0x46ccc8
call fcn.00455090
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 [0x453db4]
call fcn.00453e5c
mov eax, dword [0x47cef4]
cmp dword [eax], 2
je 0x46c95f
lea edx, [ebp - 0x14]
mov eax, 0x46ccc8
call fcn.00455090
mov ecx, dword [ebp - 0x14]
mov dl, 1
mov eax, dword [0x453db4]
call fcn.00453e5c
lea eax, [ebp - 0x18]
call fcn.004553bc
push dword [ebp - 0x18]
push 0x46ccbc
push dword [ebp - 4]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004087dc
test al, al
je 0x46c9b3
lea eax, [ebp - 0x18]
call fcn.004553bc
push dword [ebp - 0x18]
push 0x46ccbc
push dword [ebp - 4]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089b8
mov eax, dword [0x47ce9c]
push dword [eax]
push 0x46ccbc
lea edx, [ebp - 0x18]
mov eax, 0x46ccc8
call fcn.00455090
push dword [ebp - 0x18]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089b8
mov edx, dword [0x47ce9c]
mov edx, dword [edx]
mov eax, 0x46ccdc
call fcn.0046c798
push dword [0x9a9150]
push 0x46ccbc
lea edx, [ebp - 0x18]
mov eax, 0x46ccc8
call fcn.00455090
push dword [ebp - 0x18]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089b8
mov edx, dword [0x9a9150]
mov eax, 0x46ccdc
call fcn.0046c798
mov eax, dword [0x47ce9c]
push dword [eax]
push 0x46ccbc
push dword [ebp - 4]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089b8
push dword [0x9a9150]
push 0x46ccbc
push dword [ebp - 4]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089b8
xor eax, eax
push ebp
push 0x46caa1
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x47ce9c]
mov eax, dword [eax]
call fcn.00402b58
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46caab
xor eax, eax
push ebp
push 0x46cacd
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x9a9150]
call fcn.00402b58
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46cad7
lea eax, [ebp - 8]
push eax
lea edx, [ebp - 0x28]
mov eax, dword [ebp - 4]
call fcn.00453b9c
lea ecx, [ebp - 0x28]
mov edx, 0x46cce8
mov eax, 0x46ccf8
call fcn.0046bbb0
mov edx, dword [ebp - 8]
mov eax, 0x46cd0c
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, 0x46ccdc
call fcn.0046c798
mov eax, dword [0x47ce9c]
push dword [eax]
push 0x46ccbc
push dword [ebp - 8]
push 0x46cd18
lea eax, [ebp - 0x14]
mov edx, 4
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004087dc
test al, al
je 0x46cbb9
mov eax, dword [0x47ce9c]
push dword [eax]
push 0x46ccbc
push dword [ebp - 8]
push 0x46cd18
lea eax, [ebp - 0x14]
mov edx, 4
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089b8
mov eax, dword [0x47ce9c]
push dword [eax]
push 0x46ccbc
lea edx, [ebp - 0x18]
mov eax, 0x46ccc8
call fcn.00455090
push dword [ebp - 0x18]
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089b8
push dword [ebp - 0x10]
mov eax, dword [0x47ce9c]
push dword [eax]
push 0x46ccbc
lea edx, [ebp - 0x18]
mov eax, 0x46ccc8
call fcn.00455090
push dword [ebp - 0x18]
lea eax, [ebp - 0x14]
mov edx, 4
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.004089b8
xor eax, eax
push ebp
push 0x46cc51
push dword fs:[eax]
mov dword fs:[eax], esp
mov ecx, dword [0x47ce9c]
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 0x46cc5b
xor eax, eax
push ebp
push 0x46cc7f
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x47ce9c]
mov eax, dword [eax]
call fcn.00402b58
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46cc89
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x46ccab
lea eax, [ebp - 0x18]
mov edx, 6
call fcn.00403d74
ret