Function at 0x10199880
Capabilities:
Check os version
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x1029b474
mov eax, dword fs:[0]
push eax
sub esp, 0x2c0
mov eax, dword [0x1037c990]
xor eax, esp
mov dword [esp + 0x2b8], eax
push ebx
push esi
push edi
mov eax, dword [0x1037c990]
xor eax, esp
push eax
lea eax, [esp + 0x2d0]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov esi, ecx
xor ebx, ebx
mov dword [esp + 0x30], eax
mov dword [esp + 0x64], esi
cmp esi, ebx
jne 0x101998e8
push ebx
push 0xcb0
push 0x102dcf48
push 0x80070057
call fcn.100048f0
mov ecx, dword [eax]
lea edx, [esp + 0x20]
push edx
push eax
mov eax, dword [ecx + 0x2c]
mov dword [esp + 0x28], ebx
call eax
cmp dword [esp + 0x20], 6
setne al
cmp al, bl
jne 0x1019991a
push ebx
push 0x124
push 0x102b4e68
push 0xe0e00008
call fcn.100048f0
mov dword [esp + 0x68], ebx
mov dword [esp + 0x2d8], 1
mov ecx, dword [esi]
mov eax, dword [ecx + 0x48]
lea edx, [esp + 0x68]
push edx
push esi
call eax
cmp eax, ebx
jge 0x1019994b
push ebx
push 0xcb6
push 0x102dcf48
push eax
call fcn.100048f0
mov dword [esp + 0x38], ebx
mov byte [esp + 0x2d8], 3
mov ecx, dword [esi]
mov eax, dword [ecx + 0x58]
lea edx, [esp + 0x38]
push edx
push esi
call eax
cmp eax, ebx
jge 0x10199979
push ebx
push 0xcbf
push 0x102dcf48
push eax
call fcn.100048f0
cmp dword [esp + 0x38], ebx
setne al
cmp al, bl
jne 0x10199999
push ebx
push 0xcc0
push 0x102dcf48
push 0xe0e00000
call fcn.100048f0
mov dword [esp + 0x2c], ebx
mov byte [esp + 0x2d8], 7
lea ecx, [esp + 0x2c]
push ecx
push 0x102b3b0c
call fcn.1004d780
cmp eax, ebx
jge 0x101999c9
push ebx
push 0xcc3
push 0x102dcf48
push eax
call fcn.100048f0
mov edx, dword [esp + 0x38]
push edx
lea eax, [esp + 0x30]
push eax
call fcn.100d5a80
mov eax, dword [esp + 0x2c]
lea edx, [esp + 0x20]
mov dword [esp + 0x20], ebx
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x28]
call eax
cmp eax, ebx
jl 0x1019a910
cmp dword [esp + 0x20], ebx
jle 0x1019aa06
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x30]
push edx
call fcn.101a2730
mov byte [esp + 0x2d8], 8
cmp dword [esp + 0x18], ebx
jne 0x10199a21
jmp 0x1019a8db
mov esi, dword [esp + 0x30]
lea edi, [esi + 4]
mov dword [esp + 0x6c], edi
push edi
mov byte [esp + 0x74], bl
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov byte [esp + 0x70], 1
mov byte [esp + 0x2d8], 0xa
xor ecx, ecx
call fcn.101914a0
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x24]
push ecx
push edx
mov ecx, esi
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
call fcn.10191320
test al, al
je 0x10199aaa
mov dword [esp + 0x1c], ebx
mov edi, esi
add edi, 0x274
lea ebx, [esp + 0x1c]
call fcn.100fed00
mov ecx, dword [esp + 0x20]
cmp dword [esp + 0x1c], ecx
setbe al
test al, al
je 0x1019a91d
push ecx
call fcn.10135a80
mov ecx, dword [esp + 0x24]
call fcn.101914a0
mov edi, dword [esp + 0x6c]
xor ebx, ebx
mov byte [esp + 0x2d8], 8
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea ecx, [esp + 0x3c]
mov byte [esp + 0x70], bl
mov dword [esp + 0x28], ebx
mov dword [esp + 0x60], ebx
call fcn.10002dd0
mov byte [esp + 0x2d8], 0xb
lea ecx, [esp + 0x74]
call fcn.10002dd0
mov byte [esp + 0x2d8], 0xc
mov eax, dword [esp + 0x18]
mov ecx, dword [eax]
lea edx, [esp + 0x28]
push edx
push eax
mov eax, dword [ecx + 0x1c]
call eax
cmp eax, ebx
jl 0x1019a933
mov esi, dword [esp + 0x18]
lea ecx, [esp + 0x74]
mov dword [esp + 0x8c], ebx
call fcn.100041b0
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea ecx, [esp + 0x7c]
push ecx
call edi
cmp eax, ebx
jl 0x1019a910
mov edx, 8
mov word [esp + 0x7c], dx
lea ecx, [esp + 0x84]
mov dword [esp + 0x8c], 2
mov dword [esp + 0x84], ebx
mov eax, dword [esi]
mov edx, dword [eax + 0x48]
push ecx
push esi
call edx
cmp eax, ebx
jl 0x1019a944
mov eax, dword [esp + 0x18]
mov ecx, dword [eax]
lea edx, [esp + 0x60]
push edx
push eax
mov eax, dword [ecx + 0x3c]
call eax
cmp eax, ebx
jl 0x1019a955
mov esi, dword [esp + 0x18]
lea ecx, [esp + 0x3c]
mov dword [esp + 0x54], ebx
call fcn.100041b0
lea ecx, [esp + 0x44]
push ecx
call edi
cmp eax, ebx
jl 0x1019a910
mov edx, 8
mov word [esp + 0x44], dx
lea ecx, [esp + 0x4c]
mov dword [esp + 0x54], 2
mov dword [esp + 0x4c], ebx
mov eax, dword [esi]
mov edx, dword [eax + 0x24]
push ecx
push esi
call edx
cmp eax, ebx
jl 0x1019a966
mov eax, dword [esp + 0x54]
cmp eax, 3
ja case.default.0x10199e81
jmp dword [eax*4 + 0x1019aa64]
xor eax, eax
jmp 0x10199c1a
mov eax, dword [esp + 0x3c]
mov eax, dword [eax - 0xc]
jmp 0x10199c1a
lea ecx, [esp + 0x3c]
call fcn.100039a0
movzx ecx, word [eax]
cmp cx, bx
je 0x10199c0f
cmp cx, 1
je 0x10199c0f
cmp cx, 8
sete cl
cmp cl, bl
je 0x1019a977
mov eax, dword [eax + 8]
cmp eax, ebx
jne 0x10199c13
xor eax, eax
jmp 0x10199c1a
push eax
call dword [sym.imp.OLEAUT32.dll_VariantInit]
cmp eax, ebx
sete al
cmp al, bl
je 0x10199c68
lea ecx, [esp + 0x3c]
call fcn.10003840
cmp dword [esp + 0x54], 3
jne 0x10199c4a
lea ecx, [esp + 0x44]
push ecx
mov dword [esp + 0x58], 1
call edi
cmp eax, ebx
jl 0x1019a910
cmp dword [esp + 0x54], ebx
jne 0x10199c58
mov dword [esp + 0x54], 1
push 9
push str._unnamed_
lea ecx, [esp + 0x44]
call fcn.100043a0
mov eax, dword [esp + 0x60]
cmp eax, 3
ja case.default.0x10199c75
jmp dword [eax*4 + 0x1019aa74]
call fcn.101f5f10
cmp ax, 9
je case.0x10199c75.0
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x10199d6c
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push 0x14
mov esi, 7
xor edx, edx
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str..PerformInstall.cpp
mov word [ecx + 4], dx
call fcn.10035ce0
mov byte [esp + 0x2f4], 0xd
push 0xd15
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push 0x34
xor eax, eax
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str.CNVInstaller::InternalPerformValidationPackagePhases
mov word [ecx + 4], ax
call fcn.10035ce0
mov byte [esp + 0x314], 0xe
lea ecx, [esp + 0x53]
lea edx, [esp + 0x23c]
mov dword [esp + 0x240], ecx
mov dword [esp + 0x170], edx
lea eax, [esp + 0x78]
lea ecx, [esp + 0x16c]
lea edx, [esp + 0x1fc]
push 5
mov byte [esp + 0x57], bl
mov dword [esp + 0x170], str.Skipping_AMD64_phase
mov dword [esp + 0x200], eax
mov dword [esp + 0x204], ecx
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102c0f18
mov dword [esp + 0x1ec], edx
call fcn.10045b90
push eax
mov byte [esp + 0x31c], 0xc
lea edi, [esp + 0x1ec]
call fcn.10002b50
xor eax, eax
mov dword [esp + 0x28], eax
jmp 0x10199fdb
call fcn.101f5f10
test ax, ax
je case.0x10199c75.0
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x10199e66
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push 0x14
mov esi, 7
xor eax, eax
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str..PerformInstall.cpp
mov word [ecx + 4], ax
call fcn.10035ce0
mov byte [esp + 0x2f4], 0xf
push 0xd1e
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push 0x34
xor edx, edx
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str.CNVInstaller::InternalPerformValidationPackagePhases
mov word [ecx + 4], dx
call fcn.10035ce0
mov byte [esp + 0x314], 0x10
lea eax, [esp + 0x53]
lea ecx, [esp + 0x264]
mov dword [esp + 0x268], eax
mov dword [esp + 0x1c8], ecx
lea edx, [esp + 0x78]
lea eax, [esp + 0x1c4]
lea ecx, [esp + 0x10c]
push 5
mov byte [esp + 0x57], bl
mov dword [esp + 0x1c8], str.Skipping_x86_only_phase
mov dword [esp + 0x110], edx
mov dword [esp + 0x114], eax
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102df49c
mov dword [esp + 0x1f4], ecx
call fcn.10045b90
push eax
mov byte [esp + 0x31c], 0xc
lea edi, [esp + 0x1f4]
call fcn.10002b50
xor eax, eax
mov dword [esp + 0x28], eax
jmp 0x10199fdb
mov eax, dword [esp + 0x8c]
cmp eax, 3
ja case.default.0x10199e81
jmp dword [eax*4 + 0x1019aa84]
xor eax, eax
jmp 0x10199ead
mov edx, dword [esp + 0x74]
mov eax, dword [edx - 0xc]
jmp 0x10199ead
lea ecx, [esp + 0x74]
call fcn.10003a50
cmp eax, ebx
jne 0x10199ea6
xor eax, eax
jmp 0x10199ead
push eax
call dword [sym.imp.OLEAUT32.dll_VariantInit]
cmp eax, ebx
sete al
cmp al, bl
jne 0x10199fd7
mov eax, dword [esp + 0x28]
cmp eax, 1
je 0x10199ecc
cmp eax, 3
jne 0x10199fdb
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x64]
push eax
call fcn.10197140
test al, al
je 0x10199feb
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x10199fd7
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push str..PerformInstall.cpp
call fcn.10035dd0
mov byte [esp + 0x2f4], 0x11
push 0xd32
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push str.CNVInstaller::InternalPerformValidationPackagePhases
call fcn.10035dd0
mov byte [esp + 0x314], 0x12
lea ecx, [esp + 0x53]
lea edx, [esp + 0x244]
mov dword [esp + 0x248], ecx
mov dword [esp + 0x120], edx
lea eax, [esp + 0xb0]
lea ecx, [esp + 0x11c]
lea edx, [esp + 0x174]
mov dword [esp + 0x174], eax
mov dword [esp + 0x178], ecx
mov dword [esp + 0x130], edx
lea eax, [esp + 0x78]
lea ecx, [esp + 0x12c]
lea edx, [esp + 0x17c]
push 5
mov byte [esp + 0x57], bl
mov dword [esp + 0x120], str.Condition
mov dword [esp + 0x130], str.enabled_phase
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102df6a4
mov dword [esp + 0x144], edx
call fcn.10045b90
push eax
mov byte [esp + 0x31c], 0xc
lea edi, [esp + 0x144]
call fcn.10002b50
mov eax, dword [esp + 0x28]
cmp eax, 4
ja case.default.0x10199fe4
jmp dword [eax*4 + 0x1019aa94]
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x1019a0e0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push str..PerformInstall.cpp
call fcn.10035dd0
mov byte [esp + 0x2f4], 0x13
push 0xd36
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push str.CNVInstaller::InternalPerformValidationPackagePhases
call fcn.10035dd0
mov byte [esp + 0x314], 0x14
lea eax, [esp + 0x53]
lea ecx, [esp + 0x26c]
mov dword [esp + 0x270], eax
mov dword [esp + 0x190], ecx
lea edx, [esp + 0xb0]
lea eax, [esp + 0x18c]
lea ecx, [esp + 0x14c]
mov dword [esp + 0x14c], edx
mov dword [esp + 0x150], eax
mov dword [esp + 0x1a0], ecx
lea edx, [esp + 0x78]
lea eax, [esp + 0x19c]
lea ecx, [esp + 0x15c]
push 5
mov byte [esp + 0x57], bl
mov dword [esp + 0x190], str.Condition
mov dword [esp + 0x1a0], str.disabled_phase
mov dword [esp + 0x160], edx
mov dword [esp + 0x164], eax
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102df6b8
mov dword [esp + 0x1b4], ecx
call fcn.10045b90
push eax
mov byte [esp + 0x31c], 0xc
lea edi, [esp + 0x1b4]
call fcn.10002b50
xor eax, eax
mov dword [esp + 0x28], eax
jmp 0x10199fdb
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x1019a867
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push 0x14
mov esi, 7
xor edx, edx
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str..PerformInstall.cpp
mov word [ecx + 4], dx
call fcn.10035ce0
mov byte [esp + 0x2f4], 0x15
push 0xd48
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push 0x34
xor eax, eax
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str.CNVInstaller::InternalPerformValidationPackagePhases
mov word [ecx + 4], ax
call fcn.10035ce0
mov byte [esp + 0x314], 0x16
lea ecx, [esp + 0x53]
lea edx, [esp + 0x27c]
mov dword [esp + 0x280], ecx
mov dword [esp + 0x100], edx
lea eax, [esp + 0x78]
lea ecx, [esp + 0xfc]
lea edx, [esp + 0x1bc]
push 5
mov byte [esp + 0x57], bl
mov dword [esp + 0x100], str.Skipping_validation_actions_of_phase
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1c4], ecx
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102df708
mov dword [esp + 0x1d4], edx
call fcn.10045b90
push eax
mov byte [esp + 0x31c], 0xc
lea edi, [esp + 0x1d4]
call fcn.10002b50
jmp 0x1019a867
push 0x14
xor eax, eax
mov esi, 7
push str..PerformInstall.cpp
lea ecx, [esp + 0x1ec]
mov dword [esp + 0x204], esi
mov dword [esp + 0x200], ebx
mov word [esp + 0x1f0], ax
call fcn.10035ce0
mov byte [esp + 0x2d8], 0x17
xor ecx, ecx
push 0x34
mov word [esp + 0x1d0], cx
push str.CNVInstaller::InternalPerformValidationPackagePhases
lea ecx, [esp + 0x1d0]
mov dword [esp + 0x1e8], esi
mov dword [esp + 0x1e4], ebx
call fcn.10035ce0
mov byte [esp + 0x2d8], 0x18
lea ecx, [esp + 0x3c]
mov dword [esp + 0x1b8], ecx
lea edx, [esp + 0x17]
lea eax, [esp + 0x218]
lea ecx, [esp + 0x248]
mov dword [esp + 0x21c], edx
mov dword [esp + 0x14c], eax
lea edx, [esp + 0x148]
lea eax, [esp + 0x1b8]
push ecx
lea ecx, [esp + 0x15c]
mov dword [esp + 0x14c], str.Validation_Phase
mov dword [esp + 0x1c0], edx
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], vtable.Nvidia::Logging::ChainLoggable_class_Nvidia::Logging::Chain_class_CAutoString_const___class_Nvidia::Logging::Chain_char_const_____17___class_Nvidia::Logging::Chain_struct_Nvidia::Logging::NullType__struct_Nvidia::Logging::NullType____.0
mov dword [esp + 0x160], eax
call dword [0x102bdab0]
mov byte [esp + 0x2d8], 0x19
lea edx, [esp + 0x1e4]
push edx
push 0xd4e
lea ecx, [esp + 0x1d0]
push ecx
lea edx, [esp + 0x270]
push edx
mov ecx, eax
call fcn.1018a880
mov byte [esp + 0x2d8], 0x1b
mov edi, 8
cmp dword [esp + 0x260], edi
jb 0x1019a2f9
mov eax, dword [esp + 0x24c]
push eax
call fcn.101d2eac
add esp, 4
xor ecx, ecx
mov dword [esp + 0x260], esi
mov dword [esp + 0x25c], ebx
mov word [esp + 0x24c], cx
mov byte [esp + 0x2d8], 0x1c
cmp dword [esp + 0x1e0], edi
jb 0x1019a332
mov edx, dword [esp + 0x1cc]
push edx
call fcn.101d2eac
add esp, 4
xor eax, eax
mov dword [esp + 0x1e0], esi
mov dword [esp + 0x1dc], ebx
mov word [esp + 0x1cc], ax
mov byte [esp + 0x2d8], 0x1d
cmp dword [esp + 0x1fc], edi
jb 0x1019a36b
mov ecx, dword [esp + 0x1e8]
push ecx
call fcn.101d2eac
add esp, 4
xor edx, edx
lea ecx, [esp + 0x9c]
mov dword [esp + 0x1fc], 7
mov dword [esp + 0x1f8], ebx
mov word [esp + 0x1e8], dx
call fcn.10002dd0
mov byte [esp + 0x2d8], 0x1e
mov esi, dword [esp + 0x18]
lea ecx, [esp + 0x9c]
mov dword [esp + 0xb4], ebx
call fcn.100041b0
lea eax, [esp + 0xa4]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebx
jl 0x1019a910
mov ecx, 8
mov word [esp + 0xa4], cx
lea eax, [esp + 0xac]
mov dword [esp + 0xb4], 2
mov dword [esp + 0xac], ebx
mov edx, dword [esi]
mov ecx, dword [edx + 0x2c]
push eax
push esi
call ecx
cmp eax, ebx
jl 0x1019a9a1
lea ecx, [esp + 0x9c]
call fcn.10003840
mov edi, dword [esp + 0x30]
push eax
lea ecx, [edi + 0x2a4]
call fcn.1007dc80
mov edx, dword [esp + 0x18]
push edx
lea eax, [esp + 0x38]
push eax
call fcn.101a3000
mov byte [esp + 0x2d8], 0x1f
mov eax, dword [esp + 0x34]
cmp eax, ebx
jne 0x1019a536
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x1019a51f
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push 0x14
mov esi, 7
xor edx, edx
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str..PerformInstall.cpp
mov word [ecx + 4], dx
call fcn.10035ce0
mov byte [esp + 0x2f4], 0x20
push 0xd5b
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push 0x34
xor eax, eax
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str.CNVInstaller::InternalPerformValidationPackagePhases
mov word [ecx + 4], ax
call fcn.10035ce0
mov byte [esp + 0x314], 0x21
lea ecx, [esp + 0x53]
lea edx, [esp + 0x78]
mov dword [esp + 0x250], ecx
mov dword [esp + 0x1d4], edx
lea eax, [esp + 0x24c]
lea ecx, [esp + 0x1d4]
lea edx, [esp + 0x1a4]
push 5
mov byte [esp + 0x57], bl
mov dword [esp + 0x1dc], eax
mov dword [esp + 0x1a8], str.does_not_support_validation
mov dword [esp + 0x1ac], ecx
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102df6f4
mov dword [esp + 0x1e4], edx
call fcn.10045b90
push eax
mov byte [esp + 0x31c], 0x1f
lea edi, [esp + 0x1e4]
call fcn.10002b50
mov byte [esp + 0x2d8], 0x1e
lea eax, [esp + 0x34]
push eax
call fcn.100409e0
jmp 0x1019a6a0
mov edx, dword [esp + 0x2c]
mov ecx, dword [eax]
push edx
mov edx, dword [esp + 0x68]
push edx
push eax
mov eax, dword [ecx + 0xc]
call eax
mov esi, eax
cmp esi, ebx
jl 0x1019a5c2
mov byte [esp + 0x2d8], 0x1e
lea ecx, [esp + 0x34]
push ecx
call fcn.1005b8c0
mov byte [esp + 0x2d8], 0x1d
lea ecx, [esp + 0x9c]
call fcn.10002d20
mov byte [esp + 0x2d8], 0xc
lea edx, [esp + 0x264]
push edx
call fcn.1018aa00
mov byte [esp + 0x2d8], 0xb
lea ecx, [esp + 0x74]
call fcn.10002d20
mov byte [esp + 0x2d8], 8
lea ecx, [esp + 0x3c]
call fcn.10002d20
mov byte [esp + 0x2d8], 7
lea eax, [esp + 0x18]
push eax
call fcn.100409e0
jmp 0x1019a8f3
cmp esi, 0x80004001
jne 0x1019a702
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x1019a68e
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push str..PerformInstall.cpp
call fcn.10035dd0
mov byte [esp + 0x2f4], 0x23
push 0xd6b
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push str.CNVInstaller::InternalPerformValidationPackagePhases
call fcn.10035dd0
mov byte [esp + 0x314], 0x24
lea ecx, [esp + 0x53]
lea edx, [esp + 0x25c]
mov dword [esp + 0x260], ecx
mov dword [esp + 0x1b8], edx
lea eax, [esp + 0x78]
lea ecx, [esp + 0x1b4]
lea edx, [esp + 0x104]
push 5
mov byte [esp + 0x57], bl
mov dword [esp + 0x1b8], str.No_validation_actions_implemented_for_phase
mov dword [esp + 0x108], eax
mov dword [esp + 0x10c], ecx
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102c2618
mov dword [esp + 0x11c], edx
call fcn.10045b90
push eax
mov byte [esp + 0x31c], 0x1f
lea edi, [esp + 0x11c]
call fcn.10002b50
mov byte [esp + 0x2d8], 0x1e
lea eax, [esp + 0x34]
push eax
call fcn.1005b8c0
mov byte [esp + 0x2d8], 0x1d
lea ecx, [esp + 0x9c]
call fcn.10002d20
mov byte [esp + 0x2d8], 0xc
lea ecx, [esp + 0x264]
push ecx
call fcn.1018aa00
mov byte [esp + 0x2d8], 0xb
lea ecx, [esp + 0x74]
call fcn.10002d20
mov byte [esp + 0x2d8], 8
lea ecx, [esp + 0x3c]
call fcn.10002d20
mov byte [esp + 0x2d8], 7
lea edx, [esp + 0x18]
push edx
call fcn.100409e0
jmp 0x1019a8f3
mov eax, dword [esp + 0x18]
mov ecx, dword [eax]
lea edx, [esp + 0x98]
push edx
push eax
mov eax, dword [ecx + 0x34]
call eax
cmp eax, ebx
jl 0x1019a9b2
mov eax, dword [esp + 0x98]
cmp eax, 1
je 0x1019a732
cmp eax, ebx
jne 0x1019a9c3
call fcn.10045b90
cmp dword [eax + 0x1c], 3
jl 0x1019a824
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push str..PerformInstall.cpp
call fcn.10035dd0
mov byte [esp + 0x2f4], 0x25
push 0xd7a
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push str.CNVInstaller::InternalPerformValidationPackagePhases
call fcn.10035dd0
mov byte [esp + 0x314], 0x26
lea ecx, [esp + 0x53]
mov dword [esp + 0x278], ecx
lea edx, [esp + 0x274]
lea eax, [esp + 0x78]
lea ecx, [esp + 0x124]
mov dword [esp + 0x128], edx
mov dword [esp + 0x134], eax
mov dword [esp + 0x138], ecx
lea edx, [esp + 0x134]
lea eax, [esp + 0x144]
lea ecx, [esp + 0x154]
push 3
mov byte [esp + 0x57], bl
mov dword [esp + 0x128], str.Phase
mov dword [esp + 0x148], str.failed_validation_with_error
mov dword [esp + 0x14c], edx
mov dword [esp + 0x158], esi
mov dword [esp + 0x15c], eax
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102df71c
mov dword [esp + 0x16c], ecx
call fcn.10045b90
push eax
mov byte [esp + 0x31c], 0x1f
lea edi, [esp + 0x16c]
call fcn.10002b50
mov edi, dword [esp + 0x30]
mov edx, dword [edi]
mov eax, dword [edx + 0x78]
push edi
call eax
mov byte [esp + 0x2d8], 0x1e
lea ecx, [esp + 0x34]
push ecx
call fcn.1005b8c0
mov byte [esp + 0x2d8], 0x1d
lea ecx, [esp + 0x9c]
call fcn.10002d20
mov byte [esp + 0x2d8], 0xc
lea edx, [esp + 0x264]
push edx
call fcn.1018aa00
mov byte [esp + 0x2d8], 0x27
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [esp + 0x7c]
push eax
call esi
mov byte [esp + 0x2d8], 0xb
mov eax, dword [esp + 0x74]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x1019a8a4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x2d8], 0x2a
lea ecx, [esp + 0x44]
push ecx
call esi
mov byte [esp + 0x2d8], 8
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x1019a8db
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x2d8], 7
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x1019a8f3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esp + 0x2c]
lea edx, [esp + 0x20]
mov dword [esp + 0x20], ebx
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x28]
call eax
cmp eax, ebx
jge 0x101999f5
push ebx
push ebx
push 0x102b274a
push eax
call fcn.100048f0
push 0
push 0xce7
push 0x102dcf48
push 0xe0e00000
call fcn.100048f0
push ebx
push 0xd00
push 0x102dcf48
push eax
call fcn.100048f0
push ebx
push 0xd01
push 0x102dcf48
push eax
call fcn.100048f0
push ebx
push 0xd02
push 0x102dcf48
push eax
call fcn.100048f0
push ebx
push 0xd03
push 0x102dcf48
push eax
call fcn.100048f0
push ebx
push 0xb7
push str.c:dvsp4_build_sw_relgpu_drvinstaller_coreincAutoString.h
push 0xe0e00000
call fcn.100048f0
push ebx
push 0x12b
push str.c:dvsp4_build_sw_relgpu_drvinstaller_coreincAutoString.h
push 0xe0e00000
call fcn.100048f0
push ebx
push 0xd51
push 0x102dcf48
push eax
call fcn.100048f0
push ebx
push 0xd73
push 0x102dcf48
push eax
call fcn.100048f0
push str.Validation_does_not_handle_the_error_mode_provided
push 0xd7f
push 0x102dcf48
push 0xe0e00000
call fcn.100048f0
push ebx
push 0xd84
push 0x102dcf48
push 0xe0e00000
call fcn.100048f0
push ebx
push 0xd25
push 0x102dcf48
push 0xe0e00000
call fcn.100048f0
mov byte [esp + 0x2d8], 3
lea ecx, [esp + 0x2c]
push ecx
call fcn.100b9200
mov byte [esp + 0x2d8], 1
lea ecx, [esp + 0x38]
call fcn.1003ca30
mov dword [esp + 0x2d8], 0xffffffff
lea edx, [esp + 0x68]
push edx
call fcn.100409e0
mov ecx, dword [esp + 0x2d0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x2b8]
xor ecx, esp
call fcn.1022e78c
mov esp, ebp
pop ebp
ret 4