Function at 0x40c350
Capabilities:
Enumerate processes

Disassembly:
sub esp, 0x9b8
mov eax, dword [0x458190]
push esi
push edi
push 0
push 2
mov dword [esp + 0x9c4], eax
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov ecx, dword [0x456824]
mov esi, eax
mov eax, 0x1315e2c9
imul ecx
mov eax, dword [0x456838]
imul eax, eax, 0x8cc35
sar edx, 0x10
mov edi, edx
shr edi, 0x1f
add edi, edx
add edi, eax
mov eax, 0x637bce79
imul ecx
sar edx, 0x12
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x456830]
imul edx, edx, 0x6a41a
sub edi, ecx
mov ecx, dword [0x45681c]
add edi, edx
mov eax, 0x3b50a35b
imul ecx
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
lea ecx, [esp + 0x94]
add eax, edx
push ecx
sub edi, eax
push esi
mov dword [esp + 0x14], esi
mov dword [esp + 0x9c], 0x128
mov dword [str._r_____r____], edi
mov dword [esp + 0x10], 0
call sub.KERNEL32.dll_Process32First
test eax, eax
jne 0x40c414
pop edi
or eax, 0xffffffff
pop esi
mov ecx, dword [esp + 0x9b4]
call fcn.00429d61
add esp, 0x9b8
ret
mov esi, dword [0x456838]
mov ecx, dword [0x45681c]
mov eax, 0x1315e2c9
imul esi
imul esi, esi, 0x8cc35
sar edx, 0x10
mov edi, edx
shr edi, 0x1f
add edi, edx
mov eax, 0x3d63c959
imul ecx
sar edx, 0x11
push ebx
mov ebx, dword [0x456830]
add edi, edx
mov ecx, edx
mov edx, ebx
imul edx, edx, 0x6a41a
shr ecx, 0x1f
add ecx, edi
sub ecx, esi
mov esi, dword [str._r_____r____]
add ecx, edx
sub ecx, esi
add ecx, 0x6a5e7
push ebp
mov dword [0x45681c], ecx
xor eax, eax
jmp 0x40c480
mov dl, byte [esp + eax + 0xc0]
mov byte [esp + eax + 0x1c4], dl
inc eax
test dl, dl
jne 0x40c480
mov ebp, dword [0x45682c]
imul esi, esi, 0xd69d0
mov eax, 0x3d63c959
imul ebp
sar edx, 0x11
mov edi, dword [esp + 0x9cc]
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x456828]
sub esi, eax
imul edx, edx, 0x23d2f
mov eax, dword [0x456818]
imul eax, eax, 0x6a41a
add edx, ebx
add edx, esi
lea edx, [eax + edx - 0xd5bac]
mov dword [0x456824], edx
lea esi, [esp + 0x1c4]
mov dl, byte [esi]
mov al, dl
cmp dl, byte [edi]
jne 0x40c50c
test al, al
je 0x40c508
mov dl, byte [esi + 1]
mov al, dl
cmp dl, byte [edi + 1]
jne 0x40c50c
add esi, 2
add edi, 2
test al, al
jne 0x40c4e8
xor eax, eax
jmp 0x40c511
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40c564
mov esi, dword [0x456820]
imul ebp, ebp, 0xd5bac
imul ebx, ebx, 0x58c2a
mov eax, 0x637bce79
imul esi
imul esi, esi, 0x8a1c3
sar edx, 0x12
add ebp, edx
mov edi, edx
mov eax, 0x72563b0d
imul ecx
sar edx, 0x10
shr edi, 0x1f
mov eax, edx
shr eax, 0x1f
add edi, ebp
add eax, edx
sub edi, eax
add edi, esi
add edi, ebx
mov dword [0x45682c], edi
mov ebx, 1
jmp 0x40c568
mov ebx, dword [esp + 0x10]
mov ecx, dword [0x456828]
mov eax, 0x1315e2c9
imul ecx
mov esi, ecx
sar edx, 0x10
imul esi, esi, 0xd69d0
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x456834]
sub esi, eax
mov eax, dword [0x456818]
imul eax, eax, 0x85714
add esi, eax
mov eax, 0x637bce79
imul edx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x3b50a35b
imul ecx
mov eax, dword [esp + 0x14]
sar edx, 0x11
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea edx, [esp + 0x9c]
push edx
sub esi, ecx
push eax
mov dword [0x456834], esi
call sub.KERNEL32.dll_Process32Next
test eax, eax
je 0x40c753
mov eax, ebx
shl eax, 6
lea ecx, [esp + eax + 0x1c4]
lea edx, [esp + 0xc0]
sub eax, edx
lea esi, [esp + eax + 0x1c4]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], esi
jmp 0x40c610
mov esi, dword [esp + 0x10]
lea esp, [esp]
mov ebp, dword [0x456834]
mov eax, 0x4ca85b91
imul ebp
mov eax, dword [0x456818]
imul eax, eax, 0xd5bac
sar edx, 0x12
mov edi, edx
shr edi, 0x1f
add edi, edx
add edi, eax
mov eax, 0x72563b0d
imul ebp
sar edx, 0x10
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x456830]
imul edx, edx, 0x8a1c3
sub edi, ecx
sub edi, edx
mov eax, 0x2e259371
imul dword [0x456820]
sar edx, 0x10
mov ecx, edx
shr ecx, 0x1f
add edi, edx
add ecx, edi
mov dword [0x456818], ecx
lea eax, [esp + 0xc0]
lea esp, [esp]
mov dl, byte [eax]
mov byte [esi + eax], dl
inc eax
test dl, dl
jne 0x40c680
mov edi, dword [esp + 0x9cc]
mov esi, dword [esp + 0x18]
mov dl, byte [esi]
mov al, dl
cmp dl, byte [edi]
jne 0x40c6b9
test al, al
je 0x40c6b5
mov dl, byte [esi + 1]
mov al, dl
cmp dl, byte [edi + 1]
jne 0x40c6b9
add esi, 2
add edi, 2
test al, al
jne 0x40c695
xor eax, eax
jmp 0x40c6be
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40c739
mov edx, dword [0x45682c]
imul ecx, ecx, 0x23d2f
mov esi, dword [str._r_____r____]
mov eax, 0x637bce79
imul esi, esi, 0xa4b0c
imul edx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x2681eb59
imul dword [0x456820]
add esi, ecx
sar edx, 0x10
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [esp + 0xa4]
sub esi, ecx
mov ecx, dword [esp + 0x10]
sub esi, ebp
mov dword [esp + ebx*4 + 0x1c], edx
mov edx, dword [esp + 0x18]
sub esi, 0xd5bac
mov eax, 0x40
add edx, eax
inc ebx
add ecx, eax
mov dword [0x456820], esi
mov dword [esp + 0x18], edx
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x9c]
push eax
push ecx
call sub.KERNEL32.dll_Process32Next
test eax, eax
jne 0x40c608
mov ecx, dword [0x456824]
mov eax, 0x1315e2c9
imul ecx
mov ecx, dword [0x456838]
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45681c]
mov esi, ecx
imul edx, edx, 0x85714
imul esi, esi, 0xfff2a454
sub esi, eax
add esi, edx
mov eax, 0x7464ef13
imul ecx
sar edx, 0x12
mov edi, edx
add esi, edx
mov eax, 0x4d18b8d9
imul ecx
mov ecx, dword [esp + 0x14]
sar edx, 0x11
mov eax, edx
shr edi, 0x1f
shr eax, 0x1f
add eax, edx
add edi, esi
sub edi, eax
push ecx
mov dword [0x456828], edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [esp + 0x9c4]
pop ebp
mov eax, ebx
pop ebx
pop edi
pop esi
call fcn.00429d61
add esp, 0x9b8
ret