Function at 0x582260
Capabilities:
Create process on windows
Create process suspended
Get common file path
Resume thread
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5dd07b
mov eax, dword fs:[0]
push eax
mov eax, 0x25f4
call fcn.005c0740
mov eax, dword [0x6c2da0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
push str.Starting_game_n
call fcn.00596740
inc dword [0x7d2d98]
add esp, 4
push 6
push 0
mov dword [ebp - 4], 0
call dword [sym.imp.ole32.dll_CoInitializeEx]
lea eax, [ebp - 0x25f8]
push eax
lea eax, [ebp - 0x25fc]
push eax
push str.siamexe.exe
call fcn.00597710
add esp, 0xc
test al, al
jne 0x5822e6
push str.failed1_n
call fcn.00596740
add esp, 4
jmp 0x5822ff
push dword [ebp - 0x25f8]
push dword [ebp - 0x25fc]
push str._08x__d_n
call fcn.00596740
add esp, 0xc
lea eax, [ebp - 0x618]
push eax
lea ecx, [esi + 0x215d0]
call fcn.00589510
lea ecx, [ebp - 0x618]
call fcn.005821e0
test al, al
je 0x58234a
push 0xffffffffffffffff
call fcn.005a49a0
add esp, 4
push eax
push 0xffffffffffffffff
call fcn.005a49a0
add esp, 4
push eax
lea eax, [ebp - 0x618]
push str._08X_08X
push eax
call fcn.0057e2c0
add esp, 0x10
lea eax, [ebp - 0x618]
push eax
push 0x7d4400
lea eax, [ebp - 0xe18]
push str._WOUpdatedOk__s__WOLogin___s_
push eax
call fcn.00582f10
add esp, 0x10
cmp dword [esi + 0x21c58], 0
jbe 0x5823bd
lea ecx, [ebp - 0xe18]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x582380
sub ecx, edx
lea eax, [ebp - 0xe18]
add eax, ecx
cmp dword [esi + 0x21c5c], 0x10
mov dword [ebp - 0x2594], eax
lea eax, [esi + 0x21c48]
jb 0x5823a8
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x2594]
push str.__survey___s_
push eax
call fcn.00582f50
add esp, 0xc
jmp 0x582423
mov eax, dword [0x87a19c]
lea edx, [ebp - 0x25f3]
push dword [0x87a198]
mov dword [ebp - 0x25f4], eax
lea ecx, [ebp - 0x25f4]
lea eax, [ebp - 0x25f1]
push eax
lea eax, [ebp - 0x25f2]
push eax
call fcn.00589db0
add esp, 0xc
cmp byte [ebp - 0x25f4], 0
jne 0x5824d4
jmp 0x5824c5
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
push 0
call fcn.005c3f70
jmp 0x58253a
cmp dword [0x878f34], 0
je 0x582565
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x878f34]
cmp eax, 0x493e0
jbe 0x582565
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
push 0
call fcn.005c3f70
jmp 0x5825cb
mov esi, dword [sym.imp.KERNEL32.dll_InitializeProcThreadAttributeList]
lea eax, [ebp - 0x2594]
push eax
push 0
push 1
push 0
mov dword [ebp - 0x2594], 0
call esi
push dword [ebp - 0x2594]
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov edi, eax
lea eax, [ebp - 0x2594]
push eax
push 0
push 1
push edi
call esi
push 0
push 0
push 8
lea eax, [ebp - 0x2590]
mov dword [ebp - 0x2590], 0
push eax
push 0x20007
push 0
push edi
mov dword [ebp - 0x258c], 1
call dword [sym.imp.KERNEL32.dll_UpdateProcThreadAttribute]
push 0x44
lea eax, [ebp - 0x25ec]
push 0
push eax
call fcn.005bf5d0
add esp, 0xc
mov dword [ebp - 0x25f0], 0x48
lea eax, [ebp - 0x218]
mov dword [ebp - 0x25ac], edi
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
lea eax, [ebp - 0xe18]
push eax
push str.siamexe.exe
lea eax, [ebp - 0x218]
push eax
push str.__s_hs___hs
lea eax, [ebp - 0x2588]
push 0xbb8
push eax
call fcn.00589620
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
add esp, 0x18
push 0
push 0
push 0xffffffffffffffff
push str.siamexe.exe
push 0
push 0xfde9
call edi
xor ecx, ecx
mov esi, eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00598870
add esp, 4
mov ebx, eax
push esi
push ebx
push 0xffffffffffffffff
push str.siamexe.exe
push 0
push 0xfde9
call edi
lea eax, [ebp - 0x25a4]
push eax
lea eax, [ebp - 0x25f0]
push eax
lea eax, [ebp - 0x218]
push eax
push 0
push 0x80004
push 0
push 0
push 0
lea eax, [ebp - 0x2588]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
push dword [ebp - 0x25a0]
call dword [sym.imp.KERNEL32.dll_ResumeThread]
mov eax, dword [0x7d2d98]
test eax, eax
je 0x582733
dec eax
mov dword [0x7d2d98], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005bb4c3
mov esp, ebp
pop ebp
ret