Function at 0x140075240
Capabilities:
Get common file path
Print debug messages

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
push rbp
lea rbp, [rsp - 0x950]
sub rsp, 0xa50
mov rax, qword [0x1401aa010]
xor rax, rsp
mov qword [rbp + 0x940], rax
xor r14d, r14d
mov dword [rsp + 0x20], r14d
mov qword [rsp + 0x48], r14
lea rax, [rsp + 0x40]
mov qword [rsp + 0x38], rax
lea rdx, str.DebugLogFilePath
lea rcx, [rsp + 0x40]
call fcn.14000c3f0
mov rbx, rax
lea r8, str.General
lea rdx, [rsp + 0x30]
call fcn.14000d4c0
nop
mov r9, rbx
mov r8, rax
mov rdx, qword [0x1401aa498]
lea rcx, [rsp + 0x48]
call fcn.140099200
mov dword [rsp + 0x20], 1
mov rax, qword [rsp + 0x48]
lea rdi, [r14 - 1]
cmp dword [rax - 0x10], r14d
jne 0x14007581f
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0x60]
call fcn.1400fac10
call fcn.14000cd60
mov rcx, rax
test rax, rax
je 0x140075943
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x14005eeb3.0]
add rax, 0x18
mov qword [rsp + 0x50], rax
xor edx, edx
mov r8d, 0x7ce
lea rcx, [rbp + 0x170]
call fcn.1400fac10
mov r8d, 0x3e6
lea rdx, [rbp + 0x170]
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleFileNameW]
lea rcx, [rbp + 0x170]
mov rax, rdi
inc rax
cmp word [rcx + rax*2], 0
jne 0x140075350
mov r8d, eax
lea rdx, [rbp + 0x170]
lea rcx, [rsp + 0x50]
call fcn.14000c750
mov rbx, qword [rsp + 0x50]
mov esi, dword [rbx - 0x10]
mov edx, 0x5c
mov rcx, rbx
call fcn.1400fa554
test rax, rax
jne 0x14007538c
mov eax, edi
jmp 0x140075392
sub rax, rbx
sar rax, 1
sub esi, eax
lea r8d, [rsi - 1]
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x50]
call fcn.1400149c0
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x14007540a
cmp dword [rbx + 0x10], 0
jl 0x1400753fb
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x1400753fb
call fcn.14000ec00
mov rsi, rax
mov ecx, edi
lock xadd dword [rbx + 0x10], ecx
sub ecx, 1
jg 0x1400753f0
lfence
mov rcx, qword [rbx]
mov rdx, qword [rcx]
mov rax, qword [rdx + 8]
mov rdx, rbx
call qword [case.0x14005eeb3.0]
lea rax, [rsi + 0x18]
mov qword [rsp + 0x50], rax
jmp 0x14007540a
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x50]
call fcn.14000c750
nop
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140075432
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14005eeb3.0]
lea r8, str..log
lea rdx, str..exe
lea rcx, [rsp + 0x50]
call fcn.140014b20
xor r9d, r9d
lea rdx, [rsp + 0x60]
xor ecx, ecx
cmp dword [0x1401aa4a0], ecx
je 0x140075525
lea r8d, [r9 + 0x24]
call qword [sym.imp.ext_ms_win_shell32_shellfolders_l1_1_0.dll_SHGetSpecialFolderPathW]
lea rcx, [rsp + 0x60]
mov rax, rdi
lea rax, [rax + 1]
cmp word [rcx + rax*2], 0
jne 0x140075472
cmp word [rsp + rax*2 + 0x5e], 0x5c
jne 0x14007549f
lea rax, [rax*2 - 2]
cmp rax, 0x208
jae 0x14007594e
mov word [rsp + rax + 0x60], r14w
mov edx, 0x103
mov ecx, edx
lea rax, [rsp + 0x60]
nop dword [rax + rax]
cmp word [rax], 0
je 0x1400754c0
add rax, 2
sub rcx, 1
jne 0x1400754b0
mov rax, rdx
sub rax, rcx
test rcx, rcx
cmove rax, r14
je 0x1400755d3
sub rdx, rax
lea rcx, [rsp + 0x60]
lea rcx, [rcx + rax*2]
je 0x140075511
mov eax, 0x7ffffffe
lea r9, str.Logs
sub r9, rcx
test rax, rax
je 0x140075511
movzx r8d, word [r9 + rcx]
test r8w, r8w
je 0x140075511
mov word [rcx], r8w
add rcx, 2
dec rax
sub rdx, 1
jne 0x1400754f0
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
mov word [rax], r14w
jmp 0x1400755d3
cmp dword [0x1401aa4a4], 0
je 0x140075571
mov r8d, SafeArrayCopy
call qword [sym.imp.ext_ms_win_shell32_shellfolders_l1_1_0.dll_SHGetSpecialFolderPathW]
lea rcx, [rsp + 0x60]
mov rax, rdi
lea rax, [rax + 1]
cmp word [rcx + rax*2], 0
jne 0x140075542
cmp word [rsp + rax*2 + 0x5e], 0x5c
jne 0x1400755d3
lea rax, [rax*2 - 2]
cmp rax, 0x208
jae 0x14007594e
mov word [rsp + rax + 0x60], r14w
jmp 0x1400755d3
mov r8d, 0x10
call qword [sym.imp.ext_ms_win_shell32_shellfolders_l1_1_0.dll_SHGetSpecialFolderPathW]
lea rcx, [rsp + 0x60]
mov rax, rdi
lea rax, [rax + 1]
cmp word [rcx + rax*2], 0
jne 0x140075585
cmp word [rsp + rax*2 + 0x5e], 0x5c
jne 0x1400755b2
lea rax, [rax*2 - 2]
cmp rax, 0x208
jae 0x14007594e
mov word [rsp + rax + 0x60], r14w
cmp dword [0x1401aa4a8], 0
je 0x1400755d3
lea r8, str.RtkAudUService64_COMServer
lea rdx, str.RtkAudUService64
lea rcx, [rsp + 0x50]
call fcn.140014b20
mov rbx, qword [rsp + 0x50]
mov r9, rbx
lea r8, [rsp + 0x60]
lea rdx, [0x14011bc58]
lea rcx, [rsp + 0x48]
call fcn.14000ec90
cmp dword [0x1401aa4ac], 0
je 0x1400757fc
lea rcx, [rbp + 0x170]
mov rax, rdi
nop dword [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x140075610
mov r8d, eax
lea rdx, [rbp + 0x170]
lea rcx, [rsp + 0x48]
call fcn.14000c750
mov edx, 0x5c
mov rcx, qword [rsp + 0x48]
call fcn.1400fa554
mov rcx, qword [rsp + 0x48]
test rax, rax
jne 0x14007564b
mov eax, edi
jmp 0x140075651
sub rax, rcx
sar rax, 1
mov ebx, r14d
test eax, eax
cmovns ebx, eax
cmp ebx, dword [rcx - 0x10]
jl 0x140075675
add rcx, 0xffffffffffffffe8
call fcn.14000ec00
lea rdx, [rax + 0x18]
mov qword [rsp + 0x28], rdx
jmp 0x140075708
mov rcx, qword [rcx - 0x18]
test rcx, rcx
je 0x14007576c
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x14005eeb3.0]
mov rcx, rax
test rax, rax
je 0x14007576c
mov rsi, qword [rsp + 0x48]
mov rax, rsi
test rax, rax
jne 0x1400756b0
test ebx, ebx
jne 0x14007592d
lfence
mov rax, qword [rcx]
mov r8d, 2
mov edx, ebx
mov rax, qword [rax]
call qword [case.0x14005eeb3.0]
test rax, rax
je 0x140075954
lea rcx, [rax + 0x18]
mov qword [rsp + 0x28], rcx
test ebx, ebx
js 0x14007592d
cmp ebx, dword [rcx - 0xc]
jg 0x14007592d
lfence
mov dword [rcx - 0x10], ebx
movsxd rdx, ebx
mov word [rcx + rdx*2], r14w
mov r9d, ebx
mov r8, rsi
call fcn.14000c6c0
mov rdx, qword [rsp + 0x28]
mov dword [rsp + 0x20], 5
lea rbx, [rdx - 0x18]
mov rsi, qword [rsp + 0x48]
add rsi, 0xffffffffffffffe8
cmp rbx, rsi
je 0x1400757ac
cmp dword [rsi + 0x10], 0
jl 0x14007579d
mov rax, qword [rsi]
cmp qword [rbx], rax
jne 0x14007579d
mov rcx, rbx
call fcn.14000ec00
mov r14, rax
mov ecx, edi
lock xadd dword [rsi + 0x10], ecx
sub ecx, 1
jg 0x140075761
lfence
mov rcx, qword [rsi]
mov r8, qword [rcx]
mov rdx, rsi
mov rax, qword [r8 + 8]
call qword [case.0x14005eeb3.0]
lea rax, [r14 + 0x18]
mov qword [rsp + 0x48], rax
jmp 0x1400757ac
call fcn.14000cd60
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x14005eeb3.0]
mov rcx, rax
mov rsi, qword [rsp + 0x48]
mov rax, rsi
test rcx, rcx
je 0x140075938
jmp 0x1400756a3
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x48]
call fcn.14000c750
nop
mov eax, edi
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x1400757ce
lfence
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov rdx, rbx
mov rax, qword [rax + 8]
call qword [case.0x14005eeb3.0]
lea rdx, str.RtkAudUServiceUnitTest64.log
mov rax, rdi
nop dword [rax + rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x1400757e0
mov r8d, eax
lea rcx, [rsp + 0x48]
call fcn.1400193f0
mov rbx, qword [rsp + 0x50]
lea rdx, [rbx - 0x18]
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14007581f
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14005eeb3.0]
mov r8d, 0x20
lea rdx, str.atc
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__wfsopen]
mov qword [0x1401b2678], rax
test rax, rax
jne 0x1400758bd
call fcn.14000cd60
mov rcx, rax
test rax, rax
je 0x14007595a
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x14005eeb3.0]
add rax, 0x18
mov qword [rsp + 0x58], rax
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov r9d, eax
mov r8, qword [rsp + 0x48]
lea rdx, str.CDebugLog::OpenFile__s_Err_d
lea rcx, [rsp + 0x58]
call fcn.14000ec90
mov rbx, qword [rsp + 0x58]
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_debug_l1_1_0.dll_OutputDebugStringW]
nop
lea rdx, [rbx - 0x18]
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400758db
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14005eeb3.0]
jmp 0x1400758db
mov rdx, rax
lea rcx, str._nStart_Loging_n
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputs]
mov rcx, qword [0x1401b2678]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fflush]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x140075901
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14005eeb3.0]
mov rcx, qword [rbp + 0x940]
xor rcx, rsp
call fcn.1400f4410
lea r11, [rsp + 0xa50]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
mov ecx, 0x80070057
call fcn.14000ce90
int3
mov ecx, 0x80004005
call fcn.14000ce90
nop
mov ecx, 0x80004005
call fcn.14000ce90
nop
call fcn.1400f49e4
int3
call fcn.14000c6b0
nop
mov ecx, 0x80004005
call fcn.14000ce90
int3