Function at 0x476a40
Capabilities:
Acquire debug privileges

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4ed6fb
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x2284
call fcn.004d3110
mov eax, dword [0x53f100]
xor eax, esp
mov dword [esp + 0x2280], eax
push ebx
push esi
push edi
mov eax, dword [0x53f100]
xor eax, esp
push eax
lea eax, [esp + 0x2298]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
push str.psapi.dll
mov dword [esp + 0x30], eax
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x24], 0
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov ebx, eax
mov dword [esp + 0x30], ebx
test ebx, ebx
je 0x476d00
push str.SeDebugPrivilege
call fcn.00476970
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
add esp, 4
push str.EnumProcesses
push ebx
call esi
push str.EnumProcessModules
push ebx
mov edi, eax
call esi
push str.GetModuleFileNameExW
push ebx
mov dword [esp + 0x44], eax
call esi
lea edx, [esp + 0x28]
push edx
mov dword [esp + 0x38], eax
push 0x400
lea eax, [esp + 0x8c]
push eax
call edi
mov esi, dword [esp + 0x28]
shr esi, 2
mov dword [esp + 0x40], esi
mov dword [esp + 0x1c], 0
test esi, esi
jle 0x476cf5
lea ecx, [esp + 0x84]
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x14]
mov eax, dword [edx]
push eax
push 0
push 0x410
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov ebx, eax
test ebx, ebx
je 0x476cdb
lea ecx, [esp + 0x28]
push ecx
push 0x10
lea edx, [esp + 0x4c]
push edx
push ebx
call dword [esp + 0x4c]
xor eax, eax
mov dword [esp + 0x18], eax
mov edx, dword [esp + eax*4 + 0x44]
push 0x104
lea ecx, [esp + 0x2088]
push ecx
push edx
push ebx
call dword [esp + 0x44]
test eax, eax
jne 0x476b7b
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x476cbe
cmp dword [ebp + 0xc], 0
je 0x476be0
lea eax, [esp + 0x2084]
lea edx, [eax + 2]
jmp 0x476b90
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x476b90
sub eax, edx
sar eax, 1
mov esi, eax
js 0x476bd7
jmp 0x476bb0
movzx eax, word [esp + esi*2 + 0x2084]
cmp ax, 0x5c
je 0x476bd7
movzx eax, ax
push eax
call fcn.004d03cd
add esp, 4
sub esi, 1
mov word [esp + esi*2 + 0x2086], ax
jns 0x476bb0
lea esi, [esp + esi*2 + 0x2086]
jmp 0x476be7
lea esi, [esp + 0x2084]
mov edi, dword [esp + 0x2c]
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push esi
push edi
push str.Looking_for___s_:__s
push ecx
call fcn.00478610
add esp, 0x10
call fcn.00476650
add esp, 4
push edi
push esi
call fcn.004cbbc8
add esp, 8
test eax, eax
jne 0x476cbe
push ecx
mov esi, esp
mov dword [esp + 0x28], esp
mov dword [esp + 0x28], esi
call fcn.004bcd4c
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
je 0x476d24
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esi], eax
mov ecx, str.____found__adding
mov dword [esp + 0x22a4], 0
test ecx, 0xffff0000
jne 0x476c7b
mov edx, ecx
movzx edi, dx
push edi
call fcn.004c4eeb
test eax, eax
je 0x476c95
push edi
push eax
mov ecx, esi
call fcn.00424e60
jmp 0x476c95
push str.____found__adding
call fcn.004cbe7a
add esp, 4
push eax
push str.____found__adding
mov ecx, esi
call fcn.004253b1
mov dword [esp + 0x22a4], 0xffffffff
call fcn.00476650
mov eax, dword [esp + 0x18]
add esp, 4
push eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x24], 1
call fcn.004575f2
mov eax, dword [esp + 0x18]
inc eax
cmp eax, 1
mov dword [esp + 0x18], eax
jl 0x476b55
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x1c]
add dword [esp + 0x14], 4
inc eax
cmp eax, esi
mov dword [esp + 0x1c], eax
jl 0x476b20
mov ebx, dword [esp + 0x30]
push ebx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x2298]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x2280]
xor ecx, esp
call fcn.004cb516
mov esp, ebp
pop ebp
ret
push 0x80004005
call fcn.00422000
int3