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

Disassembly:
push 0x68
mov eax, 0x47a68e
call fcn.00450819
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.00407270
and dword [ebp - 4], 0
lea ecx, [ebp - 0x50]
call fcn.00407270
mov byte [ebp - 4], 1
test ebx, ebx
jne 0x41bb7f
xor bl, bl
jmp 0x41c160
mov esi, dword [ebp + 0xc]
lea ecx, [ebp - 0x68]
mov edx, esi
call fcn.0041ab48
lea edx, [esi + 1]
lea ecx, [ebp - 0x50]
call fcn.0041ab48
push dword [ebx + 4]
lea ecx, [ebp - 0x38]
push str.DisplayDevice
call fcn.0041a005
mov byte [ebp - 4], 2
lea eax, [ebx + 0xc]
push eax
push str.Handle
lea ecx, [ebp - 0x38]
call fcn.0041a8a6
mov ecx, eax
call fcn.0041a3ea
lea eax, [ebx + 0x24]
push eax
push str.Description
lea ecx, [ebp - 0x38]
call fcn.0041a8a6
mov ecx, eax
call fcn.0041a3ea
lea eax, [ebx + 0x54]
push eax
push str.FullDeviceID
lea ecx, [ebp - 0x38]
call fcn.0041a8a6
mov ecx, eax
call fcn.0041a3ea
movzx eax, byte [ebx + 0x7c]
lea ecx, [ebp - 0x38]
push eax
push str.IsNVIDIADriver
call fcn.0041a8a6
mov ecx, eax
call fcn.0041a33c
lea eax, [ebx + 0x3c]
push eax
push str.DeviceName
lea ecx, [ebp - 0x38]
call fcn.0041a8a6
mov ecx, eax
call fcn.0041a3ea
mov esi, dword [ebx + 0x6c]
lea ecx, [ebp - 0x38]
push str.VendorID
call fcn.0041a8a6
push esi
mov edi, 0x496594
add eax, 0x1c
push edi
push eax
call fcn.0040dd13
mov esi, dword [ebx + 0x70]
lea ecx, [ebp - 0x38]
add esp, 0xc
push str.DeviceID
call fcn.0041a8a6
push esi
add eax, 0x1c
push edi
push eax
call fcn.0040dd13
mov esi, dword [ebx + 0x74]
lea ecx, [ebp - 0x38]
add esp, 0xc
push str.SUBSYS
call fcn.0041a8a6
push esi
add eax, 0x1c
push edi
push eax
call fcn.0040dd13
mov esi, dword [ebx + 0x78]
add esp, 0xc
push 0x496dfc
lea ecx, [ebp - 0x38]
call fcn.0041a8a6
push esi
add eax, 0x1c
push edi
push eax
call fcn.0040dd13
add esp, 0xc
cmp byte [ebx + 0x7c], 0
je 0x41be76
lea eax, [ebx + 0x80]
push eax
push str.Title
lea ecx, [ebp - 0x38]
call fcn.0041a8a6
mov ecx, eax
call fcn.0041a3ea
lea eax, [ebx + 0x98]
push eax
push str.GeForcePackageVersion
lea ecx, [ebp - 0x38]
call fcn.0041a8a6
mov ecx, eax
call fcn.0041a3ea
mov esi, dword [ebx + 0xb8]
lea ecx, [ebp - 0x38]
push str.GPUCount
call fcn.0041a8a6
push esi
mov edi, 0x49658c
add eax, 0x1c
push edi
push eax
call fcn.0040dd13
movzx eax, byte [ebx + 0xb0]
lea ecx, [ebp - 0x38]
add esp, 0xc
push eax
push str.IsSLIEnabled
call fcn.0041a8a6
mov ecx, eax
call fcn.0041a33c
mov esi, dword [ebx + 0xbc]
lea ecx, [ebp - 0x38]
push str.SLIWay
call fcn.0041a8a6
push esi
add eax, 0x1c
push edi
push eax
call fcn.0040dd13
movzx eax, byte [ebx + 0xb1]
lea ecx, [ebp - 0x38]
add esp, 0xc
push eax
push str.IsDisplayDriverVersionPure
call fcn.0041a8a6
mov ecx, eax
call fcn.0041a33c
mov esi, dword [ebx + 0xb4]
lea ecx, [ebp - 0x38]
push str.DrvSecurityLevel
call fcn.0041a8a6
push esi
add eax, 0x1c
push edi
push eax
call fcn.0040dd13
mov eax, dword [ebx + 0xc0]
add esp, 0xc
sub eax, 1
je 0x41bdab
sub eax, 1
je 0x41bda4
sub eax, 1
je 0x41bd9d
mov esi, 0x48ee0c
jmp 0x41bdb0
mov esi, str.Develop
jmp 0x41bdb0
mov esi, str.Release
jmp 0x41bdb0
mov esi, str.Debug
push str.DrvCompileType
lea ecx, [ebp - 0x38]
call fcn.0041a8a6
mov ecx, esi
lea edx, [eax + 0x1c]
call fcn.0040d738
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 0x41be76
lea ecx, [ebp - 0x38]
call fcn.0041a94b
push 0xa
mov edi, eax
mov eax, dword [ebx + 0xc4]
push 0
push dword [ebp - 0x6c]
mov ecx, edi
mov esi, dword [eax + esi*4]
push 0x491ab8
call fcn.0041a475
push str.DrvFileInfo
push str.name
mov ecx, edi
call fcn.0041a6c8
mov ecx, esi
call fcn.004071ba
push eax
push str.file_name
mov ecx, edi
call fcn.0041a6c8
lea ecx, [esi + 0x18]
call fcn.004071ba
push eax
push str.file_version
mov ecx, edi
call fcn.0041a6c8
lea ecx, [esi + 0x30]
call fcn.004071ba
push eax
push str.file_date
mov ecx, edi
call fcn.0041a6c8
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 0x41bde3
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 0x41bfbd
xor edi, edi
lea ecx, [ebp - 0x38]
call fcn.0041a94b
push 0xa
push 0
push dword [ebp - 0x6c]
mov esi, eax
push 0x491ab8
mov ecx, esi
call fcn.0041a475
push str.VideoConfig
push str.name
mov ecx, esi
call fcn.0041a6c8
mov eax, dword [ebx + 0xdc]
mov ecx, esi
push 0xa
push 0
push dword [eax + edi]
push str.width
call fcn.0041a475
mov eax, dword [ebx + 0xdc]
mov ecx, esi
push 0xa
push 0
push dword [eax + edi + 4]
push str.height
call fcn.0041a475
mov eax, dword [ebx + 0xdc]
mov ecx, esi
push 0xa
push 0
push dword [eax + edi + 0xc]
push str.bitsperpixel
call fcn.0041a475
mov eax, dword [ebx + 0xdc]
mov ecx, esi
push 0xa
push 0
push dword [eax + edi + 8]
push str.displayfrequency
call fcn.0041a475
mov eax, dword [ebx + 0xdc]
mov ecx, 0x496584
cmp byte [eax + edi + 0x10], 0
mov eax, 0x496588
cmove ecx, eax
push ecx
push str.preferred
mov ecx, esi
call fcn.0041a6c8
mov eax, dword [ebx + 0xdc]
mov ecx, 0x496584
cmp byte [eax + edi + 0x11], 0
mov eax, 0x496588
cmove ecx, eax
push ecx
push 0x496fc0
mov ecx, esi
call fcn.0041a6c8
mov eax, dword [ebx + 0xdc]
mov ecx, 0x496584
cmp byte [eax + edi + 0x12], 0
mov eax, 0x496588
cmove ecx, eax
push ecx
push str.mosaic
mov ecx, esi
call fcn.0041a6c8
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 0x41be96
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 0x41c129
lea ecx, [ebp - 0x38]
call fcn.0041a94b
push 0xa
mov esi, eax
mov eax, dword [ebx + 0xd0]
push 0
push dword [ebp - 0x6c]
mov ecx, esi
mov edi, dword [eax + edi*4]
push 0x491ab8
call fcn.0041a475
push str.Monitor
push str.name
mov ecx, esi
call fcn.0041a6c8
lea ecx, [edi + 0x30]
call fcn.004071ba
push eax
push str.caption
mov ecx, esi
call fcn.0041a6c8
lea ecx, [edi + 0x48]
call fcn.00408dcd
test al, al
jne 0x41c046
lea ecx, [edi + 0x48]
call fcn.004071ba
push eax
push str.status
mov ecx, esi
call fcn.0041a6c8
mov ecx, edi
call fcn.004071ba
push eax
push str.device_id
mov ecx, esi
call fcn.0041a6c8
lea ecx, [edi + 0x18]
call fcn.004071ba
push eax
push str.device_description
mov ecx, esi
call fcn.0041a6c8
push 0xa
push 0
push dword [edi + 0x68]
mov ecx, esi
push str.screen_height
call fcn.0041a4df
push 0xa
push 0
push dword [edi + 0x6c]
mov ecx, esi
push str.screen_width
call fcn.0041a4df
push 0xa
push 0
push dword [edi + 0x60]
mov ecx, esi
push str.x_position
call fcn.0041a4df
push 0xa
push 0
push dword [edi + 0x64]
mov ecx, esi
push str.y_position
call fcn.0041a4df
push 0xa
push 0
push dword [edi + 0x74]
mov ecx, esi
push str.bits_per_pixel
call fcn.0041a4df
push 0xa
push 0x4964f8
push dword [edi + 0x70]
mov ecx, esi
push str.frequency
call fcn.0041a4df
movzx eax, byte [edi + 0x78]
mov ecx, esi
push eax
push str.VRRCapable
call fcn.0041a632
push 0x10
push 0
push dword [edi + 0xfc]
mov ecx, esi
push str.nvApiDisplayId
call fcn.0041a475
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 0x41bfd9
mov ecx, dword [ebp - 0x70]
add ecx, 4
call fcn.004071ba
push eax
lea ecx, [ebp - 0x50]
call fcn.004071ba
push eax
lea ecx, [ebp - 0x68]
call fcn.004071ba
push eax
push dword [ebp - 0x74]
lea ecx, [ebp - 0x38]
call fcn.0041a9f2
xor ebx, ebx
inc ebx
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x38]
call fcn.0041a828
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x50]
call fcn.00407241
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x68]
call fcn.00407241
mov al, bl
call fcn.004507c3
ret 0xc