Function at 0x4053eb
Capabilities:
Copy file
Get hostname
Move file
Read .ini file

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1104
call fcn.00408400
push ebx
push esi
xor ebx, ebx
xor esi, esi
cmp esi, 0x214cd
jge 0x405413
push ebx
call dword [sym.imp.KERNEL32.dll_SetLastError]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp esi, 0x1e9d5e41
jle 0x40542d
cmp dword [ebp - 0xc], 0xad5cf7
je 0x40542d
cmp dword [ebp - 0x44], 0xad4c41c
jne 0x405436
inc esi
cmp esi, 0x91be26a3
jb 0x4053fe
xor esi, esi
cmp esi, 0x420
jne 0x40544b
mov eax, 0x38d6
add dword [0x969e70], eax
cmp dword [0x969e70], 0x7a
jne 0x40545b
push ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
inc esi
cmp esi, 0x40dece
jl 0x405438
call fcn.004053d7
xor esi, esi
cmp dword [0x969e70], ebx
jbe 0x4054ba
push esi
call fcn.004051a8
cmp dword [0x969e70], 0x1f
jne 0x4054b1
call dword [sym.imp.KERNEL32.dll_AreFileApisANSI]
push ebx
lea eax, [ebp - 0xd04]
push eax
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 8]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetNamedPipeHandleStateW]
lea eax, [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
inc esi
cmp esi, dword [0x969e70]
jb 0x405473
mov esi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push edi
mov edi, 0x5aedbe7
cmp dword [0x969e70], 0x37
jne 0x40553a
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasExesLengthW]
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_EnumCalendarInfoW]
push ebx
lea eax, [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedExchange]
push ebx
push ebx
lea eax, [ebp - 0x504]
push eax
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStructA]
lea eax, [ebp - 0x68]
push eax
call esi
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_InterlockedCompareExchange]
push ebx
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_GetConsoleFontSize]
push ebx
call dword [sym.imp.KERNEL32.dll_LocalUnlock]
push ebx
call dword [sym.imp.KERNEL32.dll_CancelDeviceWakeupRequest]
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xd04]
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
lea eax, [ebp - 0x40]
push eax
call esi
dec edi
jne 0x4054c6
mov esi, 0x80b488
cmp dword [0x969e70], 0x2e
jne 0x405552
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cmp edi, 0x76069
jne 0x405566
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0x9682ec], eax
inc edi
cmp edi, 0x1756bb
jl 0x405542
push esi
push dword [0x9682ec]
mov byte [0x80b488], bl
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x80b484], eax
xor esi, esi
cmp esi, 0x1c
jne 0x405593
call fcn.004052d9
inc esi
cmp esi, 0x3debc7
jl 0x405589
push 0x420010
push dword [0x969e70]
push dword [0x9647ec]
call fcn.0040512f
mov edi, dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
xor esi, esi
cmp dword [0x969e70], 0x10
jne 0x4055d3
lea eax, [ebp - 4]
push eax
call edi
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.GDI32.dll_GetCharWidthA]
cmp esi, 0x1e674
jne 0x4055e0
call fcn.004052cb
inc esi
cmp esi, 0x3e4e2
jl 0x4055ba
mov esi, 0xdd7b3
cmp dword [0x969e70], 0x21
jne 0x4055ff
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_SetThreadToken]
dec esi
jne 0x4055ee
call fcn.00404eb1
cmp dword [0x969e70], 0x1144
mov esi, dword [sym.imp.KERNEL32.dll_MoveFileWithProgressA]
jne 0x405658
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_FindNextVolumeA]
push 0x40133c
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea eax, [ebp - 0x48]
push eax
call dword [sym.imp.KERNEL32.dll_CreateActCtxW]
push ebx
push ebx
push ebx
lea eax, [ebp - 0x104]
push eax
call dword [sym.imp.KERNEL32.dll_VerifyVersionInfoA]
push ebx
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
push ebx
call edi
push ebx
push ebx
push ebx
push ebx
push ebx
call esi
cmp dword [0x969e70], 0x1d
pop edi
jne 0x4056fd
push ebx
lea eax, [ebp - 4]
push eax
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_WriteConsoleW]
push 0x401350
call dword [sym.imp.KERNEL32.dll_GlobalFindAtomW]
push ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push ebx
push ebx
push ebx
push ebx
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_SetProcessAffinityMask]
call dword [sym.imp.KERNEL32.dll_GetACP]
push ebx
lea eax, [ebp - 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedExchange]
push ebx
push ebx
lea eax, [ebp - 0x504]
push eax
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStructW]
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CopyFileW]
push ebx
lea eax, [ebp - 0x1104]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemWindowsDirectoryA]
push ebx
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasesLengthA]
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x10]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_SetFileTime]
push ebx
lea eax, [ebp - 0x904]
push eax
push ebx
push 0x401368
push ebx
call dword [sym.imp.KERNEL32.dll_FoldStringA]
call fcn.004052c5
pop esi
xor eax, eax
pop ebx
leave
ret