Function at 0x402270
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x45d280
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x100b8
call fcn.00451fd0
mov eax, dword [0x49cf34]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 0xc]
xor edi, edi
push str.Wtsapi32.dll
mov dword [ebp - 0x10030], eax
mov dword [ebp - 0x10038], ecx
mov dword [ebp - 0x10040], edx
mov dword [ebp - 0x1003c], edi
mov dword [ebp - 4], edi
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
cmp esi, edi
je 0x402828
mov ecx, dword [0x46106c]
mov eax, dword [str.nekoTresUyreuQSTW]
mov edx, dword [0x461070]
mov dword [ebp - 0x24], ecx
mov cx, word [0x461078]
mov dword [ebp - 0x28], eax
mov eax, dword [0x461074]
mov word [ebp - 0x18], cx
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], eax
lea edx, [ecx + 1]
mov edi, edi
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402310
sub ecx, edx
lea edx, [ebp + ecx - 0x28]
lea ecx, [ebp - 0x28]
cmp ecx, edx
je 0x402334
dec edx
cmp ecx, edx
je 0x402334
mov al, byte [ecx]
mov bl, byte [edx]
mov byte [ecx], bl
mov byte [edx], al
inc ecx
jmp 0x402320
lea edx, [ebp - 0x28]
push edx
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
xor esi, esi
mov ecx, 0x49ed28
mov dword [ecx + 0x14], eax
cmp eax, esi
je 0x402828
mov dword [ebp - 0x1002c], esi
mov dword [ebp - 0x10034], esi
lea ecx, [ecx]
mov edi, 0x49ed28
cmp esi, dword [edi + 0x60]
jae 0x4027fc
push 0x10000
lea eax, [ebp - 0x10028]
push 0
push eax
call fcn.0044fd70
add esp, 0xc
xor ebx, ebx
cmp esi, dword [edi + 0x60]
jb 0x402395
push 0x80070057
call fcn.00402e40
mov edx, dword [edi + 0x5c]
lea ecx, [esi + esi*2]
mov eax, dword [edx + ecx*8 + 8]
lea ecx, [edx + ecx*8]
cmp dword [eax - 0xc], ebx
jle 0x4023f6
lea edx, [ebp - 0x10028]
mov ecx, eax
mov esi, edx
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
test ax, ax
jne 0x4023b1
test esi, esi
jne 0x4023ce
test ebx, ebx
je 0x4027eb
cmp dword [ebp + 8], 0
je 0x402730
mov ebx, dword [ebp - 0x10034]
mov edi, 0x49ed28
cmp ebx, dword [edi + 0x60]
jb 0x4025e5
push 0x80070057
call fcn.00402e40
mov edx, dword [ecx + 4]
cmp dword [edx - 0xc], ebx
jle 0x4027eb
lea edi, [ebp - 0x10028]
add edi, 0xfffffffe
lea edx, [edi + 2]
mov edi, edi
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x402410
mov eax, dword [str.___star]
mov dword [edi], eax
test edx, edx
je 0x4027eb
mov eax, dword [ecx + 4]
mov edx, eax
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x402430
lea edi, [ebp - 0x10028]
sub eax, edx
add edi, 0xfffffffe
lea ebx, [edi + 2]
lea esp, [esp]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x402450
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test ebx, ebx
je 0x4027eb
lea edi, [ebp - 0x10028]
add edi, 0xfffffffe
lea ecx, [edi + 2]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x402480
mov edx, dword [str.___star]
mov dword [edi], edx
test ecx, ecx
je 0x4027eb
lea edi, [ebp - 0x10028]
add edi, 0xfffffffe
lea ecx, [edi + 2]
jmp 0x4024b0
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4024b0
mov eax, dword [0x461080]
mov dword [edi], eax
test ecx, ecx
je 0x4027eb
lea edi, [ebp - 0x10028]
add edi, 0xfffffffe
lea ecx, [edi + 2]
jmp 0x4024e0
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4024e0
mov edx, dword [0x461084]
mov dword [edi], edx
test ecx, ecx
je 0x4027eb
lea edi, [ebp - 0x10028]
add edi, 0xfffffffe
lea ecx, [edi + 2]
jmp 0x402510
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x402510
mov eax, dword [0x461088]
mov dword [edi], eax
test ecx, ecx
je 0x4027eb
lea edi, [ebp - 0x10028]
add edi, 0xfffffffe
lea ecx, [edi + 2]
jmp 0x402540
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x402540
mov edx, dword [0x46108c]
mov dword [edi], edx
test ecx, ecx
je 0x4027eb
lea edi, [ebp - 0x10028]
add edi, 0xfffffffe
lea ecx, [edi + 2]
jmp 0x402570
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x402570
mov eax, dword [0x461090]
mov dword [edi], eax
test ecx, ecx
je 0x4027eb
lea edi, [ebp - 0x10028]
add edi, 0xfffffffe
lea ecx, [edi + 2]
jmp 0x4025a0
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4025a0
mov eax, dword [0x461094]
mov dword [edi], eax
test ecx, ecx
je 0x4027eb
lea edi, [ebp - 0x10028]
add edi, 0xfffffffe
lea ecx, [edi + 2]
jmp 0x4025d0
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4025d0
mov dword [edi], edx
test ecx, ecx
jmp 0x4023c8
mov eax, dword [edi + 0x5c]
mov ecx, dword [ebp - 0x10030]
lea esi, [ebx + ebx*2]
add esi, esi
add esi, esi
add esi, esi
mov edx, dword [eax + esi + 0xc]
mov eax, dword [edi + 0x14]
push ecx
push edx
call eax
test eax, eax
je 0x4026f3
mov ecx, dword [ebp - 0x10030]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x10038]
push 0
push edx
push eax
call dword [sym.imp.USERENV.dll_CreateEnvironmentBlock]
test eax, eax
je 0x4026d4
push 0x40
lea ecx, [ebp - 0x100c4]
push 0
push ecx
call fcn.0044fd70
add esp, 0xc
mov dword [ebp - 0x100c8], 0x44
cmp ebx, dword [edi + 0x60]
jb 0x402656
push 0x80070057
call fcn.00402e40
mov edx, dword [edi + 0x5c]
mov edi, dword [ebp - 0x10040]
mov esi, dword [edx + esi + 4]
mov ecx, dword [ebp - 0x10038]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x10030]
push edi
lea eax, [ebp - 0x100c8]
push eax
push 0
push edx
mov edx, dword [ecx]
push 0x400
push 0
push 0
push 0
lea eax, [ebp - 0x10028]
push eax
push esi
push edx
call dword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
test eax, eax
je 0x4026a2
inc dword [ebp - 0x1002c]
mov eax, dword [edi + 4]
test eax, eax
je 0x4026bc
cmp eax, 0xffffffff
je 0x4026bc
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [edi + 4], 0
mov eax, dword [edi]
test eax, eax
je 0x4026d4
cmp eax, 0xffffffff
je 0x4026d4
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [edi], 0
mov eax, dword [ebp - 0x10038]
mov eax, dword [eax]
test eax, eax
je 0x4026f3
push eax
call dword [sym.imp.USERENV.dll_DestroyEnvironmentBlock]
mov ecx, dword [ebp - 0x10038]
mov dword [ecx], 0
mov edx, dword [ebp - 0x10030]
mov eax, dword [edx]
test eax, eax
je 0x4027eb
cmp eax, 0xffffffff
je 0x4027eb
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x10030]
inc dword [ebp - 0x10034]
mov esi, dword [ebp - 0x10034]
mov dword [eax], 0
jmp 0x402360
push 0x40
lea ecx, [ebp - 0x10080]
push 0
push ecx
call fcn.0044fd70
mov eax, dword [ebp - 0x10034]
mov ecx, 0x49ed28
add esp, 0xc
mov dword [ebp - 0x10084], 0x44
cmp eax, dword [ecx + 0x60]
jb 0x402777
push 0x80070057
call fcn.00402e40
mov dword [ebp - 0x1003c], 0
mov eax, 0x402822
ret
mov esi, dword [ebp - 0x10040]
push esi
lea edx, [eax + eax*2]
mov eax, dword [ecx + 0x5c]
mov eax, dword [eax + edx*8 + 4]
lea ecx, [ebp - 0x10084]
push ecx
push 0
push 0
push 0
push 0
push 0
push 0
lea edx, [ebp - 0x10028]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
mov edi, eax
test edi, edi
je 0x4027b5
inc dword [ebp - 0x1002c]
mov eax, dword [esi + 4]
test eax, eax
je 0x4027cf
cmp eax, 0xffffffff
je 0x4027cf
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esi + 4], 0
mov eax, dword [esi]
test eax, eax
je 0x4027e7
cmp eax, 0xffffffff
je 0x4027e7
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esi], 0
test edi, edi
jne 0x4027fc
inc dword [ebp - 0x10034]
mov esi, dword [ebp - 0x10034]
jmp 0x402360
mov ecx, dword [ebp - 0x1002c]
mov eax, 0x49ed28
cmp ecx, dword [eax + 0x60]
jne 0x402813
mov edi, 1
jmp 0x402828
cmp dword [ebp + 8], 0
jne 0x402822
mov edi, 1
test ecx, ecx
jg 0x402828
mov edi, dword [ebp - 0x1003c]
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0044fd61
mov esp, ebp
pop ebp
ret 8