Function at 0x68116e50
Capabilities:
Create thread

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x78
xor r8d, r8d
lea rbp, [0x68313670]
lea r13, [rsp + 0x40]
mov esi, ecx
mov qword [rsp + 0x40], rbp
mov rbx, r9
mov qword [rsp + 0xc8], rdx
mov rdx, qword [r9 + 0x10]
mov rcx, r13
mov qword [rsp + 0x48], 0
mov byte [rsp + 0x50], 0
call fcn.6812cb90
cmp qword [rsp + 0x48], 0
jne 0x68116ecb
xor edx, edx
xor ecx, ecx
call qword [sym.imp.msvcrt.dll__getcwd]
mov r12, rax
test rax, rax
je 0x68116ecb
mov rcx, r13
xor r8d, r8d
mov rdx, rax
call fcn.6812cb90
mov rcx, r12
call sub.msvcrt.dll_free
mov rdx, qword [rsp + 0x48]
test rdx, rdx
jne 0x68116efd
mov r9d, 0x1d2
lea r8, str.src_.._.._distrho_extra_FileBrowserDialogImpl.cpp
xor r12d, r12d
lea rdx, str.startDir.isNotEmpty__
lea rcx, [0x68323201]
call fcn.6810abd0
jmp 0x6811721d
mov rcx, qword [rsp + 0x40]
cmp byte [rcx + rdx - 1], 0x5c
je 0x68116f50
add rdx, 2
call sub.msvcrt.dll_realloc
test rax, rax
jne 0x68116f39
mov r9d, 0x342
lea r8, str.src_.._.._distrho_extra_String.hpp
lea rdx, str.newBuf___nullptr
lea rcx, [0x68323201]
call fcn.6810abd0
jmp 0x68116f50
mov rdx, qword [rsp + 0x48]
add rdx, rax
mov word [rdx], 0x5c
inc qword [rsp + 0x48]
mov qword [rsp + 0x40], rax
mov rdx, qword [rbx + 0x18]
lea r14, [rsp + 0x58]
xor r8d, r8d
mov qword [rsp + 0x58], rbp
mov rcx, r14
mov byte [rsp + 0x68], 0
mov qword [rsp + 0x60], 0
call fcn.6812cb90
cmp qword [rsp + 0x60], 0
jne 0x68116f91
xor r8d, r8d
lea rdx, str.FileBrowser
mov rcx, r14
call fcn.6812cb90
mov ecx, 0x100
call fcn.681c7e20
mov qword [rax], 0
mov ecx, 0x10000
mov bpl, byte [rbx]
mov r12, rax
mov byte [rax + 0xa0], 0
mov qword [rax + 0xa8], 0
mov qword [rax + 0xb0], 0
mov qword [rax + 0xb8], 0
mov qword [rax + 0xc0], 0
call fcn.681c7e20
lea rcx, [rax + 0x10000]
mov qword [r12 + 0xb0], rax
mov rdx, rax
xor eax, eax
mov qword [r12 + 0xc0], rcx
mov word [rdx + rax], 0
add rax, 2
cmp rax, 0x10000
jne 0x68117001
lea r8, [r12 + 8]
xor eax, eax
mov qword [r12 + 0xb8], rcx
mov ecx, 0x25
mov rdi, r8
cmp dword [rbx + 0x2c], 2
mov byte [r12 + 0xf8], bpl
mov qword [r12 + 0xc8], 0
mov rbp, qword [rsp + 0x58]
mov qword [r12 + 0xd0], 0
mov r15, qword [rsp + 0x40]
mov qword [r12 + 0xd8], 0
mov qword [r12 + 0xe0], 0
mov qword [r12 + 0xe8], 0
mov qword [r12 + 0xf0], 0
rep stosd dword [rdi], eax
mov byte [r12 + 0xf9], sil
mov rsi, qword [rsp + 0xc8]
mov dword [r12 + 8], 0x98
mov eax, dword [rbx + 0x30]
mov qword [r12 + 0x38], rdx
mov dword [r12 + 0x40], 0x8000
mov qword [r12 + 0x10], rsi
je 0x681170c6
mov dword [r12 + 0x68], 0x81808
jmp 0x681170cf
mov dword [r12 + 0x68], 0x10081808
test eax, eax
mov rdi, r15
sete al
or rcx, 0xffffffffffffffff
movzx eax, al
mov dword [r12 + 0x9c], eax
xor eax, eax
repne scasb al, byte [rdi]
mov rdx, rcx
lea rcx, [r12 + 0xc8]
not rdx
call fcn.681b27f0
mov rdx, qword [r12 + 0xc8]
or r9d, 0xffffffff
mov r8, r15
mov ecx, 0xfde9
mov rax, qword [r12 + 0xd0]
mov rbx, qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov qword [rsp + 0x20], rdx
sub rax, rdx
xor edx, edx
sar rax, 1
mov dword [rsp + 0x28], eax
call rbx
test eax, eax
je 0x68117144
mov rax, qword [r12 + 0xc8]
mov qword [r12 + 0x58], rax
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, rbp
repne scasb al, byte [rdi]
mov rdx, rcx
lea rcx, [r12 + 0xe0]
not rdx
call fcn.681b27f0
mov rdx, qword [r12 + 0xe0]
or r9d, 0xffffffff
mov r8, rbp
mov ecx, 0xfde9
mov rax, qword [r12 + 0xe8]
mov qword [rsp + 0x20], rdx
sub rax, rdx
xor edx, edx
sar rax, 1
mov dword [rsp + 0x28], eax
call rbx
test eax, eax
je 0x681171a2
mov rax, qword [r12 + 0xe0]
mov qword [r12 + 0x60], rax
lea rax, [rsp + 0x3c]
mov r9, r12
xor edx, edx
xor ecx, ecx
mov byte [r12 + 0xa0], 0
lea r8, [0x68113c00]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
call qword [sym.imp.msvcrt.dll__beginthreadex]
mov qword [r12 + 0xa8], rax
mov rcx, r14
call fcn.6812cd90
jmp 0x6811721d
mov rcx, r13
call fcn.6812cd90
mov rax, r12
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret