Function at 0x140013430
Capabilities:
Read .ini file

Disassembly:
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x22b0
call fcn.14011c260
sub rsp, rax
mov qword [rsp + 0x118], 0xfffffffffffffffe
mov qword [rsp + 0x22e8], rbx
mov qword [rsp + 0x22f0], rbp
mov qword [rsp + 0x22f8], rsi
mov rax, qword [0x14016adb0]
xor rax, rsp
mov qword [rsp + 0x22a0], rax
mov rsi, rcx
cmp dword [rcx + 0x26694], 0
je 0x1400134cd
lea rdi, [rcx + 0x549b8]
mov ebx, 0x19
xor edx, edx
mov rcx, rdi
call fcn.1400dc9c4
add rdi, 0x268
sub rbx, 1
jne 0x140013495
lea rcx, [rsi + 0x585e0]
xor edx, edx
call fcn.1400dc9c4
lea rcx, [rsi + 0x58848]
xor edx, edx
call fcn.1400dc9c4
jmp 0x140015211
xor r15d, r15d
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], r15d
mov dword [rsp + 0x74], r15d
mov dword [rsp + 0x78], r15d
mov dword [rsp + 0x7c], r15d
mov dword [rsp + 0x80], r15d
mov dword [rsp + 0x84], r15d
mov dword [rsp + 0x88], r15d
mov dword [rsp + 0x8c], r15d
mov dword [rsp + 0x90], r15d
mov dword [rsp + 0x94], r15d
mov dword [rsp + 0x98], 8
mov dword [rsp + 0x9c], r15d
lea rcx, [rsp + 0x420]
lea r13, [0x140000000]
mov rax, qword [r13 + 0x12e088]
mov qword [rcx], rax
mov rax, qword [r13 + 0x12e090]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x12e098]
mov dword [rcx + 0x10], eax
movzx eax, word [r13 + 0x12e09c]
mov word [rcx + 0x14], ax
xor edx, edx
mov r8d, 0x1f2
lea rcx, [rsp + 0x436]
call fcn.1400fce30
lea rdx, [rsp + 0x628]
mov rax, qword [r13 + 0x12e0a0]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e0a8]
mov qword [rdx + 8], rax
mov rax, qword [r13 + 0x12e0b0]
mov qword [rdx + 0x10], rax
mov eax, dword [r13 + 0x12e0b8]
mov dword [rdx + 0x18], eax
xor edx, edx
mov r8d, 0x1ec
lea rcx, [rsp + 0x644]
call fcn.1400fce30
lea rdx, [rsp + 0x830]
mov rax, qword [r13 + 0x12e0c0]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e0c8]
mov qword [rdx + 8], rax
mov rax, qword [r13 + 0x12e0d0]
mov qword [rdx + 0x10], rax
mov eax, dword [r13 + 0x12e0d8]
mov dword [rdx + 0x18], eax
movzx eax, word [r13 + 0x12e0dc]
mov word [rdx + 0x1c], ax
xor edx, edx
mov r8d, 0x1ea
lea rcx, [rsp + 0x84e]
call fcn.1400fce30
lea rdx, [rsp + 0xa38]
mov rax, qword [r13 + 0x12e0e0]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e0e8]
mov qword [rdx + 8], rax
mov rax, qword [r13 + 0x12e0f0]
mov qword [rdx + 0x10], rax
movzx eax, word [r13 + 0x12e0f8]
mov word [rdx + 0x18], ax
xor edx, edx
mov r8d, 0x1ee
lea rcx, [rsp + 0xa52]
call fcn.1400fce30
lea rdx, [rsp + 0xc40]
mov rax, qword [r13 + 0x12e100]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e108]
mov qword [rdx + 8], rax
mov rax, qword [r13 + 0x12e110]
mov qword [rdx + 0x10], rax
xor edx, edx
mov r8d, 0x1f0
lea rcx, [rsp + 0xc58]
call fcn.1400fce30
lea rdx, [rsp + 0xe48]
mov rax, qword [r13 + 0x12e118]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e120]
mov qword [rdx + 8], rax
mov rax, qword [r13 + 0x12e128]
mov qword [rdx + 0x10], rax
mov rax, qword [r13 + 0x12e130]
mov qword [rdx + 0x18], rax
xor edx, edx
mov r8d, 0x1e8
lea rcx, [rsp + 0xe68]
call fcn.1400fce30
lea rdx, [rsp + 0x1050]
mov rax, qword [r13 + 0x12e138]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e140]
mov qword [rdx + 8], rax
mov rax, qword [r13 + 0x12e148]
mov qword [rdx + 0x10], rax
movzx eax, word [r13 + 0x12e150]
mov word [rdx + 0x18], ax
xor edx, edx
mov r8d, 0x1ee
lea rcx, [rsp + 0x106a]
call fcn.1400fce30
lea rdx, [rsp + 0x1258]
mov rax, qword [r13 + 0x12e158]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e160]
mov qword [rdx + 8], rax
mov rax, qword [r13 + 0x12e168]
mov qword [rdx + 0x10], rax
mov eax, dword [r13 + 0x12e170]
mov dword [rdx + 0x18], eax
xor edx, edx
mov r8d, 0x1ec
lea rcx, [rsp + 0x1274]
call fcn.1400fce30
lea rdx, [rsp + 0x1460]
mov rax, qword [r13 + 0x12e178]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e180]
mov qword [rdx + 8], rax
mov rax, qword [r13 + 0x12e188]
mov qword [rdx + 0x10], rax
xor edx, edx
mov r8d, 0x1f0
lea rcx, [rsp + 0x1478]
call fcn.1400fce30
lea rdx, [rsp + 0x1668]
mov rax, qword [r13 + 0x12e190]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e198]
mov qword [rdx + 8], rax
mov eax, dword [r13 + 0x12e1a0]
mov dword [rdx + 0x10], eax
movzx eax, word [r13 + 0x12e1a4]
mov word [rdx + 0x14], ax
xor edx, edx
mov r8d, 0x1f2
lea rcx, [rsp + 0x167e]
call fcn.1400fce30
lea rdx, [rsp + 0x1870]
mov rax, qword [r13 + 0x12e1a8]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e1b0]
mov qword [rdx + 8], rax
mov rax, qword [r13 + 0x12e1b8]
mov qword [rdx + 0x10], rax
mov eax, dword [r13 + 0x12e1c0]
mov dword [rdx + 0x18], eax
movzx eax, word [r13 + 0x12e1c4]
mov word [rdx + 0x1c], ax
xor edx, edx
mov r8d, 0x1ea
lea rcx, [rsp + 0x188e]
call fcn.1400fce30
lea rdx, [rsp + 0x1a78]
mov rax, qword [r13 + 0x12e1c8]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e1d0]
mov qword [rdx + 8], rax
mov rax, qword [r13 + 0x12e1d8]
mov qword [rdx + 0x10], rax
xor edx, edx
mov r8d, 0x1f0
lea rcx, [rsp + 0x1a90]
call fcn.1400fce30
lea rdx, [rsp + 0x1c80]
mov rax, qword [r13 + 0x12e1e0]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e1e8]
mov qword [rdx + 8], rax
mov rax, qword [r13 + 0x12e1f0]
mov qword [rdx + 0x10], rax
movzx eax, word [r13 + 0x12e1f8]
mov word [rdx + 0x18], ax
xor edx, edx
mov r8d, 0x1ee
lea rcx, [rsp + 0x1c9a]
call fcn.1400fce30
lea rdx, [rsp + 0x1e88]
mov rax, qword [r13 + 0x12e200]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e208]
mov qword [rdx + 8], rax
mov rax, qword [r13 + 0x12e210]
mov qword [rdx + 0x10], rax
mov eax, dword [r13 + 0x12e218]
mov dword [rdx + 0x18], eax
xor edx, edx
mov r8d, 0x1ec
lea rcx, [rsp + 0x1ea4]
call fcn.1400fce30
lea rdx, [rsp + 0x2090]
mov rax, qword [r13 + 0x12e220]
mov qword [rdx], rax
mov rax, qword [r13 + 0x12e228]
mov qword [rdx + 8], rax
mov rax, qword [r13 + 0x12e230]
mov qword [rdx + 0x10], rax
mov rax, qword [r13 + 0x12e238]
mov qword [rdx + 0x18], rax
mov eax, dword [r13 + 0x12e240]
mov dword [rdx + 0x20], eax
movzx eax, word [r13 + 0x12e244]
mov word [rdx + 0x24], ax
xor edx, edx
mov r8d, 0x1e2
lea rcx, [rsp + 0x20b6]
call fcn.1400fce30
lea rdx, [0x14012c778]
lea rcx, [rsi + 0x585e0]
call fcn.1400dc8dc
lea rdx, [0x14012c778]
lea rcx, [rsi + 0x58848]
call fcn.1400dc8dc
lea r12, [rsi + 0x2a218]
test r12, r12
je 0x140013a3d
cmp qword [rsi + 0x586f8], r15
jne 0x1400139ed
lea rcx, [rsi + 0x586b8]
mov rax, qword [rcx]
xor r8d, r8d
lea rdx, [rsi + 0x585e0]
call qword [rax + 0x268]
xor r9d, r9d
mov edx, 0x401
lea r8d, [r15 + 1]
mov rcx, qword [rsi + 0x586f8]
call qword [sym.imp.USER32.dll_SendMessageW]
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov r8, r12
lea rdx, [rsi + 0x585e0]
lea rcx, [rsi + 0x586b8]
call fcn.1400d1498
xor r9d, r9d
lea r8, [rsi + 0x585e0]
mov rdx, r12
lea rcx, [rsi + 0x586b8]
call fcn.1400d1538
xor r9d, r9d
mov edx, 0x401
lea r8d, [r9 + 1]
mov rcx, qword [rsi + 0x586f8]
call qword [sym.imp.USER32.dll_SendMessageW]
lea r12, [rsi + 0x2a420]
test r12, r12
je 0x140013ad9
cmp qword [rsi + 0x58960], r15
jne 0x140013a89
lea rcx, [rsi + 0x58920]
mov rax, qword [rcx]
xor r8d, r8d
lea rdx, [rsi + 0x58848]
call qword [rax + 0x268]
xor r9d, r9d
mov edx, 0x401
lea r8d, [r9 + 1]
mov rcx, qword [rsi + 0x58960]
call qword [sym.imp.USER32.dll_SendMessageW]
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov r8, r12
lea rdx, [rsi + 0x58848]
lea rcx, [rsi + 0x58920]
call fcn.1400d1498
xor r9d, r9d
lea r8, [rsi + 0x58848]
mov rdx, r12
lea rcx, [rsi + 0x58920]
call fcn.1400d1538
xor r9d, r9d
mov edx, 0x401
lea r8d, [r9 + 1]
mov rcx, qword [rsi + 0x58960]
call qword [sym.imp.USER32.dll_SendMessageW]
lea r12, [rsi + 0x27770]
test r12, r12
je 0x140013b15
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.Options
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x200]
mov rax, qword [r13 + 0x13c890]
mov qword [rcx], rax
movzx eax, word [r13 + 0x13c898]
mov word [rcx + 8], ax
lea r8, [rsp + 0xc8]
lea rdx, [rsp + 0x200]
lea rcx, [rsp + 0x210]
call fcn.1400fa5e0
test rax, rax
je 0x140013cf5
mov rcx, rax
call fcn.1400fa6e0
test eax, eax
jne 0x140013b6c
mov qword [rsp + 0x68], r15
jmp 0x140013b83
cmp eax, 1
jne 0x140013b83
mov edx, 0x7f89
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadCursorW]
mov qword [rsp + 0x68], rax
mov rdi, r15
nop
nop
nop
lea r8, [rsp + 0xc8]
lea rdx, [rsp + 0x200]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140013cf5
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + rdi*4 + 0x70], eax
add rdi, 1
cmp rdi, 0xa
jl 0x140013b90
mov eax, dword [rsp + 0x78]
cmp eax, 0xffffffff
cmove eax, dword [rsp + 0x90]
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x7c]
cmp eax, 0xffffffff
cmove eax, dword [rsp + 0x94]
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x88]
cmp eax, 0xffffffff
cmove eax, r15d
mov dword [rsp + 0x88], eax
mov eax, dword [rsp + 0x8c]
cmp eax, 0xffffffff
cmove eax, r15d
mov dword [rsp + 0x8c], eax
lea r8, [rsp + 0xc8]
lea rdx, [rsp + 0x200]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140013cf5
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0x98], eax
lea r8, [rsp + 0xc8]
lea rdx, [rsp + 0x200]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140013cf5
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0x9c], eax
lea r8, [rsp + 0xc8]
lea rdx, [rsp + 0x200]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140013cf5
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0xa0], eax
lea r8, [rsp + 0xc8]
lea rdx, [rsp + 0x200]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140013cf5
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0xa4], eax
lea r8, [rsp + 0xc8]
lea rdx, [rsp + 0x200]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140013cf5
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0xa8], eax
lea rdx, [rsp + 0x60]
lea rcx, [rsi + 0x585e0]
call fcn.140021450
mov rax, qword [rsi + 0x19488]
mov qword [rsp + 0x60], rax
lea rdx, [rsp + 0x60]
lea rcx, [rsi + 0x585e0]
call fcn.140021450
test r12, r12
je 0x140013d58
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.Informations
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x1f0]
mov rax, qword [r13 + 0x13c890]
mov qword [rcx], rax
movzx eax, word [r13 + 0x13c898]
mov word [rcx + 8], ax
lea r8, [rsp + 0xd0]
lea rdx, [rsp + 0x1f0]
lea rcx, [rsp + 0x210]
call fcn.1400fa5e0
test rax, rax
je 0x140013f35
mov rcx, rax
call fcn.1400fa6e0
test eax, eax
jne 0x140013daf
mov qword [rsp + 0x68], r15
jmp 0x140013dc6
cmp eax, 1
jne 0x140013dc6
mov edx, 0x7f89
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadCursorW]
mov qword [rsp + 0x68], rax
mov rdi, r15
nop
nop
lea r8, [rsp + 0xd0]
lea rdx, [rsp + 0x1f0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140013f35
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + rdi*4 + 0x70], eax
add rdi, 1
cmp rdi, 0xa
jl 0x140013dd0
mov eax, dword [rsp + 0x78]
cmp eax, 0xffffffff
cmove eax, dword [rsp + 0x90]
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x7c]
cmp eax, 0xffffffff
cmove eax, dword [rsp + 0x94]
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x88]
cmp eax, 0xffffffff
cmove eax, r15d
mov dword [rsp + 0x88], eax
mov eax, dword [rsp + 0x8c]
cmp eax, 0xffffffff
cmove eax, r15d
mov dword [rsp + 0x8c], eax
lea r8, [rsp + 0xd0]
lea rdx, [rsp + 0x1f0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140013f35
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0x98], eax
lea r8, [rsp + 0xd0]
lea rdx, [rsp + 0x1f0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140013f35
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0x9c], eax
lea r8, [rsp + 0xd0]
lea rdx, [rsp + 0x1f0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140013f35
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0xa0], eax
lea r8, [rsp + 0xd0]
lea rdx, [rsp + 0x1f0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140013f35
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0xa4], eax
lea r8, [rsp + 0xd0]
lea rdx, [rsp + 0x1f0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140013f35
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0xa8], eax
mov rax, qword [rsi + 0x19488]
mov qword [rsp + 0x60], rax
lea rdx, [rsp + 0x60]
lea rcx, [rsi + 0x58848]
call fcn.140021450
lea rbx, [rsi + 0x29c00]
call fcn.1400cc6e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x140013f79
mov ecx, 0x80004005
call fcn.1400025a0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rsp + 0xd8], rdi
test rbx, rbx
je 0x140013fdd
test rbx, 0xffffffffffff0000
jne 0x140013fc8
movzx ebx, bx
mov ecx, ebx
call fcn.1400de4e4
test rax, rax
je 0x140013ffb
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0xd8]
call fcn.14000b050
mov rdi, qword [rsp + 0xd8]
jmp 0x140013ffb
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
jmp 0x140013fe0
mov ecx, r15d
mov r8d, ecx
mov rdx, rbx
lea rcx, [rsp + 0xd8]
call fcn.14000ace0
mov rdi, qword [rsp + 0xd8]
mov rdx, rdi
lea rcx, [rsi + 0x561c8]
call fcn.1400dc8dc
nop
lea rdx, [rdi - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140014027
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.DSOUND.dll_DirectSoundCaptureEnumerateW]
lea rbx, [rsi + 0x29e08]
call fcn.1400cc6e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x14001404e
mov ecx, 0x80004005
call fcn.1400025a0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rsp + 0x100], rdi
test rbx, rbx
je 0x1400140b2
test rbx, 0xffffffffffff0000
jne 0x14001409d
movzx ebx, bx
mov ecx, ebx
call fcn.1400de4e4
test rax, rax
je 0x1400140d0
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x100]
call fcn.14000b050
mov rdi, qword [rsp + 0x100]
jmp 0x1400140d0
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
jmp 0x1400140b5
mov ecx, r15d
mov r8d, ecx
mov rdx, rbx
lea rcx, [rsp + 0x100]
call fcn.14000ace0
mov rdi, qword [rsp + 0x100]
mov rdx, rdi
lea rcx, [rsi + 0x56430]
call fcn.1400dc8dc
nop
lea rdx, [rdi - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400140fc
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.DSOUND.dll_DirectSoundCaptureEnumerateW]
lea rbx, [rsi + 0x2a010]
call fcn.1400cc6e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x140014123
mov ecx, 0x80004005
call fcn.1400025a0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rsp + 0xe8], rdi
test rbx, rbx
je 0x140014187
test rbx, 0xffffffffffff0000
jne 0x140014172
movzx ebx, bx
mov ecx, ebx
call fcn.1400de4e4
test rax, rax
je 0x1400141a5
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0xe8]
call fcn.14000b050
mov rdi, qword [rsp + 0xe8]
jmp 0x1400141a5
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
jmp 0x14001418a
mov ecx, r15d
mov r8d, ecx
mov rdx, rbx
lea rcx, [rsp + 0xe8]
call fcn.14000ace0
mov rdi, qword [rsp + 0xe8]
mov rdx, rdi
lea rcx, [rsi + 0x56698]
call fcn.1400dc8dc
nop
lea rdx, [rdi - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400141d1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.DSOUND.dll_DirectSoundCaptureEnumerateW]
lea rbx, [rsi + 0x28fd0]
call fcn.1400cc6e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x1400141f8
mov ecx, 0x80004005
call fcn.1400025a0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rsp + 0xf8], rdi
test rbx, rbx
je 0x14001425c
test rbx, 0xffffffffffff0000
jne 0x140014247
movzx ebx, bx
mov ecx, ebx
call fcn.1400de4e4
test rax, rax
je 0x14001427a
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0xf8]
call fcn.14000b050
mov rdi, qword [rsp + 0xf8]
jmp 0x14001427a
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
jmp 0x14001425f
mov ecx, r15d
mov r8d, ecx
mov rdx, rbx
lea rcx, [rsp + 0xf8]
call fcn.14000ace0
mov rdi, qword [rsp + 0xf8]
lea rcx, [rsi + 0x56900]
mov rdx, rdi
call fcn.1400dc8dc
nop
lea rdx, [rdi - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400142a6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.DSOUND.dll_DirectSoundCaptureEnumerateW]
lea rbx, [rsi + 0x291d8]
call fcn.1400cc6e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x1400142cd
mov ecx, 0x80004005
call fcn.1400025a0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rsp + 0xe0], rdi
test rbx, rbx
je 0x140014331
test rbx, 0xffffffffffff0000
jne 0x14001431c
movzx ebx, bx
mov ecx, ebx
call fcn.1400de4e4
test rax, rax
je 0x14001434f
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0xe0]
call fcn.14000b050
mov rdi, qword [rsp + 0xe0]
jmp 0x14001434f
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
jmp 0x140014334
mov ecx, r15d
mov r8d, ecx
mov rdx, rbx
lea rcx, [rsp + 0xe0]
call fcn.14000ace0
mov rdi, qword [rsp + 0xe0]
lea rcx, [rsi + 0x57508]
mov rdx, rdi
call fcn.1400dc8dc
nop
lea rdx, [rdi - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14001437b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.DSOUND.dll_DirectSoundCaptureEnumerateW]
lea rbx, [rsi + 0x50fa8]
test rbx, rbx
je 0x140014418
cmp qword [rsi + 0x58228], 0
jne 0x1400143c8
lea rcx, [rsi + 0x581e8]
mov rax, qword [rcx]
xor r8d, r8d
lea rdx, [rsi + 0x58110]
call qword [rax + 0x268]
xor r9d, r9d
mov edx, 0x401
lea r8d, [r9 + 1]
mov rcx, qword [rsi + 0x58228]
call qword [sym.imp.USER32.dll_SendMessageW]
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov r8, rbx
lea rdx, [rsi + 0x58110]
lea rcx, [rsi + 0x581e8]
call fcn.1400d1498
xor r9d, r9d
lea r8, [rsi + 0x58110]
mov rdx, rbx
lea rcx, [rsi + 0x581e8]
call fcn.1400d1538
xor r9d, r9d
mov edx, 0x401
lea r8d, [r9 + 1]
mov rcx, qword [rsi + 0x58228]
call qword [sym.imp.USER32.dll_SendMessageW]
test rbx, rbx
je 0x1400144ae
cmp qword [rsi + 0x58490], 0
jne 0x14001445e
lea rcx, [rsi + 0x58450]
mov rax, qword [rcx]
xor r8d, r8d
lea rdx, [rsi + 0x58378]
call qword [rax + 0x268]
xor r9d, r9d
mov edx, 0x401
lea r8d, [r9 + 1]
mov rcx, qword [rsi + 0x58490]
call qword [sym.imp.USER32.dll_SendMessageW]
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov r8, rbx
lea rdx, [rsi + 0x58378]
lea rcx, [rsi + 0x58450]
call fcn.1400d1498
xor r9d, r9d
lea r8, [rsi + 0x58378]
mov rdx, rbx
lea rcx, [rsi + 0x58450]
call fcn.1400d1538
xor r9d, r9d
mov edx, 0x401
lea r8d, [r9 + 1]
mov rcx, qword [rsi + 0x58490]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp dword [rsi + 0x970], 0
jne 0x1400144c4
cmp dword [rsi + 0x266e4], 0
je 0x1400145b9
cmp dword [rsi + 0x21334], 0
je 0x1400145be
lea rbx, [rsi + 0x3a618]
call fcn.1400cc6e8
mov rdx, rax
xor r14d, r14d
mov ecx, r14d
test rax, rax
setne cl
test ecx, ecx
jne 0x1400144fb
mov ecx, 0x80004005
call fcn.1400025a0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rsp + 0xf0], rdi
test rbx, rbx
je 0x14001455f
test rbx, 0xffffffffffff0000
jne 0x14001454a
movzx ebx, bx
mov ecx, ebx
call fcn.1400de4e4
test rax, rax
je 0x14001457d
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0xf0]
call fcn.14000b050
mov rdi, qword [rsp + 0xf0]
jmp 0x14001457d
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
jmp 0x140014562
mov ecx, r14d
mov r8d, ecx
mov rdx, rbx
lea rcx, [rsp + 0xf0]
call fcn.14000ace0
mov rdi, qword [rsp + 0xf0]
mov rdx, rdi
lea rcx, [rsi + 0x56430]
call fcn.1400dc8dc
nop
lea rdx, [rdi - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400145a9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.DSOUND.dll_DirectSoundCaptureEnumerateW]
xor edx, edx
lea rcx, [rsi + 0x56698]
call fcn.1400dc9c4
jmp 0x1400145c1
xor r14d, r14d
jmp 0x1400145c1
xor r14d, r14d
mov r15d, r14d
mov r13d, 0xa
mov rbx, r13
mov qword [rsp + 0x110], rbx
movsxd rax, r15d
imul rax, rax, 0x208
lea rdx, [rsp + rax + 0x420]
test r12, r12
je 0x14001461a
test rdx, rdx
je 0x14001461a
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x1d0]
lea rdi, [0x140000000]
mov rax, qword [rdi + 0x13c890]
mov qword [rcx], rax
movzx eax, word [rdi + 0x13c898]
mov word [rcx + 8], ax
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x1d0]
lea rcx, [rsp + 0x210]
call fcn.1400fa5e0
test rax, rax
je 0x140014846
mov rcx, rax
call fcn.1400fa6e0
test eax, eax
jne 0x140014677
mov qword [rsp + 0x68], r14
jmp 0x14001468e
cmp eax, 1
jne 0x14001468e
mov edx, 0x7f89
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadCursorW]
mov qword [rsp + 0x68], rax
mov rdi, r14
nop
nop
nop
nop
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x1d0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x14001483f
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + rdi*4 + 0x70], eax
add rdi, 1
cmp rdi, 0xa
jl 0x1400146a0
mov eax, dword [rsp + 0x78]
cmp eax, 0xffffffff
cmove eax, dword [rsp + 0x90]
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x7c]
cmp eax, 0xffffffff
cmove eax, dword [rsp + 0x94]
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x88]
cmp eax, 0xffffffff
cmove eax, r14d
mov dword [rsp + 0x88], eax
mov eax, dword [rsp + 0x8c]
cmp eax, 0xffffffff
cmove eax, r14d
mov dword [rsp + 0x8c], eax
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x1d0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014824
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0x98], eax
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x1d0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x14001482d
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0x9c], eax
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x1d0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014836
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0xa0], eax
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x1d0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x14001481b
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0xa4], eax
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x1d0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014812
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + 0xa8], eax
lea rdi, [0x140000000]
jmp 0x140014846
lea rdi, [0x140000000]
jmp 0x140014846
lea rdi, [0x140000000]
jmp 0x140014846
lea rdi, [0x140000000]
jmp 0x140014846
lea rdi, [0x140000000]
jmp 0x140014846
lea rdi, [0x140000000]
jmp 0x140014846
lea rdi, [0x140000000]
mov rax, qword [rsi + 0x19488]
mov qword [rsp + 0x60], rax
cmp r13d, 0xf
je 0x140014c12
cmp r13d, 0x14
je 0x140014c12
cmp r13d, 0xe
je 0x140014876
cmp r13d, 0x13
jne 0x140014f6d
mov dword [rsp + 0x190], r14d
mov dword [rsp + 0x194], r14d
cmp r13d, 0xe
jne 0x140014894
mov eax, dword [rsi + 0x21600]
jmp 0x14001489a
mov eax, dword [rsi + 0x21608]
add eax, 0xffffffff
cmp eax, 8
ja case.0x1400148b2.4
cdqe
mov ecx, dword [rdi + rax*4 + 0x15244]
add rcx, rdi
jmp rcx
test r12, r12
je 0x140014a91
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFRCABlack
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x140014a91
test r12, r12
je 0x140014a91
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFRCAGrey
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x140014a91
test r12, r12
je 0x140014a91
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFRCABlue
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x140014a91
test r12, r12
je 0x140014a91
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFRCAGreen
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x140014a91
test r12, r12
je 0x140014a91
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFRCAPink
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x140014a91
test r12, r12
je 0x140014a91
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFRCAOrange
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x140014a91
test r12, r12
je 0x140014a91
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFRCAYellow
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x140014a91
test r12, r12
je 0x140014a91
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFRCARed
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x1e0]
mov rax, qword [rdi + 0x13c890]
mov qword [rcx], rax
movzx eax, word [rdi + 0x13c898]
mov word [rcx + 8], ax
lea r8, [rsp + 0xb8]
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x210]
call fcn.1400fa5e0
test rax, rax
je 0x140014bf1
mov rcx, rax
call fcn.1400fa6e0
test eax, eax
je 0x140014af2
cmp eax, 1
jne 0x140014af2
mov edx, 0x7f89
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadCursorW]
mov rdi, r14
nop
nop
nop
lea r8, [rsp + 0xb8]
lea rdx, [rsp + 0x1e0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014bf1
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + rdi*4 + 0x180], eax
add rdi, 1
cmp rdi, 0xa
jl 0x140014b00
lea r8, [rsp + 0xb8]
lea rdx, [rsp + 0x1e0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014bf1
mov rcx, rax
call fcn.1400fa6e0
lea r8, [rsp + 0xb8]
lea rdx, [rsp + 0x1e0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014bf1
mov rcx, rax
call fcn.1400fa6e0
lea r8, [rsp + 0xb8]
lea rdx, [rsp + 0x1e0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014bf1
mov rcx, rax
call fcn.1400fa6e0
lea r8, [rsp + 0xb8]
lea rdx, [rsp + 0x1e0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014bf1
mov rcx, rax
call fcn.1400fa6e0
lea r8, [rsp + 0xb8]
lea rdx, [rsp + 0x1e0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014bf1
mov rcx, rax
call fcn.1400fa6e0
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x194]
mov dword [rsp + 0x84], eax
jmp 0x140014f6d
mov dword [rsp + 0x140], r14d
mov dword [rsp + 0x144], r14d
cmp r13d, 0xf
jne 0x140014c30
mov eax, dword [rsi + 0x215fc]
jmp 0x140014c36
mov eax, dword [rsi + 0x21604]
add eax, 0xffffffff
cmp eax, 8
ja case.0x140014c4e.6
cdqe
mov ecx, dword [rdi + rax*4 + 0x15268]
add rcx, rdi
jmp rcx
test r12, r12
je 0x140014def
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFOpticalBlack
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x140014def
test r12, r12
je 0x140014def
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFOpticalGrey
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x140014def
test r12, r12
je 0x140014def
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFOpticalBlue
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x140014def
test r12, r12
je 0x140014def
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFOpticalGreen
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x140014def
test r12, r12
je 0x140014def
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFOpticalPink
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x140014def
test r12, r12
je 0x140014def
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFOpticalOrange
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x140014def
test r12, r12
je 0x140014def
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x104
lea r9, [rsp + 0x210]
lea r8, [0x14012c778]
lea rdx, str.SPDIFOpticalGrey
lea rcx, str.MainDialog
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x1c0]
mov rax, qword [rdi + 0x13c890]
mov qword [rcx], rax
movzx eax, word [rdi + 0x13c898]
mov word [rcx + 8], ax
lea r8, [rsp + 0xc0]
lea rdx, [rsp + 0x1c0]
lea rcx, [rsp + 0x210]
call fcn.1400fa5e0
test rax, rax
je 0x140014f51
mov rcx, rax
call fcn.1400fa6e0
test eax, eax
je 0x140014e50
cmp eax, 1
jne 0x140014e50
mov edx, 0x7f89
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadCursorW]
mov rdi, r14
nop
nop
nop
nop
lea r8, [rsp + 0xc0]
lea rdx, [rsp + 0x1c0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014f51
mov rcx, rax
call fcn.1400fa6e0
mov dword [rsp + rdi*4 + 0x130], eax
add rdi, 1
cmp rdi, 0xa
jl 0x140014e60
lea r8, [rsp + 0xc0]
lea rdx, [rsp + 0x1c0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014f51
mov rcx, rax
call fcn.1400fa6e0
lea r8, [rsp + 0xc0]
lea rdx, [rsp + 0x1c0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014f51
mov rcx, rax
call fcn.1400fa6e0
lea r8, [rsp + 0xc0]
lea rdx, [rsp + 0x1c0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014f51
mov rcx, rax
call fcn.1400fa6e0
lea r8, [rsp + 0xc0]
lea rdx, [rsp + 0x1c0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014f51
mov rcx, rax
call fcn.1400fa6e0
lea r8, [rsp + 0xc0]
lea rdx, [rsp + 0x1c0]
xor ecx, ecx
call fcn.1400fa5e0
test rax, rax
je 0x140014f51
mov rcx, rax
call fcn.1400fa6e0
mov eax, dword [rsp + 0x140]
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x144]
mov dword [rsp + 0x84], eax
cmp dword [rsp + 0xa0], 0
jne 0x140014f95
movsxd rax, r13d
imul rax, rax, 0x268
lea rcx, [rax + rsi + 0x549b8]
lea rdx, [0x14012c778]
call fcn.1400dc8dc
movsxd rax, r13d
imul rax, rax, 0x268
lea rcx, [rax + rsi + 0x549b8]
lea rdx, [rsp + 0x60]
call fcn.140021450
mov rdx, rbx
imul rdx, rdx, 0x268
lea rbp, [rdx + rsi + 0x549b8]
test byte [rbp + 0x258], 8
jne 0x14001506b
lea rcx, [rbp + 0xb0]
call fcn.1400cfe64
lea rcx, [rsi + 0x27434]
call qword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov rdx, rax
lea rcx, [rbp + 0xb0]
call fcn.1400cfde4
call fcn.1400cc6e8
mov ecx, r14d
test rax, rax
setne cl
test ecx, ecx
je 0x14001517d
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x108], rax
lea rdx, [rsp + 0x108]
mov rcx, rbp
call fcn.1400d7278
xor r8d, r8d
lea rdx, [rsp + 0x108]
mov rcx, rbp
call fcn.1400211e0
nop
mov rdx, qword [rsp + 0x108]
add rdx, 0xffffffffffffffe8
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14001506b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.DSOUND.dll_DirectSoundCaptureEnumerateW]
mov rcx, qword [rbp + 0x40]
call qword [sym.imp.USER32.dll_GetDC]
mov rcx, rax
call fcn.1400cf94c
mov r14, rax
mov rcx, qword [rbp + 0x1e0]
test rcx, rcx
je 0x140015092
call qword [sym.imp.GDI32.dll_DeleteObject]
mov r8d, dword [rbp + 0x22c]
mov edx, dword [rbp + 0x228]
mov rcx, qword [r14 + 8]
call qword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov qword [rbp + 0x1e0], rax
mov rcx, qword [r14 + 8]
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov rbx, rax
mov rcx, qword [r14 + 8]
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov rdi, rax
mov rdx, qword [rbp + 0x1e0]
mov rcx, rbx
call qword [sym.imp.GDI32.dll_SelectObject]
mov rdx, qword [rsi + 0x19490]
mov rcx, rdi
call qword [sym.imp.GDI32.dll_SelectObject]
mov edx, dword [rbp + 0x22c]
mov r9d, dword [rbp + 0x228]
mov dword [rsp + 0x50], 0xcc0020
mov dword [rsp + 0x48], edx
mov dword [rsp + 0x40], r9d
mov ecx, dword [rbp + 0x214]
mov dword [rsp + 0x38], ecx
mov ecx, dword [rbp + 0x210]
mov dword [rsp + 0x30], ecx
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], edx
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.GDI32.dll_StretchBlt]
mov rdx, qword [r14 + 8]
mov rcx, qword [rbp + 0x40]
call qword [sym.imp.USER32.dll_ReleaseDC]
mov rcx, rbx
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rcx, rdi
call qword [sym.imp.GDI32.dll_DeleteDC]
add r15d, 1
add r13d, 1
mov rbx, qword [rsp + 0x110]
add rbx, 1
mov qword [rsp + 0x110], rbx
cmp r13d, 0x19
jge 0x140015188
xor r14d, r14d
jmp 0x1400145d5
mov ecx, 0x80004005
call fcn.1400025a0
int3
cmp dword [rsi + 0x266b4], 0
jne 0x1400151af
xor edx, edx
lea rcx, [rsi + 0x58110]
call fcn.1400dc9c4
xor edx, edx
lea rcx, [rsi + 0x58378]
call fcn.1400dc9c4
jmp 0x1400151e6
cmp dword [rsi + 0x26708], 0
jne 0x1400151c6
xor edx, edx
lea rcx, [rsi + 0x58110]
call fcn.1400dc9c4
cmp dword [rsi + 0x2670c], 0
je 0x1400151d8
cmp dword [rsi + 0x2675c], 0
je 0x1400151e6
xor edx, edx
lea rcx, [rsi + 0x58378]
call fcn.1400dc9c4
cmp dword [rsi + 0x26690], 0
jne 0x140015211
mov dword [rsi + 0x56428], 1
mov r9d, 1
xor r8d, r8d
xor edx, edx
mov rcx, qword [rsi + 0x56208]
call qword [sym.imp.USER32.dll_RedrawWindow]
mov rcx, qword [rsp + 0x22a0]
xor rcx, rsp
call fcn.1400f9790
lea r11, [rsp + 0x22b0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret