Function at 0x412000
Capabilities:
Enumerate processes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x446413
mov eax, dword fs:[0]
push eax
sub esp, 0x274
mov eax, dword [0x4584b8]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov byte [ebp - 0x26d], cl
mov dword [ebp - 4], 0
xor edi, edi
mov eax, dword [ebp + 8]
or ecx, 0xffffffff
cmp dword [eax - 0xc], edi
je 0x4121ec
push 0x228
lea eax, [ebp - 0x268]
mov dword [ebp - 0x278], edi
push edi
push eax
mov dword [ebp - 0x27c], edi
mov dword [ebp - 0x26c], 0x22c
call fcn.0042dd30
add esp, 0xc
call fcn.00401c40
mov ecx, eax
xor eax, eax
test ecx, ecx
setne al
test eax, eax
jne 0x412092
push 0x80004005
call fcn.004019f0
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
lea esi, [eax + 0x10]
mov dword [ebp - 0x280], esi
push 0
push 2
mov byte [ebp - 4], 1
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov dword [ebp - 0x274], eax
cmp eax, 0xffffffff
jne 0x4120c2
xor edi, edi
jmp 0x4121cb
mov eax, dword [ebp + 8]
cmp dword [eax - 0xc], 0
jl 0x4120e7
push 0x451498
push eax
call fcn.0042ce0b
add esp, 8
test eax, eax
je 0x4120e7
sub eax, dword [ebp + 8]
sar eax, 1
cmp eax, 0xffffffff
jne 0x4120f6
push 4
push str..exe
lea ecx, [ebp + 8]
call fcn.0040a5e0
lea eax, [ebp - 0x26c]
push eax
push dword [ebp - 0x274]
call dword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
je 0x4121bf
push dword [ebp + 8]
lea eax, [ebp - 0x248]
push eax
call fcn.0042d758
add esp, 8
test eax, eax
jne 0x4121a4
cmp byte [ebp - 0x26d], al
je 0x41222a
push dword [ebp - 0x264]
xorps xmm0, xmm0
mov dword [ebp - 0x18], eax
push eax
push 0x410
movdqu xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x3c], 0x28
movdqu xmmword [ebp - 0x28], xmm0
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov edi, eax
test edi, edi
je 0x412176
push 0x28
lea eax, [ebp - 0x3c]
push eax
push edi
call dword [sym.imp.PSAPI.DLL_GetProcessMemoryInfo]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x278], 0
mov eax, dword [ebp - 0x1c]
je 0x41218a
cmp eax, dword [ebp - 0x27c]
jb 0x41219e
mov edi, dword [ebp - 0x264]
mov dword [ebp - 0x278], edi
mov dword [ebp - 0x27c], eax
jmp 0x4121a4
mov edi, dword [ebp - 0x278]
lea eax, [ebp - 0x26c]
push eax
push dword [ebp - 0x274]
call dword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
jne 0x412111
push dword [ebp - 0x274]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
add esi, 0xfffffff0
mov byte [ebp - 4], 0
or ecx, 0xffffffff
lea eax, [esi + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4121e9
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
or ecx, 0xffffffff
mov dword [ebp - 4], 0xffffffff
mov esi, dword [ebp + 8]
add esi, 0xfffffff0
lea eax, [esi + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x41220d
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0042c3b2
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x274]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edi, dword [ebp - 0x264]
jmp 0x4121cb