Function at 0x41a9b0
Capabilities:
Delete registry value
Set registry value

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5947f5
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x40
mov eax, dword [0x5de00c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
cmp dword [0x5defc4], 8
mov edx, 0x5defb0
xorps xmm0, xmm0
mov dword [ebp - 0x34], 0
cmovae edx, dword [0x5defb0]
mov ecx, edx
mov dword [ebp - 0x30], 0
movups xmmword [ebp - 0x44], xmm0
lea edi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41aa20
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x44]
call fcn.00403d10
lea eax, [ebp - 0x44]
mov dword [ebp - 4], 0
push eax
lea ecx, [ebp - 0x4c]
call fcn.004e9f00
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x30]
cmp ecx, 8
jb 0x41aa8c
mov edx, dword [ebp - 0x44]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41aa82
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41aa82
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi]
lea ecx, [ebp - 0x2c]
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.Adapter
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
je 0x41aadb
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41ab17
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41ab0d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41ab0d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 4]
lea ecx, [ebp - 0x2c]
push 0x12
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.DisplayMode_Window
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41ab61
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41ab9d
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41ab93
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41ab93
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x10]
lea ecx, [ebp - 0x2c]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.Size_Full.Width
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41abe7
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41ac23
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41ac19
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41ac19
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x14]
lea ecx, [ebp - 0x2c]
push 0x10
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.Size_Full.Height
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41ac6d
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41aca9
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41ac9f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41ac9f
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x18]
lea ecx, [ebp - 0x2c]
push 0x11
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.Size_Window.Width
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41acf3
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41ad2f
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41ad25
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41ad25
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x1c]
lea ecx, [ebp - 0x2c]
push 0x12
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.Size_Window.Height
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41ad79
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41adb5
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41adab
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41adab
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x20]
lea ecx, [ebp - 0x2c]
push 0xe
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.Size_Max.Width
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41adff
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41ae3b
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41ae31
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41ae31
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x24]
lea ecx, [ebp - 0x2c]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.Size_Max.Height
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41ae85
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41aec1
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41aeb7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41aeb7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 8]
lea ecx, [ebp - 0x2c]
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.WindowsPos.x
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41af0b
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41af47
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41af3d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41af3d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0xc]
lea ecx, [ebp - 0x2c]
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.WindowsPos.y
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41af91
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41afcd
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41afc3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41afc3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x28]
lea ecx, [ebp - 0x2c]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.ScreenMode
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b017
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41b053
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41b049
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41b049
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x2c]
lea ecx, [ebp - 0x2c]
push 0x10
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.BackBuffer.Width
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b09d
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41b0d9
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41b0cf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41b0cf
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x30]
lea ecx, [ebp - 0x2c]
push 0x11
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.BackBuffer.Height
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b123
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41b15f
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41b155
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41b155
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x34]
lea ecx, [ebp - 0x2c]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.KeepAspectRatio
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b1a9
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41b1e5
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41b1db
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41b1db
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x38]
lea ecx, [ebp - 0x2c]
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.GamePad
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b22f
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41b26b
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41b261
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41b261
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x40]
lea ecx, [ebp - 0x2c]
push 0xd
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.BicubicFilter
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b2b5
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41b2f1
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41b2e7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41b2e7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x3c]
lea ecx, [ebp - 0x2c]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.VSync
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b33b
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41b377
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41b36d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41b36d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x44]
lea ecx, [ebp - 0x2c]
push 0xd
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.DisableDialog
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b3c1
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41b3fd
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41b3f3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41b3f3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x48]
lea ecx, [ebp - 0x2c]
push 8
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.ExDevice
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b447
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41b483
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41b479
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41b479
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [esi + 0x4c]
lea ecx, [ebp - 0x2c]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.ResumeGame
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b4cd
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41b4df
inc eax
push eax
push dword [ebp - 0x2c]
call fcn.00403c70
mov eax, dword [esi + 0x50]
lea ecx, [ebp - 0x2c]
push 0x14
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.MaxTextureSize.Width
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b529
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41b53b
inc eax
push eax
push dword [ebp - 0x2c]
call fcn.00403c70
mov eax, dword [esi + 0x54]
lea ecx, [ebp - 0x2c]
push 0x15
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.MaxTextureSize.Height
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b585
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41b597
inc eax
push eax
push dword [ebp - 0x2c]
call fcn.00403c70
mov eax, dword [esi + 0x58]
lea ecx, [ebp - 0x2c]
push 0xe
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.DisableAeroOff
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b5e1
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41b5f3
inc eax
push eax
push dword [ebp - 0x2c]
call fcn.00403c70
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x1c], 0
push str.AudioDevice
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x2c], xmm0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
lea edx, [esi + 0x5c]
test eax, eax
je 0x41b65f
mov ecx, dword [edx + 0x10]
add ecx, ecx
mov dword [ebp - 0x48], ecx
jne 0x41b640
cmp dword [ebp - 0x18], 8
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push ecx
push eax
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
jmp 0x41b65f
cmp dword [edx + 0x14], 8
jb 0x41b648
mov edx, dword [edx]
push dword [ebp - 0x48]
cmp dword [ebp - 0x18], 8
lea ecx, [ebp - 0x2c]
push edx
cmovae ecx, dword [ebp - 0x2c]
push 1
push 0
push ecx
push eax
call edi
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41b671
inc eax
push eax
push dword [ebp - 0x2c]
call fcn.00403c70
mov eax, dword [esi + 0x74]
lea ecx, [ebp - 0x2c]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x48], eax
push str.BackBufferScale
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.00403d10
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x41b6be
cmp dword [ebp - 0x18], 8
lea edx, [ebp - 0x48]
push 4
push edx
push 4
lea ecx, [ebp - 0x2c]
cmovae ecx, dword [ebp - 0x2c]
push 0
push ecx
push eax
call edi
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x41b6d5
lea eax, [ecx + 1]
push eax
push dword [ebp - 0x2c]
call fcn.00403c70
mov eax, dword [ebp - 0x4c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0052d3c5
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret