Function at 0x4760e0
Capabilities:
Enumerate processes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c312f
mov eax, dword fs:[0]
push eax
sub esp, 0x568
mov eax, dword [0x4eb6b8]
xor eax, ebp
mov dword [ebp - 0x18], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 8]
mov dword [ebp - 0x4d8], eax
mov dword [ebp - 0x4d0], ecx
xor ebx, ebx
mov dword [ebp - 0x4cc], ebx
cmp dword [eax + 0x10], ebx
je 0x4762a7
push ebx
push 2
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov esi, eax
mov dword [ebp - 0x4d4], esi
cmp esi, 0xffffffff
jne 0x4762ae
lea edx, [ebp - 0x574]
push edx
call fcn.00414a60
mov dword [ebp - 4], ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push ecx
push str.CTS_FAILED._GetLastError:
lea eax, [ebp - 0x574]
push eax
call fcn.0041d7d0
add esp, 0xc
push eax
call fcn.00475c10
mov esi, 0xf
mov dword [ebp - 0x22c], esi
mov dword [ebp - 0x230], ebx
mov byte [ebp - 0x240], bl
push 0x20
push str.CProcUtility::GetProcessIDByName
lea ecx, [ebp - 0x240]
call fcn.004190e0
mov byte [ebp - 4], 1
mov dword [ebp - 0x248], esi
mov dword [ebp - 0x24c], ebx
mov byte [ebp - 0x25c], bl
push esi
push str.ProcUtility.cpp
lea ecx, [ebp - 0x25c]
call fcn.004190e0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x278]
push ecx
lea edx, [ebp - 0x574]
push edx
call fcn.00414b60
mov byte [ebp - 4], 3
push eax
push 0x4c
push ebx
call fcn.00413e40
push eax
lea edx, [ebp - 0x240]
lea ecx, [ebp - 0x25c]
call fcn.00471900
mov byte [ebp - 4], 2
cmp dword [ebp - 0x264], 8
jb 0x47621e
mov eax, dword [ebp - 0x278]
push eax
call fcn.0049ca60
add esp, 4
mov dword [ebp - 0x264], 7
mov dword [ebp - 0x268], ebx
xor ecx, ecx
mov word [ebp - 0x278], cx
mov byte [ebp - 4], 1
mov edi, 0x10
cmp dword [ebp - 0x248], edi
jb 0x476257
mov edx, dword [ebp - 0x25c]
push edx
call fcn.0049ca60
add esp, 4
mov dword [ebp - 0x248], esi
mov dword [ebp - 0x24c], ebx
mov byte [ebp - 0x25c], bl
mov byte [ebp - 4], bl
cmp dword [ebp - 0x22c], edi
jb 0x476283
mov eax, dword [ebp - 0x240]
push eax
call fcn.0049ca60
add esp, 4
mov dword [ebp - 0x22c], esi
mov dword [ebp - 0x230], ebx
mov byte [ebp - 0x240], bl
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x574]
call fcn.00403e50
xor eax, eax
jmp 0x47648b
mov dword [ebp - 0x4c4], 0x22c
lea ecx, [ebp - 0x4c4]
push ecx
push esi
call dword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
jne 0x476430
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea edx, [ebp - 0x574]
push edx
call fcn.00414a60
mov dword [ebp - 4], 4
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push ecx
push str.PF_FAILED._GetLastError:
lea eax, [ebp - 0x574]
push eax
call fcn.0041d7d0
add esp, 0xc
push eax
call fcn.00475c10
mov esi, 0xf
mov dword [ebp - 0x248], esi
mov dword [ebp - 0x24c], ebx
mov byte [ebp - 0x25c], bl
push 0x20
push str.CProcUtility::GetProcessIDByName
lea ecx, [ebp - 0x25c]
call fcn.004190e0
mov byte [ebp - 4], 5
mov dword [ebp - 0x22c], esi
mov dword [ebp - 0x230], ebx
mov byte [ebp - 0x240], bl
push esi
push str.ProcUtility.cpp
lea ecx, [ebp - 0x240]
call fcn.004190e0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x278]
push ecx
lea edx, [ebp - 0x574]
push edx
call fcn.00414b60
mov byte [ebp - 4], 7
push eax
push 0x56
push ebx
call fcn.00413e40
push eax
lea edx, [ebp - 0x25c]
lea ecx, [ebp - 0x240]
call fcn.00471900
mov byte [ebp - 4], 6
cmp dword [ebp - 0x264], 8
jb 0x4763ac
mov eax, dword [ebp - 0x278]
push eax
call fcn.0049ca60
add esp, 4
mov dword [ebp - 0x264], 7
mov dword [ebp - 0x268], ebx
xor ecx, ecx
mov word [ebp - 0x278], cx
mov byte [ebp - 4], 5
mov edi, 0x10
cmp dword [ebp - 0x22c], edi
jb 0x4763e5
mov edx, dword [ebp - 0x240]
push edx
call fcn.0049ca60
add esp, 4
mov dword [ebp - 0x22c], esi
mov dword [ebp - 0x230], ebx
mov byte [ebp - 0x240], bl
mov byte [ebp - 4], 4
cmp dword [ebp - 0x248], edi
jb 0x476412
mov eax, dword [ebp - 0x25c]
push eax
call fcn.0049ca60
add esp, 4
mov dword [ebp - 0x248], esi
mov dword [ebp - 0x24c], ebx
mov byte [ebp - 0x25c], bl
jmp 0x476295
lea ecx, [ebp - 0x4c4]
push ecx
mov edi, dword [ebp - 0x4d4]
push edi
call dword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
je 0x47647e
lea edx, [ebp - 0x4a0]
push edx
mov eax, dword [ebp - 0x4d8]
call fcn.004169f0
push eax
call fcn.0049ff79
add esp, 8
test eax, eax
jne 0x476430
mov esi, dword [ebp - 0x4d0]
cmp dword [esi + 0x10], ebx
jne 0x4764a7
mov eax, dword [ebp - 0x4bc]
mov dword [ebp - 0x4cc], eax
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x4cc]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x18]
xor ecx, ebp
call fcn.0049ca6b
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x4bc]
push ecx
push ebx
push 0x410
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov edi, eax
cmp edi, ebx
je 0x476430
xor edx, edx
mov word [ebp - 0x224], dx
push 0x206
push ebx
lea eax, [ebp - 0x222]
push eax
call fcn.004a4260
add esp, 0xc
push 0x104
lea ecx, [ebp - 0x224]
push ecx
push ebx
push edi
call dword [sym.imp.PSAPI.DLL_GetModuleFileNameExW]
test eax, eax
je 0x476430
mov dword [ebp - 4], 8
lea eax, [ebp - 0x224]
lea ecx, [ebp - 0x25c]
call fcn.00412cf0
mov byte [ebp - 4], 9
push ebx
push eax
mov eax, esi
call fcn.0046f140
cmp eax, 0xffffffff
sete byte [ebp - 0x4c5]
mov byte [ebp - 4], 8
lea esi, [ebp - 0x25c]
call fcn.00426e80
cmp byte [ebp - 0x4c5], bl
je 0x476550
mov dword [ebp - 4], 0xffffffff
jmp 0x476430
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x4bc]
mov dword [ebp - 0x4cc], edx
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x476430