Function at 0x40249a
Capabilities:
Enumerate process modules

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50
mov dword [ebp - 4], 0
push 0x1c
call fcn.00526a16
add esp, 4
mov dword [ebp - 8], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 7
rep stosd dword es:[edi], eax
mov dword [ebp - 0xc], 0
push 0x28
call fcn.00526a16
add esp, 4
mov dword [ebp - 0x10], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xa
rep stosd dword es:[edi], eax
add ebx, 0x20
push ebx
push pe_nt_image_headers32
call fcn.00526a16
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x54d30e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x40
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0x10c
call fcn.00526a16
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x54d316
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 - 0x14], 0
mov dword [ebp - 0x18], 0
push 0x402ae2
call fcn.00402a8e
mov dword [ebp - 4], eax
mov dword [ebp - 0x1c], esp
push 0x1c
push dword [ebp - 8]
push dword [ebp - 4]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualQuery]
nop
nop
cmp dword [ebp - 0x1c], esp
je 0x40258a
push 0x9b
push 0x4017ad2
push 6
call fcn.00526a28
add esp, 0xc
mov ebx, dword [ebp - 8]
add ebx, 4
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x1c]
mov eax, dword [ebx]
mov dword [ebp - 4], eax
mov dword [ebp - 0x1c], esp
xor eax, eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
nop
nop
cmp dword [ebp - 0x1c], esp
je 0x4025c4
push 0x12e
push 0x4017ad2
push 6
call fcn.00526a28
add esp, 0xc
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], esp
push dword [ebp - 0x20]
push 8
xor eax, eax
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
nop
nop
cmp dword [ebp - 0x24], esp
je 0x4025f8
push 0x12e
push 0x4017ad2
push 6
call fcn.00526a28
add esp, 0xc
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x1c]
mov dword [ebx], 0x224
mov dword [ebp - 0x1c], esp
mov eax, dword [ebp - 0x10]
push eax
push 0x224
call fcn.00526a16
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], 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
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x100
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 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 - 0xc]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_Module32First]
nop
nop
cmp dword [ebp - 0x1c], esp
je 0x4026cd
push 0x184
push 0x4017ad2
push 6
call fcn.00526a28
add esp, 0xc
push eax
mov ebx, dword [ebp - 0x20]
push ebx
mov edi, dword [ebp - 0x24]
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.005278a0
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 0x402754
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x402752
imul eax, dword [edi]
jmp 0x402747
mov ecx, eax
cmp ecx, 0x100
jle 0x402761
mov ecx, 0x100
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x100
push ebx
push edi
push 1
mov eax, 2
call fcn.005278a0
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 0x40279f
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40279d
imul eax, dword [edi]
jmp 0x402792
mov ecx, eax
cmp ecx, 0x104
jle 0x4027ac
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.00526a1c
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x402a1c
mov ebx, dword [ebp - 0x10]
add ebx, 0x14
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x1c]
mov eax, dword [ebx]
cmp dword [ebp - 4], eax
jl 0x402837
mov ebx, dword [ebp - 0x10]
add ebx, 0x14
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x10]
add ebx, 0x18
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x24]
fild dword [ebx]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
mov ebx, dword [ebp - 0x28]
fild dword [ebx]
fstp qword [ebp - 0x38]
fadd qword [ebp - 0x38]
fstp qword [ebp - 0x40]
fild dword [ebp - 4]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
fsub qword [ebp - 0x40]
fcomp qword [0x54d306]
fnstsw ax
test ah, 0x41
je 0x402837
mov eax, 1
jmp 0x40283c
mov eax, 0
test eax, eax
je 0x40285a
mov ebx, dword [ebp - 0x10]
add ebx, 0x14
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x1c]
mov eax, dword [ebx]
mov dword [ebp - 0x18], eax
jmp 0x402a1c
mov dword [ebp - 0x1c], esp
mov eax, dword [ebp - 0x10]
push eax
push 0x224
call fcn.00526a16
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], 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
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x100
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 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 - 0xc]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_Module32Next]
nop
nop
cmp dword [ebp - 0x1c], esp
je 0x40291d
push 0x2b5
push 0x4017ad2
push 6
call fcn.00526a28
add esp, 0xc
push eax
mov ebx, dword [ebp - 0x20]
push ebx
mov edi, dword [ebp - 0x24]
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.005278a0
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 0x4029a4
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x4029a2
imul eax, dword [edi]
jmp 0x402997
mov ecx, eax
cmp ecx, 0x100
jle 0x4029b1
mov ecx, 0x100
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x100
push ebx
push edi
push 1
mov eax, 2
call fcn.005278a0
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 0x4029ef
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x4029ed
imul eax, dword [edi]
jmp 0x4029e2
mov ecx, eax
cmp ecx, 0x104
jle 0x4029fc
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.00526a1c
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
jmp 0x4027c7
mov dword [ebp - 0x1c], esp
push dword [ebp - 0xc]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
cmp dword [ebp - 0x1c], esp
je 0x402a48
push 0x2eb
push 0x4017ad2
push 6
call fcn.00526a28
add esp, 0xc
mov eax, dword [ebp - 0x18]
jmp 0x402a50
push eax
mov ebx, dword [ebp - 8]
push ebx
call fcn.00526a1c
add esp, 4
mov ebx, dword [ebp - 0x10]
push ebx
add ebx, 0x20
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00526a1c
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00526a1c
add esp, 4
pop ebx
call fcn.00526a1c
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret