Function at 0x417dcf
Capabilities:
Enumerate process modules
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46bc68
mov eax, dword fs:[0]
push eax
mov eax, 0x144c
call fcn.0045fdc0
mov eax, dword [0x483260]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
xor edi, edi
cmp esi, edi
jne 0x417e11
or eax, 0xffffffff
jmp 0x418049
xor eax, eax
push 0x206
mov word [ebp - 0x218], ax
lea eax, [ebp - 0x216]
push edi
push eax
call fcn.0043e1d0
mov eax, esi
add esp, 0xc
lea ecx, [eax + 2]
mov dx, word [eax]
inc eax
inc eax
cmp dx, di
jne 0x417e34
sub eax, ecx
sar eax, 1
cmp word [esi + eax*2 - 2], 0x5c
push esi
lea eax, [ebp - 0x218]
jne 0x417e58
push 0x476b90
jmp 0x417e5d
push 0x476b98
push 0x103
push eax
call fcn.0043f423
or dword [ebp - 0x430], 0xffffffff
add esp, 0x10
lea eax, [ebp - 0x43c]
push eax
push 0x1000
lea eax, [ebp - 0x1458]
push eax
call sub.PSAPI.DLL_EnumProcesses
test eax, eax
je 0x417e09
mov esi, dword [ebp - 0x43c]
lea eax, [ebp - 0x454]
push eax
shr esi, 2
call fcn.00418448
xor eax, eax
mov dword [ebp - 4], edi
push 0x208
mov word [ebp - 0x428], ax
lea eax, [ebp - 0x426]
push edi
push eax
call fcn.0043e1d0
add esp, 0xc
mov dword [ebp - 0x434], edi
mov dword [ebp - 0x42c], edi
cmp esi, edi
jbe 0x417f8f
mov eax, dword [ebp - 0x42c]
mov ebx, dword [ebp + eax*4 - 0x1458]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
cmp eax, ebx
je 0x417f7d
push ebx
push edi
push 0x1f0fff
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov ebx, eax
mov dword [ebp - 0x438], ebx
cmp ebx, edi
je 0x417f7d
lea eax, [ebp - 0x458]
push eax
push 4
lea eax, [ebp - 0x434]
push eax
push ebx
call sub.PSAPI.DLL_EnumProcessModules
test eax, eax
je 0x417f76
push 0x104
lea eax, [ebp - 0x428]
push eax
push dword [ebp - 0x434]
push ebx
call sub.PSAPI.DLL_GetModuleFileNameExW
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x428]
push eax
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
je 0x417f76
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
lea eax, [ebp - 0x438]
push eax
lea eax, [ebp - 0x454]
call fcn.004184af
jmp 0x417f7d
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
inc dword [ebp - 0x42c]
cmp dword [ebp - 0x42c], esi
jb 0x417edc
mov ebx, dword [ebp - 0x444]
sub ebx, dword [ebp - 0x448]
sar ebx, 2
cmp ebx, edi
jbe 0x41802c
xor ecx, ecx
push 4
pop edx
mov eax, ebx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0043afbf
pop ecx
mov dword [ebp - 0x42c], eax
test eax, eax
je 0x41800e
xor edi, edi
test ebx, ebx
jbe 0x417fe8
lea esi, [ebp - 0x454]
call fcn.00418496
mov eax, dword [eax]
mov ecx, dword [ebp - 0x42c]
mov dword [ecx + edi*4], eax
inc edi
cmp edi, ebx
jb 0x417fcd
push 0x1388
push 1
push dword [ebp - 0x42c]
push ebx
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
push dword [ebp - 0x42c]
mov dword [ebp - 0x430], eax
call fcn.0043e082
pop ecx
xor edi, edi
test ebx, ebx
jbe 0x41802c
lea esi, [ebp - 0x454]
call fcn.00418496
push dword [eax]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
inc edi
cmp edi, ebx
jb 0x418014
lea esi, [ebp - 0x454]
call fcn.004185e1
push dword [ebp - 0x454]
call fcn.0043b14a
mov eax, dword [ebp - 0x430]
pop ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0043b155
leave
ret