Function at 0x140002870
Capabilities:
Write file on windows

Disassembly:
sub rsp, 0xe8
mov dword [rsp + 0xe0], edx
mov qword [rsp + 0xd8], rcx
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x78], rax
call fcn.140003cc0
mov dword [rsp + 0xd4], eax
lea rcx, [rsp + 0xd4]
lea rdx, [rsp + 0xe0]
call fcn.140003c90
test al, 1
jne 0x1400028c1
jmp 0x1400028da
lea rcx, [rsp + 0xe0]
call fcn.140004580
mov dword [rsp + 0xe4], eax
jmp 0x140002ba2
mov rcx, qword [rsp + 0x78]
call fcn.1400044d0
cmp rax, 0
je 0x14000294c
mov rcx, qword [rsp + 0x78]
call fcn.1400044d0
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x70], rax
call fcn.1400045e0
mov rcx, rax
mov rax, qword [rsp + 0x70]
cmp rax, rcx
jae 0x14000294c
lea rcx, [rsp + 0xe0]
call fcn.140004470
mov rcx, qword [rsp + 0x78]
mov byte [rsp + 0x6f], al
call fcn.140004600
mov cl, byte [rsp + 0x6f]
mov byte [rax], cl
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0xe4], eax
jmp 0x140002ba2
mov rax, qword [rsp + 0x78]
cmp qword [rax + 0x80], 0
jne 0x140002970
call fcn.140003cc0
mov dword [rsp + 0xe4], eax
jmp 0x140002ba2
mov rcx, qword [rsp + 0x78]
call fcn.140002670
mov rax, qword [rsp + 0x78]
cmp qword [rax + 0x68], 0
jne 0x1400029ea
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x80]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0xe0]
call fcn.140004470
mov rdx, qword [rsp + 0x60]
mov cl, al
call fcn.140004630
test al, 1
jne 0x1400029c1
jmp 0x1400029d1
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0x5c], eax
jmp 0x1400029da
call fcn.140003cc0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x5c]
mov dword [rsp + 0xe4], eax
jmp 0x140002ba2
mov qword [rsp + 0xc8], 0x20
lea rcx, [rsp + 0xe0]
call fcn.140004470
mov rdx, qword [rsp + 0x78]
mov byte [rsp + 0x9f], al
mov rcx, qword [rdx + 0x68]
lea r8, [rsp + 0xc0]
lea r9, [rsp + 0xa0]
add rdx, 0x74
mov rax, rsp
lea r10, [rsp + 0x88]
mov qword [rax + 0x38], r10
mov qword [rax + 0x30], r8
lea r8, [rsp + 0xa0]
mov qword [rax + 0x28], r8
lea r8, [rsp + 0x90]
mov qword [rax + 0x20], r8
lea r8, [rsp + 0x9f]
call fcn.140004660
mov ecx, eax
mov dword [rsp + 0x58], ecx
sub eax, 2
jb 0x140002a85
jmp 0x140002a73
mov eax, dword [rsp + 0x58]
sub eax, 3
je 0x140002b48
jmp 0x140002b96
mov rax, qword [rsp + 0x88]
lea rcx, [rsp + 0xa0]
sub rax, rcx
mov qword [rsp + 0x80], rax
xor eax, eax
cmp rax, qword [rsp + 0x80]
jae 0x140002b05
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x50], rcx
mov r9, qword [rax + 0x80]
mov r8, qword [rsp + 0x80]
lea rcx, [rsp + 0xa0]
mov edx, 1
call fcn.140011ee0
mov rcx, rax
mov rax, qword [rsp + 0x50]
cmp rax, rcx
je 0x140002b05
call fcn.140003cc0
mov dword [rsp + 0xe4], eax
jmp 0x140002ba2
mov rax, qword [rsp + 0x78]
mov byte [rax + 0x71], 1
lea rax, [rsp + 0x9f]
cmp qword [rsp + 0x90], rax
je 0x140002b37
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0xe4], eax
jmp 0x140002ba2
call fcn.140003cc0
mov dword [rsp + 0xe4], eax
jmp 0x140002ba2
mov rax, qword [rsp + 0x78]
mov rdx, qword [rax + 0x80]
mov cl, byte [rsp + 0x9f]
call fcn.140004630
test al, 1
jne 0x140002b6d
jmp 0x140002b7d
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0x4c], eax
jmp 0x140002b86
call fcn.140003cc0
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0xe4], eax
jmp 0x140002ba2
call fcn.140003cc0
mov dword [rsp + 0xe4], eax
mov eax, dword [rsp + 0xe4]
add rsp, 0xe8
ret