Function at 0x14000bee0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x60], rax
movzx eax, word [0x140041960]
mov r15, rcx
mov r8, rcx
mov r14, rdx
lea rcx, [0x1400429c0]
mov edx, 0x80
mov word [0x14003e1a0], ax
call fcn.14002a640
xor r12d, r12d
movzx ebx, ax
test ax, ax
jle 0x14000c502
lea rbp, [0x140042a40]
lea r13, [0x14003c038]
nop dword [rax + rax]
mov rcx, qword [r15]
mov edi, dword [0x14003e1a8]
mov r9d, 1
xor r8d, r8d
xor edx, edx
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov esi, eax
lea ecx, [rax + 1]
test ecx, 0xfffffffe
jne 0x14000bfac
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x58
jae 0x14000bf90
mov ecx, eax
lea rax, [0x1400310a0]
mov edx, dword [rax + rcx*4]
jmp 0x14000bf95
mov edx, 0x106
mov dword [0x1400430b8], edx
mov dword [0x1400434c8], 2
mov byte [0x1400433c0], r12b
test edi, edi
je 0x14000bfc3
imul eax, esi, 0x64
xor edx, edx
div edi
mov r8d, eax
mov word [0x14003ee5c], ax
jmp 0x14000bfcb
movzx r8d, word [0x14003ee5c]
movzx edx, word [0x14003ee44]
movzx r9d, r8w
mov ecx, r9d
mov eax, edx
sub ecx, edx
cmp ecx, 1
jl 0x14000c036
movzx ecx, word [0x14003ee60]
inc dx
mov eax, 0x51eb851f
mov word [0x14003ee44], dx
mov word [0x14003e1a4], r8w
imul ecx, r9d
imul ecx
mov ecx, edx
lea rdx, [0x14003e1b0]
sar ecx, 5
mov eax, ecx
shr eax, 0x1f
add ecx, eax
add cx, word [0x14003ee48]
mov word [0x14003ee50], cx
call qword [0x140041aa8]
test ax, ax
jne 0x14000c52b
movzx eax, word [0x1400429c0]
cmp ax, 0x1a
je 0x14000c4e2
cmp bx, 4
jne 0x14000c061
cmp ax, 0xd
jne 0x14000c061
cmp word [0x1400429c2], 0xa
je 0x14000c4e2
add bx, 0xfffc
movsx rax, bx
cmp rax, 0x80
jae 0x14000c546
lea r8, [0x1400429c0]
mov byte [rax + r8], r12b
movsx eax, bx
inc eax
movsxd rcx, eax
cmp rcx, 0x80
jae 0x14000c540
mov byte [rcx + r8], r12b
mov rdx, rbp
mov rcx, r8
call fcn.14000c550
test ax, ax
js 0x14000c539
mov rcx, rbp
mov word [0x140042b46], ax
call fcn.14000c6b0
test ax, ax
js 0x14000c539
mov word [0x140042b40], ax
mov ecx, r12d
mov rax, rbp
cmp byte [rax], r12b
jne 0x14000c0dd
cmp byte [rax + 1], r12b
je 0x14000c0e5
add rax, 2
inc ecx
jmp 0x14000c0d2
add cx, cx
movsx rax, cx
cmp byte [rax + rbp - 2], 0x2e
jne 0x14000c110
cmp byte [rax + rbp - 1], r12b
jne 0x14000c110
mov word [rax + rbp - 2], r12w
mov eax, 0x8000
add cx, 0xfffe
or word [0x140042b46], ax
movsx rdi, cx
movsx rax, cx
mov rcx, r12
mov word [rax + rbp], r12w
mov rbx, rdi
test edi, edi
jle 0x14000c13b
nop word [rax + rax]
not byte [rcx + rbp]
inc rcx
cmp rcx, rbx
jl 0x14000c130
mov rcx, qword [r14]
lea r9, [rsp + 0x34]
mov r8d, edi
mov rdx, rbp
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x14000c18d
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x58
jae 0x14000c171
lea rcx, [0x1400310a0]
mov eax, eax
mov ecx, dword [rcx + rax*4]
jmp 0x14000c176
mov ecx, 0x106
mov dword [0x1400430b8], ecx
mov dword [0x1400434c8], 2
mov byte [0x1400433c0], r12b
mov rcx, r12
test edi, edi
jle 0x14000c1b2
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + rbp]
inc rcx
not al
mov byte [rcx + rbp - 1], al
cmp rcx, rbx
jl 0x14000c1a0
cmp dword [rsp + 0x34], edi
jne 0x14000c532
lea rbx, [0x14003c040]
lea rsi, [0x140042ac0]
mov rcx, rbx
mov rdx, rsi
movzx eax, byte [rcx]
test al, al
jne 0x14000c1dd
cmp byte [rcx + 1], r12b
je 0x14000c1f0
mov byte [rdx], al
movzx eax, byte [rcx + 1]
add rdx, 2
mov byte [rdx - 1], al
add rcx, 2
jmp 0x14000c1d0
movzx eax, byte [rcx]
mov byte [rdx], al
movzx eax, byte [rcx + 1]
lea rcx, [rsp + 0x50]
mov byte [rdx + 1], al
movzx r8d, word [0x140042b40]
lea rdx, [0x1400347c4]
call qword [sym.imp.MSVCR120.dll_sprintf]
cmp r12w, ax
jge 0x14000c247
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x41]
movzx r9d, ax
nop word [rax + rax]
movzx ecx, byte [r8]
mov byte [rdx], r12b
lea rdx, [rdx + 2]
mov byte [rdx - 3], cl
lea r8, [r8 + 1]
dec r9
jne 0x14000c230
movsx rax, ax
lea rdx, [rsp + 0x40]
mov rcx, rsi
mov word [rsp + rax*2 + 0x40], r12w
nop dword [rax]
cmp byte [rcx], r12b
jne 0x14000c26b
cmp byte [rcx + 1], r12b
je 0x14000c271
add rcx, 2
jmp 0x14000c260
movzx eax, byte [rdx]
test al, al
jne 0x14000c27e
cmp byte [rdx + 1], r12b
je 0x14000c291
mov byte [rcx], al
movzx eax, byte [rdx + 1]
add rcx, 2
mov byte [rcx - 1], al
add rdx, 2
jmp 0x14000c271
mov word [rcx], r12w
mov rdx, rbx
mov rcx, rsi
nop dword [rax + rax]
cmp byte [rcx], r12b
jne 0x14000c2ab
cmp byte [rcx + 1], r12b
je 0x14000c2b1
add rcx, 2
jmp 0x14000c2a0
movzx eax, byte [rdx]
test al, al
jne 0x14000c2be
cmp byte [rdx + 1], r12b
je 0x14000c2d1
mov byte [rcx], al
movzx eax, byte [rdx + 1]
add rcx, 2
mov byte [rcx - 1], al
add rdx, 2
jmp 0x14000c2b1
mov word [rcx], r12w
movzx r8d, word [0x140042b46]
lea rdx, [0x1400347c4]
lea rcx, [rsp + 0x58]
call qword [sym.imp.MSVCR120.dll_sprintf]
cmp r12w, ax
jge 0x14000c327
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x41]
movzx r9d, ax
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [r8]
mov byte [rdx], r12b
lea rdx, [rdx + 2]
mov byte [rdx - 3], cl
lea r8, [r8 + 1]
dec r9
jne 0x14000c310
movsx rax, ax
lea rdx, [rsp + 0x40]
mov word [rsp + rax*2 + 0x40], r12w
mov rax, rsi
nop dword [rax]
cmp byte [rax], r12b
jne 0x14000c34b
cmp byte [rax + 1], r12b
je 0x14000c351
add rax, 2
jmp 0x14000c340
movzx ecx, byte [rdx]
test cl, cl
jne 0x14000c35e
cmp byte [rdx + 1], r12b
je 0x14000c371
mov byte [rax], cl
movzx ecx, byte [rdx + 1]
add rax, 2
mov byte [rax - 1], cl
add rdx, 2
jmp 0x14000c351
mov word [rax], r12w
mov ecx, r12d
mov rax, rsi
nop dword [rax + rax]
cmp byte [rax], r12b
jne 0x14000c38b
cmp byte [rax + 1], r12b
je 0x14000c393
add rax, 2
inc ecx
jmp 0x14000c380
add cx, cx
movsx rdi, cx
mov rcx, r12
mov rbx, rdi
test edi, edi
jle 0x14000c3bf
nop dword [rax]
nop dword [rax + rax]
not byte [rcx + rbp + 0x80]
inc rcx
cmp rcx, rbx
jl 0x14000c3b0
mov rcx, qword [r14]
lea r9, [rsp + 0x38]
mov r8d, edi
mov rdx, rsi
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x14000c411
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x58
jae 0x14000c3f5
lea rcx, [0x1400310a0]
mov eax, eax
mov ecx, dword [rcx + rax*4]
jmp 0x14000c3fa
mov ecx, 0x106
mov dword [0x1400430b8], ecx
mov dword [0x1400434c8], 2
mov byte [0x1400433c0], r12b
mov rcx, r12
test edi, edi
jle 0x14000c42f
nop dword [rax + rax]
not byte [rcx + rbp + 0x80]
inc rcx
cmp rcx, rbx
jl 0x14000c420
cmp dword [rsp + 0x38], edi
jne 0x14000c532
mov rax, r13
mov ecx, r12d
nop
cmp byte [rax], r12b
jne 0x14000c44b
cmp byte [rax + 1], r12b
je 0x14000c453
add rax, 2
inc ecx
jmp 0x14000c440
add cx, cx
movsx rdi, cx
mov rcx, r12
mov rbx, rdi
test edi, edi
jle 0x14000c470
not byte [rcx + r13]
inc rcx
cmp rcx, rbx
jl 0x14000c464
mov rcx, qword [r14]
lea r9, [rsp + 0x30]
mov r8d, edi
mov rdx, r13
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x14000c4c2
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x58
jae 0x14000c4a6
lea rcx, [0x1400310a0]
mov eax, eax
mov ecx, dword [rcx + rax*4]
jmp 0x14000c4ab
mov ecx, 0x106
mov dword [0x1400430b8], ecx
mov dword [0x1400434c8], 2
mov byte [0x1400433c0], r12b
mov rcx, r12
test edi, edi
jle 0x14000c4dc
nop dword [rax]
not byte [rcx + r13]
inc rcx
cmp rcx, rbx
jl 0x14000c4d0
cmp dword [rsp + 0x30], edi
jne 0x14000c532
lea rcx, [0x1400429c0]
mov edx, 0x80
mov r8, r15
call fcn.14002a640
movzx ebx, ax
test ax, ax
jg 0x14000bf50
movzx eax, r12w
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.14002c960
mov rbx, qword [rsp + 0xc0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov eax, 0xfffffffc
jmp 0x14000c506
mov eax, 0xfffffffe
jmp 0x14000c506
mov eax, 0xfffffffd
jmp 0x14000c506
call fcn.14002cbc8
int3
call fcn.14002cbc8
int3