Function at 0x1400279f0
Capabilities:
Clear file content

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
push r14
sub rsp, 0x78
mov rbx, rdx
mov r14, rcx
test rcx, rcx
jne 0x140027a14
mov eax, 0xfffffffe
add rsp, 0x78
pop r14
pop rbx
ret
mov qword [rcx], 0xffffffffffffffff
test rdx, rdx
je 0x140027a07
lea rcx, [rsp + 0xa0]
call fcn.140038340
test eax, eax
js 0x140027d11
mov rdx, qword [rsp + 0xa0]
mov qword [rsp + 0x98], rbp
mov qword [rsp + 0x68], r12
mov rax, rdx
mov r12d, 3
and eax, 0x700
lea r9d, [r12 + 2]
cmp rax, 0x100
je 0x140027aa3
cmp rax, 0x200
je 0x140027a9c
cmp rax, 0x300
je 0x140027a95
cmp rax, 0x700
je 0x140027a87
lea eax, [r12 - 5]
jmp 0x140027d04
bt rdx, 0xc
mov ebp, r12d
cmovb ebp, r9d
jmp 0x140027aa8
mov ebp, 2
jmp 0x140027aa8
mov ebp, 1
jmp 0x140027aa8
mov ebp, 4
mov rcx, rdx
mov qword [rsp + 0x70], rdi
and ecx, r12d
mov eax, ecx
test rcx, rcx
je 0x140027afa
dec rax
je 0x140027af3
dec rax
je 0x140027ae0
dec rax
jne case.0x140027b8c.17
mov rdi, rdx
shr rdi, 1
not edi
and edi, 2
or edi, 0x12019d
jmp 0x140027b09
mov rdi, rdx
shr rdi, 1
not edi
and edi, 2
or edi, 0x120114
jmp 0x140027b09
mov edi, 0x120089
jmp 0x140027b09
test rdx, 0x30000
je case.0x140027b8c.17
xor edi, edi
cmp ebp, r9d
jne 0x140027b12
bts edi, 0x1e
mov rax, rdx
and eax, 0x30000
cmp rax, 0x10000
je 0x140027b55
cmp rax, 0x20000
je 0x140027b4d
cmp rax, 0x30000
je 0x140027b45
dec rcx
je 0x140027b55
dec rcx
je 0x140027b4d
dec rcx
jne case.0x140027b8c.17
or edi, 0x100180
jmp 0x140027b5b
or edi, 0x100100
jmp 0x140027b5b
or edi, 0x100080
mov rax, rdx
and eax, 0xf0
add rax, 0xfffffffffffffff0
cmp rax, 0x70
ja case.0x140027b8c.17
lea r8, [0x140000000]
movzx eax, byte [r8 + rax + 0x27d80]
mov ecx, dword [r8 + rax*4 + 0x27d5c]
add rcx, r8
jmp rcx
mov r12d, 2
jmp case.0x140027b8c.128
mov r12d, 1
jmp case.0x140027b8c.128
xor r12d, r12d
jmp case.0x140027b8c.128
mov r12d, 7
jmp case.0x140027b8c.128
mov r12d, 6
jmp case.0x140027b8c.128
mov r12d, r9d
jmp case.0x140027b8c.128
mov r12d, 4
mov qword [rsp + 0xa8], rsi
mov qword [rsp + 0x60], r13
xor r13d, r13d
bt rdx, 0xd
jae 0x140027bef
mov qword [rsp + 0x48], r13
mov dword [rsp + 0x40], 0x18
mov dword [rsp + 0x50], 1
lea r13, [rsp + 0x40]
bt rdx, 0xf
mov esi, 0x80
mov eax, 0x80000080
cmovb esi, eax
bt rdx, 0x12
jae 0x140027c0c
bts esi, 0x1e
bt rdx, 0x13
jae 0x140027c1a
bts esi, 0x1d
and edi, 0xfffffffb
lea r8, str.D:_tinderbox_add_5.2_srcVBoxRuntime_r3win_fileio_win.cpp
lea rdx, [rsp + 0x90]
mov rcx, rbx
call sym.VBoxControl.exe_RTStrToUtf16Tag
mov ebx, eax
test eax, eax
js 0x140027cf2
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0x30], 0
mov r9, r13
mov r8d, r12d
mov edx, edi
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], ebp
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x140027d33
cmp ebp, 2
je 0x140027ca8
cmp ebp, 1
je 0x140027ca8
cmp ebp, 4
jne 0x140027c88
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x140027ca8
mov rax, qword [rsp + 0xa0]
and eax, 0x1700
cmp rax, 0x1100
jne 0x140027cdc
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetEndOfFile]
jmp 0x140027cc9
test qword [rsp + 0xa0], 0x800
je 0x140027cdc
mov rcx, qword [rsp + 0x90]
mov edx, 0x2000
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
test eax, eax
jne 0x140027cdc
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call sym.VBoxControl.exe_RTErrConvertFromWin32
mov ebx, eax
test ebx, ebx
js 0x140027d19
mov rcx, qword [rsp + 0x90]
mov qword [r14], rdi
call sym.VBoxControl.exe_RTStrFree
xor eax, eax
mov rsi, qword [rsp + 0xa8]
mov r13, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x98]
mov r12, qword [rsp + 0x68]
add rsp, 0x78
pop r14
pop rbx
ret
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x90]
call sym.VBoxControl.exe_RTStrFree
mov eax, ebx
jmp 0x140027cf2
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call sym.VBoxControl.exe_RTErrConvertFromWin32
mov rcx, qword [rsp + 0x90]
mov ebx, eax
call sym.VBoxControl.exe_RTStrFree
mov eax, ebx
jmp 0x140027cf2
mov eax, 0xfffffffe
jmp 0x140027cff