Function at 0x1400d253c
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xccd0]
mov eax, 0xcdd0
call fcn.1400eeb60
sub rsp, rax
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [rsp + 0xce08], rbx
mov qword [rsp + 0xce10], rsi
mov qword [rsp + 0xce18], rdi
mov rax, qword [0x14013f2b0]
xor rax, rsp
mov qword [rbp + 0xccc0], rax
mov rdi, rcx
xor esi, esi
mov word [0x1401a5240], si
mov word [0x1401a6240], si
mov word [0x1401a7240], si
mov byte [0x1401a5236], sil
mov edx, dword [0x1401dd210]
mov rax, qword gs:[0x58]
mov r8d, 4
mov rcx, qword [rax + rdx*8]
lea r15, [0x1401a8440]
lea r13, [0x1401a8500]
lea r12, [0x1401a85c0]
mov eax, dword [r8 + rcx]
cmp dword [0x1401a8e88], eax
jle 0x1400d2631
lea rcx, [0x1401a8e88]
call fcn.1400ef300
cmp dword [0x1401a8e88], 0xffffffff
jne 0x1400d2631
mov rcx, r15
call fcn.14008e174
nop
mov rcx, r13
call fcn.14008e174
nop
mov rcx, r12
call fcn.14008e174
nop
lea rcx, [0x14010b7dc]
call fcn.1400ef110
nop
lea rcx, [0x1401a8e88]
call fcn.1400ef2a0
mov qword [0x1401a5228], r15
mov rcx, r15
call fcn.14008e36c
mov rcx, r13
call fcn.14008e36c
mov rcx, r12
call fcn.14008e36c
mov al, byte [0x140145ca4]
mov byte [0x1401a8e87], al
test rdi, rdi
jne 0x1400d2691
mov qword [rsp + 0x20], r15
lea r9, [0x1400d2f70]
mov r8, qword [0x140145cd8]
lea rdx, str.FINDFILES
mov rcx, qword [0x14017d140]
call qword [sym.imp.USER32.dll_DialogBoxParamW]
test rax, rax
je 0x1400d2f3f
lea r9, [0x1400d3d2c]
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 9]
call fcn.1400c814c
lea rcx, str.HELPSearchResults
call fcn.1400c95b0
mov r14d, 1
cmp byte [0x1401a8e83], sil
je 0x1400d26c8
mov cl, r14b
call fcn.140049b80
test rdi, rdi
je 0x1400d2743
mov r8d, 0x40a
lea rdx, [0x14015cb34]
lea rcx, [rbp + 0x84a0]
call fcn.14008e130
mov word [0x1401a8e81], 0x101
mov byte [0x1401a8e80], sil
lea rdx, [0x14010d538]
mov rcx, r12
call fcn.14008e1b0
lea rbx, [0x14015eb58]
mov rcx, rbx
call fcn.14008e394
jmp 0x1400d2725
lea rdx, [rbp + 0x8cc0]
mov rcx, r15
call fcn.14008e1b0
mov r8d, 0x800
lea rdx, [rbp + 0x8cc0]
mov rcx, rbx
call fcn.14008e284
test al, al
jne 0x1400d2716
jmp 0x1400d27e5
mov word [rbp + 0x84a0], si
cmp word [0x1401a8680], si
je 0x1400d27e5
mov ebx, 0x40a
cmp byte [0x1401a8e84], sil
je 0x1400d277b
mov r8d, ebx
lea rdx, [0x14011b374]
lea rcx, [rbp + 0x84a0]
call fcn.14008e0f8
cmp byte [0x1401a8e85], sil
je 0x1400d279a
mov r8, rbx
lea rdx, [0x14011b378]
lea rcx, [rbp + 0x84a0]
call fcn.14008e0f8
cmp byte [0x1401a8e86], sil
je 0x1400d27b9
mov r8, rbx
lea rdx, [0x14011b37c]
lea rcx, [rbp + 0x84a0]
call fcn.14008e0f8
mov r8, rbx
lea rdx, [0x140116f88]
lea rcx, [rbp + 0x84a0]
call fcn.14008e0f8
mov r8, rbx
lea rdx, [0x1401a8680]
lea rcx, [rbp + 0x84a0]
call fcn.14008e0f8
lea r12, [0x140169340]
cmp byte [0x140145ca4], sil
je 0x1400d280a
mov r8d, 0x800
lea rdx, [rbp + 0xbcc0]
mov rcx, r12
call fcn.1400053d4
mov dword [0x1401a5230], esi
mov byte [0x1401a5235], sil
mov byte [0x1401a5234], r14b
cmp byte [0x1401a8e80], sil
je 0x1400d2836
cmp byte [0x1401a8e87], sil
mov r8d, 2
je 0x1400d2839
mov r8d, esi
test rdi, rdi
cmove rdi, r13
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov rdx, rdi
lea rcx, [rbp + 0x32d0]
call fcn.14008a4c0
nop
mov qword [rbp + 0xf60], rsi
mov qword [rbp + 0xf68], rsi
mov qword [rbp + 0xf70], rsi
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x32d0]
call fcn.14008b020
test eax, eax
jne 0x1400d2e2b
lea r13, [0x1401a85c0]
mov al, byte [0x140145ca6]
test al, al
jne 0x1400d2e31
call fcn.1400460c4
mov edx, dword [0x1401a5230]
test edx, edx
je 0x1400d28c6
mov r8b, byte [0x1401a8e87]
mov rcx, qword [0x140146cf0]
call fcn.1400d5f40
mov dword [0x1401a5230], esi
cmp word [rsp + 0x50], 0x2e
jne 0x1400d28db
cmp word [rsp + 0x52], 0x5c
lea rdx, [rsp + 0x54]
je 0x1400d28e0
lea rdx, [rsp + 0x50]
mov r8d, 0x800
lea rcx, [rbp + 0x9cc0]
call fcn.14008e130
mov edx, 0x50
lea rcx, [rbp + 0x9cc0]
call fcn.140046120
mov rbx, rax
mov ecx, 0x523
call fcn.140088044
mov r8, rax
mov r9, rbx
mov edx, 0x800
lea rcx, [rbp + 0xacc0]
call fcn.1400026d0
lea r8, [rbp + 0xacc0]
mov edx, 0x9b
mov rcx, qword [0x140146cf0]
call qword [sym.imp.USER32.dll_SetDlgItemTextW]
cmp byte [0x1401a8e82], sil
je 0x1400d2cc9
cmp byte [rbp + 0xf5c], sil
jne 0x1400d2cc9
mov rcx, r13
call fcn.14008e394
jmp 0x1400d2978
xor r8d, r8d
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.14006cb7c
test al, al
jne 0x1400d298d
mov rcx, r13
call fcn.14008e224
test rax, rax
mov rbx, rax
jne 0x1400d2964
jmp 0x1400d2cc9
mov dil, r14b
cmp word [rbx], 0x2a
jne 0x1400d29d8
cmp word [rbx + 2], si
jne 0x1400d29d8
mov al, byte [0x1401a8e87]
test al, al
jne 0x1400d29de
mov byte [rsp + 0x38], r14b
mov byte [rsp + 0x30], sil
mov byte [rsp + 0x28], sil
mov qword [rsp + 0x20], rsi
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x50]
mov rcx, r12
call fcn.140005868
mov dil, al
test al, al
je 0x1400d2cc9
mov al, byte [0x1401a8e87]
mov ebx, 2
mov qword [0x140147e40], rbx
movzx ecx, byte [0x1401698c4]
test al, al
cmovne ecx, r14d
mov byte [0x1401698c4], cl
cmp word [rbp + 0x84a0], si
setne r8b
mov r9d, r14d
lea rdx, [rsp + 0x50]
mov rcx, r12
call fcn.140005c38
cmp eax, ebx
jne 0x1400d2a2e
call fcn.140047844
test al, al
je 0x1400d2e2b
jmp 0x1400d2e12
cmp eax, r14d
jne 0x1400d2cc9
mov word [rbp + 0x8cc0], si
mov byte [rsp + 0x38], r14b
mov byte [rsp + 0x30], sil
mov byte [rsp + 0x28], sil
mov qword [rsp + 0x20], rsi
mov r9d, 0x800
lea r8, [rbp + 0x8cc0]
lea rdx, [rsp + 0x50]
mov rcx, r12
call fcn.140005868
lea rdx, [rbp + 0x8cc0]
lea rcx, [rsp + 0x50]
call fcn.14009116c
test eax, eax
je 0x1400d2b24
lea rcx, [rbp + 0x8cc0]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x1400d2e12
mov r8d, 0x800
lea rdx, [0x14010d548]
lea rcx, [rbp + 0x8cc0]
call fcn.1400793bc
lea rdx, [rbp + 0x8cc0]
lea rcx, [rsp + 0x50]
call fcn.14009116c
test eax, eax
je 0x1400d2adf
lea rcx, [rbp + 0x8cc0]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x1400d2e12
mov r8d, 0x800
lea rdx, [0x14010d540]
lea rcx, [rbp + 0x8cc0]
call fcn.1400793bc
lea rdx, [rbp + 0x8cc0]
lea rcx, [rsp + 0x50]
call fcn.14009116c
test eax, eax
je 0x1400d2b24
lea rcx, [rbp + 0x8cc0]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
movzx edi, dil
cmp eax, 0xffffffff
cmovne edi, esi
test dil, dil
je 0x1400d2e12
mov rcx, r12
cmp word [rbp + 0x84a0], si
jne 0x1400d2be7
mov ebx, esi
mov qword [rbp + 0x3260], rsi
mov qword [rbp + 0x3268], rsi
mov qword [rbp + 0x3270], rsi
jmp 0x1400d2bcb
cmp byte [0x140145ca6], sil
jne 0x1400d2e12
add ebx, r14d
test bl, 0x1f
jne 0x1400d2b70
call fcn.1400460c4
mov rcx, r15
call fcn.14008e394
jmp 0x1400d2b93
mov r8d, 4
lea rdx, [rbp + 0x21d0]
mov rcx, rax
call fcn.14006cb7c
test al, al
jne 0x1400d2ba2
mov rcx, r15
call fcn.14008e224
test rax, rax
jne 0x1400d2b7a
jmp 0x1400d2bc8
mov ecx, dword [rbp + 0x3278]
call fcn.140069170
mov r8b, al
lea r9, [0x14010f51c]
lea rdx, [rbp + 0x21d0]
lea rcx, [rsp + 0x50]
call fcn.1400d815c
mov rcx, r12
mov r8b, r14b
lea rdx, [rbp + 0x21d0]
call fcn.140005450
test al, al
jne 0x1400d2b56
jmp 0x1400d2e12
lea rdx, [rbp + 0xfa0]
call fcn.1400053f4
mov rcx, r12
call fcn.140005100
bt rax, 0xa
jae 0x1400d2c20
mov ecx, 0x3ac
call fcn.140088044
mov rdx, rax
lea rcx, [0x14015db52]
call fcn.1400d54f4
jmp 0x1400d2e12
xor ecx, ecx
call fcn.1400c0714
mov r8d, 0x800
lea rdx, [0x14015db52]
mov rcx, r12
call fcn.140005000
mov eax, dword [rbp + 0x10e8]
mov dword [0x14015aaf4], eax
lea rcx, [0x14015eb58]
call fcn.14008e36c
mov rcx, r15
call fcn.14008e394
jmp 0x1400d2c6d
mov rdx, rax
lea rcx, [0x14015eb58]
call fcn.14008e1b0
mov rcx, r15
call fcn.14008e224
test rax, rax
jne 0x1400d2c5e
mov byte [0x140158a11], r14b
mov qword [0x1401589f0], rsi
mov qword [0x1401589f8], rsi
lea r9, [rbp + 0x84a0]
lea r8, [0x14011b380]
mov edx, 0x810
lea rcx, [0x14015cb32]
call fcn.1400026d0
mov byte [0x14015cb18], r14b
mov qword [0x140147e40], rbx
mov rcx, r12
call fcn.140006c58
jmp 0x1400d2e12
cmp byte [0x1401a8e81], sil
je 0x1400d2e12
cmp byte [rbp + 0xf5c], sil
je 0x1400d2cec
cmp word [rbp + 0x84a0], si
jne 0x1400d2e12
mov rcx, r15
call fcn.14008e394
jmp 0x1400d2d0d
mov r8d, 4
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.14006cb7c
test al, al
jne 0x1400d2d1f
mov rcx, r15
call fcn.14008e224
test rax, rax
jne 0x1400d2cf6
jmp 0x1400d2e12
mov ecx, 0x10000
call fcn.1400f5a10
mov rbx, rax
test rax, rax
jne 0x1400d2d42
lea rcx, [0x14017d200]
call fcn.140063060
jmp 0x1400d2e12
cmp word [rbp + 0x84a0], si
jne 0x1400d2d82
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rbp + 0x84a0]
xor edx, edx
xor ecx, ecx
call fcn.14006ab70
mov qword [rsp + 0x20], rsi
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.14006ab70
jmp 0x1400d2e0a
lea rcx, [rbp + 0x11a0]
call fcn.140067948
nop
mov r8d, 4
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x11a0]
call fcn.140067f1c
test al, al
jne 0x1400d2db8
lea rcx, [rbp + 0x11a0]
call fcn.140067984
jmp 0x1400d2e12
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x84a0]
xor edx, edx
xor ecx, ecx
jmp 0x1400d2ddd
movsxd rdx, eax
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rcx, rbx
xor r9d, r9d
call fcn.14006ab70
mov r8d, 0x10000
mov rdx, rbx
lea rcx, [rbp + 0x11a0]
call fcn.140068180
test eax, eax
jne 0x1400d2dcf
lea rcx, [rbp + 0x11a0]
call fcn.140067984
mov rcx, rbx
call fcn.1400f5a08
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x32d0]
call fcn.14008b020
test eax, eax
je 0x1400d2890
mov al, byte [0x140145ca6]
mov byte [0x1401a5234], sil
test al, al
je 0x1400d2e4f
movzx eax, al
cmp byte [0x1401a5236], sil
cmovne eax, esi
mov byte [0x140145ca6], al
mov edx, dword [0x1401a5230]
test edx, edx
je 0x1400d2e72
mov r8b, byte [0x1401a8e87]
mov rcx, qword [0x140146cf0]
call fcn.1400d5f40
mov dword [0x1401a5230], esi
mov byte [0x1401a5235], sil
mov ecx, 0x271
call fcn.140088044
mov r8, rax
mov edx, 0x9b
mov rcx, qword [0x140146cf0]
call qword [sym.imp.USER32.dll_SetDlgItemTextW]
cmp byte [0x140145ca6], sil
je 0x1400d2eb0
mov rcx, qword [0x140146cf0]
call qword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x1400d2eb5
call fcn.1400c95c8
cmp word [0x1401a6240], si
je 0x1400d2edf
lea rdx, [0x1401a6240]
lea rbx, [0x14016c120]
mov rcx, rbx
call fcn.140041060
cmp word [0x1401a5240], si
je 0x1400d2f09
jmp 0x1400d2ef7
cmp word [0x1401a5240], si
je 0x1400d2f1a
lea rbx, [0x14016c120]
mov rcx, rbx
call fcn.14003ed78
mov r8b, r14b
lea rdx, [0x1401a5240]
mov rcx, rbx
call fcn.14003e830
lea rdx, [0x1401a7240]
mov rcx, rbx
call fcn.140040630
jmp 0x1400d2f33
cmp byte [0x140145ca4], sil
je 0x1400d2f33
lea rdx, [rbp + 0xbcc0]
mov rcx, r12
call fcn.140006c90
nop
lea rcx, [rbp + 0x32d0]
call fcn.14008a590
mov rcx, qword [rbp + 0xccc0]
xor rcx, rsp
call fcn.1400eebd0
lea r11, [rsp + 0xcdd0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret