Function at 0x100640c0
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100a0968
mov eax, dword fs:[0]
push eax
sub esp, 0x24
push ebx
push esi
push edi
mov eax, dword [0x100d8dd0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
xor edi, edi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 4], edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x14], edi
mov byte [ebp - 4], 1
mov byte [ebp - 4], 2
push edi
push 1
lea eax, [ebp - 0x1c]
push eax
call fcn.10063e90
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x14]
call fcn.10016ee0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1c]
call fcn.10018380
mov dword [ebp - 4], 1
push 0x400
lea ecx, [ebp - 0x30]
call fcn.10055910
mov ebx, dword [ebp - 0x30]
test al, al
je 0x1006416a
mov ecx, 0x400
mov eax, dword [ebp - 0x2c]
sub ecx, eax
push ecx
add eax, ebx
push eax
call fcn.100573d0
add esp, 8
mov esi, 0x400
mov dword [ebp - 0x2c], esi
jmp 0x1006416d
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], edi
cmp esi, 0xffffffff
ja 0x1006426b
lea esp, [esp]
mov dword [ebp - 0x18], esi
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x14]
cmp ecx, edi
je 0x10064280
lea edx, [ebp - 0x18]
push edx
push ebx
lea edx, [ebp - 0x1c]
push edx
push edi
push eax
mov eax, dword [ecx + 4]
push eax
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
cmp eax, edi
je 0x10064303
cmp eax, 2
je 0x10064295
cmp eax, 0xea
jne 0x100642e4
mov edi, dword [ebp - 0x18]
add edi, 4
jne 0x100641f3
test ebx, ebx
je 0x100641e9
xor eax, eax
test esi, esi
jbe 0x100641db
inc eax
cmp eax, esi
jb 0x100641d6
push ebx
call fcn.1007d7a6
add esp, 4
xor ebx, ebx
mov dword [ebp - 0x30], ebx
xor esi, esi
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x28], esi
jmp 0x10064259
cmp edi, dword [ebp - 0x28]
ja 0x1006422c
cmp esi, edi
jae 0x10064213
mov ecx, edi
sub ecx, esi
push ecx
add esi, ebx
push esi
call fcn.100573d0
add esp, 8
mov esi, edi
mov dword [ebp - 0x2c], esi
jmp 0x10064259
jbe 0x10064225
xor eax, eax
sub esi, edi
je 0x10064225
jmp 0x10064220
inc eax
cmp eax, esi
jb 0x10064220
mov esi, edi
mov dword [ebp - 0x2c], esi
jmp 0x10064259
push edi
lea ecx, [ebp - 0x30]
call fcn.10055910
mov ebx, dword [ebp - 0x30]
test al, al
je 0x10064256
mov edx, edi
mov eax, dword [ebp - 0x2c]
sub edx, eax
push edx
add eax, ebx
push eax
call fcn.100573d0
add esp, 8
mov esi, edi
mov dword [ebp - 0x2c], esi
jmp 0x10064259
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
xor edi, edi
cmp esi, 0xffffffff
jbe 0x10064180
push edi
push 0x20f
push str.c:dvsp4_build_sw_relgpu_drv_r265_r265_36installer2.0incNVI2Defns.h
push 0x80070057
call fcn.10001ed0
push edi
push 0x181
push str.c:dvsp4_build_sw_relgpu_drv_r265_r265_36installer2.0incRefCounted.h
push 0x80004003
call fcn.10001ed0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x14], 0
call fcn.10018330
mov dword [ebp - 4], 0xffffffff
test ebx, ebx
je 0x100642ce
xor eax, eax
test esi, esi
jbe 0x100642c5
lea esp, [esp]
inc eax
cmp eax, esi
jb 0x100642c0
push ebx
call fcn.1007d7a6
add esp, 4
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp eax, edi
jle 0x100642f2
and eax, 0xffff
or eax, 0x80070000
push edi
push 0x53f
push str..Registry.cpp
push eax
call fcn.10001ed0
mov eax, dword [ebp - 0x18]
mov edi, eax
test eax, eax
jne 0x10064331
test ebx, ebx
je 0x10064327
test esi, esi
jbe 0x10064319
inc eax
cmp eax, esi
jb 0x10064314
push ebx
call fcn.1007d7a6
add esp, 4
xor ebx, ebx
mov dword [ebp - 0x30], ebx
xor esi, esi
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x28], esi
jmp 0x10064390
cmp eax, dword [ebp - 0x28]
ja 0x10064363
cmp esi, eax
jae 0x1006434f
sub eax, esi
push eax
add esi, ebx
push esi
call fcn.100573d0
add esp, 8
mov esi, edi
mov dword [ebp - 0x2c], esi
jmp 0x10064390
jbe 0x1006435c
xor ecx, ecx
sub esi, eax
je 0x1006435c
inc ecx
cmp ecx, esi
jb 0x10064357
mov esi, edi
mov dword [ebp - 0x2c], esi
jmp 0x10064390
push eax
lea ecx, [ebp - 0x30]
call fcn.10055910
mov ebx, dword [ebp - 0x30]
test al, al
je 0x1006438d
mov ecx, edi
mov eax, dword [ebp - 0x2c]
sub ecx, eax
push ecx
add eax, ebx
push eax
call fcn.100573d0
add esp, 8
mov esi, edi
mov dword [ebp - 0x2c], esi
jmp 0x10064390
mov esi, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x1c]
push edx
lea eax, [ebp - 0x30]
push eax
call fcn.10063060
add esp, 8
mov edi, eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x100643b9
mov dword [ebp - 0x14], 0
call fcn.10018330
mov dword [ebp - 4], 0xffffffff
test ebx, ebx
je 0x100642ce
xor eax, eax
test esi, esi
jbe 0x100643d5
mov edi, edi
inc eax
cmp eax, esi
jb 0x100643d0
push ebx
call fcn.1007d7a6
add esp, 4
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4