Function at 0x4560d0
Capabilities:
Delete directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x655b10
mov eax, dword fs:[0]
push eax
sub esp, 0x70
mov eax, dword [0x738844]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
push str.AdobeGCData_folder:_checking_for_junction_symlink
push 0
push 4
push str.AGSService
push dword [0x73dd6c]
mov dword [ebp - 0x74], esi
call fcn.004ffb60
mov ecx, esi
mov dword [ebp - 0x48], 0
add esp, 0x14
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x456133
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x58]
call fcn.00453520
sub esp, 0x18
mov dword [ebp - 4], 0
mov edx, esp
mov ecx, esi
mov dword [edx + 0x10], 0
lea edi, [ecx + 1]
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x456168
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.00453520
call fcn.0046c620
add esp, 0x18
test al, al
je 0x456250
push str.AdobeGCData_folder_is_a_junction__deleting_it_and_creating_new_again
push 0
push 4
push str.AGSService
push dword [0x73dd6c]
call fcn.004ffb60
mov eax, dword [ebp - 0x48]
lea edx, [ebp - 0x58]
add esp, 0x14
mov dword [ebp - 0x30], 0
cmp dword [ebp - 0x44], 0x10
lea edi, [ebp - 0x58]
mov dword [ebp - 0x2c], 7
cmovae edx, dword [ebp - 0x58]
add eax, edx
cmp dword [ebp - 0x44], 0x10
mov dword [ebp - 0x7c], eax
cmovae edi, dword [ebp - 0x58]
xor ecx, ecx
sub eax, edi
mov word [ebp - 0x40], cx
push eax
lea ecx, [ebp - 0x40]
call fcn.00445fb0
push dword [ebp - 0x74]
lea ecx, [ebp - 0x40]
push dword [ebp - 0x7c]
push edi
call fcn.004522f0
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 1
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
push dword [ebp - 0x74]
call fcn.00462230
mov edx, dword [ebp - 0x2c]
add esp, 4
cmp edx, 8
jb 0x456589
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x45657f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4565d6
jmp 0x45657f
push 1
sub esp, 0x18
mov ecx, esi
mov edx, esp
lea edi, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x456270
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.00453520
call fcn.004691e0
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x456589
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
push 0x693978
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00455b90
add esp, 0xc
push 0xe
push str.AdobeGCData.db
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.004533c0
movups xmm0, xmmword [eax]
movq xmm1, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov edx, dword [ebp - 0x14]
movq qword [ebp - 0x78], xmm1
movups xmmword [ebp - 0x38], xmm0
cmp edx, 0x10
jb 0x456330
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45631d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4565db
push edx
push ecx
call fcn.005d2f48
movups xmm0, xmmword [ebp - 0x38]
add esp, 8
movq xmm1, qword [ebp - 0x78]
lea ecx, [ebp - 0x70]
movq qword [ebp - 0x18], xmm1
movups xmmword [ebp - 0x28], xmm0
mov byte [ebp - 4], 2
call fcn.0043d230
sub esp, 0x18
lea eax, [ebp - 0x28]
mov ecx, esp
push eax
call fcn.004418b0
call fcn.0046c620
add esp, 0x18
test al, al
je 0x45638c
push str.AdobeGCData.db_is_a_symlink__deleting_it
push 0
push 4
push str.AGSService
push dword [0x73dd6c]
call fcn.004ffb60
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.005fd9e6
add esp, 0x18
push 0x693978
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00455b90
add esp, 0xc
push 0x15
push str.AdobeGCLaunchEvent.db
mov ecx, eax
mov byte [ebp - 4], 4
call fcn.004533c0
movups xmm0, xmmword [eax]
movq xmm1, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov edx, dword [ebp - 0x14]
movq qword [ebp - 0x78], xmm1
movups xmmword [ebp - 0x38], xmm0
cmp edx, 0x10
jb 0x456412
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4563ff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4565e0
push edx
push ecx
call fcn.005d2f48
movups xmm0, xmmword [ebp - 0x38]
add esp, 8
movq xmm1, qword [ebp - 0x78]
lea ecx, [ebp - 0x70]
movq qword [ebp - 0x18], xmm1
movups xmmword [ebp - 0x28], xmm0
mov byte [ebp - 4], 2
call fcn.0043d230
sub esp, 0x18
lea eax, [ebp - 0x28]
mov ecx, esp
push eax
call fcn.004418b0
call fcn.0046c620
add esp, 0x18
test al, al
je 0x45646e
push str.AdobeGCLaunchEvent.db_is_a_symlink__deleting_it
push 0
push 4
push str.AGSService
push dword [0x73dd6c]
call fcn.004ffb60
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.005fd9e6
add esp, 0x18
push 0x693978
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00455b90
add esp, 0xc
push 0x13
push str.AdobeNGLAppIDMap.db
mov ecx, eax
mov byte [ebp - 4], 5
call fcn.004533c0
movups xmm0, xmmword [eax]
movq xmm1, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov edx, dword [ebp - 0x14]
movq qword [ebp - 0x78], xmm1
movups xmmword [ebp - 0x38], xmm0
cmp edx, 0x10
jb 0x4564f4
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4564e1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4565e5
push edx
push ecx
call fcn.005d2f48
movups xmm0, xmmword [ebp - 0x38]
add esp, 8
movq xmm1, qword [ebp - 0x78]
lea ecx, [ebp - 0x70]
movq qword [ebp - 0x18], xmm1
movups xmmword [ebp - 0x28], xmm0
mov byte [ebp - 4], 2
call fcn.0043d230
sub esp, 0x18
lea eax, [ebp - 0x28]
mov ecx, esp
push eax
call fcn.004418b0
call fcn.0046c620
add esp, 0x18
test al, al
je 0x456550
push str.AdobeNGLAppIDMap.db_is_a_symlink__deleting_it
push 0
push 4
push str.AGSService
push dword [0x73dd6c]
call fcn.004ffb60
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.005fd9e6
add esp, 0x18
push esi
call fcn.0046a600
mov edx, dword [ebp - 0x14]
add esp, 4
cmp edx, 0x10
jb 0x456589
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45657f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4565ea
push edx
push ecx
call fcn.005d2f48
add esp, 8
mov edx, dword [ebp - 0x44]
cmp edx, 0x10
jb 0x4565b9
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4565af
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4565ef
push edx
push ecx
call fcn.005d2f48
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005d2f07
mov esp, ebp
pop ebp
ret 4
call fcn.005f1c34
call fcn.005f1c34
call fcn.005f1c34
call fcn.005f1c34
call fcn.005f1c34
call fcn.005f1c34
int3