Function at 0x420472
Capabilities:
Delete file
Get common file path
Move file

Disassembly:
push 0x1fc
mov eax, 0x43b04a
call fcn.00438b46
mov dword [ebp - 0x1f0], ecx
xor eax, eax
lea ecx, [ebp - 0x128]
mov ebx, eax
mov dword [ebp - 0x1d8], ebx
call fcn.004021e6
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x1f4], eax
jmp 0x42156c
lea ecx, [ebp - 0x70]
call fcn.004021e6
xor eax, eax
mov byte [ebp - 4], 1
push eax
push 0x3d
lea ecx, [ebp - 0x128]
mov byte [ebp - 0x1d1], al
call fcn.00411e22
mov esi, eax
cmp esi, 0xffffffff
je 0x42051c
push 0xffffffffffffffff
lea ecx, [esi + 1]
mov byte [ebp - 0x1d1], 1
push ecx
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x128]
call fcn.0040859e
push eax
lea ecx, [ebp - 0x70]
call fcn.00403060
lea ecx, [ebp - 0xa0]
call fcn.00401e5c
lea ecx, [ebp - 0x70]
call fcn.00416609
push esi
lea ecx, [ebp - 0x128]
call fcn.0040b47e
lea ecx, [ebp - 0x1ec]
call fcn.00403ae6
xor esi, esi
lea ecx, [ebp - 0x170]
mov dword [ebp - 0x1dc], esi
call fcn.004021e6
mov byte [ebp - 4], 3
jmp 0x420552
lea eax, [ebp - 0x170]
push eax
lea ecx, [ebp - 0x1ec]
call fcn.00421e48
lea eax, [ebp - 0x170]
push eax
lea edx, [ebp - 0x1dc]
lea ecx, [ebp - 0x70]
call fcn.0041636d
test al, al
jne 0x420540
mov edi, esi
push dword [edi*4 + 0x443a60]
lea ecx, [ebp - 0x40]
call fcn.00401d16
lea edx, [ebp - 0x40]
lea ecx, [ebp - 0x128]
call fcn.0040b880
lea ecx, [ebp - 0x40]
mov esi, eax
call fcn.00401e5c
test esi, esi
je 0x4205a3
inc edi
cmp edi, 0xe
jb 0x42056d
jmp case.default.0x4205ac
cmp edi, 0xd
ja case.default.0x4205ac
jmp dword [edi*4 + 0x42159a]
cmp dword [ebp + 8], 2
jne case.default.0x4205ac
lea ecx, [ebp - 0x58]
call fcn.004021e6
lea ecx, [ebp - 0x88]
call fcn.004021e6
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 5
call fcn.00411d9d
lea eax, [ebp - 0x88]
push eax
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x58]
call fcn.00410fab
lea ecx, [ebp - 0xc0]
call fcn.0040f8a6
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0xc0]
call fcn.0040f8d4
lea ecx, [ebp - 0x1d0]
call fcn.0040a752
mov byte [ebp - 4], 7
jmp 0x420805
xor edx, edx
lea ecx, [ebp - 0x1d0]
call fcn.0040f381
cmp byte [ebp - 0x1ac], 0
je 0x4206f2
lea ecx, [ebp - 0x28]
call fcn.004021e6
lea edx, [ebp - 0x28]
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x58]
call fcn.0041166d
lea ecx, [ebp - 0x28]
call fcn.00410f88
lea ecx, [ebp - 0x58]
call fcn.00401891
mov edx, eax
cmp edx, 4
jb 0x420677
lea ecx, [ebp - 0x28]
call fcn.00401891
cmp edx, eax
ja 0x420687
lea ecx, [ebp - 0x70]
call fcn.00410efb
test al, al
jne 0x420822
push 0
lea ecx, [ebp - 0x1d0]
call fcn.004085c4
xor eax, eax
mov dword [ebp - 0x10c], 3
push 0x14
mov dword [ebp - 0x110], eax
lea ecx, [ebp - 0x1d0]
mov dword [ebp - 0x104], eax
mov dword [ebp - 0xfe], eax
mov dword [ebp - 0xfa], eax
mov dword [ebp - 0xf6], eax
pop eax
mov word [ebp - 0x100], ax
call fcn.0040126f
mov dword [ebp - 0x108], eax
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.SHELL32.dll_SHFileOperationW]
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 7
call fcn.00401e5c
lea ecx, [ebp - 0x1d0]
call fcn.0040f325
cmp eax, 0xffffffff
je 0x420805
lea ecx, [ebp - 0x1d0]
call fcn.0040f5c1
test al, al
jne 0x420805
lea ecx, [ebp - 0x28]
call fcn.004021e6
mov byte [ebp - 4], 9
xor edi, edi
mov edx, edi
lea ecx, [ebp - 0x40]
call fcn.004062de
mov esi, eax
push 0x442944
lea edx, [ebp - 0x1d0]
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0xf0]
call fcn.00412066
push esi
mov edx, eax
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x158]
call fcn.0040db03
push str..tmp
mov edx, eax
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0xa0]
call fcn.0040138d
push eax
lea ecx, [ebp - 0x28]
call fcn.00403060
lea ecx, [ebp - 0xa0]
call fcn.00401e5c
lea ecx, [ebp - 0x158]
call fcn.00401e5c
lea ecx, [ebp - 0xf0]
call fcn.00401e5c
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 9
call fcn.00401e5c
lea ecx, [ebp - 0x28]
call fcn.0040f325
cmp eax, 0xffffffff
je 0x4207c5
inc edi
cmp edi, 0x3e8
jb 0x420727
lea ecx, [ebp - 0x28]
call fcn.0040126f
lea ecx, [ebp - 0x1d0]
mov edx, eax
call fcn.0040126f
push edx
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
je 0x4207f9
push 4
push 0
lea ecx, [ebp - 0x28]
call fcn.0040126f
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 7
call fcn.00401e5c
push ecx
lea eax, [ebp - 0x1d0]
push eax
lea ecx, [ebp - 0xc0]
call fcn.0040f8e8
test al, al
jne 0x420623
jmp 0x42082a
lea ecx, [ebp - 0x28]
call fcn.00401e5c
lea ecx, [ebp - 0x1d0]
call fcn.0040a776
lea ecx, [ebp - 0xc0]
call fcn.0040f8ba
lea ecx, [ebp - 0x88]
call fcn.00401e5c
lea ecx, [ebp - 0x58]
call fcn.00401e5c
jmp case.default.0x4205ac
cmp dword [ebp + 8], 0
jne case.default.0x4205ac
mov edi, 0x44aeb0
mov ecx, edi
call fcn.00405d09
test al, al
jne 0x42087c
push str._br_
call fcn.004085d6
cmp byte [ebp - 0x1d1], 0
je 0x42089d
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x158]
call fcn.00408cf5
mov byte [ebp - 4], 0xd
or ebx, 1
jmp 0x4208b9
lea eax, [ebp - 0x1f4]
push eax
lea ecx, [ebp - 0xa0]
call fcn.00421a90
mov dword [ebp - 4], 0xe
or ebx, 2
push eax
mov ecx, edi
mov dword [ebp - 0x1d8], ebx
call fcn.00401274
invalid