Function at 0x10029480
Capabilities:
Enumerate process modules

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10052a70
mov eax, dword fs:[0]
push eax
sub esp, 0x230
mov eax, dword [0x1006a050]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [edi + 0x10]
test eax, eax
je 0x100294c9
cmp byte [edi + 0xdc], 0
jne 0x100294c9
push eax
call fcn.100320ce
add esp, 4
mov ecx, dword [0x100929a4]
mov eax, dword [0x100929a0]
mov dword [ebp - 0x23c], ecx
mov dword [ebp - 0x238], eax
cmp eax, ecx
je 0x1002957a
nop dword [eax + eax]
mov esi, dword [eax]
mov dword [ebp - 0x234], 0x224
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 8
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov ebx, eax
lea eax, [ebp - 0x234]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_Module32First]
cmp ebx, 0xffffffff
je 0x1002955f
mov ecx, dword [ebp - 0x220]
cmp esi, ecx
jb 0x10029536
mov eax, dword [ebp - 0x21c]
add eax, ecx
cmp esi, eax
jbe 0x1002954a
lea eax, [ebp - 0x234]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_Module32Next]
test eax, eax
jne 0x10029520
jmp 0x10029558
mov eax, dword [ebp - 0x238]
push edi
mov eax, dword [eax]
call eax
add esp, 4
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x238]
add eax, 4
mov dword [ebp - 0x238], eax
cmp eax, dword [ebp - 0x23c]
jne 0x100294f0
mov eax, dword [0x10092c54]
xor ecx, ecx
cmp eax, edi
cmove eax, ecx
mov dword [0x10092c54], eax
mov ecx, dword [edi + 0x178]
cmp ecx, 0x10
jb 0x100295c5
mov eax, dword [edi + 0x164]
inc ecx
cmp ecx, 0x1000
jb 0x100295bb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100297c7
mov eax, edx
push ecx
push eax
call fcn.10031ea0
add esp, 8
mov dword [edi + 0x174], 0
mov dword [edi + 0x178], 0xf
mov byte [edi + 0x164], 0
mov ecx, dword [edi + 0x160]
cmp ecx, 0x10
jb 0x1002961a
mov eax, dword [edi + 0x14c]
inc ecx
cmp ecx, 0x1000
jb 0x10029610
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100297c7
mov eax, edx
push ecx
push eax
call fcn.10031ea0
add esp, 8
mov dword [edi + 0x15c], 0
mov dword [edi + 0x160], 0xf
mov byte [edi + 0x14c], 0
mov ecx, dword [edi + 0x148]
cmp ecx, 0x10
jb 0x1002966f
mov eax, dword [edi + 0x134]
inc ecx
cmp ecx, 0x1000
jb 0x10029665
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100297c7
mov eax, edx
push ecx
push eax
call fcn.10031ea0
add esp, 8
mov dword [edi + 0x144], 0
mov dword [edi + 0x148], 0xf
mov byte [edi + 0x134], 0
mov eax, dword [edi + 0x124]
test eax, eax
je 0x100296e2
mov ecx, dword [edi + 0x12c]
sub ecx, eax
cmp ecx, 0x1000
jb 0x100296ba
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100297c7
mov eax, edx
push ecx
push eax
call fcn.10031ea0
mov dword [edi + 0x124], 0
add esp, 8
mov dword [edi + 0x128], 0
mov dword [edi + 0x12c], 0
mov eax, dword [edi + 0x118]
test eax, eax
je 0x1002973a
mov ecx, dword [edi + 0x120]
sub ecx, eax
cmp ecx, 0x1000
jb 0x10029712
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100297c7
mov eax, edx
push ecx
push eax
call fcn.10031ea0
mov dword [edi + 0x118], 0
add esp, 8
mov dword [edi + 0x11c], 0
mov dword [edi + 0x120], 0
mov ecx, dword [edi + 0x110]
mov eax, dword [ecx + 4]
mov dword [eax], 0
mov eax, dword [ecx]
test eax, eax
je 0x10029763
nop
mov esi, dword [eax]
push 0xc
push eax
call fcn.10031ea0
add esp, 8
mov eax, esi
test esi, esi
jne 0x10029750
push 0xc
push dword [edi + 0x110]
call fcn.10031ea0
mov ecx, dword [edi + 0x108]
add esp, 8
mov eax, dword [ecx + 4]
mov dword [eax], 0
mov eax, dword [ecx]
test eax, eax
je 0x1002979b
mov esi, dword [eax]
push 0xc
push eax
call fcn.10031ea0
add esp, 8
mov eax, esi
test esi, esi
jne 0x10029788
push 0xc
push dword [edi + 0x108]
call fcn.10031ea0
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10031b48
mov esp, ebp
pop ebp
ret
call fcn.10037627
int3