Function at 0x56d9ad
Capabilities:
Set file attributes

Disassembly:
push 0xffffffffffffffff
push 0x67ab81
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x164
push ebx
push ebp
push esi
mov esi, ecx
xor ebp, ebp
push edi
lea ecx, [esp + 0x24]
mov dword [esp + 0x10], ebp
call fcn.0056cfe0
lea ecx, [esp + 0x14]
mov dword [esp + 0x17c], ebp
call fcn.0056cfe0
mov edi, dword [esp + 0x188]
lea ecx, [esp + 0x24]
push edi
mov byte [esp + 0x180], 1
call fcn.0056d050
mov ebx, dword [esp + 0x184]
test ebx, ebx
je 0x56dc25
test edi, edi
je 0x56dc25
cmp byte [edi], 0
je 0x56dc25
push ebp
push ebx
call fcn.0056c660
add esp, 8
test eax, eax
jl 0x56dc25
push ebp
lea ecx, [esp + 0x28]
call fcn.00613740
push eax
call fcn.0056c660
add esp, 8
test eax, eax
jge 0x56da51
push 1
lea ecx, [esp + 0x28]
call fcn.00613740
push eax
call fcn.0056d700
add esp, 8
test eax, eax
jne 0x56da51
xor edi, edi
jmp 0x56dc28
push ebx
mov ecx, esi
call fcn.0056d870
test eax, eax
jne 0x56da64
xor edi, edi
jmp 0x56dc28
push edi
xor edi, edi
push 2
push edi
push ebx
call fcn.00571de0
mov ebp, eax
add esp, 0x10
cmp ebp, edi
je 0x56dc28
cmp dword [esi + 8], edi
je 0x56da9a
push ebp
mov ecx, esi
call fcn.0056d5b0
cmp eax, 0xffffffff
mov dword [esi + 0x1c], eax
jne 0x56da9a
mov dword [esi + 0x1c], edi
jmp 0x56dc28
mov ebx, dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov edi, dword [esp + 0x10]
lea eax, [esp + 0x48]
push eax
push edi
push ebp
call fcn.00571e50
add esp, 0xc
test eax, eax
jne 0x56dbdc
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x18]
call fcn.0056d0b0
lea edx, [esp + 0x14]
push edx
call fcn.0056d640
lea eax, [esp + 0x50]
push eax
call fcn.0056d6d0
add esp, 8
lea ecx, [esp + 0x4c]
push ecx
lea ecx, [esp + 0x18]
call fcn.0056d0d0
test byte [esp + 0x150], 0x10
je 0x56db32
push 0
lea ecx, [esp + 0x18]
call fcn.00613740
push eax
call fcn.0056c660
add esp, 8
test eax, eax
jge 0x56db97
push 1
lea ecx, [esp + 0x18]
call fcn.00613740
push eax
call fcn.0056d700
add esp, 8
test eax, eax
je 0x56da5d
jmp 0x56db97
lea ecx, [esp + 0x34]
call fcn.0056cca0
push 2
push 0
lea ecx, [esp + 0x1c]
mov byte [esp + 0x184], 2
call fcn.00528b70
push eax
push edi
push ebp
call fcn.00571f60
add esp, 0x14
test eax, eax
jne 0x56dbbf
lea edx, [esp + 0x34]
push 0x80
push edx
lea ecx, [esp + 0x1c]
call fcn.00528b70
push eax
call fcn.0056c530
add esp, 8
push eax
call ebx
lea ecx, [esp + 0x34]
mov byte [esp + 0x17c], 1
mov dword [esp + 0x34], 0xeb9254
call fcn.0056cea0
mov dword [esi + 0x20], edi
lea eax, [esp + 0x14]
inc edi
push eax
lea ecx, [esi + 0xc]
mov dword [esp + 0x14], edi
call fcn.0056d0b0
mov ecx, esi
call fcn.0056d580
mov eax, dword [esi + 4]
test eax, eax
jne 0x56dbf0
jmp 0x56daa0
lea ecx, [esp + 0x34]
xor edi, edi
mov byte [esp + 0x17c], 1
mov dword [esp + 0x34], 0xeb9254
call fcn.0056cea0
jmp 0x56dc28
mov ecx, dword [esi + 0x1c]
mov dword [esi + 0x20], ecx
mov ecx, esi
call fcn.0056d580
mov ecx, esi
call fcn.0056d540
push ebp
call fcn.00571fb0
add esp, 4
lea ecx, [esp + 0x14]
mov byte [esp + 0x17c], 0
call fcn.0056d000
lea ecx, [esp + 0x24]
mov dword [esp + 0x17c], 0xffffffff
call fcn.0056d000
mov eax, 1
jmp 0x56dc70
or edi, 0xffffffff
mov edx, dword [esi + 0x1c]
mov ecx, esi
mov dword [esi + 0x20], edx
call fcn.0056d580
mov ecx, esi
call fcn.0056d540
test ebp, ebp
je 0x56dc49
push ebp
call fcn.00571fb0
add esp, 4
lea ecx, [esp + 0x14]
mov byte [esp + 0x17c], 0
call fcn.0056d000
lea ecx, [esp + 0x24]
mov dword [esp + 0x17c], 0xffffffff
call fcn.0056d000
mov eax, edi
mov ecx, dword [esp + 0x174]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x170
ret 8