Function at 0x46b7f0
Capabilities:
Delete directory

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xc0
mov esi, ecx
mov eax, dword [0x5ff014]
xor eax, ebp
mov dword [ebp - 0x10], eax
movzx eax, byte [ecx + 0x17]
test al, al
jns 0x46b813
mov eax, dword [esi + 0x10]
test eax, eax
je 0x46b84c
lea edi, [esi + 0xc]
xor eax, eax
dec eax
lea ebx, [ebp - 0x1c]
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov dword [ebx + 8], eax
mov ecx, edi
push ebx
call fcn.004dd940
push edi
call fcn.0045b2e0
add esp, 4
test al, al
je 0x46b894
mov dword [ebp - 0xc8], 0
jmp 0x46b90a
push 2
call fcn.004deac0
add esp, 4
test al, al
je 0x46b88d
lea esi, [ebp - 0xc4]
mov ecx, esi
push 2
push 0x48
push str..._.._chrome_installer_util_self_cleaning_temp_dir.cc
call fcn.00454e90
lea eax, [ebp - 0xbc]
push 0x3a
push str.Attempting_to_Delete_an_uninitialized_SelfCleaningTempDir.
push eax
call fcn.004d4870
add esp, 0xc
mov ecx, esi
call fcn.00455270
xor ebx, ebx
jmp 0x46ba40
push 1
call fcn.004deac0
add esp, 4
test al, al
je 0x46b8f1
lea ecx, [ebp - 0xc4]
push 1
push 0x54
push str..._.._chrome_installer_util_self_cleaning_temp_dir.cc
call fcn.00454e90
lea eax, [ebp - 0xbc]
push 0x25
push str.Failed_to_delete_temporary_directory
push eax
call fcn.004d4870
add esp, 0xc
push edi
push eax
call fcn.00455670
add esp, 8
push 0x24
push str.._Scheduling_for_deletion_at_reboot.
push eax
call fcn.004d4870
add esp, 0xc
lea ecx, [ebp - 0xc4]
call fcn.00455270
mov al, 1
mov dword [ebp - 0xc8], eax
push edi
call fcn.00467de0
add esp, 4
test al, al
je 0x46ba36
mov al, byte [esi + 0xb]
test al, al
js 0x46b916
movzx ecx, al
jmp 0x46b919
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x46b9f5
mov dword [ebp - 0xcc], edi
lea edi, [ebp - 0xc4]
test byte [ebp - 0xc8], 1
jne 0x46b9bb
cmp byte [ebp - 0x11], 0
mov eax, ebx
jns 0x46b945
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x46b9c4
mov al, 1
mov dword [ebp - 0xc8], eax
push 1
call fcn.004deac0
add esp, 4
test al, al
je 0x46b9bb
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x91
je 0x46b9bb
call fcn.00551fb0
mov ecx, edi
push eax
push 1
push 0x61
push str..._.._chrome_installer_util_self_cleaning_temp_dir.cc
call fcn.005520e0
push 0x19
push str.Error_removing_directory
lea eax, [ebp - 0xbc]
push eax
call fcn.004d4870
add esp, 0xc
cmp byte [ebp - 0x11], 0
mov ecx, ebx
jns 0x46b9aa
mov ecx, dword [ebp - 0x1c]
push ecx
push eax
call fcn.005521e0
add esp, 8
mov ecx, edi
call fcn.00552140
push ebx
call fcn.00467c30
add esp, 4
mov ecx, ebx
push esi
call fcn.00453340
test al, al
jne 0x46b9ec
mov ecx, ebx
push edi
call fcn.004dd940
mov ecx, ebx
push edi
call fcn.004dd210
mov ecx, edi
call fcn.004dd1f0
jmp 0x46b92d
mov al, byte [esi + 0xb]
mov edi, dword [ebp - 0xcc]
test al, al
js 0x46ba04
mov word [esi], 0
mov byte [esi + 0xb], 0
jmp 0x46ba12
mov eax, dword [esi]
mov word [eax], 0
mov dword [esi + 4], 0
cmp byte [edi + 0xb], 0
js 0x46ba23
mov word [edi], 0
mov byte [edi + 0xb], 0
jmp 0x46ba32
mov eax, dword [esi + 0xc]
mov word [eax], 0
mov dword [esi + 0x10], 0
mov bl, 1
jmp 0x46ba38
xor ebx, ebx
lea ecx, [ebp - 0x1c]
call fcn.004dd1f0
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00504596
mov eax, ebx
add esp, 0xc0
pop esi
pop edi
pop ebx
pop ebp
ret