Function at 0x140031f1c
Capabilities:
Get file system object information

Disassembly:
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x54f0
call fcn.1400d8110
sub rsp, rax
mov qword [rsp + 0xa0], 0xfffffffffffffffe
mov qword [rsp + 0x5528], rbx
mov qword [rsp + 0x5530], rbp
mov qword [rsp + 0x5538], rsi
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x54e0], rax
mov r15, rcx
mov r12d, 1
mov byte [rcx + 0x10], r12b
mov esi, 0x800
mov r8d, esi
lea rdx, [rsp + 0x44e0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov r8, rsi
lea rdx, str.Formats
lea rcx, [rsp + 0x44e0]
call fcn.1400617d0
mov edi, 0x4001
mov dword [rsp + 0x20], edi
mov ebx, 0x2b8
mov r9d, ebx
lea r8, [rsp + 0x11c0]
xor edx, edx
lea rcx, [rsp + 0x44e0]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov eax, dword [rsp + 0x11c8]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x20], 0x4003
mov r9d, ebx
lea r8, [rsp + 0x11c0]
xor edx, edx
lea rcx, [rsp + 0x44e0]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov eax, dword [rsp + 0x11c8]
mov dword [rsp + 0x34], eax
mov r8, rsi
lea rdx, [rsp + 0x34e0]
lea r13, [0x1401575c0]
mov rcx, r13
call fcn.140014e94
mov dword [rsp + 0x20], edi
mov r9d, ebx
lea r8, [rsp + 0x11c0]
xor edx, edx
lea rcx, [rsp + 0x34e0]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov ebx, dword [rsp + 0x11c8]
mov rdi, 0xffffffffffff0000
mov r9, rdi
xor r8d, r8d
mov edx, 0x1101
mov rcx, qword [r15]
call qword [sym.imp.USER32.dll_SendMessageW]
xor edx, edx
lea r8d, [r12 + 0x37]
lea rcx, [rsp + 0x50]
call fcn.1400c7170
mov dword [rsp + 0x50], 0x27
lea rcx, [rsp + 0x34e0]
call fcn.1400615e8
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x70], esi
xor ebp, ebp
mov qword [rsp + 0x80], rbp
mov dword [rsp + 0x74], ebx
mov dword [rsp + 0x78], ebx
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x40], rdi
xor edx, edx
mov r8d, 0x1000
lea rcx, [rsp + 0x1c0]
call fcn.1400c7170
lea r9, [rsp + 0x40]
xor r8d, r8d
mov edx, 0x1132
mov rcx, qword [r15]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rsi, rax
mov qword [rsp + 0x1c0], rax
lea rcx, [rsp + 0xb0]
call fcn.14004b5f8
nop
mov word [rsp + 0x24e0], bp
mov r8b, r12b
lea rdx, [rsp + 0x1480]
mov rcx, r13
call fcn.140014b7c
cmp al, bpl
je 0x1400321e7
mov ecx, dword [rsp + 0x2490]
call fcn.14003bcac
cmp al, bpl
jne 0x140032133
lea rcx, [rsp + 0x1480]
call fcn.1400618f4
cmp word [rsp + 0x1480], bp
je 0x1400321cb
lea rax, [rsp + 0x1480]
lea rdx, [rsp + 0x24e0]
sub rdx, rax
movzx ecx, word [rax]
movzx r8d, word [rax + rdx]
sub ecx, r8d
jne 0x14003216a
add rax, 2
test r8d, r8d
jne 0x140032154
cmp ecx, ebp
je 0x1400321cb
mov rcx, rbp
movzx eax, word [rsp + rcx + 0x1480]
mov word [rsp + rcx + 0x24e0], ax
add rcx, 2
cmp ax, bp
jne 0x140032171
mov rdi, rbp
lea rbx, [rsp + 0x1480]
movzx ecx, word [rbx]
call fcn.140061180
cmp al, bpl
je 0x1400321a6
mov word [rbx], r12w
add rdi, r12
lea rbx, [rsp + rdi*2 + 0x1480]
cmp word [rbx], bp
jne 0x140032195
lea rdx, [rsp + 0x1480]
lea rcx, [rsp + 0xb0]
call fcn.14004b200
mov r8b, r12b
lea rdx, [rsp + 0x1480]
mov rcx, r13
call fcn.140014b7c
cmp al, bpl
jne 0x140032115
lea rcx, [rsp + 0xb0]
call fcn.14004b4a4
mov edx, r12d
lea rcx, [rsp + 0xb0]
call fcn.14004b660
mov rbx, rbp
mov rax, qword [rsp + 0x188]
cmp rax, rbp
jbe 0x14003225e
mov rdx, rbx
lea rcx, [rsp + 0xb0]
call fcn.14004b5b8
mov rdx, qword [rax]
mov rcx, rbp
cmp word [rdx], bp
je 0x14003224e
mov rax, rdx
cmp word [rax], r12w
jne 0x140032242
mov r8d, 0x5c
mov word [rax], r8w
add rcx, r12
lea rax, [rdx + rcx*2]
cmp word [rax], bp
jne 0x140032232
add rbx, r12
mov rax, qword [rsp + 0x188]
cmp rbx, rax
jb 0x140032214
mov r12, rbp
mov qword [rsp + 0x38], rbp
cmp rax, rbp
jbe 0x140032455
mov rdx, r12
lea rcx, [rsp + 0xb0]
call fcn.14004b5c8
mov rdi, qword [rax]
lea rsi, [0x1400e04f4]
cmp r12, rbp
jbe 0x1400322a3
lea rdx, [r12 - 1]
lea rcx, [rsp + 0xb0]
call fcn.14004b5c8
mov rsi, qword [rax]
mov r14d, ebp
cmp rdi, rbp
je 0x140032437
lea r13, [rsp + 0x1c0]
mov r12d, dword [rsp + 0x30]
movzx ecx, word [rdi]
call fcn.140061180
cmp al, bpl
je 0x1400322da
add rdi, 2
movzx ecx, word [rdi]
call fcn.140061180
cmp al, bpl
jne 0x1400322c9
movzx ecx, word [rsi]
call fcn.140061180
cmp al, bpl
je 0x1400322f8
add rsi, 2
movzx ecx, word [rsi]
call fcn.140061180
cmp al, bpl
jne 0x1400322e7
mov rbx, rdi
movzx eax, word [rbx]
cmp ax, bp
je 0x14003231c
movzx ecx, ax
call fcn.140061180
cmp al, bpl
jne 0x14003231c
add rbx, 2
mov ax, word [rbx]
cmp ax, bp
jne 0x140032303
movzx ecx, word [rbx]
call fcn.140061180
cmp al, bpl
je 0x140032363
mov rax, rbx
sub rax, rdi
and rax, 0xfffffffffffffffe
cmp rax, 4
jl 0x140032363
cmp word [rbx - 2], 0x2e
jne 0x140032363
lea rax, [rbx - 4]
cmp word [rax], 0x2e
jne 0x140032363
cmp rax, rdi
je 0x14003235d
movzx ecx, word [rbx - 6]
call fcn.140061180
cmp al, bpl
je 0x140032363
add rbx, 2
jmp 0x1400322fb
sub rbx, rdi
sar rbx, 1
mov eax, 0x7ff
mov rbp, rax
cmp rbx, rax
cmovb rbp, rbx
test rbp, rbp
je 0x140032430
mov r8, rbp
mov rdx, rdi
lea rcx, [rsp + 0x24e0]
call fcn.1400c8444
lea rbx, [rbp + rbp]
xor eax, eax
mov word [rsp + rbx + 0x24e0], ax
mov r8, rbp
lea rdx, [rsp + 0x24e0]
mov rcx, rsi
call fcn.1400883f8
xor ebp, ebp
cmp eax, ebp
jne 0x1400323d1
add rsi, rbx
cmp word [rsi], bp
je 0x14003241e
movzx ecx, word [rsi]
call fcn.140061180
cmp al, bpl
jne 0x14003241e
cmp r14d, 0x200
jae 0x140032432
mov dword [rsp + 0x74], r12d
mov eax, dword [rsp + 0x34]
mov dword [rsp + 0x78], eax
mov rax, qword [r13]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x24e0]
mov qword [rsp + 0x68], rax
lea r9, [rsp + 0x40]
xor r8d, r8d
mov edx, 0x1132
mov rcx, qword [r15]
call qword [sym.imp.USER32.dll_SendMessageW]
mov qword [r13 + 8], rax
lea rsi, [0x1400e04f4]
inc r14d
add r13, 8
add rdi, rbx
jne 0x1400322bc
jmp 0x140032432
xor ebp, ebp
mov r12, qword [rsp + 0x38]
inc r12
mov qword [rsp + 0x38], r12
cmp r12, qword [rsp + 0x188]
jb 0x14003226f
mov rsi, qword [rsp + 0x1c0]
mov r9, rsi
mov edx, 0x1102
mov r8d, 2
mov rcx, qword [r15]
call qword [sym.imp.USER32.dll_SendMessageW]
mov qword [r15 + 8], rsi
mov rcx, qword [rsp + 0x190]
cmp rcx, rbp
je 0x140032483
call fcn.1400c7040
nop
mov rcx, qword [rsp + 0x168]
cmp rcx, rbp
je 0x140032496
call fcn.1400c7040
nop
mov rcx, qword [rsp + 0xb0]
cmp rcx, rbp
je 0x1400324a8
call fcn.1400c7040
mov rcx, qword [rsp + 0x54e0]
xor rcx, rsp
call fcn.1400c6350
lea r11, [rsp + 0x54f0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret