Function at 0x41109a
Capabilities:
Enumerate processes

Disassembly:
push ebp
mov ebp, esp
push ebx
sub esp, 0x394
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14c], 0x128
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThread]
call eax
lea edx, [ebp - 0x24]
mov dword [esp + 0xc], edx
mov dword [esp + 8], 0
mov dword [esp + 4], 0x28
mov dword [esp], eax
mov eax, dword [sym.imp.ADVAPI32.dll_OpenThreadToken]
call eax
sub esp, 0x10
test eax, eax
jne 0x4111e0
mov eax, dword [sym.imp.KERNEL32.dll_GetLastError]
call eax
cmp eax, 0x3f0
jne 0x4111aa
mov dword [esp], 2
mov eax, dword [sym.imp.ADVAPI32.dll_ImpersonateSelf]
call eax
sub esp, 4
test eax, eax
jne 0x411145
mov dword [esp + 0x10], 0x4ec1ac
mov dword [esp + 0xc], global___func__.10
mov dword [esp + 8], 0x4e
mov dword [esp + 4], str.rootcheck_win_process.c
mov dword [esp], 0x4ec1f1
call dbg._mterror
mov eax, 0
jmp 0x411808
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThread]
call eax
lea edx, [ebp - 0x24]
mov dword [esp + 0xc], edx
mov dword [esp + 8], 0
mov dword [esp + 4], 0x28
mov dword [esp], eax
mov eax, dword [sym.imp.ADVAPI32.dll_OpenThreadToken]
call eax
sub esp, 0x10
test eax, eax
jne 0x4111e0
mov dword [esp + 0x10], 0x4ec1fc
mov dword [esp + 0xc], global___func__.10
mov dword [esp + 8], 0x55
mov dword [esp + 4], str.rootcheck_win_process.c
mov dword [esp], 0x4ec1f1
call dbg._mterror
mov eax, 0
jmp 0x411808
mov dword [esp + 0x10], 0x4ec1fc
mov dword [esp + 0xc], global___func__.10
mov dword [esp + 8], 0x59
mov dword [esp + 4], str.rootcheck_win_process.c
mov dword [esp], 0x4ec1f1
call dbg._mterror
mov eax, 0
jmp 0x411808
mov eax, dword [ebp - 0x24]
mov dword [esp + 4], 1
mov dword [esp], eax
call dbg.os_win32_setdebugpriv
test eax, eax
jne 0x411265
mov dword [esp + 0x10], str.os_win32_setdebugpriv
mov dword [esp + 0xc], global___func__.10
mov dword [esp + 8], 0x60
mov dword [esp + 4], str.rootcheck_win_process.c
mov dword [esp], 0x4ec1f1
call dbg._mterror
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
test eax, eax
jne 0x41125b
mov dword [esp + 0xc], str.Cant_close_handle
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0x63
mov dword [esp], str.rootcheck_win_process.c
call dbg._mdebug2
mov eax, 0
jmp 0x411808
mov dword [esp + 4], 0
mov dword [esp], 2
call sym._CreateToolhelp32Snapshot_8
sub esp, 8
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xffffffff
jne 0x4112f3
mov dword [esp + 0x10], 0x4ec24d
mov dword [esp + 0xc], global___func__.10
mov dword [esp + 8], 0x6c
mov dword [esp + 4], str.rootcheck_win_process.c
mov dword [esp], 0x4ec1f1
call dbg._mterror
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
test eax, eax
jne 0x4112e9
mov dword [esp + 0xc], str.Cant_close_handle
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0x6f
mov dword [esp], str.rootcheck_win_process.c
call dbg._mdebug2
mov eax, 0
jmp 0x411808
lea eax, [ebp - 0x14c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
call sym._Process32First_8
sub esp, 8
test eax, eax
jne 0x4113d9
lea eax, [ebp - 0x14c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
call sym._Process32Next_8
sub esp, 8
test eax, eax
jne 0x4113d9
mov dword [esp + 0x10], 0x4ec266
mov dword [esp + 0xc], global___func__.10
mov dword [esp + 8], 0x77
mov dword [esp + 4], str.rootcheck_win_process.c
mov dword [esp], 0x4ec1f1
call dbg._mterror
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
test eax, eax
jne 0x411397
mov dword [esp + 0xc], str.Cant_close_handle
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0x7a
mov dword [esp], str.rootcheck_win_process.c
call dbg._mdebug2
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
test eax, eax
jne 0x4113cf
mov dword [esp + 0xc], str.Cant_close_handle
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0x7e
mov dword [esp], str.rootcheck_win_process.c
call dbg._mdebug2
mov eax, 0
jmp 0x411808
call dbg.OSList_Create
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x411762
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
test eax, eax
jne 0x411423
mov dword [esp + 0xc], str.Cant_close_handle
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0x89
mov dword [esp], str.rootcheck_win_process.c
call dbg._mdebug2
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
test eax, eax
jne 0x41145b
mov dword [esp + 0xc], str.Cant_close_handle
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0x8d
mov dword [esp], str.rootcheck_win_process.c
call dbg._mdebug2
mov dword [esp + 0x10], 0x4ec278
mov dword [esp + 0xc], global___func__.10
mov dword [esp + 8], 0x90
mov dword [esp + 4], str.rootcheck_win_process.c
mov dword [esp], 0x4ec1f1
call dbg._mterror
mov eax, 0
jmp 0x411808
lea eax, [ebp - 0x14c]
add eax, 0x24
mov dword [esp], eax
call sym._strdup
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jne 0x4114f3
mov eax, dword [sym.imp.msvcrt.dll__errno]
call eax
mov eax, dword [eax]
mov dword [esp], eax
call sym._strerror
mov ebx, eax
mov eax, dword [sym.imp.msvcrt.dll__errno]
call eax
mov eax, dword [eax]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x4ec2a8
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0x9b
mov dword [esp], str.rootcheck_win_process.c
call dbg._merror_exit
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x370], 0x224
mov eax, dword [ebp - 0x144]
mov dword [esp + 4], eax
mov dword [esp], 8
call sym._CreateToolhelp32Snapshot_8
sub esp, 8
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xffffffff
jne 0x411586
mov eax, dword [ebp - 0x18]
mov dword [esp], eax
call sym._strdup
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x4116da
mov eax, dword [sym.imp.msvcrt.dll__errno]
call eax
mov eax, dword [eax]
mov dword [esp], eax
call sym._strerror
mov ebx, eax
mov eax, dword [sym.imp.msvcrt.dll__errno]
call eax
mov eax, dword [eax]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x4ec2a8
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0xa6
mov dword [esp], str.rootcheck_win_process.c
call dbg._merror_exit
lea eax, [ebp - 0x370]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call sym._Module32First_8
sub esp, 8
test eax, eax
jne 0x41163e
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
test eax, eax
jne 0x4115de
mov dword [esp + 0xc], str.Cant_close_handle
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0xab
mov dword [esp], str.rootcheck_win_process.c
call dbg._mdebug2
mov eax, dword [ebp - 0x18]
mov dword [esp], eax
call sym._strdup
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x4116da
mov eax, dword [sym.imp.msvcrt.dll__errno]
call eax
mov eax, dword [eax]
mov dword [esp], eax
call sym._strerror
mov ebx, eax
mov eax, dword [sym.imp.msvcrt.dll__errno]
call eax
mov eax, dword [eax]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x4ec2a8
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0xae
mov dword [esp], str.rootcheck_win_process.c
call dbg._merror_exit
lea eax, [ebp - 0x370]
add eax, 0x120
mov dword [esp], eax
call sym._strdup
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x4116a2
mov eax, dword [sym.imp.msvcrt.dll__errno]
call eax
mov eax, dword [eax]
mov dword [esp], eax
call sym._strerror
mov ebx, eax
mov eax, dword [sym.imp.msvcrt.dll__errno]
call eax
mov eax, dword [eax]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x4ec2a8
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0xb1
mov dword [esp], str.rootcheck_win_process.c
call dbg._merror_exit
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
test eax, eax
jne 0x4116da
mov dword [esp + 0xc], str.Cant_close_handle
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0xb4
mov dword [esp], str.rootcheck_win_process.c
call dbg._mdebug2
mov dword [esp + 4], 8
mov dword [esp], 1
call sym._calloc
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jne 0x41173f
mov eax, dword [sym.imp.msvcrt.dll__errno]
call eax
mov eax, dword [eax]
mov dword [esp], eax
call sym._strerror
mov ebx, eax
mov eax, dword [sym.imp.msvcrt.dll__errno]
call eax
mov eax, dword [eax]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x4ec2a8
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0xb8
mov dword [esp], str.rootcheck_win_process.c
call dbg._merror_exit
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x18]
mov dword [eax], edx
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0xc]
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x20]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call dbg.OSList_AddData
lea eax, [ebp - 0x14c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
call sym._Process32Next_8
sub esp, 8
test eax, eax
jne 0x411491
mov eax, dword [ebp - 0x24]
mov dword [esp + 4], 0
mov dword [esp], eax
call dbg.os_win32_setdebugpriv
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
test eax, eax
jne 0x4117cd
mov dword [esp + 0xc], str.Cant_close_handle
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0xc2
mov dword [esp], str.rootcheck_win_process.c
call dbg._mdebug2
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
test eax, eax
jne 0x411805
mov dword [esp + 0xc], str.Cant_close_handle
mov dword [esp + 8], global___func__.10
mov dword [esp + 4], 0xc6
mov dword [esp], str.rootcheck_win_process.c
call dbg._mdebug2
mov eax, dword [ebp - 0x10]
mov ebx, dword [ebp - 4]
leave
ret