Function at 0x4eaf40
Capabilities:
Delete directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x78
mov dword [ebp - 0x74], 0
push 0x51efe8
push 1
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp + 8]
call fcn.004040c0
push eax
call fcn.00404350
add esp, 8
mov byte [ebp - 0x31], al
lea ecx, [ebp - 0x38]
call fcn.00407160
movzx ecx, byte [ebp - 0x31]
test ecx, ecx
je 0x4eafa5
lea ecx, [ebp + 8]
call fcn.004032b0
sub eax, 1
push eax
lea edx, [ebp - 0x3c]
push edx
lea ecx, [ebp + 8]
call fcn.00404150
push eax
lea ecx, [ebp + 8]
call fcn.00402e10
lea ecx, [ebp - 0x3c]
call fcn.00407160
push 0x51efec
push 1
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp + 0xc]
call fcn.004040c0
push eax
call fcn.00404350
add esp, 8
mov byte [ebp - 0x3d], al
lea ecx, [ebp - 0x44]
call fcn.00407160
movzx ecx, byte [ebp - 0x3d]
test ecx, ecx
je 0x4eaffd
lea ecx, [ebp + 0xc]
call fcn.004032b0
sub eax, 1
push eax
lea edx, [ebp - 0x48]
push edx
lea ecx, [ebp + 0xc]
call fcn.00404150
push eax
lea ecx, [ebp + 0xc]
call fcn.00402e10
lea ecx, [ebp - 0x48]
call fcn.00407160
lea ecx, [ebp - 0x18]
call fcn.004ae8ad
lea ecx, [ebp - 0x1c]
call fcn.00402e30
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 8]
push ecx
push 0x51eff0
lea edx, [ebp - 0x1c]
push edx
call fcn.00405f70
add esp, 0x10
push 0
lea ecx, [ebp - 0x1c]
call sym.QiyiInstaller.exe_public:_enum_eScriptType___thiscall_CScriptModule::Type_void_
push eax
lea ecx, [ebp - 0x18]
call fcn.004ae945
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x4eb1c6
lea ecx, [ebp - 0x18]
call fcn.004ae6ff
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x18]
call fcn.004ae86e
test eax, eax
jne 0x4eb1c1
lea ecx, [ebp - 0x18]
call fcn.0040cf70
test eax, eax
je 0x4eb101
lea ecx, [ebp - 0x24]
call fcn.00402e30
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x18]
call fcn.004aec03
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp + 8]
push edx
push 0x51effc
lea eax, [ebp - 0x24]
push eax
call fcn.00405f70
add esp, 0x10
lea ecx, [ebp - 0x4c]
call fcn.00407160
lea ecx, [ebp + 0xc]
call sym.QiyiInstaller.exe_public:_enum_eScriptType___thiscall_CScriptModule::Type_void_
push eax
lea ecx, [ebp - 0x24]
call fcn.00403d00
test eax, eax
je 0x4eb0f4
movzx ecx, byte [ebp + 0x14]
push ecx
push ecx
mov ecx, esp
mov dword [ebp - 0x50], esp
lea edx, [ebp + 0x10]
push edx
call fcn.004020c0
push ecx
mov ecx, esp
mov dword [ebp - 0x54], esp
lea eax, [ebp + 0xc]
push eax
call fcn.004020c0
push ecx
mov ecx, esp
mov dword [ebp - 0x58], esp
lea edx, [ebp - 0x24]
push edx
call fcn.004020c0
call fcn.004eaf40
add esp, 0x10
lea ecx, [ebp - 0x24]
call fcn.00407160
jmp 0x4eb1c1
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x18]
call fcn.004aec03
movzx ecx, byte [ebp + 0x14]
test ecx, ecx
je 0x4eb179
push 0x51f008
lea ecx, [ebp - 0x28]
call fcn.00403d00
test eax, eax
je 0x4eb177
push str.npclient.dll
lea ecx, [ebp - 0x28]
call fcn.00403d00
test eax, eax
je 0x4eb177
lea ecx, [ebp - 0x2c]
call fcn.00402e30
mov edx, dword [ebp - 0x28]
push edx
mov eax, dword [ebp + 8]
push eax
push 0x51f040
lea ecx, [ebp - 0x2c]
push ecx
call fcn.00405f70
add esp, 0x10
push ecx
mov ecx, esp
mov dword [ebp - 0x5c], esp
lea edx, [ebp - 0x2c]
push edx
call fcn.004020c0
call sym.QiyiInstaller.exe_Delete
add esp, 4
lea ecx, [ebp - 0x2c]
call fcn.00407160
jmp 0x4eb1b9
lea ecx, [ebp - 0x30]
call fcn.00402e30
mov eax, dword [ebp - 0x28]
push eax
mov ecx, dword [ebp + 8]
push ecx
push 0x51f04c
lea edx, [ebp - 0x30]
push edx
call fcn.00405f70
add esp, 0x10
push ecx
mov ecx, esp
mov dword [ebp - 0x60], esp
lea eax, [ebp - 0x30]
push eax
call fcn.004020c0
call sym.QiyiInstaller.exe_Delete
add esp, 4
lea ecx, [ebp - 0x30]
call fcn.00407160
lea ecx, [ebp - 0x28]
call fcn.00407160
jmp 0x4eb03c
lea ecx, [ebp - 0x18]
call fcn.004ae619
lea ecx, [ebp + 8]
call sym.QiyiInstaller.exe_public:_enum_eScriptType___thiscall_CScriptModule::Type_void_
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
je 0x4eb1ff
or dword [ebp - 0x74], 1
lea ecx, [ebp + 8]
push ecx
push str.Remove_Dir_Success:
lea edx, [ebp - 0x6c]
push edx
call fcn.00404280
add esp, 0xc
mov dword [ebp - 0x78], eax
jmp 0x4eb21b
or dword [ebp - 0x74], 2
lea eax, [ebp + 8]
push eax
push str.Remove_Dir_Failed:
lea ecx, [ebp - 0x70]
push ecx
call fcn.00404280
add esp, 0xc
mov dword [ebp - 0x78], eax
mov edx, dword [ebp - 0x78]
mov dword [ebp - 0x68], edx
push ecx
mov ecx, esp
mov dword [ebp - 0x64], esp
mov eax, dword [ebp - 0x68]
push eax
call fcn.004020c0
mov ecx, 0x556f08
call fcn.004f6bd0
mov ecx, dword [ebp - 0x74]
and ecx, 2
je 0x4eb24e
and dword [ebp - 0x74], 0xfffffffd
lea ecx, [ebp - 0x70]
call fcn.00407160
mov edx, dword [ebp - 0x74]
and edx, 1
je 0x4eb262
and dword [ebp - 0x74], 0xfffffffe
lea ecx, [ebp - 0x6c]
call fcn.00407160
lea ecx, [ebp - 0x1c]
call fcn.00407160
lea ecx, [ebp - 0x18]
call fcn.004ae8d6
lea ecx, [ebp + 8]
call fcn.00407160
lea ecx, [ebp + 0xc]
call fcn.00407160
lea ecx, [ebp + 0x10]
call fcn.00407160
mov esp, ebp
pop ebp
ret