Function at 0x40c2d5
Capabilities:
Delete file
Move file

Disassembly:
push 0x85c
mov eax, 0x4b40bc
call fcn.0049174a
mov eax, dword [ebp + 8]
mov dword [ebp - 0x6c8], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x6f0], eax
mov eax, dword [ebp + 0x14]
xor ebx, ebx
mov dword [ebp - 0x6c4], eax
mov dword [ebp - 0x6c0], ebx
xor eax, eax
mov esi, ecx
mov dword [ebp - 0x668], 7
mov dword [ebp - 0x66c], ebx
mov word [ebp - 0x67c], ax
push ebx
push ebx
lea eax, [ebp - 0x70c]
mov dword [ebp - 4], ebx
call fcn.00431ce9
push str.addition
lea ecx, [ebp - 0x6ec]
mov byte [ebp - 4], 3
call fcn.004026bb
lea eax, [ebp - 0x70c]
push eax
sub esp, 0x1c
mov byte [ebp - 4], 4
mov ecx, esp
mov dword [ebp - 0x6cc], esp
mov edi, 0x4b8448
push edi
mov dword [ebp - 0x6c0], 1
call fcn.004026bb
lea eax, [ebp - 0x6ec]
push eax
lea eax, [ebp - 0x664]
push eax
call fcn.00406a70
add esp, 0x24
mov dword [ebp - 4], 5
mov ecx, eax
mov dword [ebp - 0x6c0], 3
call fcn.0040122b
pop ecx
test al, al
je 0x40c3b4
cmp byte [ebp - 0x704], 7
mov byte [ebp - 0x6b9], 1
je 0x40c3ba
mov byte [ebp - 0x6b9], bl
push ebx
push 1
lea ecx, [ebp - 0x664]
call fcn.00402abb
push ebx
push 1
lea ecx, [ebp - 0x6ec]
mov dword [ebp - 4], 3
call fcn.00402abb
cmp byte [ebp - 0x6b9], bl
je 0x40c47c
push str.__attach
lea ecx, [ebp - 0x6ec]
call fcn.004026bb
sub esp, 0x1c
mov byte [ebp - 4], 6
mov ecx, esp
mov dword [ebp - 0x6cc], esp
push edi
call fcn.004026bb
lea eax, [ebp - 0x6ec]
push eax
lea eax, [ebp - 0x648]
push eax
lea esi, [ebp - 0x70c]
call fcn.00406a70
add esp, 0x24
push eax
lea ecx, [ebp - 0x664]
mov byte [ebp - 4], 7
call fcn.004011eb
pop ecx
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x680]
push ecx
mov byte [ebp - 4], 8
call fcn.00402b06
push ebx
push 1
lea esi, [ebp - 0x664]
call fcn.00402bb8
push ebx
push 1
lea ecx, [ebp - 0x648]
call fcn.00402abb
push ebx
push 1
lea ecx, [ebp - 0x6ec]
mov byte [ebp - 4], 3
call fcn.00402abb
cmp dword [ebp - 0x66c], ebx
jne 0x40c4ba
push str._g0W
push dword [ebp - 0x6c8]
call fcn.0044707a
pop ecx
pop ecx
lea esi, [ebp - 0x70c]
mov byte [ebp - 4], bl
call fcn.0043102f
push ebx
push 1
lea esi, [ebp - 0x680]
call fcn.00402bb8
xor eax, eax
inc eax
jmp 0x40ceb2
push 0x4b97d0
lea eax, [ebp - 0x680]
push eax
call fcn.0040ba92
push eax
lea esi, [ebp - 0x69c]
call fcn.00402723
push 0x4b97d4
mov eax, esi
push eax
mov byte [ebp - 4], 9
call fcn.0040ba92
cmp dword [ebp - 0x684], 8
mov ecx, dword [ebp - 0x698]
jae 0x40c4fd
lea ecx, [ebp - 0x698]
lea eax, [ebp - 0x814]
push eax
call fcn.0042506b
push eax
lea eax, [ebp - 0x6b8]
push eax
mov byte [ebp - 4], 0xa
call fcn.00439717
pop ecx
pop ecx
xor edi, edi
push ebx
inc edi
push edi
lea ecx, [ebp - 0x814]
mov byte [ebp - 4], 0xc
call fcn.00402abb
cmp dword [ebp - 0x6a4], ebx
jne 0x40c54f
push 0x4b97f4
push dword [ebp - 0x6c8]
call fcn.0044707a
pop ecx
pop ecx
jmp 0x40ce7b
push ebx
push ebx
lea eax, [ebp - 0x73c]
call fcn.00431ce9
push eax
lea ecx, [ebp - 0x6b8]
mov byte [ebp - 4], 0xf
call fcn.0040122b
pop ecx
test al, al
je 0x40ce5a
cmp byte [ebp - 0x734], 7
jne 0x40ce5a
xor eax, eax
mov esi, 0x206
push esi
mov word [ebp - 0x424], ax
lea eax, [ebp - 0x422]
push ebx
push eax
call fcn.00492360
add esp, 0xc
xor eax, eax
push esi
mov word [ebp - 0x62c], ax
lea eax, [ebp - 0x62a]
push ebx
push eax
call fcn.00492360
mov eax, dword [ebp - 0x67c]
add esp, 0xc
cmp dword [ebp - 0x668], 8
jae 0x40c5d0
lea eax, [ebp - 0x67c]
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyW]
push eax
lea eax, [ebp - 0x424]
push eax
call esi
push dword [ebp - 0x6f0]
lea eax, [ebp - 0x62c]
push eax
call esi
mov esi, dword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
lea eax, [ebp - 0x424]
push eax
call esi
lea eax, [ebp - 0x62c]
push eax
call esi
lea eax, [ebp - 0x79c]
push eax
mov dword [ebp - 0x6c0], ebx
call fcn.004055c3
lea eax, [ebp - 0x7bc]
push eax
mov byte [ebp - 4], 0x10
call fcn.004055c3
lea eax, [ebp - 0x75c]
push eax
mov byte [ebp - 4], 0x11
call fcn.004055c3
lea eax, [ebp - 0x77c]
push eax
mov byte [ebp - 4], 0x12
call fcn.004055c3
lea eax, [ebp - 0x724]
push eax
lea ecx, [ebp - 0x73c]
mov byte [ebp - 4], 0x13
mov dword [ebp - 0x6c8], ebx
call fcn.004320ab
mov byte [ebp - 4], 0x14
push dword [ebp - 0x718]
lea edi, [ebp - 0x724]
lea esi, [ebp - 0x6f4]
call fcn.0042015e
mov eax, dword [ebp - 0x6f4]
mov dword [ebp - 0x6d0], eax
mov eax, dword [ebp - 0x6f0]
mov dword [ebp - 0x6cc], eax
push dword [ebp - 0x714]
lea edi, [ebp - 0x724]
lea esi, [ebp - 0x6f4]
call fcn.0042015e
cmp dword [ebp - 0x6d0], ebx
je 0x40c6c5
mov eax, dword [ebp - 0x6d0]
cmp eax, dword [ebp - 0x6f4]
je 0x40c6ca
call fcn.00490386
mov eax, dword [ebp - 0x6cc]
cmp eax, dword [ebp - 0x6f0]
je 0x40caab
lea esi, [ebp - 0x6d0]
call fcn.0041fa4c
push eax
lea ecx, [ebp - 0x648]
call fcn.004011eb
pop ecx
mov byte [ebp - 4], 0x15
cmp dword [ebp - 0x630], 8
mov eax, dword [ebp - 0x644]
jae 0x40c70d
lea eax, [ebp - 0x644]
push eax
lea ecx, [ebp - 0x664]
call fcn.00406ad2
pop ecx
mov byte [ebp - 4], 0x16
cmp dword [ebp - 0x650], ebx
jne 0x40c767
cmp dword [ebp - 0x630], 8
mov eax, dword [ebp - 0x644]
jae 0x40c73b
lea eax, [ebp - 0x644]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push eax
lea esi, [ebp - 0x6ec]
call fcn.00402703
mov eax, esi
push eax
lea eax, [ebp - 0x7c8]
push eax
mov byte [ebp - 4], 0x17
lea eax, [ebp - 0x79c]
jmp 0x40c968
lea eax, [ebp - 0x6ec]
push eax
push ecx
lea esi, [ebp - 0x6d0]
call fcn.0041fa4c
lea ecx, [ebp - 0x73c]
push ecx
call fcn.00431fff
pop ecx
push eax
call fcn.0043121e
push eax
lea eax, [ebp - 0x664]
push eax
mov byte [ebp - 4], 0x18
call fcn.0040be61
pop ecx
neg al
sbb al, al
pop ecx
xor edi, edi
push ebx
inc al
inc edi
push edi
lea ecx, [ebp - 0x6ec]
mov byte [ebp - 0x6b9], al
mov byte [ebp - 4], 0x16
call fcn.00402abb
cmp byte [ebp - 0x6b9], bl
je 0x40c825
cmp dword [ebp - 0x630], 8
mov eax, dword [ebp - 0x644]
jae 0x40c7dd
lea eax, [ebp - 0x644]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push eax
lea esi, [ebp - 0x6ec]
call fcn.00402703
mov eax, esi
push eax
lea eax, [ebp - 0x7e0]
push eax
lea eax, [ebp - 0x7bc]
push eax
mov byte [ebp - 4], 0x19
call fcn.0040d4ad
push ebx
push edi
call fcn.00402bb8
push ebx
push edi
lea ecx, [ebp - 0x664]
call fcn.00402abb
push ebx
push edi
jmp 0x40ca8c
xor eax, eax
push 0x206
mov word [ebp - 0x21c], ax
lea eax, [ebp - 0x21a]
push ebx
push eax
call fcn.00492360
mov eax, dword [ebp - 0x644]
add esp, 0xc
cmp dword [ebp - 0x630], 8
jae 0x40c858
lea eax, [ebp - 0x644]
lea ecx, [ebp - 0x21c]
push ecx
lea ecx, [ebp - 0x62c]
push ecx
lea ecx, [ebp - 0x424]
push ecx
push eax
call fcn.0042778f
lea edi, [ebp - 0x21c]
call fcn.00424f01
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, edi
push eax
call esi
cmp dword [ebp + 0xc], 2
jne 0x40c981
mov eax, dword [ebp - 0x644]
push 8
pop edi
cmp dword [ebp - 0x630], edi
jae 0x40c8aa
lea eax, [ebp - 0x644]
push ebx
push 1
push eax
call fcn.00444706
add esp, 0xc
test eax, eax
mov eax, dword [ebp - 0x644]
jne 0x40c8f0
cmp dword [ebp - 0x630], edi
jae 0x40c8ce
lea eax, [ebp - 0x644]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push eax
lea esi, [ebp - 0x6ec]
call fcn.00402703
mov eax, esi
push eax
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x7d4]
jmp 0x40c961
cmp dword [ebp - 0x630], edi
jae 0x40c8fe
lea eax, [ebp - 0x644]
push 2
lea ecx, [ebp - 0x21c]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
test eax, eax
jne 0x40c9ff
mov eax, dword [ebp - 0x644]
cmp dword [ebp - 0x630], edi
jae 0x40c92a
lea eax, [ebp - 0x644]
push eax
call esi
mov eax, dword [ebp - 0x644]
cmp dword [ebp - 0x630], edi
jae 0x40c941
lea eax, [ebp - 0x644]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push eax
lea esi, [ebp - 0x6ec]
call fcn.00402703
mov eax, esi
push eax
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x7f8]
push eax
lea eax, [ebp - 0x75c]
push eax
call fcn.0040d4ad
push ebx
push 1
lea esi, [ebp - 0x6ec]
call fcn.00402bb8
jmp 0x40ca7b
xor eax, eax
mov dword [ebp - 0x6d4], 7
mov dword [ebp - 0x6d8], ebx
mov word [ebp - 0x6e8], ax
lea edi, [ebp - 0x868]
call fcn.0040bf56
mov byte [ebp - 4], 0x1d
cmp dword [ebp - 0x630], 8
mov edx, dword [ebp - 0x644]
jae 0x40c9be
lea edx, [ebp - 0x644]
lea ecx, [ebp - 0x6ec]
push ecx
push eax
lea eax, [ebp - 0x21c]
push 0x4b9820
push eax
mov ecx, eax
call fcn.0044c087
add esp, 0x10
lea esi, [ebp - 0x868]
mov edi, eax
call fcn.0040bf72
push ebx
push 1
lea esi, [ebp - 0x6ec]
mov byte [ebp - 4], 0x16
call fcn.00402bb8
cmp edi, ebx
jne 0x40ca07
inc dword [ebp - 0x6c0]
jmp 0x40ca7b
cmp dword [ebp - 0x630], 8
mov eax, dword [ebp - 0x644]
jae 0x40ca1c
lea eax, [ebp - 0x644]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [ebp - 0x630], 8
mov eax, dword [ebp - 0x644]
jae 0x40ca38
lea eax, [ebp - 0x644]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push eax
lea esi, [ebp - 0x6ec]
call fcn.00402703
mov eax, esi
push eax
lea eax, [ebp - 0x7ec]
push eax
lea eax, [ebp - 0x77c]
push eax
mov byte [ebp - 4], 0x1e
call fcn.0040d4ad
push ebx
push 1
call fcn.00402bb8
cmp dword [ebp - 0x6c8], ebx
jne 0x40ca7b
mov dword [ebp - 0x6c8], edi
push ebx
push 1
lea ecx, [ebp - 0x664]
call fcn.00402abb
push ebx
push 1
lea esi, [ebp - 0x648]
mov byte [ebp - 4], 0x14
call fcn.00402bb8
lea esi, [ebp - 0x6d0]
call fcn.0040baee
jmp 0x40c698
cmp dword [ebp - 0x780], ebx
jne 0x40cacf
cmp dword [ebp - 0x7a0], ebx
jne 0x40cacf
cmp dword [ebp - 0x740], ebx
jne 0x40cacf
cmp dword [ebp - 0x760], ebx
je 0x40cdb8
mov esi, dword [ebp - 0x6c4]
mov eax, esi
call fcn.0040d405
cmp dword [ebp - 0x6c0], ebx
je 0x40cb2d
cmp dword [ebp + 0xc], 2
mov eax, 0x4b96e0
je 0x40caf4
mov eax, 0x4b96f4
push eax
push dword [ebp - 0x6c0]
lea ecx, [ebp - 0x6ec]
push 0x4b9834
call fcn.00427909
add esp, 0xc
push 0xffffffffffffffff
push ebx
push eax
mov byte [ebp - 4], 0x1f
call fcn.0040bce9
push ebx
push 1
lea esi, [ebp - 0x6ec]
mov byte [ebp - 4], 0x14
call fcn.00402bb8
cmp dword [ebp - 0x780], ebx
je 0x40cbba
push 0x4b9850
push dword [ebp - 0x6c4]
call fcn.0040ba92
push 0x4b9880
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x6cc], esp
push 0x4b8b68
call fcn.00402703
lea ecx, [ebp - 0x79c]
lea edi, [ebp - 0x664]
call fcn.0040bf13
add esp, 0x1c
push eax
lea eax, [ebp - 0x6ec]
push eax
mov byte [ebp - 4], 0x20
call fcn.0040e1e9
add esp, 0xc
mov esi, dword [ebp - 0x6c4]
push 0xffffffffffffffff
push ebx
push eax
mov byte [ebp - 4], 0x21
call fcn.0040bce9
push ebx
push 1
lea esi, [ebp - 0x6ec]
call fcn.00402bb8
push ebx
push 1
mov esi, edi
mov byte [ebp - 4], 0x14
call fcn.00402bb8
cmp dword [ebp - 0x7a0], ebx
je 0x40cc47
push 0x4b988c
push dword [ebp - 0x6c4]
call fcn.0040ba92
push 0x4b9880
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x6cc], esp
push 0x4b8b68
call fcn.00402703
lea ecx, [ebp - 0x7bc]
lea edi, [ebp - 0x664]
call fcn.0040bf13
add esp, 0x1c
push eax
lea eax, [ebp - 0x6ec]
push eax
mov byte [ebp - 4], 0x22
call fcn.0040e1e9
add esp, 0xc
mov esi, dword [ebp - 0x6c4]
push 0xffffffffffffffff
push ebx
push eax
mov byte [ebp - 4], 0x23
call fcn.0040bce9
push ebx
push 1
lea esi, [ebp - 0x6ec]
call fcn.00402bb8
push ebx
push 1
mov esi, edi
mov byte [ebp - 4], 0x14
call fcn.00402bb8
cmp dword [ebp - 0x740], ebx
je 0x40ccd4
push 0x4b98b8
push dword [ebp - 0x6c4]
call fcn.0040ba92
push 0x4b9880
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x6cc], esp
push 0x4b8b68
call fcn.00402703
lea ecx, [ebp - 0x75c]
lea edi, [ebp - 0x664]
call fcn.0040bf13
add esp, 0x1c
push eax
lea eax, [ebp - 0x6ec]
push eax
mov byte [ebp - 4], 0x24
call fcn.0040e1e9
add esp, 0xc
mov esi, dword [ebp - 0x6c4]
push 0xffffffffffffffff
push ebx
push eax
mov byte [ebp - 4], 0x25
call fcn.0040bce9
push ebx
push 1
lea esi, [ebp - 0x6ec]
call fcn.00402bb8
push ebx
push 1
mov esi, edi
mov byte [ebp - 4], 0x14
call fcn.00402bb8
cmp dword [ebp - 0x760], ebx
je 0x40cdb8
mov ecx, dword [ebp - 0x6c8]
push ebx
lea edi, [ebp - 0x664]
call fcn.0044ad9c
pop ecx
mov byte [ebp - 4], 0x26
cmp dword [eax + 0x18], 8
jb 0x40cd02
mov eax, dword [eax + 4]
jmp 0x40cd05
add eax, 4
push eax
push 0x4b98ec
lea ecx, [ebp - 0x6ec]
call fcn.00427909
pop ecx
pop ecx
mov esi, dword [ebp - 0x6c4]
push 0xffffffffffffffff
push ebx
push eax
mov byte [ebp - 4], 0x27
call fcn.0040bce9
push ebx
push 1
lea esi, [ebp - 0x6ec]
call fcn.00402bb8
push ebx
push 1
lea esi, [ebp - 0x664]
mov byte [ebp - 4], 0x14
call fcn.00402bb8
push 0x4b9880
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x6cc], esp
push 0x4b8b68
call fcn.00402703
lea ecx, [ebp - 0x77c]
lea edi, [ebp - 0x664]
call fcn.0040bf13
add esp, 0x1c
push eax
lea eax, [ebp - 0x6ec]
push eax
mov byte [ebp - 4], 0x28
call fcn.0040e1e9
add esp, 0xc
mov esi, dword [ebp - 0x6c4]
push 0xffffffffffffffff
push ebx
push eax
mov byte [ebp - 4], 0x29
call fcn.0040bce9
push ebx
push 1
lea esi, [ebp - 0x6ec]
call fcn.00402bb8
push ebx
push 1
mov esi, edi
call fcn.00402bb8
lea esi, [ebp - 0x724]
call fcn.00402bff
push dword [ebp - 0x724]
call fcn.004903c0
pop ecx
lea eax, [ebp - 0x77c]
push eax
mov byte [ebp - 4], 0x12
call fcn.0040d485
lea eax, [ebp - 0x75c]
push eax
mov byte [ebp - 4], 0x11
call fcn.0040d485
lea eax, [ebp - 0x7bc]
push eax
mov byte [ebp - 4], 0x10
call fcn.0040d485
lea eax, [ebp - 0x79c]
push eax
mov byte [ebp - 4], 0xf
call fcn.0040d485
lea esi, [ebp - 0x73c]
mov byte [ebp - 4], 0xc
call fcn.0043102f
push ebx
push 1
lea ecx, [ebp - 0x6b8]
call fcn.00402abb
push ebx
push 1
lea esi, [ebp - 0x69c]
call fcn.00402bb8
lea esi, [ebp - 0x70c]
mov byte [ebp - 4], bl
call fcn.0043102f
push ebx
push 1
lea esi, [ebp - 0x680]
call fcn.00402bb8
xor eax, eax
jmp 0x40ceb2
push 0x4b980c
push dword [ebp - 0x6c8]
call fcn.0044707a
pop ecx
pop ecx
lea esi, [ebp - 0x73c]
mov byte [ebp - 4], 0xc
call fcn.0043102f
push ebx
push edi
lea ecx, [ebp - 0x6b8]
call fcn.00402abb
push ebx
push edi
lea esi, [ebp - 0x69c]
call fcn.00402bb8
lea esi, [ebp - 0x70c]
mov byte [ebp - 4], bl
call fcn.0043102f
push ebx
push edi
lea esi, [ebp - 0x680]
call fcn.00402bb8
mov eax, edi
call fcn.004917cd
ret