Function at 0x140006770
Capabilities:
Write file on windows

Disassembly:
sub rsp, 0x148
mov qword [rsp + 0x138], r8
mov qword [rsp + 0x130], rdx
mov dword [rsp + 0x12c], ecx
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x130]
call sym.__wine_dbg_get_channel_flags
movzx eax, al
mov ecx, dword [rsp + 0x12c]
mov edx, 1
shl edx, cl
mov ecx, edx
and eax, ecx
cmp eax, 0
jne 0x1400067d3
mov dword [rsp + 0x144], 0xffffffff
jmp 0x140006a98
mov eax, dword [0x14000a1a4]
mov dword [rsp + 0x40], eax
mov rax, qword gs:[0x30]
mov rcx, qword [rax + 0x48]
call sym.HandleToULong
mov ecx, eax
mov eax, dword [rsp + 0x40]
cmp eax, ecx
jne 0x14000680d
mov dword [rsp + 0x144], 0
jmp 0x140006a98
movzx eax, byte [0x14000a025]
and eax, 8
cmp eax, 0
je 0x1400068c4
lea rcx, [0x14000a025]
call sym.__wine_dbg_get_channel_flags
movzx eax, al
and eax, 8
cmp eax, 0
je 0x1400068c4
cmp qword [0x14000a1b8], 0
jne 0x140006856
lea rcx, [0x14000a1b8]
call qword [sym.imp.kernel32.dll_QueryPerformanceFrequency]
lea rcx, [rsp + 0x50]
call qword [sym.imp.kernel32.dll_QueryPerformanceCounter]
imul rax, qword [rsp + 0x50], 0xf4240
cqo
idiv qword [0x14000a1b8]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov ecx, 0xf4240
cqo
idiv rcx
mov r9d, edx
mov rax, qword [rsp + 0x48]
mov ecx, 0xf4240
cqo
idiv rcx
mov r8d, eax
mov rcx, qword [rsp + 0x58]
lea rdx, str._3u._06u:
call sym.sprintf
mov ecx, eax
mov rax, qword [rsp + 0x58]
movsxd rcx, ecx
add rax, rcx
mov qword [rsp + 0x58], rax
jmp 0x140006944
movzx eax, byte [0x14000a035]
and eax, 8
cmp eax, 0
je 0x14000693f
lea rcx, [0x14000a035]
call sym.__wine_dbg_get_channel_flags
movzx eax, al
and eax, 8
cmp eax, 0
je 0x14000693f
call qword [sym.imp.kernel32.dll_GetTickCount]
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x44]
mov ecx, 0x3e8
xor edx, edx
div ecx
mov r9d, edx
mov eax, dword [rsp + 0x44]
mov ecx, 0x3e8
xor edx, edx
div ecx
mov r8d, eax
mov rcx, qword [rsp + 0x58]
lea rdx, str._3u._03u:
call sym.sprintf
mov ecx, eax
mov rax, qword [rsp + 0x58]
movsxd rcx, ecx
add rax, rcx
mov qword [rsp + 0x58], rax
jmp 0x140006944
movzx eax, byte [0x14000a045]
and eax, 8
cmp eax, 0
je 0x1400069aa
lea rcx, [0x14000a045]
call sym.__wine_dbg_get_channel_flags
movzx eax, al
and eax, 8
cmp eax, 0
je 0x1400069aa
mov rax, qword gs:[0x30]
mov rcx, qword [rax + 0x40]
call sym.HandleToULong
mov r8d, eax
mov rcx, qword [rsp + 0x58]
lea rdx, str._04x:
call sym.sprintf
mov ecx, eax
mov rax, qword [rsp + 0x58]
movsxd rcx, ecx
add rax, rcx
mov qword [rsp + 0x58], rax
mov rax, qword gs:[0x30]
mov rcx, qword [rax + 0x48]
call sym.HandleToULong
mov r8d, eax
mov rcx, qword [rsp + 0x58]
lea rdx, str._04x:
call sym.sprintf
mov ecx, eax
mov rax, qword [rsp + 0x58]
movsxd rcx, ecx
add rax, rcx
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x138], 0
je 0x140006a5b
movsxd rax, dword [rsp + 0x12c]
cmp rax, 4
jae 0x140006a5b
mov r10, qword [rsp + 0x138]
mov r8, qword [rsp + 0x130]
add r8, 1
movsxd rcx, dword [rsp + 0x12c]
lea rax, str.fixme
mov r9, qword [rax + rcx*8]
mov rax, qword [rsp + 0x58]
lea rcx, [rsp + 0x60]
sub rax, rcx
mov edx, 0xc8
sub rdx, rax
mov rcx, qword [rsp + 0x58]
mov rax, rsp
mov qword [rax + 0x28], r10
mov qword [rax + 0x20], r8
lea r8, str._s:_s:_s
call sym.snprintf
mov ecx, 2
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x60]
mov rax, qword [sym.imp.ucrtbase.dll_strlen]
call rax
mov r9, qword [rsp + 0x38]
mov r8, rax
lea rcx, [rsp + 0x60]
mov edx, 1
call qword [sym.imp.ucrtbase.dll_fwrite]
mov dword [rsp + 0x144], eax
mov eax, dword [rsp + 0x144]
add rsp, 0x148
ret