Function at 0x4158a6
Capabilities:
Get common file path
Move file
Print debug messages

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, 0x147c
call fcn.00415876
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
xor ebx, ebx
mov dword [0x484008], ebx
cmp dword [0x484004], ebx
je 0x415c06
push esi
mov esi, 0x20a
push esi
lea eax, [ebp - 0x210]
push ebx
push eax
call sub.msvcrt.dll_memset
push esi
lea eax, [ebp - 0x1064]
push ebx
push eax
call sub.msvcrt.dll_memset
push esi
lea eax, [ebp - 0xc4c]
push ebx
push eax
call sub.msvcrt.dll_memset
push esi
lea eax, [ebp - 0x834]
push ebx
push eax
call sub.msvcrt.dll_memset
push esi
lea eax, [ebp - 0x628]
push ebx
push eax
call sub.msvcrt.dll_memset
push esi
lea eax, [ebp - 0x41c]
push ebx
push eax
call sub.msvcrt.dll_memset
add esp, 0x48
push esi
lea eax, [ebp - 0xa40]
push ebx
push eax
call sub.msvcrt.dll_memset
push esi
lea eax, [ebp - 0xe58]
push ebx
push eax
call sub.msvcrt.dll_memset
push esi
lea eax, [ebp - 0x1270]
push ebx
push eax
call sub.msvcrt.dll_memset
push esi
lea eax, [ebp - 0x147c]
push ebx
push eax
call sub.msvcrt.dll_memset
add esp, 0x30
lea eax, [ebp - 0x210]
push eax
mov esi, 0x104
push esi
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
test eax, eax
je 0x41aac4
lea eax, [ebp - 0x210]
push eax
push esi
lea eax, [ebp - 0x1064]
push eax
call fcn.00408e49
lea eax, [ebp - 0x210]
push eax
push esi
lea eax, [ebp - 0xc4c]
push eax
call fcn.00408e49
lea eax, [ebp - 0x210]
push eax
push esi
lea eax, [ebp - 0x834]
push eax
call fcn.00408e49
lea eax, [ebp - 0x210]
push eax
push esi
lea eax, [ebp - 0x628]
push eax
call fcn.00408e49
lea eax, [ebp - 0x210]
push eax
push esi
lea eax, [ebp - 0x41c]
push eax
call fcn.00408e49
lea eax, [ebp - 0x210]
push eax
push esi
lea eax, [ebp - 0xa40]
push eax
call fcn.00408e49
lea eax, [ebp - 0x210]
push eax
push esi
lea eax, [ebp - 0xe58]
push eax
call fcn.00408e49
lea eax, [ebp - 0x210]
push eax
push esi
lea eax, [ebp - 0x1270]
push eax
call fcn.00408e49
lea eax, [ebp - 0x210]
push eax
push esi
lea eax, [ebp - 0x147c]
push eax
call fcn.00408e49
push 0x415d14
inc esi
push esi
lea eax, [ebp - 0x210]
push eax
call fcn.0040f16c
test eax, eax
jl 0x41aab6
push 0x415cf8
push esi
lea eax, [ebp - 0x1064]
push eax
call fcn.0040f16c
test eax, eax
jl 0x41aab6
push 0x415cdc
push esi
lea eax, [ebp - 0xc4c]
push eax
call fcn.0040f16c
test eax, eax
jl 0x41aab6
push 0x415cc0
push esi
lea eax, [ebp - 0x834]
push eax
call fcn.0040f16c
test eax, eax
jl 0x41aab6
push 0x415ca4
push esi
lea eax, [ebp - 0x628]
push eax
call fcn.0040f16c
test eax, eax
jl 0x41aab6
push 0x415c88
push esi
lea eax, [ebp - 0x41c]
push eax
call fcn.0040f16c
test eax, eax
jl 0x41aab6
push 0x415c6c
push esi
lea eax, [ebp - 0xa40]
push eax
call fcn.0040f16c
test eax, eax
jl 0x41aab6
push 0x415c50
push esi
lea eax, [ebp - 0xe58]
push eax
call fcn.0040f16c
test eax, eax
jl 0x41aab6
push 0x415c34
push esi
lea eax, [ebp - 0x1270]
push eax
call fcn.0040f16c
test eax, eax
jl 0x41aab6
push 0x415c18
push esi
lea eax, [ebp - 0x147c]
push eax
call fcn.0040f16c
test eax, eax
jl 0x41aab6
mov esi, dword [sym.imp.KERNEL32.dll_MoveFileExW]
push edi
xor edi, edi
inc edi
push edi
lea eax, [ebp - 0x147c]
push eax
lea eax, [ebp - 0x1270]
push eax
call esi
push edi
lea eax, [ebp - 0x1270]
push eax
lea eax, [ebp - 0xe58]
push eax
call esi
push edi
lea eax, [ebp - 0xe58]
push eax
lea eax, [ebp - 0xa40]
push eax
call esi
push edi
lea eax, [ebp - 0xa40]
push eax
lea eax, [ebp - 0x41c]
push eax
call esi
push edi
lea eax, [ebp - 0x41c]
push eax
lea eax, [ebp - 0x628]
push eax
call esi
push edi
lea eax, [ebp - 0x628]
push eax
lea eax, [ebp - 0x834]
push eax
call esi
push edi
lea eax, [ebp - 0x834]
push eax
lea eax, [ebp - 0xc4c]
push eax
call esi
push edi
lea eax, [ebp - 0xc4c]
push eax
lea eax, [ebp - 0x1064]
push eax
call esi
push edi
lea eax, [ebp - 0x1064]
push eax
lea eax, [ebp - 0x210]
push eax
call esi
lea eax, [ebp - 0x210]
push 0x415c14
push eax
call dword [sym.imp.msvcrt.dll__wfopen]
pop ecx
pop ecx
mov dword [0x484008], eax
pop edi
cmp eax, ebx
je 0x41aabd
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop ebx
call fcn.00401580
leave
ret
push 0x41ab4c
jmp 0x41aac9
push 0x41ab14
jmp 0x41aac9
push 0x41aad4
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
jmp 0x415c05