Function at 0x402d10
Capabilities:
Enumerate process modules

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1240
call fcn.00422a20
mov eax, dword [0x45a080]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
push esi
mov esi, dword [ebp + 8]
mov ebx, ecx
push edi
mov ecx, 0x4690e3
mov dword [ebp - 0x1238], ebx
call fcn.00447953
lea eax, [ebx + 0xdc]
push eax
lea edi, [ebx + 0xec]
mov dword [ebp - 0x1234], eax
push 0x10
push edi
call fcn.0042a8b3
add esp, 0xc
mov ecx, esi
call fcn.00413be0
push eax
push 0x10
lea esi, [ebx + 0xdc]
push esi
call fcn.0042a8b3
add esp, 0xc
mov eax, esi
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x402d98
test cl, cl
je 0x402d94
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x402d98
add eax, 2
add edi, 2
test cl, cl
jne 0x402d78
xor eax, eax
jmp 0x402d9d
sbb eax, eax
or eax, 1
test eax, eax
mov ecx, 0x4522a0
push str.ProgramW6432
setne al
mov byte [ebx + 0xfc], al
lea eax, [ebx + 0xfd]
cmp byte [eax], 0
cmovne ecx, eax
lea eax, [ebp - 0x123c]
push eax
lea eax, [ebp - 0x1220]
mov dword [ebp - 0x1230], ecx
push eax
call fcn.0043408e
add esp, 0xc
test eax, eax
jne 0x402e58
mov eax, dword [ebp - 0x1220]
test eax, eax
je 0x402e58
push eax
lea eax, [ebp - 0x114]
push 0x104
push eax
call fcn.0042a8b3
add esp, 0xc
lea eax, [ebp - 0x114]
push str.ESETESET_SecurityeguiProxy.exe
push 0x104
push eax
call fcn.0042b5d6
add esp, 0xc
push 1
push dword [ebp - 0x1220]
call fcn.00421cfe
push 0x453754
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x1228]
push eax
call fcn.004313d1
mov eax, dword [ebp - 0x1228]
add esp, 0x14
test eax, eax
je 0x402e58
push eax
call fcn.00430cf9
add esp, 4
mov eax, 1
jmp 0x402e5a
xor eax, eax
test eax, eax
je 0x402f39
lea eax, [ebp - 0x1224]
push eax
push 0x1000
lea eax, [ebp - 0x121c]
push eax
call dword [sym.imp.KERNEL32.dll_K32EnumProcesses]
test eax, eax
je 0x402f39
mov ebx, dword [ebp - 0x1224]
xor edi, edi
shr ebx, 2
test ebx, ebx
je 0x402f39
nop word [eax + eax]
push dword [ebp + edi*4 - 0x121c]
push 0
push 0x410
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov esi, eax
test esi, esi
je 0x402f30
lea eax, [ebp - 0x1224]
push eax
push 4
lea eax, [ebp - 0x122c]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_K32EnumProcessModules]
test eax, eax
je 0x402f29
push 0x104
lea eax, [ebp - 0x21c]
push eax
push dword [ebp - 0x122c]
push esi
call dword [sym.imp.KERNEL32.dll_K32GetModuleBaseNameA]
test eax, eax
je 0x402f29
mov ecx, str.eguiProxy.exe
lea eax, [ebp - 0x21c]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402f20
test dl, dl
je 0x402f1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402f20
add eax, 2
add ecx, 2
test dl, dl
jne 0x402f00
xor eax, eax
jmp 0x402f25
sbb eax, eax
or eax, 1
test eax, eax
je 0x402fa1
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
inc edi
cmp edi, ebx
jl 0x402ea0
xor edx, edx
cmp dword [0x464680], 0xf
mov ecx, 0x46466c
mov eax, str._r_nESET
cmova ecx, dword [0x46466c]
test edx, edx
mov edx, 0x4522a0
cmove eax, edx
push eax
push dword [ebp - 0x1230]
mov eax, dword [ebp - 0x1238]
push ecx
push dword [ebp - 0x1234]
add eax, 0x10d
push 0x4523dc
push 0x80
push eax
call fcn.004013f0
mov ecx, dword [ebp - 8]
add esp, 0x1c
mov eax, dword [0x4618c4]
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.0042195a
mov esp, ebp
pop ebp
ret 4
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, 1
jmp 0x402f3b