Function at 0x49cd80
Capabilities:
Acquire debug privileges
Enumerate process modules
Terminate process

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x124c
call fcn.00454620
mov eax, dword [0x4fe37c]
xor eax, ebp
mov dword [ebp - 0x101c], eax
mov dword [ebp - 0x1008], 0
push 0xffc
push 0
lea eax, [ebp - 0x1004]
push eax
call fcn.00445020
add esp, 0xc
lea ecx, [ebp - 8]
push ecx
push 0x1000
lea edx, [ebp - 0x1008]
push edx
call sub.PSAPI.DLL_EnumProcesses
test eax, eax
jne 0x49cdda
xor eax, eax
jmp 0x49d06a
mov eax, dword [ebp - 8]
shr eax, 2
mov dword [ebp - 4], eax
mov dword [ebp - 0x100c], 0
jmp 0x49cdfe
mov ecx, dword [ebp - 0x100c]
add ecx, 1
mov dword [ebp - 0x100c], ecx
mov edx, dword [ebp - 0x100c]
cmp edx, dword [ebp - 4]
jge 0x49d065
mov eax, dword [ebp - 0x100c]
cmp dword [ebp + eax*4 - 0x1008], 0
je 0x49d060
mov ecx, dword [ebp - 0x100c]
mov edx, dword [ebp + ecx*4 - 0x1008]
push edx
push 0
push 0x410
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0x1018], eax
cmp dword [ebp - 0x1018], 0
jne 0x49ce4d
jmp 0x49cdef
lea eax, [ebp - 0x1010]
push eax
push 4
lea ecx, [ebp - 0x1014]
push ecx
mov edx, dword [ebp - 0x1018]
push edx
call sub.PSAPI.DLL_EnumProcessModules
test eax, eax
jne 0x49ce97
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x122c], eax
cmp dword [ebp - 0x122c], 0x12b
jne 0x49ce97
mov eax, dword [ebp - 0x1018]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x49cdef
mov ecx, dword [str._unknown_]
mov dword [ebp - 0x1228], ecx
mov edx, dword [0x4dc628]
mov dword [ebp - 0x1224], edx
mov eax, dword [0x4dc62c]
mov dword [ebp - 0x1220], eax
mov ecx, dword [0x4dc630]
mov dword [ebp - 0x121c], ecx
mov edx, dword [0x4dc634]
mov dword [ebp - 0x1218], edx
push 0x1f4
push 0
lea eax, [ebp - 0x1214]
push eax
call fcn.00445020
add esp, 0xc
push 0x104
lea ecx, [ebp - 0x1228]
push ecx
mov edx, dword [ebp - 0x1014]
push edx
mov eax, dword [ebp - 0x1018]
push eax
call sub.PSAPI.DLL_GetModuleBaseNameW
test eax, eax
jne 0x49cf1f
mov ecx, dword [ebp - 0x1018]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x49d06a
lea edx, [ebp - 0x1228]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.004457ed
add esp, 8
test eax, eax
jne 0x49d060
lea ecx, [ebp - 0x1230]
push ecx
push 0xf01ff
mov edx, dword [ebp - 0x1018]
push edx
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
jne 0x49cf6b
mov eax, dword [ebp - 0x1018]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x49d06a
mov ecx, dword [ebp - 0x1018]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea edx, [ebp - 0x123c]
push edx
push str.SeDebugPrivilege
push 0
call dword [sym.imp.ADVAPI32.dll_LookupPrivilegeValueW]
test eax, eax
jne 0x49cf97
xor eax, eax
jmp 0x49d06a
mov dword [ebp - 0x124c], 1
mov eax, dword [ebp - 0x123c]
mov dword [ebp - 0x1248], eax
mov ecx, dword [ebp - 0x1238]
mov dword [ebp - 0x1244], ecx
mov dword [ebp - 0x1240], 2
push 0
push 0
push 0x10
lea edx, [ebp - 0x124c]
push edx
push 0
mov eax, dword [ebp - 0x1230]
push eax
call dword [sym.imp.ADVAPI32.dll_AdjustTokenPrivileges]
test eax, eax
jne 0x49cff4
mov ecx, dword [ebp - 0x1230]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x49d06a
mov edx, dword [ebp - 0x1230]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x100c]
mov ecx, dword [ebp + eax*4 - 0x1008]
push ecx
push 0
push 0xf01ff
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0x1234], eax
cmp dword [ebp - 0x1234], 0
jne 0x49d02f
xor eax, eax
jmp 0x49d06a
push 0
mov edx, dword [ebp - 0x1234]
push edx
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
test eax, eax
jne 0x49d053
mov eax, dword [ebp - 0x1234]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x49d06a
mov ecx, dword [ebp - 0x1234]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x49cdef
mov eax, 1
mov ecx, dword [ebp - 0x101c]
xor ecx, ebp
call fcn.004443e3
mov esp, ebp
pop ebp
ret