Function at 0x1400023b0
Capabilities:
Write file on windows

Disassembly:
push rbp
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x118
lea rbp, [rsp + 0x80]
cmp qword [0x1400041e0], 0
mov ebx, ecx
mov rsi, rdx
mov rdi, r8
je 0x140002630
mov rcx, rsi
call qword [0x1400041e0]
movzx eax, al
bt eax, ebx
jae 0x1400026c8
mov ecx, dword [0x140004220]
xor eax, eax
mov rdx, qword gs:[0x30]
cmp dword [rdx + 0x48], ecx
je 0x140002487
test byte [section..data], 8
jne 0x140002598
test byte [0x140004020], 8
jne 0x1400024e0
lea r13, [rbp - 0x40]
mov r12, r13
test byte [0x140004010], 8
jne 0x140002548
mov rax, qword gs:[0x30]
mov r8d, dword [rax + 0x48]
lea rdx, str._04x:
mov rcx, r12
call sym.sprintf
test rdi, rdi
je 0x14000245c
cmp ebx, 3
jbe 0x1400024a0
mov ecx, 2
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov rcx, r13
mov rbx, rax
call qword [sym.imp.ucrtbase.dll_strlen]
mov r9, rbx
mov edx, 1
mov rcx, r13
mov r8, rax
call qword [sym.imp.ucrtbase.dll_fwrite]
add rsp, 0x118
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop rbp
ret
cdqe
inc rsi
mov qword [rsp + 0x28], rdi
lea r8, str._s:_s:_s
lea rcx, [r12 + rax]
mov rax, r13
mov qword [rsp + 0x20], rsi
sub rax, rcx
lea rdx, [rax + 0xc8]
lea rax, str.fixme
mov r9, qword [rax + rbx*8]
call sym.snprintf.constprop.0
jmp 0x14000245c
cmp qword [0x1400041e0], 0
je 0x140002650
lea rcx, [0x140004020]
call qword [0x1400041e0]
test al, 8
je 0x140002422
call qword [sym.imp.kernel32.dll_GetTickCount]
lea r13, [rbp - 0x40]
lea rdx, str._3u._03u:
mov r8d, eax
mov rcx, r13
mov r9, r8
imul r8, r8, 0x10624dd3
shr r8, 0x26
imul eax, r8d, 0x3e8
sub r9d, eax
call sym.sprintf
movsxd r12, eax
add r12, r13
jmp 0x140002429
cmp qword [0x1400041e0], 0
je 0x140002670
lea rcx, [0x140004010]
call qword [0x1400041e0]
test al, 8
je 0x140002436
mov rax, qword gs:[0x30]
mov r8d, dword [rax + 0x40]
mov rcx, r12
lea rdx, str._04x:
call sym.sprintf
cdqe
add r12, rax
jmp 0x140002436
cmp qword [0x1400041e0], 0
je 0x140002690
lea rcx, section..data
call qword [0x1400041e0]
test al, 8
je 0x140002415
cmp qword [0x140004080], 0
je 0x1400026b0
lea rcx, [rbp - 0x48]
lea r13, [rbp - 0x40]
call qword [sym.imp.kernel32.dll_QueryPerformanceCounter]
imul rax, qword [rbp - 0x48], 0xf4240
mov rcx, r13
cqo
idiv qword [0x140004080]
movabs rdx, 0x431bde82d7b634db
mov r9, rax
imul rdx
mov rax, r9
sar rax, 0x3f
sar rdx, 0x12
mov r8, rdx
lea rdx, str._3u._06u:
sub r8, rax
imul rax, r8, 0xf4240
sub r9d, eax
call sym.sprintf
movsxd r12, eax
add r12, r13
jmp 0x140002429
lea r8, [sym.fallback__wine_dbg_get_channel_flags]
lea rdx, str.__wine_dbg_get_channel_flags
lea rcx, [0x1400041e0]
call sym.load_func.part.0
jmp 0x1400023dd
lea r8, [sym.fallback__wine_dbg_get_channel_flags]
lea rdx, str.__wine_dbg_get_channel_flags
lea rcx, [0x1400041e0]
call sym.load_func.part.0
jmp 0x1400024ee
lea r8, [sym.fallback__wine_dbg_get_channel_flags]
lea rdx, str.__wine_dbg_get_channel_flags
lea rcx, [0x1400041e0]
call sym.load_func.part.0
jmp 0x140002556
lea r8, [sym.fallback__wine_dbg_get_channel_flags]
lea rdx, str.__wine_dbg_get_channel_flags
lea rcx, [0x1400041e0]
call sym.load_func.part.0
jmp 0x1400025a6
lea rcx, [0x140004080]
call qword [sym.imp.kernel32.dll_QueryPerformanceFrequency]
jmp 0x1400025c9
mov eax, 0xffffffff
jmp 0x140002487