Function at 0x40da00
Capabilities:
Delete directory
Delete file
Get graphical window text

Disassembly:
push 0xffffffffffffffff
push 0x4484f0
mov eax, dword fs:[0]
push eax
sub esp, 0x34
push ebx
push ebp
push edi
mov eax, dword [0x45e5e0]
xor eax, esp
push eax
lea eax, [esp + 0x44]
mov dword fs:[0], eax
mov dword [esp + 0x4c], 0
mov edi, dword [esp + 0x54]
cmp dword [edi - 0xc], 0
je 0x40dd4e
push 0x450da0
lea ecx, [esp + 0x18]
call fcn.0040b810
push 0x450da0
lea ecx, [esp + 0x14]
mov byte [esp + 0x50], 1
call fcn.0040b810
lea ecx, [esp + 0x28]
mov byte [esp + 0x4c], 2
call fcn.0041c30b
push 0
push edi
lea ecx, [esp + 0x30]
mov byte [esp + 0x54], 3
call fcn.0041c399
test eax, eax
jne 0x40daac
lea ecx, [esp + 0x28]
mov byte [esp + 0x4c], 2
call fcn.0041c331
mov byte [esp + 0x4c], 1
mov eax, dword [esp + 0x10]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jmp 0x40dd1d
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov ebp, dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x40dac0
lea ecx, [esp + 0x28]
call fcn.0041c020
lea ecx, [esp + 0x28]
mov dword [esp + 0x20], eax
call fcn.0041c2ce
cmp eax, 1
je 0x40dc95
mov edx, dword [esp + 0x28]
mov eax, dword [edx + 0x38]
push 0x10
lea ecx, [esp + 0x2c]
call eax
test eax, eax
je 0x40db6c
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0041c5b0
mov byte [esp + 0x4c], 4
mov edx, dword [eax]
push edx
lea eax, [esp + 0x18]
push str._s.
push eax
call fcn.00402790
mov byte [esp + 0x58], 3
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
add esp, 0xc
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x40db3f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x14]
push ecx
add eax, 0xfffffff0
mov dword [esp + 0x28], esp
mov edi, esp
push eax
call fcn.00402290
add eax, 0x10
add esp, 4
mov dword [edi], eax
call fcn.0040d780
mov edi, dword [esp + 0x58]
add esp, 4
jmp 0x40dc95
add dword [esi + 0x7c], 1
mov eax, dword [esi + 0x7c]
cmp eax, 0x1f4
jne 0x40db9b
mov ecx, dword [esi + 0xbc]
push 0
push 0xb
push 0x402
push ecx
mov dword [esi + 0x90], 0xb
call ebp
jmp 0x40dc62
cmp eax, 0x44c
jne 0x40dbc3
mov edx, dword [esi + 0xbc]
push 0
push 0xd
push 0x402
push edx
mov dword [esi + 0x90], 0xd
call ebp
jmp 0x40dc62
cmp eax, 0x7d0
jne 0x40dbe8
mov eax, dword [esi + 0xbc]
push 0
push 0xf
push 0x402
push eax
mov dword [esi + 0x90], 0xf
call ebp
jmp 0x40dc62
cmp eax, 0xbb8
jne 0x40dc0d
mov ecx, dword [esi + 0xbc]
push 0
push 0x11
push 0x402
push ecx
mov dword [esi + 0x90], 0x11
call ebp
jmp 0x40dc62
cmp eax, 0xdac
jne 0x40dc1b
mov eax, 0x13
jmp 0x40dc51
cmp eax, 0x12c0
jne 0x40dc29
mov eax, 0x14
jmp 0x40dc51
cmp eax, 0x1770
jne 0x40dc37
mov eax, 0x16
jmp 0x40dc51
cmp eax, 0x1f40
jne 0x40dc45
mov eax, 0x18
jmp 0x40dc51
cmp eax, 0x2710
jne 0x40dc62
mov eax, 0x1a
lea ecx, [esi + 0x9c]
mov dword [esi + 0x90], eax
call fcn.00410e20
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x2c]
call fcn.0041c5b0
mov eax, dword [eax]
push eax
call ebx
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x40dc95
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp dword [esp + 0x20], 0
jne 0x40dac0
lea ecx, [esp + 0x20]
push ecx
lea ecx, [esp + 0x2c]
call fcn.0041c362
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x50], 5
call fcn.00402100
mov byte [esp + 0x4c], 3
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x40dce2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x28]
call fcn.0041bf50
mov ecx, dword [esp + 0x10]
push ecx
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
lea ecx, [esp + 0x28]
mov byte [esp + 0x4c], 2
call fcn.0041c331
mov byte [esp + 0x4c], 1
mov eax, dword [esp + 0x10]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x40dd29
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x4c], 0
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x40dd4e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [edi - 0x10]
mov dword [esp + 0x4c], 0xffffffff
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x40dd72
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
xor eax, eax
mov ecx, dword [esp + 0x44]
mov dword fs:[0], ecx
pop ecx
pop edi
pop ebp
pop ebx
add esp, 0x40
ret 4