Function at 0x422320
Capabilities:
Copy file
Delete file
Get common file path

Disassembly:
push 0x2a8
mov eax, 0x4791c0
call fcn.0045fd3a
mov eax, dword [ebp + 8]
mov dword [ebp - 0x274], eax
xor ebx, ebx
lea eax, [ebp - 0x26c]
mov edi, ecx
mov dword [ebp - 0x278], ebx
call fcn.00422220
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x258], ebx
jne 0x422371
xor edi, edi
inc edi
push ebx
push 1
lea esi, [ebp - 0x26c]
call fcn.0040144b
mov eax, edi
call fcn.0045fdbd
ret
xor eax, eax
push 0x206
mov word [ebp - 0x218], ax
lea eax, [ebp - 0x216]
push ebx
push eax
call fcn.00460930
add esp, 0xc
mov dword [ebp - 0x27c], ebx
call fcn.0040c914
mov dword [ebp - 0x278], eax
push 0x104
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov esi, dword [sym.imp.SHLWAPI.dll_PathAppendW]
push 0x484004
lea eax, [ebp - 0x218]
push eax
call esi
lea ecx, [ebp - 0x218]
call fcn.004222ae
push dword [ebp - 0x274]
lea eax, [ebp - 0x218]
push eax
call esi
push ebx
lea eax, [ebp - 0x218]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x422402
mov dword [ebp - 0x274], 8
jmp 0x42266d
push 3
push 0x4837a4
lea eax, [ebp - 0x218]
push eax
push 2
pop eax
call fcn.0040dbf0
test eax, eax
jne 0x42242b
mov dword [ebp - 0x274], 0xa
jmp 0x42264e
lea eax, [ebp - 0x234]
push eax
mov dword [ebp - 0x27c], 1
call fcn.00422267
pop ecx
mov byte [ebp - 4], 1
cmp dword [ebp - 0x254], 8
mov esi, dword [ebp - 0x268]
jae 0x42245b
lea esi, [ebp - 0x268]
cmp dword [ebp - 0x21c], 8
mov eax, dword [ebp - 0x230]
jae 0x422470
lea eax, [ebp - 0x230]
push 0x484014
push eax
mov edi, reloc.OLEAUT32.dll_SysReAllocString
call fcn.0040da1c
test eax, eax
je 0x422633
cmp dword [ebp - 0x21c], 8
mov eax, dword [ebp - 0x230]
jae 0x42249d
lea eax, [ebp - 0x230]
push 0x484020
push eax
mov esi, 0x4837b0
call fcn.0040da1c
test eax, eax
je 0x422633
push 0x4837a4
lea esi, [ebp - 0x2b4]
call fcn.00402cbb
push 0x484038
push eax
lea eax, [ebp - 0x250]
push eax
mov byte [ebp - 4], 2
call fcn.0040fe62
add esp, 0xc
push ebx
push 1
mov byte [ebp - 4], 4
call fcn.0040144b
push 0x48404c
lea eax, [ebp - 0x234]
push eax
call fcn.00402cfe
cmp dword [ebp - 0x238], 8
mov esi, dword [ebp - 0x24c]
jae 0x422510
lea esi, [ebp - 0x24c]
cmp dword [ebp - 0x21c], 8
mov eax, dword [ebp - 0x230]
jae 0x422525
lea eax, [ebp - 0x230]
push 0x484064
push eax
call fcn.0040da1c
test eax, eax
jne 0x422551
push ebx
push 1
lea esi, [ebp - 0x250]
mov dword [ebp - 0x274], 0xb
call fcn.0040144b
jmp 0x42263d
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x250]
push eax
lea esi, [ebp - 0x234]
call fcn.004039a0
push 0x22343
push 0x484084
lea ecx, [ebp - 0x298]
call fcn.0040d940
cmp dword [eax + 0x18], 8
pop ecx
pop ecx
jb 0x422588
mov eax, dword [eax + 4]
jmp 0x42258b
add eax, 4
cmp dword [ebp - 0x21c], 8
mov ecx, dword [ebp - 0x230]
jae 0x4225a0
lea ecx, [ebp - 0x230]
push 0x48408c
push ecx
mov esi, eax
call fcn.0040da1c
test eax, eax
je 0x4225dc
cmp dword [ebp - 0x21c], 8
mov eax, dword [ebp - 0x230]
jae 0x4225c6
lea eax, [ebp - 0x230]
push ebx
push 0x4840a0
push eax
call fcn.0040d9f8
mov byte [ebp - 0x26d], bl
test eax, eax
jne 0x4225e3
mov byte [ebp - 0x26d], 1
xor edi, edi
push ebx
inc edi
push edi
lea esi, [ebp - 0x298]
call fcn.0040144b
push ebx
lea esi, [ebp - 0x250]
push edi
cmp byte [ebp - 0x26d], bl
je 0x422616
mov dword [ebp - 0x274], 0xb
call fcn.0040144b
push ebx
push edi
jmp 0x422640
mov dword [ebp - 0x274], ebx
call fcn.0040144b
push ebx
push edi
lea esi, [ebp - 0x234]
mov byte [ebp - 4], bl
call fcn.0040144b
jmp 0x42266d
mov dword [ebp - 0x274], 0xb
push ebx
push 1
lea esi, [ebp - 0x234]
mov byte [ebp - 4], bl
call fcn.0040144b
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [ebp - 0x27c], ebx
je 0x42266d
push 0x4837a4
call fcn.0040dd7e
push dword [ebp - 0x278]
call fcn.0040c954
mov edi, dword [ebp - 0x274]
jmp 0x42235b