Function at 0x1400add18
Capabilities:
Read file on windows

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xa8
mov rax, qword [0x1402b9f00]
xor rax, rsp
mov qword [rbp - 0x11], rax
mov rax, qword [rbp + 0x77]
xor r14d, r14d
mov r13, qword [rbp + 0x6f]
mov r15, r8
mov r8, qword [rbp + 0x87]
mov rsi, rdx
mov rdx, qword [rbp + 0x7f]
mov r12, r9
mov qword [rbp - 0x49], rdx
mov qword [rbp - 0x41], r8
mov r8, qword [rbp + 0x8f]
mov qword [rdx], r14
mov rdx, rcx
mov qword [rax], r14
lea rcx, [rbp - 0x59]
mov qword [r13], r14
mov qword [r9], r14
mov qword [r15], r14
mov qword [rbp - 0x51], rax
mov qword [rbp - 0x39], r8
call fcn.140096c3c
mov rbx, qword [rbp - 0x59]
mov edx, eax
mov dword [rbp - 0x71], eax
mov edi, r14d
mov qword [rbp - 0x59], rbx
test rbx, rbx
jne 0x1400adf02
movdqa xmm0, xmmword [0x140299180]
or r9d, 0xffffffff
mov qword [rbp - 0x69], r14
mov r8, rsi
lea r14, [0x1402be900]
mov dword [rsp + 0x28], 0x1000
xor edx, edx
mov qword [rsp + 0x20], r14
mov ecx, 0xfde9
movdqu xmmword [rbp - 0x21], xmm0
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea r8, [0x14024eacc]
mov rdx, r14
lea rcx, [rbp - 0x69]
call fcn.1401c40cc
mov rcx, qword [rbp - 0x69]
xor r14d, r14d
test rcx, rcx
jne 0x1400ade09
xor eax, eax
jmp 0x1400ae0fc
mov edx, 0xfffffff0
lea r8d, [rdx + 0x12]
call fcn.1401c4570
mov r9, qword [rbp - 0x69]
lea rcx, [rbp - 0x31]
mov esi, 1
mov edx, esi
lea r8d, [rsi + 0xf]
call fcn.1401c9250
mov rax, qword [rbp - 0x31]
cmp rax, qword [rbp - 0x21]
jne 0x1400adeb0
mov rax, qword [rbp - 0x29]
cmp rax, qword [rbp - 0x19]
jne 0x1400adeb0
mov rcx, qword [rbp - 0x69]
lea edx, [rsi - 0x15]
mov r8d, esi
call fcn.1401c4570
mov r9, qword [rbp - 0x69]
lea r8d, [rsi + 3]
mov edx, esi
lea rcx, [rbp - 0x71]
call fcn.1401c9250
cmp rax, 4
jne 0x1400adef6
mov ecx, dword [rbp - 0x71]
call qword [sym.imp.WS2_32.dll_ntohl]
mov dword [rbp - 0x71], eax
lea ecx, [rax - 1]
cmp ecx, 0x4e1e
mov rcx, qword [rbp - 0x69]
ja 0x1400adeb4
lea edx, [rsi - 5]
mov r8d, esi
sub edx, eax
call fcn.1401c4570
mov eax, dword [rbp - 0x71]
inc eax
movsxd rcx, eax
call fcn.1401c9318
mov qword [rbp - 0x59], rax
mov rbx, rax
test rax, rax
jne 0x1400adebe
mov rcx, qword [rbp - 0x69]
call fcn.1401c41b4
jmp 0x1400ade02
movsxd r8, dword [rbp - 0x71]
mov edx, 1
mov r9, qword [rbp - 0x69]
mov rcx, rbx
movsxd rsi, dword [rbp - 0x71]
call fcn.1401c9250
cmp rax, rsi
je 0x1400adef2
mov rcx, qword [rbp - 0x69]
call fcn.1401c41b4
mov rcx, rbx
call fcn.1401c8c7c
jmp 0x1400ade02
mov byte [rsi + rbx], r14b
mov rcx, qword [rbp - 0x69]
call fcn.1401c41b4
mov edx, dword [rbp - 0x71]
mov r8d, 3
mov word [rbp - 0x61], 0xbbef
mov r9b, 0xbf
cmp edx, r8d
jle 0x1400adf31
movzx ecx, word [rbx]
movzx eax, word [rbp - 0x61]
sub ecx, eax
jne 0x1400adf2b
movzx ecx, byte [rbx + 2]
movzx eax, r9b
sub ecx, eax
test ecx, ecx
cmove rdi, r8
movsxd r8, edx
lea r9, [0x14024fc18]
sub r8, rdi
mov qword [rsp + 0x20], 1
mov rdx, rdi
mov rcx, rbx
call fcn.1400930e0
mov r14, rax
mov qword [rbp - 0x31], rax
mov rdi, qword [rax]
test rdi, rdi
je 0x1400ae0f1
mov r14, qword [rbp - 0x51]
mov rbx, qword [rbp - 0x49]
mov rdx, qword [rdi + 8]
mov rcx, rdi
call fcn.1400930a0
mov rcx, qword [rdi]
mov qword [rdi + 8], rax
cmp byte [rcx], 0x23
je 0x1400ae0dc
mov r9d, 1
lea r8, [0x14024fc1c]
mov rdx, rax
call fcn.140096880
test eax, eax
jle 0x1400ae0dc
mov r9, qword [rdi]
movsxd r10, eax
lea rcx, [r9 + 1]
mov byte [r10 + r9], 0
add rcx, r10
mov rax, qword [rdi + 8]
sub rax, r10
mov qword [rbp - 0x69], rcx
lea rdx, [rax - 1]
cmp byte [rdx + rcx - 1], 0xd
lea rcx, [rbp - 0x69]
cmovne rdx, rax
dec rdx
call fcn.1400930a0
mov rsi, qword [rbp - 0x69]
mov byte [rax + rsi], 0
cmp r10, 8
jne 0x1400adff9
mov rax, qword [str.MeshName]
cmp rax, qword [r9]
jne 0x1400ae02a
mov qword [r15], rsi
cmp r10, 6
jne 0x1400ae024
mov eax, dword [str.MeshID]
cmp eax, dword [r9]
jne 0x1400ae0dc
movzx eax, word [0x14024e3ec]
cmp ax, word [r9 + 4]
jne 0x1400ae0dc
mov qword [r12], rsi
cmp r10, 8
jne 0x1400ae03e
mov rax, qword [str.ServerID]
cmp rax, qword [r9]
jne 0x1400ae0dc
mov qword [r13], rsi
cmp r10, 0xa
jne 0x1400ae065
mov rax, qword [str.MeshServer]
cmp rax, qword [r9]
jne 0x1400ae0dc
movzx eax, word [0x14024e378]
cmp ax, word [r9 + 8]
jne 0x1400ae0dc
mov qword [r14], rsi
cmp r10, 0xc
jne 0x1400ae086
mov rax, qword [str.InstallFlags]
cmp rax, qword [r9]
jne 0x1400ae0dc
mov eax, dword [0x140298f00]
cmp eax, dword [r9 + 8]
jne 0x1400ae0dc
mov qword [rbx], rsi
cmp r10, 0xb
jne 0x1400ae0b9
mov rax, qword [str.displayName]
cmp rax, qword [r9]
jne 0x1400ae0dc
movzx eax, word [0x14024e7b0]
cmp ax, word [r9 + 8]
jne 0x1400ae0dc
mov al, byte [0x14024e7b2]
cmp al, byte [r9 + 0xa]
jne 0x1400ae0dc
mov rax, qword [rbp - 0x41]
mov qword [rax], rsi
cmp r10, 0xf
jne 0x1400ae0dc
mov r8, r10
lea rcx, str.meshServiceName
mov rdx, r9
call fcn.1401c27a0
test eax, eax
jne 0x1400ae0dc
mov rax, qword [rbp - 0x39]
mov qword [rax], rsi
mov rdi, qword [rdi + 0x10]
test rdi, rdi
jne 0x1400adf6d
mov rbx, qword [rbp - 0x59]
mov r14, qword [rbp - 0x31]
mov rcx, r14
call fcn.140093328
mov rax, rbx
mov rcx, qword [rbp - 0x11]
xor rcx, rsp
call fcn.1401c1120
add rsp, 0xa8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret