Function at 0x140064830
Capabilities:
Check if file exists

Disassembly:
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x5d8
mov qword [rsp + 0x5a0], 0xfffffffffffffffe
mov rax, qword [0x140136e20]
xor rax, rsp
mov qword [rsp + 0x5c0], rax
lea rdx, [0x1401003a4]
mov rcx, qword [rsp + 0x5e8]
call fcn.14006d0e8
mov qword [rsp + 0x68], rax
lea rdx, [0x1401003ac]
mov rcx, qword [rsp + 0x5e8]
call fcn.14006d0e8
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0x5e8]
call fcn.14005214c
mov qword [rsp + 0x50], rax
cmp qword [rsp + 0x68], 0
jne 0x1400648cb
cmp qword [rsp + 0x40], 0
jne 0x1400648cb
mov qword [rsp + 0x5a8], 1
jmp 0x1400648dc
mov rax, qword [rsp + 0x50]
add rax, 0xf
mov qword [rsp + 0x5a8], rax
mov rdx, qword [rsp + 0x5a8]
lea rcx, [rsp + 0x2b0]
call fcn.1400633e0
nop
lea rcx, [rsp + 0x2b0]
call fcn.14006a8f0
movzx eax, al
test eax, eax
je 0x14006492a
mov dword [rsp + 0x588], 0xffffffff
lea rcx, [rsp + 0x2b0]
call fcn.140062910
mov eax, dword [rsp + 0x588]
jmp 0x140065133
cmp qword [rsp + 0x68], 0
jne 0x14006493e
cmp qword [rsp + 0x40], 0
je 0x140064e23
lea rcx, [rsp + 0x580]
call fcn.140065190
lea rdx, [rsp + 0x580]
lea rcx, [rsp + 0x518]
call fcn.140065160
test eax, eax
je 0x1400649c7
mov dword [rsp + 0x520], 0
mov dword [rsp + 0x538], 0
mov dword [rsp + 0x524], 0
mov dword [rsp + 0x51c], 0
mov dword [rsp + 0x528], 0
mov dword [rsp + 0x518], 0
mov dword [rsp + 0x530], 0
mov dword [rsp + 0x534], 0
mov dword [rsp + 0x52c], 0
lea rax, [rsp + 0x518]
mov qword [rsp + 0x510], rax
mov rax, qword [rsp + 0x510]
mov eax, dword [rax + 0x10]
inc eax
mov rcx, qword [rsp + 0x510]
mov ecx, dword [rcx + 0x14]
add ecx, 0x76c
mov rdx, qword [rsp + 0x510]
mov edx, dword [rdx + 0xc]
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], eax
mov r9d, ecx
lea r8, str._04d_02d_02d
mov edx, 9
lea rcx, [rsp + 0x540]
call fcn.14006dcac
mov rax, qword [rsp + 0x510]
mov eax, dword [rax]
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x510]
mov eax, dword [rax + 4]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x510]
mov r9d, dword [rax + 8]
lea r8, str._02d_02d_02d
mov edx, 7
lea rcx, [rsp + 0x4d0]
call fcn.14006dcac
mov qword [rsp + 0x578], 0
mov qword [rsp + 0x4f0], 0
mov qword [rsp + 0x4e8], 0
mov qword [rsp + 0x568], 0
mov qword [rsp + 0x508], 0
mov qword [rsp + 0x570], 0
cmp qword [rsp + 0x68], 0
je 0x140064adf
lea rax, [rsp + 0x540]
mov qword [rsp + 0x578], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x4f0], rax
mov qword [rsp + 0x4e8], 8
cmp qword [rsp + 0x40], 0
je 0x140064bf2
cmp qword [rsp + 0x68], 0
je 0x140064bc9
lea rax, [rsp + 0x4d0]
mov qword [rsp + 0x568], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x560], rax
mov qword [rsp + 0x508], 6
mov rax, qword [rsp + 0x40]
cmp qword [rsp + 0x68], rax
jae 0x140064b4d
mov rax, qword [rsp + 0x68]
add rax, 4
mov rcx, qword [rsp + 0x40]
sub rcx, rax
mov rax, rcx
sar rax, 1
mov qword [rsp + 0x5b0], rax
jmp 0x140064b6c
mov rax, qword [rsp + 0x40]
add rax, 4
mov rcx, qword [rsp + 0x68]
sub rcx, rax
mov rax, rcx
sar rax, 1
mov qword [rsp + 0x5b0], rax
mov rax, qword [rsp + 0x5b0]
mov qword [rsp + 0x570], rax
mov rax, qword [rsp + 0x68]
cmp qword [rsp + 0x40], rax
jae 0x140064bc7
lea rdx, [rsp + 0x568]
lea rcx, [rsp + 0x578]
call fcn.14006c730
lea rdx, [rsp + 0x560]
lea rcx, [rsp + 0x4f0]
call fcn.14006c730
lea rdx, [rsp + 0x508]
lea rcx, [rsp + 0x4e8]
call fcn.14000b180
jmp 0x140064bf2
lea rax, [rsp + 0x4d0]
mov qword [rsp + 0x578], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x4f0], rax
mov qword [rsp + 0x4e8], 6
mov rax, qword [rsp + 0x5e8]
mov qword [rsp + 0x4e0], rax
xor edx, edx
lea rcx, [rsp + 0x2b0]
call fcn.140065ea0
mov qword [rsp + 0x558], rax
mov rax, qword [rsp + 0x4e0]
mov rcx, qword [rsp + 0x4f0]
sub rcx, rax
mov rax, rcx
sar rax, 1
mov qword [rsp + 0x500], rax
mov rax, qword [rsp + 0x500]
add rax, rax
mov r8, rax
mov rdx, qword [rsp + 0x4e0]
mov rcx, qword [rsp + 0x558]
call fcn.14004b590
mov rax, qword [rsp + 0x4e0]
mov rcx, qword [rsp + 0x500]
lea rax, [rax + rcx*2]
mov qword [rsp + 0x4e0], rax
mov rax, qword [rsp + 0x558]
mov rcx, qword [rsp + 0x500]
lea rax, [rax + rcx*2]
mov qword [rsp + 0x558], rax
mov rax, qword [rsp + 0x4e8]
add rax, rax
mov r8, rax
mov rdx, qword [rsp + 0x578]
mov rcx, qword [rsp + 0x558]
call fcn.14004b590
mov rax, qword [rsp + 0x558]
mov rcx, qword [rsp + 0x4e8]
lea rax, [rax + rcx*2]
mov qword [rsp + 0x558], rax
mov rax, qword [rsp + 0x4e0]
add rax, 4
mov qword [rsp + 0x4e0], rax
mov rax, qword [rsp + 0x570]
add rax, rax
mov r8, rax
mov rdx, qword [rsp + 0x4e0]
mov rcx, qword [rsp + 0x558]
call fcn.14004b590
mov rax, qword [rsp + 0x558]
mov rcx, qword [rsp + 0x570]
lea rax, [rax + rcx*2]
mov qword [rsp + 0x558], rax
mov rax, qword [rsp + 0x4e0]
mov rcx, qword [rsp + 0x570]
lea rax, [rax + rcx*2]
mov qword [rsp + 0x4e0], rax
mov rax, qword [rsp + 0x508]
add rax, rax
mov r8, rax
mov rdx, qword [rsp + 0x568]
mov rcx, qword [rsp + 0x558]
call fcn.14004b590
mov rax, qword [rsp + 0x558]
mov rcx, qword [rsp + 0x508]
lea rax, [rax + rcx*2]
mov qword [rsp + 0x558], rax
mov rax, qword [rsp + 0x4e0]
add rax, 4
mov qword [rsp + 0x4e0], rax
mov rax, qword [rsp + 0x5e8]
mov rcx, qword [rsp + 0x4e0]
sub rcx, rax
mov rax, rcx
sar rax, 1
mov rcx, qword [rsp + 0x50]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x4f8], rax
mov rax, qword [rsp + 0x4f8]
add rax, rax
mov r8, rax
mov rdx, qword [rsp + 0x4e0]
mov rcx, qword [rsp + 0x558]
call fcn.14004b590
mov rax, qword [rsp + 0x558]
mov rcx, qword [rsp + 0x4f8]
lea rax, [rax + rcx*2]
mov qword [rsp + 0x558], rax
xor eax, eax
mov rcx, qword [rsp + 0x558]
mov word [rcx], ax
lea rcx, [rsp + 0x2b0]
call fcn.140063840
mov qword [rsp + 0x5e8], rax
mov rdx, qword [rsp + 0x5e8]
lea rcx, [rsp + 0x80]
call fcn.140067b70
nop
mov dl, 1
lea rcx, [rsp + 0x80]
call fcn.140067c50
mov dl, 1
lea rcx, [rsp + 0x80]
call fcn.1400693e0
lea rcx, [rsp + 0x80]
call fcn.140069d10
mov qword [rsp + 0x5e8], rax
mov eax, dword [rsp + 0x5f0]
not eax
mov rcx, qword [rsp + 0x5e0]
mov ecx, dword [rcx + 0xb0]
and ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x5f0]
mov edx, dword [rsp + 0x5f8]
and edx, ecx
mov ecx, edx
or eax, ecx
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x60], 1
mov dword [rsp + 0x5c], 0x80
mov eax, dword [rsp + 0x58]
and eax, 0x400000
cmp eax, 0x400000
jne 0x140064eca
mov eax, dword [rsp + 0x60]
or eax, 2
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x58]
and eax, 0x100000
cmp eax, 0x100000
jne 0x140064ee4
mov dword [rsp + 0x48], 2
jmp 0x140064eec
mov dword [rsp + 0x48], 4
mov qword [rsp + 0x30], 0
mov eax, dword [rsp + 0x5c]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x20], eax
xor r9d, r9d
mov r8d, dword [rsp + 0x60]
mov edx, 0x40000000
mov rcx, qword [rsp + 0x5e8]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rcx, qword [rsp + 0x5e0]
mov qword [rcx + 0x80], rax
mov rax, qword [rsp + 0x5e0]
cmp qword [rax + 0x80], 0xffffffffffffffff
je 0x140064f61
mov r9d, 2
xor r8d, r8d
xor edx, edx
mov rax, qword [rsp + 0x5e0]
mov rcx, qword [rax + 0x80]
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov rax, qword [rsp + 0x5e0]
cmp qword [rax + 0x80], 0xffffffffffffffff
je 0x140065009
mov rax, qword [rsp + 0x5e0]
add rax, 0x88
mov rdx, qword [rsp + 0x5e8]
mov rcx, rax
call fcn.14000b190
mov eax, dword [rsp + 0x5f0]
not eax
mov rcx, qword [rsp + 0x5e0]
mov ecx, dword [rcx + 0xb0]
and ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x5f0]
mov edx, dword [rsp + 0x5f8]
and edx, ecx
mov ecx, edx
or eax, ecx
mov rcx, qword [rsp + 0x5e0]
mov dword [rcx + 0xb0], eax
mov dword [rsp + 0x58c], 0
lea rcx, [rsp + 0x80]
call fcn.140065e20
nop
lea rcx, [rsp + 0x2b0]
call fcn.140062910
mov eax, dword [rsp + 0x58c]
jmp 0x140065133
xor r9d, r9d
xor r8d, r8d
lea rdx, str.could_not_create_log_file:
mov ecx, 1
call fcn.14006dad8
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x5b8], eax
cmp dword [rsp + 0x5b8], 2
jb 0x140065059
cmp dword [rsp + 0x5b8], 3
jbe 0x14006508b
cmp dword [rsp + 0x5b8], 5
je 0x1400650ba
cmp dword [rsp + 0x5b8], 0x20
je 0x1400650e9
mov dword [rsp + 0x590], 0xfffffffc
lea rcx, [rsp + 0x80]
call fcn.140065e20
nop
lea rcx, [rsp + 0x2b0]
call fcn.140062910
mov eax, dword [rsp + 0x590]
jmp 0x140065133
mov dword [rsp + 0x594], 0xffffd8e9
lea rcx, [rsp + 0x80]
call fcn.140065e20
nop
lea rcx, [rsp + 0x2b0]
call fcn.140062910
mov eax, dword [rsp + 0x594]
jmp 0x140065133
mov dword [rsp + 0x598], 0xffffd8e5
lea rcx, [rsp + 0x80]
call fcn.140065e20
nop
lea rcx, [rsp + 0x2b0]
call fcn.140062910
mov eax, dword [rsp + 0x598]
jmp 0x140065133
mov dword [rsp + 0x59c], 0xffffd8e4
lea rcx, [rsp + 0x80]
call fcn.140065e20
nop
lea rcx, [rsp + 0x2b0]
call fcn.140062910
mov eax, dword [rsp + 0x59c]
jmp 0x140065133
mov rcx, qword [rsp + 0x5c0]
xor rcx, rsp
call fcn.14004ae00
add rsp, 0x5d8
ret