Function at 0x1400e8870
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push r14
sub rsp, 0x20
xor ebp, ebp
mov qword [rsp + 0x30], rdi
mov rsi, r8
mov rbx, rdx
mov r14d, ebp
cmp byte [rdx + 0x20], bpl
je 0x1400e8672
mov rcx, qword [rbx]
mov rdx, r8
call fcn.1400e8eb0
cmp word [rsi + 0x48], 4
mov rdx, qword [rbx]
jne 0x1400e8624
mov edi, 0x300
mov ecx, edi
call fcn.140067100
mov rcx, qword [rbx]
mov rcx, qword [rcx]
call fcn.1401c2310
mov r14d, eax
nop
mov rdx, qword [rbx]
xor ecx, ecx
mov rdx, qword [rdx]
call fcn.1401c1ae4
dec rdi
jne 0x1400e8610
jmp 0x1400e862b
xor ecx, ecx
call fcn.140067100
mov rcx, qword [rbx]
mov rdx, rsi
call fcn.1400e8f90
mov rcx, qword [rbx]
mov rcx, qword [rcx]
call fcn.1401c2310
mov rdx, qword [rbx]
xor ecx, ecx
mov dword [rbx + 0x18], eax
call fcn.140067100
cmp byte [rbx + 0x21], bpl
je 0x1400e866e
cmp word [rsi + 0x64], 1
jle 0x1400e866e
mov r9, qword [rbx + 8]
mov r8d, dword [rbx + 0x10]
mov rcx, qword [rbx]
mov rdx, rsi
call fcn.1400e8e10
mov byte [rbx + 0x20], bpl
cmp byte [rbx + 0x21], bpl
je 0x1400e86e9
mov eax, dword [rbx + 0x10]
cmp dword [rbx + 0x14], eax
jne 0x1400e86e9
mov rcx, qword [rbx]
mov rcx, qword [rcx]
call fcn.1401c2310
mov rcx, qword [rbx]
xor r8d, r8d
mov rcx, qword [rcx]
xor edx, edx
mov edi, eax
call fcn.1401c1f88
mov rcx, qword [rbx]
mov rdx, rsi
call fcn.1400e8eb0
mov rcx, qword [rbx]
mov edx, dword [rbx + 0x18]
mov rcx, qword [rcx]
xor r8d, r8d
call fcn.1401c1f88
mov rdx, qword [rbx]
mov ecx, edi
sub ecx, dword [rbx + 0x18]
sub ecx, 4
call fcn.140067100
mov rdx, qword [rbx]
mov ecx, edi
sub ecx, dword [rbx + 0x18]
sub ecx, 8
call fcn.140067100
mov rcx, qword [rbx]
xor r8d, r8d
mov rcx, qword [rcx]
mov edx, edi
call fcn.1401c1f88
movsxd rdx, dword [rbx + 0x14]
mov rdi, qword [rsp + 0x30]
cmp edx, dword [rbx + 0x10]
je 0x1400e8704
mov rax, qword [rbx + 8]
mov ebp, dword [rax + rdx*4]
lea eax, [rdx + 1]
mov dword [rbx + 0x14], eax
mov rcx, qword [rbx]
mov r9d, r14d
mov r8d, ebp
mov rdx, rsi
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
jmp 0x1400e8870
mov r11, rsp
push r12
sub rsp, 0x150
mov rax, qword [0x1402a83b0]
xor rax, rsp
mov qword [rsp + 0x100], rax
mov qword [r11 - 0x10], rbx
mov qword [r11 - 0x20], rsi
mov qword [r11 - 0x28], rdi
mov qword [r11 - 0x30], r13
mov rsi, rcx
lea rcx, [rsp + 0x40]
mov qword [r11 - 0x38], r14
mov edi, r9d
mov r13d, r8d
mov dword [rsp + 0x30], r8d
mov rbx, rdx
call fcn.140061e90
cmp word [rbx + 0x48], 1
movzx ecx, word [rbx + 0x64]
mov dword [rsp + 0x70], 0x445350
mov word [rsp + 0x50], cx
jne 0x1400e88ec
mov eax, dword [rbx + 0x50]
add eax, 7
cdq
and edx, 7
add eax, edx
sar eax, 3
mov edx, eax
mov dword [rsp + 0x5c], eax
jmp 0x1400e88f3
mov edx, dword [rbx + 0x50]
mov dword [rsp + 0x5c], edx
movzx eax, word [rbx + 0x62]
mov word [rsp + 0x52], ax
test edi, edi
je 0x1400e8908
mov dword [rsp + 0x60], 0x80110
xor r14d, r14d
mov qword [rsp + 0x118], r15
cmp cx, 1
jle 0x1400e8932
movsx eax, cx
mov ecx, dword [rbx + 0x54]
imul ecx, eax
imul ecx, edx
movsxd rcx, ecx
call fcn.1401bee78
mov r15, rax
jmp 0x1400e8935
mov r15, r14
lea rdx, [rsp + 0x40]
mov rcx, rbx
mov qword [rsp + 0x28], r15
call fcn.14005fe70
movzx r12d, ax
mov dword [rsp + 0x20], r12d
test ax, ax
jne 0x1400e8da1
mov qword [rsp + 0x140], rbp
test edi, edi
je 0x1400e89ba
mov rcx, qword [rsi]
call fcn.1401c2310
mov rcx, qword [rsi]
xor r8d, r8d
mov edx, edi
mov ebp, eax
call fcn.1401c1f88
mov rcx, qword [rsi]
call fcn.1401c2310
mov rdi, r14
nop word [rax + rax]
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsi]
movzx ecx, byte [rdi + rcx]
call fcn.1401c1ae4
inc rdi
cmp rdi, 0x300
jl 0x1400e8990
mov rcx, qword [rsi]
xor r8d, r8d
mov edx, ebp
call fcn.1401c1f88
cmp word [rbx + 0x64], 1
jle 0x1400e8b90
mov ebp, r14d
cmp dword [rbx + 0x54], r14d
jle 0x1400e8a38
nop
mov r8d, 1
mov edx, ebp
mov rcx, rbx
call fcn.1400629c0
mov edi, r14d
cmp r14w, word [rbx + 0x64]
jge 0x1400e8a31
nop word [rax + rax]
movsxd rdx, dword [rsp + 0x5c]
mov eax, edi
mov r8, rdx
imul eax, edx
movsxd r10, eax
mov eax, dword [rbx + 0x54]
add r10, qword [rsp + 0x48]
imul eax, edi
imul eax, edx
movsxd rcx, eax
mov eax, ebp
add rcx, r15
imul eax, edx
movsxd r9, eax
mov rdx, r10
add rcx, r9
call fcn.1401bd6e0
movsx eax, word [rbx + 0x64]
inc edi
cmp edi, eax
jl 0x1400e89f0
inc ebp
cmp ebp, dword [rbx + 0x54]
jl 0x1400e89d0
test r13d, r13d
je 0x1400e8c13
movsxd rcx, dword [rbx + 0x54]
shl rcx, 2
call fcn.1401bee78
mov r13d, r14d
mov r15, rax
cmp r14w, word [rbx + 0x64]
jge 0x1400e8b7e
lea r12, [rsp + 0xf0]
nop word [rax + rax]
mov ecx, 1
mov rdx, rsi
call fcn.1400671a0
mov rcx, qword [rsi]
call fcn.1401c2310
cmp dword [rbx + 0x54], 0
mov edi, r14d
mov ebp, eax
jle 0x1400e8aa1
xor ecx, ecx
mov rdx, rsi
call fcn.1400671a0
inc edi
cmp edi, dword [rbx + 0x54]
jl 0x1400e8a90
mov ecx, dword [rbx + 0x54]
mov edi, r14d
test ecx, ecx
jle 0x1400e8aeb
mov r14, qword [rsp + 0x28]
mov r8d, dword [rsp + 0x5c]
imul ecx, r13d
movsxd rax, edi
lea r9, [r15 + rax*4]
mov eax, edi
imul ecx, r8d
movsxd rcx, ecx
imul eax, r8d
movsxd rdx, eax
lea rax, [r14 + rcx]
mov rcx, rsi
add rdx, rax
call fcn.140138280
mov ecx, dword [rbx + 0x54]
inc edi
cmp edi, ecx
jl 0x1400e8ab0
xor r14d, r14d
movsxd r8, dword [rbx + 0x54]
mov ecx, r14d
mov dword [r12], r14d
mov rax, r14
test r8d, r8d
jle 0x1400e8b10
nop
add ecx, dword [r15 + rax*4]
inc rax
cmp rax, r8
jl 0x1400e8b00
mov dword [r12], ecx
lea eax, [r8 + 1]
lea eax, [rcx + rax*2]
mov rcx, qword [rsi]
mov dword [r12], eax
call fcn.1401c2310
mov rcx, qword [rsi]
xor r8d, r8d
mov edx, ebp
mov dword [rsp + 0x34], eax
call fcn.1401c1f88
cmp dword [rbx + 0x54], 0
mov ebp, r14d
jle 0x1400e8b56
mov rdi, r15
movzx ecx, word [rdi]
mov rdx, rsi
call fcn.1400671a0
inc ebp
lea rdi, [rdi + 4]
cmp ebp, dword [rbx + 0x54]
jl 0x1400e8b40
mov edx, dword [rsp + 0x34]
mov rcx, qword [rsi]
xor r8d, r8d
call fcn.1401c1f88
movsx eax, word [rbx + 0x64]
inc r13d
add r12, 4
cmp r13d, eax
jl 0x1400e8a70
mov r12d, dword [rsp + 0x20]
mov rcx, r15
call fcn.1401be23c
mov r13d, dword [rsp + 0x30]
jmp 0x1400e8c13
xor ecx, ecx
mov rdx, rsi
call fcn.1400671a0
mov edi, r14d
cmp dword [rbx + 0x54], r14d
jle 0x1400e8c13
test r12w, r12w
jne 0x1400e8c0e
mov r8d, 1
mov edx, edi
mov rcx, rbx
call fcn.1400629c0
cmp word [rsp + 0x52], 1
mov eax, dword [rsp + 0x5c]
jne 0x1400e8be8
mov edx, r14d
mov r8, r14
test eax, eax
jle 0x1400e8be8
nop
mov rcx, qword [rsp + 0x48]
inc edx
lea r8, [r8 + 1]
not byte [rcx + r8 - 1]
mov eax, dword [rsp + 0x5c]
cmp edx, eax
jl 0x1400e8bd0
mov r9, qword [rsi]
mov rcx, qword [rsp + 0x48]
movsxd rdx, eax
mov r8d, 1
call fcn.1401c24f8
test rax, rax
jne 0x1400e8c07
lea r12d, [rax + 6]
inc edi
cmp edi, dword [rbx + 0x54]
jl 0x1400e8ba3
mov dword [rsp + 0x20], r12d
mov rcx, rbx
call fcn.14005dcb0
test r12w, r12w
jne 0x1400e8d99
cmp word [rbx + 0x64], 1
jle 0x1400e8d99
test r13d, r13d
je 0x1400e8c72
mov rcx, qword [rsi]
call fcn.1401c2310
mov rcx, qword [rsi]
xor r8d, r8d
mov edx, r13d
mov edi, eax
call fcn.1401c1f88
lea r8, [rsp + 0xf0]
mov rdx, rbx
mov rcx, rsi
call fcn.1400e92c0
mov rcx, qword [rsi]
xor r8d, r8d
mov edx, edi
call fcn.1401c1f88
jmp 0x1400e8d99
mov ecx, 1
mov rdx, rsi
call fcn.1400671a0
movsx eax, word [rbx + 0x64]
imul eax, dword [rbx + 0x54]
movsxd rcx, eax
shl rcx, 2
call fcn.1401bee78
mov rcx, qword [rsi]
mov r12, rax
call fcn.1401c2310
movsx ecx, word [rbx + 0x64]
mov r13d, eax
mov edi, r14d
imul ecx, dword [rbx + 0x54]
test ecx, ecx
jle 0x1400e8cc8
xor ecx, ecx
mov rdx, rsi
call fcn.1400671a0
movsx ecx, word [rbx + 0x64]
inc edi
imul ecx, dword [rbx + 0x54]
cmp edi, ecx
jl 0x1400e8cb0
mov r15d, r14d
mov ebp, r14d
cmp r14w, word [rbx + 0x64]
jge 0x1400e8d37
mov ecx, dword [rbx + 0x54]
mov edi, r14d
test ecx, ecx
jle 0x1400e8d2d
mov r14, qword [rsp + 0x28]
nop dword [rax]
nop dword [rax + rax]
mov r8d, dword [rsp + 0x5c]
imul ecx, ebp
movsxd rax, r15d
lea r9, [r12 + rax*4]
mov eax, edi
imul ecx, r8d
movsxd rcx, ecx
imul eax, r8d
movsxd rdx, eax
lea rax, [r14 + rcx]
mov rcx, rsi
add rdx, rax
call fcn.140138280
mov ecx, dword [rbx + 0x54]
inc edi
inc r15d
cmp edi, ecx
jl 0x1400e8cf0
xor r14d, r14d
movsx eax, word [rbx + 0x64]
inc ebp
cmp ebp, eax
jl 0x1400e8cd8
mov rcx, qword [rsi]
call fcn.1401c2310
mov rcx, qword [rsi]
xor r8d, r8d
mov edx, r13d
mov ebp, eax
call fcn.1401c1f88
movsx ecx, word [rbx + 0x64]
imul ecx, dword [rbx + 0x54]
test ecx, ecx
jle 0x1400e8d7f
mov rdi, r12
nop
movzx ecx, word [rdi]
mov rdx, rsi
call fcn.1400671a0
movsx eax, word [rbx + 0x64]
inc r14d
lea rdi, [rdi + 4]
imul eax, dword [rbx + 0x54]
cmp r14d, eax
jl 0x1400e8d60
mov rcx, qword [rsi]
xor r8d, r8d
mov edx, ebp
call fcn.1401c1f88
mov rcx, r12
call fcn.1401be23c
mov r12d, dword [rsp + 0x20]
mov rbp, qword [rsp + 0x140]
mov rax, qword [rsp + 0x28]
mov r15, qword [rsp + 0x118]
mov r14, qword [rsp + 0x120]
mov r13, qword [rsp + 0x128]
mov rdi, qword [rsp + 0x130]
mov rsi, qword [rsp + 0x138]
mov rbx, qword [rsp + 0x148]
test rax, rax
je 0x1400e8de3
mov rcx, rax
call fcn.1401be23c
movzx eax, r12w
mov rcx, qword [rsp + 0x100]
xor rcx, rsp
call fcn.1401bd600
add rsp, 0x150
pop r12
ret