Function at 0x4183b3
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0x68
mov eax, 0x49d11c
call fcn.0045201c
mov dword [ebp - 0x70], ecx
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x68]
mov ebx, dword [ebp + 0x10]
mov dword [ebp - 0x74], eax
call fcn.00401a80
and dword [ebp - 4], 0
lea ecx, [ebp - 0x50]
call fcn.00401a80
mov byte [ebp - 4], 1
test ebx, ebx
jne 0x4183ee
xor bl, bl
jmp 0x418a22
mov esi, dword [ebp + 0xc]
lea ecx, [ebp - 0x68]
mov edx, esi
call fcn.00417266
lea edx, [esi + 1]
lea ecx, [ebp - 0x50]
call fcn.00417266
push dword [ebx + 4]
lea ecx, [ebp - 0x38]
push str.DisplayDevice
call fcn.00416196
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x38]
push str.Handle
call fcn.00416f70
lea ecx, [ebx + 0xc]
lea esi, [eax + 0x1c]
call fcn.00402109
mov edx, esi
mov ecx, eax
call fcn.0040a8ec
push str.Description
lea ecx, [ebp - 0x38]
call fcn.00416f70
lea ecx, [ebx + 0x24]
lea esi, [eax + 0x1c]
call fcn.00402109
mov edx, esi
mov ecx, eax
call fcn.0040a8ec
push str.FullDeviceID
lea ecx, [ebp - 0x38]
call fcn.00416f70
lea ecx, [ebx + 0x54]
lea esi, [eax + 0x1c]
call fcn.00402109
mov edx, esi
mov ecx, eax
call fcn.0040a8ec
push str.IsNVIDIADriver
lea ecx, [ebp - 0x38]
call fcn.00416f70
cmp byte [ebx + 0x7c], 0
mov edi, 0x4ba9bc
mov edx, edi
mov esi, 0x4ba9c0
cmove edx, esi
push edx
lea ecx, [eax + 0x1c]
call fcn.004016ad
push str.DeviceName
lea ecx, [ebp - 0x38]
call fcn.00416f70
lea ecx, [ebx + 0x3c]
lea esi, [eax + 0x1c]
call fcn.00402109
mov edx, esi
mov ecx, eax
call fcn.0040a8ec
push str.VendorID
lea ecx, [ebp - 0x38]
call fcn.00416f70
push dword [ebx + 0x6c]
mov esi, 0x4ba9cc
add eax, 0x1c
push esi
push eax
call fcn.0040ad41
add esp, 0xc
lea ecx, [ebp - 0x38]
push str.DeviceID
call fcn.00416f70
push dword [ebx + 0x70]
add eax, 0x1c
push esi
push eax
call fcn.0040ad41
add esp, 0xc
lea ecx, [ebp - 0x38]
push str.SUBSYS
call fcn.00416f70
push dword [ebx + 0x74]
add eax, 0x1c
push esi
push eax
call fcn.0040ad41
add esp, 0xc
lea ecx, [ebp - 0x38]
push 0x4bb23c
call fcn.00416f70
push dword [ebx + 0x78]
add eax, 0x1c
push esi
push eax
call fcn.0040ad41
add esp, 0xc
cmp byte [ebx + 0x7c], 0
je 0x418738
push str.Title
lea ecx, [ebp - 0x38]
call fcn.00416f70
lea ecx, [ebx + 0x80]
lea esi, [eax + 0x1c]
call fcn.00402109
mov edx, esi
mov ecx, eax
call fcn.0040a8ec
push str.GeForcePackageVersion
lea ecx, [ebp - 0x38]
call fcn.00416f70
lea ecx, [ebx + 0x98]
lea esi, [eax + 0x1c]
call fcn.00402109
mov edx, esi
mov ecx, eax
call fcn.0040a8ec
push str.GPUCount
lea ecx, [ebp - 0x38]
call fcn.00416f70
push dword [ebx + 0xb8]
mov esi, 0x4ba9c4
add eax, 0x1c
push esi
push eax
call fcn.0040ad41
add esp, 0xc
lea ecx, [ebp - 0x38]
push str.IsSLIEnabled
call fcn.00416f70
cmp byte [ebx + 0xb0], 0
mov ecx, 0x4ba9c0
mov edx, edi
cmove edx, ecx
push edx
lea ecx, [eax + 0x1c]
call fcn.004016ad
push str.SLIWay
lea ecx, [ebp - 0x38]
call fcn.00416f70
push dword [ebx + 0xbc]
add eax, 0x1c
push esi
push eax
call fcn.0040ad41
add esp, 0xc
lea ecx, [ebp - 0x38]
push str.IsDisplayDriverVersionPure
call fcn.00416f70
cmp byte [ebx + 0xb1], 0
mov ecx, 0x4ba9c0
mov edx, edi
cmove edx, ecx
push edx
lea ecx, [eax + 0x1c]
call fcn.004016ad
push str.DrvSecurityLevel
lea ecx, [ebp - 0x38]
call fcn.00416f70
push dword [ebx + 0xb4]
add eax, 0x1c
push esi
push eax
call fcn.0040ad41
add esp, 0xc
lea ecx, [ebp - 0x38]
push str.DrvCompileType
call fcn.00416f70
mov ecx, dword [ebx + 0xc0]
sub ecx, 1
je 0x41867c
sub ecx, 1
je 0x418675
sub ecx, 1
je 0x41866e
mov ecx, 0x4b4498
jmp 0x418681
mov ecx, str.Develop
jmp 0x418681
mov ecx, str.Release
jmp 0x418681
mov ecx, str.Debug
lea edx, [eax + 0x1c]
call fcn.0040a8ec
mov eax, dword [ebx + 0xc8]
xor esi, esi
sub eax, dword [ebx + 0xc4]
sar eax, 2
mov dword [ebp - 0x6c], esi
test eax, eax
je 0x418738
lea ecx, [ebp - 0x38]
call fcn.00416feb
mov ecx, dword [ebx + 0xc4]
mov edi, eax
push 0xa
push 0
push dword [ebp - 0x6c]
mov esi, dword [ecx + esi*4]
mov ecx, edi
push 0x4bac68
call fcn.00416700
push str.DrvFileInfo
push str.name
mov ecx, edi
call fcn.00416ca0
mov ecx, esi
call fcn.00402109
push eax
push str.file_name
mov ecx, edi
call fcn.00416ca0
lea ecx, [esi + 0x18]
call fcn.00402109
push eax
push str.file_version
mov ecx, edi
call fcn.00416ca0
lea ecx, [esi + 0x30]
call fcn.00402109
push eax
push str.file_date
mov ecx, edi
call fcn.00416ca0
mov eax, dword [ebx + 0xc8]
mov esi, dword [ebp - 0x6c]
sub eax, dword [ebx + 0xc4]
inc esi
sar eax, 2
mov dword [ebp - 0x6c], esi
cmp esi, eax
jb 0x4186a5
mov eax, dword [ebx + 0xe0]
sub eax, dword [ebx + 0xdc]
push 0x14
cdq
pop ecx
idiv ecx
and dword [ebp - 0x6c], 0
test eax, eax
je 0x41887f
xor edi, edi
lea ecx, [ebp - 0x38]
call fcn.00416feb
push 0xa
push 0
push dword [ebp - 0x6c]
mov esi, eax
push 0x4bac68
mov ecx, esi
call fcn.00416700
push str.VideoConfig
push str.name
mov ecx, esi
call fcn.00416ca0
mov eax, dword [ebx + 0xdc]
mov ecx, esi
push 0xa
push 0
push dword [eax + edi]
push str.width
call fcn.00416700
mov eax, dword [ebx + 0xdc]
mov ecx, esi
push 0xa
push 0
push dword [eax + edi + 4]
push str.height
call fcn.00416700
mov eax, dword [ebx + 0xdc]
mov ecx, esi
push 0xa
push 0
push dword [eax + edi + 0xc]
push str.bitsperpixel
call fcn.00416700
mov eax, dword [ebx + 0xdc]
mov ecx, esi
push 0xa
push 0
push dword [eax + edi + 8]
push str.displayfrequency
call fcn.00416700
mov eax, dword [ebx + 0xdc]
mov ecx, 0x4ba9bc
cmp byte [eax + edi + 0x10], 0
mov eax, 0x4ba9c0
cmove ecx, eax
push ecx
push str.preferred
mov ecx, esi
call fcn.00416ca0
mov eax, dword [ebx + 0xdc]
mov ecx, 0x4ba9bc
cmp byte [eax + edi + 0x11], 0
mov eax, 0x4ba9c0
cmove ecx, eax
push ecx
push 0x4bb400
mov ecx, esi
call fcn.00416ca0
mov eax, dword [ebx + 0xdc]
mov ecx, 0x4ba9bc
cmp byte [eax + edi + 0x12], 0
mov eax, 0x4ba9c0
cmove ecx, eax
push ecx
push str.mosaic
mov ecx, esi
call fcn.00416ca0
mov eax, dword [ebx + 0xe0]
sub eax, dword [ebx + 0xdc]
push 0x14
pop esi
cdq
add edi, esi
idiv esi
mov ecx, dword [ebp - 0x6c]
inc ecx
mov dword [ebp - 0x6c], ecx
cmp ecx, eax
jb 0x418758
mov eax, dword [ebx + 0xd4]
xor edi, edi
sub eax, dword [ebx + 0xd0]
sar eax, 2
mov dword [ebp - 0x6c], edi
test eax, eax
je 0x4189eb
lea ecx, [ebp - 0x38]
call fcn.00416feb
mov ecx, dword [ebx + 0xd0]
mov esi, eax
push 0xa
push 0
push dword [ebp - 0x6c]
mov edi, dword [ecx + edi*4]
mov ecx, esi
push 0x4bac68
call fcn.00416700
push str.Monitor
push str.name
mov ecx, esi
call fcn.00416ca0
lea ecx, [edi + 0x30]
call fcn.00402109
push eax
push str.caption
mov ecx, esi
call fcn.00416ca0
lea ecx, [edi + 0x48]
call fcn.004063ed
test al, al
jne 0x418908
lea ecx, [edi + 0x48]
call fcn.00402109
push eax
push str.status
mov ecx, esi
call fcn.00416ca0
mov ecx, edi
call fcn.00402109
push eax
push str.device_id
mov ecx, esi
call fcn.00416ca0
lea ecx, [edi + 0x18]
call fcn.00402109
push eax
push str.device_description
mov ecx, esi
call fcn.00416ca0
push 0xa
push 0
push dword [edi + 0x68]
mov ecx, esi
push str.screen_height
call fcn.004167f0
push 0xa
push 0
push dword [edi + 0x6c]
mov ecx, esi
push str.screen_width
call fcn.004167f0
push 0xa
push 0
push dword [edi + 0x60]
mov ecx, esi
push str.x_position
call fcn.004167f0
push 0xa
push 0
push dword [edi + 0x64]
mov ecx, esi
push str.y_position
call fcn.004167f0
push 0xa
push 0
push dword [edi + 0x74]
mov ecx, esi
push str.bits_per_pixel
call fcn.004167f0
push 0xa
push 0x4ba930
push dword [edi + 0x70]
mov ecx, esi
push str.frequency
call fcn.004167f0
movzx eax, byte [edi + 0x78]
mov ecx, esi
push eax
push str.VRRCapable
call fcn.00416af0
push 0x10
push 0
push dword [edi + 0xfc]
mov ecx, esi
push str.nvApiDisplayId
call fcn.00416700
mov eax, dword [ebx + 0xd4]
mov edi, dword [ebp - 0x6c]
sub eax, dword [ebx + 0xd0]
inc edi
sar eax, 2
mov dword [ebp - 0x6c], edi
cmp edi, eax
jb 0x41889b
mov ecx, dword [ebp - 0x70]
add ecx, 4
call fcn.00402109
push eax
lea ecx, [ebp - 0x50]
call fcn.00402109
push eax
lea ecx, [ebp - 0x68]
call fcn.00402109
push eax
push dword [ebp - 0x74]
lea ecx, [ebp - 0x38]
call fcn.00417068
xor ebx, ebx
inc ebx
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x38]
call fcn.00416e9a
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x50]
call fcn.004020b0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x68]
call fcn.004020b0
mov al, bl
call fcn.00451fc5
ret 0xc