Function at 0x42f0f9
Capabilities:
Move file

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, 0x1c28
call fcn.00434d30
mov eax, dword [0x485118]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x10]
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0x18]
push edi
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x1c10], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x1c08], eax
mov eax, dword [ebp + 0x24]
and dword [eax], 0
push 1
mov dword [ebp - 0x1c28], eax
lea eax, [ebx + 0x1a12c]
push eax
push edx
push ecx
push 0x200
mov dword [ebp - 0x1c1c], eax
lea eax, [ebp - 0x404]
push eax
push dword [ebp - 0x1c08]
mov dword [ebp - 0x1c24], edi
push dword [ebp - 0x1c10]
mov dword [ebp - 0x1c18], ecx
push esi
mov dword [ebp - 0x1c20], edx
mov dword [ebp - 0x1c0c], esi
call fcn.0042969f
test eax, eax
je 0x42f331
mov dword [ebp - 0x1c14], edi
lea eax, [ebp - 0xc04]
sub dword [ebp - 0x1c14], eax
xor esi, esi
push esi
lea eax, [ebp - 0x404]
push eax
push dword [ebp - 0x1c08]
lea eax, [ebp - 0xc04]
push esi
push eax
call dword [sym.imp.msvcrt.dll__wmakepath]
add esp, 0x14
lea eax, [ebp - 0xc04]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x1c14]
mov word [edx + eax], cx
inc eax
inc eax
cmp cx, si
jne 0x42f1ca
cmp dword [ebx + 0x5ef4], esi
jne case.0x42f20d.3
push esi
push edi
call dword [sym.imp.msvcrt.dll__waccess]
cmp eax, 0xffffffff
pop ecx
pop ecx
je case.0x42f20d.3
movzx eax, word [ebx + 0x5ef8]
cmp eax, 7
ja case.default.0x42f20d
jmp dword [eax*4 + 0x42f52d]
push 0x2e
push dword [ebp - 0x1c0c]
call dword [sym.imp.msvcrt.dll_wcsrchr]
cmp eax, esi
pop ecx
pop ecx
je 0x42f2b1
mov edx, 0x401e88
mov ecx, eax
mov si, word [ecx]
cmp si, word [edx]
jne 0x42f259
test si, si
je 0x42f255
mov si, word [ecx + 2]
cmp si, word [edx + 2]
jne 0x42f259
add ecx, 4
add edx, 4
test si, si
jne 0x42f233
xor ecx, ecx
jmp 0x42f25e
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x42f298
mov edx, 0x401e7c
mov ecx, eax
mov si, word [ecx]
cmp si, word [edx]
jne 0x42f28f
test si, si
je 0x42f28b
mov si, word [ecx + 2]
cmp si, word [edx + 2]
jne 0x42f28f
add ecx, 4
add edx, 4
test si, si
jne 0x42f269
xor ecx, ecx
jmp 0x42f294
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x42f2b1
mov ecx, 0x402330
mov edx, eax
sub edx, ecx
movzx eax, word [ecx]
mov word [edx + ecx], ax
inc ecx
inc ecx
test ax, ax
jne 0x42f2a1
jmp 0x42f2f2
mov edi, dword [ebp - 0x1c0c]
dec edi
dec edi
mov ax, word [edi + 2]
inc edi
inc edi
test ax, ax
jne 0x42f2b9
mov esi, 0x402330
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x42f2ec
mov edi, dword [ebp - 0x1c0c]
dec edi
dec edi
mov ax, word [edi + 2]
inc edi
inc edi
test ax, ax
jne 0x42f2d7
push 6
pop ecx
mov esi, 0x402318
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x1c24]
push 1
push dword [ebp - 0x1c1c]
lea eax, [ebp - 0x404]
push dword [ebp - 0x1c20]
push dword [ebp - 0x1c18]
push 0x200
push eax
push dword [ebp - 0x1c08]
push dword [ebp - 0x1c10]
push dword [ebp - 0x1c0c]
call fcn.0042969f
test eax, eax
jne 0x42f1a3
and word [edi], 0
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004347dd
leave
ret 0x20
push dword [ebp - 0x1c10]
push edi
call fcn.0042ead0
jmp case.default.0x42f20d
xor eax, eax
movzx ecx, word [ebp + eax - 0x404]
mov word [ebp + eax - 0x1404], cx
inc eax
inc eax
cmp cx, si
jne 0x42f359
xor eax, eax
movzx ecx, word [ebp + eax - 0x404]
mov word [ebp + eax - 0x804], cx
inc eax
inc eax
cmp cx, si
jne 0x42f372
lea eax, [ebp - 0x804]
push 0x2e
push eax
call dword [sym.imp.msvcrt.dll_wcsrchr]
cmp eax, esi
pop ecx
pop ecx
je 0x42f427
mov edx, 0x401e88
mov ecx, eax
mov si, word [ecx]
cmp si, word [edx]
jne 0x42f3cf
test si, si
je 0x42f3cb
mov si, word [ecx + 2]
cmp si, word [edx + 2]
jne 0x42f3cf
add ecx, 4
add edx, 4
test si, si
jne 0x42f3a9
xor ecx, ecx
jmp 0x42f3d4
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x42f40e
mov edx, 0x401e7c
mov ecx, eax
mov si, word [ecx]
cmp si, word [edx]
jne 0x42f405
test si, si
je 0x42f401
mov si, word [ecx + 2]
cmp si, word [edx + 2]
jne 0x42f405
add ecx, 4
add edx, 4
test si, si
jne 0x42f3df
xor ecx, ecx
jmp 0x42f40a
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x42f427
mov ecx, 0x402330
mov edx, eax
sub edx, ecx
movzx eax, word [ecx]
mov word [edx + ecx], ax
inc ecx
inc ecx
test ax, ax
jne 0x42f417
jmp 0x42f443
lea edi, [ebp - 0x804]
dec edi
dec edi
mov ax, word [edi + 2]
inc edi
inc edi
test ax, ax
jne 0x42f42f
mov esi, 0x402330
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
push 1
push dword [ebp - 0x1c1c]
lea eax, [ebp - 0x1004]
push dword [ebp - 0x1c20]
push dword [ebp - 0x1c18]
push 0x200
push eax
push dword [ebp - 0x1c08]
lea eax, [ebp - 0x804]
push dword [ebp - 0x1c10]
push eax
call fcn.0042969f
test eax, eax
je case.0x42f20d.3
lea ecx, [ebp - 0x1004]
lea eax, [ebp - 0x1404]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x42f4b5
test dx, dx
je 0x42f4b1
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x42f4b5
add eax, 4
add ecx, 4
test dx, dx
jne 0x42f48f
xor eax, eax
jmp 0x42f4ba
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je case.0x42f20d.3
mov esi, dword [sym.imp.USER32.dll_wsprintfW]
lea eax, [ebp - 0x1404]
push eax
push dword [ebp - 0x1c08]
mov edi, 0x40230c
lea eax, [ebp - 0x1804]
push edi
push eax
call esi
lea eax, [ebp - 0x1004]
push eax
push dword [ebp - 0x1c08]
lea eax, [ebp - 0x1c04]
push edi
push eax
call esi
add esp, 0x20
lea eax, [ebp - 0x1c04]
push eax
lea eax, [ebp - 0x1804]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileW]
jmp case.0x42f20d.3
mov eax, dword [ebp - 0x1c28]
mov dword [eax], 1
mov word [edi], si
jmp case.0x42f20d.3