Function at 0x402424
Capabilities:
Create directory
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x41f2ed
mov eax, dword fs:[0]
push eax
mov eax, 0x6084
call fcn.0040a2d0
mov eax, dword [0x42a664]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0xc]
mov esi, dword [ebp + 0x14]
mov dword [ebp - 0x608c], eax
mov dword [ebp - 0x6090], esi
call fcn.0040878b
test al, al
je 0x402b87
mov edi, 0x800
lea eax, [ebp - 0x2010]
push edi
push eax
xor ebx, ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push edi
push str.WinRAR.exe
lea eax, [ebp - 0x2010]
push eax
call fcn.00405583
call fcn.00404f48
cmp eax, 0x600
mov byte [ebp - 0x6085], bl
push 0x10
sbb al, al
add al, 1
mov byte [ebp - 0x6086], al
lea eax, [ebp - 0x1010]
push edi
push eax
je 0x402512
call fcn.004014b9
test al, al
je 0x402501
push edi
lea eax, [ebp - 0x1010]
push eax
call fcn.00404fcc
push edi
push str.WinRAR.lnk
lea eax, [ebp - 0x1010]
push eax
call fcn.00407059
lea eax, [ebp - 0x1010]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
setne byte [ebp - 0x6085]
push 0x19
push edi
lea eax, [ebp - 0x1010]
push eax
call fcn.004014b9
jmp 0x40251f
call fcn.004014b9
test al, al
je 0x402b87
push edi
lea eax, [ebp - 0x1010]
push eax
call fcn.00404fcc
push edi
push str.WinRAR.lnk
lea eax, [ebp - 0x1010]
push eax
call fcn.00407059
xor eax, eax
push 0x10
mov word [ebp - 0x4014], ax
lea eax, [ebp - 0x4014]
push edi
push eax
call fcn.004014b9
mov edi, dword [ebp + 8]
cmp byte [edi + 0x14], bl
je 0x402647
cmp byte [ebp + 0x18], bl
je 0x402583
lea eax, [ebp - 0x1010]
push eax
call fcn.004042e3
test al, al
jne 0x402583
cmp byte [ebp - 0x6085], bl
je 0x402653
push ebx
push esi
push 0x13fb
call fcn.00406b68
push eax
push ebx
lea eax, [ebp - 0x1010]
push eax
lea eax, [ebp - 0x2010]
push eax
push 1
call fcn.00408b07
test al, al
jne 0x402653
cmp byte [ebp - 0x6086], bl
je 0x402653
cmp byte [ebp + 0x18], bl
je 0x402653
lea eax, [ebp - 0x1010]
push eax
call fcn.004042e3
test al, al
je 0x4025e4
lea eax, [ebp - 0x1010]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
je 0x402653
push 0x10
push 0x800
lea eax, [ebp - 0x1010]
push eax
call fcn.004014b9
test al, al
je 0x402653
push 0x800
lea eax, [ebp - 0x1010]
push eax
call fcn.00404fcc
push 0x800
push str.WinRAR.lnk
lea eax, [ebp - 0x1010]
push eax
call fcn.00407059
push ebx
push esi
push 0x13fb
call fcn.00406b68
push eax
push ebx
lea eax, [ebp - 0x1010]
push eax
lea eax, [ebp - 0x2010]
push eax
push 1
call fcn.00408b07
jmp 0x402653
lea eax, [ebp - 0x1010]
push eax
call fcn.0040427b
xor eax, eax
cmp byte [ebp - 0x6086], al
sete al
dec eax
and eax, 0xb
add eax, 0xb
push eax
push 0x800
lea eax, [ebp - 0x1010]
push eax
call fcn.004014b9
push 0x800
lea eax, [ebp - 0x1010]
push eax
call fcn.00404fcc
push 0x800
push str.WinRAR.lnk
lea eax, [ebp - 0x1010]
push eax
call fcn.00407059
cmp byte [edi + 0x15], bl
je 0x4026e3
cmp byte [ebp + 0x18], bl
je 0x4026b8
lea eax, [ebp - 0x1010]
push eax
call fcn.004042e3
test al, al
je 0x4026ef
push ebx
push esi
push 0x13fb
call fcn.00406b68
push eax
lea eax, [ebp - 0x4014]
push eax
lea eax, [ebp - 0x1010]
push eax
lea eax, [ebp - 0x2010]
push eax
push 1
call fcn.00408b07
jmp 0x4026ef
lea eax, [ebp - 0x1010]
push eax
call fcn.0040427b
push str.WinRAR.exe
call fcn.0041294a
mov dword [ebp - 0x4024], eax
mov dword [esp], str.WinRAR.chm
call fcn.0041294a
mov dword [ebp - 0x4020], eax
mov dword [esp], str.Rar.txt
call fcn.0041294a
mov dword [ebp - 0x401c], eax
mov dword [esp], 0x13f1
call fcn.00406b68
push eax
call fcn.0041294a
mov dword [ebp - 0x4018], eax
mov dword [esp], 0x4208e4
call fcn.0041294a
mov dword [ebp - 0x4034], eax
mov dword [esp], 0x13ee
call fcn.00406b68
push eax
call fcn.0041294a
mov dword [ebp - 0x4030], eax
mov dword [esp], 0x13ef
call fcn.00406b68
push eax
call fcn.0041294a
mov dword [ebp - 0x402c], eax
mov dword [esp], 0x13f0
call fcn.00406b68
push eax
call fcn.0041294a
pop ecx
push 2
mov dword [ebp - 0x4028], eax
mov esi, 0x800
push esi
lea eax, [ebp - 0x1010]
push eax
call fcn.004014b9
push esi
lea eax, [ebp - 0x1010]
push eax
call fcn.00404fcc
push esi
push 0x4208e4
lea eax, [ebp - 0x1010]
push eax
call fcn.00407059
cmp byte [ebp + 0x18], bl
je 0x4027e2
lea eax, [ebp - 0x1010]
push eax
call fcn.004042e3
test al, al
je 0x402976
cmp byte [edi + 0x16], bl
je 0x40296a
mov eax, dword [ebp - 0x608c]
test eax, eax
je 0x402805
push dword [ebp + 0x10]
lea ecx, [ebp - 0x1010]
push ecx
push eax
call fcn.00407081
cmp byte [ebp + 0x18], bl
jne 0x4028a8
lea eax, [ebp - 0x1010]
push eax
call fcn.004042e3
test al, al
je 0x40289a
push 0x802
lea eax, [ebp - 0x3014]
push eax
push 0x4210cc
lea eax, [ebp - 0x1010]
push eax
call fcn.0040547d
lea ecx, [ebp - 0x503c]
call fcn.00404c2d
mov dword [ebp - 4], ebx
lea eax, [ebp - 0x3014]
push eax
lea ecx, [ebp - 0x503c]
call fcn.00404d97
lea ecx, [ebp - 0x6084]
call fcn.0040123f
jmp 0x402874
lea eax, [ebp - 0x6084]
push eax
call fcn.0040427b
push ebx
lea eax, [ebp - 0x6084]
push eax
lea ecx, [ebp - 0x503c]
call fcn.00404cea
test al, al
jne 0x402868
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x503c]
call fcn.00404c43
push ebx
lea eax, [ebp - 0x1010]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov edi, dword [ebp - 0x6090]
mov esi, ebx
push 0x800
lea eax, [ebp - 0x3010]
push eax
push dword [ebp + esi*4 - 0x4034]
lea eax, [ebp - 0x1010]
push eax
call fcn.0040547d
push 0x800
push 0x4210d0
lea eax, [ebp - 0x3010]
push eax
call fcn.00407059
push 0x800
push dword [ebp + esi*4 - 0x4024]
lea eax, [ebp - 0x2010]
push eax
call fcn.00405583
lea eax, [ebp - 0x2010]
push eax
call fcn.004042e3
test al, al
je 0x402956
cmp byte [ebp + 0x18], 0
je 0x402923
lea eax, [ebp - 0x3010]
push eax
call fcn.004042e3
test al, al
je 0x402956
mov eax, esi
neg eax
push ebx
sbb eax, eax
not eax
and eax, edi
push eax
push 0x13fb
call fcn.00406b68
push eax
lea eax, [ebp - 0x4014]
push eax
lea eax, [ebp - 0x3010]
push eax
lea eax, [ebp - 0x2010]
push eax
push 1
call fcn.00408b07
inc esi
cmp esi, 4
jb 0x4028b0
mov edi, dword [ebp + 8]
mov esi, 0x800
jmp 0x402976
lea eax, [ebp - 0x1010]
push eax
call fcn.004013d9
push 0x17
push esi
lea eax, [ebp - 0x1010]
push eax
call fcn.004014b9
test al, al
je 0x402b65
push esi
lea eax, [ebp - 0x1010]
push eax
call fcn.00404fcc
push esi
push 0x4208e4
lea eax, [ebp - 0x1010]
push eax
call fcn.00407059
mov al, byte [ebp + 0x18]
test al, al
je 0x4029ca
lea eax, [ebp - 0x1010]
push eax
call fcn.004042e3
test al, al
je 0x402b65
mov al, byte [ebp + 0x18]
cmp byte [edi + 0x16], 0
je 0x402b59
test al, al
jne 0x402a7e
lea eax, [ebp - 0x1010]
push eax
call fcn.004042e3
test al, al
je 0x402a70
push 0x802
lea eax, [ebp - 0x3014]
push eax
push 0x4210cc
lea eax, [ebp - 0x1010]
push eax
call fcn.0040547d
lea ecx, [ebp - 0x503c]
call fcn.00404c2d
mov dword [ebp - 4], 1
lea eax, [ebp - 0x3014]
push eax
lea ecx, [ebp - 0x503c]
call fcn.00404d97
lea ecx, [ebp - 0x6084]
call fcn.0040123f
jmp 0x402a4a
lea eax, [ebp - 0x6084]
push eax
call fcn.0040427b
push ebx
lea eax, [ebp - 0x6084]
push eax
lea ecx, [ebp - 0x503c]
call fcn.00404cea
test al, al
jne 0x402a3e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x503c]
call fcn.00404c43
push ebx
lea eax, [ebp - 0x1010]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov esi, dword [ebp - 0x608c]
test esi, esi
je 0x402aa8
lea eax, [ebp - 0x1010]
push eax
call fcn.004042e3
test al, al
je 0x402aa8
push dword [ebp + 0x10]
lea eax, [ebp - 0x1010]
push eax
push esi
call fcn.00407081
mov esi, ebx
mov edi, 0x800
push edi
lea eax, [ebp - 0x3010]
push eax
push dword [ebp + esi*4 - 0x4034]
lea eax, [ebp - 0x1010]
push eax
call fcn.0040547d
push edi
push 0x4210d0
lea eax, [ebp - 0x3010]
push eax
call fcn.00407059
push edi
push dword [ebp + esi*4 - 0x4024]
lea eax, [ebp - 0x2010]
push eax
call fcn.00405583
lea eax, [ebp - 0x2010]
push eax
call fcn.004042e3
test al, al
je 0x402b4d
cmp byte [ebp + 0x18], 0
je 0x402b16
lea eax, [ebp - 0x3010]
push eax
call fcn.004042e3
test al, al
je 0x402b4d
mov eax, esi
neg eax
push ebx
sbb eax, eax
not eax
and eax, dword [ebp - 0x6090]
push eax
push 0x13fb
call fcn.00406b68
push eax
lea eax, [ebp - 0x4014]
push eax
lea eax, [ebp - 0x3010]
push eax
lea eax, [ebp - 0x2010]
push eax
push 1
call fcn.00408b07
inc esi
cmp esi, 4
jb 0x402aaf
jmp 0x402b65
lea eax, [ebp - 0x1010]
push eax
call fcn.004013d9
push dword [ebp + ebx - 0x4024]
call fcn.0040dd43
push dword [ebp + ebx - 0x4034]
call fcn.0040dd43
add ebx, 4
pop ecx
pop ecx
cmp ebx, 0x10
jb 0x402b65
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0040a2bd
mov esp, ebp
pop ebp
ret 0x14