Function at 0x403580
Capabilities:
Create process on windows

Disassembly:
push 0xffffffffffffffff
push 0x4c4aa1
mov eax, dword fs:[0]
push eax
sub esp, 0xfc
mov eax, dword [0x4ea6c4]
xor eax, esp
mov dword [esp + 0xf8], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4ea6c4]
xor eax, esp
push eax
lea eax, [esp + 0x110]
mov dword fs:[0], eax
push str.Kuai8GameManager
xor ebx, ebx
push ebx
push ebx
push ebx
mov edi, ecx
mov byte [esp + 0x2b], 1
call dword [sym.imp.KERNEL32.dll_CreateEventW]
cmp eax, ebx
mov dword [0x4ec058], eax
lea ebp, [ebx + 8]
je 0x4035f7
push 0x10
push str.Kuai8GameManager
mov esi, 0x4ec05c
call fcn.00401700
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x403603
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
cmp eax, ebx
jne 0x40365d
call esi
cmp eax, 0xb7
jne 0x40365d
push 0x4cb7c4
push str.GMKuaiBaWnd
call dword [sym.imp.USER32.dll_FindWindowW]
cmp eax, ebx
je 0x40365d
cmp dword [edi + 0x18], ebp
mov ecx, dword [edi + 0x60]
mov dword [esp + 0x2c], ecx
jb 0x403635
mov edx, dword [edi + 4]
mov dword [esp + 0x34], edx
jmp 0x40363c
lea ecx, [edi + 4]
mov dword [esp + 0x34], ecx
mov ecx, dword [edi + 0x14]
lea edx, [ecx + ecx]
lea ecx, [esp + 0x2c]
push ecx
push 0x22b9
push 0x4a
push eax
mov dword [esp + 0x40], edx
call dword [sym.imp.USER32.dll_SendMessageW]
mov byte [esp + 0x1b], bl
mov eax, dword [0x4ec058]
cmp eax, ebx
je 0x403675
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x403675
call esi
jmp 0x40367b
mov dword [0x4ec058], ebx
cmp byte [esp + 0x1b], bl
je 0x4038c9
push ebp
push str.K8GM.exe
lea esi, [esp + 0x40]
mov dword [esp + 0x58], 7
mov dword [esp + 0x54], ebx
mov word [esp + 0x44], bx
call fcn.00401700
mov edx, esi
push edx
lea eax, [edi + 0x1c]
push eax
lea ecx, [esp + 0xf8]
mov dword [esp + 0x120], ebx
call fcn.0040aaf0
add esp, 8
cmp dword [esp + 0x50], ebp
jb 0x4036d5
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.004abbe4
add esp, 4
mov dword [esp + 0xec], 7
mov dword [esp + 0xe8], ebx
mov word [esp + 0xd8], bx
mov byte [esp + 0x118], 3
cmp dword [edi + 0x18], ebp
jb 0x403701
mov eax, dword [edi + 4]
jmp 0x403704
lea eax, [edi + 4]
mov edx, dword [edi + 0x60]
push eax
push edx
push str._install_app
lea eax, [esp + 0xe0]
push str._s__d_s_
push eax
call fcn.00407230
add esp, 0x14
lea ecx, [esp + 0xf0]
push 0x4cb904
push ecx
lea esi, [esp + 0x78]
call fcn.00401ca0
lea edx, [esp + 0xdc]
push edx
push eax
lea edi, [esp + 0x64]
mov byte [esp + 0x128], 4
call fcn.004028e0
add esp, 0x10
push 0xffffffffffffffff
push ebx
push eax
lea eax, [esp + 0xe0]
mov byte [esp + 0x124], 5
call fcn.004017d0
cmp dword [esp + 0x6c], ebp
jb 0x403781
mov eax, dword [esp + 0x58]
push eax
call fcn.004abbe4
add esp, 4
cmp dword [esp + 0x88], ebp
mov edi, 7
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], ebx
mov word [esp + 0x58], bx
jb 0x4037a9
mov ecx, dword [esp + 0x74]
push ecx
call fcn.004abbe4
add esp, 4
push 0x44
lea edx, [esp + 0x90]
push ebx
push edx
call fcn.004ae6c0
or dword [esp + 0xc4], 1
xor eax, eax
add esp, 0xc
cmp dword [esp + 0xec], ebp
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0xd8]
mov dword [esp + 0x8c], 0x44
mov word [esp + 0xbc], 5
jae 0x403802
lea eax, [esp + 0xd8]
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x90]
push edx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x40386d
cmp dword [esp + 0xec], ebp
jb 0x40383a
mov eax, dword [esp + 0xd8]
push eax
call fcn.004abbe4
add esp, 4
cmp dword [esp + 0x108], ebp
mov dword [esp + 0xec], edi
mov dword [esp + 0xe8], ebx
mov word [esp + 0xd8], bx
jb 0x403869
mov ecx, dword [esp + 0xf4]
push ecx
call fcn.004abbe4
add esp, 4
xor al, al
jmp 0x4038cb
mov edx, dword [esp + 0x1c]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push edx
call esi
mov eax, dword [esp + 0x20]
push eax
call esi
cmp dword [esp + 0xec], ebp
jb 0x40389a
mov ecx, dword [esp + 0xd8]
push ecx
call fcn.004abbe4
add esp, 4
cmp dword [esp + 0x108], ebp
mov dword [esp + 0xec], edi
mov dword [esp + 0xe8], ebx
mov word [esp + 0xd8], bx
jb 0x4038c9
mov edx, dword [esp + 0xf4]
push edx
call fcn.004abbe4
add esp, 4
mov al, 1
mov ecx, dword [esp + 0x110]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xf8]
xor ecx, esp
call fcn.004abc64
add esp, 0x108
ret