Function at 0x466f30
Capabilities:
Enumerate process modules

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d4486
mov eax, dword fs:[0]
push eax
push ecx
push ebx
sub esp, 0xc8
mov eax, dword [0x689140]
xor eax, ebp
mov dword [ebp - 0x1c], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, ecx
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x88], eax
mov eax, dword [eax + 4]
cmp byte [eax + 0x40], 0
je 0x4671ba
mov eax, dword fs:[0x2c]
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov ecx, dword [eax]
mov eax, dword [0x6eeba0]
cmp eax, dword [ecx + 4]
jle 0x467008
push 0x6eeba0
call fcn.00598b38
add esp, 4
cmp dword [0x6eeba0], 0xffffffff
jne 0x467008
mov dword [ebp - 4], 0
call fcn.00442150
push 0xe
push str.ToolsSvc.exe
mov ecx, 0x6eeba4
lea edx, [eax + 0x3c]
call fcn.00439e90
push 0x5f0b90
call fcn.00598855
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
push 0x6eeba0
call fcn.00598ae7
add esp, 4
push 0x6eeba4
lea ecx, [ebp - 0xdc]
call fcn.00422b70
mov dword [ebp - 4], 1
lea ecx, [ebp - 0xc4]
push 0xd
xorps xmm0, xmm0
mov dword [ebp - 0xb4], 0
push str.aswEngSrv.exe
movups xmmword [ebp - 0xc4], xmm0
mov dword [ebp - 0xb0], 0
call fcn.00428c10
mov dword [ebp - 4], 2
lea esi, [ebp - 0xdc]
push 0x28
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
call fcn.005988b3
mov edi, eax
add esp, 4
mov dword [edi], edi
mov dword [edi + 4], edi
mov dword [edi + 8], edi
mov word [edi + 0xc], 0x101
mov dword [ebp - 0x24], edi
lea eax, [ebp - 0xac]
mov byte [ebp - 4], 3
cmp esi, eax
je 0x4670ac
push esi
push edi
lea ecx, [ebp - 0x24]
call fcn.0046a3f0
add esi, 0x18
lea eax, [ebp - 0xac]
cmp esi, eax
jne 0x467095
push 0x4024d0
push 2
push 0x18
lea eax, [ebp - 0xdc]
mov byte [ebp - 4], 5
push eax
call fcn.00599132
xorps xmm0, xmm0
mov dword [ebp - 0x2c], 0
movq qword [ebp - 0x34], xmm0
lea ecx, [ebp - 0x34]
push 0x200
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
call fcn.00445b80
mov eax, dword [ebp - 0x34]
push 0x800
push 0
push eax
lea edi, [eax + 0x800]
call fcn.0059a470
add esp, 0xc
mov dword [ebp - 0x30], edi
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x34]
nop dword [eax]
sub edi, ecx
lea edx, [ebp - 0x28]
sar edi, 2
push edx
lea eax, [edi*4]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_K32EnumProcesses]
test eax, eax
jne 0x4671d8
call dword [sym.imp.KERNEL32.dll_GetLastError]
movq xmm0, qword [str.dump]
lea edx, [ebp - 0x74]
mov dword [ebp - 0x74], eax
mov eax, dword [0x628468]
mov dword [ebp - 0x64], 0x34383843
mov ecx, dword [ebp - 0x64]
mov dword [ebp - 0x68], 0x39424137
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x3c], ecx
lea ecx, [ebp - 0x4c]
push 0x2c
push str.Unable_to_enumerate_processes__error_code_
movq qword [ebp - 0x4c], xmm0
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], 0x19c
call fcn.0045f820
add esp, 8
lea ecx, [ebp - 0x34]
call fcn.00445660
mov eax, dword [ebp - 0x24]
push dword [eax + 4]
lea eax, [ebp - 0x24]
push eax
mov ecx, eax
call fcn.0043a6b0
push 0x28
push dword [ebp - 0x24]
call fcn.0059886a
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.0059860b
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov edi, dword [ebp - 0x30]
mov edx, edi
mov ecx, dword [ebp - 0x34]
sub edx, ecx
mov esi, dword [ebp - 0x28]
shr esi, 2
sar edx, 2
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x7c], ecx
cmp edx, esi
jbe 0x4674cf
lea edi, [ecx + esi*4]
mov dword [ebp - 0x70], edi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x84], edi
mov dword [ebp - 0x74], ecx
cmp ecx, edi
je 0x467194
mov eax, dword [ecx]
push eax
push 0
push 0x1000
mov dword [ebp - 0x28], eax
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov esi, eax
mov dword [ebp - 0x50], esi
mov byte [ebp - 4], 7
test esi, esi
jne 0x46723e
mov ecx, dword [ebp - 0x7c]
add ecx, 4
mov byte [ebp - 4], 6
mov dword [ebp - 0x7c], ecx
jmp 0x467208
xorps xmm0, xmm0
mov dword [ebp - 0x54], 0x104
push 0x108
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x4c], xmm0
mov dword [ebp - 0x38], 7
call fcn.00428bb0
mov edx, eax
mov dword [ebp - 0x3c], 0x104
xor eax, eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x38], 0x107
mov ecx, 0x82
mov edi, edx
rep stosd dword es:[edi], eax
mov word [edx + 0x208], ax
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x54]
cmp dword [ebp - 0x38], 7
lea eax, [ebp - 0x4c]
push ecx
cmova eax, dword [ebp - 0x4c]
push eax
push 0
push esi
call dword [sym.imp.KERNEL32.dll_QueryFullProcessImageNameW]
test eax, eax
je 0x4674ab
mov ecx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x3c]
cmp ecx, eax
ja 0x4672d1
cmp dword [ebp - 0x38], 7
lea eax, [ebp - 0x4c]
mov dword [ebp - 0x3c], ecx
cmova eax, dword [ebp - 0x4c]
xor edx, edx
mov word [eax + ecx*2], dx
jmp 0x4672de
sub ecx, eax
push 0
push ecx
lea ecx, [ebp - 0x4c]
call fcn.00428730
mov ecx, esi
mov dword [ebp - 0x5c], 0
mov byte [ebp - 4], 9
call fcn.00446390
mov edi, dword [ebp - 0x70]
mov dword [ebp - 0x80], eax
mov dword [ebp - 4], 8
jmp 0x467333
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
cmp dword [ebp - 0x80], eax
je 0x4673a3
cmp dword [ebp - 0x38], 7
lea eax, [ebp - 0x4c]
push dword [ebp - 0x3c]
cmova eax, dword [ebp - 0x4c]
lea ecx, [ebp - 0xa0]
push eax
call fcn.00452eb0
add esp, 8
mov dword [ebp - 0x5c], eax
push eax
lea eax, [ebp - 0xac]
mov byte [ebp - 4], 0xb
or dword [ebp - 0x6c], 1
lea ecx, [ebp - 0x24]
push eax
call fcn.0046a2a0
mov eax, dword [ebp - 0xa4]
cmp byte [eax + 0xd], 0
jne 0x46739d
add eax, 0x10
push eax
push dword [ebp - 0x5c]
call fcn.0046a680
test al, al
jne 0x46739d
mov eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0x24]
jne 0x4673a3
mov byte [ebp - 0x55], 1
jmp 0x4673a7
mov byte [ebp - 0x55], 0
mov dword [ebp - 4], 8
mov eax, dword [ebp - 0x6c]
test al, 1
je 0x4673c6
and eax, 0xfffffffe
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x6c], eax
call fcn.00428f60
cmp byte [ebp - 0x55], 0
je 0x4673ed
lea ecx, [ebp - 0x4c]
call fcn.00428f60
push esi
mov byte [ebp - 4], 6
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 0x7c]
add ecx, 4
mov dword [ebp - 0x7c], ecx
jmp 0x467208
mov eax, dword [ebp - 0x78]
push 1
push dword [ebp - 0x28]
mov eax, dword [eax]
push 0
mov dword [ebp - 0x5c], eax
push str.Cause:_Process_watcher__connected_to_previous_dump
mov eax, dword [eax]
push 0
push 0
mov edi, dword [eax + 0x2c]
mov ecx, edi
call dword [0x5f2510]
mov ecx, dword [ebp - 0x5c]
call edi
test eax, eax
je 0x4674ab
mov eax, dword [ebp - 0x78]
push 1
push dword [ebp - 0x28]
mov eax, dword [eax]
mov dword [ebp - 0x5c], eax
push str.Cause:_Process_watcher__connected_to_previous_dump
push 0
mov eax, dword [eax]
push 0
mov edi, dword [eax + 0x28]
mov ecx, edi
call dword [0x5f2510]
mov ecx, dword [ebp - 0x5c]
call edi
test eax, eax
je 0x4674ab
movq xmm0, qword [str.dump]
lea edx, [ebp - 0x5c]
mov dword [ebp - 0x5c], eax
mov eax, dword [0x628468]
mov dword [ebp - 0x64], 0x34383843
mov ecx, dword [ebp - 0x64]
mov dword [ebp - 0x68], 0x39424137
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x90], ecx
lea ecx, [ebp - 0xa0]
push 0x32
push str.Connected_process_dump_unsuccessful__error_code_
movq qword [ebp - 0xa0], xmm0
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x8c], 0x1c8
call fcn.00469de0
add esp, 8
lea ecx, [ebp - 0x4c]
call fcn.00428f60
push esi
mov byte [ebp - 4], 6
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 0x7c]
mov edi, dword [ebp - 0x70]
add ecx, 4
mov dword [ebp - 0x7c], ecx
jmp 0x467208
add esi, 0xa
cmp esi, edx
jae 0x4674e1
lea edi, [ecx + esi*4]
mov dword [ebp - 0x30], edi
jmp 0x467120
jbe 0x467120
mov eax, dword [ebp - 0x2c]
sub eax, ecx
sar eax, 2
cmp esi, eax
jbe 0x467505
push ecx
push esi
lea ecx, [ebp - 0x34]
call fcn.0046a300
mov edi, dword [ebp - 0x30]
jmp 0x467116
sub esi, edx
shl esi, 2
push esi
push 0
push edi
call fcn.0059a470
add esp, 0xc
add edi, esi
mov dword [ebp - 0x30], edi
jmp 0x467116