Function at 0x14003cea0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x110]
sub rsp, 0x210
mov rax, qword [0x140116008]
xor rax, rsp
mov qword [rbp + 0x100], rax
xor r14d, r14d
mov rbx, rcx
movzx r13d, r14w
mov word [rsp + 0x30], r14w
mov r15d, r14d
mov dword [rsp + 0x34], r14d
movzx esi, r14w
mov edi, r14d
call fcn.140045570
movzx r12d, al
cmp al, 0xff
jne 0x14003cf0d
lea eax, [r14 - 1]
jmp 0x14003d4d4
lea rcx, str.Loading
call fcn.140041200
mov rcx, rbx
call fcn.140041200
mov edx, 0xa
lea rcx, [0x14010d710]
call fcn.140040c90
lea rcx, [0x140000000]
cmp r12b, 0x14
jae 0x14003cfce
movzx eax, r12b
imul rbx, rax, 0x58
mov eax, dword [rbx + rcx + 0x9632c0]
test eax, eax
je 0x14003cfce
cmp eax, 3
je 0x14003cfce
mov rcx, qword [0x1401591c8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rax, [0x140000000]
cmp dword [rbx + rax + 0x9632c0], 2
jne 0x14003cfa2
movzx ecx, byte [rbx + rax + 0x9632c4]
lea rdx, [rbp - 0x10]
mov r8d, 0x20
call fcn.140031060
mov rcx, qword [0x1401591c8]
movzx ebx, ax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14003cfd2
mov r9, qword [rbx + rax + 0x9632c8]
lea rcx, [rbp - 0x10]
mov edx, 1
lea r8d, [rdx + 0x3f]
call fcn.14005b6c4
mov rcx, qword [0x1401591c8]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14003cfd2
movzx ebx, r14w
xor edx, edx
lea rcx, [rsp + 0x74]
lea r8d, [rdx + 0x74]
call fcn.1400500b0
lea rax, [rbp - 0x10]
mov dword [rsp + 0x70], 4
mov qword [rsp + 0x60], rax
lea rcx, [rbp - 0x10]
movzx eax, bx
add rcx, rax
mov qword [rsp + 0x68], rcx
lea rcx, [rsp + 0x60]
call fcn.140019800
mov r14d, eax
test eax, eax
jne 0x14003d0a4
nop word [rax + rax]
movzx ebx, word [rsp + 0x68]
sub bx, word [rsp + 0x60]
movzx edi, bx
and di, 1
movzx esi, di
test bx, bx
je 0x14003d04e
mov rdx, qword [rsp + 0x60]
lea rcx, [rbp - 0x10]
add rdx, rsi
movzx r8d, bx
call fcn.140050fe0
mov r8d, 0x40
movzx edx, bx
sub r8w, di
lea rax, [rbp - 0x10]
add rax, rsi
sub r8w, bx
add rdx, rax
shr r8w, 1
movzx ecx, r12b
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rdx
call fcn.140045cd0
test ax, ax
je 0x14003d09e
movzx eax, ax
lea rcx, [rsp + 0x60]
add qword [rsp + 0x68], rax
call fcn.140019800
mov r14d, eax
test eax, eax
je 0x14003d020
mov edi, r15d
movzx esi, di
cmp r14d, 1
jne 0x14003d4c0
lea r8, [0x14010d5f4]
mov ebx, 0x4000
nop word [rax + rax]
mov eax, dword [rsp + 0x70]
cmp eax, 0xd
je 0x14003d3f6
cmp eax, 0xf
jne 0x14003d412
cmp r13w, 1
jne 0x14003d1fe
xor ebx, ebx
lea rdx, [rbp - 0x6c]
mov ecx, ebx
nop dword [rax]
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r8 + rcx - 1]
jne 0x14003d10c
cmp rcx, 4
jne 0x14003d0f0
mov r13d, ebx
jmp 0x14003d412
lea rdx, str.services
lea rcx, [rbp - 0x6c]
call fcn.14006f190
test eax, eax
jne 0x14003d12b
inc dword [rbp - 0x20]
mov r15, rbx
jmp 0x14003d412
lea r10, [rbp - 0x6c]
mov r9, qword [0x140116d60]
cmp byte [rbp - 0x6c], bl
je 0x14003d1cd
nop
test r9, r9
je 0x14003d1d2
mov rdx, qword [r9 + 8]
mov rax, r10
movzx r8d, byte [r10]
movzx ecx, byte [rdx]
cmp cl, r8b
jne 0x14003d170
sub rdx, r10
nop
test cl, cl
je 0x14003d174
movzx ecx, byte [rdx + rax + 1]
inc rax
cmp cl, byte [rax]
je 0x14003d160
test cl, cl
jne 0x14003d1c1
movzx edx, byte [rax]
test dl, dl
je 0x14003d197
lea ecx, [rdx - 0x2e]
cmp cl, 1
ja 0x14003d1c1
test dl, dl
je 0x14003d197
cmp dl, 0x2f
je 0x14003d1a0
movzx edx, byte [rax + 1]
inc rax
test dl, dl
jne 0x14003d187
cmp dl, 0x2f
jne 0x14003d1a8
nop dword [rax]
inc rax
cmp byte [rax], 0x2f
je 0x14003d1a0
test byte [r9 + 0x10], 4
je 0x14003d1cd
movzx r8d, byte [rax]
test r8b, r8b
je 0x14003d1cd
mov r9, qword [r9 + 0x28]
mov r10, rax
jmp 0x14003d1c4
mov r9, qword [r9]
test r8b, r8b
jne 0x14003d140
test r9, r9
jne 0x14003d1dd
inc dword [rbp - 0x20]
mov r15, rbx
jmp 0x14003d412
mov r15, qword [r9 + 0x28]
lea rcx, [0x140000000]
movzx eax, word [r15]
movzx ecx, word [rcx + rax*2 + 0x7a378]
mov word [rsp + 0x30], cx
jmp 0x14003d412
cmp r13w, 2
jne 0x14003d412
test r15, r15
je 0x14003d412
lea r8, [rsp + 0x38]
movzx ecx, si
lea rdx, [rbp - 0x6c]
call fcn.140021c70
movzx r14d, ax
mov ecx, 0xfff7
lea eax, [r14 + 1]
test cx, ax
je 0x14003d245
xor edx, edx
movzx ecx, r14w
call fcn.140022070
test bx, ax
jne 0x14003d24d
inc dword [rbp - 0x20]
jmp 0x14003d412
lea r8, [rbp - 0x10]
movzx edx, r12b
lea rcx, [rsp + 0x60]
call fcn.14003cdc0
mov ebx, eax
mov rsi, 0xffffffffffffffff
lea rax, [rbp - 0x6c]
nop dword [rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x14003d270
movzx r8d, si
lea rdx, [rbp - 0x6c]
inc r8
lea rcx, [rbp + 0x30]
call fcn.140050fe0
cmp ebx, 1
jne 0x14003d3bb
nop word [rax + rax]
mov eax, dword [rsp + 0x74]
add eax, 0xfffffff6
cmp eax, 1
ja 0x14003d3b7
lea r8, [rbp - 0x10]
movzx edx, r12b
lea rcx, [rsp + 0x60]
call fcn.14003cdc0
cmp eax, 1
jne 0x14003d3b7
movzx eax, si
lea rdi, [rbp + 0x30]
mov edx, 0xc8
sub edx, eax
movzx eax, si
add rdi, rax
jne 0x14003d30d
lea r9, str.ymemory
mov dword [rsp + 0x20], 0x13f
lea r8, str.YPANIC:_s:_d_n
mov edx, 0x13f
lea rcx, str.ymemory
call fcn.14000a9a0
jmp 0x14003d39b
test edx, edx
jne 0x14003d33a
lea r9, str.ymemory
mov dword [rsp + 0x20], 0x147
lea r8, str.YPANIC:_s:_d_n
mov edx, 0x147
lea rcx, str.ymemory
call fcn.14000a9a0
jmp 0x14003d39b
xor ecx, ecx
lea rax, [rbp - 0x6c]
cmp byte [rbp - 0x6c], cl
je 0x14003d353
cmp ecx, edx
jae 0x14003d353
inc rax
inc ecx
cmp byte [rax], 0
jne 0x14003d345
lea eax, [rcx + 1]
cmp eax, edx
jbe 0x14003d386
lea r9, str.ymemory
mov dword [rsp + 0x20], 0x14c
lea r8, str.YPANIC:_s:_d_n
mov edx, 0x14c
lea rcx, str.ymemory
call fcn.14000a9a0
mov byte [rdi], 0
jmp 0x14003d39b
mov ebx, ecx
lea rdx, [rbp - 0x6c]
mov r8d, ecx
mov rcx, rdi
call fcn.140050fe0
mov byte [rdi + rbx], 0
lea rcx, [rbp - 0x6c]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x14003d3a6
add si, ax
jmp 0x14003d2a0
mov edi, dword [rsp + 0x34]
movzx r8d, word [rsp + 0x38]
dec r8d
cmp r8d, 0x14
ja 0x14003d412
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x30]
call fcn.140048ec0
test ax, ax
js 0x14003d412
lea r8, [rsp + 0x40]
movzx edx, r14w
mov rcx, r15
call fcn.1400490c0
inc edi
mov dword [rsp + 0x34], edi
jmp 0x14003d412
cmp byte [rbp - 0x6c], 0x7b
mov eax, 0xffff
mov ecx, 1
cmove ax, cx
add r13w, ax
je 0x14003d4c0
lea rcx, [rsp + 0x60]
call fcn.140019800
mov r14d, eax
test eax, eax
jne 0x14003d4a1
movzx ebx, word [rsp + 0x68]
sub bx, word [rsp + 0x60]
movzx edi, bx
and di, 1
movzx esi, di
test bx, bx
je 0x14003d451
mov rdx, qword [rsp + 0x60]
lea rcx, [rbp - 0x10]
add rdx, rsi
movzx r8d, bx
call fcn.140050fe0
mov r8d, 0x40
movzx edx, bx
sub r8w, di
lea rax, [rbp - 0x10]
add rax, rsi
sub r8w, bx
add rdx, rax
shr r8w, 1
movzx ecx, r12b
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rdx
call fcn.140045cd0
test ax, ax
je 0x14003d4a1
movzx eax, ax
lea rcx, [rsp + 0x60]
add qword [rsp + 0x68], rax
call fcn.140019800
mov r14d, eax
test eax, eax
je 0x14003d423
mov edi, dword [rsp + 0x34]
lea r8, [0x14010d5f4]
movzx esi, word [rsp + 0x30]
mov ebx, 0x4000
cmp r14d, 1
je 0x14003d0c0
movzx ecx, r12b
call fcn.140045c00
mov eax, dword [rsp + 0x34]
mov byte [0x14095e5c0], 1
mov rcx, qword [rbp + 0x100]
xor rcx, rsp
call fcn.14004ee60
lea r11, [rsp + 0x210]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret