Function at 0x4453c0
Capabilities:
Enumerate processes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5b9250
mov eax, dword fs:[0]
push eax
sub esp, 0x284
mov eax, dword [0x630490]
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 edi, ecx
mov dword [ebp - 4], 0
lea ecx, [ebp + 8]
mov ebx, dword [ebp + 0x1c]
mov edx, 0x602665
mov eax, dword [edi]
cmp ebx, 0x10
mov esi, dword [ebp + 8]
cmovae ecx, esi
mov dword [edi + 4], eax
push 0
call fcn.00405ee0
add esp, 4
test eax, eax
jne 0x445426
cmp dword [ebp + 0x18], eax
setne al
test eax, eax
sete al
test al, al
jne 0x445611
lea edx, [ebp + 8]
lea ecx, [ebp - 0x40]
call fcn.00425e20
push 0
push 2
mov byte [ebp - 4], 1
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
lea ecx, [ebp - 0x288]
mov dword [ebp - 0x28c], eax
push ecx
push eax
mov dword [ebp - 0x288], 0x22c
call dword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
je 0x4455dc
lea edx, [ebp - 0x264]
lea ecx, [ebp - 0x58]
call fcn.00425d70
lea edx, [ebp - 0x58]
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x28]
call fcn.00425e20
mov byte [ebp - 4], 3
lea edx, [ebp - 0x40]
cmp dword [ebp - 0x2c], 0x10
lea eax, [ebp - 0x28]
mov ebx, dword [ebp - 0x30]
mov esi, ebx
cmovae edx, dword [ebp - 0x40]
cmp dword [ebp - 0x14], 0x10
mov ecx, dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
cmp ecx, ebx
cmovb esi, ecx
test esi, esi
je 0x445513
sub esi, 4
jb 0x4454d1
lea ecx, [ecx]
mov ecx, dword [eax]
cmp ecx, dword [edx]
jne 0x4454d6
add eax, 4
add edx, 4
sub esi, 4
jae 0x4454c0
cmp esi, 0xfffffffc
je 0x44550a
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x445503
cmp esi, 0xfffffffd
je 0x44550a
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x445503
cmp esi, 0xfffffffe
je 0x44550a
mov cl, byte [eax + 2]
cmp cl, byte [edx + 2]
jne 0x445503
cmp esi, 0xffffffff
je 0x44550a
mov al, byte [eax + 3]
cmp al, byte [edx + 3]
je 0x44550a
sbb eax, eax
or eax, 1
jmp 0x44550c
xor eax, eax
test eax, eax
jne 0x445525
mov ecx, dword [ebp - 0x18]
cmp ecx, ebx
jae 0x44551c
or eax, 0xffffffff
jmp 0x445523
xor eax, eax
cmp ecx, ebx
setne al
test eax, eax
sete al
test al, al
je 0x445587
mov eax, dword [edi + 4]
lea ecx, [ebp - 0x280]
cmp ecx, eax
jae 0x445567
mov ecx, dword [edi]
lea edx, [ebp - 0x280]
cmp ecx, edx
ja 0x445567
mov esi, edx
sub esi, ecx
sar esi, 2
cmp eax, dword [edi + 8]
jne 0x445559
push ecx
mov ecx, edi
call fcn.0040e9a0
mov ecx, dword [edi + 4]
mov eax, dword [edi]
test ecx, ecx
je 0x445583
mov eax, dword [eax + esi*4]
jmp 0x445581
cmp eax, dword [edi + 8]
jne 0x445574
push ecx
mov ecx, edi
call fcn.0040e9a0
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x445583
mov eax, dword [ebp - 0x280]
mov dword [ecx], eax
add dword [edi + 4], 4
lea eax, [ebp - 0x288]
push eax
push dword [ebp - 0x28c]
call dword [sym.imp.KERNEL32.dll_Process32NextW]
cmp dword [ebp - 0x14], 0x10
mov esi, eax
jb 0x4455ad
push dword [ebp - 0x28]
call fcn.0044ffc1
add esp, 4
mov byte [ebp - 4], 1
cmp dword [ebp - 0x44], 0x10
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
jb 0x4455d4
push dword [ebp - 0x58]
call fcn.0044ffc1
add esp, 4
test esi, esi
jne 0x445470
push dword [ebp - 0x28c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x2c], 0x10
jb 0x4455f9
push dword [ebp - 0x40]
call fcn.0044ffc1
add esp, 4
mov ebx, dword [ebp + 0x1c]
mov esi, dword [ebp + 8]
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 0
mov byte [ebp - 0x40], 0
cmp ebx, 0x10
jb 0x44561f
push esi
call fcn.0044ffc1
add esp, 4
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.00577e97
mov esp, ebp
pop ebp
ret