Function at 0x14010e0b0
Capabilities:
Check if file exists

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov ebp, r9d
mov rbx, r8
mov r12, rdx
mov rsi, rcx
mov rdi, qword [rsp + 0xf0]
mov rax, qword [0x14020b038]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov ecx, 0x148
call fcn.1401119e0
mov r14, rax
test rdi, rdi
je 0x14010e110
mov eax, 1
lock xadd dword [rdi + 8], eax
cmp eax, 0x7fffffff
je 0x14010e5b6
lea r15, [rsp + 0x28]
mov rcx, r15
mov rdx, rbx
call fcn.14005bbc0
mov rcx, r14
mov rdx, r12
mov r8d, ebp
xor r9d, r9d
call fcn.1400b4ac0
lea rax, [0x1401e1810]
mov qword [r14 + 0x50], rax
lea r12, [r14 + 0x58]
lea rdx, str.ChannelWin
lea r8, str.....mojocorechannel_win.cc
lea r13, [rsp + 0x60]
mov rcx, r13
mov r9d, 0x5a
call fcn.1400713b0
mov rcx, r12
mov rdx, r13
call fcn.1400cb280
lea rax, [0x1401e2030]
mov qword [r14], rax
lea rax, [0x1401e1800]
mov qword [r14 + 0x50], rax
lea rax, [0x1401e1910]
mov qword [r14 + 0x58], rax
mov al, byte [r15 + 1]
mov byte [r14 + 0x80], al
mov qword [r14 + 0x88], r14
test r14, r14
je 0x14010e1b9
mov eax, 1
lock xadd dword [r14 + 8], eax
cmp eax, 0x7fffffff
je 0x14010e5b9
mov qword [r14 + 0x90], 0
mov byte [r14 + 0x98], 0
mov qword [r14 + 0xa0], rdi
test rdi, rdi
je 0x14010e1ed
mov eax, 1
lock xadd dword [rdi + 8], eax
cmp eax, 0x7fffffff
je 0x14010e5bc
lea rcx, [r14 + 0xa8]
call fcn.140081420
lea rcx, [r14 + 0xc8]
call fcn.140081420
mov word [r14 + 0xe8], 0
lea rcx, [r14 + 0xf0]
call fcn.14005ce90
lea rcx, [r14 + 0xf8]
call fcn.140081420
xorps xmm0, xmm0
movups xmmword [r14 + 0x118], xmm0
movups xmmword [r14 + 0x128], xmm0
mov r15, qword [0x14021da80]
test r15, r15
je 0x14010e274
mov eax, dword [0x14021c330]
mov ecx, dword [0x14021ad00]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14010e544
mov r15, qword [0x14021c328]
jmp 0x14010e277
xor r15d, r15d
mov rcx, r15
btr rcx, 0x3f
mov rax, qword [0x14020e7a0]
and rax, rcx
cmp rax, qword [0x14020e788]
jne 0x14010e297
call fcn.140109560
mov qword [r14 + 0x138], r15
mov dword [r14 + 0x140], 1
mov rax, qword [rsp + 0x48]
inc rax
cmp rax, 2
jae 0x14010e307
lea rdx, [rsp + 0x30]
lea r15, [rsp + 0x50]
mov rcx, r15
call fcn.140086624
lea r12, [rsp + 0x60]
mov rcx, r12
mov rdx, r15
call fcn.140086642
mov dword [r12], 0
mov r15, qword [r12 + 8]
mov qword [r12 + 8], 0
test r15, r15
je 0x14010e362
cmp r15, 0xffffffffffffffff
jne 0x14010e367
xor r15d, r15d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
jmp 0x14010e379
lea rdx, [rsp + 0x40]
lea r15, [rsp + 0x50]
mov rcx, r15
call fcn.140086624
lea r12, [rsp + 0x60]
mov rcx, r12
mov rdx, r15
call fcn.140086642
mov dword [r12], 0
mov r15, qword [r12 + 8]
mov qword [r12 + 8], 0
test r15, r15
je 0x14010e3e8
cmp r15, 0xffffffffffffffff
jne 0x14010e3ed
xor r15d, r15d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
jmp 0x14010e3ff
xor r15d, r15d
jmp 0x14010e381
call fcn.1400713d0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
call fcn.1400713d0
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea r12, [r15 + 1]
cmp r12, 2
jb 0x14010e390
call fcn.1400713d0
cmp qword [r14 + 0x90], r15
je 0x14010e3cf
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rax, qword [r14 + 0x90]
inc rax
cmp rax, 2
jae 0x14010e502
cmp r12, 2
jb 0x14010e3c7
mov qword [r14 + 0x90], r15
call fcn.1400713d0
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rcx, [rsp + 0x60]
call fcn.140086800
lea rcx, [rsp + 0x50]
call fcn.14008662a
jmp 0x14010e471
xor r15d, r15d
jmp 0x14010e407
call fcn.1400713d0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
call fcn.1400713d0
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea r12, [r15 + 1]
cmp r12, 2
jb 0x14010e416
call fcn.1400713d0
cmp qword [r14 + 0x90], r15
je 0x14010e455
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rax, qword [r14 + 0x90]
inc rax
cmp rax, 2
jae 0x14010e523
cmp r12, 2
jb 0x14010e44d
mov qword [r14 + 0x90], r15
call fcn.1400713d0
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rcx, [rsp + 0x60]
call fcn.140086800
lea rcx, [rsp + 0x50]
call fcn.14008662a
mov byte [r14 + 0x98], 1
mov rax, qword [r14 + 0x90]
inc rax
cmp rax, 1
jbe 0x14010e5b3
lea rcx, [rsp + 0x28]
call fcn.14005bc00
test rdi, rdi
je 0x14010e4a2
lock dec dword [rdi + 8]
jne 0x14010e4a2
mov rcx, rdi
call fcn.14007d400
mov qword [rsi], r14
test r14, r14
je 0x14010e4c0
mov eax, 1
lock xadd dword [r14 + 8], eax
cmp eax, 0x7fffffff
je 0x14010e5bf
mov rcx, rbx
call fcn.14005bc00
test rdi, rdi
je 0x14010e4db
lock dec dword [rdi + 8]
jne 0x14010e4db
mov rcx, rdi
call fcn.14007d400
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140113000
mov rax, rsi
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.1400713d0
mov rcx, qword [r14 + 0x90]
call fcn.140081d40
mov qword [r14 + 0x90], 0
jmp 0x14010e3b5
call fcn.1400713d0
mov rcx, qword [r14 + 0x90]
call fcn.140081d40
mov qword [r14 + 0x90], 0
jmp 0x14010e43b
lea rcx, [0x14021c330]
call fcn.140111b40
cmp dword [0x14021c330], 0xffffffff
jne 0x14010e26b
add r15, 0xd0
lea r9, [rsp + 0x50]
mov qword [r9], 0
lea rax, str.channel_win_total_outgoing_messages
lea rdx, [rsp + 0x60]
mov qword [rdx], rax
mov qword [rdx + 8], 0x23
mov qword [rsp + 0x20], 8
mov rcx, r15
mov r8b, 8
call fcn.140043f40
mov qword [0x14021c328], rax
lea rcx, [0x14021c330]
call fcn.140111bd8
jmp 0x14010e26b
int3
int3
int3
int3
int3