Function at 0x582a65
Capabilities:
Terminate process
Terminate thread

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5dd64b
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x224f4
call fcn.005c0cd0
mov eax, dword [0x6c2da0]
xor eax, esp
mov dword [esp + 0x224f0], eax
push ebx
push esi
push edi
mov eax, dword [0x6c2da0]
xor eax, esp
push eax
lea eax, [esp + 0x22508]
mov dword fs:[0], eax
push 0x7df600
push str.1.0.0
push str.Starting_updater__v:_s__cmd:_s_n
call fcn.00596cb0
add esp, 0xc
lea ecx, [esp + 0x2c]
call fcn.00584800
mov dword [esp + 0x22510], 0
lea ecx, [esp + 0x2c]
cmp byte [0x883587], 0
je 0x5827d7
call fcn.00583560
jmp 0x582c94
call fcn.00588050
mov ecx, dword [0x883a40]
mov dword [0x6c65b4], 0x884048
mov dword [0x6c65b0], 0x884048
test ecx, ecx
je 0x582808
mov eax, dword [ecx]
push 2
push dword [0x7df5f0]
push ecx
call dword [eax + 0x28]
call fcn.005970c0
mov ebx, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call fcn.00596700
call fcn.005970c0
mov eax, dword [0x8839a8]
mov dword [0x8839b0], 0
mov dword [0x8839ac], eax
call fcn.005800e0
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [0x7ddfa4]
push 0
push 1
call fcn.0059da40
mov ecx, dword [0x7ddfa4]
call fcn.0059d880
mov ecx, dword [0x7ddfa4]
push 0x802
call fcn.0059cec0
push 0xffffffffffffffff
push 0
call fcn.00596fa0
add esp, 8
mov dword [esp + 0x24], 0xff404040
lea eax, [esp + 0x24]
push 0
push 0
push eax
mov eax, dword [0x7ddfa4]
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.005a4990
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 [0x7ddfa4]
xorps xmm2, xmm2
push ecx
mov ecx, dword [0x883a38]
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 [0x7ddfa4]
xorps xmm2, xmm2
push ecx
mov ecx, dword [0x883a30]
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 [0x7ddfa4]
xorps xmm2, xmm2
push ecx
mov ecx, dword [0x883a2c]
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 [0x7ddfa4]
xorps xmm2, xmm2
push ecx
mov ecx, dword [0x8839ec]
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 [0x7ddfa4]
xorps xmm2, xmm2
push ecx
mov ecx, dword [0x883a34]
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 0x5ef
push str.main.cpp
push str.0___.
call fcn.00597180
add esp, 0x10
mov edi, dword [0x883a28]
mov esi, dword [0x7ddfa4]
mov dword [esp + 0x1c], 0xffffffff
mov ebx, dword [edi + 8]
test ebx, ebx
je 0x582b35
push 0x3c
lea eax, [esp + 0x21cc4]
push 0
push eax
call fcn.005bfb60
movss xmm0, dword [edi]
lea eax, [esp + 0x21cc8]
add esp, 0xc
movss dword [esp + 0x21cc4], xmm0
movss dword [esp + 0x21ccc], xmm0
movss xmm0, dword [edi + 4]
movss dword [esp + 0x21cd0], xmm0
push eax
push ebx
lea eax, [esp + 0x24]
movss dword [esp + 0x21ce0], xmm0
movss xmm0, dword [esi + 0x4a0]
push eax
sub esp, 0x10
mov dword [esp + 0x21cd8], 0
mov dword [esp + 0x21cdc], 0
mov dword [esp + 0x21ce4], 0
mov dword [esp + 0x21cf0], 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.005a4990
add esp, 0x1c
mov ebx, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea ecx, [esp + 0x2c]
call fcn.00580920
call fcn.00580c00
mov ecx, dword [0x7ddfa4]
call fcn.0059b010
mov ecx, dword [0x7ddfa4]
push 1
call fcn.0059b200
cmp byte [0x7df55c], 0
jne 0x582bb1
push 0
push dword [0x883a3c]
call ebx
test eax, eax
jne 0x582b86
push 1
push dword [0x7df5f0]
call dword [sym.imp.USER32.dll_SwitchToThisWindow]
push 0
call dword [sym.imp.USER32.dll_ClipCursor]
cmp byte [0x883586], 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.00588110
lea ecx, [esp + 0x2c]
call fcn.00588190
mov ecx, dword [0x883a40]
test ecx, ecx
je 0x582bdb
mov eax, dword [ecx]
push 0
push dword [0x7df5f0]
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 0x63b
push str.main.cpp
push str.0___.
call fcn.00597180
add esp, 0x10
jmp 0x582c49
lea eax, [esp + 0x211b9]
push eax
lea eax, [esp + 0x21d00]
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 [0x7df5f0]
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x582c49
lea ecx, [esp + 0x2c]
call fcn.00582260
mov eax, dword [0x884528]
test eax, eax
je 0x582c85
push 0x2710
push eax
call ebx
cmp eax, 0x102
jne 0x582c6f
push 0
push dword [0x884528]
call dword [sym.imp.KERNEL32.dll_TerminateThread]
push dword [0x884528]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [0x884528], 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 + 0x22510], 0xffffffff
call fcn.00584c80
mov ecx, dword [esp + 0x22508]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x224f0]
xor ecx, esp
call fcn.005bba53
mov esp, ebp
pop ebp
ret