Function at 0x10005e09
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
lea ebp, [esp - 0x5c]
sub esp, 0x5c
push 0xffffffffffffffff
push 0x100c2991
mov eax, dword fs:[0]
push eax
sub esp, 0x110
push ebx
push esi
push edi
mov eax, dword [0x100f6f50]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov ebx, dword [ebp + 0x6c]
mov edi, dword [ebp + 0x68]
xor esi, esi
mov dword [ebp + 0x54], esi
mov dword [ebp + 0xc], esi
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10005eae
sub esp, 0x1c
mov dword [ebp - 0x44], esp
mov ecx, esp
mov edi, 7
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], esi
xor eax, eax
mov word [ecx + 4], ax
push 0x1a
push str..DisplayDriverExtSite.cpp
call fcn.10058390
mov dword [ebp - 4], esi
push 0x411
sub esp, 0x1c
mov dword [ebp + 0x18], esp
mov ecx, esp
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], esi
xor edx, edx
mov word [ecx + 4], dx
push 0x2e
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058390
mov byte [ebp - 4], 1
mov byte [ebp - 0x31], 0
lea eax, [ebp - 0x31]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x20], str.Checking
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x24], ecx
mov dword [ebp + 0x10], ebx
lea edx, [ebp + 0x20]
mov dword [ebp + 0x14], edx
mov dword [ebp + 0x34], str.section
lea eax, [ebp + 0x10]
mov dword [ebp + 0x38], eax
mov ecx, dword [ebp + 0x70]
mov dword [ebp + 0x3c], ecx
lea edx, [ebp + 0x34]
mov dword [ebp + 0x40], edx
mov dword [ebp + 0x44], str.for_feature_flags
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x4c], 0x100d015c
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x50], ecx
push 5
call fcn.100021b0
push eax
mov dword [ebp - 4], 0xffffffff
lea edi, [ebp + 0x4c]
call fcn.10025de0
mov edi, dword [ebp + 0x68]
mov dword [ebp + 0x1c], esi
mov dword [ebp - 4], 3
mov edx, dword [edi]
lea eax, [ebp + 0x1c]
push eax
push edi
mov ecx, dword [edx + 0x48]
call ecx
cmp eax, esi
jge 0x10005ed9
push esi
push 0x417
push 0x100cb97c
push eax
call fcn.10001ed0
mov dword [ebp - 0x48], esi
mov eax, dword [ebx + 0x18]
lea edx, [ebp - 0x48]
push edx
push 2
push esi
push eax
call dword [sym.imp.SETUPAPI.dll_SetupOpenInfFileW]
mov dword [ebp + 0x18], eax
mov dword [ebp - 0x44], eax
mov byte [ebp - 4], 4
cmp eax, 0xffffffff
jne 0x10005f01
call fcn.10023830
mov ebx, dword [ebp + 0x70]
push ebx
push eax
lea eax, [ebp + 0x28]
push eax
call fcn.1006e540
add esp, 0xc
mov byte [ebp - 4], 5
mov ecx, dword [ebp + 0x28]
push ecx
mov ecx, ebx
call fcn.10021dc0
test eax, eax
je 0x10005fac
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10005fac
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x14], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 6
push 0x427
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 7
mov byte [ebp + 0x73], 0
lea edx, [ebp + 0x73]
mov dword [ebp + 0x30], edx
mov dword [ebp + 0x4c], str.Checking_actual_section
lea eax, [ebp + 0x2c]
mov dword [ebp + 0x50], eax
lea ecx, [ebp + 0x28]
mov dword [ebp + 0x44], ecx
lea edx, [ebp + 0x4c]
mov dword [ebp + 0x48], edx
mov dword [ebp + 0x3c], 0x100d0170
lea eax, [ebp + 0x44]
mov dword [ebp + 0x40], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 5
lea edi, [ebp + 0x3c]
call fcn.10025de0
mov edi, dword [ebp + 0x68]
mov dword [ebp + 0x58], esi
mov dword [ebp - 0x3c], esi
mov byte [ebp - 4], 9
mov ecx, dword [edi]
lea edx, [ebp - 0x3c]
push edx
push edi
mov eax, dword [ecx + 0x20]
call eax
cmp eax, esi
jge 0x10005fd7
push esi
push 0x430
push 0x100cb97c
push eax
call fcn.10001ed0
mov byte [ebp - 4], 0xa
push 0x431
push 0x100cb97c
push 0xe0e00000
cmp dword [ebp - 0x3c], esi
setne cl
movzx edx, cl
push edx
call fcn.10025fd0
add esp, 0x10
mov dword [ebp - 4], 9
mov dword [ebp - 0x40], esi
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax]
lea edx, [ebp - 0x40]
push edx
push eax
mov eax, dword [ecx + 0x1c]
call eax
cmp eax, esi
jge 0x1000602e
push esi
push 0x433
push 0x100cb97c
push eax
call fcn.10001ed0
mov byte [ebp - 4], 0x10
push 0x434
push 0x100cb97c
push 0xe0e00000
cmp dword [ebp - 0x40], esi
setne cl
movzx edx, cl
push edx
call fcn.10025fd0
add esp, 0x10
mov dword [ebp - 4], 0xf
push str.PackageType
mov eax, dword [ebp - 0x40]
push eax
lea ecx, [ebp - 0xdc]
push ecx
call fcn.10022ee0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x68]
call fcn.100223e0
mov byte [ebp - 4], 0x15
mov dword [ebp - 0x50], esi
lea ecx, [ebp - 0x68]
call fcn.10001780
lea edx, [ebp - 0x60]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, esi
jge 0x100060a5
push esi
push esi
push 0x100d1152
push eax
call fcn.10001ed0
mov dword [ebp - 0x50], 2
mov eax, 8
mov word [ebp - 0x60], ax
mov dword [ebp - 0x58], 0
lea ecx, [ebp - 0x58]
push ecx
lea esi, [ebp - 0xdc]
call fcn.10015b40
push str.NVSupportNview
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x16
mov ebx, 1
mov dword [ebp + 0x54], ebx
lea edx, [ebp + 0x58]
push edx
lea eax, [ebp + 0x70]
push eax
lea ecx, [ebp + 0x28]
push ecx
mov edx, dword [ebp + 0x18]
push edx
call fcn.10071b10
add esp, 0x10
test al, al
je 0x1000613a
cmp dword [ebp + 0x58], 0
je 0x1000613a
push 0x100cc73c
lea ecx, [ebp - 0x30]
call fcn.10024650
mov dword [ebp - 4], 0x17
mov dword [ebp + 0x54], 3
push 0
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x68]
call fcn.10078130
mov ebx, dword [ebp + 0x54]
test eax, eax
mov byte [ebp + 0x6b], 1
je 0x1000613e
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x16
test bl, 2
je 0x10006158
and ebx, 0xfffffffd
mov dword [ebp + 0x54], ebx
lea ecx, [ebp - 0x30]
call fcn.100245f0
mov dword [ebp - 4], 0x15
test bl, 1
je 0x10006172
and ebx, 0xfffffffe
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10006251
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x1000621e
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x18
push 0x43c
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x19
mov byte [ebp + 0x6b], 0
lea ecx, [ebp + 0x6b]
mov dword [ebp + 0x30], ecx
mov esi, str.Found
mov dword [ebp + 0x4c], esi
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NVSupportNview
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], 0x100cc74c
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov dword [ebp + 0x34], str.Feature.NView
lea edx, [ebp + 0x3c]
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x10], 0x100d01ac
lea eax, [ebp + 0x34]
mov dword [ebp + 0x14], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x15
lea edi, [ebp + 0x10]
call fcn.10025de0
jmp 0x10006223
mov esi, str.Found
push str.Feature.NView
mov ecx, dword [ebp + 0x1c]
push ecx
lea edx, [ebp]
push edx
call fcn.100230a0
mov byte [ebp - 4], 0x1a
push 1
lea ecx, [ebp]
call fcn.10024e30
mov byte [ebp - 4], 0x15
lea ecx, [ebp]
call fcn.10024940
jmp 0x10006256
mov esi, str.Found
push str.NVSupportNviewForOEM
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x1c
or ebx, 4
mov dword [ebp + 0x54], ebx
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x70]
push ecx
lea edx, [ebp + 0x28]
push edx
mov eax, dword [ebp + 0x18]
push eax
call fcn.10071b10
add esp, 0x10
test al, al
je 0x100062bf
cmp dword [ebp + 0x58], 0
je 0x100062bf
push 0x100cc798
lea ecx, [ebp - 0x30]
call fcn.10024650
mov dword [ebp - 4], 0x1d
or ebx, 8
mov dword [ebp + 0x54], ebx
push 0
lea ecx, [ebp - 0x30]
push ecx
lea ecx, [ebp - 0x68]
call fcn.10078130
test eax, eax
mov byte [ebp + 0x6b], 1
je 0x100062c3
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x1c
test bl, 8
je 0x100062dd
and ebx, 0xfffffff7
mov dword [ebp + 0x54], ebx
lea ecx, [ebp - 0x30]
call fcn.100245f0
mov dword [ebp - 4], 0x15
test bl, 4
je 0x100062f7
and ebx, 0xfffffffb
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x100063c8
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x1000639c
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x1e
push 0x444
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x1f
mov byte [ebp + 0x6b], 0
lea edx, [ebp + 0x6b]
mov dword [ebp + 0x30], edx
mov dword [ebp + 0x4c], esi
lea eax, [ebp + 0x2c]
mov dword [ebp + 0x50], eax
mov dword [ebp + 0x44], str.NVSupportNviewForOEM
lea ecx, [ebp + 0x4c]
mov dword [ebp + 0x48], ecx
mov dword [ebp + 0x3c], 0x100cc74c
lea edx, [ebp + 0x44]
mov dword [ebp + 0x40], edx
mov dword [ebp + 0x34], str.Feature.NView
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x10], 0x100d01c0
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x14], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x15
lea edi, [ebp + 0x10]
call fcn.10025de0
push str.Feature.NView
mov edx, dword [ebp + 0x1c]
push edx
lea eax, [ebp]
push eax
call fcn.100230a0
mov byte [ebp - 4], 0x20
push 1
lea ecx, [ebp]
call fcn.10024e30
mov byte [ebp - 4], 0x15
lea ecx, [ebp]
call fcn.10024940
push str.NVSupportPhysx
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x22
or ebx, 0x10
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x58]
push ecx
lea edx, [ebp + 0x70]
push edx
lea eax, [ebp + 0x28]
push eax
mov ecx, dword [ebp + 0x18]
push ecx
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10006405
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x10006409
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x15
test bl, 0x10
je 0x10006423
and ebx, 0xffffffef
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x100064f4
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x100064c8
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x23
push 0x44c
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x24
mov byte [ebp + 0x6b], 0
lea edx, [ebp + 0x6b]
mov dword [ebp + 0x30], edx
mov dword [ebp + 0x4c], esi
lea eax, [ebp + 0x2c]
mov dword [ebp + 0x50], eax
mov dword [ebp + 0x44], str.NVSupportPhysx
lea ecx, [ebp + 0x4c]
mov dword [ebp + 0x48], ecx
mov dword [ebp + 0x3c], 0x100cc74c
lea edx, [ebp + 0x44]
mov dword [ebp + 0x40], edx
mov dword [ebp + 0x34], str.Feature.Physx
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x10], 0x100d01ac
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x14], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x15
lea edi, [ebp + 0x10]
call fcn.10025de0
push str.Feature.Physx
mov edx, dword [ebp + 0x1c]
push edx
lea eax, [ebp]
push eax
call fcn.100230a0
mov byte [ebp - 4], 0x25
push 1
lea ecx, [ebp]
call fcn.10024e30
mov byte [ebp - 4], 0x15
lea ecx, [ebp]
call fcn.10024940
push str.NVSupport3DVision
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x27
or ebx, 0x20
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x58]
push ecx
lea edx, [ebp + 0x70]
push edx
lea eax, [ebp + 0x28]
push eax
mov ecx, dword [ebp + 0x18]
push ecx
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10006534
mov edx, dword [ebp + 0x58]
dec edx
cmp edx, 2
mov byte [ebp + 0x6b], 1
jbe 0x10006538
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x15
test bl, 0x20
je 0x10006552
and ebx, 0xffffffdf
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x100066e1
push str.Feature.3DVision
lea eax, [ebp]
push eax
mov ecx, dword [ebp + 0x1c]
call fcn.10016560
mov bl, 0x28
mov byte [ebp - 4], bl
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x1000660b
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x29
push 0x455
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x2a
mov byte [ebp + 0x6b], 0
lea ecx, [ebp + 0x6b]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], esi
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NVSupport3DVision
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], 0x100cc824
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x34], edx
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x10], 0x100d01d4
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x14], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], bl
lea edi, [ebp + 0x10]
call fcn.10025de0
mov dword [ebp + 0x68], 0
lea edx, [ebp + 0x68]
push edx
lea esi, [ebp]
call fcn.10016890
test al, al
je 0x1000662d
mov eax, dword [ebp + 0x68]
cmp dword [ebp + 0x58], eax
jl 0x1000662d
mov dword [ebp + 0x58], eax
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x100066ca
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x2b
push 0x45b
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x2c
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Value
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x44], edx
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], str.would_be_used_for
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov dword [ebp + 0x34], str.NVSupport3DVision
lea edx, [ebp + 0x3c]
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x10], 0x100d01e8
lea eax, [ebp + 0x34]
mov dword [ebp + 0x14], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], bl
lea edi, [ebp + 0x10]
call fcn.10025de0
mov ecx, dword [ebp + 0x58]
push ecx
lea edi, [ebp]
call fcn.10016680
mov byte [ebp - 4], 0x15
mov ecx, edi
call fcn.100165f0
push str.Disallow.3DVision
lea edx, [ebp - 0x80]
push edx
mov ecx, dword [ebp + 0x1c]
call fcn.10016560
mov byte [ebp - 4], 0x2d
push str.NV3DVisionDisallow
lea ecx, [ebp + 0x68]
call fcn.10001a70
mov byte [ebp - 4], 0x2e
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x68]
push ecx
lea edx, [ebp + 0x28]
push edx
mov eax, dword [ebp + 0x18]
push eax
call fcn.10071b10
add esp, 0x10
mov bl, al
mov byte [ebp - 4], 0x2d
lea ecx, [ebp + 0x68]
call fcn.10001df0
test bl, bl
je 0x10006808
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x100067d3
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x2f
push 0x462
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x30
mov byte [ebp + 0x6b], 0
lea ecx, [ebp + 0x6b]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], str.Found
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NV3DVisionDisallow
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], 0x100cc824
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x34], edx
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x10], 0x100d01fc
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x14], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x2d
lea edi, [ebp + 0x10]
call fcn.10025de0
xor edi, edi
mov dword [ebp + 0x68], edi
lea edx, [ebp + 0x68]
push edx
lea esi, [ebp - 0x80]
call fcn.10016890
mov ecx, dword [ebp + 0x68]
test al, al
je 0x100067f4
cmp ecx, edi
jne 0x100067f4
mov dword [ebp + 0x58], edi
jmp 0x10006811
mov eax, dword [ebp + 0x58]
lea edx, [eax - 1]
cmp edx, 1
ja 0x10006811
cmp eax, ecx
jg 0x10006811
mov dword [ebp + 0x58], ecx
jmp 0x10006811
mov dword [ebp + 0x58], 0
xor edi, edi
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x100068d0
sub esp, 0x1c
mov dword [ebp + 0x70], esp
mov ecx, esp
mov esi, 7
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], edi
xor eax, eax
mov word [ecx + 4], ax
push 0x1a
push str..DisplayDriverExtSite.cpp
call fcn.10058390
mov byte [ebp - 4], 0x31
push 0x471
sub esp, 0x1c
mov dword [ebp + 0x24], esp
mov ecx, esp
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], edi
xor edx, edx
mov word [ecx + 4], dx
push 0x2e
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058390
mov byte [ebp - 4], 0x32
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Value
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x44], edx
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], str.would_be_used_for
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov dword [ebp + 0x34], str.NV3DVisionDisallow
lea edx, [ebp + 0x3c]
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x10], 0x100d0210
lea eax, [ebp + 0x34]
mov dword [ebp + 0x14], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x2d
lea edi, [ebp + 0x10]
call fcn.10025de0
mov ecx, dword [ebp + 0x58]
push ecx
lea edi, [ebp - 0x80]
call fcn.10016680
push str.NVSupport3DVisionForOEM
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x33
mov ebx, dword [ebp + 0x54]
or ebx, 0x40
mov dword [ebp + 0x54], ebx
lea edx, [ebp + 0x58]
push edx
lea eax, [ebp + 0x70]
push eax
lea ecx, [ebp + 0x28]
push ecx
mov esi, dword [ebp + 0x18]
push esi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x1000691c
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x10006920
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x2d
test bl, 0x40
je 0x1000693a
and ebx, 0xffffffbf
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x100069f1
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x100069c5
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x34
push 0x477
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x35
mov byte [ebp + 0x6b], 0
lea edx, [ebp + 0x6b]
mov dword [ebp + 0x30], edx
mov dword [ebp + 0x4c], str.Found
lea eax, [ebp + 0x2c]
mov dword [ebp + 0x50], eax
mov dword [ebp + 0x44], str.NVSupport3DVisionForOEM
lea ecx, [ebp + 0x4c]
mov dword [ebp + 0x48], ecx
mov dword [ebp + 0x3c], 0x100d0224
lea edx, [ebp + 0x44]
mov dword [ebp + 0x40], edx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x2d
lea edi, [ebp + 0x3c]
call fcn.10025de0
push str.Feature.3DVisionForOEM
mov eax, dword [ebp + 0x1c]
push eax
lea ecx, [ebp]
push ecx
call fcn.100230a0
mov byte [ebp - 4], 0x36
push 1
lea ecx, [ebp]
call fcn.10024e30
mov byte [ebp - 4], 0x2d
lea ecx, [ebp]
call fcn.10024940
push str.NVAllowIR3DDriverPreStage
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x38
or ebx, 0x80
mov dword [ebp + 0x54], ebx
lea edx, [ebp + 0x58]
push edx
lea eax, [ebp + 0x70]
push eax
lea ecx, [ebp + 0x28]
push ecx
push esi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10006a31
mov edx, dword [ebp + 0x58]
dec edx
cmp edx, 2
mov byte [ebp + 0x6b], 1
jbe 0x10006a35
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x2d
test bl, bl
jns 0x10006a51
and ebx, 0xffffff7f
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10006be8
push str.Feature.AllowIR3DDriverPreStage
lea eax, [ebp]
push eax
mov ecx, dword [ebp + 0x1c]
call fcn.10016560
mov byte [ebp - 4], 0x39
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10006b0e
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x3a
push 0x480
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x3b
mov byte [ebp + 0x6b], 0
lea ecx, [ebp + 0x6b]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], str.Found
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NVAllowIR3DDriverPreStage
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], 0x100cc824
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x34], edx
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x10], 0x100d0238
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x14], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x39
lea edi, [ebp + 0x10]
call fcn.10025de0
mov dword [ebp + 0x68], 0
lea edx, [ebp + 0x68]
push edx
lea esi, [ebp]
call fcn.10016890
test al, al
je 0x10006b30
mov eax, dword [ebp + 0x68]
cmp dword [ebp + 0x58], eax
jl 0x10006b30
mov dword [ebp + 0x58], eax
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10006bce
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x3c
push 0x486
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x3d
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Value
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x44], edx
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], str.would_be_used_for
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov dword [ebp + 0x34], str.NVAllowIR3DDriverPreStage
lea edx, [ebp + 0x3c]
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x10], 0x100d024c
lea eax, [ebp + 0x34]
mov dword [ebp + 0x14], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x39
lea edi, [ebp + 0x10]
call fcn.10025de0
mov ecx, dword [ebp + 0x58]
push ecx
lea edi, [ebp]
call fcn.10016680
mov byte [ebp - 4], 0x2d
mov ecx, edi
call fcn.100165f0
mov esi, dword [ebp + 0x18]
push str.Disallow.IR3DDriver
lea edx, [ebp - 0x74]
push edx
mov ecx, dword [ebp + 0x1c]
call fcn.10016560
mov byte [ebp - 4], 0x3e
push str.NVIR3DDriverDisallow
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x3f
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x70]
push ecx
lea edx, [ebp + 0x28]
push edx
push esi
call fcn.10071b10
add esp, 0x10
mov byte [ebp + 0x6b], al
mov byte [ebp - 4], 0x3e
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10006d0f
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10006cda
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x40
push 0x48d
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x41
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Found
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov dword [ebp + 0x44], str.NVIR3DDriverDisallow
lea edx, [ebp + 0x4c]
mov dword [ebp + 0x48], edx
mov dword [ebp + 0x3c], 0x100cc824
lea eax, [ebp + 0x44]
mov dword [ebp + 0x40], eax
mov ecx, dword [ebp + 0x58]
mov dword [ebp + 0x34], ecx
lea edx, [ebp + 0x3c]
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x10], 0x100d0260
lea eax, [ebp + 0x34]
mov dword [ebp + 0x14], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x3e
lea edi, [ebp + 0x10]
call fcn.10025de0
xor edi, edi
mov dword [ebp + 0x68], edi
lea ecx, [ebp + 0x68]
push ecx
lea esi, [ebp - 0x74]
call fcn.10016890
mov ecx, dword [ebp + 0x68]
test al, al
je 0x10006cfb
cmp ecx, edi
jne 0x10006cfb
mov dword [ebp + 0x58], edi
jmp 0x10006d16
mov eax, dword [ebp + 0x58]
lea edx, [eax - 1]
cmp edx, 1
ja 0x10006d16
cmp eax, ecx
jg 0x10006d16
mov dword [ebp + 0x58], ecx
jmp 0x10006d16
mov dword [ebp + 0x58], 0
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10006dd7
sub esp, 0x1c
mov dword [ebp + 0x70], esp
mov ecx, esp
mov esi, 7
mov dword [ecx + 0x18], esi
xor edi, edi
mov dword [ecx + 0x14], edi
xor eax, eax
mov word [ecx + 4], ax
push 0x1a
push str..DisplayDriverExtSite.cpp
call fcn.10058390
mov byte [ebp - 4], 0x42
push 0x49c
sub esp, 0x1c
mov dword [ebp + 0x24], esp
mov ecx, esp
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], edi
xor edx, edx
mov word [ecx + 4], dx
push 0x2e
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058390
mov byte [ebp - 4], 0x43
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Value
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x44], edx
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], str.would_be_used_for
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov dword [ebp + 0x34], str.NVIR3DDriverDisallow
lea edx, [ebp + 0x3c]
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x10], 0x100d0274
lea eax, [ebp + 0x34]
mov dword [ebp + 0x14], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x3e
lea edi, [ebp + 0x10]
call fcn.10025de0
mov ecx, dword [ebp + 0x58]
push ecx
lea edi, [ebp - 0x74]
call fcn.10016680
push str.NVAllowIR3DDriverPreStageForOEM
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x44
or ebx, 0x100
mov dword [ebp + 0x54], ebx
lea edx, [ebp + 0x58]
push edx
lea eax, [ebp + 0x70]
push eax
lea ecx, [ebp + 0x28]
push ecx
mov edx, dword [ebp + 0x18]
push edx
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10006e23
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x10006e27
mov byte [ebp + 0x6b], 0
mov esi, 0x3e
mov dword [ebp - 4], esi
test ebx, 0x100
je 0x10006e48
and ebx, 0xfffffeff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10006eff
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10006ed3
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x45
push 0x4a2
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x46
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Found
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov dword [ebp + 0x44], str.NVAllowIR3DDriverPreStageForOEM
lea edx, [ebp + 0x4c]
mov dword [ebp + 0x48], edx
mov dword [ebp + 0x3c], 0x100d0288
lea eax, [ebp + 0x44]
mov dword [ebp + 0x40], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x3e
lea edi, [ebp + 0x3c]
call fcn.10025de0
push str.Feature.AllowIR3DDriverPreStageForOEM
mov ecx, dword [ebp + 0x1c]
push ecx
lea edx, [ebp]
push edx
call fcn.100230a0
mov byte [ebp - 4], 0x47
push 1
lea ecx, [ebp]
call fcn.10024e30
mov byte [ebp - 4], 0x3e
lea ecx, [ebp]
call fcn.10024940
push str.NVSupportPerfDriver
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x49
or ebx, 0x200
mov dword [ebp + 0x54], ebx
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x70]
push ecx
lea edx, [ebp + 0x28]
push edx
mov edi, dword [ebp + 0x18]
push edi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10006f3f
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x10006f43
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], esi
test ebx, 0x200
je 0x10006f5f
and ebx, 0xfffffdff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10007037
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x1000700b
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x4a
push 0x4aa
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x4b
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Found
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov dword [ebp + 0x44], str.NVSupportPerfDriver
lea edx, [ebp + 0x4c]
mov dword [ebp + 0x48], edx
mov dword [ebp + 0x3c], 0x100cc74c
lea eax, [ebp + 0x44]
mov dword [ebp + 0x40], eax
mov dword [ebp + 0x34], str.Feature.PerfDriver
lea ecx, [ebp + 0x3c]
mov dword [ebp + 0x38], ecx
mov dword [ebp + 0x10], 0x100d029c
lea edx, [ebp + 0x34]
mov dword [ebp + 0x14], edx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x3e
lea edi, [ebp + 0x10]
call fcn.10025de0
mov edi, dword [ebp + 0x18]
push str.Feature.PerfDriver
mov eax, dword [ebp + 0x1c]
push eax
lea ecx, [ebp]
push ecx
call fcn.100230a0
mov byte [ebp - 4], 0x4c
push 1
lea ecx, [ebp]
call fcn.10024e30
mov byte [ebp - 4], 0x3e
lea ecx, [ebp]
call fcn.10024940
push str.NVSupportDisplayUpdate
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x4e
or ebx, 0x400
mov dword [ebp + 0x54], ebx
lea edx, [ebp + 0x58]
push edx
lea eax, [ebp + 0x70]
push eax
lea ecx, [ebp + 0x28]
push ecx
push edi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10007074
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x10007078
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], esi
test ebx, 0x400
je 0x10007094
and ebx, 0xfffffbff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10007202
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10007140
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x4f
push 0x4b2
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x50
mov byte [ebp + 0x6b], 0
lea edx, [ebp + 0x6b]
mov dword [ebp + 0x30], edx
mov dword [ebp + 0x4c], str.Found
lea eax, [ebp + 0x2c]
mov dword [ebp + 0x50], eax
mov dword [ebp + 0x44], str.NVSupportDisplayUpdate
lea ecx, [ebp + 0x4c]
mov dword [ebp + 0x48], ecx
mov dword [ebp + 0x3c], 0x100cc74c
lea edx, [ebp + 0x44]
mov dword [ebp + 0x40], edx
mov dword [ebp + 0x34], str.Feature.DisplayUpdate
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x10], 0x100d02b0
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x14], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x3e
lea edi, [ebp + 0x10]
call fcn.10025de0
mov edi, dword [ebp + 0x18]
push str.Feature.DisplayUpdate
mov edx, dword [ebp + 0x1c]
push edx
lea eax, [ebp - 0x1c]
push eax
call fcn.100230a0
mov byte [ebp - 4], 0x51
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
push str.NVDisplayUpdateNotifyWhenAvailable
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x52
or ebx, 0x800
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x58]
push ecx
lea edx, [ebp + 0x70]
push edx
lea eax, [ebp + 0x28]
push eax
push edi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x1000719d
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jge 0x100071a1
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x51
test ebx, 0x800
je 0x100071c1
and ebx, 0xfffff7ff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x100071f6
push str.DisplayUpdateNotifyWhenAvailable
lea ecx, [ebp]
push ecx
mov ecx, dword [ebp + 0x1c]
call fcn.10016560
mov byte [ebp - 4], 0x53
mov edx, dword [ebp + 0x58]
push edx
lea edi, [ebp]
call fcn.10016680
mov byte [ebp - 4], 0x51
mov ecx, edi
call fcn.100165f0
mov edi, dword [ebp + 0x18]
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x1c]
call fcn.10024940
push str.NVSupportOptimus
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x55
or ebx, 0x1000
mov dword [ebp + 0x54], ebx
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x70]
push ecx
lea edx, [ebp + 0x28]
push edx
push edi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x1000723f
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x10007243
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], esi
test ebx, 0x1000
je 0x1000725f
and ebx, 0xffffefff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10007340
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x1000730b
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x56
push 0x4c7
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x57
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Found
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov dword [ebp + 0x44], str.NVSupportOptimus
lea edx, [ebp + 0x4c]
mov dword [ebp + 0x48], edx
mov dword [ebp + 0x3c], 0x100cc74c
lea eax, [ebp + 0x44]
mov dword [ebp + 0x40], eax
mov dword [ebp + 0x34], str.Feature.Optimus
lea ecx, [ebp + 0x3c]
mov dword [ebp + 0x38], ecx
mov dword [ebp + 0x10], 0x100d02c4
lea edx, [ebp + 0x34]
mov dword [ebp + 0x14], edx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x3e
lea edi, [ebp + 0x10]
call fcn.10025de0
mov edi, dword [ebp + 0x18]
push str.Feature.Optimus
mov eax, dword [ebp + 0x1c]
push eax
lea ecx, [ebp - 0x1c]
push ecx
call fcn.100230a0
mov byte [ebp - 4], 0x58
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
lea edx, [ebp + 0x1c]
push edx
call fcn.10012e20
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x1c]
call fcn.10024940
push str.NVSupportMSHybrid
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x5a
or ebx, 0x2000
mov dword [ebp + 0x54], ebx
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x70]
push ecx
lea edx, [ebp + 0x28]
push edx
push edi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x1000737d
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x10007381
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], esi
test ebx, 0x2000
je 0x1000739d
and ebx, 0xffffdfff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x1000747e
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10007449
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x5b
push 0x4d0
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x5c
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Found
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov dword [ebp + 0x44], str.NVSupportMSHybrid
lea edx, [ebp + 0x4c]
mov dword [ebp + 0x48], edx
mov dword [ebp + 0x3c], 0x100cc74c
lea eax, [ebp + 0x44]
mov dword [ebp + 0x40], eax
mov dword [ebp + 0x34], str.Feature.MSHybrid
lea ecx, [ebp + 0x3c]
mov dword [ebp + 0x38], ecx
mov dword [ebp + 0x10], 0x100d02d8
lea edx, [ebp + 0x34]
mov dword [ebp + 0x14], edx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x3e
lea edi, [ebp + 0x10]
call fcn.10025de0
mov edi, dword [ebp + 0x18]
push str.Feature.MSHybrid
mov eax, dword [ebp + 0x1c]
push eax
lea ecx, [ebp - 0x1c]
push ecx
call fcn.100230a0
mov byte [ebp - 4], 0x5d
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
lea edx, [ebp + 0x1c]
push edx
call fcn.10012e20
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x1c]
call fcn.10024940
push str.NVOptimusCheckCookie
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x5f
or ebx, 0x4000
mov dword [ebp + 0x54], ebx
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x70]
push ecx
lea edx, [ebp + 0x28]
push edx
push edi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x100074bb
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x100074bf
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], esi
test ebx, 0x4000
je 0x100074db
and ebx, 0xffffbfff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x100075b3
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10007587
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x60
push 0x4d9
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x61
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Found
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov dword [ebp + 0x44], str.NVOptimusCheckCookie
lea edx, [ebp + 0x4c]
mov dword [ebp + 0x48], edx
mov dword [ebp + 0x3c], 0x100cc74c
lea eax, [ebp + 0x44]
mov dword [ebp + 0x40], eax
mov dword [ebp + 0x34], str.CheckOptimusCookie
lea ecx, [ebp + 0x3c]
mov dword [ebp + 0x38], ecx
mov dword [ebp + 0x10], 0x100d02ec
lea edx, [ebp + 0x34]
mov dword [ebp + 0x14], edx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x3e
lea edi, [ebp + 0x10]
call fcn.10025de0
mov edi, dword [ebp + 0x18]
push str.CheckOptimusCookie
mov eax, dword [ebp + 0x1c]
push eax
lea ecx, [ebp - 0x1c]
push ecx
call fcn.100230a0
mov byte [ebp - 4], 0x62
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x1c]
call fcn.10024940
push str.NVOptimusHCloneDisabled
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x64
or ebx, 0x8000
mov dword [ebp + 0x54], ebx
lea edx, [ebp + 0x58]
push edx
lea eax, [ebp + 0x70]
push eax
lea ecx, [ebp + 0x28]
push ecx
push edi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x100075f0
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x100075f4
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], esi
test ebx, 0x8000
je 0x10007610
and ebx, 0xffff7fff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10007642
push str.NVOptimusHCloneDisabled
mov edx, dword [ebp + 0x1c]
push edx
lea eax, [ebp - 0x1c]
push eax
call fcn.100230a0
mov byte [ebp - 4], 0x65
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x1c]
call fcn.10024940
push str.NVSupportICafeLogo
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x67
or ebx, 0x10000
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x58]
push ecx
lea edx, [ebp + 0x70]
push edx
lea eax, [ebp + 0x28]
push eax
push edi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x1000767f
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x10007683
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], esi
test ebx, 0x10000
je 0x1000769f
and ebx, 0xfffeffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10007777
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x1000774b
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x68
push 0x4e8
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x69
mov byte [ebp + 0x6b], 0
lea ecx, [ebp + 0x6b]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], str.Found
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NVSupportICafeLogo
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], 0x100cc74c
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov dword [ebp + 0x34], str.ICafeLogoSupported
lea edx, [ebp + 0x3c]
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x10], 0x100d0300
lea eax, [ebp + 0x34]
mov dword [ebp + 0x14], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x3e
lea edi, [ebp + 0x10]
call fcn.10025de0
mov edi, dword [ebp + 0x18]
push str.ICafeLogoSupported
mov ecx, dword [ebp + 0x1c]
push ecx
lea edx, [ebp - 0x1c]
push edx
call fcn.100230a0
mov byte [ebp - 4], 0x6a
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x1c]
call fcn.10024940
push str.NVSupportEspresso
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x6c
or ebx, 0x20000
mov dword [ebp + 0x54], ebx
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x70]
push ecx
lea edx, [ebp + 0x28]
push edx
push edi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x100077b4
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x100077b8
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], esi
test ebx, 0x20000
je 0x100077d4
and ebx, 0xfffdffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x100078a9
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x1000787d
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x6d
push 0x4f0
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x24], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x6e
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Found
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov dword [ebp + 0x44], str.NVSupportEspresso
lea edx, [ebp + 0x4c]
mov dword [ebp + 0x48], edx
mov dword [ebp + 0x3c], 0x100cc74c
lea eax, [ebp + 0x44]
mov dword [ebp + 0x40], eax
mov dword [ebp + 0x34], str.Feature.Espresso
lea ecx, [ebp + 0x3c]
mov dword [ebp + 0x38], ecx
mov dword [ebp + 0x10], 0x100d02d8
lea edx, [ebp + 0x34]
mov dword [ebp + 0x14], edx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x3e
lea edi, [ebp + 0x10]
call fcn.10025de0
push str.Feature.Espresso
mov eax, dword [ebp + 0x1c]
push eax
lea ecx, [ebp - 0x1c]
push ecx
call fcn.100230a0
mov byte [ebp - 4], 0x6f
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x1c]
call fcn.10024940
lea edx, [ebp + 0x28]
push edx
mov eax, dword [ebp + 0x6c]
push eax
call fcn.10060ef0
add esp, 8
mov dword [ebp + 0x58], eax
push str.NVSupportKFilter
lea ecx, [ebp - 0xb0]
push ecx
mov ecx, dword [ebp + 0x1c]
call fcn.10016560
mov byte [ebp - 4], 0x71
mov edx, dword [ebp + 0x58]
push edx
lea edi, [ebp - 0xb0]
call fcn.10016680
push str.NVAllowHDAudioPreStage
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x72
or ebx, 0x40000
mov dword [ebp + 0x54], ebx
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x70]
push ecx
lea edx, [ebp + 0x28]
push edx
mov eax, dword [ebp + 0x18]
push eax
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10007923
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x10007927
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x71
test ebx, 0x40000
je 0x10007947
and ebx, 0xfffbffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10007a65
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x100079d2
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x73
push 0x4fc
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x74
mov byte [ebp + 0x6b], 0
lea ecx, [ebp + 0x6b]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], str.Found
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NVAllowHDAudioPreStage
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], 0x100d0314
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x71
lea edi, [ebp + 0x3c]
call fcn.10025de0
push str.HDAudio.Driver
lea ecx, [ebp - 0xd0]
call fcn.10024650
mov esi, eax
mov byte [ebp - 4], 0x75
mov edx, 0xb
mov word [ebp - 0x20], dx
or eax, 0xffffffff
mov word [ebp - 0x18], ax
mov byte [ebp - 4], 0x76
push str.Feature.AllowHDAudioPreStage
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp + 0x68], eax
test eax, eax
jne 0x10007a23
push eax
push 0x26b
push str.c:dvsp4_build_sw_toolswin32msvc90VC_atlmfcinclude_atlcomcli.h
push 0x8007000e
call fcn.10001ed0
mov byte [ebp - 4], 0x77
lea ecx, [ebp - 0x20]
push ecx
lea edx, [ebp + 0x68]
push edx
mov eax, dword [ebp + 0x64]
push eax
mov ecx, esi
call fcn.1000de20
mov byte [ebp - 4], 0x76
mov ecx, dword [ebp + 0x68]
push ecx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 0x75
lea edx, [ebp - 0x20]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov byte [ebp - 4], 0x71
lea ecx, [ebp - 0xd0]
call fcn.100245f0
push str.NVSupportNVWmi
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x78
or ebx, 0x80000
mov dword [ebp + 0x54], ebx
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x70]
push ecx
lea edx, [ebp + 0x28]
push edx
mov eax, dword [ebp + 0x18]
push eax
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10007ad7
mov ecx, dword [ebp + 0x58]
dec ecx
cmp ecx, 1
ja 0x10007ad7
push 0x100cc73c
lea ecx, [ebp - 0x30]
call fcn.10024650
mov dword [ebp - 4], 0x79
or ebx, 0x100000
mov dword [ebp + 0x54], ebx
push 0
lea edx, [ebp - 0x30]
push edx
lea ecx, [ebp - 0x68]
call fcn.10078130
test eax, eax
mov byte [ebp + 0x6b], 1
je 0x10007adb
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x78
test ebx, 0x100000
je 0x10007afb
and ebx, 0xffefffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp - 0x30]
call fcn.100245f0
mov dword [ebp - 4], 0x71
test ebx, 0x80000
je 0x10007b1b
and ebx, 0xfff7ffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10007c3b
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10007bc3
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x7a
push 0x504
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x7b
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Found
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov dword [ebp + 0x44], str.NVSupportNVWmi
lea edx, [ebp + 0x4c]
mov dword [ebp + 0x48], edx
mov dword [ebp + 0x3c], 0x100cc824
lea eax, [ebp + 0x44]
mov dword [ebp + 0x40], eax
mov ecx, dword [ebp + 0x58]
mov dword [ebp + 0x34], ecx
lea edx, [ebp + 0x3c]
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x20], 0x100d0328
lea eax, [ebp + 0x34]
mov dword [ebp + 0x24], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x71
lea edi, [ebp + 0x20]
call fcn.10025de0
push str.Display.NVWMI
lea ecx, [ebp - 0xd0]
call fcn.10024650
mov esi, eax
mov byte [ebp - 4], 0x7c
mov ecx, 3
mov word [ebp - 0x20], cx
mov edx, dword [ebp + 0x58]
mov dword [ebp - 0x18], edx
mov bl, 0x7d
mov byte [ebp - 4], bl
push str.Feature.NvWmi
lea ecx, [ebp + 0x68]
call fcn.10024dd0
mov byte [ebp - 4], 0x7e
lea ecx, [ebp - 0x20]
push ecx
push eax
mov edx, dword [ebp + 0x64]
push edx
mov ecx, esi
call fcn.1000de20
mov byte [ebp - 4], bl
mov eax, dword [ebp + 0x68]
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 0x7c
lea ecx, [ebp - 0x20]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov byte [ebp - 4], 0x71
lea ecx, [ebp - 0xd0]
call fcn.100245f0
mov ebx, dword [ebp + 0x54]
push str.NVSupportNVWmiForOEM
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x7f
or ebx, 0x200000
mov dword [ebp + 0x54], ebx
lea edx, [ebp + 0x58]
push edx
lea eax, [ebp + 0x70]
push eax
lea ecx, [ebp + 0x28]
push ecx
mov edx, dword [ebp + 0x18]
push edx
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10007cad
mov eax, dword [ebp + 0x58]
dec eax
cmp eax, 1
ja 0x10007cad
push 0x100cc798
lea ecx, [ebp - 0x30]
call fcn.10024650
mov dword [ebp - 4], 0x80
or ebx, 0x400000
mov dword [ebp + 0x54], ebx
push 0
lea ecx, [ebp - 0x30]
push ecx
lea ecx, [ebp - 0x68]
call fcn.10078130
test eax, eax
mov byte [ebp + 0x6b], 1
je 0x10007cb1
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x7f
test ebx, 0x400000
je 0x10007cd1
and ebx, 0xffbfffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp - 0x30]
call fcn.100245f0
mov dword [ebp - 4], 0x71
test ebx, 0x200000
je 0x10007cf1
and ebx, 0xffdfffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10007e11
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10007d99
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x81
push 0x50c
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x82
mov byte [ebp + 0x6b], 0
lea edx, [ebp + 0x6b]
mov dword [ebp + 0x30], edx
mov dword [ebp + 0x4c], str.Found
lea eax, [ebp + 0x2c]
mov dword [ebp + 0x50], eax
mov dword [ebp + 0x44], str.NVSupportNVWmiForOEM
lea ecx, [ebp + 0x4c]
mov dword [ebp + 0x48], ecx
mov dword [ebp + 0x3c], 0x100cc824
lea edx, [ebp + 0x44]
mov dword [ebp + 0x40], edx
mov eax, dword [ebp + 0x58]
mov dword [ebp + 0x34], eax
lea ecx, [ebp + 0x3c]
mov dword [ebp + 0x38], ecx
mov dword [ebp + 0x20], 0x100d0260
lea edx, [ebp + 0x34]
mov dword [ebp + 0x24], edx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x71
lea edi, [ebp + 0x20]
call fcn.10025de0
push str.Display.NVWMI
lea ecx, [ebp - 0xd0]
call fcn.10024650
mov esi, eax
mov byte [ebp - 4], 0x83
mov eax, 3
mov word [ebp - 0x20], ax
mov ecx, dword [ebp + 0x58]
mov dword [ebp - 0x18], ecx
mov bl, 0x84
mov byte [ebp - 4], bl
push str.Feature.NvWmi
lea ecx, [ebp + 0x68]
call fcn.10024dd0
mov byte [ebp - 4], 0x85
lea edx, [ebp - 0x20]
push edx
push eax
mov eax, dword [ebp + 0x64]
push eax
mov ecx, esi
call fcn.1000de20
mov byte [ebp - 4], bl
mov ecx, dword [ebp + 0x68]
push ecx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 0x83
lea edx, [ebp - 0x20]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov byte [ebp - 4], 0x71
lea ecx, [ebp - 0xd0]
call fcn.100245f0
mov ebx, dword [ebp + 0x54]
push str.NVForceClean
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x86
or ebx, 0x800000
mov dword [ebp + 0x54], ebx
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x70]
push ecx
lea edx, [ebp + 0x28]
push edx
mov eax, dword [ebp + 0x18]
push eax
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10007e51
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x10007e55
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x71
test ebx, 0x800000
je 0x10007e75
and ebx, 0xff7fffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10007f55
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10007f21
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x87
push 0x513
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x88
mov byte [ebp + 0x6b], 0
lea ecx, [ebp + 0x6b]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], str.Found
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NVForceClean
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov esi, 0x100cc74c
mov dword [ebp + 0x3c], esi
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov dword [ebp + 0x34], str.Behavior.ForceClean
lea edx, [ebp + 0x3c]
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x20], 0x100d033c
lea eax, [ebp + 0x34]
mov dword [ebp + 0x24], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x71
lea edi, [ebp + 0x20]
call fcn.10025de0
jmp 0x10007f26
mov esi, 0x100cc74c
push str.Behavior.ForceClean
mov ecx, dword [ebp + 0x1c]
push ecx
lea edx, [ebp - 0x1c]
push edx
call fcn.100230a0
mov byte [ebp - 4], 0x89
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
mov byte [ebp - 4], 0x71
lea eax, [ebp - 0x1c]
push eax
call fcn.100247f0
jmp 0x10007f5a
mov esi, 0x100cc74c
push str.NVRemoveDisplayPhantoms
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x8a
or ebx, 0x1000000
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x58]
push ecx
lea edx, [ebp + 0x70]
push edx
lea eax, [ebp + 0x28]
push eax
mov ecx, dword [ebp + 0x18]
push ecx
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10007f9a
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x10007f9e
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x71
test ebx, 0x1000000
je 0x10007fbe
and ebx, 0xfeffffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10008090
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10008063
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x8b
push 0x51b
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x8c
mov byte [ebp + 0x6b], 0
lea edx, [ebp + 0x6b]
mov dword [ebp + 0x30], edx
mov dword [ebp + 0x4c], str.Found
lea eax, [ebp + 0x2c]
mov dword [ebp + 0x50], eax
mov dword [ebp + 0x44], str.NVRemoveDisplayPhantoms
lea ecx, [ebp + 0x4c]
mov dword [ebp + 0x48], ecx
mov dword [ebp + 0x3c], esi
lea edx, [ebp + 0x44]
mov dword [ebp + 0x40], edx
mov dword [ebp + 0x34], str.RemoveDisplayPhantoms
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x20], 0x100d0350
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x24], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x71
lea edi, [ebp + 0x20]
call fcn.10025de0
push str.RemoveDisplayPhantoms
mov edx, dword [ebp + 0x1c]
push edx
lea eax, [ebp - 0x1c]
push eax
call fcn.100230a0
mov byte [ebp - 4], 0x8d
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
mov byte [ebp - 4], 0x71
lea ecx, [ebp - 0x1c]
push ecx
call fcn.100247f0
push str.NvCleanInstallOnDowngrade
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x8e
or ebx, 0x2000000
mov dword [ebp + 0x54], ebx
lea edx, [ebp + 0x58]
push edx
lea eax, [ebp + 0x70]
push eax
lea ecx, [ebp + 0x28]
push ecx
mov edx, dword [ebp + 0x18]
push edx
call fcn.10071b10
add esp, 0x10
test al, al
je 0x100080d0
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x100080d4
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x71
test ebx, 0x2000000
je 0x100080f4
and ebx, 0xfdffffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x100081c6
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10008199
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x8f
push 0x523
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x90
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Found
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov dword [ebp + 0x44], str.NvCleanInstallOnDowngrade
lea edx, [ebp + 0x4c]
mov dword [ebp + 0x48], edx
mov dword [ebp + 0x3c], esi
lea eax, [ebp + 0x44]
mov dword [ebp + 0x40], eax
mov dword [ebp + 0x34], str.CleanInstallOnDowngrade
lea ecx, [ebp + 0x3c]
mov dword [ebp + 0x38], ecx
mov dword [ebp + 0x20], 0x100d0364
lea edx, [ebp + 0x34]
mov dword [ebp + 0x24], edx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x71
lea edi, [ebp + 0x20]
call fcn.10025de0
push str.CleanInstallOnDowngrade
mov eax, dword [ebp + 0x1c]
push eax
lea ecx, [ebp - 0x1c]
push ecx
call fcn.100230a0
mov byte [ebp - 4], 0x91
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
mov byte [ebp - 4], 0x71
lea edx, [ebp - 0x1c]
push edx
call fcn.100247f0
push str.NvShowEGDowngradeMessage
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x92
or ebx, 0x4000000
mov dword [ebp + 0x54], ebx
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x70]
push ecx
lea edx, [ebp + 0x28]
push edx
mov eax, dword [ebp + 0x18]
push eax
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10008206
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x1000820a
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x71
test ebx, 0x4000000
je 0x1000822a
and ebx, 0xfbffffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x100082fc
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x100082cf
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x93
push 0x52b
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x94
mov byte [ebp + 0x6b], 0
lea ecx, [ebp + 0x6b]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], str.Found
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NvShowEGDowngradeMessage
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], esi
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov dword [ebp + 0x34], str.ShowEGDowngradeMessage
lea edx, [ebp + 0x3c]
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x20], 0x100d0378
lea eax, [ebp + 0x34]
mov dword [ebp + 0x24], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x71
lea edi, [ebp + 0x20]
call fcn.10025de0
push str.ShowEGDowngradeMessage
mov ecx, dword [ebp + 0x1c]
push ecx
lea edx, [ebp - 0x1c]
push edx
call fcn.100230a0
mov byte [ebp - 4], 0x95
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
mov byte [ebp - 4], 0x71
lea eax, [ebp - 0x1c]
push eax
call fcn.100247f0
push str.NvBlockTH1Install
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x96
or ebx, 0x8000000
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x58]
push ecx
lea edx, [ebp + 0x70]
push edx
lea eax, [ebp + 0x28]
push eax
mov ecx, dword [ebp + 0x18]
push ecx
call fcn.10071b10
add esp, 0x10
test al, al
je 0x1000833c
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x10008340
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x71
test ebx, 0x8000000
je 0x10008360
and ebx, 0xf7ffffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10008432
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10008405
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x97
push 0x533
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x98
mov byte [ebp + 0x6b], 0
lea edx, [ebp + 0x6b]
mov dword [ebp + 0x30], edx
mov dword [ebp + 0x4c], str.Found
lea eax, [ebp + 0x2c]
mov dword [ebp + 0x50], eax
mov dword [ebp + 0x44], str.NvBlockTH1Install
lea ecx, [ebp + 0x4c]
mov dword [ebp + 0x48], ecx
mov dword [ebp + 0x3c], esi
lea edx, [ebp + 0x44]
mov dword [ebp + 0x40], edx
mov dword [ebp + 0x34], str.BlockTH1Install
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x20], 0x100d038c
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x24], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x71
lea edi, [ebp + 0x20]
call fcn.10025de0
push str.BlockTH1Install
mov edx, dword [ebp + 0x1c]
push edx
lea eax, [ebp - 0x1c]
push eax
call fcn.100230a0
mov byte [ebp - 4], 0x99
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
mov byte [ebp - 4], 0x71
lea ecx, [ebp - 0x1c]
push ecx
call fcn.100247f0
push str.NVCheckVersion
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x9a
or ebx, 0x10000000
mov dword [ebp + 0x54], ebx
lea edx, [ebp + 0x58]
push edx
lea eax, [ebp + 0x70]
push eax
lea ecx, [ebp + 0x28]
push ecx
mov edx, dword [ebp + 0x18]
push edx
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10008472
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x10008476
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x71
test ebx, 0x10000000
je 0x10008496
and ebx, 0xefffffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x10008568
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x1000853b
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x9b
push 0x53b
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0x9c
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Found
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov dword [ebp + 0x44], str.NVCheckVersion
lea edx, [ebp + 0x4c]
mov dword [ebp + 0x48], edx
mov dword [ebp + 0x3c], esi
lea eax, [ebp + 0x44]
mov dword [ebp + 0x40], eax
mov dword [ebp + 0x34], str.Behavior.CheckVersion
lea ecx, [ebp + 0x3c]
mov dword [ebp + 0x38], ecx
mov dword [ebp + 0x20], 0x100d03a0
lea edx, [ebp + 0x34]
mov dword [ebp + 0x24], edx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x71
lea edi, [ebp + 0x20]
call fcn.10025de0
push str.Behavior.CheckVersion
mov eax, dword [ebp + 0x1c]
push eax
lea ecx, [ebp - 0x1c]
push ecx
call fcn.100230a0
mov byte [ebp - 4], 0x9d
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
mov byte [ebp - 4], 0x71
lea edx, [ebp - 0x1c]
push edx
call fcn.100247f0
push str.NVIntelHybridSystem
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0x9e
or ebx, 0x20000000
mov dword [ebp + 0x54], ebx
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x70]
push ecx
lea edx, [ebp + 0x28]
push edx
mov eax, dword [ebp + 0x18]
push eax
call fcn.10071b10
add esp, 0x10
test al, al
je 0x100085a8
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jne 0x100085ac
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x71
test ebx, 0x20000000
je 0x100085cc
and ebx, 0xdfffffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x1000869e
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10008671
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0x9f
push 0x543
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0xa0
mov byte [ebp + 0x6b], 0
lea ecx, [ebp + 0x6b]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], str.Found
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NVIntelHybridSystem
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], esi
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov dword [ebp + 0x34], str.System.IntelHybridSystem
lea edx, [ebp + 0x3c]
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x20], 0x100d03b4
lea eax, [ebp + 0x34]
mov dword [ebp + 0x24], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0x71
lea edi, [ebp + 0x20]
call fcn.10025de0
push str.System.IntelHybridSystem
mov ecx, dword [ebp + 0x1c]
push ecx
lea edx, [ebp - 0x1c]
push edx
call fcn.100230a0
mov byte [ebp - 4], 0xa1
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
mov byte [ebp - 4], 0x71
lea eax, [ebp - 0x1c]
push eax
call fcn.100247f0
push str.NVDefaultBPP
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0xa2
or ebx, 0x40000000
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x58]
push ecx
lea edx, [ebp + 0x70]
push edx
lea eax, [ebp + 0x28]
push eax
mov ecx, dword [ebp + 0x18]
push ecx
call fcn.10071b10
add esp, 0x10
test al, al
je 0x100086de
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jg 0x100086e2
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x71
test ebx, 0x40000000
je 0x10008702
and ebx, 0xbfffffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x100087f8
push str.DefaultBPP
lea edx, [ebp]
push edx
mov ecx, dword [ebp + 0x1c]
call fcn.10016560
mov byte [ebp - 4], 0xa3
mov dword [ebp + 0x68], 0
lea eax, [ebp + 0x68]
push eax
lea esi, [ebp]
call fcn.10016890
test al, al
je 0x10008743
mov eax, dword [ebp + 0x68]
cmp dword [ebp + 0x58], eax
jl 0x10008743
mov dword [ebp + 0x58], eax
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x100087e1
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0xa4
push 0x551
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0xa5
mov byte [ebp + 0x6b], 0
lea ecx, [ebp + 0x6b]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], str.Found
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NVDefaultBPP
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], 0x100cc824
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x34], edx
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x20], 0x100d03c8
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x24], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0xa3
lea edi, [ebp + 0x20]
call fcn.10025de0
mov edx, dword [ebp + 0x58]
push edx
lea edi, [ebp]
call fcn.10016680
mov byte [ebp - 4], 0x71
mov ecx, edi
call fcn.100165f0
push str.NVDefaultRefreshRate
lea ecx, [ebp + 0x70]
call fcn.10001a70
mov byte [ebp - 4], 0xa6
or ebx, 0x80000000
mov dword [ebp + 0x54], ebx
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x70]
push ecx
lea edx, [ebp + 0x28]
push edx
mov eax, dword [ebp + 0x18]
push eax
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10008838
cmp dword [ebp + 0x58], 0
mov byte [ebp + 0x6b], 1
jg 0x1000883c
mov byte [ebp + 0x6b], 0
mov dword [ebp - 4], 0x71
test ebx, ebx
jns 0x10008858
and ebx, 0x7fffffff
mov dword [ebp + 0x54], ebx
lea ecx, [ebp + 0x70]
call fcn.10001df0
cmp byte [ebp + 0x6b], 0
je 0x1000894e
push str.DefaultRefreshRate
lea ecx, [ebp]
push ecx
mov ecx, dword [ebp + 0x1c]
call fcn.10016560
mov bl, 0xa7
mov byte [ebp - 4], bl
mov dword [ebp + 0x68], 0
lea edx, [ebp + 0x68]
push edx
lea esi, [ebp]
call fcn.10016890
test al, al
je 0x1000889a
mov eax, dword [ebp + 0x68]
cmp dword [ebp + 0x58], eax
jl 0x1000889a
mov dword [ebp + 0x58], eax
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10008937
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0xa8
push 0x55e
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0xa9
mov byte [ebp + 0x6b], 0
lea eax, [ebp + 0x6b]
mov dword [ebp + 0x30], eax
mov dword [ebp + 0x4c], str.Found
lea ecx, [ebp + 0x2c]
mov dword [ebp + 0x50], ecx
mov dword [ebp + 0x44], str.NVDefaultRefreshRate
lea edx, [ebp + 0x4c]
mov dword [ebp + 0x48], edx
mov dword [ebp + 0x3c], 0x100cc824
lea eax, [ebp + 0x44]
mov dword [ebp + 0x40], eax
mov ecx, dword [ebp + 0x58]
mov dword [ebp + 0x34], ecx
lea edx, [ebp + 0x3c]
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x20], 0x100d0260
lea eax, [ebp + 0x34]
mov dword [ebp + 0x24], eax
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], bl
lea edi, [ebp + 0x20]
call fcn.10025de0
mov ecx, dword [ebp + 0x58]
push ecx
lea edi, [ebp]
call fcn.10016680
mov byte [ebp - 4], 0x71
mov ecx, edi
call fcn.100165f0
push str.NVDefaultHorizontal
lea ecx, [ebp + 0x68]
call fcn.10001a70
mov byte [ebp - 4], 0xaa
mov dword [ebp + 0xc], 1
lea edx, [ebp + 0x58]
push edx
lea eax, [ebp + 0x68]
push eax
lea ecx, [ebp + 0x28]
push ecx
mov edx, dword [ebp + 0x18]
push edx
call fcn.10071b10
add esp, 0x10
test al, al
je 0x1000898c
cmp dword [ebp + 0x58], 0
jle 0x1000898c
mov bl, 1
jmp 0x1000898e
xor bl, bl
mov dword [ebp - 4], 0x71
mov eax, 1
mov dword [ebp + 0xc], eax
and eax, 0xfffffffe
mov dword [ebp + 0xc], eax
lea ecx, [ebp + 0x68]
call fcn.10001df0
test bl, bl
je 0x10008a9f
push str.DefaultHorizontal
lea eax, [ebp]
push eax
mov ecx, dword [ebp + 0x1c]
call fcn.10016560
mov bl, 0xab
mov byte [ebp - 4], bl
mov dword [ebp + 0x68], 0
lea ecx, [ebp + 0x68]
push ecx
lea esi, [ebp]
call fcn.10016890
test al, al
je 0x100089eb
mov eax, dword [ebp + 0x68]
cmp dword [ebp + 0x58], eax
jl 0x100089eb
mov dword [ebp + 0x58], eax
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10008a88
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0xac
push 0x56b
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0xad
mov byte [ebp + 0x6b], 0
lea edx, [ebp + 0x6b]
mov dword [ebp + 0x30], edx
mov dword [ebp + 0x4c], str.Found
lea eax, [ebp + 0x2c]
mov dword [ebp + 0x50], eax
mov dword [ebp + 0x44], str.NVDefaultHorizontal
lea ecx, [ebp + 0x4c]
mov dword [ebp + 0x48], ecx
mov dword [ebp + 0x3c], 0x100cc824
lea edx, [ebp + 0x44]
mov dword [ebp + 0x40], edx
mov eax, dword [ebp + 0x58]
mov dword [ebp + 0x34], eax
lea ecx, [ebp + 0x3c]
mov dword [ebp + 0x38], ecx
mov dword [ebp + 0x20], 0x100d03dc
lea edx, [ebp + 0x34]
mov dword [ebp + 0x24], edx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], bl
lea edi, [ebp + 0x20]
call fcn.10025de0
mov eax, dword [ebp + 0x58]
push eax
lea edi, [ebp]
call fcn.10016680
mov byte [ebp - 4], 0x71
mov ecx, edi
call fcn.100165f0
push str.NVDefaultVertical
lea ecx, [ebp + 0x68]
call fcn.10001a70
mov byte [ebp - 4], 0xae
or dword [ebp + 0xc], 2
lea ecx, [ebp + 0x58]
push ecx
lea edx, [ebp + 0x68]
push edx
lea eax, [ebp + 0x28]
push eax
mov ecx, dword [ebp + 0x18]
push ecx
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10008ada
cmp dword [ebp + 0x58], 0
jle 0x10008ada
mov bl, 1
jmp 0x10008adc
xor bl, bl
mov dword [ebp - 4], 0x71
test byte [ebp + 0xc], 2
je 0x10008af5
and dword [ebp + 0xc], 0xfffffffd
lea ecx, [ebp + 0x68]
call fcn.10001df0
test bl, bl
je 0x10008be9
push str.DefaultVertical
lea edx, [ebp]
push edx
mov ecx, dword [ebp + 0x1c]
call fcn.10016560
mov bl, 0xaf
mov byte [ebp - 4], bl
mov dword [ebp + 0x68], 0
lea eax, [ebp + 0x68]
push eax
lea esi, [ebp]
call fcn.10016890
test al, al
je 0x10008b35
mov eax, dword [ebp + 0x68]
cmp dword [ebp + 0x58], eax
jl 0x10008b35
mov dword [ebp + 0x58], eax
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10008bd2
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0xb0
push 0x578
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x6c], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0xb1
mov byte [ebp + 0x6b], 0
lea ecx, [ebp + 0x6b]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], str.Found
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NVDefaultVertical
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], 0x100cc824
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x34], edx
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x20], 0x100d01d4
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x24], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], bl
lea edi, [ebp + 0x20]
call fcn.10025de0
mov edx, dword [ebp + 0x58]
push edx
lea edi, [ebp]
call fcn.10016680
mov byte [ebp - 4], 0x71
mov ecx, edi
call fcn.100165f0
push str.1D8F38E4_E32F_4784_83C9_7E94B5F26155
lea ecx, [ebp + 0x68]
call fcn.10001a70
mov byte [ebp - 4], 0xb2
lea eax, [ebp + 0x68]
push eax
lea ecx, [ebp + 0x28]
push ecx
mov edx, dword [ebp + 0x18]
push edx
lea eax, [ebp - 0x38]
push eax
call fcn.10071e20
add esp, 0x10
mov byte [ebp - 4], 0xb4
lea ecx, [ebp + 0x68]
call fcn.10001df0
mov ecx, dword [ebp - 0x38]
cmp dword [ecx - 0xc], 0
je 0x10008dce
push str.Display.GFExperience
lea ecx, [ebp - 0xd0]
call fcn.10024650
mov esi, eax
mov byte [ebp - 4], 0xb5
lea ecx, [ebp + 0x70]
call fcn.1001d6a0
mov byte [ebp - 4], 0xb6
mov eax, dword [eax]
xor edx, edx
mov word [ebp - 0x20], dx
push eax
lea ecx, [ebp - 0x20]
call fcn.10021d60
mov bl, 0xb7
mov byte [ebp - 4], bl
push str.1D8F38E4_E32F_4784_83C9_7E94B5F26155
lea ecx, [ebp + 0x68]
call fcn.10024dd0
mov byte [ebp - 4], 0xb8
lea ecx, [ebp - 0x20]
push ecx
push eax
mov edx, dword [ebp + 0x64]
push edx
mov ecx, esi
call fcn.1000de20
mov byte [ebp - 4], bl
mov eax, dword [ebp + 0x68]
push eax
mov edi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
call edi
mov byte [ebp - 4], 0xb6
lea ecx, [ebp - 0x20]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov byte [ebp - 4], 0xb5
lea ecx, [ebp + 0x70]
call fcn.10001df0
mov byte [ebp - 4], 0xb4
lea ecx, [ebp - 0xd0]
call fcn.100245f0
push str.Display.GFExperience
lea ecx, [ebp - 0x11c]
call fcn.10024650
mov esi, eax
mov byte [ebp - 4], 0xb9
xor edx, edx
mov word [ebp - 0x20], dx
mov eax, dword [ebp - 0x38]
push eax
lea ecx, [ebp - 0x20]
call fcn.10021d60
mov bl, 0xba
mov byte [ebp - 4], bl
push str.VideoRecordingOnOffKeys
lea ecx, [ebp + 0x68]
call fcn.10024dd0
mov byte [ebp - 4], 0xbb
lea ecx, [ebp - 0x20]
push ecx
push eax
mov edx, dword [ebp + 0x64]
push edx
mov ecx, esi
call fcn.1000de20
mov byte [ebp - 4], bl
mov eax, dword [ebp + 0x68]
push eax
call edi
mov byte [ebp - 4], 0xb9
lea ecx, [ebp - 0x20]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov byte [ebp - 4], 0xb4
lea ecx, [ebp - 0x11c]
call fcn.100245f0
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10008dce
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x68], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0xbc
push 0x586
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0xbd
mov byte [ebp + 0x67], 0
lea edx, [ebp + 0x67]
mov dword [ebp + 0x30], edx
mov dword [ebp + 0x4c], str.Found
lea eax, [ebp + 0x2c]
mov dword [ebp + 0x50], eax
mov dword [ebp + 0x44], str.1D8F38E4_E32F_4784_83C9_7E94B5F26155
lea ecx, [ebp + 0x4c]
mov dword [ebp + 0x48], ecx
mov dword [ebp + 0x3c], 0x100cc824
lea edx, [ebp + 0x44]
mov dword [ebp + 0x40], edx
lea eax, [ebp - 0x38]
mov dword [ebp + 0x34], eax
lea ecx, [ebp + 0x3c]
mov dword [ebp + 0x38], ecx
mov dword [ebp + 0x20], 0x100d03f0
lea edx, [ebp + 0x34]
mov dword [ebp + 0x24], edx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0xb4
lea edi, [ebp + 0x20]
call fcn.10025de0
mov esi, dword [ebp + 0x18]
lea eax, [ebp - 0x68]
push eax
push str.NVSupportGFExperience
lea ecx, [ebp - 0xfc]
push ecx
call fcn.10021cd0
add esp, 0xc
mov byte [ebp - 4], 0xbe
lea ecx, [ebp - 0xfc]
call fcn.100222a0
lea edx, [ebp + 0x58]
push edx
push eax
lea eax, [ebp + 0x28]
push eax
push esi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10008eea
cmp dword [ebp + 0x58], 0
je 0x10008eea
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10008ebd
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x68], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0xbf
push 0x590
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0xc0
mov byte [ebp + 0x67], 0
lea ecx, [ebp + 0x67]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], str.Found
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
lea eax, [ebp - 0xfc]
mov dword [ebp + 0x44], eax
lea ecx, [ebp + 0x4c]
mov dword [ebp + 0x48], ecx
mov dword [ebp + 0x3c], 0x100cc74c
lea edx, [ebp + 0x44]
mov dword [ebp + 0x40], edx
mov dword [ebp + 0x34], str.Feature.GFExperience
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x20], 0x100d0404
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x24], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0xbe
lea edi, [ebp + 0x20]
call fcn.10025de0
push str.Feature.GFExperience
mov edx, dword [ebp + 0x1c]
push edx
lea eax, [ebp - 0x1c]
push eax
call fcn.100230a0
mov byte [ebp - 4], 0xc1
push 1
lea ecx, [ebp - 0x1c]
call fcn.10024e30
mov byte [ebp - 4], 0xbe
lea ecx, [ebp - 0x1c]
push ecx
call fcn.100247f0
push 1
push str.Feature.ShadowPlay
mov edx, dword [ebp + 0x1c]
push edx
lea eax, [ebp - 0xa4]
push eax
call fcn.10024f10
mov byte [ebp - 4], 0xc2
push str.NVSupportShadowPlay
lea ecx, [ebp + 0x64]
call fcn.10001a70
mov byte [ebp - 4], 0xc3
or dword [ebp + 0xc], 4
lea ecx, [ebp + 0x58]
push ecx
lea edx, [ebp + 0x64]
push edx
lea eax, [ebp + 0x28]
push eax
push esi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x10008f3d
cmp dword [ebp + 0x58], 0
jne 0x10008f3d
mov bl, 1
jmp 0x10008f3f
xor bl, bl
mov dword [ebp - 4], 0xc2
test byte [ebp + 0xc], 4
je 0x10008f58
and dword [ebp + 0xc], 0xfffffffb
lea ecx, [ebp + 0x64]
call fcn.10001df0
test bl, bl
je 0x1000900b
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10008ffe
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x68], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0xc4
push 0x59d
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0xc5
mov byte [ebp + 0x67], 0
lea ecx, [ebp + 0x67]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], str.Found
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NVSupportShadowPlay
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], str.with_value_of
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x34], edx
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x20], 0x100d0418
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x24], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0xc2
lea edi, [ebp + 0x20]
call fcn.10025de0
push 0
lea ecx, [ebp - 0xa4]
call fcn.10024e30
push 1
push str.Feature.NvStreamSrv
mov edx, dword [ebp + 0x1c]
push edx
lea eax, [ebp - 0x98]
push eax
call fcn.10024f10
mov byte [ebp - 4], 0xc6
push str.NVSupportNvStreamSrv
lea ecx, [ebp + 0x64]
call fcn.10001a70
mov byte [ebp - 4], 0xc7
or dword [ebp + 0xc], 8
lea ecx, [ebp + 0x58]
push ecx
lea edx, [ebp + 0x64]
push edx
lea eax, [ebp + 0x28]
push eax
push esi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x1000905e
cmp dword [ebp + 0x58], 0
jne 0x1000905e
mov bl, 1
jmp 0x10009060
xor bl, bl
mov dword [ebp - 4], 0xc6
test byte [ebp + 0xc], 8
je 0x10009079
and dword [ebp + 0xc], 0xfffffff7
lea ecx, [ebp + 0x64]
call fcn.10001df0
test bl, bl
je 0x1000912c
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x1000911f
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x68], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0xc8
push 0x5a5
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0xc9
mov byte [ebp + 0x67], 0
lea ecx, [ebp + 0x67]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], str.Found
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NVSupportNvStreamSrv
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], str.with_value_of
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x34], edx
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x20], 0x100d042c
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x24], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0xc6
lea edi, [ebp + 0x20]
call fcn.10025de0
push 0
lea ecx, [ebp - 0x98]
call fcn.10024e30
push 1
push str.Feature.AllowMCVirtualAudioPreStage
mov edx, dword [ebp + 0x1c]
push edx
lea eax, [ebp - 0x8c]
push eax
call fcn.10024f10
mov byte [ebp - 4], 0xca
push str.NVAllowMCVirtualAudioPreStage
lea ecx, [ebp + 0x64]
call fcn.10001a70
mov byte [ebp - 4], 0xcb
or dword [ebp + 0xc], 0x10
lea ecx, [ebp + 0x58]
push ecx
lea edx, [ebp + 0x64]
push edx
lea eax, [ebp + 0x28]
push eax
push esi
call fcn.10071b10
add esp, 0x10
test al, al
je 0x1000917f
cmp dword [ebp + 0x58], 0
jne 0x1000917f
mov bl, 1
jmp 0x10009181
xor bl, bl
mov dword [ebp - 4], 0xca
test byte [ebp + 0xc], 0x10
je 0x1000919a
and dword [ebp + 0xc], 0xffffffef
lea ecx, [ebp + 0x64]
call fcn.10001df0
test bl, bl
je 0x1000924d
call fcn.100021b0
cmp dword [eax + 0x1c], 5
jl 0x10009240
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x68], esp
push str..DisplayDriverExtSite.cpp
call fcn.10058480
mov byte [ebp - 4], 0xcc
push 0x5ad
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 0x70], esp
push str.CDisplayDriverExtSite::MapINFFlagsToProperties
call fcn.10058480
mov byte [ebp - 4], 0xcd
mov byte [ebp + 0x67], 0
lea ecx, [ebp + 0x67]
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x4c], str.Found
lea edx, [ebp + 0x2c]
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x44], str.NVAllowMCVirtualAudioPreStage
lea eax, [ebp + 0x4c]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x3c], str.with_value_of
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x40], ecx
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x34], edx
lea eax, [ebp + 0x3c]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x20], 0x100d0440
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x24], ecx
push 5
call fcn.100021b0
push eax
mov byte [ebp - 4], 0xca
lea edi, [ebp + 0x20]
call fcn.10025de0
push 0
lea ecx, [ebp - 0x8c]
call fcn.10024e30
mov byte [ebp - 4], 0xc6
lea edx, [ebp - 0x8c]
push edx
call fcn.100247f0
mov byte [ebp - 4], 0xc2
lea eax, [ebp - 0x98]
push eax
call fcn.100247f0
mov byte [ebp - 4], 0xbe
lea ecx, [ebp - 0xa4]
push ecx
call fcn.100247f0
mov byte [ebp - 4], 0xb4
lea ecx, [ebp - 0xfc]
call fcn.100245f0
mov byte [ebp - 4], 0x71
lea ecx, [ebp - 0x38]
call fcn.10001df0
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0xb0]
call fcn.100165f0
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x74]
call fcn.100165f0
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x80]
call fcn.100165f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x68]
call fcn.100245f0
mov byte [ebp - 4], 0xf
lea edx, [ebp - 0xdc]
push edx
call fcn.10022a60
mov byte [ebp - 4], 9
lea eax, [ebp - 0x40]
push eax
call fcn.100226d0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x3c]
call fcn.1001e6b0
mov byte [ebp - 4], 4
lea ecx, [ebp + 0x28]
call fcn.10001df0
mov byte [ebp - 4], 3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov ecx, dword [ebp + 0x18]
push ecx
call dword [sym.imp.SETUPAPI.dll_SetupCloseInfFile]
or edi, 0xffffffff
mov dword [ebp - 0x44], edi
push esi
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov dword [ebp - 4], edi
lea edx, [ebp + 0x1c]
push edx
call fcn.100226d0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add ebp, 0x5c
mov esp, ebp
pop ebp
ret 0x10