Function at 0x10001219c
Capabilities:
Read file on windows
Write file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov qword [rax + 0x10], rdx
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x90
mov r13, rcx
mov ecx, 0x201ff
mov qword [rsp + 0x60], r9
mov ebx, r8d
xor ebp, ebp
call fcn.10001ba38
mov r14, rax
cmp rax, rbp
je 0x10001244c
mov eax, dword [r13 + 0x154]
test r14, rax
jne 0x1000121f3
mov r15, r14
jmp 0x1000121fd
lea r15, [rax + r14]
not rax
and r15, rax
mov rax, qword [r13]
mov rcx, r13
call qword [rax + 0x10]
mov rdi, qword [rsp + 0xc8]
xor edx, edx
movsxd r8, eax
mov eax, 0x20000
lea rsi, [rdi + rbx]
div r8d
cmp rdi, rsi
mov dword [rsp + 0x50], r8d
mov ebx, eax
jge 0x100012441
mov rax, r8
mov qword [rsp + 0x70], rax
mov edx, ebx
mov rcx, rax
add rdx, rdi
imul rcx, rdi
cmp rdx, rsi
jle 0x10001224f
mov rbx, rsi
sub rbx, rdi
mov qword [rsp + 0x40], rbp
lea rax, [rsp + 0x58]
mov qword [rsp + 0x58], rcx
mov rcx, qword [r13 + 0x40]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x60]
mov r12d, ebx
xor r9d, r9d
xor edx, edx
imul r12d, r8d
mov dword [rsp + 0x30], r12d
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x78]
xor r8d, r8d
mov qword [rsp + 0x20], rax
call qword [sym.imp.ntdll.dll_NtWriteFile]
mov r9d, eax
mov dword [r13 + 0x58], eax
cmp eax, 0xc0000017
jne 0x1000122b8
cmp ebx, 1
je 0x100012444
shr ebx, 1
mov eax, ebx
sub rdi, rax
jmp 0x10001236f
mov rdx, qword [rsp + 0x80]
mov r8d, 0xc0000000
and eax, r8d
cmp eax, r8d
je 0x10001241c
mov eax, r12d
mov qword [rsp + 0x68], rax
cmp rdx, rax
jne 0x10001241c
cmp byte [rsp + 0xe0], bpl
je 0x10001236a
cmp r12d, 0x20000
ja 0x100012418
mov rcx, qword [r13 + 0x40]
mov qword [rsp + 0x40], rbp
lea rax, [rsp + 0x58]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x78]
mov dword [rsp + 0x30], r12d
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
call qword [sym.imp.ntdll.dll_NtReadFile]
mov rdx, qword [rsp + 0x80]
mov r8d, 0xc0000000
mov r9d, eax
mov dword [r13 + 0x58], eax
and eax, r8d
cmp eax, r8d
je 0x1000123c2
mov r8d, r12d
cmp rdx, r8
jne 0x1000123bc
mov rdx, qword [rsp + 0x60]
mov rcx, r15
call sub.ntdll.dll_memcmp
cmp eax, ebp
jne 0x10001238c
mov rax, qword [rsp + 0x68]
add qword [rsp + 0x60], rax
mov eax, ebx
add rdi, rax
cmp rdi, rsi
jge 0x100012441
mov r8d, dword [rsp + 0x50]
mov rax, qword [rsp + 0x70]
jmp 0x100012238
mov rcx, qword [r13 + 0x190]
cmp rcx, rbp
je 0x100012444
mov r9, qword [rsp + 0x58]
lea r8, [0x10000b258]
mov edx, 0x69a8
mov dword [rsp + 0x20], r12d
call fcn.100018908
jmp 0x100012444
mov r8d, 0xc0000000
mov rcx, qword [r13 + 0x190]
cmp rcx, rbp
je 0x100012444
mov eax, r9d
mov dword [rsp + 0x28], r12d
and eax, r8d
cmp eax, r8d
jne 0x1000123fb
mov rax, qword [rsp + 0x58]
lea r8, [0x10000b228]
mov edx, 0x69a6
mov qword [rsp + 0x20], rax
call fcn.100018908
jmp 0x100012444
lea r8, [0x10000b248]
mov r9, qword [rsp + 0x58]
mov qword [rsp + 0x20], rdx
mov edx, 0x69a7
call fcn.100018908
jmp 0x100012444
xor al, al
jmp 0x10001244f
mov rcx, qword [r13 + 0x190]
cmp rcx, rbp
je 0x100012444
mov eax, r9d
mov dword [rsp + 0x28], r12d
and eax, r8d
cmp eax, r8d
je 0x1000123de
lea r8, [0x10000b238]
jmp 0x100012402
mov bpl, 1
mov rcx, r14
call fcn.10001bb74
mov al, bpl
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret