Function at 0x459940
Capabilities:
Enumerate processes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5524b3
mov eax, dword fs:[0]
push eax
sub esp, 0x258
mov eax, dword [0x5a33dc]
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 ebx, ecx
push 0
push 2
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov edi, eax
mov dword [ebp - 0x14], edi
mov dword [ebp - 4], 0
test edi, edi
je 0x459b86
cmp edi, 0xffffffff
je 0x459b86
lea eax, [ebp - 0x240]
mov dword [ebp - 0x240], 0x22c
push eax
push edi
call dword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
je 0x459b86
add ebx, 0x1fc
mov ecx, ebx
call fcn.0045ac10
movss xmm0, dword [0x585b40]
divss xmm0, dword [ebx]
addss xmm0, dword [0x585b0c]
call fcn.004d9390
mov ecx, 8
cmp eax, ecx
jbe 0x459a02
nop word [eax + eax]
cmp ecx, 0xfffffff
jae 0x459bc0
add ecx, ecx
cmp ecx, eax
jb 0x4599f0
mov eax, dword [ebx + 8]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x585b50]
mov eax, ecx
shr eax, 0x1f
cvtpd2ps xmm1, xmm0
movd xmm0, ecx
divss xmm1, dword [ebx]
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x585b50]
cvtpd2ps xmm0, xmm0
comiss xmm0, xmm1
ja 0x459a69
cmp ecx, 0xfffffff
jae 0x459a69
add ecx, ecx
mov eax, ecx
shr eax, 0x1f
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x585b50]
cvtpd2ps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x459a40
push ecx
mov ecx, ebx
call fcn.004298d0
mov eax, dword [ebx + 4]
cmp dword [eax], eax
je 0x459a9f
mov eax, dword [eax + 4]
mov edi, eax
nop dword [eax]
mov esi, dword [ebx + 4]
mov ecx, ebx
mov esi, dword [esi]
push esi
lea eax, [esi + 8]
push eax
lea eax, [ebp - 0x248]
push eax
call fcn.00434130
cmp esi, edi
jne 0x459a80
mov edi, dword [ebp - 0x14]
mov esi, dword [sym.imp.KERNEL32.dll_Process32NextW]
lea eax, [ebp - 0x240]
push eax
push edi
call esi
test eax, eax
je 0x459b86
nop word [eax + eax]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x21c]
mov eax, dword [ebp - 0x238]
lea edx, [ecx + 2]
mov dword [ebp - 0x264], eax
xor eax, eax
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 7
mov word [ebp - 0x260], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x459af6
sub ecx, edx
lea eax, [ebp - 0x21c]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x260]
call fcn.00429380
mov byte [ebp - 4], 4
lea eax, [ebp - 0x264]
push dword [ebp - 0x14]
mov ecx, ebx
push eax
lea eax, [ebp - 0x248]
push eax
call fcn.0045b5d0
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x24c]
cmp edx, 8
jb 0x459b74
mov ecx, dword [ebp - 0x260]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x459b6a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x459bc9
push edx
push ecx
call fcn.004d8a95
add esp, 8
lea eax, [ebp - 0x240]
push eax
push edi
call esi
test eax, eax
jne 0x459ac0
mov dword [ebp - 4], 0xffffffff
test edi, edi
je 0x459ba4
cmp edi, 0xffffffff
je 0x459ba4
push edi
mov dword [ebp - 4], 5
call dword [sym.imp.KERNEL32.dll_CloseHandle]
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.004d84d0
mov esp, ebp
pop ebp
ret
cmp ecx, eax
jb 0x459bce
jmp 0x459a02
call fcn.0051d2db
push str.invalid_hash_bucket_count
call fcn.0045ea5c
int3