Function at 0x10008570
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
lea edi, [esi + 0x90]
test byte [esi + 0x90], 0x10
je 0x100085ad
push str.FAudio_SetDebugConfiguration
push str.API_Enter:__s
push str.FAudio_SetDebugConfiguration
push 0x3b2
push 0x10027268
push esi
call dbg.FAudio_INTERNAL_debug
add esp, 0x18
movsd xmm0, qword [ebx + 0x10]
movsd qword [edi + 0x10], xmm0
movups xmm0, xmmword [ebx]
movups xmmword [edi], xmm0
push str.FAUDIO_LOG_EVERYTHING
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x100085fc
cmp byte [eax], 0x31
jne 0x100085fc
mov dword [esi + 0x90], 0x11ff
mov dword [esi + 0x98], 1
mov dword [esi + 0xa0], 1
mov dword [esi + 0xa4], 1
push str.FAUDIO_LOG_ERRORS
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x1000861f
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov eax, dword [edi]
and eax, 0xfffffffe
or ecx, eax
mov dword [edi], ecx
push str.FAUDIO_LOG_WARNINGS
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x10008643
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov eax, dword [edi]
and eax, 0xfffffffd
lea eax, [eax + ecx*2]
mov dword [edi], eax
push str.FAUDIO_LOG_INFO
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x10008667
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov eax, dword [edi]
and eax, 0xfffffffb
lea eax, [eax + ecx*4]
mov dword [edi], eax
push str.FAUDIO_LOG_DETAIL
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x1000868b
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov eax, dword [edi]
and eax, 0xfffffff7
lea eax, [eax + ecx*8]
mov dword [edi], eax
push str.FAUDIO_LOG_API_CALLS
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x100086b1
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov eax, dword [edi]
and eax, 0xffffffef
shl ecx, 4
or ecx, eax
mov dword [edi], ecx
push str.FAUDIO_LOG_FUNC_CALLS
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x100086d7
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov eax, dword [edi]
and eax, 0xffffffdf
shl ecx, 5
or ecx, eax
mov dword [edi], ecx
push str.FAUDIO_LOG_TIMING
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x100086fd
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov eax, dword [edi]
and eax, 0xffffffbf
shl ecx, 6
or ecx, eax
mov dword [edi], ecx
push str.FAUDIO_LOG_LOCKS
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x10008725
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov eax, 0xffffff7f
and eax, dword [edi]
shl ecx, 7
or ecx, eax
mov dword [edi], ecx
push str.FAUDIO_LOG_MEMORY
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x1000874d
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov eax, 0xfffffeff
and eax, dword [edi]
shl ecx, 8
or ecx, eax
mov dword [edi], ecx
push str.FAUDIO_LOG_STREAMING
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x10008775
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov eax, 0xffffefff
and eax, dword [edi]
shl ecx, 0xc
or ecx, eax
mov dword [edi], ecx
push str.FAUDIO_LOG_LOGTHREADID
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x10008795
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov dword [esi + 0x98], ecx
push str.FAUDIO_LOG_LOGFILELINE
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x100087b5
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov dword [esi + 0x9c], ecx
push str.FAUDIO_LOG_LOGFUNCTIONNAME
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x100087d5
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov dword [esi + 0xa0], ecx
push str.FAUDIO_LOG_LOGTIMING
call dword [sym.imp.ucrtbase.dll_getenv]
add esp, 4
test eax, eax
je 0x100087f5
xor ecx, ecx
cmp byte [eax], 0x31
sete cl
mov dword [esi + 0xa4], ecx
test byte [edi], 0x10
je 0x1000881c
push str.FAudio_SetDebugConfiguration
push str.API_Exit:__s
push str.FAudio_SetDebugConfiguration
push 0x3f2
push 0x10027268
push esi
call dbg.FAudio_INTERNAL_debug
add esp, 0x18
pop esi
pop edi
pop ebx
pop ebp
ret