Function at 0x40c8a0
Capabilities:
Enumerate threads
Terminate process
Terminate thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
mov eax, dword [0x4b4200]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov edi, dword [sym.imp.USER32.dll_FindWindowExW]
mov ebx, ecx
push 0
push 0
push 0
push 0
call edi
mov esi, eax
test esi, esi
je 0x40c907
nop dword [eax + eax]
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push esi
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
test eax, eax
je 0x40c8f8
cmp dword [ebp - 8], ebx
jne 0x40c8f8
push 0
push 0
push 2
push esi
call dword [sym.imp.USER32.dll_PostMessageW]
push 0
push 0
push esi
push 0
call edi
mov esi, eax
test esi, esi
jne 0x40c8d0
mov ecx, dword [sym.imp.KERNEL32.dll_OpenProcess]
cmp ebx, 5
jae 0x40c91a
cmp ebx, 4
sete al
jmp 0x40c959
push ebx
push 0
push 0x100000
call ecx
mov esi, eax
test esi, esi
je 0x40cc10
cmp esi, 0xffffffff
je 0x40cc10
push 0
push esi
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
push esi
sete byte [ebp - 0x29]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, byte [ebp - 0x29]
mov ecx, dword [sym.imp.KERNEL32.dll_OpenProcess]
test al, al
je 0x40cc10
push ebx
push 0
or edi, 0xffffffff
push 1
mov dword [ebp - 0x30], edi
call ecx
mov dword [ebp - 0x34], 0
mov esi, eax
mov dword [ebp - 0x38], esi
test esi, esi
je 0x40ca14
cmp esi, 0xffffffff
je 0x40ca1a
push 0
push esi
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
push 0
push 0x14
call dword [sym.imp.KERNEL32.dll_SleepEx]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
or esi, 0xffffffff
mov dword [ebp - 0x38], esi
cmp ebx, 5
jae 0x40c9b8
cmp ebx, 4
sete al
jmp 0x40c9f0
push ebx
push 0
push 0x100000
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0xc], eax
test eax, eax
je 0x40ca10
cmp eax, 0xffffffff
je 0x40ca10
push 0
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push dword [ebp - 0xc]
cmp eax, 0x102
sete byte [ebp - 0x29]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, byte [ebp - 0x29]
test al, al
je 0x40ca10
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp eax, 0x1e
jge 0x40ca1a
push ebx
push 0
push 1
call dword [sym.imp.KERNEL32.dll_OpenProcess]
jmp 0x40c975
mov bl, 1
jmp 0x40ca33
or esi, 0xffffffff
mov dword [ebp - 0x38], esi
push ebx
push 4
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov dword [ebp - 0xc], eax
test eax, eax
jne 0x40ca65
mov dword [ebp - 0x30], 0xffffffff
xor bl, bl
mov eax, dword [ebp - 0x30]
cmp eax, 0xffffffff
je 0x40ca46
test eax, eax
je 0x40ca46
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp edi, 0xffffffff
je 0x40cbeb
test edi, edi
je 0x40cbeb
push edi
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
jmp 0x40cbf1
mov dword [ebp - 0x30], eax
cmp eax, 0xffffffff
je 0x40ca31
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], 0
xorps xmm0, xmm0
mov dword [ebp - 0x30], eax
push ecx
push eax
movups xmmword [ebp - 0x28], xmm0
movq qword [ebp - 0x18], xmm0
call dword [sym.imp.KERNEL32.dll_Thread32First]
test eax, eax
je 0x40caeb
mov esi, dword [ebp - 0xc]
mov dword [ebp - 0x30], esi
cmp dword [ebp - 0x1c], ebx
jne 0x40cad9
push dword [ebp - 0x20]
push 0
push 3
call dword [sym.imp.KERNEL32.dll_OpenThread]
mov dword [ebp - 0xc], eax
cmp edi, 0xffffffff
je 0x40cac0
test edi, edi
je 0x40cac0
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0xc]
mov edi, eax
test eax, eax
jne 0x40cacb
or edi, 0xffffffff
jmp 0x40cad9
cmp edi, 0xffffffff
je 0x40cad9
push 0
push edi
call dword [sym.imp.KERNEL32.dll_TerminateThread]
lea eax, [ebp - 0x28]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_Thread32Next]
test eax, eax
jne 0x40ca98
mov esi, dword [ebp - 0x38]
cmp ebx, 5
jae 0x40caf8
cmp ebx, 4
sete al
jmp 0x40cb38
push ebx
push 0
push 0x100000
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0xc], eax
test eax, eax
je 0x40ca10
cmp eax, 0xffffffff
je 0x40ca10
push 0
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push dword [ebp - 0xc]
cmp eax, 0x102
sete byte [ebp - 0x29]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, byte [ebp - 0x29]
test al, al
je 0x40ca10
mov dword [ebp - 0x34], 0
push ebx
push 0
push 1
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0xc], eax
cmp esi, 0xffffffff
je 0x40cb68
test esi, esi
je 0x40cb68
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0xc]
mov esi, eax
test eax, eax
je 0x40cb94
cmp esi, 0xffffffff
je 0x40cb97
push 0
push esi
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
push 0
push 0x14
call dword [sym.imp.KERNEL32.dll_SleepEx]
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp eax, 0x1e
jl 0x40cb47
jmp 0x40cb97
or esi, 0xffffffff
cmp ebx, 5
jae 0x40cba7
cmp ebx, 4
setne bl
jmp 0x40ca33
push ebx
push 0
push 0x100000
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0xc], eax
test eax, eax
je 0x40ca10
cmp eax, 0xffffffff
je 0x40ca10
push 0
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push dword [ebp - 0xc]
mov ebx, eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp ebx, 0x102
setne bl
jmp 0x40ca33
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, 0xffffffff
je 0x40cbfd
test esi, esi
je 0x40cbfd
push esi
call edi
pop edi
pop esi
mov al, bl
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00469dc5
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
mov al, 1
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00469dc5
mov esp, ebp
pop ebp
ret