Function at 0x405060
Capabilities:
Create directory
Get file attributes
Set file attributes

Disassembly:
sub esp, 0x3e8
mov al, byte [0x41b8cc]
push ebx
push ebp
push esi
push edi
mov byte [esp + 0x10], al
mov ecx, 0xf9
xor eax, eax
lea edi, [esp + 0x11]
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x3fc]
stosw word es:[edi], ax
push ecx
stosb byte es:[edi], al
call fcn.00405490
mov ebx, dword [sym.imp.USER32.dll_wsprintfA]
add esp, 4
test eax, eax
jne 0x40536f
mov edi, 0x41b8cc
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x10]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
movsx ebp, byte [esp + 0x3fc]
mov ecx, eax
push ebp
and ecx, 3
push str._c:_autorun.inf
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
push ecx
call ebx
add esp, 0xc
lea edx, [esp + 0x10]
push 0
push edx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
lea eax, [esp + 0x10]
push 7
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov edi, 0x41b8cc
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x10]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push ebp
mov eax, ecx
mov esi, edi
mov edi, edx
push str._c:_autorun.inflpt1_
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
push ecx
call ebx
add esp, 0xc
lea edx, [esp + 0x10]
push 0
push edx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
lea eax, [esp + 0x10]
push 7
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov edi, 0x41b8cc
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x10]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push ebp
mov eax, ecx
mov esi, edi
mov edi, edx
push str._c:_autorun.infcom1_
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
push ecx
call ebx
add esp, 0xc
push 0
lea edx, [esp + 0x14]
push edx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
lea eax, [esp + 0x10]
push 7
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov edi, 0x41b8cc
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x10]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push ebp
mov eax, ecx
mov esi, edi
mov edi, edx
push str._c:_autorun.infcon_
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
push ecx
call ebx
add esp, 0xc
lea edx, [esp + 0x10]
push 0
push edx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
lea eax, [esp + 0x10]
push 7
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov edi, 0x41b8cc
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x10]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push ebp
mov eax, ecx
mov esi, edi
mov edi, edx
push str._c:_autorun.inf_nul_
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
push ecx
call ebx
add esp, 0xc
lea edx, [esp + 0x10]
push 0
push edx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
lea eax, [esp + 0x10]
push 7
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov edi, 0x41b8cc
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x10]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push ebp
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x14]
push str._c:_autorun.infprn_
push ecx
call ebx
add esp, 0xc
lea edx, [esp + 0x10]
push 0
push edx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
lea eax, [esp + 0x10]
push 7
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov edi, 0x41b8cc
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x10]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push ebp
mov eax, ecx
mov esi, edi
mov edi, edx
push str._c:_autorun.inf__
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
push ecx
call ebx
add esp, 0xc
lea edx, [esp + 0x10]
push 0
push edx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
lea eax, [esp + 0x10]
push 7
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov edi, 0x41b8cc
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x10]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x404]
and ecx, 3
cmp eax, 1
rep movsb byte es:[edi], byte [esi]
jne 0x4053b0
mov ecx, dword [esp + 0x3fc]
push ecx
call fcn.00405490
add esp, 4
cmp eax, 1
push ebp
jne 0x40534a
lea edx, [esp + 0x14]
push str.Vaccine_drive__c:_OK_
push edx
call ebx
mov ecx, dword [esp + 0x40c]
add esp, 0xc
lea eax, [esp + 0x10]
push 0x40
push 0x41d504
push eax
push ecx
jmp 0x4053aa
lea edx, [esp + 0x14]
push str.Vaccine_drive__c:_FAIL_
push edx
call ebx
mov ecx, dword [esp + 0x40c]
add esp, 0xc
lea eax, [esp + 0x10]
push 0x40
push 0x41d504
push eax
push ecx
jmp 0x4053aa
cmp eax, 1
jne 0x4053b0
cmp dword [esp + 0x404], 1
jne 0x4053b0
movsx edx, byte [esp + 0x3fc]
push edx
lea eax, [esp + 0x14]
push str.We_found__c:_autorun.inf__may_be_already_Vaccined__or_Antivirus_denied_access__please_check_
push eax
call ebx
mov edx, dword [esp + 0x40c]
add esp, 0xc
lea ecx, [esp + 0x10]
push 0x40
push 0x41d504
push ecx
push edx
call dword [sym.imp.USER32.dll_MessageBoxA]
mov edi, 0x41b8cc
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x10]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x10]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movsx ecx, byte [esp + 0x3fc]
push ecx
push str._c:_autorun.inf
push edx
call ebx
add esp, 0xc
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
test eax, eax
je 0x40540a
lea ecx, [esp + 0x10]
push 7
push ecx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov edi, 0x41b8cc
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x10]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3e8
ret