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

Disassembly:
push rbp
push rbx
push rsi
push rdi
lea rbp, [rsp - 0x3f]
sub rsp, 0xe8
mov rbx, rcx
mov rcx, qword [rcx + 0x88]
test rcx, rcx
je 0x1400e4b62
xor esi, esi
cmp si, word [rcx]
je 0x1400e4b62
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1400e4b62
mov dl, 1
lea rcx, [rsp + 0x20]
call fcn.1400e32f0
nop
mov rbx, qword [rbx + 0x88]
call fcn.1400395f8
mov rcx, rax
test rax, rax
je 0x1400e4b7b
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x6f], rax
lea rdi, [rsi - 1]
test rbx, rbx
je 0x1400e4980
cmp rbx, 0x10000
jae 0x1400e4971
movzx edx, bx
lea rcx, [rbp + 0x6f]
call fcn.14003812c
jmp 0x1400e4992
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400e4974
jmp 0x1400e4982
mov eax, esi
mov r8d, eax
mov rdx, rbx
lea rcx, [rbp + 0x6f]
call fcn.140038edc
nop
lea rdx, [rbp + 0x6f]
lea rcx, [rsp + 0x20]
call fcn.1400eef30
test al, al
sete bl
mov rdx, qword [rbp + 0x6f]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400e49c2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
test bl, bl
jne 0x1400e4af0
mov dword [rbp + 0x67], esi
mov rbx, qword [str.LastLogIdx]
call fcn.1400395f8
mov rcx, rax
test rax, rax
je 0x1400e4b86
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x7f], rax
test rbx, rbx
je 0x1400e4a1e
cmp rbx, 0x10000
jae 0x1400e4a0f
movzx edx, bx
lea rcx, [rbp + 0x7f]
call fcn.14003812c
jmp 0x1400e4a30
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400e4a12
jmp 0x1400e4a20
mov eax, esi
mov r8d, eax
mov rdx, rbx
lea rcx, [rbp + 0x7f]
call fcn.140038edc
nop
mov rbx, qword [str.Config]
call fcn.1400395f8
mov rcx, rax
test rax, rax
je 0x1400e4b70
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x77], rax
test rbx, rbx
je 0x1400e4a81
cmp rbx, 0x10000
jae 0x1400e4a72
movzx edx, bx
lea rcx, [rbp + 0x77]
call fcn.14003812c
jmp 0x1400e4a93
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400e4a75
jmp 0x1400e4a83
mov eax, esi
mov r8d, eax
mov rdx, rbx
lea rcx, [rbp + 0x77]
call fcn.140038edc
nop
lea r9, [rbp + 0x67]
lea r8, [rbp + 0x7f]
lea rdx, [rbp + 0x77]
lea rcx, [rsp + 0x20]
call fcn.1400ed990
test al, al
sete bl
mov rdx, qword [rbp + 0x77]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400e4acc
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rbp + 0x7f]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400e4ae9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
test bl, bl
jne 0x1400e4af0
mov esi, dword [rbp + 0x67]
lea rax, vtable.CoreTech::CObfuscatedIniReader.0
mov qword [rsp + 0x20], rax
lea rcx, [rbp - 0x21]
call fcn.1400e3570
lea rcx, [rbp - 0x69]
call fcn.1400e3560
lea rax, vtable.CoreTech::CBaseIniReader.0
mov qword [rsp + 0x20], rax
mov rdx, qword [rbp - 0x79]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400e4b37
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rdx, qword [rsp + 0x28]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x1400e4b54
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [r8 + 8]
mov eax, esi
add rsp, 0xe8
pop rdi
pop rsi
pop rbx
pop rbp
ret
xor eax, eax
add rsp, 0xe8
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov ecx, 0x80004005
call fcn.140039608
nop
mov ecx, 0x80004005
call fcn.140039608
int3
mov ecx, 0x80004005
call fcn.140039608
int3