Function at 0x407510
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x26c
mov eax, dword [0x462010]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
xor esi, esi
mov dword [ebp - 0x22c], eax
push edi
mov byte [ebp - 0x230], 0
mov dword [ebp - 0x228], esi
cmp dword [ebp + 8], esi
jle 0x40768f
nop word [eax + eax]
mov edx, dword [eax + esi*4]
mov eax, edx
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0xf
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407576
sub eax, edi
lea ecx, [ebp - 0x224]
push eax
push edx
call fcn.004053f0
mov ebx, dword [ebp - 0x210]
lea eax, [ebp - 0x224]
mov edi, dword [ebp - 0x224]
cmp ebx, 0x10
mov edx, dword [ebp - 0x214]
cmovae eax, edi
cmp edx, 2
jne 0x4075b9
mov ecx, 0x6e2d
cmp word [eax], cx
je 0x4075e5
cmp ebx, 0x10
lea ecx, [ebp - 0x224]
cmovae ecx, edi
cmp edx, 0x10
jne 0x407648
mov edx, str.__noninteractive
mov esi, 0xc
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x407642
add ecx, 4
add edx, 4
sub esi, 4
jae 0x4075d4
mov byte [ebp - 0x230], 1
cmp ebx, 0x10
jb 0x40761a
inc ebx
mov eax, edi
cmp ebx, 0x1000
jb 0x407610
mov edi, dword [edi - 4]
add ebx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407794
push ebx
push edi
call fcn.00407e59
add esp, 8
push dword [ebp - 0x22c]
push dword [ebp + 8]
push dword [ebp - 0x230]
call fcn.004065c0
add esp, 0xc
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00407e67
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp - 0x228]
cmp ebx, 0x10
jb 0x407678
lea ecx, [ebx + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x40766e
mov edi, dword [edi - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407794
push ecx
push edi
call fcn.00407e59
add esp, 8
inc esi
mov dword [ebp - 0x228], esi
cmp esi, dword [ebp + 8]
jge 0x40768f
mov eax, dword [ebp - 0x22c]
jmp 0x407550
push 1
call fcn.00405900
add esp, 4
test eax, eax
jne 0x40761a
push 1
push str.Warning
push str.Please_run_the_software_as_an_administrator.
push eax
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 1
jne 0x40777e
push str.29544E05_024F_4BC1_A272_452DBC8E17A4
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
jne 0x40776b
push 0x208
push eax
lea eax, [ebp - 0x20c]
push eax
call fcn.00409cc0
add esp, 0xc
lea eax, [ebp - 0x20c]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push 0x38
lea eax, [ebp - 0x268]
mov dword [ebp - 0x26c], 0x3c
push 0
push eax
call fcn.00409cc0
add esp, 0xc
mov dword [ebp - 0x260], str.runas
lea eax, [ebp - 0x20c]
mov dword [ebp - 0x250], 1
mov dword [ebp - 0x25c], eax
lea eax, [ebp - 0x26c]
push eax
call dword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
jne 0x407763
call esi
cmp eax, 0x4c7
je 0x40776b
cmp eax, 2
je 0x40776b
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00407e67
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
mov eax, 1
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00407e67
mov esp, ebp
pop ebp
ret
call fcn.0042ee77
int3