Function at 0x442780
Capabilities:
Check if file exists
Enumerate files on windows
Get disk information
Read file on windows

Disassembly:
push ebp
mov eax, 0x114c
mov ebp, esp
push edi
push esi
push ebx
call fcn.005d34c0
sub esp, eax
mov ebx, dword [0x8511c0]
and ebx, 0x4000
je 0x4427b0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], 0
lea esi, [ebp - 0x1018]
call dword [sym.imp.KERNEL32.dll_GetDriveTypeW]
sub esp, 4
cmp eax, 5
mov dword [ebp - 0x113c], eax
je 0x4427ff
mov eax, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
mov dword [esp], fcn.0061005c
lea esi, [ebp - 0x1018]
mov dword [ebp - 0x1140], eax
call eax
sub esp, 4
test eax, eax
jne 0x442992
cmp dword [ebp - 0x113c], 2
je 0x442865
mov dword [esp + 4], esi
mov dword [esp], 0x726fec
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
sub esp, 8
mov edi, eax
mov dword [esp], edi
call dword [sym.imp.KERNEL32.dll_FindClose]
sub esp, 4
test ebx, ebx
je 0x4427a0
mov ecx, dword [0x70b368]
call fcn.0042f760
mov eax, dword [0x851238]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x10
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [sym.imp.USER32.dll_SetTimer]
sub esp, 0x10
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], str.RECYCLER
call dword [ebp - 0x1140]
sub esp, 4
test eax, eax
jne 0x442a36
mov dword [esp + 4], esi
mov dword [esp], 0x726fec
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
sub esp, 8
mov edi, eax
mov dword [esp + 4], esi
mov dword [esp], edi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
sub esp, 8
test eax, eax
je 0x442815
test byte [ebp - 0x1018], 0x10
je 0x442893
lea eax, [ebp - 0xfec]
mov dword [esp + 4], 0x7268b8
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
sub esp, 8
test eax, eax
je 0x442893
lea eax, [ebp - 0xfec]
mov dword [esp + 4], str.System_Volume_Information
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
sub esp, 8
test eax, eax
je 0x442893
test byte [ebp - 0x1018], 2
je 0x442893
lea edx, [ebp - 0x111a]
lea eax, [ebp - 0x112c]
mov dword [esp + 4], str._ws_not_a_virus.txt
mov dword [ebp - 0x1128], 0
mov dword [ebp - 0x1120], pe_nt_image_headers32
mov dword [ebp - 0x1124], edx
xor edx, edx
mov dword [esp], eax
mov word [ebp - 0x111a], dx
lea edx, [ebp - 0xfec]
mov byte [ebp - 0x111c], 0
mov dword [ebp - method.g.virtual_0], vtable.g.0
mov dword [esp + 8], edx
call fcn.00403910
mov eax, dword [ebp - 0x1124]
mov dword [esp], eax
call dword [ebp - 0x1140]
sub esp, 4
test eax, eax
je 0x442ab0
mov eax, dword [ebp - 0x1128]
mov dword [ebp - method.nInst.virtual_0], vtable.nInst.0
test eax, eax
je 0x442893
mov dword [esp], eax
call fcn.006e9860
jmp 0x442893
mov dword [esp + 4], 0x726762
mov dword [esp], fcn.0061005c
call dword [sym.imp.msvcrt.dll__wfopen]
test eax, eax
mov edi, eax
je 0x442a8b
mov dword [esp + 0xc], eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0x1000
mov dword [esp], esi
call sub.msvcrt.dll_fread
mov dword [esp], edi
call sub.msvcrt.dll_fclose
mov byte [ebp - 0x19], 0
mov dword [esp + 4], str._NOT_A_VIRUS_
mov dword [esp], esi
mov edi, dword [sym.imp.SHELL32.dll_StrStrIA]
call edi
sub esp, 8
test eax, eax
jne 0x4427f6
mov dword [esp + 4], 0x726eee
mov dword [esp], esi
call edi
sub esp, 8
test eax, eax
je 0x4427f6
mov ecx, dword [0x70b368]
mov dword [esp + 4], 1
mov ebx, 1
mov dword [esp], 1
call fcn.0042f570
sub esp, 8
jmp 0x4427f6
mov dword [esp], str.RECYCLER_not_a_virus.txt
call dword [ebp - 0x1140]
sub esp, 4
test eax, eax
jne 0x44287d
mov ecx, dword [0x70b368]
mov dword [esp + 4], 1
mov dword [esp], 2
call fcn.0042f570
sub esp, 8
mov dword [esp + 4], esi
mov dword [esp], 0x726fec
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
sub esp, 8
mov edi, eax
mov ebx, 1
jmp 0x442893
call dword [sym.imp.msvcrt.dll__errno]
mov eax, dword [eax]
mov dword [esp + 4], str.NOTE:_cannot_open_autorun.inf__error:__d__n
mov dword [esp], 0x833180
mov dword [esp + 8], eax
call fcn.0041ee70
jmp 0x4427f6
lea eax, [ebp - 0xfec]
mov dword [esp + 4], str.VIRUS_WARNING:_hidden_folder__S_n
mov dword [esp], 0x833180
mov dword [esp + 8], eax
call fcn.0041ee70
mov ecx, dword [0x70b368]
mov dword [esp + 4], 1
mov dword [esp], 3
call fcn.0042f570
mov eax, dword [ebp - 0x1128]
sub esp, 8
mov dword [ebp - method.nInst.virtual_0], vtable.nInst.0
test eax, eax
je 0x442a81
mov dword [esp], eax
call fcn.006e9860
jmp 0x442a81