Function at 0x406969
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x573724
mov eax, dword fs:[0]
push eax
sub esp, 0x484
mov eax, dword [0x5e3c30]
xor eax, ebp
mov dword [ebp - 0x10], eax
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov byte [ebp - 0x414], 0
push 0x1ff
push 0
lea eax, [ebp - 0x413]
push eax
call fcn.00547d40
add esp, 0xc
mov byte [ebp - 0x214], 0
push 0x1ff
push 0
lea eax, [ebp - 0x213]
push eax
call fcn.00547d40
add esp, 0xc
mov eax, dword [ebp + 8]
mov dword [ebp - 0x454], eax
lea eax, [ebp - 0x414]
mov dword [ebp - 0x458], eax
mov eax, dword [ebp - 0x458]
mov dword [ebp - 0x45c], eax
mov eax, dword [ebp - 0x454]
mov al, byte [eax]
mov byte [ebp - 0x45d], al
mov eax, dword [ebp - 0x458]
mov cl, byte [ebp - 0x45d]
mov byte [eax], cl
mov eax, dword [ebp - 0x454]
inc eax
mov dword [ebp - 0x454], eax
mov eax, dword [ebp - 0x458]
inc eax
mov dword [ebp - 0x458], eax
cmp byte [ebp - 0x45d], 0
jne 0x4069f0
lea eax, [ebp - 0x414]
mov dword [ebp - 0x464], eax
mov eax, dword [ebp - 0x464]
inc eax
mov dword [ebp - 0x468], eax
mov eax, dword [ebp - 0x464]
mov al, byte [eax]
mov byte [ebp - 0x469], al
inc dword [ebp - 0x464]
cmp byte [ebp - 0x469], 0
jne 0x406a48
mov eax, dword [ebp - 0x464]
sub eax, dword [ebp - 0x468]
mov dword [ebp - 0x470], eax
mov eax, dword [ebp - 0x470]
movsx eax, byte [ebp + eax - 0x415]
cmp eax, 0x5c
jne 0x406ae0
lea eax, [ebp - 0x414]
mov dword [ebp - 0x474], eax
mov eax, dword [ebp - 0x474]
inc eax
mov dword [ebp - 0x478], eax
mov eax, dword [ebp - 0x474]
mov al, byte [eax]
mov byte [ebp - 0x479], al
inc dword [ebp - 0x474]
cmp byte [ebp - 0x479], 0
jne 0x406aa3
mov eax, dword [ebp - 0x474]
sub eax, dword [ebp - 0x478]
mov dword [ebp - 0x480], eax
mov eax, dword [ebp - 0x480]
mov byte [ebp + eax - 0x415], 0
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x484], eax
mov eax, dword [ebp - 0x484]
inc eax
mov dword [ebp - 0x488], eax
mov eax, dword [ebp - 0x484]
mov al, byte [eax]
mov byte [ebp - 0x489], al
inc dword [ebp - 0x484]
cmp byte [ebp - 0x489], 0
jne 0x406af6
mov eax, dword [ebp - 0x484]
sub eax, dword [ebp - 0x488]
mov dword [ebp - 0x490], eax
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0x490]
movsx eax, byte [eax - 1]
cmp eax, 0x5c
jne 0x406b50
push dword [ebp + 0xc]
push 0x5b333c
lea eax, [ebp - 0x214]
push eax
call fcn.00543f52
add esp, 0xc
jmp 0x406b67
push dword [ebp + 0xc]
push 0x5b3340
lea eax, [ebp - 0x214]
push eax
call fcn.00543f52
add esp, 0xc
lea ecx, [ebp - 0x450]
call fcn.00401d18
and dword [ebp - 4], 0
push str.Q
lea ecx, [ebp - 0x450]
call fcn.004076b0
push 0x45
lea ecx, [ebp - 0x450]
call fcn.004076c6
push 0x45
lea ecx, [ebp - 0x450]
call fcn.004076c6
push 0x61
lea ecx, [ebp - 0x450]
call fcn.004076c6
push 0x4d
lea ecx, [ebp - 0x450]
call fcn.004076c6
push 0x51
lea ecx, [ebp - 0x450]
call fcn.004076c6
push 0x45
lea ecx, [ebp - 0x450]
call fcn.004076c6
push 0x5d
lea ecx, [ebp - 0x450]
call fcn.004076c6
push 0x49
lea ecx, [ebp - 0x450]
call fcn.004076c6
push 0x59
lea ecx, [ebp - 0x450]
call fcn.004076c6
push 0x4068e1
lea eax, [ebp - 0x450]
push eax
push 0x5eebb8
call fcn.00408768
pop ecx
pop ecx
mov ecx, eax
call fcn.00407793
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x450]
call fcn.00401d44
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x434]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov dword [ebp - 0x430], 2
mov eax, 0x214
mov word [ebp - 0x424], ax
lea eax, [ebp - 0x414]
mov dword [ebp - 0x42c], eax
lea eax, [ebp - 0x214]
mov dword [ebp - 0x428], eax
lea eax, [ebp - 0x434]
push eax
call dword [sym.imp.SHELL32.dll_SHFileOperationA]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00543a33
leave
ret