Function at 0x6adbd980
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
push eax
mov eax, 0x40d8
call fcn.6adfb260
sub esp, eax
mov eax, dword [esp + eax]
mov dword [ebp - 0x409c], ecx
test byte [edx + 0x25], 0x40
jne 0x6ae122ed
mov edi, edx
lea ecx, [ebp - 0x4018]
lea edx, [ebp - 0x4090]
mov dword [esp + 0x14], 0x4000
mov dword [esp + 0x18], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x900a8
mov dword [esp], eax
call fcn.6adb8020
test eax, eax
js 0x6ae122be
mov eax, dword [ebp - 0x4090]
mov word [ebp - 0x4092], ax
movzx edx, ax
cmp ax, 7
jbe 0x6ae12293
mov ecx, dword [ebp - 0x4018]
cmp ecx, 0x80000013
je 0x6adbdb80
mov esi, dword [ebp - 0x409c]
mov esi, dword [esi]
mov dword [ebp - 0x40a0], esi
test byte [esi + 0x15], 1
je 0x6adbdb2b
movzx eax, ax
mov dword [ebp - 0x40a4], esp
lea ecx, [ebp - 0x4034]
mov dword [esp + 4], eax
lea eax, [ebp - 0x4018]
mov dword [esp + 8], ecx
mov dword [esp], eax
call fcn.6ada3040
test eax, eax
jne 0x6adbdb10
cmp dword [ebp - 0x4034], 0xa000000c
je 0x6adbdb98
mov eax, dword [ebp - 0x4020]
mov ecx, dword [ebp - 0x4028]
and eax, 0xfffffffe
mov dword [ebp - 0x40a8], ecx
lea esi, [ecx + eax]
cmp ecx, esi
je 0x6adbda99
mov ecx, dword [ebp - 0x40a8]
cmp word [ecx], 0x5c
je 0x6adbdc40
mov edx, dword [ebp - 0x401c]
mov ebx, edx
shr ebx, 1
lea eax, [ebx + ebx + 0x11]
shr eax, 4
shl eax, 4
call fcn.6adfb260
sub esp, eax
mov eax, dword [ebp - 0x4024]
and edx, 0xfffffffe
lea esi, [esp + 0x1c]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], esi
call sub.msvcrt.dll_memcpy
mov eax, dword [ebp - 0x40a0]
xor edx, edx
mov word [esi + ebx*2], dx
mov dword [eax + 0x2c], esi
mov dword [esp + 8], 0
mov dword [esp + 4], 4
mov dword [esp], eax
call fcn.6ada5950
mov esp, dword [ebp - 0x40a4]
cmp eax, 0xffffffff
je 0x6adbdc36
test eax, eax
jne 0x6adbdb75
lea esi, [esi]
nop
mov eax, dword [ebp - 0x409c]
mov ecx, dword [ebp - 0x4018]
movzx edx, word [ebp - 0x4092]
mov eax, dword [eax]
mov dword [ebp - 0x40a0], eax
movzx eax, word [ebp - 0x4012]
mov dword [edi + 0x60], ecx
sub edx, 8
mov word [edi + 0x64], ax
mov eax, dword [ebp - 0x40a0]
mov eax, dword [eax]
mov dword [esp + 0x10], edx
mov dword [esp + 8], 0x6ae1a7e2
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x4010]
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], edi
call fcn.6ad91b60
cmp al, 1
sbb eax, eax
and eax, 0x27
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
and dword [edi + 0x24], 0xfffffbff
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
test byte [ebp - 0x402c], 1
jne 0x6adbdb10
jmp 0x6adbda6d
mov ecx, dword [ebp - 0x401c]
mov esi, esp
mov ebx, ecx
shr ebx, 1
lea eax, [ebx + ebx + 0x11]
shr eax, 4
shl eax, 4
call fcn.6adfb260
sub esp, eax
mov eax, dword [ebp - 0x4024]
and ecx, 0xfffffffe
lea edx, [esp + 0x1c]
mov dword [esp + 8], ecx
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [ebp - 0x40a8], edx
call sub.msvcrt.dll_memcpy
mov edx, dword [ebp - 0x40a8]
xor eax, eax
mov word [edx + ebx*2], ax
mov eax, dword [ebp - 0x40a0]
mov dword [eax + 0x2c], edx
mov dword [esp + 8], 0
mov dword [esp + 4], 3
mov dword [esp], eax
call fcn.6ada5950
mov esp, esi
test eax, eax
je 0x6adbdfb2
mov esp, dword [ebp - 0x40a4]
cmp eax, 0xffffffff
jne 0x6adbdb75
and word [edi + 0x66], 0xfffe
jmp 0x6adbdb10
cmp eax, 2
jg 0x6adbde0b
mov eax, dword [ebp - 0x40a0]
xor ebx, ebx
mov dword [ebp - 0x404c], 0x18
mov dword [ebp - 0x4048], 0
mov ecx, dword [eax + 0x98]
mov dword [ebp - 0x40b4], edi
mov dword [ebp - 0x4040], 0
mov dword [ebp - 0x40b8], ecx
mov ecx, dword [eax + 0x9c]
mov dword [ebp - 0x403c], 0
mov dword [ebp - 0x40bc], ecx
mov ecx, dword [eax + 0x90]
mov eax, dword [eax + 0x94]
mov word [ebp - 0x4080], bx
mov dword [ebp - 0x40ac], ecx
mov dword [ebp - 0x40b0], eax
lea eax, [ebp - 0x4080]
mov dword [ebp - 0x4044], eax
mov eax, dword [ebp - 0x40a8]
mov dword [ebp - 0x4038], 0
mov dword [ebp - 0x407c], eax
mov edx, eax
xor eax, eax
lea esi, [esi]
mov ebx, edx
cmp esi, edx
jne 0x6adbdcfb
jmp 0x6adbdd27
add ebx, 2
cmp esi, ebx
je 0x6adbde20
cmp word [ebx], 0x5c
jne 0x6adbdcf0
cmp esi, ebx
je 0x6adbde20
lea esi, [esi]
add ebx, 2
cmp esi, ebx
je 0x6adbde20
cmp word [ebx], 0x5c
je 0x6adbdd10
mov ecx, ebx
sub ecx, edx
add eax, ecx
mov word [ebp - 0x4080], ax
mov word [ebp - 0x407e], ax
lea eax, [ebp - 0x4078]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x404c]
mov dword [esp + 8], eax
lea eax, [ebp - 0x408c]
mov dword [esp + 0x14], 0x4000
mov dword [esp + 0x10], 7
mov dword [esp + 4], 0xa0
mov dword [esp], eax
call sub.ntdll.dll_NtOpenFile
sub esp, 0x18
test eax, eax
js 0x6adbddf5
mov eax, dword [ebp - 0x4048]
test eax, eax
je 0x6adbdd8b
mov dword [esp], eax
call sub.ntdll.dll_NtClose
sub esp, 4
mov edi, dword [ebp - 0x408c]
xor ecx, ecx
lea eax, [ebp - 0x4088]
mov dword [ebp - 0x407c], ebx
mov word [ebp - 0x4080], cx
mov dword [ebp - 0x4048], edi
mov dword [esp + 8], eax
lea eax, [ebp - 0x4070]
mov dword [esp + 0x10], 6
mov dword [esp + 0xc], 8
mov dword [esp + 4], eax
mov dword [esp], edi
call sub.ntdll.dll_NtQueryInformationFile
sub esp, 0x14
test eax, eax
js 0x6adbddf5
mov eax, dword [ebp - 0x40ac]
mov ecx, dword [ebp - 0x40b0]
xor eax, dword [ebp - 0x4088]
xor ecx, dword [ebp - 0x4084]
or ecx, eax
je 0x6adbde30
cmp esi, ebx
je 0x6adbdf81
movzx eax, word [ebp - 0x4080]
mov edx, ebx
jmp 0x6adbdce0
cmp word [ecx + 2], 0x5c
jne 0x6adbdc49
jmp 0x6adbda99
mov ecx, esi
sub ecx, edx
add eax, ecx
jmp 0x6adbdd27
lea eax, [ebp - 0x4068]
mov dword [esp + 0x10], 1
mov dword [esp + 8], eax
lea eax, [ebp - 0x4070]
mov dword [esp + 0xc], 0x18
mov dword [esp + 4], eax
mov dword [esp], edi
call sub.ntdll.dll_NtQueryVolumeInformationFile
sub esp, 0x14
test eax, eax
jns 0x6adbde6a
cmp eax, 0x80000005
jne 0x6adbddf5
cmp dword [ebp - 0x406c], 0xb
jbe 0x6adbddf5
mov eax, dword [ebp - 0x40b8]
xor eax, dword [ebp - 0x4060]
or eax, dword [ebp - 0x40bc]
jne 0x6adbddf5
mov eax, dword [ebp - 0x4048]
mov edi, dword [ebp - 0x40b4]
test eax, eax
jne 0x6adbdf97
mov eax, dword [ebp - 0x4028]
cmp ebx, dword [ebp - 0x40a8]
jbe 0x6adbdec6
mov edx, dword [ebp - 0x40a8]
jmp 0x6adbdebf
sub ebx, 2
cmp edx, ebx
jae 0x6adbdec6
cmp word [ebx - 2], 0x5c
je 0x6adbdeb8
cmp ebx, eax
je 0x6adbda99
sub eax, ebx
add eax, dword [ebp - 0x4020]
lea edx, [eax + 0xc]
mov ecx, eax
and edx, 0xfffffffe
lea eax, [edx + 0xf]
mov dword [ebp - 0x40a8], edx
shr eax, 4
shl eax, 4
call fcn.6adfb260
sub esp, eax
mov eax, dword [0x6ae28a8c]
mov dword [esp + 8], ecx
lea esi, [esp + 0x1c]
mov dword [esp + 0x1c], eax
mov eax, dword [0x6ae28a90]
mov dword [esp + 4], ebx
mov dword [esp + 0x20], eax
mov eax, dword [0x6ae28a94]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x28]
mov dword [esp], eax
call sub.msvcrt.dll_memcpy
mov edx, dword [ebp - 0x40a8]
mov dword [ebp - 0x4028], esi
lea esi, [esp + 0x24]
lea eax, [ebp - 0x4092]
mov dword [ebp - 0x4024], esi
mov dword [ebp - 0x4020], edx
sub edx, 8
mov dword [ebp - 0x401c], edx
mov dword [esp + 8], eax
lea eax, [ebp - 0x4018]
mov dword [esp + 4], eax
lea eax, [ebp - 0x4034]
mov dword [esp], eax
call fcn.6ada3140
test eax, eax
je 0x6adbdbb0
mov esp, dword [ebp - 0x40a4]
jmp 0x6adbdb10
mov eax, dword [ebp - 0x4048]
mov edi, dword [ebp - 0x40b4]
mov ebx, dword [ebp - 0x40a8]
test eax, eax
je 0x6adbdfa7
mov dword [esp], eax
call sub.ntdll.dll_NtClose
sub esp, 4
jmp 0x6adbde9f
mov eax, dword [ebp - 0x4028]
jmp 0x6adbdec6
mov esp, dword [ebp - 0x40a4]
jmp 0x6adbdc36
mov eax, dword [ebp - 0x409c]
mov eax, dword [eax]
mov eax, dword [eax + 0x80]
mov dword [esp], str.__ls_:_reparse_point_buffer_is_too_short
add eax, 8
mov dword [esp + 4], eax
call fcn.6ae0f1f5
mov eax, 0x1b
jmp 0x6adbdb75
mov edi, dword [ebp - 0x409c]
mov edx, dword [edi]
mov edx, dword [edx + 0x80]
mov dword [esp], eax
mov dword [esp + 4], str.__ls_:_Cant_get_reparse_point
add edx, 8
mov dword [esp + 8], edx
call fcn.6ae11e11
mov eax, 0x33
jmp 0x6adbdb75
mov eax, dword [ebp - 0x409c]
mov eax, dword [eax]
mov eax, dword [eax + 0x80]
mov dword [esp], str.Ignoring_reparse_data_of_encrypted_file___ls_
add eax, 8
mov dword [esp + 4], eax
call fcn.6ae0f249
xor eax, eax
jmp 0x6adbdb75