Function at 0x467570
Capabilities:
Create directory
Delete directory
Delete file
Enumerate files on windows
Get common file path
Move file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
lea eax, [ebp - 0x69c]
push ebx
mov ebx, dword fs:[0x18]
sub esp, 0x6c8
mov dword [esp + 4], eax
mov dword [esp], 0x104
call dword [sym.imp.kernel32.dll_GetTempPathA]
sub esp, 8
mov dword [ebp - 0x6a0], eax
mov eax, 0x7d6
call fcn.0045b740
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x598124
mov dword [esp + 8], eax
mov ecx, dword [ebp - 0x6a0]
xor eax, eax
test ecx, ecx
setne al
mov dword [esp], eax
call fcn.0045bef0
mov eax, 0x7d7
call fcn.0045b740
mov dword [esp + 4], 0x59813c
xor eax, eax
cmp dword [ebp - 0x6a0], 0x103
setbe al
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x598]
mov esi, dword [sym.imp.kernel32.dll_GetTempFileNameA]
mov dword [esp + 8], 0
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x69c]
mov dword [esp + 4], 0x59ea80
mov dword [esp], eax
call esi
sub esp, 0x10
mov dword [ebp - 0x6a0], eax
mov eax, 0x7da
call fcn.0045b740
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x598160
mov dword [esp + 8], eax
mov edi, dword [ebp - 0x6a0]
xor eax, eax
test edi, edi
setne al
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x494]
mov dword [esp + 8], 0
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x69c]
mov dword [esp + 4], 0x59ea80
mov dword [esp], eax
call esi
sub esp, 0x10
mov dword [ebp - 0x6a0], eax
mov eax, 0x7dd
call fcn.0045b740
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x598160
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x6a0]
xor eax, eax
test edx, edx
setne al
mov dword [esp], eax
call fcn.0045bef0
mov edi, dword [sym.imp.kernel32.dll_MoveFileA]
lea eax, [ebp - 0x598]
mov dword [esp + 4], eax
mov dword [esp], eax
mov dword [ebp - 0x6a4], edi
call edi
sub esp, 8
mov dword [ebp - 0x6a0], eax
mov eax, 0x7e0
call fcn.0045b740
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], str.MoveFileA:_failed__error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x6a0]
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x494]
mov dword [esp + 4], eax
lea eax, [ebp - 0x598]
mov dword [esp], eax
call edi
mov dword [ebp - 0x6a0], eax
sub esp, 8
mov eax, 0x7e3
call fcn.0045b740
mov ecx, dword [ebp - 0x6a0]
mov edx, dword [ebx + 0x34]
xor eax, eax
test ecx, ecx
jne 0x467745
xor eax, eax
cmp edx, 0xb7
sete al
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 4], str.MoveFileA:_unexpected_error__ld_n
mov edi, dword fs:[0x18]
call fcn.0045bef0
lea eax, [ebp - 0x494]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_DeleteFileA]
mov dword [ebp - 0x6b4], eax
call eax
sub esp, 4
mov dword [ebp - 0x6a0], eax
mov eax, 0x7e7
call fcn.0045b740
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x59878f
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x6a0]
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x598]
mov dword [esp + 0x18], 0
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_CreateFileA]
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 3
mov dword [esp + 0xc], 0
mov dword [esp + 8], 3
mov dword [esp + 4], 0xc0000000
mov dword [ebp - 0x6ac], eax
call eax
sub esp, 0x1c
mov ebx, eax
mov eax, 0x7ea
call fcn.0045b740
xor eax, eax
cmp ebx, 0xffffffff
mov dword [esp + 4], str.failed_to_open_source_file_n
setne al
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x6a0]
mov dword [esp], ebx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 4
mov dword [esp + 4], 0x59ea80
call dword [sym.imp.kernel32.dll_WriteFile]
sub esp, 0x14
mov esi, eax
mov eax, 0x7ed
call fcn.0045b740
mov eax, dword [edi + 0x34]
test esi, esi
je 0x467862
xor ecx, ecx
cmp dword [ebp - 0x6a0], 4
sete cl
mov esi, ecx
mov dword [esp], esi
mov dword [esp + 8], eax
mov dword [esp + 4], 0x5981d0
call fcn.0045bef0
mov dword [esp + 0x14], 0
mov edi, dword [sym.imp.kernel32.dll_CreateFileMappingW]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x8000002
mov dword [esp + 4], 0
mov dword [esp], ebx
call edi
sub esp, 0x18
mov esi, eax
mov eax, 0x7f1
call fcn.0045b740
mov edx, dword fs:[0x18]
mov eax, dword [edx + 0x34]
mov dword [ebp - 0x6a8], edx
mov dword [esp + 4], str.CreateFileMapping:_error__ld_n
mov dword [esp + 8], eax
xor eax, eax
test esi, esi
setne al
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x494]
mov dword [esp + 4], eax
lea eax, [ebp - 0x598]
mov dword [esp], eax
mov eax, dword [ebp - 0x6a4]
call eax
sub esp, 8
mov dword [ebp - 0x6a0], eax
mov eax, 0x7f4
call fcn.0045b740
mov dword [esp + 4], str.MoveFileA:_expected_failure_n
xor eax, eax
mov edx, dword [ebp - 0x6a0]
test edx, edx
sete al
mov dword [esp], eax
call fcn.0045bef0
mov eax, 0x7f5
call fcn.0045b740
mov edx, dword [ebp - 0x6a8]
mov eax, 1
mov ecx, dword [edx + 0x34]
cmp ecx, 0x20
je 0x46795f
mov eax, dword [0x8f0770]
test eax, eax
sete al
xor edx, edx
cmp ecx, 5
sete dl
and eax, edx
mov dword [esp + 8], ecx
mov dword [esp], eax
mov dword [esp + 4], str.MoveFileA:_expected_ERROR_SHARING_VIOLATION__got__ld_n
call fcn.0045bef0
mov eax, dword [sym.imp.kernel32.dll_CloseHandle]
mov dword [esp], esi
mov esi, eax
mov dword [ebp - 0x6a8], eax
call eax
mov eax, esi
sub esp, 4
mov dword [esp], ebx
call eax
mov ecx, dword [ebp - 0x6a0]
sub esp, 4
test ecx, ecx
jne 0x4684b0
lea eax, [ebp - 0x598]
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 3
mov dword [esp + 0xc], 0
mov dword [esp + 8], 1
mov dword [esp + 4], 0x80000000
mov dword [esp], eax
mov eax, dword [ebp - 0x6ac]
call eax
sub esp, 0x1c
mov ebx, eax
mov eax, 0x800
call fcn.0045b740
xor eax, eax
cmp ebx, 0xffffffff
mov dword [esp + 4], str.failed_to_open_source_file_n
setne al
mov dword [esp], eax
call fcn.0045bef0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x8000002
mov dword [esp + 4], 0
mov dword [esp], ebx
call edi
sub esp, 0x18
mov esi, eax
mov eax, 0x803
call fcn.0045b740
mov edi, dword fs:[0x18]
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.CreateFileMapping:_error__ld_n
mov dword [esp + 8], eax
xor eax, eax
test esi, esi
setne al
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x494]
mov dword [esp + 4], eax
lea eax, [ebp - 0x598]
mov dword [esp], eax
mov eax, dword [ebp - 0x6a4]
call eax
sub esp, 8
mov dword [ebp - 0x6a0], eax
mov eax, 0x806
call fcn.0045b740
mov dword [esp + 4], str.MoveFileA:_expected_failure_n
xor eax, eax
mov edx, dword [ebp - 0x6a0]
test edx, edx
sete al
mov dword [esp], eax
call fcn.0045bef0
mov eax, 0x807
call fcn.0045b740
mov edx, dword [edi + 0x34]
mov eax, 1
cmp edx, 0x20
je 0x467adf
mov eax, dword [0x8f0770]
test eax, eax
sete cl
xor eax, eax
cmp edx, 5
sete al
and eax, ecx
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 4], str.MoveFileA:_expected_ERROR_SHARING_VIOLATION__got__ld_n
call fcn.0045bef0
mov dword [esp], esi
mov edi, dword [ebp - 0x6a8]
mov eax, edi
call eax
mov eax, edi
sub esp, 4
mov dword [esp], ebx
call eax
mov eax, dword [ebp - 0x6a0]
sub esp, 4
test eax, eax
jne 0x468488
lea eax, [ebp - 0x494]
mov edi, 0x65
lea esi, [ebp - 0x69c]
mov dword [esp + 4], eax
lea eax, [ebp - 0x598]
mov dword [esp], eax
mov eax, dword [ebp - 0x6a4]
call eax
sub esp, 8
mov dword [ebp - 0x6a0], eax
mov eax, 0x812
call fcn.0045b740
mov ebx, dword fs:[0x18]
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], str.MoveFileA:_failed__error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x6a0]
mov dword [esp], eax
call fcn.0045bef0
lea ecx, [ebp - 0x69c]
mov dword [esp], ecx
call sub.msvcrt.dll_strlen
lea ecx, [ebp - 0x69c]
lea edx, [ecx + eax]
mov word [edx + 8], di
lea edi, [ebp - 0x598]
mov dword [edx], 0x6f6d6552
mov dword [edx + 4], 0x4d206576
mov ecx, dword [ebp + eax - 0x696]
mov dword [ebp + eax - 0x592], ecx
lea ecx, [eax + 9]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x598]
mov byte [ebp + eax - 0x695], 0x6d
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 2
mov dword [esp + 0xc], 0
mov dword [esp + 8], 3
mov dword [esp + 4], 0xc0000000
mov dword [esp], ecx
mov ecx, dword [ebp - 0x6ac]
call ecx
sub esp, 0x1c
mov esi, eax
mov eax, 0x81b
call fcn.0045b740
xor eax, eax
cmp esi, 0xffffffff
lea ecx, [ebp - 0x598]
setne al
mov dword [esp + 8], ecx
mov dword [esp + 4], str.failed_to_create__s_n
mov dword [esp], eax
call fcn.0045bef0
mov dword [esp], esi
mov ecx, dword [ebp - 0x6a8]
call ecx
lea ecx, [ebp - 0x69c]
sub esp, 4
mov dword [esp + 4], ecx
lea ecx, [ebp - 0x598]
mov dword [esp], ecx
mov eax, dword [ebp - 0x6a4]
call eax
sub esp, 8
mov dword [ebp - 0x6a0], eax
mov eax, 0x81f
call fcn.0045b740
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], str.MoveFileA:_failed__error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x6a0]
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x28c]
mov dword [esp + 4], eax
lea eax, [ebp - 0x69c]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_FindFirstFileA]
mov dword [ebp - 0x6b0], eax
call eax
sub esp, 8
mov esi, eax
mov eax, 0x822
call fcn.0045b740
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], str.FindFirstFileA:_failed__error__ld_n
mov dword [esp + 8], eax
xor eax, eax
cmp esi, 0xffffffff
setne al
mov dword [esp], eax
call fcn.0045bef0
cmp esi, 0xffffffff
je 0x467d97
mov ebx, dword [0x8f0770]
call fcn.0057d110
mov dword [ebp - 0x6b8], esi
mov edi, dword [sym.imp.msvcrt.dll_strrchr]
mov ecx, dword [eax + 0x10]
mov dword [eax + 0x14], 1
lea edx, [ecx + ecx]
xor ecx, ecx
test ebx, ebx
mov ebx, dword [sym.imp.kernel32.dll_lstrcmpA]
setne cl
or edx, ecx
mov dword [eax + 0x10], edx
jmp 0x467d7e
call fcn.0057d110
lea esi, [ebp - 0x260]
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x825
lea eax, [ebp - 0x69c]
mov dword [esp + 4], 0x5c
mov dword [esp], eax
call edi
mov dword [esp + 4], esi
add eax, 1
mov dword [esp], eax
call ebx
sub esp, 8
test eax, eax
sete al
mov dword [esp + 8], esi
movzx eax, al
mov dword [esp + 4], str.MoveFile_failed_to_change_casing_on_same_file:_got__s_n
mov dword [esp], eax
call fcn.0045bef0
call fcn.0057d110
shr dword [eax + 0x10], 1
call fcn.0057d110
mov edx, dword [eax + 0x14]
mov dword [eax + 0x14], 0
test edx, edx
jne 0x467d20
mov esi, dword [ebp - 0x6b8]
mov dword [esp], esi
mov edi, dword [ebp - 0x6a8]
call edi
lea eax, [ebp - 0x69c]
mov ebx, dword [sym.imp.msvcrt.dll_strlen]
sub esp, 4
mov dword [esp], eax
call ebx
mov byte [ebp + eax - 0x69e], 0x42
lea eax, [ebp - 0x69c]
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 2
mov dword [esp + 0xc], 0
mov dword [esp + 8], 3
mov dword [esp + 4], 0xc0000000
mov dword [esp], eax
mov eax, dword [ebp - 0x6ac]
call eax
sub esp, 0x1c
mov esi, eax
mov eax, 0x82e
call fcn.0045b740
lea eax, [ebp - 0x69c]
mov dword [esp + 4], str.failed_to_create__s_n
mov dword [esp + 8], eax
xor eax, eax
cmp esi, 0xffffffff
setne al
mov dword [esp], eax
call fcn.0045bef0
mov dword [esp], esi
call edi
lea eax, [ebp - 0x598]
sub esp, 4
mov dword [esp + 4], eax
lea eax, [ebp - 0x69c]
mov dword [esp], eax
mov eax, dword [ebp - 0x6a4]
call eax
sub esp, 8
mov dword [ebp - 0x6a0], eax
mov eax, 0x832
call fcn.0045b740
mov dword [esp + 4], str.MoveFileA:_expected_failure_n
xor eax, eax
mov esi, dword [ebp - 0x6a0]
test esi, esi
sete al
mov dword [esp], eax
mov edi, dword fs:[0x18]
call fcn.0045bef0
mov eax, 0x833
call fcn.0045b740
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.MoveFileA:_expected_ERROR_ALREADY_EXISTS__got__ld_n
mov dword [esp + 8], eax
xor eax, eax
cmp dword [edi + 0x34], 0xb7
sete al
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x598]
mov dword [esp + 8], 1
mov dword [esp + 4], eax
lea eax, [ebp - 0x69c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_MoveFileExA]
sub esp, 0xc
mov dword [ebp - 0x6a0], eax
mov eax, 0x835
call fcn.0045b740
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.MoveFileExA:_failed__error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x6a0]
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x69c]
mov dword [esp], eax
call ebx
mov byte [ebp + eax - 0x69e], 0x6d
lea eax, [ebp - 0x28c]
mov dword [esp + 4], eax
lea eax, [ebp - 0x69c]
mov dword [esp], eax
mov eax, dword [ebp - 0x6b0]
call eax
sub esp, 8
mov esi, eax
mov eax, 0x83a
call fcn.0045b740
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.FindFirstFileA:_failed__error__ld_n
mov dword [esp + 8], eax
xor eax, eax
cmp esi, 0xffffffff
setne al
mov dword [esp], eax
call fcn.0045bef0
cmp esi, 0xffffffff
je 0x467fbf
mov eax, 0x83d
lea edi, [ebp - 0x260]
call fcn.0045b740
lea eax, [ebp - 0x598]
mov dword [esp + 4], 0x5c
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll_strrchr]
mov dword [esp + 4], edi
add eax, 1
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_lstrcmpA]
sub esp, 8
test eax, eax
sete al
mov dword [esp + 8], edi
movzx eax, al
mov dword [esp + 4], str.MoveFile_failed_to_change_casing_on_existing_target_file:_got__s_n
mov dword [esp], eax
call fcn.0045bef0
mov dword [esp], esi
mov eax, dword [ebp - 0x6a8]
call eax
lea eax, [ebp - 0x69c]
sub esp, 4
mov dword [esp], eax
mov eax, dword [ebp - 0x6b4]
call eax
sub esp, 4
mov dword [ebp - 0x6a0], eax
mov eax, 0x843
call fcn.0045b740
mov esi, dword fs:[0x18]
mov eax, dword [esi + 0x34]
mov dword [esp + 4], 0x59878f
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x6a0]
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x69c]
mov dword [esp + 4], 0
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_CreateDirectoryA]
sub esp, 8
mov dword [ebp - 0x6a0], eax
mov eax, 0x847
call fcn.0045b740
mov dword [esp + 4], 0x59a78a
xor eax, eax
cmp dword [ebp - 0x6a0], 1
sete al
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x69c]
mov edi, dword [sym.imp.msvcrt.dll_strcpy]
mov dword [esp + 4], eax
lea eax, [ebp - 0x598]
mov dword [esp], eax
call edi
lea eax, [ebp - 0x69c]
mov dword [esp], eax
call ebx
mov byte [ebp + eax - 0x69e], 0x4d
lea eax, [ebp - 0x69c]
mov dword [esp + 4], eax
lea eax, [ebp - 0x598]
mov dword [esp], eax
mov eax, dword [ebp - 0x6a4]
call eax
sub esp, 8
mov dword [ebp - 0x6a0], eax
mov eax, 0x84c
call fcn.0045b740
mov eax, dword [esi + 0x34]
mov dword [esp + 4], str.MoveFileA:_failed__error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x6a0]
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x28c]
mov dword [esp + 4], eax
lea eax, [ebp - 0x69c]
mov dword [esp], eax
mov eax, dword [ebp - 0x6b0]
call eax
sub esp, 8
mov ebx, eax
mov eax, 0x84f
call fcn.0045b740
mov eax, dword [esi + 0x34]
mov dword [esp + 4], str.FindFirstFileA:_failed__error__ld_n
mov dword [esp + 8], eax
xor eax, eax
cmp ebx, 0xffffffff
setne al
mov dword [esp], eax
call fcn.0045bef0
cmp ebx, 0xffffffff
je 0x4681db
mov esi, dword [0x8f0770]
call fcn.0057d110
mov dword [ebp - 0x6ac], ebx
mov ecx, dword [eax + 0x10]
mov dword [eax + 0x14], 1
lea edx, [ecx + ecx]
xor ecx, ecx
test esi, esi
mov esi, dword [sym.imp.kernel32.dll_lstrcmpA]
setne cl
or edx, ecx
mov dword [eax + 0x10], edx
jmp 0x4681c2
call fcn.0057d110
lea ebx, [ebp - 0x260]
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x852
lea eax, [ebp - 0x69c]
mov dword [esp + 4], 0x5c
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll_strrchr]
mov dword [esp + 4], ebx
add eax, 1
mov dword [esp], eax
call esi
sub esp, 8
test eax, eax
sete al
mov dword [esp + 8], ebx
movzx eax, al
mov dword [esp + 4], str.MoveFile_failed_to_change_casing_on_same_directory:_got__s_n
mov dword [esp], eax
call fcn.0045bef0
call fcn.0057d110
shr dword [eax + 0x10], 1
call fcn.0057d110
mov edx, dword [eax + 0x14]
mov dword [eax + 0x14], 0
test edx, edx
jne 0x468160
mov ebx, dword [ebp - 0x6ac]
mov dword [esp], ebx
mov eax, dword [ebp - 0x6a8]
call eax
lea eax, [ebp - 0x494]
sub esp, 4
mov dword [esp + 4], eax
lea eax, [ebp - 0x598]
mov dword [esp], eax
call edi
lea eax, [ebp - 0x69c]
mov dword [esp + 4], eax
lea eax, [ebp - 0x494]
mov dword [esp], eax
call edi
lea eax, [ebp - 0x494]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
lea ecx, [ebp - 0x494]
add eax, ecx
mov dword [eax], 0x6c69775c
mov dword [eax + 4], 0x2a2e3f64
mov byte [eax + 8], 0
lea eax, [ebp - 0x598]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov eax, dword [ebp - 0x6a4]
call eax
sub esp, 8
mov dword [ebp - 0x6a0], eax
mov eax, 0x85c
call fcn.0045b740
mov dword [esp + 4], str.MoveFileA:_shouldnt_move_to_wildcard_file_n
xor eax, eax
mov ebx, dword [ebp - 0x6a0]
test ebx, ebx
sete al
mov dword [esp], eax
call fcn.0045bef0
mov eax, 0x85d
call fcn.0045b740
mov edx, 1
mov eax, dword fs:[0x18]
mov ecx, dword [eax + 0x34]
cmp ecx, 0x7b
je 0x4682a5
xor edx, edx
cmp dword [eax + 0x34], 2
sete dl
mov dword [esp + 8], ecx
mov dword [esp + 4], str.MoveFileA:_with_wildcards__unexpected_error__ld_n
mov dword [esp], edx
call fcn.0045bef0
mov ecx, dword [ebp - 0x6a0]
test ecx, ecx
jne 0x4682d3
mov eax, dword fs:[0x18]
cmp dword [eax + 0x34], 0x7b
je 0x4683b2
lea ebx, [ebp - 0x390]
lea eax, [ebp - 0x69c]
mov dword [esp + 4], eax
mov dword [esp], ebx
call edi
mov dword [esp], ebx
lea edi, [ebp - 0x14c]
call sub.msvcrt.dll_strlen
add eax, ebx
mov dword [eax], 0x2a2e2a5c
mov byte [eax + 4], 0
mov dword [esp + 4], edi
mov dword [esp], ebx
mov eax, dword [ebp - 0x6b0]
call eax
sub esp, 8
cmp eax, 0xffffffff
je 0x4683b2
mov dword [ebp - 0x6a4], eax
lea esi, [ebp - 0x120]
jmp 0x46835a
mov dword [esp], eax
mov dword [esp + 4], str.MoveFileA:_wildcards_file_created__n
call fcn.0045bef0
mov dword [esp + 4], edi
mov eax, dword [ebp - 0x6a4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_FindNextFileA]
sub esp, 8
test eax, eax
je 0x4683a0
cmp byte [ebp - 0x1c], 0
lea ebx, [ebp - 0x1c]
cmove ebx, esi
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x871
xor eax, eax
cmp byte [ebx], 0x2e
jne 0x468330
movzx ecx, byte [ebx + 1]
mov eax, 1
test cl, cl
je 0x468330
xor eax, eax
cmp cl, 0x2e
jne 0x468330
xor eax, eax
cmp byte [ebx + 2], 0
sete al
jmp 0x468330
mov edx, dword [ebp - 0x6a4]
mov dword [esp], edx
call dword [sym.imp.kernel32.dll_FindClose]
sub esp, 4
lea eax, [ebp - 0x598]
mov dword [esp], eax
mov edi, dword [ebp - 0x6b4]
call edi
sub esp, 4
mov dword [ebp - 0x6a0], eax
mov eax, 0x878
call fcn.0045b740
mov ebx, dword fs:[0x18]
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x59878f
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x6a0]
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x494]
mov dword [esp], eax
call edi
sub esp, 4
mov dword [ebp - 0x6a0], eax
mov eax, 0x87a
call fcn.0045b740
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x59878f
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x6a0]
xor eax, eax
test edx, edx
sete al
mov dword [esp], eax
call fcn.0045bef0
lea eax, [ebp - 0x69c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_RemoveDirectoryA]
sub esp, 4
mov dword [ebp - 0x6a0], eax
mov eax, 0x87c
call fcn.0045b740
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], str.DeleteDirectoryA:_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x6a0]
mov dword [esp], eax
call fcn.0045bef0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
lea eax, [ebp - 0x598]
mov dword [esp + 4], eax
lea eax, [ebp - 0x494]
mov dword [esp], eax
mov eax, dword [ebp - 0x6a4]
call eax
sub esp, 8
jmp 0x467b1b
lea eax, [ebp - 0x598]
mov dword [esp + 4], eax
lea eax, [ebp - 0x494]
mov dword [esp], eax
mov eax, dword [ebp - 0x6a4]
call eax
sub esp, 8
jmp 0x4679a0