Function at 0x405dd2
Capabilities:
Create directory
Delete file
Get common file path
Read .ini file

Disassembly:
mov eax, 0x1184
call fcn.00415410
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x1180], eax
xor eax, eax
push 0x98
push eax
mov word [esp + 0xc], ax
lea eax, [esp + 0xe]
push eax
call fcn.00407000
add esp, 0xc
lea eax, [esp + 4]
push 0x422a80
push 0x4d
push eax
push 0x41c59c
push str.Temp
push str.SYSFILES
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x405f6b
push ebp
mov ebp, dword [sym.imp.KERNEL32.dll_lstrlenW]
lea eax, [esp + 8]
push eax
call ebp
cmp eax, 0x14
jl 0x405f6a
push ebx
push esi
push edi
lea eax, [esp + 0x14]
push eax
call ebp
mov ecx, 0x237
lea edi, [esp + 0x8b0]
mov esi, str.YNGLUREYNGLIUERYTMLG4S7GY6JK7Y5KG6MY5O86GYJ5IYH6J8YH58YTE4756J8475YKGMJYD69L45Y6GJODY5OM7JY6D8OT47YN5TO8DHM5JVYSDO7G5YOS7DH6Y5H8OY76EJIO8FY56DO4YJ5T6I7Y5JGDHY54KID6GY7KD57Y6J8G5486G5Y68E4JG567GEG4MNV568YDHG5DYJ5GY6D785JYMG6D78YG5J76YDO875MJVYH6N8DO75Y687JDYH5HG6D8OJ7H6BY5T78ODOYG587JH6DO8J45VY6ODJ785Y46MJODYO4578YG546HD476YG8OJ75Y687V5E4S34S32432Q345FWQ3524W521W1W6451561517IY187YM1O8YN1O98YN178Y3OM871YN38O1YMON37Y1ON73YI1UYM3NUIYN13LMUYH1NL8I3YM1YN3781YM3NY1N9731M178Y3M87Y1M38Y18Y37M81Y3N1N783Y1MY3M71Y7YFRDG61B16541T5RT16G51FED1FE1FC1Z1ZC1CX11ZVX14VX1XG14EX154EX15D145G1D6514D1G654DF1G6541D541DD7J81Y891JY891YK198Y189Y1F9Y7J97Y1891YJ917R198YRJY718Y1MKJY1OJY11YM1YMYNO91YMRYO17Y1OMD1Y1DKOM1YDN78NDY1O8NDJ7O81YJY1E71YHJ7RY17Y1R7YT7YTNH7YTHN7T771NT71Y745JY837YG4M5N3Y48T5JY34YM58FYV3N478563874YNG6873YJH4683G4J76YJ3G8Y7645873YG874Y6G83468G38746G346G37HJ78J7Y7J8YJ7GY475Y6HG8J4Y76Y4J567Y4857JYHF648IY5JI78YH4IG5J487IG5768IY5JI786IFY78Y4IIIIIIIII5GIJ8G7Y5H8IH7Y456YE6Y5J8EY54786YE8I745G6E45G4E56GE4JHSRSHTEF4EF34527JTG98534YTM2J7Y5T8J73Y45T3EK47C54T327AG75Y3N74Y568IJY3687IY38YJ6TJI738Y4I687Y3546EC5T78M37KXRGYH5783JG65Y3986YJTG837Y6
mov ebx, eax
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x8b0]
movsw word es:[edi], word [esi]
call fcn.00404865
lea eax, [esp + ebx*2 - 4]
push eax
lea eax, [esp + 0x8b4]
push eax
call dword [sym.imp.SHLWAPI.dll_StrStrW]
test eax, eax
jne 0x405ea5
mov esi, str.rvsmr
xor edx, edx
mov ecx, esi
call fcn.00401d66
test eax, eax
jne 0x405f67
mov ecx, esi
jmp 0x405f5d
lea eax, [esp + 0x14]
push eax
call ebp
xor ecx, ecx
mov word [esp + eax*2 - 4], cx
lea eax, [esp + 0x14]
push eax
call ebp
lea esi, [esp + eax*2 + 0xe]
mov ecx, esi
call fcn.00404865
push esi
call fcn.00408b93
pop ecx
test eax, eax
je 0x405ede
cmp eax, 0x6f
je 0x405ede
cmp eax, 0x71
je 0x405ede
xor eax, eax
jmp 0x405ee1
xor eax, eax
inc eax
test eax, eax
jne 0x405f58
lea eax, [esp + 0x10]
push eax
push 0x1a
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderLocation]
mov esi, dword [sym.imp.SHLWAPI.dll_StrCatW]
test eax, eax
jne 0x405f2f
lea eax, [esp + 0xb0]
push eax
push dword [esp + 0x14]
call dword [sym.imp.SHELL32.dll_SHGetPathFromIDListW]
push str.Godlike
lea eax, [esp + 0xb4]
push eax
call esi
push 0
lea eax, [esp + 0xb4]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
push str._rvsmr.dll
lea eax, [esp + 0xb4]
push eax
call esi
lea eax, [esp + 0xb0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov edx, 0x41c60c
mov ecx, str.rvsmr
jmp 0x405f62
mov ecx, str.rvsmr
mov edx, 0x41c620
call fcn.00401e04
pop edi
pop esi
pop ebx
pop ebp
mov ecx, dword [esp + 0x1180]
xor ecx, esp
call fcn.004060ae
add esp, 0x1184
ret