Function at 0x582750
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5dd0bb
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x224cc
call fcn.005c0740
mov eax, dword [0x6c2da0]
xor eax, esp
mov dword [esp + 0x224c8], eax
push ebx
push esi
push edi
mov eax, dword [0x6c2da0]
xor eax, esp
push eax
lea eax, [esp + 0x224e0]
mov dword fs:[0], eax
push 0x7d4400
push str.0.1.8
push str.Starting_updater__v:_s__cmd:_s_n
call fcn.00596740
add esp, 0xc
lea ecx, [esp + 0x2c]
call fcn.00584800
mov dword [esp + 0x224e8], 0
lea ecx, [esp + 0x2c]
cmp byte [0x878387], 0
je 0x5827d7
call fcn.00583560
jmp 0x582c94
call fcn.00587fd0
mov ecx, dword [0x878840]
mov dword [0x6c65b4], 0x878e48
mov dword [0x6c65b0], 0x878e48
test ecx, ecx
je 0x582808
mov eax, dword [ecx]
push 2
push dword [0x7d43f0]
push ecx
call dword [eax + 0x28]
call fcn.00596b50
mov ebx, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call fcn.00596190
call fcn.00596b50
mov eax, dword [0x8787a8]
mov dword [0x8787b0], 0
mov dword [0x8787ac], eax
call fcn.005800e0
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [0x7d2da4]
push 0
push 1
call fcn.0059d4c0
mov ecx, dword [0x7d2da4]
call fcn.0059d300
mov ecx, dword [0x7d2da4]
push 0x802
call fcn.0059c940
push 0xffffffffffffffff
push 0
call fcn.00596a30
add esp, 8
mov dword [esp + 0x24], 0xff404040
lea eax, [esp + 0x24]
push 0
push 0
push eax
mov eax, dword [0x7d2da4]
sub esp, 0x10
movss xmm0, dword [eax + 0x4a0]
movss dword [esp + 0xc], xmm0
movss xmm0, dword [eax + 0x49c]
movss dword [esp + 8], xmm0
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.005a43d0
mov eax, dword [esp + 0x20dcc]
add esp, 0x1c
cmp eax, 5
ja case.default.0x5828d0
jmp dword [eax*4 + 0x582ccc]
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0xffffffff
push eax
mov eax, dword [0x7d2da4]
xorps xmm2, xmm2
push ecx
mov ecx, dword [0x878838]
xorps xmm1, xmm1
movss xmm0, dword [eax + 0x4a0]
movss xmm3, dword [eax + 0x49c]
movss dword [esp], xmm0
call fcn.00584220
lea ecx, [esp + 0x2c]
call fcn.00581560
jmp 0x582b3b
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 0xffffffff
push eax
mov eax, dword [0x7d2da4]
xorps xmm2, xmm2
push ecx
mov ecx, dword [0x878830]
xorps xmm1, xmm1
movss xmm0, dword [eax + 0x4a0]
movss xmm3, dword [eax + 0x49c]
movss dword [esp], xmm0
call fcn.00584220
lea ecx, [esp + 0x2c]
call fcn.00581290
jmp 0x582b3b
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0xffffffff
push eax
mov eax, dword [0x7d2da4]
xorps xmm2, xmm2
push ecx
mov ecx, dword [0x87882c]
xorps xmm1, xmm1
movss xmm0, dword [eax + 0x4a0]
movss xmm3, dword [eax + 0x49c]
movss dword [esp], xmm0
call fcn.00584220
lea ecx, [esp + 0x2c]
call fcn.00580d30
jmp 0x582b3b
lea eax, [esp + 0x10]
mov dword [esp + 0x10], 0xffffffff
push eax
mov eax, dword [0x7d2da4]
xorps xmm2, xmm2
push ecx
mov ecx, dword [0x8787ec]
xorps xmm1, xmm1
movss xmm0, dword [eax + 0x4a0]
movss xmm3, dword [eax + 0x49c]
movss dword [esp], xmm0
call fcn.00584220
lea ecx, [esp + 0x2c]
call fcn.00581000
jmp 0x582b3b
lea eax, [esp + 0x14]
mov dword [esp + 0x14], 0xffffffff
push eax
mov eax, dword [0x7d2da4]
xorps xmm2, xmm2
push ecx
mov ecx, dword [0x878834]
xorps xmm1, xmm1
movss xmm0, dword [eax + 0x4a0]
movss xmm3, dword [eax + 0x49c]
movss dword [esp], xmm0
call fcn.00584220
lea ecx, [esp + 0x2c]
call fcn.00581ac0
lea ecx, [esp + 0x2c]
call fcn.00582090
lea ecx, [esp + 0x2c]
call fcn.00581fd0
jmp 0x582b3b
push 0
push 0x5ee
push str.main.cpp
push str.0___.
call fcn.00596c10
add esp, 0x10
mov edi, dword [0x878828]
mov esi, dword [0x7d2da4]
mov dword [esp + 0x1c], 0xffffffff
mov ebx, dword [edi + 8]
test ebx, ebx
je 0x582b35
push 0x3c
lea eax, [esp + 0x21c9c]
push 0
push eax
call fcn.005bf5d0
movss xmm0, dword [edi]
lea eax, [esp + 0x21ca0]
add esp, 0xc
movss dword [esp + 0x21c9c], xmm0
movss dword [esp + 0x21ca4], xmm0
movss xmm0, dword [edi + 4]
movss dword [esp + 0x21ca8], xmm0
push eax
push ebx
lea eax, [esp + 0x24]
movss dword [esp + 0x21cb8], xmm0
movss xmm0, dword [esi + 0x4a0]
push eax
sub esp, 0x10
mov dword [esp + 0x21cb0], 0
mov dword [esp + 0x21cb4], 0
mov dword [esp + 0x21cbc], 0
mov dword [esp + 0x21cc8], 0
movss dword [esp + 0xc], xmm0
movss xmm0, dword [esi + 0x49c]
movss dword [esp + 8], xmm0
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.005a43d0
add esp, 0x1c
mov ebx, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea ecx, [esp + 0x2c]
call fcn.00580920
call fcn.00580c00
mov ecx, dword [0x7d2da4]
call fcn.0059aa90
mov ecx, dword [0x7d2da4]
push 1
call fcn.0059ac80
cmp byte [0x7d435c], 0
jne 0x582bb1
push 0
push dword [0x87883c]
call ebx
test eax, eax
jne 0x582b86
push 1
push dword [0x7d43f0]
call dword [sym.imp.USER32.dll_SwitchToThisWindow]
push 0
call dword [sym.imp.USER32.dll_ClipCursor]
cmp byte [0x878386], 0
jne 0x582bba
mov eax, dword [esp + 0x20db4]
test eax, eax
je 0x582813
cmp eax, 1
je 0x582813
jmp 0x582bba
lea ecx, [esp + 0x2c]
call fcn.00588070
lea ecx, [esp + 0x2c]
call fcn.005880f0
mov ecx, dword [0x878840]
test ecx, ecx
je 0x582bdb
mov eax, dword [ecx]
push 0
push dword [0x7d43f0]
push ecx
call dword [eax + 0x28]
mov eax, dword [esp + 0x20db4]
dec eax
je 0x582c40
dec eax
je 0x582c06
dec eax
je 0x582c49
push 0
push 0x63a
push str.main.cpp
push str.0___.
call fcn.00596c10
add esp, 0x10
jmp 0x582c49
lea eax, [esp + 0x211b9]
push eax
lea eax, [esp + 0x21cd8]
push str.There_was_a_problem_updating_the_game_n_s_n_nPlease_retry_later
push eax
call fcn.00582f10
add esp, 0xc
lea eax, [esp + 0x211b9]
push 0x10
push str.Error
push eax
push dword [0x7d43f0]
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x582c49
lea ecx, [esp + 0x2c]
call fcn.00582260
mov eax, dword [0x879128]
test eax, eax
je 0x582c85
push 0x2710
push eax
call ebx
cmp eax, 0x102
jne 0x582c6f
push 0
push dword [0x879128]
call dword [sym.imp.KERNEL32.dll_TerminateThread]
push dword [0x879128]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [0x879128], 0
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
lea ecx, [esp + 0x2c]
mov dword [esp + 0x224e8], 0xffffffff
call fcn.00584c10
mov ecx, dword [esp + 0x224e0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x224c8]
xor ecx, esp
call fcn.005bb4c3
mov esp, ebp
pop ebp
ret