Function at 0x444160
Capabilities:
Enumerate processes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5b5880
mov eax, dword fs:[0]
push eax
sub esp, 0x284
mov eax, dword [0x62d330]
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, 0x600c12
mov eax, dword [edi]
cmp ebx, 0x10
mov esi, dword [ebp + 8]
cmovae ecx, esi
mov dword [edi + 4], eax
push 0
call fcn.00405ec0
add esp, 4
test eax, eax
jne 0x4441c6
cmp dword [ebp + 0x18], eax
setne al
test eax, eax
sete al
test al, al
jne 0x4443b1
lea edx, [ebp + 8]
lea ecx, [ebp - 0x40]
call fcn.00422200
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 0x44437c
lea edx, [ebp - 0x264]
lea ecx, [ebp - 0x58]
call fcn.00422150
lea edx, [ebp - 0x58]
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x28]
call fcn.00422200
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 0x4442b3
sub esi, 4
jb 0x444271
lea ecx, [ecx]
mov ecx, dword [eax]
cmp ecx, dword [edx]
jne 0x444276
add eax, 4
add edx, 4
sub esi, 4
jae 0x444260
cmp esi, 0xfffffffc
je 0x4442aa
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x4442a3
cmp esi, 0xfffffffd
je 0x4442aa
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x4442a3
cmp esi, 0xfffffffe
je 0x4442aa
mov cl, byte [eax + 2]
cmp cl, byte [edx + 2]
jne 0x4442a3
cmp esi, 0xffffffff
je 0x4442aa
mov al, byte [eax + 3]
cmp al, byte [edx + 3]
je 0x4442aa
sbb eax, eax
or eax, 1
jmp 0x4442ac
xor eax, eax
test eax, eax
jne 0x4442c5
mov ecx, dword [ebp - 0x18]
cmp ecx, ebx
jae 0x4442bc
or eax, 0xffffffff
jmp 0x4442c3
xor eax, eax
cmp ecx, ebx
setne al
test eax, eax
sete al
test al, al
je 0x444327
mov eax, dword [edi + 4]
lea ecx, [ebp - 0x280]
cmp ecx, eax
jae 0x444307
mov ecx, dword [edi]
lea edx, [ebp - 0x280]
cmp ecx, edx
ja 0x444307
mov esi, edx
sub esi, ecx
sar esi, 2
cmp eax, dword [edi + 8]
jne 0x4442f9
push ecx
mov ecx, edi
call fcn.0040b820
mov ecx, dword [edi + 4]
mov eax, dword [edi]
test ecx, ecx
je 0x444323
mov eax, dword [eax + esi*4]
jmp 0x444321
cmp eax, dword [edi + 8]
jne 0x444314
push ecx
mov ecx, edi
call fcn.0040b820
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x444323
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 0x44434d
push dword [ebp - 0x28]
call fcn.0044ed01
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 0x444374
push dword [ebp - 0x58]
call fcn.0044ed01
add esp, 4
test esi, esi
jne 0x444210
push dword [ebp - 0x28c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x2c], 0x10
jb 0x444399
push dword [ebp - 0x40]
call fcn.0044ed01
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 0x4443bf
push esi
call fcn.0044ed01
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.0057468d
mov esp, ebp
pop ebp
ret