Function at 0x4c8661
Capabilities:
Enumerate processes

Disassembly:
push 0x27c
mov eax, 0x5ebf5c
call fcn.00593b07
mov dword [ebp - 0x284], ecx
push 0xe55
mov edi, str.IsObsProcessRunningEx
push edi
push str.__s__d__begin_
call fcn.0040a649
add esp, 0xc
push 0
push 2
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov ebx, eax
xor eax, eax
cmp ebx, 0xffffffff
je 0x4c8930
mov dword [ebp - 0x280], eax
mov dword [ebp - 0x27c], eax
mov dword [ebp - 0x278], eax
xor ecx, ecx
mov dword [ebp - 4], eax
lea edx, [ebp - 0x280]
inc ecx
call fcn.004c7c28
push 0xe5c
test eax, eax
push edi
push str.__s__d__snapshot_ok_
setne byte [ebp - 0x271]
call fcn.0040a649
add esp, 0xc
lea eax, [ebp - 0x26c]
push 0x228
push 0
push eax
call fcn.005aa3d0
add esp, 0xc
mov dword [ebp - 0x270], 0x22c
lea eax, [ebp - 0x270]
xor esi, esi
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
je 0x4c891c
push 0x18
pop edi
mov dword [ebp - 0x288], edi
cmp byte [ebp - 0x271], 0
je 0x4c8794
mov eax, dword [ebp - 0x27c]
xor esi, esi
mov ecx, dword [ebp - 0x280]
sub eax, ecx
cdq
idiv edi
test eax, eax
je 0x4c887f
xor edi, edi
lea eax, [edi + ecx]
cmp dword [eax + 0x14], 8
jb 0x4c8756
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x24c]
push eax
call fcn.005bc1fb
pop ecx
pop ecx
test eax, eax
je 0x4c889c
mov ecx, dword [ebp - 0x280]
inc esi
push 0x18
pop eax
add edi, eax
mov eax, dword [ebp - 0x27c]
sub eax, ecx
cdq
idiv dword [ebp - 0x288]
cmp esi, eax
jb 0x4c874b
push 0x18
pop edi
jmp 0x4c887f
call fcn.004c223c
test eax, eax
je 0x4c885b
mov eax, dword [0x6e4dd4]
mov eax, dword [eax]
mov esi, dword [eax]
jmp 0x4c8851
lea eax, [esi + 0x10]
cmp dword [eax + 0x14], 0x10
jb 0x4c87ba
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x40]
call fcn.004045aa
push 0xfde9
lea edx, [ebp - 0x40]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x28]
call fcn.00426805
pop ecx
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 3
call fcn.00404812
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
lea eax, [ebp - 0x24c]
push eax
call fcn.005bc1fb
pop ecx
pop ecx
test eax, eax
je 0x4c88b8
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0
call fcn.0040b67e
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
je 0x4c8834
mov eax, dword [esi + 4]
jmp 0x4c882a
cmp esi, dword [eax + 8]
jne 0x4c8830
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x4c8820
mov esi, eax
jmp 0x4c884a
mov esi, eax
mov ecx, dword [esi]
cmp byte [ecx + 0xd], 0
jne 0x4c884a
mov eax, dword [ecx]
mov esi, ecx
mov ecx, eax
cmp byte [eax + 0xd], 0
je 0x4c883e
mov eax, dword [0x6e4dd4]
mov eax, dword [eax]
cmp esi, eax
jne 0x4c87af
jmp 0x4c887f
xor esi, esi
push dword [esi*4 + 0x629720]
lea eax, [ebp - 0x24c]
push eax
call fcn.005bc1fb
pop ecx
pop ecx
test eax, eax
je 0x4c88e0
inc esi
cmp esi, 0x8b
jb 0x4c885d
lea eax, [ebp - 0x270]
xor esi, esi
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
jne 0x4c8725
jmp 0x4c891c
mov ecx, dword [ebp - 0x284]
imul eax, esi, 0x18
add eax, dword [ebp - 0x280]
push eax
call fcn.00413220
push 0xe67
jmp 0x4c8900
push 0xe75
push str.IsObsProcessRunningEx
lea eax, [ebp - 0x24c]
push eax
push str._process_name:__s__s__d__
call fcn.0040a649
add esp, 0x10
lea ecx, [ebp - 0x28]
call fcn.0040b67e
jmp 0x4c8919
mov esi, dword [esi*4 + 0x629720]
push esi
call fcn.005baec0
pop ecx
mov ecx, dword [ebp - 0x284]
push eax
push esi
call fcn.0040b566
push 0xe80
push str.IsObsProcessRunningEx
lea eax, [ebp - 0x24c]
push eax
push str._process_name:__s__s__d__
call fcn.0040a649
add esp, 0x10
xor esi, esi
inc esi
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [ebp - 0x280]
call fcn.004132f0
mov eax, esi
call fcn.00593ab1
ret