Function at 0x4c57a0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x62e86f
mov eax, dword fs:[0]
push eax
sub esp, 0x58
mov eax, dword [0x6c5580]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x44], ecx
call fcn.004c5710
push 0
call fcn.005d7da8
add esp, 4
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
add eax, esi
push eax
call fcn.004e2230
call fcn.004e21d0
push eax
call fcn.005dfa77
push 1
call fcn.004e0b90
add esp, 0xc
lea ecx, [ebp - 0x64]
call fcn.004c3820
sub esp, 0x18
mov dword [ebp - 4], 0
mov edi, dword [0x74f6fc]
mov esi, esp
xorps xmm0, xmm0
mov dword [ebp - 0x40], esp
push 0x30
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
mov dword [esi + 0x10], 0x20
mov dword [esi + 0x14], 0x2f
movups xmm0, xmmword [str.6400e224b8b44ece59a992e6d8233719]
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x682504]
movups xmmword [eax + 0x10], xmm0
mov byte [eax + 0x20], 0
mov byte [ebp - 4], 1
sub esp, 0x14
mov edx, esp
xorps xmm0, xmm0
mov ecx, edi
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0xf
mov dword [edx + 0x14], 0xf
movq xmm0, qword [str.miles_mss32.dll]
movq qword [edx], xmm0
mov eax, dword [0x682568]
mov dword [edx + 8], eax
mov ax, word [0x68256c]
mov word [edx + 0xc], ax
mov al, byte [0x68256e]
mov byte [edx + 0xe], al
mov byte [edx + 0xf], 0
mov byte [ebp - 4], 0
call fcn.004c3920
mov edi, dword [0x74f6fc]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x40], esp
xorps xmm0, xmm0
push 0x30
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
mov dword [esi + 0x10], 0x20
mov dword [esi + 0x14], 0x2f
movups xmm0, xmmword [str.e089ce52b0617a6530069f22e0bdba2a]
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x68254c]
movups xmmword [eax + 0x10], xmm0
mov byte [eax + 0x20], 0
sub esp, 0x14
mov byte [ebp - 4], 2
mov esi, esp
xorps xmm0, xmm0
movups xmmword [esi], xmm0
push 0x20
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
add esp, 4
mov dword [esi + 0x10], 0x10
mov ecx, edi
mov dword [esi + 0x14], 0x1f
movups xmm0, xmmword [str.miles_mssa3d.m3d]
movups xmmword [eax], xmm0
mov byte [eax + 0x10], 0
mov byte [ebp - 4], 0
call fcn.004c3920
mov edi, dword [0x74f6fc]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x3c], esp
xorps xmm0, xmm0
push 0x30
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
mov dword [esi + 0x10], 0x20
mov dword [esi + 0x14], 0x2f
movups xmm0, xmmword [str.85267776d45dbf5475c7d9882f08117c]
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x682580]
movups xmmword [eax + 0x10], xmm0
mov byte [eax + 0x20], 0
sub esp, 0x14
mov byte [ebp - 4], 3
mov esi, esp
xorps xmm0, xmm0
push 0x20
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
add esp, 4
mov dword [esi + 0x10], 0x11
mov ecx, edi
mov dword [esi + 0x14], 0x1f
movups xmm0, xmmword [str.miles_mssds3d.m3d]
movups xmmword [eax], xmm0
mov dl, byte [0x6825dc]
mov byte [eax + 0x10], dl
mov byte [eax + 0x11], 0
mov byte [ebp - 4], 0
call fcn.004c3920
mov edi, dword [0x74f6fc]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x3c], esp
xorps xmm0, xmm0
push 0x30
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
mov dword [esi + 0x10], 0x20
mov dword [esi + 0x14], 0x2f
movups xmm0, xmmword [str.cb71b1791009eca618e9b1ad4baa4fa9]
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x6825b8]
movups xmmword [eax + 0x10], xmm0
mov byte [eax + 0x20], 0
sub esp, 0x14
mov byte [ebp - 4], 4
mov esi, esp
xorps xmm0, xmm0
push 0x20
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
add esp, 4
mov dword [esi + 0x10], 0x10
mov ecx, edi
mov dword [esi + 0x14], 0x1f
movups xmm0, xmmword [str.miles_mssdsp.flt]
movups xmmword [eax], xmm0
mov byte [eax + 0x10], 0
mov byte [ebp - 4], 0
call fcn.004c3920
mov edi, dword [0x74f6fc]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x3c], esp
xorps xmm0, xmm0
push 0x30
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
mov dword [esi + 0x10], 0x20
mov dword [esi + 0x14], 0x2f
movups xmm0, xmmword [str.2727e2671482a55b2f1f16aa88d2780f]
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x6825f0]
movups xmmword [eax + 0x10], xmm0
mov byte [eax + 0x20], 0
sub esp, 0x14
mov byte [ebp - 4], 5
mov esi, esp
xorps xmm0, xmm0
push 0x20
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
add esp, 4
mov dword [esi + 0x10], 0x10
mov ecx, edi
mov dword [esi + 0x14], 0x1f
movups xmm0, xmmword [str.miles_mssdx7.m3d]
movups xmmword [eax], xmm0
mov byte [eax + 0x10], 0
mov byte [ebp - 4], 0
call fcn.004c3920
mov edi, dword [0x74f6fc]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x3c], esp
xorps xmm0, xmm0
push 0x30
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
mov dword [esi + 0x10], 0x20
mov dword [esi + 0x14], 0x2f
movups xmm0, xmmword [str.788bd950efe89fa5166292bd6729fa62]
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x682628]
movups xmmword [eax + 0x10], xmm0
mov byte [eax + 0x20], 0
sub esp, 0x14
mov byte [ebp - 4], 6
mov esi, esp
xorps xmm0, xmm0
push 0x20
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
add esp, 4
mov dword [esi], eax
mov dword [esi + 0x10], 0x10
mov dword [esi + 0x14], 0x1f
movups xmm0, xmmword [str.miles_msseax.m3d]
mov ecx, edi
movups xmmword [eax], xmm0
mov byte [eax + 0x10], 0
mov byte [ebp - 4], 0
call fcn.004c3920
mov edi, dword [0x74f6fc]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x3c], esp
xorps xmm0, xmm0
push 0x30
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
mov dword [esi + 0x10], 0x20
mov dword [esi + 0x14], 0x2f
movups xmm0, xmmword [str.189576dfe55af3b70db7e3e2312cd0fd]
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x682660]
movups xmmword [eax + 0x10], xmm0
mov byte [eax + 0x20], 0
sub esp, 0x14
mov byte [ebp - 4], 7
mov esi, esp
xorps xmm0, xmm0
push 0x20
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
add esp, 4
mov dword [esi + 0x10], 0x10
mov ecx, edi
mov dword [esi + 0x14], 0x1f
movups xmm0, xmmword [str.miles_mssmp3.asi]
movups xmmword [eax], xmm0
mov byte [eax + 0x10], 0
mov byte [ebp - 4], 0
call fcn.004c3920
mov edi, dword [0x74f6fc]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x3c], esp
xorps xmm0, xmm0
push 0x30
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
mov dword [esi + 0x10], 0x20
mov dword [esi + 0x14], 0x2f
movups xmm0, xmmword [str.7fae15b559eb91f491a5f75cfa103cd4]
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x682698]
movups xmmword [eax + 0x10], xmm0
mov byte [eax + 0x20], 0
sub esp, 0x14
mov byte [ebp - 4], 8
mov esi, esp
xorps xmm0, xmm0
push 0x20
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0058d05f
mov dword [esi], eax
add esp, 4
mov dword [esi + 0x10], 0x10
mov ecx, edi
mov dword [esi + 0x14], 0x1f
movups xmm0, xmmword [str.miles_mssrsx.m3d]
movups xmmword [eax], xmm0
mov byte [eax + 0x10], 0
mov byte [ebp - 4], 0
call fcn.004c3920
mov esi, dword [0x74f6fc]
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3c], esp
xorps xmm0, xmm0
push 0x20
movups xmmword [ecx], xmm0
push str.bdc9ad58ade17dbd939522eee447416f
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0043e890
sub esp, 0x18
mov byte [ebp - 4], 9
mov ecx, esp
xorps xmm0, xmm0
push 0x11
movups xmmword [ecx], xmm0
push str.miles_msssoft.m3d
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0043e890
mov ecx, esi
mov byte [ebp - 4], 0
call fcn.004c3920
mov esi, dword [0x74f6fc]
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3c], esp
xorps xmm0, xmm0
push 0x20
movups xmmword [ecx], xmm0
push str.3d5342edebe722748ace78c930f4d8a5
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0043e890
sub esp, 0x18
mov byte [ebp - 4], 0xa
mov ecx, esp
xorps xmm0, xmm0
push 0x12
movups xmmword [ecx], xmm0
push str.miles_mssvoice.asi
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0043e890
mov ecx, esi
mov byte [ebp - 4], 0
call fcn.004c3920
mov esi, dword [0x74f6fc]
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3c], esp
xorps xmm0, xmm0
push 0x20
movups xmmword [ecx], xmm0
push str.fdc67f415f59af6404cf854c29098eca
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0043e890
mov byte [ebp - 4], 0xb
sub esp, 0x18
mov edx, esp
xorps xmm0, xmm0
mov ecx, esi
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0xc
mov dword [edx + 0x14], 0xf
movq xmm0, qword [0x682774]
movq qword [edx], xmm0
mov eax, dword [0x68277c]
mov dword [edx + 8], eax
mov byte [edx + 0xc], 0
mov byte [ebp - 4], 0
call fcn.004c3920
mov ecx, dword [0x74f6fc]
call fcn.004c38e0
test al, al
jne 0x4c5eb8
push 0x10
mov edx, str.APP_NAME
mov ecx, 1
call fcn.004c4460
push eax
push str.You_cant_launch_the_game..
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov byte [ebp - 0x35], 0
lea ecx, [ebp - 0x64]
call fcn.004c3880
mov al, byte [ebp - 0x35]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0058d043
mov esp, ebp
pop ebp
ret
push 0
push str.perf_game_update.txt
call fcn.005e0918
add esp, 8
test eax, eax
jne 0x4c5ed6
push str.perf_game_update.txt
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0
push str.newpatch.exe
call fcn.005e0918
add esp, 8
test eax, eax
jne 0x4c5ef8
push str.patchupdater.exe
call fcn.005e2181
add esp, 4
jmp 0x4c5e8e
call dword [sym.imp.DevIL.dll_ilInit]
call fcn.004c6440
test eax, eax
je 0x4c5e8e
push 0
call fcn.004e0b40
mov eax, dword fs:[0x2c]
add esp, 4
mov esi, dword [eax]
mov eax, dword [0x7519b4]
cmp eax, dword [esi + 0x20]
jg 0x4c602a
mov eax, dword [0x7519c0]
cmp eax, dword [esi + 0x20]
jg 0x4c6072
call fcn.004c4470
test al, al
jne 0x4c5f5a
push 0
push 0
push str.Pack_Initialization_failed._Check_log.txt_file..
call fcn.004e09c0
add esp, 0xc
jmp 0x4c5e8e
call fcn.0044c160
test al, al
je 0x4c5f71
call fcn.00456360
push eax
call fcn.0050b210
add esp, 4
push 0x2a830
call fcn.0058d05f
add esp, 4
mov dword [ebp - 0x3c], eax
mov ecx, eax
mov byte [ebp - 4], 0xe
call fcn.0045a420
push dword [ebp - 0x44]
mov esi, eax
mov byte [ebp - 4], 0
mov ecx, esi
call fcn.004f9be0
lea ecx, [ebp - 0x54]
mov byte [ebp - 0x35], 0
call fcn.00582b80
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xf
call fcn.00474db0
lea eax, [ebp - 0x34]
mov byte [ebp - 4], 0x10
push eax
call fcn.00583550
add esp, 4
lea ecx, [ebp - 0x54]
push str.eter.python
call fcn.00582c40
test al, al
je 0x4c5fe3
mov edx, dword [ebp - 0x48]
lea ecx, [ebp - 0x54]
call fcn.004c4b10
mov byte [ebp - 0x35], al
mov ecx, esi
call fcn.0045cb90
push 1
call dword [sym.imp.WINMM.dll_timeEndPeriod]
lea ecx, [ebp - 0x54]
call sub.python27.dll_Py_Finalize
lea ecx, [ebp - 0x34]
call fcn.00474e80
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0
call fcn.00582bb0
mov ecx, esi
call fcn.0045cba0
test esi, esi
je 0x4c5e92
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax]
jmp 0x4c5e92
push 0x7519b4
call fcn.0058d3a0
add esp, 4
cmp dword [0x7519b4], 0xffffffff
jne 0x4c5f2a
mov ecx, 0x7519b8
mov byte [ebp - 4], 0xc
call fcn.004e2240
push 0x63c5b0
call fcn.0058d30f
push 0x7519b4
mov byte [ebp - 4], 0
call fcn.0058d34f
add esp, 8
jmp 0x4c5f2a
push 0x7519c0
call fcn.0058d3a0
add esp, 4
cmp dword [0x7519c0], 0xffffffff
jne 0x4c5f3b
mov ecx, 0x7519c8
mov byte [ebp - 4], 0xd
call fcn.00515840
push 0x63c5a0
call fcn.0058d30f
push 0x7519c0
mov byte [ebp - 4], 0
call fcn.0058d34f
add esp, 8
jmp 0x4c5f3b