Function at 0x415490
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x565e98
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push ebx
push esi
push edi
mov eax, dword [0x5cb160]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
call fcn.0043b11c
call fcn.004050c0
push 0xffffffffffffffff
push 0x5cc94c
push 0
push 0
push 4
lea edi, [esi + 0x94]
push 0xcf
push edi
mov dword [ebp - 0x18], edi
call fcn.0043e57a
push 0xc8
push 0x5cc948
push 0
push 0
push 4
push 0xce
push edi
call fcn.0043e57a
push 0x190
push 0x5cc950
push 0
push 0
push 4
push 0xd0
push edi
call fcn.0043e57a
add esp, 0x54
push 0x118
push 0x5cc954
push 0
push 0
push 4
push 0xd1
push edi
call fcn.0043e57a
add esp, 0x1c
push 0x599f90
mov ecx, esi
call fcn.0043e446
mov eax, dword [esi + 0x20]
push 0
push 0x1f4
push 1
push eax
mov byte [esi + 0x258], 0
call dword [sym.imp.USER32.dll_SetTimer]
mov ecx, dword [esi + 0x27c]
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0x146
push ecx
call edi
xor ebx, ebx
mov dword [ebp - 0x14], eax
test eax, eax
jle 0x41559a
mov edx, dword [esi + 0x27c]
push 0
push ebx
push 0x144
push edx
call edi
inc ebx
cmp ebx, dword [ebp - 0x14]
jl 0x415583
mov eax, dword [esi + 0x27c]
push str._1_.
push 0
push 0x143
push eax
call edi
mov ecx, dword [esi + 0x27c]
push str._2_.
push 0
push 0x143
push ecx
call edi
mov edx, dword [esi + 0x27c]
push str._3_.U
push 0
push 0x143
push edx
call edi
mov eax, dword [0x5d5750]
mov ecx, dword [esi + 0x27c]
push 0
push eax
push 0x14e
push ecx
call edi
mov edx, dword [esi + 0x2f0]
push 0
push 0
push 0x146
push edx
call edi
mov ebx, eax
test ebx, ebx
jle 0x41561d
mov eax, dword [esi + 0x2f0]
push 0
push ebx
push 0x144
push eax
call edi
dec ebx
test ebx, ebx
jg 0x415607
call fcn.00436d1f
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x415637
push 0x80004005
call fcn.00401d90
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x10], eax
mov dword [ebp - 4], 1
mov ecx, dword [0x5d5894]
push 0x7c
xor ebx, ebx
push ebx
push ecx
lea edx, [ebp - 0x10]
push edx
call fcn.00438182
test eax, eax
je 0x4156fb
lea ebx, [ebx]
mov eax, dword [ebp - 0x10]
inc ebx
cmp dword [eax - 0xc], 0
jge 0x41567f
or eax, 0xffffffff
jmp 0x415699
push 0x599fd0
push eax
call fcn.00538f40
add esp, 8
test eax, eax
jne 0x415696
or eax, 0xffffffff
jmp 0x415699
sub eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x10]
call fcn.00412300
mov byte [ebp - 4], 2
mov eax, dword [eax]
mov ecx, dword [esi + 0x2f0]
push eax
push 0
push 0x143
push ecx
call edi
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4156e0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [0x5d5894]
push 0x7c
push ebx
push ecx
lea edx, [ebp - 0x10]
push edx
call fcn.00438182
test eax, eax
jne 0x415670
mov eax, dword [0x5d5754]
mov ecx, dword [esi + 0x2f0]
push 0
push eax
push 0x14e
push ecx
call edi
mov ecx, esi
call fcn.004165b0
mov edx, dword [0x5d5898]
mov eax, dword [ebp - 0x18]
push 0
push 0
push 0
push 0
push edx
push 0x5cc940
push 0
push 0
push 1
push 0x68
push eax
call fcn.0043e57a
lea ecx, [ebp - 0x18]
push ecx
call fcn.00431c40
add esp, 0x30
mov byte [ebp - 4], 4
mov eax, dword [eax]
mov edi, dword [0x5d5854]
lea esi, [eax - 0x10]
add edi, 0xfffffff0
cmp esi, edi
je 0x4157fc
cmp dword [edi + 0xc], 0
jl 0x4157ed
mov ecx, dword [esi]
cmp ecx, dword [edi]
jne 0x4157ed
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp dword [esi + 0xc], 0
lea ecx, [esi + 0xc]
jl 0x415794
cmp eax, dword [esi]
jne 0x415794
mov ebx, esi
mov edx, 1
lock xadd dword [ecx], edx
jmp 0x4157c9
mov ecx, dword [esi + 4]
mov edx, dword [eax]
mov edx, dword [edx]
push 1
push ecx
mov ecx, eax
call edx
mov ebx, eax
test ebx, ebx
jne 0x4157ad
call fcn.00401c50
mov eax, dword [esi + 4]
mov dword [ebx + 4], eax
mov eax, dword [esi + 4]
inc eax
push eax
add esi, 0x10
push esi
push eax
lea ecx, [ebx + 0x10]
push ecx
call fcn.0053867c
add esp, 0x10
lea eax, [edi + 0xc]
or edx, 0xffffffff
lock xadd dword [eax], edx
dec edx
test edx, edx
jg 0x4157e2
mov ecx, dword [edi]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push edi
call edx
add ebx, 0x10
mov dword [0x5d5854], ebx
jmp 0x4157fc
mov ecx, dword [eax - 0xc]
push ecx
push eax
mov ecx, 0x5d5854
call fcn.00401a70
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41581f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push str.sound_
lea ecx, [ebp - 0x18]
push 0x5d5854
push ecx
call fcn.004014e0
add esp, 0xc
mov byte [ebp - 4], 6
mov eax, dword [eax]
mov ebx, dword [0x5d5860]
lea esi, [eax - 0x10]
add ebx, 0xfffffff0
cmp esi, ebx
je 0x4158e8
cmp dword [ebx + 0xc], 0
jl 0x4158d9
mov ecx, dword [esi]
cmp ecx, dword [ebx]
jne 0x4158d9
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp dword [esi + 0xc], 0
lea ecx, [esi + 0xc]
jl 0x415880
cmp eax, dword [esi]
jne 0x415880
mov edi, esi
mov edx, 1
lock xadd dword [ecx], edx
jmp 0x4158b5
mov ecx, dword [esi + 4]
mov edx, dword [eax]
mov edx, dword [edx]
push 1
push ecx
mov ecx, eax
call edx
mov edi, eax
test edi, edi
jne 0x415899
call fcn.00401c50
mov eax, dword [esi + 4]
mov dword [edi + 4], eax
mov eax, dword [esi + 4]
inc eax
push eax
add esi, 0x10
push esi
push eax
lea ecx, [edi + 0x10]
push ecx
call fcn.0053867c
add esp, 0x10
lea eax, [ebx + 0xc]
or edx, 0xffffffff
lock xadd dword [eax], edx
dec edx
test edx, edx
jg 0x4158ce
mov ecx, dword [ebx]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push ebx
call edx
add edi, 0x10
mov dword [0x5d5860], edi
jmp 0x4158e8
mov ecx, dword [eax - 0xc]
push ecx
push eax
mov ecx, 0x5d5860
call fcn.00401a70
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41590b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push str.log_
lea ecx, [ebp - 0x18]
push 0x5d5854
push ecx
call fcn.004014e0
add esp, 0xc
mov byte [ebp - 4], 8
mov eax, dword [eax]
mov ebx, dword [0x5d585c]
lea esi, [eax - 0x10]
add ebx, 0xfffffff0
cmp esi, ebx
je 0x4159d4
cmp dword [ebx + 0xc], 0
jl 0x4159c5
mov ecx, dword [esi]
cmp ecx, dword [ebx]
jne 0x4159c5
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp dword [esi + 0xc], 0
lea ecx, [esi + 0xc]
jl 0x41596c
cmp eax, dword [esi]
jne 0x41596c
mov edi, esi
mov edx, 1
lock xadd dword [ecx], edx
jmp 0x4159a1
mov ecx, dword [esi + 4]
mov edx, dword [eax]
mov edx, dword [edx]
push 1
push ecx
mov ecx, eax
call edx
mov edi, eax
test edi, edi
jne 0x415985
call fcn.00401c50
mov eax, dword [esi + 4]
mov dword [edi + 4], eax
mov eax, dword [esi + 4]
inc eax
push eax
add esi, 0x10
push esi
push eax
lea ecx, [edi + 0x10]
push ecx
call fcn.0053867c
add esp, 0x10
lea eax, [ebx + 0xc]
or edx, 0xffffffff
lock xadd dword [eax], edx
dec edx
test edx, edx
jg 0x4159ba
mov ecx, dword [ebx]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push ebx
call edx
add edi, 0x10
mov dword [0x5d585c], edi
jmp 0x4159d4
mov ecx, dword [eax - 0xc]
push ecx
push eax
mov ecx, 0x5d585c
call fcn.00401a70
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4159f7
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push str.template_
lea ecx, [ebp - 0x18]
push 0x5d5854
push ecx
call fcn.004014e0
add esp, 0xc
mov byte [ebp - 4], 0xa
mov eax, dword [eax]
mov ebx, dword [0x5d5864]
lea esi, [eax - 0x10]
add ebx, 0xfffffff0
cmp esi, ebx
je 0x415ac0
cmp dword [ebx + 0xc], 0
jl 0x415ab1
mov ecx, dword [esi]
cmp ecx, dword [ebx]
jne 0x415ab1
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp dword [esi + 0xc], 0
lea ecx, [esi + 0xc]
jl 0x415a58
cmp eax, dword [esi]
jne 0x415a58
mov edi, esi
mov edx, 1
lock xadd dword [ecx], edx
jmp 0x415a8d
mov ecx, dword [esi + 4]
mov edx, dword [eax]
mov edx, dword [edx]
push 1
push ecx
mov ecx, eax
call edx
mov edi, eax
test edi, edi
jne 0x415a71
call fcn.00401c50
mov eax, dword [esi + 4]
mov dword [edi + 4], eax
mov eax, dword [esi + 4]
inc eax
push eax
add esi, 0x10
push esi
push eax
lea ecx, [edi + 0x10]
push ecx
call fcn.0053867c
add esp, 0x10
lea eax, [ebx + 0xc]
or edx, 0xffffffff
lock xadd dword [eax], edx
dec edx
test edx, edx
jg 0x415aa6
mov ecx, dword [ebx]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push ebx
call edx
add edi, 0x10
mov dword [0x5d5864], edi
jmp 0x415ac0
mov ecx, dword [eax - 0xc]
push ecx
push eax
mov ecx, 0x5d5864
call fcn.00401a70
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415ae3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
call dword [sym.imp.SkinH.dll_SkinH_Attach]
push str.def.she
lea ecx, [ebp - 0x18]
push 0x5d5854
push ecx
call fcn.004014e0
add esp, 0xc
mov byte [ebp - 4], 0xc
mov eax, dword [eax]
push 0
push eax
call dword [sym.imp.SkinH.dll_SkinH_AttachEx]
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x415b31
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push str.AutoUpdate2.exe
lea ecx, [ebp - 0x18]
push 0x5d5854
push ecx
call fcn.004014e0
add esp, 0xc
mov byte [ebp - 4], 0xe
mov eax, dword [eax]
push 5
push 0x59729c
push 0x5974d0
push eax
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x415b8a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x10]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415bb0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret