Function at 0x180014f40
Capabilities:
Query environment variable

Disassembly:
push rbp
push r12
push rbx
sub rsp, 0x30
lea rbp, [rsp + 0x30]
mov r12, rcx
mov rbx, rdx
test byte [rcx + 0xe0], 0x10
jne 0x180015230
movdqu xmm0, xmmword [rbx]
lea rcx, str.FAUDIO_LOG_EVERYTHING
movups xmmword [r12 + 0xe0], xmm0
mov rax, qword [rbx + 0x10]
mov rbx, qword [sym.imp.ucrtbase.dll_getenv]
mov qword [r12 + 0xf0], rax
call rbx
test rax, rax
je 0x180014f97
cmp byte [rax], 0x31
je 0x180015200
lea rcx, str.FAUDIO_LOG_ERRORS
call rbx
mov rdx, rax
test rax, rax
je 0x180014fc6
mov eax, dword [r12 + 0xe0]
mov ecx, eax
or eax, 1
and ecx, 0xfffffffe
cmp byte [rdx], 0x31
cmovne eax, ecx
mov dword [r12 + 0xe0], eax
lea rcx, str.FAUDIO_LOG_WARNINGS
call rbx
mov rdx, rax
test rax, rax
je 0x180014ff5
mov eax, dword [r12 + 0xe0]
mov ecx, eax
or eax, 2
and ecx, 0xfffffffd
cmp byte [rdx], 0x31
cmovne eax, ecx
mov dword [r12 + 0xe0], eax
lea rcx, str.FAUDIO_LOG_INFO
call rbx
mov rdx, rax
test rax, rax
je 0x180015024
mov eax, dword [r12 + 0xe0]
mov ecx, eax
or eax, 4
and ecx, 0xfffffffb
cmp byte [rdx], 0x31
cmovne eax, ecx
mov dword [r12 + 0xe0], eax
lea rcx, str.FAUDIO_LOG_DETAIL
call rbx
mov rdx, rax
test rax, rax
je 0x180015053
mov eax, dword [r12 + 0xe0]
mov ecx, eax
or eax, 8
and ecx, 0xfffffff7
cmp byte [rdx], 0x31
cmovne eax, ecx
mov dword [r12 + 0xe0], eax
lea rcx, str.FAUDIO_LOG_API_CALLS
call rbx
mov rdx, rax
test rax, rax
je 0x180015082
mov eax, dword [r12 + 0xe0]
mov ecx, eax
or eax, 0x10
and ecx, 0xffffffef
cmp byte [rdx], 0x31
cmovne eax, ecx
mov dword [r12 + 0xe0], eax
lea rcx, str.FAUDIO_LOG_FUNC_CALLS
call rbx
mov rdx, rax
test rax, rax
je 0x1800150b1
mov eax, dword [r12 + 0xe0]
mov ecx, eax
or eax, 0x20
and ecx, 0xffffffdf
cmp byte [rdx], 0x31
cmovne eax, ecx
mov dword [r12 + 0xe0], eax
lea rcx, str.FAUDIO_LOG_TIMING
call rbx
mov rdx, rax
test rax, rax
je 0x1800150e0
mov eax, dword [r12 + 0xe0]
mov ecx, eax
or eax, 0x40
and ecx, 0xffffffbf
cmp byte [rdx], 0x31
cmovne eax, ecx
mov dword [r12 + 0xe0], eax
lea rcx, str.FAUDIO_LOG_LOCKS
call rbx
mov rdx, rax
test rax, rax
je 0x18001510e
mov eax, dword [r12 + 0xe0]
mov ecx, eax
or al, 0x80
and cl, 0x7f
cmp byte [rdx], 0x31
cmovne eax, ecx
mov dword [r12 + 0xe0], eax
lea rcx, str.FAUDIO_LOG_MEMORY
call rbx
mov rdx, rax
test rax, rax
je 0x18001513d
mov eax, dword [r12 + 0xe0]
mov ecx, eax
or ah, 1
and ch, 0xfe
cmp byte [rdx], 0x31
cmovne eax, ecx
mov dword [r12 + 0xe0], eax
lea rcx, str.FAUDIO_LOG_STREAMING
call rbx
mov rdx, rax
test rax, rax
je 0x18001516c
mov eax, dword [r12 + 0xe0]
mov ecx, eax
or ah, 0x10
and ch, 0xef
cmp byte [rdx], 0x31
cmovne eax, ecx
mov dword [r12 + 0xe0], eax
lea rcx, str.FAUDIO_LOG_LOGTHREADID
call rbx
test rax, rax
je 0x18001518b
cmp byte [rax], 0x31
sete al
movzx eax, al
mov dword [r12 + 0xe8], eax
lea rcx, str.FAUDIO_LOG_LOGFILELINE
call rbx
test rax, rax
je 0x1800151aa
cmp byte [rax], 0x31
sete al
movzx eax, al
mov dword [r12 + 0xec], eax
lea rcx, str.FAUDIO_LOG_LOGFUNCTIONNAME
call rbx
test rax, rax
je 0x1800151c9
cmp byte [rax], 0x31
sete al
movzx eax, al
mov dword [r12 + 0xf0], eax
lea rcx, str.FAUDIO_LOG_LOGTIMING
call rbx
test rax, rax
je 0x1800151e8
cmp byte [rax], 0x31
sete al
movzx eax, al
mov dword [r12 + 0xf4], eax
test byte [r12 + 0xe0], 0x10
jne 0x180015260
add rsp, 0x30
pop rbx
pop r12
pop rbp
ret
movabs rax, 0x100000001
mov dword [r12 + 0xe0], 0x11ff
mov dword [r12 + 0xe8], 1
mov qword [r12 + 0xf0], rax
jmp 0x180014f97
lea r9, str.FAudio_SetDebugConfiguration
lea rax, str.API_Enter:__s
mov r8d, 0x3b2
mov qword [rsp + 0x28], r9
lea rdx, str..._src_wine_libs_faudio_src_FAudio.c
mov qword [rsp + 0x20], rax
call sym.FAudio_INTERNAL_debug
jmp 0x180014f60
lea r9, str.FAudio_SetDebugConfiguration
mov r8d, 0x3f2
mov rcx, r12
lea rax, str.API_Exit:__s
mov qword [rsp + 0x28], r9
lea rdx, str..._src_wine_libs_faudio_src_FAudio.c
mov qword [rsp + 0x20], rax
call sym.FAudio_INTERNAL_debug
nop
add rsp, 0x30
pop rbx
pop r12
pop rbp
ret