Function at 0x408af0
Capabilities:
Copy file
Terminate process

Disassembly:
push 0xffffffffffffffff
push 0x4288d0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x28
push ebx
push ebp
push esi
push edi
mov esi, ecx
push 0
call fcn.0040f0aa
push eax
call fcn.0040f07b
mov eax, dword [0x4346e4]
add esp, 8
mov dword [esp + 0x10], eax
mov dword [esp + 0x40], 0
mov dword [esp + 0x1c], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov bl, 3
push 0x104
push 0x104
lea ecx, [esp + 0x18]
mov byte [esp + 0x48], bl
call fcn.0041f383
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push 0xffffffffffffffff
lea ecx, [esp + 0x14]
call fcn.0041f3d2
push 0x5c
lea ecx, [esp + 0x14]
call fcn.0041e156
inc eax
lea ecx, [esp + 0x10]
push eax
lea eax, [esp + 0x24]
push eax
call fcn.0041e0de
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x44], 4
call fcn.0041f08c
lea ecx, [esp + 0x20]
mov byte [esp + 0x40], bl
call fcn.0041ef53
push 0x5c
lea ecx, [esp + 0x14]
call fcn.0041e156
inc eax
lea ecx, [esp + 0x20]
push eax
push ecx
lea ecx, [esp + 0x18]
call fcn.0041dfa9
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x44], 5
call fcn.0041f08c
lea ecx, [esp + 0x20]
mov byte [esp + 0x40], bl
call fcn.0041ef53
mov edi, dword [esp + 0x14]
push 0x104
push 0x104
lea ecx, [esp + 0x1c]
call fcn.0041f383
push eax
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetShortPathNameA]
call edi
push 0xffffffffffffffff
lea ecx, [esp + 0x18]
call fcn.0041f3d2
mov ebp, dword [esi + 0xf0]
add esi, 0xf0
push 0x104
push 0x104
mov ecx, esi
call fcn.0041f383
push eax
push ebp
call edi
or ebp, 0xffffffff
mov ecx, esi
push ebp
call fcn.0041f3d2
push esi
lea ecx, [esp + 0x20]
call fcn.0041f08c
call fcn.0040f088
push eax
call fcn.0040f088
push eax
call fcn.0040f088
push eax
call fcn.0040f088
push eax
lea edx, [esp + 0x28]
push str._d_d_d_d
push edx
call fcn.0041e4fe
add esp, 0x18
lea eax, [esp + 0x18]
lea ecx, [esp + 0x1c]
lea edx, [esp + 0x28]
push eax
push ecx
push edx
call fcn.0041f182
push str..tmp
push eax
lea eax, [esp + 0x2c]
mov byte [esp + 0x48], 6
push eax
call fcn.0041f1e8
mov esi, dword [eax]
lea ecx, [esp + 0x10]
lea edx, [esp + 0x14]
push ecx
lea eax, [esp + 0x24]
push edx
push eax
mov byte [esp + 0x4c], 7
call fcn.0041f182
mov eax, dword [eax]
push 0
push esi
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
lea ecx, [esp + 0x20]
call fcn.0041ef53
lea ecx, [esp + 0x24]
mov byte [esp + 0x40], 6
call fcn.0041ef53
lea ecx, [esp + 0x28]
mov byte [esp + 0x40], bl
call fcn.0041ef53
lea ecx, [esp + 0x18]
lea edx, [esp + 0x1c]
push ecx
lea eax, [esp + 0x28]
push edx
push eax
call fcn.0041f182
push str..tmp
lea ecx, [esp + 0x2c]
push eax
push ecx
mov byte [esp + 0x4c], 8
call fcn.0041f1e8
mov eax, dword [eax]
push 0x4332c8
push eax
call fcn.0040f98c
add esp, 8
lea ecx, [esp + 0x28]
mov esi, eax
call fcn.0041ef53
lea ecx, [esp + 0x24]
mov byte [esp + 0x40], bl
call fcn.0041ef53
test esi, esi
je 0x408d8f
push 2
push 0xfffffffffffffff0
push esi
call fcn.0040fb04
mov edx, dword [0x4346e4]
add esp, 0xc
mov dword [esp + 0x20], edx
mov byte [esp + 0x40], 9
call fcn.0040f088
push eax
call fcn.0040f088
push eax
call fcn.0040f088
push eax
call fcn.0040f088
push eax
lea eax, [esp + 0x30]
push str._d_d_d_d
push eax
call fcn.0041e4fe
mov ecx, dword [esp + 0x38]
push esi
push ecx
call fcn.0040fab6
push esi
call fcn.0040f88c
add esp, 0x24
lea ecx, [esp + 0x20]
mov byte [esp + 0x40], bl
call fcn.0041ef53
lea edx, [esp + 0x18]
lea eax, [esp + 0x1c]
push edx
lea ecx, [esp + 0x28]
push eax
push ecx
call fcn.0041f182
push str..bat
lea edx, [esp + 0x2c]
push eax
push edx
mov byte [esp + 0x4c], 0xa
call fcn.0041f1e8
mov eax, dword [eax]
push 0x4332bc
push eax
call fcn.0040f98c
add esp, 8
lea ecx, [esp + 0x28]
mov esi, eax
call fcn.0041ef53
lea ecx, [esp + 0x24]
mov byte [esp + 0x40], bl
call fcn.0041ef53
test esi, esi
je 0x40904a
push esi
push str._echo_off_n
call fcn.0040fab6
push esi
push str.ping__n_2_127.0.0.1_nul_n
call fcn.0040fab6
add esp, 0x10
lea eax, [esp + 0x14]
lea ecx, [esp + 0x20]
push eax
push str.del__f__q
push ecx
call fcn.0041f25c
lea edx, [esp + 0x10]
mov byte [esp + 0x40], 0xb
push edx
push eax
lea eax, [esp + 0x2c]
push eax
call fcn.0041f182
push 0x4329dc
lea ecx, [esp + 0x2c]
push eax
push ecx
mov byte [esp + 0x4c], 0xc
call fcn.0041f1e8
mov eax, dword [eax]
push esi
push eax
call fcn.0040fab6
add esp, 8
lea ecx, [esp + 0x28]
call fcn.0041ef53
lea ecx, [esp + 0x24]
mov byte [esp + 0x40], 0xb
call fcn.0041ef53
lea ecx, [esp + 0x20]
mov byte [esp + 0x40], bl
call fcn.0041ef53
lea edx, [esp + 0x1c]
lea eax, [esp + 0x34]
push edx
push str.copy
push eax
call fcn.0041f25c
lea ecx, [esp + 0x18]
lea edx, [esp + 0x30]
push ecx
push eax
push edx
mov byte [esp + 0x4c], 0xd
call fcn.0041f182
push 0x433284
push eax
lea eax, [esp + 0x34]
mov byte [esp + 0x48], 0xe
push eax
call fcn.0041f1e8
lea ecx, [esp + 0x14]
lea edx, [esp + 0x20]
push ecx
push eax
push edx
mov byte [esp + 0x4c], 0xf
call fcn.0041f182
lea ecx, [esp + 0x10]
lea edx, [esp + 0x24]
push ecx
push eax
push edx
mov byte [esp + 0x4c], 0x10
call fcn.0041f182
mov byte [esp + 0x40], 0x11
push 0x4329dc
push eax
lea eax, [esp + 0x30]
push eax
call fcn.0041f1e8
mov eax, dword [eax]
push esi
push eax
call fcn.0040fab6
add esp, 8
lea ecx, [esp + 0x28]
call fcn.0041ef53
lea ecx, [esp + 0x24]
mov byte [esp + 0x40], 0x10
call fcn.0041ef53
lea ecx, [esp + 0x20]
mov byte [esp + 0x40], 0xf
call fcn.0041ef53
lea ecx, [esp + 0x2c]
mov byte [esp + 0x40], 0xe
call fcn.0041ef53
lea ecx, [esp + 0x30]
mov byte [esp + 0x40], 0xd
call fcn.0041ef53
lea ecx, [esp + 0x34]
mov byte [esp + 0x40], bl
call fcn.0041ef53
lea ecx, [esp + 0x1c]
lea edx, [esp + 0x2c]
push ecx
push str.del__f__q
push edx
call fcn.0041f25c
lea ecx, [esp + 0x18]
lea edx, [esp + 0x30]
push ecx
push eax
push edx
mov byte [esp + 0x4c], 0x12
call fcn.0041f182
push str..tmp_n
push eax
lea eax, [esp + 0x3c]
mov byte [esp + 0x48], 0x13
push eax
call fcn.0041f1e8
mov eax, dword [eax]
push esi
push eax
call fcn.0040fab6
add esp, 8
lea ecx, [esp + 0x34]
call fcn.0041ef53
lea ecx, [esp + 0x30]
mov byte [esp + 0x40], 0x12
call fcn.0041ef53
lea ecx, [esp + 0x2c]
mov byte [esp + 0x40], bl
call fcn.0041ef53
push esi
push str.del__0
call fcn.0040fab6
push esi
call fcn.0040f88c
add esp, 0xc
push str.Shell32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x409051
push str.ShellExecuteA
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
test edi, edi
je 0x409051
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [esp + 0x18]
lea edx, [esp + 0x1c]
push ecx
lea eax, [esp + 0x34]
push edx
push eax
call fcn.0041f182
push str..bat
lea ecx, [esp + 0x38]
push eax
push ecx
mov byte [esp + 0x4c], 0x14
call fcn.0041f1e8
mov eax, dword [eax]
push 0
push 0
push 0
push eax
push 0
push 0
mov byte [esp + 0x58], 0x15
call edi
lea ecx, [esp + 0x34]
mov byte [esp + 0x40], 0x14
call fcn.0041ef53
lea ecx, [esp + 0x30]
mov byte [esp + 0x40], bl
call fcn.0041ef53
push 0
call fcn.0040f727
lea ecx, [esp + 0x18]
mov byte [esp + 0x40], 2
call fcn.0041ef53
lea ecx, [esp + 0x14]
mov byte [esp + 0x40], 1
call fcn.0041ef53
lea ecx, [esp + 0x1c]
mov byte [esp + 0x40], 0
call fcn.0041ef53
lea ecx, [esp + 0x10]
mov dword [esp + 0x40], ebp
call fcn.0041ef53
mov ecx, dword [esp + 0x38]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x34
ret