Function at 0x10012170
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push esi
push ebx
sub esp, 0x20
mov ebx, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
test byte [ebx + 0x90], 0x10
jne 0x100124b0
mov edx, dword [esi]
mov dword [ebx + 0x90], edx
mov edx, dword [esi + 4]
mov dword [ebx + 0x94], edx
mov edx, dword [esi + 8]
mov dword [ebx + 0x98], edx
mov edx, dword [esi + 0xc]
mov dword [ebx + 0x9c], edx
mov edx, dword [esi + 0x10]
mov dword [ebx + 0xa0], edx
mov edx, dword [esi + 0x14]
mov esi, dword [sym.imp.ucrtbase.dll_getenv]
mov dword [ebx + 0xa4], edx
mov dword [esp], str.FAUDIO_LOG_EVERYTHING
call esi
test eax, eax
je 0x100121dc
cmp byte [eax], 0x31
je 0x10012480
mov dword [esp], str.FAUDIO_LOG_ERRORS
call esi
test eax, eax
je 0x10012201
cmp byte [eax], 0x31
mov edx, dword [ebx + 0x90]
je 0x10012470
and edx, 0xfffffffe
mov dword [ebx + 0x90], edx
mov dword [esp], str.FAUDIO_LOG_WARNINGS
call esi
test eax, eax
je 0x10012226
cmp byte [eax], 0x31
mov edx, dword [ebx + 0x90]
je 0x100123d8
and edx, 0xfffffffd
mov dword [ebx + 0x90], edx
mov dword [esp], str.FAUDIO_LOG_INFO
call esi
test eax, eax
je 0x1001224b
cmp byte [eax], 0x31
mov edx, dword [ebx + 0x90]
je 0x10012460
and edx, 0xfffffffb
mov dword [ebx + 0x90], edx
mov dword [esp], str.FAUDIO_LOG_DETAIL
call esi
test eax, eax
je 0x10012270
cmp byte [eax], 0x31
mov edx, dword [ebx + 0x90]
je 0x10012450
and edx, 0xfffffff7
mov dword [ebx + 0x90], edx
mov dword [esp], str.FAUDIO_LOG_API_CALLS
call esi
test eax, eax
je 0x10012295
cmp byte [eax], 0x31
mov edx, dword [ebx + 0x90]
je 0x10012440
and edx, 0xffffffef
mov dword [ebx + 0x90], edx
mov dword [esp], str.FAUDIO_LOG_FUNC_CALLS
call esi
test eax, eax
je 0x100122ba
cmp byte [eax], 0x31
mov edx, dword [ebx + 0x90]
je 0x10012430
and edx, 0xffffffdf
mov dword [ebx + 0x90], edx
mov dword [esp], str.FAUDIO_LOG_TIMING
call esi
test eax, eax
je 0x100122df
cmp byte [eax], 0x31
mov edx, dword [ebx + 0x90]
je 0x10012420
and edx, 0xffffffbf
mov dword [ebx + 0x90], edx
mov dword [esp], str.FAUDIO_LOG_LOCKS
call esi
test eax, eax
je 0x10012304
cmp byte [eax], 0x31
mov edx, dword [ebx + 0x90]
je 0x10012410
and dl, 0x7f
mov dword [ebx + 0x90], edx
mov dword [esp], str.FAUDIO_LOG_MEMORY
call esi
test eax, eax
je 0x10012329
cmp byte [eax], 0x31
mov edx, dword [ebx + 0x90]
je 0x10012400
and dh, 0xfe
mov dword [ebx + 0x90], edx
mov dword [esp], str.FAUDIO_LOG_STREAMING
call esi
test eax, eax
je 0x1001234e
cmp byte [eax], 0x31
mov edx, dword [ebx + 0x90]
je 0x100123f0
and dh, 0xef
mov dword [ebx + 0x90], edx
mov dword [esp], str.FAUDIO_LOG_LOGTHREADID
call esi
test eax, eax
je 0x1001236a
cmp byte [eax], 0x31
sete al
movzx eax, al
mov dword [ebx + 0x98], eax
mov dword [esp], str.FAUDIO_LOG_LOGFILELINE
call esi
test eax, eax
je 0x10012386
cmp byte [eax], 0x31
sete al
movzx eax, al
mov dword [ebx + 0x9c], eax
mov dword [esp], str.FAUDIO_LOG_LOGFUNCTIONNAME
call esi
test eax, eax
je 0x100123a2
cmp byte [eax], 0x31
sete al
movzx eax, al
mov dword [ebx + 0xa0], eax
mov dword [esp], str.FAUDIO_LOG_LOGTIMING
call esi
test eax, eax
je 0x100123be
cmp byte [eax], 0x31
sete al
movzx eax, al
mov dword [ebx + 0xa4], eax
test byte [ebx + 0x90], 0x10
jne 0x100124e8
add esp, 0x20
pop ebx
pop esi
pop ebp
ret
or edx, 2
mov dword [ebx + 0x90], edx
jmp 0x10012226
or dh, 0x10
mov dword [ebx + 0x90], edx
jmp 0x1001234e
or dh, 1
mov dword [ebx + 0x90], edx
jmp 0x10012329
or dl, 0x80
mov dword [ebx + 0x90], edx
jmp 0x10012304
or edx, 0x40
mov dword [ebx + 0x90], edx
jmp 0x100122df
or edx, 0x20
mov dword [ebx + 0x90], edx
jmp 0x100122ba
or edx, 0x10
mov dword [ebx + 0x90], edx
jmp 0x10012295
or edx, 8
mov dword [ebx + 0x90], edx
jmp 0x10012270
or edx, 4
mov dword [ebx + 0x90], edx
jmp 0x1001224b
or edx, 1
mov dword [ebx + 0x90], edx
jmp 0x10012201
mov dword [ebx + 0x90], 0x11ff
mov dword [ebx + 0x98], 1
mov dword [ebx + 0xa0], 1
mov dword [ebx + 0xa4], 1
jmp 0x100121dc
mov dword [esp + 0x14], str.FAudio_SetDebugConfiguration
mov dword [esp + 0x10], str.API_Enter:__s
mov dword [esp + 0xc], str.FAudio_SetDebugConfiguration
mov dword [esp + 8], 0x3ad
mov dword [esp + 4], str..._wine_staging_libs_faudio_src_FAudio.c
mov dword [esp], ebx
call fcn.1001bfb0
jmp 0x1001218b
mov dword [esp], ebx
mov dword [esp + 0x14], str.FAudio_SetDebugConfiguration
mov dword [esp + 0x10], str.API_Exit:__s
mov dword [esp + 0xc], str.FAudio_SetDebugConfiguration
mov dword [esp + 8], 0x3ed
mov dword [esp + 4], str..._wine_staging_libs_faudio_src_FAudio.c
call fcn.1001bfb0
add esp, 0x20
pop ebx
pop esi
pop ebp
ret