Function at 0x14003cc50
Capabilities:
Write file on windows

Disassembly:
push rbx
sub rsp, 0x40
mov rbx, qword [rcx]
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x60], rdi
mov rdi, rcx
mov esi, r8d
mov r8, qword [rbx + 0x18]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x20], r15
mov r15, rdx
cmp r8, qword [rbx + 0x10]
jb 0x14003cca1
mov rcx, qword [rbx + 8]
cmp r8, rcx
je 0x14003cca1
mov r9, qword [rbx]
sub r8, rcx
mov edx, 1
call fcn.14005ba28
mov rax, qword [rbx + 8]
mov qword [rbx + 0x18], rax
mov rax, qword [rbx + 0x18]
mov r12, rsi
mov byte [rax], 0x22
inc qword [rbx + 0x18]
test esi, esi
je 0x14003ce8f
mov qword [rsp + 0x50], rbp
xor ebp, ebp
mov qword [rsp + 0x30], r13
lea r13, [0x140000000]
mov qword [rsp + 0x28], r14
nop
movzx esi, byte [r15]
inc rbp
mov rbx, qword [rdi]
inc r15
mov r14d, esi
cmp byte [rsi + r13 + 0x8cff0], 0
mov r8, qword [rbx + 0x18]
je 0x14003ce45
cmp r8, qword [rbx + 0x10]
jb 0x14003cd1a
mov rcx, qword [rbx + 8]
cmp r8, rcx
je 0x14003cd1a
mov r9, qword [rbx]
sub r8, rcx
mov edx, 1
call fcn.14005ba28
mov rax, qword [rbx + 8]
mov qword [rbx + 0x18], rax
mov rax, qword [rbx + 0x18]
mov byte [rax], 0x5c
inc qword [rbx + 0x18]
mov rbx, qword [rdi]
movzx esi, byte [r14 + r13 + 0x8cff0]
mov r8, qword [rbx + 0x18]
cmp r8, qword [rbx + 0x10]
jb 0x14003cd5c
mov rcx, qword [rbx + 8]
cmp r8, rcx
je 0x14003cd5c
mov r9, qword [rbx]
sub r8, rcx
mov edx, 1
call fcn.14005ba28
mov rax, qword [rbx + 8]
mov qword [rbx + 0x18], rax
mov rax, qword [rbx + 0x18]
mov byte [rax], sil
inc qword [rbx + 0x18]
cmp byte [r14 + r13 + 0x8cff0], 0x75
jne 0x14003ce77
mov rbx, qword [rdi]
mov r8, qword [rbx + 0x18]
cmp r8, qword [rbx + 0x10]
jb 0x14003cda4
mov rcx, qword [rbx + 8]
cmp r8, rcx
je 0x14003cda4
mov r9, qword [rbx]
sub r8, rcx
mov edx, 1
call fcn.14005ba28
mov rax, qword [rbx + 8]
mov qword [rbx + 0x18], rax
mov rax, qword [rbx + 0x18]
mov byte [rax], 0x30
inc qword [rbx + 0x18]
mov rbx, qword [rdi]
mov r8, qword [rbx + 0x18]
cmp r8, qword [rbx + 0x10]
jb 0x14003cddd
mov rcx, qword [rbx + 8]
cmp r8, rcx
je 0x14003cddd
mov r9, qword [rbx]
sub r8, rcx
mov edx, 1
call fcn.14005ba28
mov rax, qword [rbx + 8]
mov qword [rbx + 0x18], rax
mov rax, qword [rbx + 0x18]
mov byte [rax], 0x30
mov rax, r14
inc qword [rbx + 0x18]
mov rbx, qword [rdi]
shr rax, 4
mov r8, qword [rbx + 0x18]
movzx esi, byte [rax + r13 + 0x8cfd8]
cmp r8, qword [rbx + 0x10]
jb 0x14003ce26
mov rcx, qword [rbx + 8]
cmp r8, rcx
je 0x14003ce26
mov r9, qword [rbx]
sub r8, rcx
mov edx, 1
call fcn.14005ba28
mov rax, qword [rbx + 8]
mov qword [rbx + 0x18], rax
mov rax, qword [rbx + 0x18]
mov byte [rax], sil
inc qword [rbx + 0x18]
mov rbx, qword [rdi]
and r14d, 0xf
movzx esi, byte [r14 + r13 + 0x8cfd8]
mov r8, qword [rbx + 0x18]
cmp r8, qword [rbx + 0x10]
jb 0x14003ce6c
mov rcx, qword [rbx + 8]
cmp r8, rcx
je 0x14003ce6c
mov r9, qword [rbx]
sub r8, rcx
mov edx, 1
call fcn.14005ba28
mov rax, qword [rbx + 8]
mov qword [rbx + 0x18], rax
mov rax, qword [rbx + 0x18]
mov byte [rax], sil
inc qword [rbx + 0x18]
cmp rbp, r12
jb 0x14003ccd0
mov r14, qword [rsp + 0x28]
mov r13, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x50]
mov rbx, qword [rdi]
mov r15, qword [rsp + 0x20]
mov r12, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x60]
mov r8, qword [rbx + 0x18]
mov rsi, qword [rsp + 0x58]
cmp r8, qword [rbx + 0x10]
jb 0x14003ced1
mov rcx, qword [rbx + 8]
cmp r8, rcx
je 0x14003ced1
mov r9, qword [rbx]
sub r8, rcx
mov edx, 1
call fcn.14005ba28
mov rax, qword [rbx + 8]
mov qword [rbx + 0x18], rax
mov rax, qword [rbx + 0x18]
mov byte [rax], 0x22
mov al, 1
inc qword [rbx + 0x18]
add rsp, 0x40
pop rbx
ret