Function at 0x4c56d0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x62e7df
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.004c5640
push 0
call fcn.005d7d18
add esp, 4
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
add eax, esi
push eax
call fcn.004e2160
call fcn.004e2100
push eax
call fcn.005df9e7
push 1
call fcn.004e0ac0
add esp, 0xc
lea ecx, [ebp - 0x64]
call fcn.004c3750
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.0058cfcf
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 [0x6824bc]
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 [0x6824a4]
mov dword [edx + 8], eax
mov ax, word [0x6824a8]
mov word [edx + 0xc], ax
mov al, byte [0x6824aa]
mov byte [edx + 0xe], al
mov byte [edx + 0xf], 0
mov byte [ebp - 4], 0
call fcn.004c3850
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.0058cfcf
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 [0x6824f4]
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.0058cfcf
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.004c3850
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.0058cfcf
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 [0x68252c]
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.0058cfcf
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 [0x682518]
mov byte [eax + 0x10], dl
mov byte [eax + 0x11], 0
mov byte [ebp - 4], 0
call fcn.004c3850
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.0058cfcf
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 [0x682564]
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.0058cfcf
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.004c3850
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.0058cfcf
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 [0x68259c]
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.0058cfcf
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.004c3850
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.0058cfcf
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 [0x6825d4]
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.0058cfcf
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.004c3850
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.0058cfcf
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 [0x68260c]
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.0058cfcf
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.004c3850
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.0058cfcf
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 [0x682644]
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.0058cfcf
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.004c3850
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.004c3850
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.004c3850
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 [0x6826c8]
movq qword [edx], xmm0
mov eax, dword [0x6826d0]
mov dword [edx + 8], eax
mov byte [edx + 0xc], 0
mov byte [ebp - 4], 0
call fcn.004c3850
mov ecx, dword [0x74f6fc]
call fcn.004c3810
test al, al
jne 0x4c5de8
push 0x10
mov edx, str.APP_NAME
mov ecx, 1
call fcn.004c4390
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.004c37b0
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.0058cfb3
mov esp, ebp
pop ebp
ret
push 0
push str.perf_game_update.txt
call fcn.005e0888
add esp, 8
test eax, eax
jne 0x4c5e06
push str.perf_game_update.txt
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0
push str.newpatch.exe
call fcn.005e0888
add esp, 8
test eax, eax
jne 0x4c5e28
push str.patchupdater.exe
call fcn.005e20f1
add esp, 4
jmp 0x4c5dbe
call dword [sym.imp.DevIL.dll_ilInit]
call fcn.004c6370
test eax, eax
je 0x4c5dbe
push 0
call fcn.004e0a70
mov eax, dword fs:[0x2c]
add esp, 4
mov esi, dword [eax]
mov eax, dword [0x7519b4]
cmp eax, dword [esi + 0x20]
jg 0x4c5f5a
mov eax, dword [0x7519c0]
cmp eax, dword [esi + 0x20]
jg 0x4c5fa2
call fcn.004c43a0
test al, al
jne 0x4c5e8a
push 0
push 0
push str.Pack_Initialization_failed._Check_log.txt_file..
call fcn.004e08f0
add esp, 0xc
jmp 0x4c5dbe
call fcn.0044c160
test al, al
je 0x4c5ea1
call fcn.00456360
push eax
call fcn.0050b140
add esp, 4
push 0x2a830
call fcn.0058cfcf
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.004f9b10
lea ecx, [ebp - 0x54]
mov byte [ebp - 0x35], 0
call fcn.00582af0
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.005834c0
add esp, 4
lea ecx, [ebp - 0x54]
push str.eter.python
call fcn.00582bb0
test al, al
je 0x4c5f13
mov edx, dword [ebp - 0x48]
lea ecx, [ebp - 0x54]
call fcn.004c4a40
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.00582b20
mov ecx, esi
call fcn.0045cba0
test esi, esi
je 0x4c5dc2
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax]
jmp 0x4c5dc2
push 0x7519b4
call fcn.0058d310
add esp, 4
cmp dword [0x7519b4], 0xffffffff
jne 0x4c5e5a
mov ecx, 0x7519b8
mov byte [ebp - 4], 0xc
call fcn.004e2170
push 0x63c520
call fcn.0058d27f
push 0x7519b4
mov byte [ebp - 4], 0
call fcn.0058d2bf
add esp, 8
jmp 0x4c5e5a
push 0x7519c0
call fcn.0058d310
add esp, 4
cmp dword [0x7519c0], 0xffffffff
jne 0x4c5e6b
mov ecx, 0x7519c8
mov byte [ebp - 4], 0xd
call fcn.00515770
push 0x63c510
call fcn.0058d27f
push 0x7519c0
mov byte [ebp - 4], 0
call fcn.0058d2bf
add esp, 8
jmp 0x4c5e6b