Function at 0x401b20
Capabilities:
Enumerate processes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
mov dword [ebp - 4], 0
push 0x28
call fcn.0043a7cd
add esp, 4
mov dword [ebp - 8], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xa
rep stosd dword es:[edi], eax
add ebx, 0x24
push ebx
push 0x10c
call fcn.0043a7cd
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4548b6
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x41
rep stosd dword es:[edi], eax
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], esp
push 0
push 0xf
xor eax, eax
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x401ba5
push 6
call fcn.0043a7d3
add esp, 4
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0xffffffff
jne 0x401bbc
mov eax, 0
jmp 0x402548
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x401bdc
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x401bd8
imul eax, dword [ebx]
jmp 0x401bcd
mov ecx, eax
test ecx, ecx
je 0x401bfb
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x401bf4
push ebx
push eax
call fcn.0043a7c7
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x401be2
call fcn.0043a7c7
add esp, 4
mov eax, 0x4548ae
mov ebx, dword [ebp + 8]
mov dword [ebx], eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
push ebx
call fcn.0043a7c7
add esp, 4
mov eax, 0x4548ae
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp - 0x10]
mov dword [ebx], 0x128
mov dword [ebp - 0x10], esp
mov eax, dword [ebp - 8]
push eax
push 0x128
call fcn.0043a7cd
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push dword [ebp - 4]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_Process32First]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x401ce1
push 6
call fcn.0043a7d3
add esp, 4
push eax
mov ebx, dword [ebp - 0x14]
push ebx
mov edi, dword [ebp - 0x18]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.0043b970
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x401d72
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x401d70
imul eax, dword [edi]
jmp 0x401d65
mov ecx, eax
cmp ecx, 0x104
jle 0x401d7f
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x104
call fcn.0043a7c7
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
cmp dword [ebp + 0xc], 0
mov eax, 0
sete al
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jne 0x401dd3
cmp dword [ebp + 0x14], 0
mov eax, 0
sete al
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jne 0x401dd3
mov eax, 1
jmp 0x401dd8
mov eax, 0
test eax, eax
je 0x40209c
cmp dword [ebp - 0xc], 0
je 0x402097
mov ebx, dword [ebp - 8]
add ebx, 0x24
mov dword [ebp - 0x10], ebx
push 0xa0000101
push 0
mov ebx, dword [ebp - 0x10]
push dword [ebx]
push 1
mov ebx, 0x168
call fcn.0043bf40
add esp, 0x10
mov dword [ebp - 0x14], eax
push dword [ebp + 8]
push 4
mov eax, 2
call fcn.0043b970
add esp, 8
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
mov dword [ebp - 0x1c], ebx
call fcn.0040182d
mov dword [ebp - 0x20], ecx
mov edi, dword [ebp - 0x1c]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x401e58
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x20]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x1c]
call fcn.0043a7e5
add esp, 8
mov ebx, dword [ebp + 8]
mov dword [ebx], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x20]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x18]
push edi
test eax, eax
je 0x401e9d
push eax
mov ebx, eax
call fcn.00401061
inc eax
push eax
call fcn.0043a7cd
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x401eb0
push ebx
call fcn.0043a7c7
add esp, 4
mov ebx, dword [ebp - 8]
add ebx, 8
mov dword [ebp - 0x10], ebx
push dword [ebp + 0x10]
push 4
mov eax, 2
call fcn.0043b970
add esp, 8
mov ebx, dword [ebp - 0x10]
mov eax, dword [ebx]
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
mov dword [ebp - 0x18], ebx
call fcn.0040182d
mov dword [ebp - 0x1c], ecx
mov edi, dword [ebp - 0x18]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x401eff
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x1c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x18]
call fcn.0043a7e5
add esp, 8
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x1c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x14]
mov dword [edi], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp - 8]
push eax
push 0x128
call fcn.0043a7cd
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push dword [ebp - 4]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_Process32Next]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x401fd9
push 6
call fcn.0043a7d3
add esp, 4
push eax
mov ebx, dword [ebp - 0x14]
push ebx
mov edi, dword [ebp - 0x18]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.0043b970
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40206a
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x402068
imul eax, dword [edi]
jmp 0x40205d
mov ecx, eax
cmp ecx, 0x104
jle 0x402077
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x104
call fcn.0043a7c7
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
jmp 0x401de0
jmp 0x402517
cmp dword [ebp + 0xc], 0
mov eax, 0
sete al
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jne 0x4022f5
cmp dword [ebp - 0xc], 0
je 0x4022f0
mov ebx, dword [ebp - 8]
add ebx, 0x24
mov dword [ebp - 0x10], ebx
push 0xa0000101
push 0
mov ebx, dword [ebp - 0x10]
push dword [ebx]
push 1
mov ebx, 0x168
call fcn.0043bf40
add esp, 0x10
mov dword [ebp - 0x14], eax
push dword [ebp + 8]
push 4
mov eax, 2
call fcn.0043b970
add esp, 8
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
mov dword [ebp - 0x1c], ebx
call fcn.0040182d
mov dword [ebp - 0x20], ecx
mov edi, dword [ebp - 0x1c]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40212d
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x20]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x1c]
call fcn.0043a7e5
add esp, 8
mov ebx, dword [ebp + 8]
mov dword [ebx], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x20]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x18]
push edi
test eax, eax
je 0x402172
push eax
mov ebx, eax
call fcn.00401061
inc eax
push eax
call fcn.0043a7cd
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x402185
push ebx
call fcn.0043a7c7
add esp, 4
mov dword [ebp - 0x10], esp
mov eax, dword [ebp - 8]
push eax
push 0x128
call fcn.0043a7cd
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push dword [ebp - 4]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_Process32Next]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x402232
push 6
call fcn.0043a7d3
add esp, 4
push eax
mov ebx, dword [ebp - 0x14]
push ebx
mov edi, dword [ebp - 0x18]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.0043b970
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x4022c3
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x4022c1
imul eax, dword [edi]
jmp 0x4022b6
mov ecx, eax
cmp ecx, 0x104
jle 0x4022d0
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x104
call fcn.0043a7c7
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
jmp 0x4020b5
jmp 0x402517
cmp dword [ebp - 0xc], 0
je 0x4024e6
mov ebx, dword [ebp - 8]
add ebx, 8
mov dword [ebp - 0x10], ebx
push dword [ebp + 0x10]
push 4
mov eax, 2
call fcn.0043b970
add esp, 8
mov ebx, dword [ebp - 0x10]
mov eax, dword [ebx]
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
mov dword [ebp - 0x18], ebx
call fcn.0040182d
mov dword [ebp - 0x1c], ecx
mov edi, dword [ebp - 0x18]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40234e
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x1c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x18]
call fcn.0043a7e5
add esp, 8
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x1c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x14]
mov dword [edi], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp - 8]
push eax
push 0x128
call fcn.0043a7cd
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push dword [ebp - 4]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_Process32Next]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x402428
push 6
call fcn.0043a7d3
add esp, 4
push eax
mov ebx, dword [ebp - 0x14]
push ebx
mov edi, dword [ebp - 0x18]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.0043b970
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x4024b9
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x4024b7
imul eax, dword [edi]
jmp 0x4024ac
mov ecx, eax
cmp ecx, 0x104
jle 0x4024c6
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x104
call fcn.0043a7c7
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
jmp 0x4022f5
mov dword [ebp - 0x10], esp
push dword [ebp - 4]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x402508
push 6
call fcn.0043a7d3
add esp, 4
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
call fcn.00401b07
jmp 0x402548
mov dword [ebp - 0x10], esp
push dword [ebp - 4]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x402539
push 6
call fcn.0043a7d3
add esp, 4
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
call fcn.00401b07
jmp 0x402548
push eax
mov ebx, dword [ebp - 8]
push ebx
add ebx, 0x24
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0043a7c7
add esp, 4
pop ebx
call fcn.0043a7c7
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x10