Function at 0x10060720
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1012742d
mov eax, dword fs:[0]
push eax
sub esp, 0x244
mov eax, dword [0x10167c60]
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 ebx, ecx
mov esi, dword [ebp + 8]
test esi, esi
jne 0x1006075e
xor eax, eax
jmp 0x10060b5c
mov eax, esi
lea edi, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x10060763
sub eax, edi
lea ecx, [ebx + 0x2c]
sar eax, 1
push eax
push esi
call fcn.1000b940
mov eax, dword [ebp + 0xc]
push dword [ebx + 0x28]
mov edi, dword [sym.imp.USER32.dll_IsWindow]
mov dword [ebx + 0x30], eax
call edi
test eax, eax
jne 0x10060954
lea ecx, [ebp - 0x23c]
call fcn.100131c0
lea eax, [ebp - 0x234]
mov dword [ebp - 4], 0
push eax
call fcn.1002fe60
mov ecx, eax
call fcn.10020ec0
push dword [eax]
mov byte [ebp - 4], 1
call fcn.1002fe60
mov ecx, eax
call fcn.10021160
push eax
call fcn.1002fe60
mov ecx, eax
call fcn.10021180
push eax
call fcn.1002fe60
mov ecx, eax
call fcn.100211c0
push eax
call fcn.1002fe60
mov ecx, eax
call fcn.100211a0
push eax
push dword [ebp + 0xc]
lea eax, [ebp - 0x23c]
push esi
push str._play__path__s____playsound_d__component_x_d__component_y_d__component_width_d__component_height_d__component_file__s_
push eax
call fcn.100086f0
mov edx, dword [ebp - 0x234]
or esi, 0xffffffff
add esp, 0x24
mov byte [ebp - 4], 0
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10060830
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebx + 0x28]
call edi
mov edi, dword [ebp - 0x23c]
test eax, eax
jne 0x1006092c
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.100e67c0
add esp, 0xc
lea eax, [ebp - 0x218]
push 0x104
push eax
push 0x10000000
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov esi, dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea eax, [ebp - 0x218]
push eax
call esi
lea eax, [ebp - 0x218]
push eax
call esi
lea ecx, [ebp - 0x235]
call fcn.100602d0
push eax
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
lea eax, [ebp - 0x218]
push eax
call fcn.1009bdb0
add esp, 4
test eax, eax
jne 0x100608bb
xor ebx, ebx
or esi, 0xffffffff
jmp 0x10060931
lea ecx, [ebp - 0x234]
call fcn.100131c0
push edi
push dword [ebx + 0x24]
lea eax, [ebp - 0x234]
mov byte [ebp - 4], 2
push dword [ebx + 4]
push str._PeerWnd_d__PaintParentWnd_d__s
push eax
call fcn.100086f0
mov esi, dword [ebp - 0x234]
lea eax, [ebp - 0x218]
add esp, 0x14
push 0
push 0
push esi
push eax
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
xor ebx, ebx
mov byte [ebp - 4], 0
cmp eax, 0x20
lea edx, [esi - 0x10]
setg bl
or esi, 0xffffffff
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10060931
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x10060931
mov ebx, 1
mov dword [ebp - 4], 0xffffffff
add edi, 0xfffffff0
lock xadd dword [edi + 0xc], esi
dec esi
test esi, esi
jg 0x1006094d
mov ecx, dword [edi]
push edi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, ebx
jmp 0x10060b5c
push 2
push 1
push 1
lea ecx, [ebp - 0x250]
call fcn.1009c910
mov ecx, esi
mov dword [ebp - 4], 3
xor eax, eax
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10060990
sub ecx, edx
sar ecx, 1
push ecx
push esi
lea ecx, [ebp - 0x230]
call fcn.1000c9f0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x250]
call fcn.1009c800
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 3
call fcn.1000c1c0
mov eax, dword [ebp + 0xc]
lea ecx, [ebp - 0x250]
mov dword [ebp - 0x234], eax
lea eax, [ebp - 0x234]
push 4
push eax
call fcn.1009c7b0
mov eax, dword [ebx + 0x24]
lea ecx, [ebp - 0x250]
mov dword [ebp - 0x234], eax
lea eax, [ebp - 0x234]
push 4
push eax
call fcn.1009c7b0
call fcn.1002fe60
mov ecx, eax
call fcn.100211a0
mov dword [ebp - 0x234], eax
lea ecx, [ebp - 0x250]
push 4
lea eax, [ebp - 0x234]
push eax
call fcn.1009c7b0
call fcn.1002fe60
mov ecx, eax
call fcn.100211c0
mov dword [ebp - 0x234], eax
lea ecx, [ebp - 0x250]
push 4
lea eax, [ebp - 0x234]
push eax
call fcn.1009c7b0
call fcn.1002fe60
mov ecx, eax
call fcn.10021180
mov dword [ebp - 0x234], eax
lea ecx, [ebp - 0x250]
push 4
lea eax, [ebp - 0x234]
push eax
call fcn.1009c7b0
call fcn.1002fe60
mov ecx, eax
call fcn.10021160
mov dword [ebp - 0x234], eax
lea ecx, [ebp - 0x250]
push 4
lea eax, [ebp - 0x234]
push eax
call fcn.1009c7b0
lea eax, [ebp - 0x234]
push eax
call fcn.1002fe60
mov ecx, eax
call fcn.10020ec0
mov edx, dword [eax]
xor eax, eax
mov ecx, edx
mov byte [ebp - 4], 5
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10060ae0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x230]
call fcn.1000c9f0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x250]
call fcn.1009c800
lea ecx, [ebp - 0x230]
call fcn.1000c1c0
mov edx, dword [ebp - 0x234]
or eax, 0xffffffff
mov byte [ebp - 4], 3
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10060b3f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x250]
mov ecx, ebx
push eax
call fcn.10060df0
lea ecx, [ebp - 0x250]
mov esi, eax
call fcn.1009ca10
mov eax, esi
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.100c495f
mov esp, ebp
pop ebp
ret 8