Function at 0x4782d0
Capabilities:
Enumerate processes
Get disk information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x486e75
mov eax, dword fs:[0]
push eax
sub esp, 0x678
mov eax, dword [0x4a7740]
xor eax, ebp
mov dword [ebp - 0x18], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x460], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x464], 0xffffffff
mov word [ebp - 0x45c], 0
push 0x206
push 0
lea eax, [ebp - 0x45a]
push eax
call fcn.00453b10
add esp, 0xc
mov dword [ebp - 0x24c], 0
push 0x228
push 0
lea ecx, [ebp - 0x248]
push ecx
call fcn.00453b10
add esp, 0xc
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x10], 0
lea ecx, [ebp - 0x468]
call fcn.00401d50
mov dword [ebp - 4], 0
call fcn.00477fe0
call fcn.00477f70
test eax, eax
je 0x47845a
lea ecx, [ebp - 0x680]
call fcn.00401d50
mov byte [ebp - 4], 1
mov word [ebp - 0x67c], 0
push 0x206
push 0
lea edx, [ebp - 0x67a]
push edx
call fcn.00453b10
add esp, 0xc
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
push ecx
push 0x492df4
lea edx, [ebp - 0x680]
push edx
call fcn.00410190
add esp, 0xc
push 0x104
lea eax, [ebp - 0x67c]
push eax
lea ecx, [ebp - 0x680]
call fcn.0041e8b0
push eax
call dword [sym.imp.KERNEL32.dll_QueryDosDeviceW]
lea ecx, [ebp - 0x67c]
push ecx
lea ecx, [ebp - 0x468]
call fcn.00401df0
lea edx, [ebp - 0x468]
push edx
call fcn.00478270
add esp, 4
mov eax, dword [ebp + 8]
push eax
call fcn.00450f30
add esp, 4
cmp eax, 3
jbe 0x478449
mov ecx, dword [ebp + 8]
add ecx, 6
push ecx
lea ecx, [ebp - 0x468]
call fcn.00401e30
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x680]
call fcn.00403340
jmp 0x478469
mov edx, dword [ebp + 8]
push edx
lea ecx, [ebp - 0x468]
call fcn.00401df0
push 0
push 2
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov dword [ebp - 0x464], eax
cmp dword [ebp - 0x464], 0xffffffff
jne 0x478486
jmp 0x4785d5
mov dword [ebp - 0x24c], 0x22c
lea eax, [ebp - 0x24c]
push eax
mov ecx, dword [ebp - 0x464]
push ecx
call sub.KERNEL32.dll_Process32FirstW
test eax, eax
jne 0x4784ac
jmp 0x4785d5
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [ebp - 0x46c], eax
mov edx, dword [ebp - 0x244]
cmp edx, dword [ebp - 0x46c]
je 0x4784d8
cmp dword [ebp - 0x244], 0
je 0x4784d8
cmp dword [ebp - 0x244], 4
jne 0x4784dd
jmp 0x4785ba
mov eax, dword [ebp - 0x244]
push eax
push 0
push 0x410
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0x250], eax
cmp dword [ebp - 0x250], 0
je 0x4785ba
mov dword [ebp - 0x14], 0
call fcn.00477f70
test eax, eax
je 0x47853b
cmp dword [0x4ab26c], 0
je 0x47853b
push 0x104
lea ecx, [ebp - 0x45c]
push ecx
mov edx, dword [ebp - 0x250]
push edx
call dword [0x4ab26c]
mov dword [ebp - 0x14], eax
jmp 0x478562
cmp dword [0x4ab268], 0
je 0x478562
push 0x104
lea eax, [ebp - 0x45c]
push eax
push 0
mov ecx, dword [ebp - 0x250]
push ecx
call dword [0x4ab268]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x4785a3
lea ecx, [ebp - 0x468]
call fcn.0041da10
cmp dword [ebp - 0x14], eax
jne 0x4785a3
lea edx, [ebp - 0x45c]
push edx
lea ecx, [ebp - 0x468]
call fcn.0041e8b0
push eax
call fcn.0045562a
add esp, 8
test eax, eax
jne 0x4785a3
mov dword [ebp - 0x254], 1
jmp 0x4785d5
mov eax, dword [ebp - 0x250]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x250], 0
lea ecx, [ebp - 0x24c]
push ecx
mov edx, dword [ebp - 0x464]
push edx
call sub.KERNEL32.dll_Process32NextW
test eax, eax
jne 0x4784b8
cmp dword [ebp - 0x250], 0
je 0x4785eb
mov eax, dword [ebp - 0x250]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x464], 0xffffffff
je 0x478601
mov ecx, dword [ebp - 0x464]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebp - 0x254]
mov dword [ebp - 0x684], edx
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x468]
call fcn.00403340
mov eax, dword [ebp - 0x684]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x18]
xor ecx, ebp
call fcn.00450ba2
mov esp, ebp
pop ebp
ret