Function at 0x1003d703
Capabilities:
Delete directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
push ebx
xor ebx, ebx
mov dword [ebp - 0x18], 0xe0a8eac8
mov byte [ebp - 1], bl
push edi
mov edi, ecx
cmp byte [ebp - 1], bl
je 0x1003d724
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x18], ebx
jmp 0x1003d73f
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0xffffffff
push eax
push ebx
call fcn.1003db01
dec dword [ebp - 0x18]
pop ecx
pop ecx
cmp dword [ebp - 0x18], 0xffffffeb
jne 0x1003d729
cmp dword [edi], ebx
je 0x1003da50
push esi
push dword [edi]
push ebx
push dword [edi + 4]
call fcn.1002427a
mov dword [ebp - 8], 0x1c77dcd
xor esi, esi
add esp, 0xc
mov dword [ebp - 0x10], 0xbf118c84
inc esi
mov dword [ebp - 0x10], esi
mov dword [ebp - 8], ebx
jmp 0x1003d783
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x14], 0xc03342eb
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x1003d775
mov dword [ebp - 8], ebx
jmp 0x1003d79b
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0xc], 0xfffffff8
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x1003d78d
mov dword [ebp - 0x14], ebx
jmp 0x1003d95e
mov dword [ebp - 0x18], 0xfffffff8
mov dword [ebp - 0x10], 0xfffffff9
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x24], 3
mov dword [ebp - 8], ebx
jmp 0x1003d7cf
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x44], esi
inc dword [ebp - 8]
cmp dword [ebp - 8], 3
jl 0x1003d7c5
mov dword [ebp - 8], ebx
jmp 0x1003d7e8
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x38], 0x97736eae
inc dword [ebp - 8]
cmp dword [ebp - 8], 2
jl 0x1003d7da
mov eax, dword [ebp - 0x14]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], ebx
jne 0x1003d806
dec dword [ebp - 0x20]
mov ecx, ebx
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x10]
je 0x1003d808
mov ecx, esi
mov eax, dword [ebp - 0xc]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xc]
sete dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x10]
mov edx, 0x36d0
sete cl
sub edx, ecx
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
mov dword [ebp - 0x3c], ecx
neg ecx
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setle dl
xor ecx, ecx
cmp eax, edx
setl cl
cmp ecx, dword [ebp - 0xc]
jg 0x1003d84e
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0xc], ebx
mov esi, dword [ebp - 0x18]
neg esi
sbb esi, esi
neg esi
sub esi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x18]
neg esi
mov eax, dword [ebp - 0x18]
sbb esi, esi
xor edx, edx
inc esi
cmp ecx, eax
setne dl
add edx, esi
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x40], eax
jg 0x1003d8b4
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x24]
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setl dl
xor ecx, ecx
cmp edx, eax
setge cl
cmp ecx, 0xfffffffc
jae 0x1003d8b4
xor esi, esi
inc esi
mov ecx, esi
jmp 0x1003d8b9
xor esi, esi
mov ecx, ebx
inc esi
mov eax, dword [ebp - 0x18]
add eax, ecx
je 0x1003d8c7
mov eax, esi
cmp dword [ebp - 8], ebx
jne 0x1003d8c9
mov eax, ebx
xor edx, edx
cmp eax, 0xe20
mov eax, dword [ebp - 0x24]
sete dl
xor ecx, ecx
cmp edx, eax
setne cl
sub ecx, 0xf2ec
cmp ecx, dword [ebp - 0x10]
jne 0x1003d8ef
mov edx, ebx
cmp dword [ebp - 8], ebx
je 0x1003d8f1
mov edx, esi
mov eax, dword [ebp - 0x34]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0xc]
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setge dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x40]
setg cl
sub eax, ecx
cmp eax, dword [ebp - 0xc]
jg 0x1003d947
cmp dword [ebp - 0xc], ebx
je 0x1003d947
mov dword [ebp - 8], 0xfffffff2
jmp 0x1003d93f
push ebx
lea eax, [ebp - 2]
mov byte [ebp - 2], bl
push 0x22a8
push eax
call fcn.1003f82b
add esp, 0xc
dec dword [ebp - 8]
cmp dword [ebp - 8], 0xfffffff1
jle 0x1003d927
jmp 0x1003d95b
mov dword [ebp - 0x10], ebx
jmp 0x1003d956
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xc], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1003d94c
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffeb
jle 0x1003d7a8
push ebx
lea eax, [ebp - 3]
mov byte [ebp - 3], bl
push 0x7251
push eax
call fcn.1003f657
push 0x1995
push 0x5273
push 0x5745
push edi
push ebx
push 0x143c
push 0x5516
call fcn.100405d4
add esp, 0x28
push 0xfffffffffffffffe
pop eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 8], ebx
jmp 0x1003d9bf
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x30], 0x5b57
inc dword [ebp - 8]
cmp dword [ebp - 8], 2
jl 0x1003d9b1
mov dword [ebp - 8], ebx
jmp 0x1003d9d8
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x1c], 0xc184c506
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x1003d9ca
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0x1c], ebx
jl 0x1003da43
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], ebx
jl 0x1003da3e
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x30]
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x30], ecx
jg 0x1003da1b
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x30], ecx
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x1003da36
push ebx
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
jmp 0x1003da36
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x1003da36
push 0x4229
push 0x3817
push ebx
call fcn.10040238
add esp, 0xc
mov eax, dword [ebp - 0x4c]
dec dword [ebp - 0x18]
jns 0x1003d9f0
dec dword [ebp - 0x1c]
jns 0x1003d9e5
push edi
push ebx
mov dword [edi + 4], ebx
call fcn.1003fa30
pop ecx
pop ecx
pop esi
pop edi
pop ebx
mov esp, ebp
pop ebp
ret