Function at 0x180232910
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xe0
mov qword [rbp + 0xf], 0xfffffffffffffffe
mov qword [rsp + 0x120], rbx
mov r13, rcx
lea rdx, [0x180417298]
lea rcx, [rbp + 0x77]
call fcn.1800e7430
nop
or ebx, 0xffffffff
lea r12, [0x1802bccb0]
mov rax, qword [0x180417298]
cmp byte [rax], 0
jne 0x18023299f
mov rdx, qword [r13 + 0x100]
add rdx, 0xfc448
lea rcx, [rbp - 0x19]
call fcn.1800e7430
mov rax, qword [rbp + 0x77]
mov rcx, qword [rbp - 0x19]
mov qword [rbp + 0x77], rcx
lea rcx, [rax - 0x10]
cmp rcx, r12
je 0x18023299f
mov eax, ebx
lock xadd dword [rcx], eax
dec eax
cmp eax, ebx
jne 0x18023299f
call fcn.1800a0c6c
lea rax, [0x1802c7964]
mov qword [rbp - 1], rax
lea rdx, [rbp - 1]
lea rcx, [rbp + 0x7f]
call fcn.18001a440
nop
lea rax, str.Choose_the_location_of_your_custom_soundbanks_folder...
mov qword [rbp + 7], rax
lea rdx, [rbp + 7]
lea rcx, [rbp - 0x29]
call fcn.18001a440
nop
mov rax, qword [rbp - 0x29]
mov qword [rbp - 0x79], rax
lea rsi, [rax - 0x10]
mov r15d, 1
cmp rsi, r12
je 0x1802329ef
mov eax, r15d
lock xadd dword [rsi], eax
mov rcx, qword [rbp + 0x7f]
mov qword [rbp - 0x71], rcx
lea rdi, [rcx - 0x10]
cmp rdi, r12
je 0x180232a0b
mov eax, r15d
lock xadd dword [rdi], eax
mov rcx, qword [rbp + 0x7f]
mov rax, qword [rbp + 0x77]
mov qword [rbp - 0x69], rax
lea r14, [rax - 0x10]
cmp r14, r12
je 0x180232a28
mov eax, r15d
lock xadd dword [r14], eax
mov rcx, qword [rbp + 0x7f]
xor eax, eax
mov qword [rbp - 0x61], rax
mov dword [rbp - 0x59], eax
mov dword [rbp - 0x51], eax
mov word [rbp - 0x49], 1
cmp byte [rcx], al
je 0x180232a75
nop
movzx edx, byte [rcx]
cmp dl, 0x20
je 0x180232a4f
lea eax, [rdx - 9]
cmp al, 4
ja 0x180232ab0
inc rcx
test dl, dl
jns 0x180232a70
mov eax, 0x40
movsx edx, dl
test al, dl
je 0x180232a70
cmp eax, 8
jbe 0x180232a70
inc rcx
shr eax, 1
test edx, eax
jne 0x180232a62
cmp byte [rcx], 0
jne 0x180232a40
lea rax, [0x1802c177c]
mov qword [rbp - 0x11], rax
lea rdx, [rbp - 0x11]
lea rcx, [rbp - 0x41]
call fcn.18001a440
mov rax, qword [rbp - 0x41]
mov qword [rbp - 0x71], rax
cmp rdi, r12
je 0x180232ab0
mov eax, ebx
lock xadd dword [rdi], eax
dec eax
cmp eax, 0xffffffff
jne 0x180232ab0
mov rcx, rdi
call fcn.1800a0c6c
nop
cmp rsi, r12
je 0x180232acb
mov eax, ebx
lock xadd dword [rsi], eax
dec eax
cmp eax, 0xffffffff
jne 0x180232acb
mov rcx, rsi
call fcn.1800a0c6c
nop
cmp rdi, r12
je 0x180232ae5
mov eax, ebx
lock xadd dword [rdi], eax
dec eax
cmp eax, 0xffffffff
jne 0x180232ae5
mov rcx, rdi
call fcn.1800a0c6c
mov edx, 9
lea rcx, [rbp - 0x79]
call fcn.18014f460
test al, al
je 0x180232cc0
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x79]
call fcn.18014f430
nop
mov rax, qword [rbp + 0x6f]
cmp byte [rax], 0
je 0x180232bb5
lea rdx, [rbp + 0x6f]
lea rcx, [rbp + 0x1f]
call fcn.180016d90
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x180232bb5
mov rax, qword [rbp + 0x6f]
lea rdi, [rax - 0x10]
cmp rdi, r12
je 0x180232b4b
lock xadd dword [rdi], r15d
mov rax, qword [rbp + 0x6f]
xchg qword [0x180417298], rax
lea rcx, [rax - 0x10]
cmp rcx, r12
je 0x180232b6d
mov eax, ebx
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x180232b6d
call fcn.1800a0c6c
call fcn.1801e6f80
lea rdx, [0x180417298]
lea rcx, [rbp - 9]
call fcn.1800e7430
lea rdx, [rbp - 9]
lea rcx, [0x180423870]
call fcn.1801edd50
nop
cmp rdi, r12
je 0x180232cc0
mov eax, ebx
lock xadd dword [rdi], eax
dec eax
cmp eax, 0xffffffff
jne 0x180232cc0
mov rcx, rdi
jmp 0x180232cba
lea rax, [0x1802bff9a]
mov qword [rbp - 0x39], rax
lea rdx, [rbp - 0x39]
lea rcx, [rsp + 0x30]
call fcn.18001a440
nop
lea rax, [0x1802dac40]
mov qword [rbp - 0x31], rax
lea rdx, [rbp - 0x31]
lea rcx, [rsp + 0x38]
call fcn.18001a440
nop
lea r8, [rbp + 0x6f]
lea rdx, str.Selected_folder_does_not_exist__n_n
lea rcx, [rbp + 0x17]
call fcn.1800ec3a0
lea r8, str.__n_nPlease_select_a_different_location.
mov rdx, rax
lea rcx, [rbp - 0x21]
call fcn.1800eb4b0
nop
mov qword [rsp + 0x28], 0
mov rcx, qword [r13 + 0xf0]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x30]
mov r8, rax
lea rdx, [rsp + 0x38]
mov ecx, 2
call fcn.1801ea0a0
nop
mov rcx, qword [rbp - 0x21]
add rcx, 0xfffffffffffffff0
cmp rcx, r12
je 0x180232c5e
mov eax, ebx
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x180232c5e
call fcn.1800a0c6c
nop
mov rcx, qword [rsp + 0x38]
add rcx, 0xfffffffffffffff0
cmp rcx, r12
je 0x180232c7f
mov eax, ebx
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x180232c7f
call fcn.1800a0c6c
nop
mov rcx, qword [rsp + 0x30]
add rcx, 0xfffffffffffffff0
cmp rcx, r12
je 0x180232ca0
mov eax, ebx
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x180232ca0
call fcn.1800a0c6c
nop
mov rcx, qword [rbp + 0x6f]
add rcx, 0xfffffffffffffff0
cmp rcx, r12
je 0x180232cc0
mov eax, ebx
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x180232cc0
call fcn.1800a0c6c
nop
lea rcx, [rbp - 0x61]
call fcn.18000a800
mov rcx, qword [rbp - 0x61]
call fcn.1800a09c8
mov rcx, qword [rbp - 0x69]
add rcx, 0xfffffffffffffff0
cmp rcx, r12
je 0x180232cf1
mov eax, ebx
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x180232cf1
call fcn.1800a0c6c
mov rcx, qword [rbp - 0x71]
add rcx, 0xfffffffffffffff0
cmp rcx, r12
je 0x180232d10
mov eax, ebx
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x180232d10
call fcn.1800a0c6c
mov rcx, qword [rbp - 0x79]
add rcx, 0xfffffffffffffff0
cmp rcx, r12
je 0x180232d30
mov eax, ebx
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x180232d30
call fcn.1800a0c6c
nop
cmp r14, r12
je 0x180232d4a
lock xadd dword [r14], ebx
lea eax, [rbx - 1]
cmp eax, 0xffffffff
jne 0x180232d4a
mov rcx, r14
call fcn.1800a0c6c
mov rbx, qword [rsp + 0x120]
add rsp, 0xe0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret