Function at 0x40228b
Capabilities:
Enumerate process modules

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50
mov dword [ebp - 4], 0
push 0x1c
call fcn.005080aa
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.005080aa
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 0x108
call fcn.005080aa
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x52b386
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.005080aa
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x52b38e
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 0x4028d3
call fcn.0040287f
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 0x40237b
push 0x9b
push 0x401615d
push 6
call fcn.005080bc
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 0x4023b5
push 0x12e
push 0x401615d
push 6
call fcn.005080bc
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 0x4023e9
push 0x12e
push 0x401615d
push 6
call fcn.005080bc
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.005080aa
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, pe_nt_image_headers32
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 0x4024be
push 0x184
push 0x401615d
push 6
call fcn.005080bc
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.005092b0
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 0x402545
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x402543
imul eax, dword [edi]
jmp 0x402538
mov ecx, eax
cmp ecx, 0x100
jle 0x402552
mov ecx, pe_nt_image_headers32
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.005092b0
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 0x402590
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40258e
imul eax, dword [edi]
jmp 0x402583
mov ecx, eax
cmp ecx, 0x104
jle 0x40259d
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.005080b0
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x40280d
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 0x402628
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 [0x52b37e]
fnstsw ax
test ah, 0x41
je 0x402628
mov eax, 1
jmp 0x40262d
mov eax, 0
test eax, eax
je 0x40264b
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 0x40280d
mov dword [ebp - 0x1c], esp
mov eax, dword [ebp - 0x10]
push eax
push 0x224
call fcn.005080aa
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, pe_nt_image_headers32
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 0x40270e
push 0x2b5
push 0x401615d
push 6
call fcn.005080bc
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.005092b0
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 0x402795
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x402793
imul eax, dword [edi]
jmp 0x402788
mov ecx, eax
cmp ecx, 0x100
jle 0x4027a2
mov ecx, pe_nt_image_headers32
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.005092b0
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 0x4027e0
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x4027de
imul eax, dword [edi]
jmp 0x4027d3
mov ecx, eax
cmp ecx, 0x104
jle 0x4027ed
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.005080b0
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
jmp 0x4025b8
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 0x402839
push 0x2eb
push 0x401615d
push 6
call fcn.005080bc
add esp, 0xc
mov eax, dword [ebp - 0x18]
jmp 0x402841
push eax
mov ebx, dword [ebp - 8]
push ebx
call fcn.005080b0
add esp, 4
mov ebx, dword [ebp - 0x10]
push ebx
add ebx, 0x20
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.005080b0
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.005080b0
add esp, 4
pop ebx
call fcn.005080b0
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret