Function at 0x490810
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x838
mov eax, dword [0x5925f0]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x838], ecx
mov eax, dword [ebp - 0x838]
mov dword [eax + 0xc], 0
mov dword [ebp - 8], 1
mov word [ebp - 0x218], 0
push 0x206
push 0
lea ecx, [ebp - 0x216]
push ecx
call fcn.004caa30
add esp, 0xc
push 0x5528b0
lea edx, [ebp - 0x218]
push edx
call fcn.004caa10
add esp, 8
push 0x5528c4
lea eax, [ebp - 0x218]
push eax
call fcn.004ca9e6
add esp, 8
push 0x5528dc
lea ecx, [ebp - 0x218]
push ecx
call fcn.004ca9e6
add esp, 8
mov dword [ebp - 4], 0x5f8c
lea edx, [ebp - 0x218]
push edx
push 1
push 0xf001f
call dword [sym.imp.KERNEL32.dll_OpenFileMappingW]
mov ecx, dword [ebp - 0x838]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x838]
cmp dword [edx + 4], 0
jne 0x490ad0
mov dword [ebp - 8], 0
lea eax, [ebp - 0x218]
push eax
mov ecx, dword [ebp - 4]
push ecx
push 0
push 4
push 0
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov edx, dword [ebp - 0x838]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x838]
cmp dword [eax + 4], 0
jne 0x490ad0
mov word [ebp - 0x628], 0
push 0x206
push 0
lea ecx, [ebp - 0x626]
push ecx
call fcn.004caa30
add esp, 0xc
mov word [ebp - 0x830], 0
push 0x206
push 0
lea edx, [ebp - 0x82e]
push edx
call fcn.004caa30
add esp, 0xc
mov word [ebp - 0x420], 0
push 0x206
push 0
lea eax, [ebp - 0x41e]
push eax
call fcn.004caa30
add esp, 0xc
lea ecx, [ebp - 0x628]
push ecx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push 0x5528ec
push 0x5528fc
push str.gswb
push str.GSInput
lea edx, [ebp - 0x628]
push edx
push str._s_s_s_s_s
lea eax, [ebp - 0x830]
push eax
call fcn.004cb62b
add esp, 0x1c
push str.__gswb__
lea ecx, [ebp - 0x420]
push ecx
call fcn.004caa10
add esp, 8
push str.TEMP__
lea edx, [ebp - 0x420]
push edx
call fcn.004ca9e6
add esp, 8
push str.SOFT_FILE_PATH
lea eax, [ebp - 0x420]
push eax
call fcn.004ca9e6
add esp, 8
push str.3.0.1.0512
lea ecx, [ebp - 0x420]
push ecx
call fcn.004ca9e6
add esp, 8
push str.008.001
lea edx, [ebp - 0x420]
push edx
call fcn.004ca9e6
add esp, 8
mov eax, dword [ebp - 0x838]
mov dword [eax + 0xc], 1
lea ecx, [ebp - 0x420]
push ecx
push 1
push 0xf001f
call dword [sym.imp.KERNEL32.dll_OpenFileMappingW]
mov edx, dword [ebp - 0x838]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x838]
cmp dword [eax + 4], 0
jne 0x490ad0
lea ecx, [ebp - 0x420]
push ecx
push 1
push 6
call dword [sym.imp.KERNEL32.dll_OpenFileMappingW]
mov edx, dword [ebp - 0x838]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x838]
cmp dword [eax + 4], 0
jne 0x490ad0
push 0
push 0x80
push 4
push 0
push 3
push 0x10000000
lea ecx, [ebp - 0x830]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x834], eax
cmp dword [ebp - 0x834], 0xffffffff
jne 0x490a9c
xor eax, eax
jmp 0x490b5e
lea edx, [ebp - 0x420]
push edx
mov eax, dword [ebp - 4]
push eax
push 0
push 4
push 0
mov ecx, dword [ebp - 0x834]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov edx, dword [ebp - 0x838]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x834]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 0x838]
cmp dword [ecx + 4], 0
jne 0x490ae0
xor eax, eax
jmp 0x490b5e
push 0
push 0
push 0
push 0xf001f
mov edx, dword [ebp - 0x838]
mov eax, dword [edx + 4]
push eax
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov ecx, dword [ebp - 0x838]
mov dword [ecx + 8], eax
mov edx, dword [ebp - 0x838]
cmp dword [edx + 8], 0
je 0x490b3f
mov eax, dword [ebp - 0x838]
mov ecx, dword [ebp - 0x838]
mov edx, dword [ecx + 8]
mov dword [eax + 0x10], edx
cmp dword [ebp - 8], 0
jne 0x490b36
mov eax, dword [ebp - 0x838]
mov ecx, dword [eax + 0x10]
call fcn.0048cbd0
mov eax, 1
jmp 0x490b5e
mov ecx, dword [ebp - 0x838]
mov edx, dword [ecx + 4]
push edx
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov eax, dword [ebp - 0x838]
mov dword [eax + 4], 0
xor eax, eax
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.004ca9d7
mov esp, ebp
pop ebp
ret