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

Disassembly:
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov qword [rbp - 8], 0xfffffffffffffffe
mov qword [rsp + 0xb0], rbx
mov rsi, rdx
mov r14, rcx
xor edi, edi
mov dword [rbp - 0x48], edi
call fcn.1400f5f94
mov rcx, rax
test rax, rax
je 0x140045207
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsi], rax
lea r12, [0x140328530]
mov rdx, r12
mov rcx, rsi
call fcn.140014ab0
lea rbx, [rdi - 1]
test al, al
jne 0x140044cea
mov rax, rbx
nop dword [rax]
inc rax
cmp word [r12 + rax*2], 0
jne 0x140044cd0
mov r8d, eax
mov rdx, r12
mov rcx, rsi
call fcn.140010390
nop
mov dword [rbp - 0x48], 1
call fcn.1400f5f94
mov rcx, rax
test rax, rax
je 0x140045212
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x40], rax
mov rdx, r12
lea rcx, [rbp - 0x40]
call fcn.140014ab0
test al, al
jne 0x140044d3e
mov rax, rbx
inc rax
cmp word [r12 + rax*2], 0
jne 0x140044d23
mov r8d, eax
mov rdx, r12
lea rcx, [rbp - 0x40]
call fcn.140010390
nop
call fcn.1400f5f94
mov rcx, rax
test rax, rax
je 0x14004521d
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x58], rax
mov rdx, r12
lea rcx, [rbp + 0x58]
call fcn.140014ab0
test al, al
jne 0x140044d8b
mov rax, rbx
inc rax
cmp word [r12 + rax*2], 0
jne 0x140044d70
mov r8d, eax
mov rdx, r12
lea rcx, [rbp + 0x58]
call fcn.140010390
nop
call fcn.1400f5f94
mov rcx, rax
test rax, rax
je 0x1400451fc
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x50], rax
mov rdx, r12
lea rcx, [rbp + 0x50]
call fcn.140014ab0
test al, al
jne 0x140044ddb
mov rax, rbx
nop dword [rax]
inc rax
cmp word [r12 + rax*2], 0
jne 0x140044dc0
mov r8d, eax
mov rdx, r12
lea rcx, [rbp + 0x50]
call fcn.140010390
nop
lea r15, [r14 + 0x88]
mov rdx, r15
mov rcx, rsi
call fcn.140014890
lea rcx, str.Users_Manual_
mov rax, rbx
nop word [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x140044e00
mov r8d, eax
mov rdx, rcx
mov rcx, rsi
call fcn.14001bf50
mov r8d, edi
mov rax, qword [r14 + 0x10]
mov r9, qword [rax + 0x550]
lea rcx, [0x1403bcbf8]
lea r10, [0x1403bcdf8]
test r9, r9
je 0x140044e40
movzx edx, word [r9 + 0xc]
jmp 0x140044e42
mov edx, edi
movzx eax, word [rcx]
cmp edx, eax
je 0x140044e57
inc r8d
add rcx, 0x10
cmp rcx, r10
jl 0x140044e34
jmp 0x140044e86
movsxd rax, r8d
add rax, rax
lea rdx, str.8r3_
mov rdx, qword [rdx + rax*8]
test rdx, rdx
je 0x140044e7a
mov rdi, rbx
inc rdi
cmp word [rdx + rdi*2], 0
jne 0x140044e70
mov r8d, edi
lea rcx, [rbp + 0x50]
call fcn.14001bf50
mov rdx, qword [rbp + 0x50]
mov r8d, dword [rdx - 0x10]
mov rcx, rsi
call fcn.14001bf50
lea r14, str..xps
mov r8, r14
mov rdx, rsi
lea rcx, [rbp - 0x30]
call fcn.14001b6c0
mov rdi, rax
mov qword [rbp - 0x38], rax
mov rax, qword [rax]
movzx ecx, word [rax]
cmp cx, word [0x140328530]
jne 0x140044edc
lea r8, str.c:userschunyung_source_repos_rtkngui_rtknguicommon.cpp
mov edx, 0x740
lea rcx, str._VCpl__RETURN_FALSE_ON_FALSE:_Line___d__File___s_n
call fcn.140052e90
jmp 0x140044eee
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x140045151
mov rdx, qword [rdi]
sub rdx, 0x18
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140044f0a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea r13, str..pdf
mov r8, r13
mov rdx, rsi
lea rcx, [rbp - 0x28]
call fcn.14001b6c0
mov rdi, rax
mov qword [rbp - 0x50], rax
mov rax, qword [rax]
movzx ecx, word [rax]
cmp cx, word [0x140328530]
jne 0x140044f50
lea r8, str.c:userschunyung_source_repos_rtkngui_rtknguicommon.cpp
mov edx, 0x740
lea rcx, str._VCpl__RETURN_FALSE_ON_FALSE:_Line___d__File___s_n
call fcn.140052e90
jmp 0x140044f62
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x14004511d
mov rdx, qword [rdi]
sub rdx, 0x18
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140044f7e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea r14, str..chm
mov r8, r14
mov rdx, rsi
lea rcx, [rbp - 0x20]
call fcn.14001b6c0
mov rdi, rax
mov qword [rbp - 0x50], rax
mov rcx, qword [rax]
movzx r9d, word [rcx]
cmp r9w, word [0x140328530]
jne 0x140044fc6
lea r8, str.c:userschunyung_source_repos_rtkngui_rtknguicommon.cpp
mov edx, 0x740
lea rcx, str._VCpl__RETURN_FALSE_ON_FALSE:_Line___d__File___s_n
call fcn.140052e90
jmp 0x140044fd5
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x1400450f0
mov rdx, qword [rdi]
sub rdx, 0x18
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140044ff1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, r15
mov rcx, rsi
call fcn.140014890
mov rax, rbx
lea rdx, str.Users_Manual_
inc rax
cmp word [rdx + rax*2], 0
jne 0x140045006
mov r8d, eax
mov rcx, rsi
call fcn.14001bf50
lea rdx, str.English
mov rax, rbx
inc rax
cmp word [rdx + rax*2], 0
jne 0x140045025
mov r8d, eax
mov rcx, rsi
call fcn.14001bf50
lea rdi, str..xps
mov r8, rdi
mov rdx, rsi
lea rcx, [rbp - 0x18]
call fcn.14001b6c0
mov rcx, rax
call fcn.140031de0
test eax, eax
je 0x140045072
mov rax, rbx
nop
inc rax
cmp word [rdi + rax*2], 0
jne 0x140045060
mov rdx, rdi
jmp 0x14004517e
mov r8, r13
mov rdx, rsi
lea rcx, [rbp - 0x10]
call fcn.14001b6c0
mov rcx, rax
call fcn.140031de0
test eax, eax
je 0x1400450a4
mov rax, rbx
inc rax
cmp word [r13 + rax*2], 0
jne 0x140045090
mov rdx, r13
jmp 0x14004517e
mov r8, r14
mov rdx, rsi
lea rcx, [rbp - 0x38]
call fcn.14001b6c0
mov rcx, rax
call fcn.140031de0
test eax, eax
mov rax, rbx
je 0x1400450d2
inc rax
cmp word [r14 + rax*2], 0
jne 0x1400450c2
jmp 0x14004517b
inc rax
cmp word [r12 + rax*2], 0
jne 0x1400450d2
mov r8d, eax
mov rdx, r12
mov rcx, rsi
call fcn.140010390
jmp 0x14004518a
mov rdx, qword [rdi]
sub rdx, 0x18
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14004510c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, rbx
nop
inc rax
cmp word [r14 + rax*2], 0
jne 0x140045110
jmp 0x14004517b
mov rdx, qword [rdi]
sub rdx, 0x18
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140045139
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, rbx
nop dword [rax]
inc rax
cmp word [r13 + rax*2], 0
jne 0x140045140
mov rdx, r13
jmp 0x14004517e
mov rdx, qword [rdi]
sub rdx, 0x18
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14004516d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, rbx
inc rax
cmp word [r14 + rax*2], 0
jne 0x140045170
mov rdx, r14
mov r8d, eax
mov rcx, rsi
call fcn.14001bf50
nop
mov rdx, qword [rbp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400451a8
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400451c6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x40]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebx
sub ebx, 1
jg 0x1400451e1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, rsi
mov rbx, qword [rsp + 0xb0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80004005
call fcn.14000dc70
nop
mov ecx, 0x80004005
call fcn.14000dc70
int3
mov ecx, 0x80004005
call fcn.14000dc70
nop
mov ecx, 0x80004005
call fcn.14000dc70
int3