Function at 0x14006c920
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
push rbp
push rbx
push rsi
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xb0
xor r14d, r14d
lea rax, [rbp - 0x59]
mov dword [rbp + 0x67], r14d
mov r15d, 0x2710
mov dword [rbp + 0x5f], r15d
mov esi, 0x20
mov rbx, rdx
mov r13, rcx
lea rdx, [rbp - 0x59]
mov r10d, esi
test al, 3
je 0x14006c986
nop dword [rax + rax]
mov rax, r10
dec r10
test rax, rax
je 0x14006c9c5
mov byte [rdx], r14b
inc rdx
test dl, 3
jne 0x14006c970
mov r8, r10
shr r10, 2
and r8d, 3
test r10, r10
je 0x14006c9a4
mov rdi, rdx
xor eax, eax
mov rcx, r10
lea rdx, [rdx + r10*4]
rep stosd dword [rdi], eax
sub r8, 1
je 0x14006c9c2
sub r8, 1
je 0x14006c9bc
cmp r8, 1
jne 0x14006c9c5
mov byte [rdx], r14b
inc rdx
mov byte [rdx], r14b
inc rdx
mov byte [rdx], r14b
lea rax, [rbp - 0x19]
mov r8, rsi
lea rdx, [rbp - 0x19]
test al, 3
je 0x14006c9ea
mov rax, r8
dec r8
test rax, rax
je 0x14006ca29
mov byte [rdx], r14b
inc rdx
test dl, 3
jne 0x14006c9d4
mov r9, r8
shr r8, 2
and r9d, 3
test r8, r8
je 0x14006ca08
mov rdi, rdx
xor eax, eax
mov rcx, r8
lea rdx, [rdx + r8*4]
rep stosd dword [rdi], eax
sub r9, 1
je 0x14006ca26
sub r9, 1
je 0x14006ca20
cmp r9, 1
jne 0x14006ca29
mov byte [rdx], r14b
inc rdx
mov byte [rdx], r14b
inc rdx
mov byte [rdx], r14b
lea rax, [rbp - 0x39]
mov r8, rsi
lea rdx, [rbp - 0x39]
test al, 3
je 0x14006ca56
nop dword [rax + rax]
mov rax, r8
dec r8
test rax, rax
je 0x14006ca95
mov byte [rdx], r14b
inc rdx
test dl, 3
jne 0x14006ca40
mov r9, r8
shr r8, 2
and r9d, 3
test r8, r8
je 0x14006ca74
mov rdi, rdx
xor eax, eax
mov rcx, r8
lea rdx, [rdx + r8*4]
rep stosd dword [rdi], eax
sub r9, 1
je 0x14006ca92
sub r9, 1
je 0x14006ca8c
cmp r9, 1
jne 0x14006ca95
mov byte [rdx], r14b
inc rdx
mov byte [rdx], r14b
inc rdx
mov byte [rdx], r14b
mov r8d, dword [0x140185710]
lea rcx, str.SDL_WAVE_CHUNK_LIMIT
mov rdx, qword [0x140185718]
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
mov edi, eax
test eax, eax
je 0x14006cb1b
cmp rdi, qword [0x140185710]
jbe 0x14006caf3
mov rcx, qword [0x140185718]
mov edx, edi
call fcn.140061da0
test rax, rax
je 0x14006cb1b
mov r8d, edi
mov qword [0x140185718], rax
mov rdx, rax
mov qword [0x140185710], rdi
lea rcx, str.SDL_WAVE_CHUNK_LIMIT
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
mov rcx, qword [0x140185718]
test rcx, rcx
je 0x14006cb1b
lea r8, [rbp + 0x5f]
lea rdx, [0x14015f4d8]
call fcn.14003a8d0
cmp eax, 1
cmove r15d, dword [rbp + 0x5f]
mov dword [rbp + 0x5f], r15d
xor edx, edx
mov rcx, r13
lea r8d, [rdx + 1]
call qword [r13 + 8]
test rax, rax
jns 0x14006cb3e
lea rcx, str.Could_not_seek_in_file
call fcn.14005ec50
jmp 0x14006cdda
lea rdx, [rbp - 0x59]
mov qword [rbp - 0x51], rax
mov rcx, r13
call fcn.14006bf40
test eax, eax
jns 0x14006cb63
lea rcx, str.Could_not_read_RIFF_header
call fcn.14005ec50
jmp 0x14006cdda
mov eax, dword [rbp - 0x59]
cmp eax, 0x46464952
jne 0x14006cbbc
mov r9d, 1
lea rdx, [rbp - 0x71]
mov rcx, r13
lea r8d, [r9 + 3]
call qword [r13 + 0x10]
cmp rax, 1
je 0x14006cb99
lea rcx, str.Could_not_read_RIFF_form_type
call fcn.14005ec50
jmp 0x14006cdda
cmp dword [rbp - 0x71], 0x45564157
je 0x14006cbb3
lea rcx, str.RIFF_form_type_is_not_WAVE__not_a_Waveform_file_
call fcn.14005ec50
jmp 0x14006cdda
mov rdx, qword [rbp - 0x51]
mov edi, dword [rbp - 0x55]
jmp 0x14006cbcd
cmp eax, 0x45564157
jne 0x14006d0f1
mov rdx, r14
mov edi, r14d
lea r8, [rdx + 4]
mov qword [rsp + 0xa8], r12
mov qword [rbx + 8], r8
movabs r9, 0x7fffffffffffffff
mov ecx, dword [rbx + 0x68]
sub ecx, 1
je 0x14006cc0a
sub ecx, 2
je 0x14006cbfd
cmp ecx, 1
je 0x14006cc05
test edi, edi
jne 0x14006cc0a
mov r12d, 0xffffffff
jmp 0x14006cc14
mov r12, r9
jmp 0x14006cc17
mov r12d, edi
mov dword [rbp + 0x67], 1
add r12, rdx
mov eax, dword [rbx + 4]
movups xmm0, xmmword [rbp - 9]
mov r15d, dword [rbp - 0x19]
mov ecx, eax
mov edi, dword [rbp - 0x39]
and ecx, 1
add rcx, r8
add rcx, rax
movups xmmword [rbp - 0x69], xmm0
cmp r12, rcx
jbe 0x14006cdec
movups xmm1, xmmword [rbp - 0x29]
movups xmmword [rbp - 0x59], xmm1
mov ecx, dword [rbp + 0x5f]
mov eax, r14d
inc r14d
cmp eax, ecx
jae 0x14006cdc4
mov rdx, rbx
mov rcx, r13
call fcn.14006bf40
cmp eax, 0xffffffff
je 0x14006cdb0
cmp eax, 0xfffffffe
je 0x14006cda2
mov eax, dword [rbx]
cmp eax, 0x20746d66
jne 0x14006cca6
cmp r15d, eax
je 0x14006cd19
cmp edi, 0x61746164
je 0x14006cd94
movaps xmm0, xmmword [rbx]
movups xmmword [rbp - 0x19], xmm0
mov r15d, dword [rbp - 0x19]
movaps xmm0, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x69], xmm0
jmp 0x14006cd19
cmp eax, 0x61746164
jne 0x14006ccc5
cmp edi, eax
je 0x14006cd19
movaps xmm0, xmmword [rbx]
movups xmmword [rbp - 0x39], xmm0
mov edi, dword [rbp - 0x39]
movaps xmm0, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x59], xmm0
jmp 0x14006cd19
cmp eax, 0x74636166
jne 0x14006cd19
cmp dword [rbx + 0x50], 0
jne 0x14006cd19
cmp dword [rbx + 4], 4
jb 0x14006cd12
mov rdx, qword [rbx + 8]
xor r8d, r8d
mov rcx, r13
call qword [r13 + 8]
cmp rax, qword [rbx + 8]
jne 0x14006cd12
mov r9d, 1
lea rdx, [rbp - 0x71]
mov rcx, r13
lea r8d, [r9 + 3]
call qword [r13 + 0x10]
cmp rax, 1
jne 0x14006cd12
mov dword [rbx + 0x50], eax
mov eax, dword [rbp - 0x71]
mov dword [rbx + 0x54], eax
jmp 0x14006cd19
mov dword [rbx + 0x50], 0xffffffff
cmp dword [rbx + 0x6c], 1
jne 0x14006cd31
mov eax, dword [rbx + 4]
add rax, qword [rbx + 8]
cmp r12, rax
jb 0x14006ce56
jmp 0x14006cd51
cmp r15d, 0x20746d66
jne 0x14006cd51
cmp edi, 0x61746164
jne 0x14006cd51
cmp dword [rbx + 0x50], 1
je 0x14006cd69
test dword [rbx + 0x70], 0xfffffffb
je 0x14006cd69
mov eax, dword [rbx + 4]
mov ecx, eax
and ecx, 1
add rcx, rax
add rcx, qword [rbx + 8]
cmp r12, rcx
ja 0x14006cc45
movabs r9, 0x7fffffffffffffff
mov ecx, dword [rbx + 4]
mov r14, qword [rbx + 8]
add r14, rcx
cmp r15d, 0x20746d66
je 0x14006cdf9
lea rcx, str.Missing_fmt_chunk_in_WAVE_file
call fcn.14005ec50
jmp 0x14006cdd2
lea rcx, str.fmt_chunk_after_data_chunk_in_WAVE_file
call fcn.14005ec50
jmp 0x14006cdd2
lea rcx, str.Could_not_seek_to_WAVE_chunk_header
call fcn.14005ec50
jmp 0x14006cdd2
cmp dword [rbx + 0x6c], 1
jne 0x14006cd69
lea rcx, str.Unexpected_end_of_WAVE_file
call fcn.14005ec50
jmp 0x14006cdd2
mov edx, ecx
lea rcx, str.Chunk_count_in_WAVE_file_exceeds_limit_of__u
call fcn.14005ec50
mov r12, qword [rsp + 0xa8]
add rsp, 0xb0
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret
movups xmm0, xmmword [rbp - 0x29]
movups xmmword [rbp - 0x59], xmm0
jmp 0x14006cd73
cmp edi, 0x61746164
je 0x14006ce0f
lea rcx, str.Missing_data_chunk_in_WAVE_file
call fcn.14005ec50
jmp 0x14006cdd2
cmp dword [rbx + 0x6c], 1
jne 0x14006ce78
cmp dword [rbx], 0x61746164
je 0x14006ce78
test ecx, ecx
je 0x14006ce78
lea rdi, [r14 - 1]
cmp rdi, r9
ja 0x14006ce67
xor r8d, r8d
mov rdx, rdi
mov rcx, r13
call qword [r13 + 8]
cmp rax, rdi
jne 0x14006ce67
mov r9d, 1
lea rdx, [rbp + 0x5f]
mov r8d, r9d
mov rcx, r13
call qword [r13 + 0x10]
cmp rax, 1
je 0x14006ce78
lea rcx, str.RIFF_size_truncates_chunk
call fcn.14005ec50
jmp 0x14006cdd2
lea rcx, str.Could_not_seek_to_WAVE_chunk_data
call fcn.14005ec50
jmp 0x14006cdd2
movups xmm0, xmmword [rbp - 0x19]
mov r8d, 0x416
mov rdx, rbx
mov rcx, r13
movaps xmmword [rbx], xmm0
movups xmm0, xmmword [rbp - 0x69]
movaps xmmword [rbx + 0x10], xmm0
call fcn.14006c030
test eax, eax
js 0x14006ceba
cmp dword [rbx + 4], 0xe
jae 0x14006ceb3
lea rcx, str.Invalid_WAVE_fmt_chunk_length__too_small_
call fcn.14005ec50
jmp 0x14006cdd2
cmp qword [rbx + 0x18], 0xe
jae 0x14006cecb
lea rcx, str.Could_not_read_data_of_WAVE_fmt_chunk
call fcn.14005ec50
jmp 0x14006cdd2
mov rcx, rbx
call fcn.14006c120
test eax, eax
js 0x14006cf98
movups xmm0, xmmword [rbp - 0x39]
mov rcx, rbx
psrldq xmm0, 4
movd edx, xmm0
call fcn.14006c390
test eax, eax
js 0x14006cf98
mov rcx, rbx
call fcn.14006bf00
movups xmm0, xmmword [rbp - 0x39]
movups xmm1, xmmword [rbp - 0x59]
movaps xmmword [rbx], xmm0
movaps xmmword [rbx + 0x10], xmm1
mov eax, dword [rbx + 4]
test eax, eax
je 0x14006cf3f
mov r8d, eax
mov rdx, rbx
mov rcx, r13
call fcn.14006c030
cmp eax, 0xffffffff
je 0x14006cf98
cmp eax, 0xfffffffe
jne 0x14006cf3f
lea rcx, str.Could_not_seek_data_of_WAVE_data_chunk
call fcn.14005ec50
jmp 0x14006cdd2
mov eax, dword [rbx + 4]
cmp rax, qword [rbx + 0x18]
je 0x14006cf63
mov eax, dword [rbx + 0x6c]
dec eax
cmp eax, 1
ja 0x14006cf63
lea rcx, str.Could_not_read_data_of_WAVE_data_chunk
call fcn.14005ec50
jmp 0x14006cdd2
movzx eax, word [rbx + 0x22]
lea r15, [0x140000000]
dec eax
cmp eax, 0x10
ja case.0x14006cf82.4
cdqe
mov ecx, dword [r15 + rax*4 + 0x6d104]
add rcx, r15
jmp rcx
mov r8, qword [rbp + 0x7f]
mov rcx, rbx
mov rdx, qword [rbp + 0x77]
call fcn.14006b900
test eax, eax
jns case.0x14006cf82.4
mov eax, 0xffffffff
jmp 0x14006cdd2
mov r8, qword [rbp + 0x7f]
mov rcx, rbx
mov rdx, qword [rbp + 0x77]
call fcn.14006b670
jmp 0x14006cf94
mov r8, qword [rbp + 0x7f]
mov rcx, rbx
mov rdx, qword [rbp + 0x77]
call fcn.14006a800
jmp 0x14006cf94
mov r8, qword [rbp + 0x7f]
mov rcx, rbx
mov rdx, qword [rbp + 0x77]
call fcn.14006b260
test eax, eax
js 0x14006cf98
mov rdi, qword [rbp + 0x6f]
mov rdx, rdi
test dil, 3
je 0x14006d006
nop word [rax + rax]
mov rax, rsi
dec rsi
test rax, rax
je 0x14006d049
mov byte [rdx], 0
inc rdx
test dl, 3
jne 0x14006cff0
mov r8, rsi
shr rsi, 2
and r8d, 3
test rsi, rsi
je 0x14006d028
mov rdi, rdx
xor eax, eax
mov rcx, rsi
lea rdx, [rdx + rsi*4]
rep stosd dword [rdi], eax
mov rdi, qword [rbp + 0x6f]
sub r8, 1
je 0x14006d046
sub r8, 1
je 0x14006d040
cmp r8, 1
jne 0x14006d049
mov byte [rdx], 0
inc rdx
mov byte [rdx], 0
inc rdx
mov byte [rdx], 0
mov eax, dword [rbx + 0x28]
mov dword [rdi], eax
movzx eax, byte [rbx + 0x24]
mov byte [rdi + 6], al
mov eax, 0x1000
mov word [rdi + 8], ax
movzx eax, word [rbx + 0x22]
dec eax
cmp eax, 0x10
ja case.0x14006d076.4
cdqe
mov ecx, dword [r15 + rax*4 + 0x6d148]
add rcx, r15
jmp rcx
mov eax, 0x8120
jmp 0x14006d0b6
movzx edx, word [rbx + 0x32]
cmp edx, 8
je 0x14006d0aa
cmp edx, 0x10
je case.0x14006d076.2
cmp edx, 0x18
je 0x14006d0a3
cmp edx, 0x20
je 0x14006d0a3
lea rcx, str.Unexpected__u_bit_PCM_data_format
jmp 0x14006cdcd
mov eax, 0x8020
jmp 0x14006d0b6
mov eax, 8
jmp 0x14006d0b6
mov eax, 0x8010
mov word [rdi + 4], ax
movzx ecx, word [rdi + 4]
mov edx, 0xfff7
lea eax, [rcx - 8]
test dx, ax
je 0x14006d0d9
mov eax, 0x1010
cmp cx, ax
je 0x14006d0d9
xor al, al
jmp 0x14006d0db
mov al, 0x80
cmp dword [rbp + 0x67], 0
mov byte [rdi + 7], al
cmove r12, r14
xor eax, eax
mov qword [rbx + 8], r12
jmp 0x14006cdd2
lea rcx, str.Could_not_find_RIFF_or_WAVE_identifiers__not_a_Waveform_file_
call fcn.14005ec50
jmp 0x14006cdda