Function at 0x1401d1ed0
Capabilities:
Read file on windows

Disassembly:
mov byte [rsp + 0x20], r9b
mov dword [rsp + 0x10], edx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x48
xor ebp, ebp
mov byte [rsp + 0x90], 4
mov r15, rcx
mov dword [r8], ebp
mov ecx, 0x400000
movzx edi, r9b
mov rsi, r8
mov r12d, ebp
lea edx, [rbp + 1]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov r14, rax
test rax, rax
je 0x1401d2118
cmp byte [r15 + 0x19], 2
jne 0x1401d1f36
mov ecx, dword [rsi]
mov eax, dword [rsp + 0x88]
mov dword [rcx + r14], eax
add dword [rsi], 4
jmp 0x1401d20e6
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x40], r13
mov r13, qword [rsp + 0xa0]
nop dword [rax + rax]
cmp byte [0x1411dd01b], bpl
je 0x1401d1f71
test r12b, r12b
je 0x1401d1f63
test r12d, r12d
jne 0x1401d1f71
call qword [sym.imp.Qt5Core.dll_public:_static_class_QCoreApplication____ptr64___cdecl_QCoreApplication::instance_void_]
mov ecx, ebp
call qword [sym.imp.Qt5Core.dll_public:_static_void___cdecl_QCoreApplication::processEvents_class_QFlags_enum_QEventLoop::ProcessEventsFlag__]
mov edx, dword [rsp + 0x88]
inc r12d
lea eax, [rdx - 2]
cmp eax, 0xfffffffc
ja 0x1401d20d9
cmp edx, dword [r15 + 0x2a4]
ja 0x1401d20d9
test dil, dil
je 0x1401d1fa2
test r13, r13
jle 0x1401d20d9
mov eax, dword [rsi]
mov ecx, eax
test eax, eax
je 0x1401d1ff5
mov edi, ebp
mov ebx, ebp
nop
cmp byte [0x1411dd01b], bpl
je 0x1401d1fd6
test bl, bl
je 0x1401d1fc1
test ebx, ebx
jne 0x1401d1fd6
call qword [sym.imp.Qt5Core.dll_public:_static_class_QCoreApplication____ptr64___cdecl_QCoreApplication::instance_void_]
mov ecx, ebp
call qword [sym.imp.Qt5Core.dll_public:_static_void___cdecl_QCoreApplication::processEvents_class_QFlags_enum_QEventLoop::ProcessEventsFlag__]
mov edx, dword [rsp + 0x88]
mov eax, edi
inc ebx
add edi, 4
cmp dword [rax + r14], edx
je 0x1401d20d9
mov ecx, dword [rsi]
cmp edi, ecx
jb 0x1401d1fb0
movzx edi, byte [rsp + 0x98]
movzx r8d, byte [rsp + 0x90]
mov eax, r8d
shl eax, 0x14
cmp ecx, eax
jae 0x1401d2010
mov eax, ecx
mov dword [rax + r14], edx
jmp 0x1401d2058
add r8b, 2
mov edx, 1
movzx ecx, r8b
shl rcx, 0x14
mov byte [rsp + 0x90], r8b
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov r8d, dword [rsi]
mov rdx, r14
mov rcx, rax
mov rbx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov ecx, dword [rsi]
mov r14, rbx
mov eax, dword [rsp + 0x88]
mov dword [rcx + rbx], eax
add dword [rsi], 4
mov edx, dword [r15 + 0x10]
test dil, dil
je 0x1401d2074
mov eax, dword [r15 + 0x2b0]
imul eax, edx
shl eax, 9
sub r13, rax
mov ecx, dword [r15 + 0x2a0]
imul ecx, edx
mov edx, dword [rsp + 0x88]
shl ecx, 9
lea eax, [rdx*4]
cmp eax, ecx
jae 0x1401d20d9
mov rcx, qword [r15 + 0x60]
lea r8, [rsp + 0x3c]
mov eax, edx
xor r9d, r9d
shl rax, 2
mov edx, eax
mov qword [rsp + 0x38], rax
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov rcx, qword [r15 + 0x60]
lea r9, [rsp + 0x30]
mov r8d, 4
mov qword [rsp + 0x20], rbp
lea rdx, [rsp + 0x88]
call qword [sym.imp.KERNEL32.dll_ReadFile]
jmp 0x1401d1f50
mov rbx, qword [rsp + 0x80]
mov r13, qword [rsp + 0x40]
mov eax, dword [rsi]
test eax, eax
je 0x1401d210a
mov ecx, eax
mov edx, 1
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov r8d, dword [rsi]
mov rdx, r14
mov rcx, rax
mov rbp, rax
call sub.VCRUNTIME140.dll_memcpy
test r14, r14
je 0x1401d2118
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, rbp
add rsp, 0x48
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
ret