Function at 0x405b3d
Capabilities:
Create directory
Delete file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff0
push esi
push edi
push ebx
mov edx, edi
mov ecx, ebp
lea edi, [ebp - 0x10]
sub ecx, edi
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov edi, edx
mov dword [ebp - 0x10], 0
mov dword [ebp - 8], 0
cmp dword [ebp + 8], 0
je 0x405b86
push 0
push 0x40a506
push dword [ebp + 8]
call fcn.00406c5e
or eax, eax
jne 0x405b95
jmp 0x405f51
push 0x40b30b
push 0x40a506
call sub.KERNEL32.dll_lstrcpyA
push 0x40a506
call sub.KERNEL32.dll_lstrlenA
mov dword [0x40b235], eax
push 0x40a506
push 0x40a60a
call sub.KERNEL32.dll_lstrcpyA
lea edi, [0x40a60a]
cmp byte [edi], 0
je 0x405bc1
inc edi
jmp 0x405bb9
push str..
push edi
call sub.KERNEL32.dll_lstrcpyA
push 0x40a056
push 1
push 0x40a60a
call fcn.00406d11
cmp dword [0x40a05e], 0
jne 0x405beb
jmp 0x405f51
mov esi, dword [0x40a05a]
mov edx, esi
cmp byte [edx], 0
jne 0x405bfa
jmp 0x405c04
cmp byte [edx], 0x2e
jne 0x405c01
jmp 0x405c04
inc edx
jmp 0x405bf3
cmp byte [edx], 0x2e
jne 0x405c68
inc edx
mov dword [ebp - 4], edx
cmp byte [edx], 0x63
je 0x405c17
cmp byte [edx], 0x43
jne 0x405c1f
cmp byte [edx + 1], 0
jne 0x405c1f
jmp 0x405c75
mov edx, dword [ebp - 4]
push 1
push 0x40c293
push edx
push 1
call fcn.00407e24
cmp eax, 1
jne 0x405c38
jmp 0x405c75
mov edx, dword [ebp - 4]
push 1
push 0x40c297
push edx
push 1
call fcn.00407e24
cmp eax, 1
jne 0x405c51
jmp 0x405c75
mov edx, dword [ebp - 4]
cmp byte [edx], 0
je 0x405c5c
inc edx
jmp 0x405c54
inc edx
cmp byte [edx], 0
je 0x405c75
mov esi, edx
jmp 0x405bf1
inc edx
cmp byte [edi], 0
je 0x405c75
mov esi, edx
jmp 0x405bf1
push esi
push 0x40a70e
call sub.KERNEL32.dll_lstrcpyA
lea esi, [0x40a70e]
mov edi, esi
cmp byte [esi], 0x5c
je 0x405c90
inc esi
jmp 0x405c88
inc esi
cmp byte [esi], 0
je 0x405c99
movsb byte es:[edi], byte [esi]
jmp 0x405c91
mov byte [edi], 0
lea edx, [0x40a70e]
cmp byte [edx], 0x5c
je 0x405cb1
cmp byte [edx], 0
je 0x405cb1
inc edx
jmp 0x405ca2
cmp byte [edx], 0x5c
jne 0x405cbc
mov byte [edx], 0x5f
inc edx
jmp 0x405ca2
lea edx, [0x40a70e]
cmp byte [edx], 0x2e
je 0x405cd1
cmp byte [edx], 0
je 0x405cd1
inc edx
jmp 0x405cc2
cmp dword [0x40b628], 0
jne 0x405ce7
push str..txt
push edx
call sub.KERNEL32.dll_lstrcpyA
jmp 0x405cfb
cmp dword [0x40b628], 1
jne 0x405cfb
push 0x40c2a0
push edx
call sub.KERNEL32.dll_lstrcpyA
lea edx, [0x40a70e]
push 0x40a916
push 0x40a812
call sub.KERNEL32.dll_lstrcpyA
push 0x40a812
call sub.KERNEL32.dll_lstrlenA
lea edx, [0x40a812]
add edx, eax
dec edx
cmp byte [edx], 0x5c
je 0x405d30
cmp byte [edx], 0
je 0x405d30
dec edx
jmp 0x405d23
inc edx
push str.classeur
push edx
call sub.KERNEL32.dll_lstrcpyA
push 0x40a07e
push 0x40a812
call sub.KERNEL32.dll_FindFirstFileA
cmp eax, 0xffffffff
jne 0x405d5e
push 0
push 0x40a812
call sub.KERNEL32.dll_CreateDirectoryA
jmp 0x405d64
push eax
call sub.KERNEL32.dll_FindClose
push 0x40a70e
push 0x40ad26
call sub.KERNEL32.dll_lstrcpyA
push 0x40a812
call sub.KERNEL32.dll_lstrlenA
push eax
push 0x40a70e
call sub.KERNEL32.dll_lstrlenA
pop edx
add eax, edx
inc eax
inc eax
cmp eax, 0x104
jb 0x405dac
push 0
push str.Decrease_the_size_of_the_path
push str.Archive_Name_too_long
push 0
call sub.USER32.dll_MessageBoxA
jmp 0x405f51
push 0x40a70e
push 0x40ae2a
call sub.KERNEL32.dll_lstrcpyA
push 0x40a812
push 0x40a70e
call sub.KERNEL32.dll_lstrcpyA
push 0x40c2e2
push 0x40a70e
call sub.KERNEL32.dll_lstrcatA
push 0x40ae2a
push 0x40a70e
call sub.KERNEL32.dll_lstrcatA
push 0x40a07e
push 0x40a70e
call sub.KERNEL32.dll_FindFirstFileA
cmp eax, 0xffffffff
je 0x405e2b
push eax
call sub.KERNEL32.dll_FindClose
push 0x31
push 0x40a70e
push str.File_exist_DELET___
push 0
call sub.USER32.dll_MessageBoxA
cmp eax, 1
jne 0x405e26
push 0x40a70e
call sub.KERNEL32.dll_DeleteFileA
jmp 0x405e2b
jmp 0x405f51
cmp dword [0x40b628], 1
jne 0x405ea5
push 0x40a70e
push 0x40c064
call sub.KERNEL32.dll_lstrcpyA
mov edx, 0x14
mov ecx, 0x14
cmp ecx, edx
je 0x405e56
jmp 0x405f51
lea esi, [0x40a056]
lea edi, [0x40c168]
rep movsb byte es:[edi], byte [esi]
mov eax, dword [0x40b235]
mov dword [0x40c17c], eax
call fcn.00405126
cmp eax, 1
jne 0x405e8d
push 0
push 0x40c064
push str.All_Done
push 0
call sub.USER32.dll_MessageBoxA
jmp 0x405ea0
push 0
push 0x40c064
push str.FAILED
push 0
call sub.USER32.dll_MessageBoxA
jmp 0x405f51
push 0
push 0x80
push 2
push 0
push 0
push 0x40000000
push 0x40a70e
call sub.KERNEL32.dll_CreateFileA
mov dword [ebp - 8], eax
push str.Archive
call sub.KERNEL32.dll_lstrlenA
mov edx, eax
push 0
lea eax, [ebp - 0xc]
push eax
push edx
push str.Archive
push dword [ebp - 8]
call sub.KERNEL32.dll_WriteFile
push 0
lea eax, [ebp - 0xc]
push eax
push 2
push 0x40b232
push dword [ebp - 8]
call sub.KERNEL32.dll_WriteFile
mov esi, dword [0x40a05a]
push esi
push dword [ebp - 8]
call fcn.00405f77
or eax, eax
jne 0x405f0e
jmp 0x405f51
cmp byte [esi], 0
je 0x405f16
inc esi
jmp 0x405f0e
cmp byte [esi + 1], 0
je 0x405f1f
inc esi
jmp 0x405eff
cmp dword [ebp + 8], 0
je 0x405f3e
push 0x40ad26
push 0
push 0x180
push dword [0x40ba16]
call sub.USER32.dll_SendMessageA
jmp 0x405f51
push 0
push 0x40b30b
push 0x40c308
push 0
call sub.USER32.dll_MessageBoxA
cmp dword [ebp - 8], 0
je 0x405f5f
push dword [ebp - 8]
call sub.KERNEL32.dll_CloseHandle
push 0
push 0
push 0x40a056
call fcn.00406ff8
mov eax, dword [ebp - 0x10]
pop ebx
pop edi
pop esi
leave
ret 4