Function at 0x434d70
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xe74
push ebx
push esi
push edi
push 1
push str.CheckMaxTime
mov eax, str.Settings
call fcn.00480fe0
test al, al
jne 0x434dc6
push str.CheckMaxTime
mov eax, str.Settings
call fcn.004a54a0
push str.MaxTime
mov eax, str.Settings
call fcn.004a54a0
push str.MaxTimeMilliSeconds
push str.Settings
mov eax, 0x2255100
call fcn.00480f20
call fcn.004485d0
test al, al
je 0x434dd6
mov byte [0x735b72], 1
lea eax, [esp + 0x44c]
push eax
mov eax, str.Hotkey
call fcn.004a55f0
lea ecx, [esp + 0xa6c]
push ecx
mov eax, str.Hotkey
call fcn.004a55f0
lea edx, [esp + 0x44c]
push edx
lea eax, [esp + 0xa70]
mov ecx, str.Details
call fcn.00401730
lea ecx, [esp + 0x44c]
call fcn.0051ec90
cmp eax, 0xffffffff
je 0x434e4d
push eax
push 0x6bc0dc
lea edx, [esp + 0x248]
call fcn.00401000
add esp, 8
lea eax, [esp + 0x44c]
push eax
lea ecx, [esp + 0x244]
call fcn.00401810
push str.HighlightCursor
mov eax, str.Settings
call fcn.004a5500
test al, al
je 0x434eae
push 2
push str.HighlightCursor
mov eax, str.Settings
call fcn.004811b0
mov esi, eax
cmp esi, 2
setne cl
push ecx
push str.ShowCursor
mov ecx, str.Settings
call fcn.00480f80
cmp esi, 1
sete dl
mov ecx, str.Settings
push edx
push str.ShowHighlightCursor
call fcn.00480f80
push str.HighlightCursor
mov eax, str.Settings
call fcn.004a54a0
call fcn.004af5a0
test al, al
jne 0x43506d
lea eax, [esp + 0x38]
push eax
mov dword [esp + 0x3c], 0x114
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp byte [esp + 0x3c], 6
setae al
xor ebx, ebx
cmp al, bl
je 0x43506d
push str.Settings
push str.SoftwareNCH_SoftwareDebut_s
mov esi, 0x104
lea edi, [esp + 0x248]
mov word [esp + 0x40], bx
call fcn.004af0d0
add esp, 8
lea ecx, [esp + 0x38]
push ecx
push 0x6bc0cc
push str.SoundMoniker
mov ecx, edi
mov edx, SysReAllocStringLen
call fcn.004af7e0
mov eax, 0x6bc5b0
lea esi, [esp + 0x1c]
call fcn.00405540
push ebx
lea edx, [esp + 0x3c]
push edx
mov eax, esi
push eax
mov word [esp + 0x44], bx
call fcn.0063d7f0
test al, al
mov ecx, esi
jne 0x434f4a
mov word [esp + 0x38], bx
call fcn.004055c0
cmp word [esp + 0x38], bx
je 0x43500d
xor ecx, ecx
mov eax, 0x820
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0069c0de
add esp, 4
cmp eax, ebx
mov dword [esp + 0x10], eax
jne 0x434f86
mov dword [esp + 0x18], ebx
jmp 0x434f91
mov word [eax], bx
mov dword [esp + 0x18], 0x820
push str.LAudioMixer_2
lea esi, [esp + 0x14]
mov dword [esp + 0x18], ebx
call fcn.00480880
push str.MMDeviceSpeakers
push 0x10
push str._d__s
mov eax, esi
call fcn.00480ab0
lea eax, [esp + 0x44]
add esp, 0xc
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x434fc0
sub eax, edx
lea ecx, [esp + 0x38]
sar eax, 1
push ecx
push eax
push str._d__s
lea eax, [esp + 0x1c]
call fcn.00480ab0
mov eax, dword [esp + 0x1c]
add esp, 0xc
cmp eax, ebx
jne 0x434ff3
mov eax, 0x6bc0cc
mov edx, eax
lea esi, [esp + 0x38]
call fcn.00497910
mov edx, dword [esp + 0x10]
push edx
call fcn.0069c8fa
add esp, 4
jmp 0x43501b
mov edx, str.MMDeviceSpeakers
lea esi, [esp + 0x38]
call fcn.00497910
push str.Settings
push str.SoftwareNCH_SoftwareDebut_s
mov esi, 0x104
lea edi, [esp + 0x868]
mov word [esp + 0x248], 0x31
mov word [esp + 0x24a], bx
call fcn.004af0d0
add esp, 8
push str.CaptureSoundFromSpeakers
push SysReAllocStringLen
lea esi, [esp + 0x248]
mov edx, edi
call fcn.004af710
lea eax, [esp + 0x38]
push eax
call fcn.00638070
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret