Function at 0x14002c7b0
Capabilities:
Write file on windows

Disassembly:
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x80
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rsp + 0xc0], rbx
mov rax, qword [0x1402ba4e0]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov rsi, rdx
mov r12, rcx
mov qword [rsp + 0x48], rcx
xor r14d, r14d
mov ebx, r14d
mov dword [rsp + 0x30], ebx
call fcn.14002bd80
nop
cmp dword [r12 + 0x24], r14d
jne 0x14002ca1f
cmp qword [r12 + 0x390], r14
je 0x14002ca1f
lea rcx, [r12 + 0x398]
call fcn.1400a4180
test eax, eax
je 0x14002c8e2
lea rcx, [r12 + 0x398]
call fcn.1400a4180
add eax, dword [rsi + 0x10]
mov ebx, eax
imul rbx, rbx, 0x54
mov rcx, rbx
call fcn.14010a204
mov rdi, rax
mov r8, rbx
xor edx, edx
mov rcx, rax
call fcn.14010da60
mov r8d, dword [rsi + 0x10]
imul r8, r8, 0x54
mov rdx, qword [rsi]
mov rcx, rdi
call fcn.14010c9b0
mov rcx, qword [rsi + 8]
call fcn.140085540
mov qword [rsi + 8], rdi
mov qword [rsi], rdi
lea rcx, [r12 + 0x398]
call fcn.1400a41d0
mov rbx, rax
nop word [rax + rax]
test rbx, rbx
je 0x14002c8d5
mov rcx, rbx
call fcn.1400a39b0
test rax, rax
je 0x14002c8c0
mov edx, dword [rsi + 0x10]
imul rdx, rdx, 0x54
mov rcx, qword [rsi]
add rcx, rdx
mov rdx, rax
mov r8d, 0x54
call fcn.14010c9b0
inc dword [rsi + 0x10]
mov rdx, rbx
lea rcx, [r12 + 0x398]
call fcn.1400a41e0
mov rbx, rax
jmp 0x14002c890
lea rcx, [r12 + 0x398]
call fcn.14002bcc0
mov dword [rsp + 0x38], r14d
mov qword [rsp + 0x40], r14
mov edi, dword [rsi + 0x10]
imul edi, edi, 0x54
mov dword [rsp + 0x20], edi
lea r9, [rsp + 0x38]
mov r8, qword [rsi]
lea rdx, [rsp + 0x40]
mov rcx, r12
call fcn.14002ba20
mov ebx, eax
mov dword [rsp + 0x30], eax
test eax, eax
je 0x14002ca11
mov dword [rsp + 0x34], r14d
xor eax, eax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x5c], 0xff23ff24
mov dword [rsp + 0x60], 0x30000
mov eax, dword [rsi + 0x10]
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x64], 0x1c
mov esi, dword [rsp + 0x38]
mov dword [rsp + 0x6c], esi
mov dword [rsp + 0x70], edi
mov r8d, reloc.OLEAUT32.dll_SafeArrayGetElement
lea rdx, [rsp + 0x5c]
or ecx, 0xffffffff
call fcn.140090280
mov dword [rsp + 0x58], eax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [r12 + 0x390]
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov qword [rsp + 0x20], r14
lea r9, [rsp + 0x34]
mov r8d, 0x1c
lea rdx, [rsp + 0x58]
mov rcx, qword [r12 + 0x390]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov ebx, eax
mov dword [rsp + 0x30], eax
test eax, eax
je 0x14002ca04
cmp dword [rsp + 0x34], 0x1c
jne 0x14002ca04
mov qword [rsp + 0x20], r14
lea r9, [rsp + 0x34]
mov r8d, esi
mov rdi, qword [rsp + 0x40]
mov rdx, rdi
mov rcx, qword [r12 + 0x390]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [rsp + 0x30], eax
test eax, eax
je 0x14002c9fb
cmp esi, dword [rsp + 0x34]
jne 0x14002c9fb
mov ebx, 1
mov dword [rsp + 0x30], ebx
jmp 0x14002ca09
mov ebx, r14d
mov dword [rsp + 0x30], ebx
jmp 0x14002ca09
mov rdi, qword [rsp + 0x40]
mov rcx, rdi
call fcn.140085540
mov rcx, qword [r12 + 0x390]
call fcn.14002bfe0
nop
jmp 0x14002ca2a
mov rcx, r12
call fcn.14002bda0
mov eax, ebx
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.14010d170
mov rbx, qword [rsp + 0xc0]
add rsp, 0x80
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret