Function at 0x402610
Capabilities:
Enumerate processes
Terminate process
Terminate process by name

Disassembly:
sub esp, 0x150
mov eax, dword [0x426120]
xor eax, esp
mov dword [esp + 0x14c], eax
fldz
xor eax, eax
fstp qword [esp + 0x14]
push ebp
mov word [esp + 8], ax
mov dword [esp + 0x10], eax
mov dword [esp + 4], eax
or ebp, 0xffffffff
add dword [esp + 8], ebp
mov cx, word [esp + 8]
mov dword [esp + 0x14], eax
movsx edx, cx
mov ecx, dword [esp + 0x10]
mov eax, 0xf0affbfa
sub eax, edx
sub eax, ecx
push esi
push edi
cmp eax, 0x37720831
je 0x40267f
mov dx, word [0x4245c8]
movzx ecx, word [esp + 0x10]
movsx eax, dx
sub ecx, eax
sub ecx, 0x35974267
mov word [esp + 0x10], cx
push 0x104
call fcn.0040b6aa
add esp, 4
push 0
mov esi, eax
push 2
mov dword [esp + 0x34], esi
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
fld dword [0x425674]
fsub qword [0x41f390]
mov edi, eax
mov dword [esp + 0x28], edi
fstp dword [0x425674]
fld dword [0x425674]
fsubr qword [0x41f4a0]
fcomp qword [0x41f498]
fnstsw ax
test ah, 0x41
jne 0x4026dc
mov edx, dword [esp + 0x18]
imul edx, edx, 0xa4d2786b
mov dword [esp + 0x18], edx
jmp 0x4026fa
mov eax, dword [0x423858]
add eax, 0x37be48ea
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fstp dword [0x423970]
add dword [0x423858], ebp
test edi, edi
je 0x4028e7
lea ecx, [esp + 0x30]
push ecx
push edi
mov dword [esp + 0x38], 0x128
call sub.KERNEL32.dll_Process32First
mov ebp, 1
add dword [0x4255f8], ebp
mov edx, dword [0x4255f8]
add edx, 0x6861582c
mov dword [esp + 0x14], edx
fild dword [esp + 0x14]
mov ecx, eax
fld qword [esp + 0x20]
fld qword [esp + 0x20]
fsubp st(2)
fcompp
fnstsw ax
fld qword [esp + 0x20]
fadd qword [0x41f390]
fstp qword [esp + 0x20]
test ah, 5
jp 0x40276b
mov eax, dword [esp + 0xc]
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fadd qword [esp + 0x20]
fstp qword [esp + 0x20]
test ecx, ecx
je 0x4028e0
mov edi, esi
lea ecx, [esp + 0x54]
sub edi, ecx
jmp 0x402780
lea eax, [esp + 0x54]
mov cl, byte [eax]
mov byte [edi + eax], cl
add eax, ebp
test cl, cl
jne 0x402784
push esi
call fcn.0041e813
mov ecx, dword [esp + 0x164]
add esp, 4
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4027c1
test dl, dl
je 0x4027bd
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4027c1
add eax, 2
add ecx, 2
test dl, dl
jne 0x4027a1
xor eax, eax
jmp 0x4027c6
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x402883
cmp dword [esp + 0x164], eax
je 0x4028d8
mov edx, dword [esp + 0x38]
push edx
push eax
push ebp
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov esi, eax
test esi, esi
je 0x402834
dec dword [esp + 0xc]
mov eax, dword [esp + 0xc]
sub dword [esp + 0x18], eax
add dword [esp + 0x1c], ebp
push 0xffffffffffffffff
push esi
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
fld qword [0x423848]
fsub qword [0x41f390]
push esi
fstp qword [0x423848]
fld qword [0x423848]
fsub qword [0x41f490]
fmul qword [esp + 0x24]
fstp qword [esp + 0x24]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x4254a8]
add dword [0x4254a8], ebp
mov esi, dword [esp + 0x2c]
cmp ecx, 0x399b5e53
jne 0x402883
add word [0x4239c4], bp
mov dx, word [0x4239c4]
movzx ecx, word [0x42473c]
movsx eax, dx
movsx edx, cx
movzx ecx, word [esp + 0x10]
add eax, edx
movsx edx, cx
add edx, eax
mov dword [esp + 0x14], edx
fild dword [esp + 0x14]
fmul qword [esp + 0x20]
fstp qword [esp + 0x20]
mov eax, dword [esp + 0xc]
mov ecx, 0xf00ba43
sub ecx, eax
cmp ecx, 0xd45106d1
je 0x4028af
movzx edx, word [esp + 0x10]
mov eax, dword [esp + 0xc]
lea ecx, [edx + eax + 0x1cccc269]
mov word [esp + 0x10], cx
add dword [esp + 0xc], ebp
mov eax, dword [esp + 0x28]
lea edx, [esp + 0x30]
push edx
mov dword [esp + 0x34], 0x128
add dword [esp + 0x10], 0x3279924
push eax
call sub.KERNEL32.dll_Process32Next
test eax, eax
jne 0x402780
jmp 0x4028dc
add dword [esp + 0x1c], ebp
mov edi, dword [esp + 0x28]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
call fcn.0040bb6a
mov ecx, dword [esp + 0x15c]
mov eax, dword [esp + 0x20]
add esp, 4
pop edi
pop esi
pop ebp
xor ecx, esp
call fcn.0040bbf8
add esp, 0x150
ret