Function at 0x584112
Capabilities:
Create process on windows

Disassembly:
push 0x18c
mov eax, 0x60ac7f
call fcn.004db4be
mov ebx, ecx
call fcn.005cd4e5
mov edx, dword [0x673d4c]
lea ecx, [ebp - 0x54]
xor esi, esi
mov dword [0x673d0c], eax
push esi
call fcn.00407b07
pop ecx
push dword [eax]
call fcn.00516ec2
pop ecx
mov ecx, dword [ebp - 0x54]
add ecx, 0xfffffff4
cmp ecx, 0x668010
je 0x58415a
call fcn.00407965
mov eax, dword [0x673d4c]
cmp dword [eax - 8], esi
je 0x5846f7
push 0x67476c
lea ecx, [ebp - 0x58]
call fcn.0040d2ee
mov dword [ebp - 4], esi
mov esi, str.ttpsvr.exe
push esi
call fcn.00505bb3
pop ecx
push esi
push eax
lea ecx, [ebp - 0x58]
call fcn.0040f454
mov edi, dword [ebp - 0x58]
mov ecx, edi
call fcn.0059076d
test eax, eax
je 0x584661
lea ecx, [ebp - 0xb8]
call fcn.004528a6
mov eax, dword [0x668294]
push 0x8148
push ecx
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x5c], eax
call fcn.0041129f
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xb8]
call fcn.0040d242
mov ecx, dword [ebp - 0x5c]
mov esi, 0x668010
add ecx, 0xfffffff4
cmp ecx, esi
je 0x5841e4
call fcn.00407965
mov edx, dword [0x673d4c]
lea ecx, [ebp - 0x54]
xor ebx, ebx
push ebx
call fcn.00407b07
pop ecx
push eax
lea ecx, [ebp - 0xb4]
call fcn.0040d242
mov ecx, dword [ebp - 0x54]
add ecx, 0xfffffff4
cmp ecx, esi
je 0x584211
call fcn.00407965
mov eax, dword [0x673d58]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x98], eax
mov eax, dword [0x673d5c]
push ebx
mov dword [ebp - 0xac], 1
mov dword [ebp - 0x9c], 0x7f4
mov dword [ebp - 0x90], 0x8c9
mov dword [ebp - 0x8c], 9
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x94], eax
call dword [sym.imp.ole32.dll_CoInitialize]
xorps xmm0, xmm0
mov dword [ebp - 0x160], 0x639864
movups xmmword [ebp - 0x15c], xmm0
mov dword [ebp - 0x14c], ebx
mov dword [ebp - 0x148], ebx
mov eax, dword [0x668294]
mov dword [ebp - 0x5c], eax
call fcn.0051687d
push eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
lea eax, [ebp - 0x5c]
push str._u_u.dat
push eax
call fcn.0040cefd
add esp, 0x10
lea ecx, [ebp - 0x60]
push 0x67476c
call fcn.0040d2ee
mov edi, dword [ebp - 0x5c]
mov ecx, dword [0x668294]
push edi
mov eax, dword [eax]
push dword [edi - 8]
mov dword [ebp - 0x54], ecx
lea ecx, [ebp - 0x54]
push eax
push dword [eax - 8]
call fcn.0040f4c7
mov esi, dword [ebp - 0x54]
mov ecx, esi
call fcn.00414841
lea ecx, [esi - 0xc]
mov ebx, eax
mov esi, 0x668010
cmp ecx, esi
je 0x5842ea
call fcn.00407965
mov ecx, dword [ebp - 0x60]
add ecx, 0xfffffff4
cmp ecx, esi
je 0x5842f9
call fcn.00407965
test ebx, ebx
jne 0x584284
push 0x67476c
lea ecx, [ebp - 0x60]
call fcn.0040d2ee
mov ecx, dword [0x668294]
push edi
push dword [edi - 8]
mov eax, dword [eax]
push eax
mov dword [ebp - 0x54], ecx
lea ecx, [ebp - 0x54]
push dword [eax - 8]
call fcn.0040f4c7
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x5c]
call fcn.0040d242
mov ecx, dword [ebp - 0x54]
add ecx, 0xfffffff4
cmp ecx, esi
je 0x584340
call fcn.00407965
mov ecx, dword [ebp - 0x60]
add ecx, 0xfffffff4
cmp ecx, esi
je 0x58434f
call fcn.00407965
mov esi, 0x6366e4
push esi
call fcn.00505bb3
pop ecx
push esi
push eax
lea ecx, [ebp - 0x58]
call fcn.0040f454
mov esi, dword [ebp - 0x5c]
lea ecx, [ebp - 0x58]
push esi
push dword [esi - 8]
call fcn.0040f454
lea ecx, [ebp - 0xe0]
call fcn.005cb530
push str.RecomUpdate
lea ecx, [ebp - 0x198]
call fcn.005cb14e
push eax
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 5
call fcn.005cb02a
mov edi, eax
test edi, edi
je 0x5843af
cmp dword [edi + 8], 1
jne 0x5843af
xor ebx, ebx
jmp 0x5843b3
xor ebx, ebx
mov edi, ebx
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 4
call fcn.005cb112
test edi, edi
je 0x584625
push 0x40
lea eax, [ebp - 0x50]
push ebx
push eax
call fcn.004e0bc0
mov edx, dword [ebp - 0xb8]
lea ecx, [ebp - 0x60]
add esp, 0xc
push 0xffffffffffffffff
call fcn.004137fa
pop ecx
mov byte [ebp - 4], 6
mov ecx, edi
push dword [eax]
push 0x637c04
call fcn.005cb083
mov ecx, dword [ebp - 0x60]
add ecx, 0xfffffff4
cmp ecx, 0x668010
je 0x58440f
call fcn.00407965
mov edx, dword [ebp - 0xb4]
lea ecx, [ebp - 0x60]
push 0xffffffffffffffff
call fcn.004137fa
pop ecx
mov byte [ebp - 4], 7
mov ecx, edi
push dword [eax]
push str.message
call fcn.005cb083
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x60]
add ecx, 0xfffffff4
cmp ecx, 0x668010
je 0x584449
call fcn.00407965
push 0xa
pop eax
push eax
lea eax, [ebp - 0x50]
push eax
push 0x7f4
call fcn.0051a25f
add esp, 0xc
mov ecx, edi
push eax
push str.cfgmsg
call fcn.005cb083
push 0x40
lea eax, [ebp - 0x50]
push ebx
push eax
call fcn.004e0bc0
add esp, 0xc
lea eax, [ebp - 0x50]
push 0xa
push eax
push 0x8c9
call fcn.0051a25f
add esp, 0xc
mov ecx, edi
push eax
push str.wparam
call fcn.005cb083
push 0x40
lea eax, [ebp - 0x50]
push ebx
push eax
call fcn.004e0bc0
add esp, 0xc
lea eax, [ebp - 0x50]
push 0xa
push eax
push 9
call fcn.0051a25f
add esp, 0xc
mov ecx, edi
push eax
push str.lparam
call fcn.005cb083
push 0x637dd0
push str.bhtml
mov ecx, edi
call fcn.005cb083
push 0x40
lea eax, [ebp - 0x50]
push ebx
push eax
call fcn.004e0bc0
add esp, 0xc
lea eax, [ebp - 0x50]
push 0xa
push eax
push dword [ebp - 0x68]
call fcn.0051a25f
add esp, 0xc
mov ecx, edi
push eax
push 0x639db0
call fcn.005cb083
push 0x40
lea eax, [ebp - 0x50]
push ebx
push eax
call fcn.004e0bc0
add esp, 0xc
lea eax, [ebp - 0x50]
push 0xa
push eax
push dword [ebp - 0x64]
call fcn.0051a25f
add esp, 0xc
mov ecx, edi
push eax
push 0x639db4
call fcn.005cb083
push ebx
mov edx, esi
lea ecx, [ebp - 0x64]
call fcn.00407a7f
pop ecx
push ebx
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xe0]
push dword [eax]
call fcn.005cb3da
mov ecx, dword [ebp - 0x64]
mov bl, al
neg bl
sbb bl, bl
add ecx, 0xfffffff4
inc bl
cmp ecx, 0x668010
je 0x58456a
call fcn.00407965
test bl, bl
jne 0x584625
push 0x44
pop edi
push edi
xor ebx, ebx
lea eax, [ebp - 0x128]
push ebx
push eax
call fcn.004e0bc0
add esp, 0xc
mov dword [ebp - 0x128], edi
lea edi, [ebp - 0x78]
mov dword [ebp - 0xfc], 1
lea ecx, [ebp - 0x78]
push 0xa
pop eax
mov word [ebp - 0xf8], ax
xor eax, eax
push ecx
stosd dword es:[edi], eax
lea ecx, [ebp - 0x128]
push ecx
push ebx
push ebx
stosd dword es:[edi], eax
lea ecx, [ebp - 0x58]
push ebx
push ebx
push ebx
stosd dword es:[edi], eax
push ebx
stosd dword es:[edi], eax
mov eax, dword [ebp - 0x58]
push dword [eax - 8]
call fcn.0040ceb7
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x5845e6
push dword [ebp - 0x74]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
push dword [ebp - 0x78]
call edi
call dword [sym.imp.ole32.dll_CoUninitialize]
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0xe0], 0x636404
call fcn.005cb049
lea ecx, [esi - 0xc]
mov ebx, 0x668010
cmp ecx, ebx
je 0x584612
call fcn.00407965
lea ecx, [ebp - 0xb8]
call fcn.00453f08
mov edi, dword [ebp - 0x58]
jmp 0x5846eb
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0xe0], 0x636404
call fcn.005cb049
lea ecx, [esi - 0xc]
mov ebx, 0x668010
cmp ecx, ebx
je 0x58464b
call fcn.00407965
lea ecx, [ebp - 0xb8]
call fcn.00453f08
mov ecx, dword [ebp - 0x58]
add ecx, 0xfffffff4
jmp 0x5846ee
mov edx, dword [0x673d4c]
lea ecx, [ebp - 0x64]
push 0
call fcn.00407b07
mov ecx, dword [0x668294]
mov esi, eax
mov dword [esp], 0x8229
mov dword [ebp - 0x54], ecx
push ecx
lea ecx, [ebp - 0x54]
call fcn.0041129f
xor eax, eax
lea ecx, [ebp - 0x50]
push eax
push eax
push eax
push 1
push 9
push 0x8c9
push 0x7f4
push dword [ebx + 4]
push SysReAllocString
push 0x68
push dword [esi]
mov esi, dword [ebp - 0x54]
push esi
call fcn.004528ec
lea ecx, [esi - 0xc]
mov byte [ebp - 4], 9
mov ebx, 0x668010
cmp ecx, ebx
je 0x5846cc
call fcn.00407965
mov ecx, dword [ebp - 0x64]
add ecx, 0xfffffff4
cmp ecx, ebx
je 0x5846db
call fcn.00407965
lea ecx, [ebp - 0x50]
call fcn.0045295c
lea ecx, [ebp - 0x50]
call fcn.00453f08
lea ecx, [edi - 0xc]
cmp ecx, ebx
je 0x5846f7
call fcn.00407965
xor eax, eax
call fcn.004db46d
ret 0x10