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

Disassembly:
sub esp, 0x14c
mov eax, dword [0x425f90]
xor eax, esp
mov dword [esp + 0x148], eax
fldz
xor eax, eax
mov dword [esp + 0xc], 0
mov word [esp], ax
fstp dword [esp + 8]
mov dword [esp + 0x14], eax
mov cx, word [esp]
movsx edx, cx
sub edx, 0x5b28d55f
cmp edx, 0xfb03a056
mov dword [esp + 4], eax
jge 0x401d25
mov eax, dword [0x423134]
mov ecx, 0x35b43ddc
sub ecx, eax
cmp ecx, 0x8745e8cf
jne 0x401d1d
mov edx, dword [0x4234b4]
imul edx, edx, 0xd1089c90
mov dword [0x4234b4], edx
jmp 0x401d25
add dword [esp + 0xc], 0x3dea0d90
push esi
push edi
push 0x104
call fcn.0040b01a
add esp, 4
push 0
mov edi, eax
push 2
mov dword [esp + 0x28], edi
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov esi, eax
mov dword [esp + 0x24], esi
test esi, esi
je 0x401f34
lea eax, [esp + 0x28]
push eax
push esi
mov dword [esp + 0x30], 0x128
call sub.KERNEL32.dll_Process32First
test eax, eax
je 0x401f29
lea ecx, [esp + 0x4c]
push ebp
mov ebp, dword [sym.imp.KERNEL32.dll_TerminateProcess]
sub edi, ecx
lea esp, [esp]
lea eax, [esp + 0x50]
mov cl, byte [eax]
mov byte [edi + eax], cl
inc eax
test cl, cl
jne 0x401d84
mov edx, dword [esp + 0x24]
push edx
call fcn.0041e1e3
mov ecx, dword [esp + 0x160]
mov eax, dword [esp + 0x28]
add esp, 4
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401dc9
test dl, dl
je 0x401dc2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401dc9
add eax, 2
add ecx, 2
test dl, dl
jne 0x401da6
xor eax, eax
or ecx, 0xffffffff
jmp 0x401dd2
sbb eax, eax
mov ecx, 0xffffffff
sbb eax, ecx
test eax, eax
jne 0x401eca
add dword [0x425150], ecx
mov eax, dword [0x425150]
cmp eax, 0x52c59637
jl 0x401e10
mov cx, word [0x4241bc]
mov edx, dword [0x4242c0]
movsx eax, cx
mov ecx, dword [esp + 0x20]
lea eax, [edx + eax + 0x2921fda]
imul ecx, eax
mov dword [esp + 0x20], ecx
jmp 0x401e70
fld qword [0x4241d8]
fsub dword [0x42424c]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
add dword [esp + 0x18], ecx
mov dword [esp + 0x1c], edx
fild dword [esp + 0x1c]
mov dword [esp + 0x1c], eax
faddp st(1)
fild dword [esp + 0x1c]
fcompp
fnstsw ax
fld dword [0x42424c]
fld1
fsub st(1), st(0)
fxch st(1)
fstp dword [0x42424c]
test ah, 1
jne 0x401e6e
mov dx, word [esp + 0xc]
fld dword [esp + 0x14]
add dword [esp + 0xc], ecx
fstp st(0)
fsubr dword [esp + 0x14]
fstp dword [esp + 0x14]
jmp 0x401e70
fstp st(0)
cmp dword [esp + 0x160], 0
je 0x401ef7
mov eax, dword [esp + 0x34]
push eax
push 0
push 1
call dword [sym.imp.KERNEL32.dll_OpenProcess]
fld qword [0x425de0]
fadd qword [0x425e48]
mov esi, eax
fstp qword [0x425e48]
test esi, esi
je 0x401ec6
mov cx, word [0x4242c4]
inc dword [esp + 0x10]
movsx edx, cx
mov eax, 0xa534c7b4
push 0xffffffffffffffff
sub eax, edx
add dword [esp + 0x24], eax
push esi
call ebp
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [esp + 0x28]
lea eax, [esp + 0x2c]
push eax
push esi
mov dword [esp + 0x34], 0x128
call sub.KERNEL32.dll_Process32Next
movzx ecx, word [esp + 0xc]
sub ecx, 0x2b7b485
mov word [esp + 0xc], cx
test eax, eax
jne 0x401d80
jmp 0x401f28
mov edx, dword [0x424160]
sub edx, 0x552d3d85
mov dword [esp + 0x1c], edx
fild dword [esp + 0x1c]
mov eax, 1
fsub dword [0x424398]
fmul dword [esp + 0x14]
fstp dword [esp + 0x14]
add dword [0x424160], eax
add dword [esp + 0x10], eax
pop ebp
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edi, dword [esp + 0x20]
push edi
call fcn.0040b455
mov ecx, dword [esp + 0x154]
mov eax, dword [esp + 0x10]
add esp, 4
pop edi
pop esi
xor ecx, esp
call fcn.0040b56a
add esp, 0x14c
ret