Function at 0x14002b220
Capabilities:
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x58
mov r14, r9
mov rbx, r8
mov qword [rsp + 0x40], rdx
cmp byte [rsp + 0xc8], 0
mov qword [rsp + 0x48], rcx
je 0x14002b2ba
mov rsi, rcx
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x8000080
mov dword [rsp + 0x20], 4
mov rcx, rbx
mov edx, 0x40000000
xor r8d, r8d
xor r9d, r9d
call sub.KERNEL32.dll_CreateFileW
cmp rax, 0xffffffffffffffff
je 0x14002b430
mov r15, rax
mov rcx, rax
xor edx, edx
xor r8d, r8d
mov r9d, 2
call sub.KERNEL32.dll_SetFilePointer
cmp eax, 0xffffffff
jne 0x14002b2f3
cmp qword [rsp + 0x40], 0
jne 0x14002b5af
test rbx, rbx
jne 0x14002b592
xor ecx, ecx
jmp 0x14002b59d
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x8000080
mov dword [rsp + 0x20], 2
mov rcx, rbx
mov edx, 0x40000000
xor r8d, r8d
xor r9d, r9d
call sub.KERNEL32.dll_CreateFileW
mov r15, rax
cmp rax, 0xffffffffffffffff
je 0x14002b441
test r14, r14
je 0x14002b34d
mov rbp, qword [rsp + 0xc0]
xor esi, esi
mov edi, 0x40000000
lea r12, [rsp + 0x54]
nop dword [rax]
mov r13, r14
sub r13, rsi
cmp r13, 0x40000000
cmovae r13, rdi
lea rdx, [rsi + rbp]
mov qword [rsp + 0x20], 0
mov rcx, r15
mov r8d, r13d
mov r9, r12
call sub.KERNEL32.dll_WriteFile
mov eax, dword [rsp + 0x54]
cmp r13, rax
jne 0x14002b36a
add rsi, r13
cmp rsi, r14
jne 0x14002b310
mov rcx, r15
call sub.KERNEL32.dll_CloseHandle
test eax, eax
je 0x14002b36a
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp qword [rsp + 0x40], 0
jne 0x14002b398
test rbx, rbx
jne 0x14002b37b
xor ecx, ecx
jmp 0x14002b386
mov rcx, rbx
call fcn.140099574
mov rcx, rax
mov rdx, rbx
call fcn.140029490
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rdx
lea rcx, [0x1400f17b0]
call fcn.140067130
mov rbx, rax
lea rax, [0x1400c5100]
mov qword [rbx], rax
mov qword [rbx + 8], 0
movups xmm0, xmmword [0x1400c50b8]
movups xmmword [rbx + 0x10], xmm0
movups xmm0, xmmword [0x1400c50c8]
movups xmmword [rbx + 0x20], xmm0
movups xmm0, xmmword [0x1400c50d8]
movups xmmword [rbx + 0x30], xmm0
movups xmm0, xmmword [0x1400c50e8]
movups xmmword [rbx + 0x40], xmm0
mov rax, qword [0x1400c50f8]
mov qword [rbx + 0x50], rax
call sub.KERNEL32.dll_GetLastError
lea rcx, str.std_file.d
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], 0x382
mov qword [rsp + 0x20], 0xa
mov rcx, rbx
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x40]
mov r9d, eax
call fcn.14002ab30
mov rcx, rbx
call fcn.140046240
cmp qword [rsp + 0x40], 0
jne 0x14002b478
test rbx, rbx
jne 0x14002b45d
xor ecx, ecx
jmp 0x14002b468
cmp qword [rsp + 0x40], 0
jne 0x14002b51b
test rbx, rbx
jne 0x14002b4fe
xor ecx, ecx
jmp 0x14002b509
mov rcx, rbx
call fcn.140099574
mov rcx, rax
mov rdx, rbx
call fcn.140029490
mov rsi, rax
mov qword [rsp + 0x40], rdx
lea rcx, [0x1400f17b0]
call fcn.140067130
mov rbx, rax
lea rax, [0x1400c5100]
mov qword [rbx], rax
mov qword [rbx + 8], 0
movups xmm0, xmmword [0x1400c50b8]
movups xmmword [rbx + 0x10], xmm0
movups xmm0, xmmword [0x1400c50c8]
movups xmmword [rbx + 0x20], xmm0
movups xmm0, xmmword [0x1400c50d8]
movups xmmword [rbx + 0x30], xmm0
movups xmm0, xmmword [0x1400c50e8]
movups xmmword [rbx + 0x40], xmm0
mov rax, qword [0x1400c50f8]
mov qword [rbx + 0x50], rax
call sub.KERNEL32.dll_GetLastError
lea rcx, str.std_file.d
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], 0x369
mov qword [rsp + 0x20], 0xa
mov rcx, rbx
mov rdx, rsi
jmp 0x14002b41b
mov rcx, rbx
call fcn.140099574
mov rcx, rax
mov rdx, rbx
call fcn.140029490
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rdx
lea rcx, [0x1400f17b0]
call fcn.140067130
mov rbx, rax
lea rax, [0x1400c5100]
mov qword [rbx], rax
mov qword [rbx + 8], 0
movups xmm0, xmmword [0x1400c50b8]
movups xmmword [rbx + 0x10], xmm0
movups xmm0, xmmword [0x1400c50c8]
movups xmmword [rbx + 0x20], xmm0
movups xmm0, xmmword [0x1400c50d8]
movups xmmword [rbx + 0x30], xmm0
movups xmm0, xmmword [0x1400c50e8]
movups xmmword [rbx + 0x40], xmm0
mov rax, qword [0x1400c50f8]
mov qword [rbx + 0x50], rax
call sub.KERNEL32.dll_GetLastError
lea rcx, str.std_file.d
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], 0x375
jmp 0x14002b40a
mov rcx, rbx
call fcn.140099574
mov rcx, rax
mov rdx, rbx
call fcn.140029490
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rdx
lea rcx, [0x1400f17b0]
call fcn.140067130
mov rbx, rax
lea rax, [0x1400c5100]
mov qword [rbx], rax
mov qword [rbx + 8], 0
movups xmm0, xmmword [0x1400c50b8]
movups xmmword [rbx + 0x10], xmm0
movups xmm0, xmmword [0x1400c50c8]
movups xmmword [rbx + 0x20], xmm0
movups xmm0, xmmword [0x1400c50d8]
movups xmmword [rbx + 0x30], xmm0
movups xmm0, xmmword [0x1400c50e8]
movups xmmword [rbx + 0x40], xmm0
mov rax, qword [0x1400c50f8]
mov qword [rbx + 0x50], rax
call sub.KERNEL32.dll_GetLastError
lea rcx, str.std_file.d
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], 0x36a
jmp 0x14002b40a