Function at 0x477fd0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x58ec3e
push eax
mov eax, 0x1c54
mov dword fs:[0], esp
call fcn.0047b4d0
push esi
push 0
call fcn.0047adc0
add esp, 4
mov esi, eax
call dword [sym.imp.kernel32.dll_GetCurrentProcess]
add esi, eax
push esi
call fcn.004b0cf0
push esi
call fcn.0047ad3b
push 1
call fcn.004afec0
push str.locale.cfg
call fcn.004771c0
call fcn.00477280
push eax
call fcn.004d4c20
push 0
push str.perf_game_update.txt
call fcn.0047a86e
mov esi, dword [sym.imp.kernel32.dll_DeleteFileA]
add esp, 0x1c
test eax, eax
jne 0x47804f
push str.perf_game_update.txt
call esi
call fcn.004772d0
test al, al
push 0
je 0x478143
push str.mark
call fcn.0047a86e
add esp, 8
test eax, eax
je 0x47807c
push str.mark
call fcn.0047b82a
add esp, 4
push 0
push str.patch.bin
call fcn.0047a86e
add esp, 8
test eax, eax
jne 0x4780b2
push 0x3e8
call dword [sym.imp.kernel32.dll_Sleep]
push str.patch.bin
call esi
test eax, eax
jne 0x4780b2
push str.Failed_to_delete_patch.bin
call fcn.004b01a0
add esp, 4
push edi
call dword [sym.imp.devil.dll_ilInit]
mov edi, dword [ebp + 0xc]
push edi
call fcn.00477460
add esp, 4
test eax, eax
je 0x478131
push 0
call fcn.004aff80
add esp, 4
lea ecx, [ebp - 0x20]
call fcn.004b26b0
lea ecx, [ebp - 0x1c60]
mov dword [ebp - 4], 0
call fcn.004e6b70
push str.Pack
mov byte [ebp - 4], 1
call fcn.00477660
add esp, 4
test al, al
jne 0x478176
push 0
push 0
push str.Pack_Initialization_failed._Check_log.txt_file..
call fcn.004b0280
add esp, 0xc
lea ecx, [ebp - 0x1c60]
mov byte [ebp - 4], 0
call fcn.004e6a70
lea ecx, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
call fcn.004b2750
pop edi
xor al, al
pop esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
push str.newpatch.exe
call fcn.0047a86e
add esp, 8
test eax, eax
jne 0x4780b2
push str.patchupdater.exe
call fcn.0047b788
add esp, 4
xor al, al
pop esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
push 0x18270
call fcn.00479702
add esp, 4
mov dword [ebp - 0x24], eax
test eax, eax
mov byte [ebp - 4], 2
je 0x478199
mov ecx, eax
call fcn.0046dd00
mov esi, eax
jmp 0x47819b
xor esi, esi
mov eax, dword [ebp + 8]
push ebx
push eax
mov ecx, esi
mov byte [ebp - 4], 1
call fcn.004d7780
call fcn.00401000
lea ecx, [ebp - 0x18]
xor bl, bl
call fcn.0053cb20
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 3
call fcn.0040fb50
lea ecx, [ebp - 0x50]
push ecx
mov byte [ebp - 4], 4
call fcn.0053d270
add esp, 4
push str.eter.python
lea ecx, [ebp - 0x18]
call fcn.0053cd50
test al, al
je 0x4781f6
lea edx, [ebp - 0x18]
push edi
push edx
call fcn.00477b70
add esp, 8
mov bl, al
call fcn.0046b8d0
mov ecx, esi
call fcn.0046bd60
push 1
call dword [sym.imp.winmm.dll_timeEndPeriod]
lea ecx, [ebp - 0x18]
call sub.python22.dll_Py_Finalize
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 3
call fcn.0040fac0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 1
call fcn.0053cb40
mov ecx, esi
call fcn.0046d420
test esi, esi
je 0x47823d
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
lea ecx, [ebp - 0x1c60]
mov byte [ebp - 4], 0
call fcn.004e6a70
lea ecx, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
call fcn.004b2750
mov ecx, dword [ebp - 0xc]
mov al, bl
pop ebx
pop edi
pop esi
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret