Function at 0x45f810
Capabilities:
Capture microphone audio
Resume thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x218
cmp byte [0x6a8495], 0
jne 0x45fabc
push esi
push str.vig_ivi_n
call fcn.004608a0
add esp, 4
call fcn.004dc830
mov esi, dword [sym.imp.KERNEL32.dll_CreateEventA]
push 0
push 0
push 1
push 0
mov dword [0x6a83ec], eax
call esi
push 0
push 0
push 1
push 0
mov dword [0x6a521c], eax
call esi
push 0
push 0
push 4
push 0
push 0
push 0x45f590
mov dword [0x6a5220], eax
call sub.MFC42.dll_AfxBeginThread
mov dword [0x6a5224], eax
mov dword [eax + 0x28], 0
mov eax, dword [0x6a5224]
mov ecx, dword [eax + 0x2c]
push ecx
call dword [sym.imp.KERNEL32.dll_ResumeThread]
mov edx, dword [0x6a521c]
push 0x7d0
push edx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x45f8be
push str.vig_ivi:wto_n
call fcn.004608a0
push 1
call fcn.004608c0
add esp, 8
mov eax, dword [0x6a521c]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x6a3108]
lea eax, [ebp - 0x218]
xor edx, edx
push eax
mov dword [ebp - 0x18], 0x10001
mov dword [ebp - 0x14], 0x1f40
mov dword [ebp - 0xc], 0x100002
mov dword [ebp - 0x10], 0x3e80
mov word [ebp - 8], dx
call fcn.00447370
lea ecx, [ebp - 0x218]
push ecx
call fcn.0045dec0
push str.vig_ivi:vio_n
mov esi, eax
call fcn.004608a0
mov edx, dword [0x6a5224]
mov eax, dword [edx + 0x30]
push 0x20000
push 0
push eax
lea ecx, [ebp - 0x18]
push ecx
lea edx, [ebp - 4]
push esi
push edx
call fcn.00460970
add esp, 0x20
test eax, eax
je 0x45f953
call fcn.0045ed80
push str.vig_ivi_x_n
call fcn.004608a0
add esp, 4
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 4]
mov ecx, 1
mov dword [0x6a5218], eax
push 0x140
mov word [0x6a84a0], cx
mov dword [0x6a849c], 0x1f40
mov dword [0x6a84b0], 0x140
call fcn.00401148
mov edx, dword [0x6a84b0]
push edx
mov dword [0x6a84a8], eax
call fcn.00401148
push 0x140
mov dword [0x6a84ac], eax
call fcn.00401148
push 0x20
mov dword [0x6a84a4], eax
call fcn.004010d3
mov ecx, dword [0x6a84ac]
mov dword [0x6a5214], eax
mov dword [eax], ecx
mov edx, dword [0x6a5214]
mov eax, dword [0x6a84b0]
mov dword [edx + 4], eax
mov ecx, dword [0x6a5214]
push 0x20
mov dword [ecx + 0x10], 0
call fcn.004010d3
mov edx, dword [0x6a84a8]
mov dword [0x6a5210], eax
mov dword [eax], edx
mov eax, dword [0x6a5210]
mov ecx, dword [0x6a84b0]
mov dword [eax + 4], ecx
mov edx, dword [0x6a5210]
push str.vig_ivi:wiph1_n
mov dword [edx + 0x10], 0
call fcn.004608a0
mov eax, dword [0x6a5214]
mov ecx, dword [0x6a5218]
mov esi, dword [sym.imp.WINMM.dll_waveInPrepareHeader]
add esp, 0x18
push 0x20
push eax
push ecx
call esi
push str.vig_ivi:wiph2_n
call fcn.004608a0
mov edx, dword [0x6a5210]
mov eax, dword [0x6a5218]
add esp, 4
push 0x20
push edx
push eax
call esi
push str.vig_ivi:wiab1_n
call fcn.004608a0
mov ecx, dword [0x6a5210]
mov edx, dword [0x6a5218]
mov esi, dword [sym.imp.WINMM.dll_waveInAddBuffer]
add esp, 4
push 0x20
push ecx
push edx
call esi
push str.vig_ivi:wiab2_n
call fcn.004608a0
mov eax, dword [0x6a5214]
mov ecx, dword [0x6a5218]
add esp, 4
push 0x20
push eax
push ecx
call esi
push str.vig_ivi:wis_n
call fcn.004608a0
mov edx, dword [0x6a5218]
add esp, 4
push edx
call dword [sym.imp.WINMM.dll_waveInStart]
mov byte [0x6a8495], 1
push str.vig_ivi__n
call fcn.004608a0
add esp, 4
pop esi
mov esp, ebp
pop ebp
ret