Function at 0x46fb70
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x619f50
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x28
push esi
lea ecx, [esp + 8]
call fcn.0051b1b6
mov ecx, dword [0x6af36c]
mov eax, dword [0x6af368]
mov edx, dword [0x6af370]
mov dword [esp + 0x1c], ecx
mov ecx, dword [0x6af378]
mov dword [esp + 0x18], eax
mov eax, dword [0x6af374]
mov dword [esp + 0x28], ecx
push str.Main_prefs
lea ecx, [esp + 0xc]
mov dword [esp + 0x38], 0
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], eax
call fcn.0051b0a0
mov esi, eax
test esi, esi
je 0x46fc14
cmp esi, 0x14
jbe 0x46fbe8
mov esi, 0x14
push 0x14
lea edx, [esp + 0x1c]
push edx
push str.Main_prefs
lea ecx, [esp + 0x14]
call fcn.0051b0be
test al, al
je 0x46fc14
push esi
lea eax, [esp + 0x1c]
push eax
push 0x6af368
call fcn.005f7b00
add esp, 0xc
push 0
push 1
push str.Preferences
lea ecx, [esp + 0x10]
call fcn.0051b39f
push 0x6af39c
push 0x636bc0
lea ecx, [esp + 0xc]
mov byte [esp + 0x3c], 1
call fcn.0051b078
test al, al
jne 0x46fc51
push str.Frame__f___h:_02m:_02s._03t____c_
mov ecx, 0x6af39c
call fcn.004039e0
push 0x6af3d0
push str.Direct3D_FX_file
lea ecx, [esp + 0xc]
call fcn.0051b078
test al, al
jne 0x46fc77
push 0x636bd8
mov ecx, 0x6af3d0
call fcn.004039e0
push 1
push str.Allow_direct_YCbCr_decoding
lea ecx, [esp + 0xc]
call fcn.0051afda
push 1
push str.Confirm_render_abort
lea ecx, [esp + 0xc]
mov byte [0x6af3a8], al
call fcn.0051afda
push 0
push str.Confirm_exit
lea ecx, [esp + 0xc]
mov byte [0x6af3aa], al
call fcn.0051afda
push 0
push str.Render:_Warn_if_no_audio
lea ecx, [esp + 0xc]
mov byte [0x6af3ab], al
call fcn.0051afda
push 0
push str.AVI:_Alignment_threshold_enable
lea ecx, [esp + 0xc]
mov byte [0x6af3ac], al
call fcn.0051afda
push 1
push str.AVI:_VBR_warning_enabled
lea ecx, [esp + 0xc]
mov byte [0x6af3ad], al
call fcn.0051afda
push 1
push str.AVI:_Non_zero_start_warning_enabled
lea ecx, [esp + 0xc]
mov byte [0x6af3ae], al
call fcn.0051afda
push 0x80000
push str.AVI:_Alignment_threshold
lea ecx, [esp + 0xc]
mov byte [0x6af3af], al
call fcn.0051b006
push 0
push str.AVI:_Prefer_internal_decoders
lea ecx, [esp + 0xc]
mov dword [0x6af3b4], eax
call fcn.0051afda
push 0
push str.AVI:_Prefer_internal_audio_decoders
lea ecx, [esp + 0xc]
mov byte [0x6af3b0], al
call fcn.0051afda
push 0
push str.AVI:_Use_video_stream_fccHandler_in_codec_search
lea ecx, [esp + 0xc]
mov byte [0x6af3b1], al
call fcn.0051afda
push 0x200000
push str.Render:_Output_buffer_size
lea ecx, [esp + 0xc]
mov byte [0x6af3b2], al
call fcn.0051b006
mov esi, 0x10000
mov dword [esp + 0xc], eax
cmp eax, 0x10000000
mov dword [esp + 0x10], 0x10000000
mov dword [esp + 0x14], esi
lea eax, [esp + 0xc]
jb 0x46fd98
lea eax, [esp + 0x10]
cmp dword [eax], esi
ja 0x46fda0
lea eax, [esp + 0x14]
mov ecx, dword [eax]
push esi
mov dword [0x6af3b8], ecx
push str.Render:_Wave_buffer_size
lea ecx, [esp + 0xc]
call fcn.0051b006
mov dword [esp + 0x14], eax
cmp eax, 0x10000000
mov dword [esp + 0x10], 0x10000000
mov dword [esp + 0xc], esi
lea eax, [esp + 0x14]
jb 0x46fdd6
lea eax, [esp + 0x10]
cmp dword [eax], esi
ja 0x46fdde
lea eax, [esp + 0xc]
mov edx, dword [eax]
push 0x20
push str.Render:_Video_buffer_count
lea ecx, [esp + 0xc]
mov dword [0x6af3bc], edx
call fcn.0051b006
mov dword [esp + 0x14], eax
cmp eax, esi
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], 1
lea eax, [esp + 0x14]
jb 0x46fe12
lea eax, [esp + 0x10]
cmp dword [eax], 1
ja 0x46fe1b
lea eax, [esp + 0xc]
mov eax, dword [eax]
push 2
push str.Render:_Audio_buffer_seconds
lea ecx, [esp + 0xc]
mov dword [0x6af3c0], eax
call fcn.0051b006
mov dword [esp + 0x14], eax
cmp eax, 0x20
mov dword [esp + 0x10], 0x20
mov dword [esp + 0xc], 1
lea eax, [esp + 0x14]
jb 0x46fe53
lea eax, [esp + 0x10]
cmp dword [eax], 1
ja 0x46fe5c
lea eax, [esp + 0xc]
mov ecx, dword [eax]
push 0x64
mov dword [0x6af3c4], ecx
push str.Render:_Default_throttle_percent
lea ecx, [esp + 0xc]
call fcn.0051b006
mov dword [esp + 0x14], eax
cmp eax, 0x64
mov dword [esp + 0x10], 0x64
mov dword [esp + 0xc], 0xa
lea eax, [esp + 0x14]
jb 0x46fe95
lea eax, [esp + 0x10]
cmp dword [eax], 0xa
ja 0x46fe9e
lea eax, [esp + 0xc]
mov edx, dword [eax]
push 1
push str.Render:_Inhibit_system_sleep
lea ecx, [esp + 0xc]
mov dword [0x6af3c8], edx
call fcn.0051afda
push 0
push str.Render:_Use_background_priority
lea ecx, [esp + 0xc]
mov byte [0x6af3cd], al
call fcn.0051afda
push 2
push str.File:_Async_mode
lea ecx, [esp + 0xc]
mov byte [0x6af3cc], al
call fcn.0051b006
mov dword [esp + 0x14], eax
cmp eax, 3
mov dword [esp + 0x10], 3
lea eax, [esp + 0x14]
jb 0x46fef9
lea eax, [esp + 0x10]
mov eax, dword [eax]
push 0x100
push str.AVI:_Superindex_entry_limit
lea ecx, [esp + 0xc]
mov dword [0x6af3dc], eax
call fcn.0051b006
push 0x2000
push str.AVI:_Subindex_entry_limit
lea ecx, [esp + 0xc]
mov dword [0x6af3e0], eax
call fcn.0051b006
push 0
push str.Display:_Allow_DirectX_overlays
lea ecx, [esp + 0xc]
mov dword [0x6af3e4], eax
call fcn.0051afda
push 0
push str.Display:_Enable_debug_info
lea ecx, [esp + 0xc]
mov byte [0x6af3f0], al
call fcn.0051afda
push 0
push str.Display:_Enable_high_precision
lea ecx, [esp + 0xc]
mov byte [0x6af3a9], al
call fcn.0051afda
push 1
push str.Display:_Enable_background_fallback
lea ecx, [esp + 0xc]
mov byte [0x6af3f1], al
call fcn.0051afda
push 0
push str.Display:_Enable_unified_3D_driver
lea ecx, [esp + 0xc]
mov byte [0x6af3f2], al
call fcn.0051afda
push 0
push 2
push str.Display:_Secondary_monitor_mode
lea ecx, [esp + 0x10]
mov byte [0x6af3f3], al
call fcn.0051b032
push 0xa
push str.Images:_Frame_rate_numerator
lea ecx, [esp + 0xc]
mov dword [0x6af3f4], eax
call fcn.0051b006
push 1
push str.Images:_Frame_rate_denominator
lea ecx, [esp + 0xc]
mov esi, eax
call fcn.0051b006
push 0
push str.Threading:_Video_compression_threads
lea ecx, [esp + 0xc]
mov dword [0x6af3e8], esi
mov dword [0x6af3ec], eax
call fcn.0051b006
push 0xffffffffffffffff
push str.Threading:_Video_filter_threads
lea ecx, [esp + 0xc]
mov dword [0x6af3f8], eax
call fcn.0051b006
push 0x6af3fc
push str.Playback:_Default_audio_device
lea ecx, [esp + 0xc]
mov dword [0x6af414], eax
call fcn.0051b078
push 0
push str.Filters:_Enable_3D_hardware_acceleration
lea ecx, [esp + 0xc]
call fcn.0051afda
push 0
push str.Filters:_Process_ahead_frame_count
lea ecx, [esp + 0xc]
mov byte [0x6af40c], al
call fcn.0051b006
push 0
mov dword [0x6af410], eax
push str.CPU:_Enabled_extensions
lea ecx, [esp + 0xc]
call fcn.0051b006
push 0
push str.Batch:_Show_status_window
lea ecx, [esp + 0xc]
mov dword [0x6af408], eax
call fcn.0051afda
push 0
push str.AutoRecover:_Enabled
lea ecx, [esp + 0xc]
mov byte [0x6af418], al
call fcn.0051afda
push 0
push str.Use_profile_local_path
lea ecx, [esp + 0xc]
mov byte [0x6af419], al
call fcn.0051afda
mov ecx, dword [0x6af41c]
push ecx
push str.MRU_size
lea ecx, [esp + 0xc]
mov byte [0x6af41a], al
call fcn.0051b006
test eax, eax
mov dword [0x6af41c], eax
pop esi
jge 0x4700c3
mov dword [0x6af41c], 0
jmp 0x4700d2
cmp eax, 0x19
jle 0x4700d2
mov dword [0x6af41c], 0x19
mov edx, dword [0x6af368]
mov eax, dword [0x6af36c]
mov ecx, dword [0x6af370]
mov dword [0x6af388], edx
mov edx, dword [0x6af374]
mov dword [0x6af38c], eax
mov eax, dword [0x6af378]
mov dword [0x6af390], ecx
mov dword [0x6af394], edx
mov dword [0x6af398], eax
call fcn.0046e0d0
lea ecx, [esp]
mov byte [esp + 0x30], 0
call fcn.0051aec7
lea ecx, [esp + 4]
mov dword [esp + 0x30], 0xffffffff
call fcn.0051aec7
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
add esp, 0x34
ret