Function at 0x41edc0
Capabilities:
Create directory
Move file

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x320
mov eax, dword [0x62bcc0]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
xor ecx, ecx
call fcn.0040ce20
mov ecx, 0x635978
call fcn.0041ecc0
cmp byte [0x635978], 0
jne 0x41f0c7
push 0x617564
push 0x104
push 0x635978
call fcn.005048a9
add esp, 0xc
lea eax, [ebp - 0x110]
push 0x617564
push 0x911734
push str._sProfile__s
push 0x104
push eax
call fcn.00407c20
add esp, 0x14
lea eax, [ebp - 0x110]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push str.Options0
push 0x911734
push str._s_s.dcf
lea eax, [ebp - 0x218]
push 0x104
push eax
call fcn.00407c20
add esp, 0x14
lea eax, [ebp - 0x110]
push str.Options0
push 0x617564
push 0x911734
push str._sProfile__s_s.dcf
push 0x104
push eax
call fcn.00407c20
mov esi, dword [sym.imp.KERNEL32.dll_MoveFileA]
lea eax, [ebp - 0x110]
add esp, 0x18
push eax
lea eax, [ebp - 0x218]
push eax
call esi
push str.Options1
push 0x911734
push str._s_s.dcf
lea eax, [ebp - 0x218]
push 0x104
push eax
call fcn.00407c20
add esp, 0x14
lea eax, [ebp - 0x110]
push str.Options1
push 0x617564
push 0x911734
push str._sProfile__s_s.dcf
push 0x104
push eax
call fcn.00407c20
add esp, 0x18
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x218]
push eax
call esi
push str.EarthView.bmp
push 0x911734
push str._s_s
lea eax, [ebp - 0x218]
push 0x104
push eax
call fcn.00407c20
add esp, 0x14
lea eax, [ebp - 0x110]
push str.EarthView.bmp
push 0x617564
push 0x911734
push str._sProfile__s_s
push 0x104
push eax
call fcn.00407c20
add esp, 0x18
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x218]
push eax
call esi
push str.EVScrsvr.bmp
push 0x911734
push str._s_s
lea eax, [ebp - 0x218]
push 0x104
push eax
call fcn.00407c20
add esp, 0x14
lea eax, [ebp - 0x110]
push str.EVScrsvr.bmp
push 0x617564
push 0x911734
push str._sProfile__s_s
push 0x104
push eax
call fcn.00407c20
add esp, 0x18
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x218]
push eax
call esi
push str.EVMapPrv.bmp
push 0x911734
push str._s_s
lea eax, [ebp - 0x218]
push 0x104
push eax
call fcn.00407c20
add esp, 0x14
lea eax, [ebp - 0x110]
push str.EVMapPrv.bmp
push 0x617564
push 0x911734
push str._sProfile__s_s
push 0x104
push eax
call fcn.00407c20
add esp, 0x18
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x218]
push eax
call esi
push str.EVScrPrv.bmp
push 0x911734
push str._s_s
lea eax, [ebp - 0x218]
push 0x104
push eax
call fcn.00407c20
add esp, 0x14
lea eax, [ebp - 0x110]
push str.EVScrPrv.bmp
push 0x617564
push 0x911734
push str._sProfile__s_s
push 0x104
push eax
call fcn.00407c20
add esp, 0x18
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x218]
push eax
call esi
push str.Settings
push 0x617564
push str.Profile__s_s
lea eax, [ebp - 0x110]
push 0x104
push eax
call fcn.00407c20
add esp, 0x14
lea eax, [ebp - 0x320]
push 0
push eax
push 0xffffffffffffffff
lea eax, [ebp - 0x110]
push eax
call fcn.0042d780
lea eax, [ebp - 0x320]
push eax
push 0x91f0b0
push 1
call fcn.0040d460
add esp, 0x1c
mov al, byte [0x635516]
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
cmp al, 1
jne 0x41f104
push 0x4c
call esi
push 0x4d
mov dword [0x91f0a0], eax
call esi
push 0x4e
mov dword [0x91f0a4], eax
call esi
push 0x4f
mov dword [0x917098], eax
call esi
mov ecx, eax
mov al, byte [0x635516]
mov dword [0x917090], ecx
jmp 0x41f10a
mov ecx, dword [0x917090]
test al, al
je 0x41f11b
cmp dword [0x917098], 0
je 0x41f11b
test ecx, ecx
jne 0x41f141
push 0
mov dword [0x91f0a0], 0
mov dword [0x91f0a4], 0
call esi
push 1
mov dword [0x917098], eax
call esi
mov dword [0x917090], eax
call fcn.0041e7b0
movaps xmm2, xmmword [0x6183c0]
mov edi, 0x90e358
mov esi, str.Around_the_Equator
nop word [eax + eax]
lea eax, [edi + 0x28]
mov ecx, 8
nop dword [eax + eax]
movsd xmm1, qword [eax - 0x20]
lea eax, [eax + 0x80]
movhpd xmm1, qword [eax - 0x80]
mulpd xmm1, xmm2
movlpd qword [eax - 0xa0], xmm1
movhpd qword [eax - 0x80], xmm1
movsd xmm1, qword [eax - 0xa8]
movhpd xmm1, qword [eax - 0x88]
mulpd xmm1, xmm2
movlpd qword [eax - 0xa8], xmm1
movhpd qword [eax - 0x88], xmm1
movsd xmm1, qword [eax - 0x60]
movhpd xmm1, qword [eax - 0x40]
mulpd xmm1, xmm2
movlpd qword [eax - 0x60], xmm1
movhpd qword [eax - 0x40], xmm1
movsd xmm1, qword [eax - 0x68]
movhpd xmm1, qword [eax - 0x48]
mulpd xmm1, xmm2
movlpd qword [eax - 0x68], xmm1
movhpd qword [eax - 0x48], xmm1
sub ecx, 1
jne 0x41f170
push 0x617468
push esi
push 0x911734
push str._s_s._s
push edi
push 1
call fcn.0040f0a0
movaps xmm2, xmmword [0x6183c0]
add esi, 0x20
add esp, 0x18
add edi, 0x400
cmp esi, 0x90e340
jl 0x41f160
push ecx
push 0x636be8
mov ecx, 0x920c54
mov dword [0x91f0a8], 0
mov dword [0x920c54], 0
call fcn.004273c0
push ecx
push 0x729290
mov ecx, 0x920c68
mov dword [0x920c68], 0
call fcn.004273c0
mov esi, dword [0x920c58]
lea eax, [ebp - 0x320]
push 0x6167a4
push esi
push 0x911ff9
push str._s_s._s
push 0x104
push eax
call fcn.00407c20
push 0
mov edx, esi
lea ecx, [ebp - 0x320]
call fcn.00428590
mov esi, dword [0x920c6c]
lea eax, [ebp - 0x320]
add esp, 0x1c
push 0x6167a4
push esi
push 0x911ff9
push str._s_s._s
push 0x104
push eax
call fcn.00407c20
push 0
mov edx, esi
lea ecx, [ebp - 0x320]
call fcn.00428590
add esp, 0x1c
mov edx, 0x635978
xor ecx, ecx
call fcn.0041ea20
push 0
xor eax, eax
mov ecx, 0x911000
cmp byte [0x635508], al
push 0
push 1
push 0
setne al
push eax
call fcn.0043db00
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
xor ecx, ebp
pop esi
call fcn.004ff23c
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret