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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x1029b994
mov eax, dword fs:[0]
push eax
sub esp, 0x320
mov eax, dword [0x1037c990]
xor eax, esp
mov dword [esp + 0x318], eax
push ebx
push esi
push edi
mov eax, dword [0x1037c990]
xor eax, esp
push eax
lea eax, [esp + 0x330]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov edi, ecx
mov ecx, dword [edi]
mov esi, edx
lea edx, [esp + 0x20]
push edx
mov dword [esp + 0x4c], eax
mov eax, dword [ecx + 0x2c]
xor ebx, ebx
push edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x64], esi
mov dword [esp + 0x28], ebx
call eax
cmp dword [esp + 0x20], 6
setne al
cmp al, bl
jne 0x101972b7
push ebx
push 0x124
push 0x102b4e68
push 0xe0e00008
call fcn.100048f0
mov ecx, dword [esp + 0x48]
push ecx
push esi
push edi
call fcn.1019fe00
mov dword [esp + 0x68], ebx
mov dword [esp + 0x338], 1
mov edx, dword [esi]
mov ecx, dword [edx + 0x48]
lea eax, [esp + 0x68]
push eax
push esi
call ecx
cmp eax, ebx
jge 0x101972f4
push ebx
push 0xaef
push 0x102dcf48
push eax
call fcn.100048f0
mov dword [esp + 0x40], ebx
mov byte [esp + 0x338], 3
mov edx, dword [esi]
mov ecx, dword [edx + 0x58]
lea eax, [esp + 0x40]
push eax
push esi
call ecx
cmp eax, ebx
jge 0x10197322
push ebx
push 0xaf5
push 0x102dcf48
push eax
call fcn.100048f0
cmp dword [esp + 0x40], ebx
jne 0x1019733d
push ebx
push 0xaf6
push 0x102dcf48
push 0x80004003
call fcn.100048f0
mov dword [esp + 0x2c], ebx
mov byte [esp + 0x338], 7
mov dword [esp + 0x38], ebx
mov byte [esp + 0x338], 0xb
lea edx, [esp + 0x2c]
push edx
push 0x102b3b0c
call fcn.1004d780
cmp eax, ebx
jge 0x10197379
push ebx
push 0xafd
push 0x102dcf48
push eax
call fcn.100048f0
lea eax, [esp + 0x38]
push eax
push 0x102b3b0c
call fcn.1004d780
cmp eax, ebx
jge 0x1019739d
push ebx
push 0xafe
push 0x102dcf48
push eax
call fcn.100048f0
mov ecx, dword [esp + 0x40]
push ecx
lea edx, [esp + 0x30]
push edx
call fcn.100d5a80
lea ecx, [esp + 0x3c]
call fcn.10002d80
mov byte [esp + 0x338], 0xc
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 0x101973e3
push ebx
push ebx
push 0x102b274a
push eax
call fcn.100048f0
cmp dword [esp + 0x20], ebx
jle 0x101974da
lea ecx, [esp + 0x4c]
push ecx
lea esi, [edi + 0x28c]
call fcn.100acc10
mov byte [esp + 0x338], 0xd
push eax
lea ecx, [esp + 0x40]
call fcn.100036b0
mov byte [esp + 0x338], 0xc
lea ecx, [esp + 0x4c]
call fcn.10004720
call fcn.10045b90
cmp dword [eax + 0x1c], 6
jl 0x101974da
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x7c], esp
push str..PerformInstall.cpp
call fcn.10035dd0
mov byte [esp + 0x354], 0xe
push 0xb0c
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xa0], esp
push str.CNVInstaller::InternalPerformInstallPackagePhases
call fcn.10035dd0
mov byte [esp + 0x374], 0xf
lea edx, [esp + 0x4f]
lea eax, [esp + 0xe8]
mov dword [esp + 0xec], edx
mov dword [esp + 0x94], eax
lea ecx, [esp + 0x78]
lea edx, [esp + 0x90]
lea eax, [esp + 0x88]
push 6
mov byte [esp + 0x53], bl
mov dword [esp + 0x94], str.Default_full_progress_title_is
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x90], edx
mov dword [esp + 0x64], 0x102bd9b8
mov dword [esp + 0x68], eax
call fcn.10045b90
push eax
mov byte [esp + 0x37c], 0xc
lea edi, [esp + 0x68]
call fcn.10002b50
mov eax, dword [esp + 0x2c]
lea edx, [esp + 0x30]
mov dword [esp + 0x30], ebx
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x28]
call eax
cmp eax, ebx
jl 0x1019865c
jmp 0x10197500
cmp dword [esp + 0x30], ebx
jle 0x1019874e
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x30]
push edx
call fcn.101a2730
mov byte [esp + 0x338], 0x10
cmp dword [esp + 0x14], ebx
jne 0x1019752c
jmp 0x10198627
mov esi, dword [esp + 0x18]
lea edi, [esi + 4]
mov dword [esp + 0x54], edi
push edi
mov byte [esp + 0x5c], bl
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov byte [esp + 0x58], 1
mov byte [esp + 0x338], 0x12
xor ecx, ecx
call fcn.101914a0
mov edx, dword [esp + 0x14]
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x34]
push ecx
push edx
mov ecx, esi
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x30], ebx
call fcn.10191320
test al, al
je 0x101975b5
mov dword [esp + 0x1c], ebx
mov edi, esi
add edi, 0x274
lea ebx, [esp + 0x1c]
call fcn.100fed00
mov ecx, dword [esp + 0x30]
cmp dword [esp + 0x1c], ecx
setbe al
test al, al
je 0x10198669
push ecx
call fcn.10135a80
mov ecx, dword [esp + 0x24]
call fcn.101914a0
mov edi, dword [esp + 0x54]
xor ebx, ebx
mov byte [esp + 0x338], 0x10
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea ecx, [esp + 0x6c]
mov byte [esp + 0x58], bl
mov dword [esp + 0x34], ebx
mov dword [esp + 0x4c], ebx
call fcn.10002dd0
mov byte [esp + 0x338], 0x13
lea ecx, [esp + 0xb4]
call fcn.10002dd0
mov byte [esp + 0x338], 0x14
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
lea edx, [esp + 0x34]
push edx
push eax
mov eax, dword [ecx + 0x1c]
mov byte [esp + 0x1b], bl
call eax
cmp eax, ebx
jl 0x1019867f
mov esi, dword [esp + 0x14]
lea ecx, [esp + 0xb4]
mov dword [esp + 0xcc], ebx
call fcn.100041b0
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea ecx, [esp + 0xbc]
push ecx
call edi
cmp eax, ebx
jl 0x101973d6
mov edx, 8
mov word [esp + 0xbc], dx
lea ecx, [esp + 0xc4]
mov dword [esp + 0xcc], 2
mov dword [esp + 0xc4], ebx
mov eax, dword [esi]
mov edx, dword [eax + 0x48]
push ecx
push esi
call edx
cmp eax, ebx
jl 0x10198690
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
lea edx, [esp + 0x4c]
push edx
push eax
mov eax, dword [ecx + 0x3c]
call eax
cmp eax, ebx
jl 0x101986a1
mov esi, dword [esp + 0x14]
lea ecx, [esp + 0x6c]
mov dword [esp + 0x84], ebx
call fcn.100041b0
lea ecx, [esp + 0x74]
push ecx
call edi
cmp eax, ebx
jl 0x101973d6
mov edx, 8
mov word [esp + 0x74], dx
lea ecx, [esp + 0x7c]
mov dword [esp + 0x84], 2
mov dword [esp + 0x7c], ebx
mov eax, dword [esi]
mov edx, dword [eax + 0x24]
push ecx
push esi
call edx
cmp eax, ebx
jl 0x101986b2
mov eax, dword [esp + 0x84]
cmp eax, 3
ja case.default.0x1019815c
jmp dword [eax*4 + 0x101987d0]
xor eax, eax
jmp 0x1019773e
mov eax, dword [esp + 0x6c]
mov eax, dword [eax - 0xc]
jmp 0x1019773e
lea ecx, [esp + 0x6c]
call fcn.100039a0
movzx ecx, word [eax]
cmp cx, bx
je 0x10197733
cmp cx, 1
je 0x10197733
cmp cx, 8
sete cl
cmp cl, bl
je 0x101986c3
mov eax, dword [eax + 8]
cmp eax, ebx
jne 0x10197737
xor eax, eax
jmp 0x1019773e
push eax
call dword [sym.imp.OLEAUT32.dll_VariantInit]
cmp eax, ebx
sete al
cmp al, bl
je 0x10197755
push str._unnamed_
lea ecx, [esp + 0x70]
call fcn.10058550
xor ecx, ecx
push 0x14
mov word [esp + 0x20c], cx
mov esi, 7
push str..PerformInstall.cpp
lea ecx, [esp + 0x20c]
mov dword [esp + 0x224], esi
mov dword [esp + 0x220], ebx
call fcn.10035ce0
mov byte [esp + 0x338], 0x15
push 0x31
xor edx, edx
push str.CNVInstaller::InternalPerformInstallPackagePhases
lea ecx, [esp + 0x1f0]
mov dword [esp + 0x208], esi
mov dword [esp + 0x204], ebx
mov word [esp + 0x1f4], dx
call fcn.10035ce0
mov byte [esp + 0x338], 0x16
lea ecx, [esp + 0x220]
mov dword [esp + 0x14c], ecx
lea edx, [esp + 0x6c]
lea eax, [esp + 0x12]
mov dword [esp + 0x128], edx
lea ecx, [esp + 0x128]
mov dword [esp + 0x224], eax
lea edx, [esp + 0x268]
lea eax, [esp + 0x148]
mov dword [esp + 0x1d4], ecx
push edx
lea ecx, [esp + 0x1d4]
mov dword [esp + 0x14c], str.Processing_package_phase
mov dword [esp + 0x130], eax
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102bda44
call dword [0x102bda4c]
mov byte [esp + 0x338], 0x17
lea ecx, [esp + 0x204]
push ecx
push 0xb4f
lea edx, [esp + 0x1f0]
push edx
lea ecx, [esp + 0x2d0]
push ecx
mov ecx, eax
call fcn.1018a880
mov byte [esp + 0x338], 0x19
cmp dword [esp + 0x280], 8
jb 0x10197879
mov edx, dword [esp + 0x26c]
push edx
call fcn.101d2eac
add esp, 4
xor eax, eax
mov dword [esp + 0x280], esi
mov dword [esp + 0x27c], ebx
mov word [esp + 0x26c], ax
mov byte [esp + 0x338], 0x1a
cmp dword [esp + 0x200], 8
jb 0x101978b3
mov ecx, dword [esp + 0x1ec]
push ecx
call fcn.101d2eac
add esp, 4
xor edx, edx
mov dword [esp + 0x200], esi
mov dword [esp + 0x1fc], ebx
mov word [esp + 0x1ec], dx
mov byte [esp + 0x338], 0x1b
cmp dword [esp + 0x21c], 8
jb 0x101978ed
mov eax, dword [esp + 0x208]
push eax
call fcn.101d2eac
add esp, 4
xor ecx, ecx
mov word [esp + 0x208], cx
lea ecx, [esp + 0xd4]
mov dword [esp + 0x21c], esi
mov dword [esp + 0x218], ebx
call fcn.10002dd0
mov byte [esp + 0x338], 0x1c
mov eax, dword [esp + 0x14]
mov dword [esp + 0x20], ebx
mov byte [esp + 0x338], 0x1e
cmp eax, ebx
je 0x1019793e
mov edx, dword [eax]
mov edx, dword [edx]
lea ecx, [esp + 0x20]
push ecx
push 0x102b3a3c
push eax
call edx
mov byte [esp + 0x338], 0x1f
mov esi, dword [esp + 0x20]
cmp esi, ebx
je 0x101979aa
lea ecx, [esp + 0xd4]
mov dword [esp + 0xec], ebx
call fcn.100041b0
lea eax, [esp + 0xdc]
push eax
call edi
cmp eax, ebx
jl 0x101973d6
mov ecx, 8
mov word [esp + 0xdc], cx
lea eax, [esp + 0xe4]
mov dword [esp + 0xec], 2
mov dword [esp + 0xe4], ebx
mov edx, dword [esi]
mov ecx, dword [edx + 0xc]
push eax
push esi
call ecx
cmp eax, ebx
jl 0x101986d8
mov eax, dword [esp + 0x4c]
cmp eax, 3
ja case.default.0x101979b7
jmp dword [eax*4 + 0x101987e0]
call fcn.101f5f10
cmp ax, 9
je case.0x101979b7.0
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x10197a96
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push str..PerformInstall.cpp
call fcn.10035dd0
mov byte [esp + 0x354], 0x20
push 0xb64
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push str.CNVInstaller::InternalPerformInstallPackagePhases
call fcn.10035dd0
mov byte [esp + 0x374], 0x21
lea edx, [esp + 0x4f]
lea eax, [esp + 0x29c]
mov dword [esp + 0x2a0], edx
mov dword [esp + 0x220], eax
lea ecx, [esp + 0xa8]
lea edx, [esp + 0x21c]
lea eax, [esp + 0x1f4]
push 5
mov byte [esp + 0x53], bl
mov dword [esp + 0x220], str.Skipping_AMD64_phase
mov dword [esp + 0x1f8], ecx
mov dword [esp + 0x1fc], edx
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102c0f18
mov dword [esp + 0x1dc], eax
call fcn.10045b90
push eax
mov byte [esp + 0x37c], 0x1f
lea edi, [esp + 0x1dc]
call fcn.10002b50
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
xor eax, eax
mov dword [esp + 0x34], eax
mov byte [esp + 0x13], 1
jmp 0x10197d02
call fcn.101f5f10
test ax, ax
je case.0x101979b7.0
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x10197a96
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push str..PerformInstall.cpp
call fcn.10035dd0
mov byte [esp + 0x354], 0x22
push 0xb6d
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push str.CNVInstaller::InternalPerformInstallPackagePhases
call fcn.10035dd0
mov byte [esp + 0x374], 0x23
lea ecx, [esp + 0x4f]
lea edx, [esp + 0x284]
mov dword [esp + 0x288], ecx
mov dword [esp + 0x1a0], edx
lea eax, [esp + 0xa8]
lea ecx, [esp + 0x19c]
lea edx, [esp + 0x14c]
push 5
mov byte [esp + 0x53], bl
mov dword [esp + 0x1a0], str.Skipping_x86_only_phase
mov dword [esp + 0x150], eax
mov dword [esp + 0x154], ecx
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102df49c
mov dword [esp + 0x1b4], edx
call fcn.10045b90
push eax
mov byte [esp + 0x37c], 0x1f
lea edi, [esp + 0x1b4]
call fcn.10002b50
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
xor eax, eax
mov dword [esp + 0x34], eax
mov byte [esp + 0x13], 1
jmp 0x10197d02
mov eax, dword [esp + 0xcc]
cmp eax, 3
ja case.default.0x1019815c
jmp dword [eax*4 + 0x101987f0]
xor eax, eax
jmp 0x10197bcb
mov eax, dword [esp + 0xb4]
mov eax, dword [eax - 0xc]
jmp 0x10197bcb
lea ecx, [esp + 0xb4]
call fcn.10003a50
cmp eax, ebx
jne 0x10197bc4
xor eax, eax
jmp 0x10197bcb
push eax
call dword [sym.imp.OLEAUT32.dll_VariantInit]
cmp eax, ebx
sete al
cmp al, bl
jne 0x10197cfe
mov eax, dword [esp + 0x34]
cmp eax, 1
je 0x10197bea
cmp eax, 3
jne 0x10197d02
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x5c]
push ecx
call fcn.10197140
test al, al
je 0x10197d12
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x10197cfe
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push str..PerformInstall.cpp
call fcn.10035dd0
mov byte [esp + 0x354], 0x24
push 0xb81
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push str.CNVInstaller::InternalPerformInstallPackagePhases
call fcn.10035dd0
mov byte [esp + 0x374], 0x25
lea edx, [esp + 0x4e]
lea eax, [esp + 0x264]
mov dword [esp + 0x268], edx
mov dword [esp + 0x160], eax
lea ecx, [esp + 0xf0]
lea edx, [esp + 0x15c]
lea eax, [esp + 0x1bc]
mov dword [esp + 0x1bc], ecx
mov dword [esp + 0x1c0], edx
mov dword [esp + 0x170], eax
lea ecx, [esp + 0xa8]
lea edx, [esp + 0x16c]
lea eax, [esp + 0x1cc]
push 5
mov byte [esp + 0x52], bl
mov dword [esp + 0x160], str.Condition
mov dword [esp + 0x170], str.enabled_phase
mov dword [esp + 0x1d0], ecx
mov dword [esp + 0x1d4], edx
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102df6a4
mov dword [esp + 0x1e4], eax
call fcn.10045b90
push eax
mov byte [esp + 0x37c], 0x1f
lea edi, [esp + 0x1e4]
call fcn.10002b50
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [esp + 0x34]
cmp eax, 4
ja case.default.0x10197d0b
jmp dword [eax*4 + 0x10198800]
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x10197a96
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push str..PerformInstall.cpp
call fcn.10035dd0
mov byte [esp + 0x354], 0x26
push 0xb85
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push str.CNVInstaller::InternalPerformInstallPackagePhases
call fcn.10035dd0
mov byte [esp + 0x374], 0x27
lea ecx, [esp + 0x4e]
lea edx, [esp + 0x26c]
mov dword [esp + 0x270], ecx
mov dword [esp + 0x138], edx
lea eax, [esp + 0xf0]
lea ecx, [esp + 0x134]
lea edx, [esp + 0x204]
mov dword [esp + 0x204], eax
mov dword [esp + 0x208], ecx
mov dword [esp + 0x198], edx
lea eax, [esp + 0xa8]
lea ecx, [esp + 0x194]
lea edx, [esp + 0x1e4]
push 5
mov byte [esp + 0x52], bl
mov dword [esp + 0x138], str.Condition
mov dword [esp + 0x198], str.disabled_phase
mov dword [esp + 0x1e8], eax
mov dword [esp + 0x1ec], ecx
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102df6b8
mov dword [esp + 0x1ac], edx
call fcn.10045b90
push eax
mov byte [esp + 0x37c], 0x1f
lea edi, [esp + 0x1ac]
call fcn.10002b50
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
xor eax, eax
mov dword [esp + 0x34], eax
mov byte [esp + 0x13], 1
jmp 0x10197d02
cmp byte [esp + 0x13], bl
jne 0x10198549
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x10197ef3
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push str..PerformInstall.cpp
call fcn.10035dd0
mov byte [esp + 0x354], 0x28
push 0xb99
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push str.CNVInstaller::InternalPerformInstallPackagePhases
call fcn.10035dd0
mov byte [esp + 0x374], 0x29
lea eax, [esp + 0x4e]
lea ecx, [esp + 0x27c]
mov dword [esp + 0x280], eax
mov dword [esp + 0x1f0], ecx
lea edx, [esp + 0xa8]
lea eax, [esp + 0x1ec]
lea ecx, [esp + 0x1b4]
push 5
mov byte [esp + 0x52], bl
mov dword [esp + 0x1f0], str.Saving_manual_phase
mov dword [esp + 0x1b8], edx
mov dword [esp + 0x1bc], eax
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102c0e78
mov dword [esp + 0x204], ecx
call fcn.10045b90
push eax
mov byte [esp + 0x37c], 0x1f
lea edi, [esp + 0x204]
call fcn.10002b50
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
push ebx
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push edx
push eax
call fcn.1019cde0
jmp 0x10198549
mov eax, dword [esp + 0x38]
lea edx, [esp + 0x24]
mov dword [esp + 0x24], ebx
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x28]
call eax
cmp eax, ebx
jl 0x101973d6
cmp dword [esp + 0x24], ebx
jne 0x101986fe
mov eax, dword [esp + 0xec]
cmp eax, 3
ja case.default.0x1019815c
jmp dword [eax*4 + 0x10198814]
xor eax, eax
jmp 0x10197f75
mov ecx, dword [esp + 0xd4]
mov eax, dword [ecx - 0xc]
jmp 0x10197f75
lea ecx, [esp + 0xd4]
call fcn.10003a50
cmp eax, ebx
jne 0x10197f6e
xor eax, eax
jmp 0x10197f75
push eax
call dword [sym.imp.OLEAUT32.dll_VariantInit]
mov esi, dword [esp + 0x18]
cmp eax, ebx
sete al
add esi, 0x28c
cmp al, bl
jne 0x10198002
lea edx, [esp + 0x64]
push edx
call fcn.100acc10
mov byte [esp + 0x338], 0x2a
push eax
lea ecx, [esp + 0x288]
call fcn.100023b0
mov byte [esp + 0x338], 0x2b
push ebx
push eax
lea ecx, [esp + 0xdc]
call fcn.101e89b0
test eax, eax
setne byte [esp + 0x12]
mov byte [esp + 0x338], 0x2a
lea ecx, [esp + 0x284]
call fcn.10002d20
mov byte [esp + 0x338], 0x1f
lea ecx, [esp + 0x64]
call fcn.10004720
cmp byte [esp + 0x12], bl
je 0x10198072
lea ecx, [esp + 0xd4]
call fcn.10003840
push eax
jmp 0x1019806b
lea eax, [esp + 0x60]
push eax
call fcn.100acc10
mov byte [esp + 0x338], 0x2c
push eax
lea ecx, [esp + 0x2a8]
call fcn.100023b0
mov byte [esp + 0x338], 0x2d
push eax
lea ecx, [esp + 0x40]
push ecx
call fcn.101a51d0
add esp, 8
mov byte [esp + 0x12], al
mov byte [esp + 0x338], 0x2c
lea ecx, [esp + 0x2a4]
call fcn.10002d20
mov byte [esp + 0x338], 0x1f
lea ecx, [esp + 0x60]
call fcn.10004720
cmp byte [esp + 0x12], bl
je 0x10198072
lea edx, [esp + 0x3c]
push edx
mov ecx, esi
call fcn.1007dc80
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x5c]
mov esi, dword [esp + 0x14]
push eax
push ecx
mov ecx, dword [esp + 0x20]
push edx
push 1
call fcn.1019d0f0
mov eax, dword [esp + 0x38]
lea edx, [esp + 0x24]
mov dword [esp + 0x24], ebx
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x28]
call eax
cmp eax, ebx
jl 0x101973d6
cmp dword [esp + 0x24], ebx
jle 0x10198549
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0x3c]
push edx
call fcn.101a2730
mov byte [esp + 0x338], 0x2e
cmp dword [esp + 0x44], ebx
je 0x1019834d
lea ecx, [esp + 0x8c]
call fcn.10002dd0
mov byte [esp + 0x338], 0x2f
mov esi, dword [esp + 0x44]
lea ecx, [esp + 0x8c]
mov dword [esp + 0xa4], ebx
call fcn.100041b0
lea eax, [esp + 0x94]
push eax
call edi
cmp eax, ebx
jl 0x101973d6
mov ecx, 8
mov word [esp + 0x94], cx
lea eax, [esp + 0x9c]
mov dword [esp + 0xa4], 2
mov dword [esp + 0x9c], ebx
mov edx, dword [esi]
mov ecx, dword [edx + 0x24]
push eax
push esi
call ecx
cmp eax, ebx
jl 0x10198713
mov eax, dword [esp + 0xa4]
cmp eax, 3
ja case.default.0x1019815c
jmp dword [eax*4 + 0x10198824]
xor eax, eax
jmp 0x101981ae
mov edx, dword [esp + 0x8c]
mov eax, dword [edx - 0xc]
jmp 0x101981ae
lea ecx, [esp + 0x8c]
call fcn.100039a0
movzx ecx, word [eax]
cmp cx, bx
je 0x101981a3
cmp cx, 1
je 0x101981a3
cmp cx, 8
sete cl
cmp cl, bl
je 0x101986c3
mov eax, dword [eax + 8]
cmp eax, ebx
jne 0x101981a7
xor eax, eax
jmp 0x101981ae
push eax
call dword [sym.imp.OLEAUT32.dll_VariantInit]
cmp eax, ebx
sete al
cmp al, bl
je 0x10198211
lea ecx, [esp + 0x8c]
call fcn.10003840
cmp dword [esp + 0xa4], 3
jne 0x101981ea
lea eax, [esp + 0x94]
push eax
mov dword [esp + 0xa8], 1
call edi
cmp eax, ebx
jl 0x101973d6
cmp dword [esp + 0xa4], ebx
jne 0x101981fe
mov dword [esp + 0xa4], 1
push 9
push str._unnamed_
lea ecx, [esp + 0x94]
call fcn.100043a0
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x101982fb
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 + 0x354], 0x30
push 0xbc6
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push 0x31
xor eax, eax
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str.CNVInstaller::InternalPerformInstallPackagePhases
mov word [ecx + 4], ax
call fcn.10035ce0
mov byte [esp + 0x374], 0x31
lea ecx, [esp + 0x4e]
lea edx, [esp + 0x28c]
mov dword [esp + 0x290], ecx
mov dword [esp + 0x1c8], edx
lea eax, [esp + 0xc8]
lea ecx, [esp + 0x1c4]
lea edx, [esp + 0x214]
push 5
mov byte [esp + 0x52], bl
mov dword [esp + 0x1c8], str.Adding_uninstall_phase
mov dword [esp + 0x218], eax
mov dword [esp + 0x21c], ecx
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102df6cc
mov dword [esp + 0x17c], edx
call fcn.10045b90
push eax
mov byte [esp + 0x37c], 0x2f
lea edi, [esp + 0x17c]
call fcn.10002b50
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x18]
push 2
push eax
push ecx
mov ecx, dword [esp + 0x50]
call fcn.1019cde0
mov byte [esp + 0x338], 0x32
lea edx, [esp + 0x94]
push edx
call edi
mov byte [esp + 0x338], 0x2e
mov eax, dword [esp + 0x8c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x1019834d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x338], 0x1f
mov eax, dword [esp + 0x44]
cmp eax, ebx
je 0x10198090
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x10198090
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x10198458
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 + 0x354], 0x36
push 0xbd1
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push 0x31
xor edx, edx
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str.CNVInstaller::InternalPerformInstallPackagePhases
mov word [ecx + 4], dx
call fcn.10035ce0
mov byte [esp + 0x374], 0x37
lea eax, [esp + 0x4e]
lea ecx, [esp + 0x294]
mov dword [esp + 0x298], eax
mov dword [esp + 0x180], ecx
lea edx, [esp + 0xa8]
lea eax, [esp + 0x17c]
lea ecx, [esp + 0x18c]
push 5
mov byte [esp + 0x52], bl
mov dword [esp + 0x180], str.Saving_uninstall_only_phase
mov dword [esp + 0x190], edx
mov dword [esp + 0x194], eax
mov dword [esp + method.Nvidia::Logging::Loggable.virtual_0], 0x102c0f54
mov dword [esp + 0x144], ecx
call fcn.10045b90
push eax
mov byte [esp + 0x37c], 0x1f
lea edi, [esp + 0x144]
call fcn.10002b50
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
push 2
jmp 0x10197ef4
call fcn.10045b90
cmp dword [eax + 0x1c], 5
jl 0x10198549
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 + 0x354], 0x38
push 0xbd6
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push 0x31
xor eax, eax
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str.CNVInstaller::InternalPerformInstallPackagePhases
mov word [ecx + 4], ax
call fcn.10035ce0
mov byte [esp + 0x374], 0x39
lea ecx, [esp + 0x4e]
lea edx, [esp + 0x274]
mov dword [esp + 0x278], ecx
mov dword [esp + 0x148], edx
lea eax, [esp + 0xa8]
lea ecx, [esp + 0x144]
lea edx, [esp + 0x154]
push 5
mov byte [esp + 0x52], bl
mov dword [esp + 0x148], str.Skipping_install_close_phase
mov dword [esp + 0x158], eax
mov dword [esp + 0x15c], ecx
mov dword [esp + 0xec], 0x102c0f2c
mov dword [esp + 0xf0], edx
call fcn.10045b90
push eax
mov byte [esp + 0x37c], 0x1f
lea edi, [esp + 0xf0]
call fcn.10002b50
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov byte [esp + 0x338], 0x1c
mov eax, dword [esp + 0x20]
cmp eax, ebx
je 0x10198561
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov byte [esp + 0x338], 0x3c
lea eax, [esp + 0xdc]
push eax
call edi
mov byte [esp + 0x338], 0x1b
mov eax, dword [esp + 0xd4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x1019859e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x338], 0x14
lea ecx, [esp + 0x2c4]
push ecx
call fcn.1018aa00
mov byte [esp + 0x338], 0x3f
lea edx, [esp + 0xbc]
push edx
call edi
mov byte [esp + 0x338], 0x13
mov eax, dword [esp + 0xb4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x101985f0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x338], 0x42
lea ecx, [esp + 0x74]
push ecx
call edi
mov byte [esp + 0x338], 0x10
mov eax, dword [esp + 0x6c]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10198627
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x338], 0xc
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x1019863f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esp + 0x2c]
lea edx, [esp + 0x30]
mov dword [esp + 0x30], ebx
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x28]
call eax
cmp eax, ebx
jge 0x10197500
push ebx
push ebx
push 0x102b274a
push eax
call fcn.100048f0
push 0
push 0xb2d
push 0x102dcf48
push 0xe0e00000
call fcn.100048f0
push ebx
push 0xb46
push 0x102dcf48
push eax
call fcn.100048f0
push ebx
push 0xb47
push 0x102dcf48
push eax
call fcn.100048f0
push ebx
push 0xb48
push 0x102dcf48
push eax
call fcn.100048f0
push ebx
push 0xb49
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 0xb55
push 0x102dcf48
push eax
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 0xba1
push 0x102dcf48
push 0xe0e00000
call fcn.100048f0
push ebx
push 0xbc1
push 0x102dcf48
push eax
call fcn.100048f0
push ebx
push 0xbda
push 0x102dcf48
push 0xe0e00000
call fcn.100048f0
push ebx
push 0xb74
push 0x102dcf48
push 0xe0e00000
call fcn.100048f0
mov byte [esp + 0x338], 0xb
lea ecx, [esp + 0x3c]
call fcn.10004720
mov byte [esp + 0x338], 7
lea ecx, [esp + 0x38]
push ecx
call fcn.100b9200
mov byte [esp + 0x338], 3
lea edx, [esp + 0x2c]
push edx
call fcn.100b9200
mov byte [esp + 0x338], 1
lea ecx, [esp + 0x40]
call fcn.1003ca30
mov dword [esp + 0x338], 0xffffffff
lea eax, [esp + 0x68]
push eax
call fcn.100409e0
mov ecx, dword [esp + 0x330]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x318]
xor ecx, esp
call fcn.1022e78c
mov esp, ebp
pop ebp
ret 4