Function at 0x14003e65c
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rdi
push r12
push r13
push r15
sub rsp, 0x20
xor r12d, r12d
mov edi, r9d
mov r9, qword [0x140136150]
mov rbp, rdx
lea r15d, [r12 + 1]
mov r13, rcx
imul rbp, r8
mov r8, rbp
cmp edi, r15d
jne 0x14003e6c1
mov rax, qword [0x1401360c8]
and qword [0x140136170], r12
mov qword [0x140136148], r9
mov qword [0x140136140], rax
mov eax, dword [0x14013610c]
mov dword [0x140136108], eax
mov rax, qword [0x140136160]
test rax, rax
je 0x14003e6ec
sub rax, r9
cmp rbp, rax
jbe 0x14003e6ec
cmp edi, 3
je 0x14003e6e9
cmp edi, r15d
je 0x14003e6e9
cmp edi, 2
je 0x14003e6e9
mov r8, rax
jmp 0x14003e6ec
xor r8d, r8d
cmp edi, 2
jne 0x14003e71b
cmp dword [0x1400fe744], 0xffffffff
jne 0x14003e70d
mov eax, dword [0x14013610c]
mov qword [0x140136110], r9
mov dword [0x1400fe744], eax
add qword [0x140136118], r15
add qword [0x140136120], r15
test r8, r8
je 0x14003e74e
mov r9, qword [0x1401360c8]
call fcn.1400c8f54
mov r9, qword [0x140136150]
add r9, rax
sub rbp, rax
mov r12, rax
mov qword [0x140136150], r9
test edi, edi
jne 0x14003e74e
add qword [0x140136170], rax
test rbp, rbp
je 0x14003e9d6
mov eax, dword [0x140136158]
test eax, eax
je 0x14003e9bc
add qword [0x140136168], r9
cmp eax, r15d
jne 0x14003e78b
mov rcx, qword [0x1401360c8]
call fcn.1400c975c
test eax, eax
je 0x14003e78b
mov ecx, 0xe
call fcn.1400bd484
cmp dword [0x140136158], 2
jne 0x14003e7bb
mov rcx, qword [0x1401360c8]
call fcn.1400c975c
test eax, eax
je 0x14003e7bb
cmp qword [0x140136150], 0x10000
jae 0x14003e7bb
mov ecx, 0xe
call fcn.1400bd484
cmp dword [0x140136158], r15d
jne 0x14003e7e2
mov eax, dword [0x14013610c]
cmp dword [0x140136108], eax
jne 0x14003e7e2
mov rax, qword [0x1401360c0]
mov qword [0x140136138], rax
jmp 0x14003e817
mov r8, qword [0x1401360c0]
mov rdx, qword [0x1401360c8]
mov ecx, dword [0x14013610c]
call fcn.14003e610
mov rcx, qword [0x1401360c0]
and qword [0x1401360c8], 0
call fcn.1400c7040
and qword [0x1401360c0], 0
mov edx, dword [0x14013610c]
mov rcx, qword [0x1401360e8]
and qword [0x140136118], 0
and qword [0x140136150], 0
call fcn.14003e500
xor r8d, r8d
mov rdx, rax
mov ecx, r15d
mov rbx, rax
call fcn.14000a464
mov rcx, rbx
call fcn.1400c7040
mov ecx, dword [0x14013610c]
mov eax, dword [0x140136158]
add ecx, r15d
mov dword [0x14013610c], ecx
cmp eax, 2
jne 0x14003e87d
call fcn.14003d69c
test eax, eax
jne 0x14003e87d
lea ecx, [rax + 9]
call fcn.1400bd484
mov rcx, qword [0x140134c50]
call fcn.14003d60c
mov qword [0x1401360c0], rax
test rax, rax
jne 0x14003e8a4
lea ecx, [rax + 4]
call fcn.1400bd484
mov rax, qword [0x1401360c0]
lea rdx, [0x1400e3668]
mov rcx, rax
call fcn.1400c9638
mov qword [0x1401360c8], rax
test rax, rax
jne 0x14003e8e5
mov r8, qword [0x1401360c0]
lea rcx, [0x140134b90]
xor edx, edx
call fcn.140033544
mov ecx, 0xa
call fcn.1400bd484
mov rax, qword [0x1401360c8]
lea rcx, [r12 + r13]
mov r9, rax
mov r8, rbp
mov rdx, r15
call fcn.1400c8f54
add qword [0x140136150], rax
add r12, rax
cmp edi, 3
je 0x14003e917
cmp edi, r15d
je 0x14003e917
cmp edi, 2
je 0x14003e917
add qword [0x140136170], rax
cmp rbp, rax
jbe 0x14003e93c
mov eax, dword [0x140136158]
cmp eax, 2
jne 0x14003e932
mov ecx, dword [0x14013610c]
jmp 0x14003e867
mov ecx, 0xe
call fcn.1400bd484
cmp edi, r15d
je 0x14003e94f
cmp edi, 3
je 0x14003e94f
cmp edi, 2
jne 0x14003e9d6
cmp dword [0x140136158], r15d
jne 0x14003e98a
mov rdx, qword [0x140136140]
test rdx, rdx
je 0x14003e98a
mov ecx, dword [0x140136108]
cmp ecx, dword [0x14013610c]
je 0x14003e98a
mov r8, qword [0x140136138]
call fcn.14003e610
mov rcx, qword [0x140136138]
call fcn.1400c7040
mov rax, qword [0x1401360c0]
and qword [0x140136148], 0
mov qword [0x140136138], rax
mov rax, qword [0x1401360c8]
mov qword [0x140136140], rax
mov eax, dword [0x14013610c]
mov dword [0x140136108], eax
jmp 0x14003e9d6
mov rcx, qword [0x1401360c8]
call fcn.1400c975c
test eax, eax
je 0x14003e9d6
mov ecx, 0xe
call fcn.1400bd484
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov rax, r12
add rsp, 0x20
pop r15
pop r13
pop r12
ret