Function at 0x10076b80
Capabilities:
Enumerate processes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100c278f
mov eax, dword fs:[0]
push eax
sub esp, 0x568
mov eax, dword [0x100eb6ac]
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 0x10076d47
push ebx
push 2
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov esi, eax
mov dword [ebp - 0x4d4], esi
cmp esi, 0xffffffff
jne 0x10076d4e
lea edx, [ebp - 0x574]
push edx
call fcn.10013470
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.1001c530
add esp, 0xc
push eax
call fcn.1006fa80
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.100191b0
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.100191b0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x278]
push ecx
lea edx, [ebp - 0x574]
push edx
call fcn.10013570
mov byte [ebp - 4], 3
push eax
push 0x4c
push ebx
call fcn.10013c70
push eax
lea edx, [ebp - 0x240]
lea ecx, [ebp - 0x25c]
call fcn.10072520
mov byte [ebp - 4], 2
cmp dword [ebp - 0x264], 8
jb 0x10076cbe
mov eax, dword [ebp - 0x278]
push eax
call fcn.1009c0c0
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 0x10076cf7
mov edx, dword [ebp - 0x25c]
push edx
call fcn.1009c0c0
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 0x10076d23
mov eax, dword [ebp - 0x240]
push eax
call fcn.1009c0c0
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.10002af0
xor eax, eax
jmp 0x10076f2b
mov dword [ebp - 0x4c4], 0x22c
lea ecx, [ebp - 0x4c4]
push ecx
push esi
call dword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
jne 0x10076ed0
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea edx, [ebp - 0x574]
push edx
call fcn.10013470
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.1001c530
add esp, 0xc
push eax
call fcn.1006fa80
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.100191b0
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.100191b0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x278]
push ecx
lea edx, [ebp - 0x574]
push edx
call fcn.10013570
mov byte [ebp - 4], 7
push eax
push 0x56
push ebx
call fcn.10013c70
push eax
lea edx, [ebp - 0x25c]
lea ecx, [ebp - 0x240]
call fcn.10072520
mov byte [ebp - 4], 6
cmp dword [ebp - 0x264], 8
jb 0x10076e4c
mov eax, dword [ebp - 0x278]
push eax
call fcn.1009c0c0
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 0x10076e85
mov edx, dword [ebp - 0x240]
push edx
call fcn.1009c0c0
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 0x10076eb2
mov eax, dword [ebp - 0x25c]
push eax
call fcn.1009c0c0
add esp, 4
mov dword [ebp - 0x248], esi
mov dword [ebp - 0x24c], ebx
mov byte [ebp - 0x25c], bl
jmp 0x10076d35
lea ecx, [ebp - 0x4c4]
push ecx
mov edi, dword [ebp - 0x4d4]
push edi
call dword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
je 0x10076f1e
lea edx, [ebp - 0x4a0]
push edx
mov eax, dword [ebp - 0x4d8]
call fcn.10016880
push eax
call fcn.1009f326
add esp, 8
test eax, eax
jne 0x10076ed0
mov esi, dword [ebp - 0x4d0]
cmp dword [esi + 0x10], ebx
jne 0x10076f47
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.1009c0cb
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 0x10076ed0
xor edx, edx
mov word [ebp - 0x224], dx
push 0x206
push ebx
lea eax, [ebp - 0x222]
push eax
call fcn.100a39b0
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 0x10076ed0
mov dword [ebp - 4], 8
lea eax, [ebp - 0x224]
lea ecx, [ebp - 0x25c]
call fcn.10012b20
mov byte [ebp - 4], 9
push ebx
push eax
mov eax, esi
call fcn.10076810
cmp eax, 0xffffffff
sete byte [ebp - 0x4c5]
mov byte [ebp - 4], 8
lea esi, [ebp - 0x25c]
call fcn.10012b80
cmp byte [ebp - 0x4c5], bl
je 0x10076ff0
mov dword [ebp - 4], 0xffffffff
jmp 0x10076ed0
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 0x10076ed0