Function at 0x10037f5
Capabilities:
Query or enumerate registry value via stdregprov

Disassembly:
push 0x7c
mov eax, 0x100d958
call fcn.01007951
xor esi, esi
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], esi
lea ecx, [ebp - 0x24]
call sub.framedynos.dll_public:_void___thiscall_CHString::constructor_void_
mov dword [ebp - 4], esi
lea eax, [ebp - 0x64]
push eax
mov edi, dword [sym.imp.OLEAUT32.dll_VariantClear]
call edi
lea eax, [ebp - 0x54]
push eax
call edi
lea eax, [ebp - 0x44]
push eax
call edi
lea eax, [ebp - 0x74]
push eax
call edi
lea eax, [ebp - 0x84]
push eax
call edi
mov byte [ebp - 4], 1
push 0x1001518
lea ecx, [ebp - 0x28]
call fcn.01002ec1
mov byte [ebp - 4], 2
cmp dword [eax], esi
je 0x1003860
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x1003862
xor eax, eax
mov ebx, dword [ebp + 0xc]
mov ecx, dword [ebx]
push esi
lea edx, [ebp - 0x1c]
push edx
push esi
push esi
push eax
push ebx
call dword [ecx + 0x18]
mov edi, eax
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x28]
cmp ecx, esi
je 0x1003888
call fcn.010035ed
mov dword [ebp - 0x28], esi
cmp edi, esi
jge 0x1003894
push edi
call fcn.01007543
cmp edi, esi
je 0x10038d7
push esi
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x64]
push eax
push ebx
push dword [ebp - 0x14]
push dword [ebp - 0x18]
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.01002bc4
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call sub.framedynos.dll_public:_void___thiscall_CHString::destructor_void_
xor eax, eax
inc eax
call fcn.010079ca
ret 8
mov ebx, 0x10014f8
push ebx
lea ecx, [ebp - 0x2c]
call fcn.01002ec1
mov byte [ebp - 4], 3
cmp dword [eax], esi
je 0x10038f3
mov eax, dword [eax]
mov ecx, dword [eax]
jmp 0x10038f5
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax]
push esi
lea edi, [ebp - 0x20]
push edi
push esi
push ecx
push eax
call dword [edx + 0x4c]
mov edi, eax
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x2c]
cmp ecx, esi
je 0x100391a
call fcn.010035ed
mov dword [ebp - 0x2c], esi
cmp edi, esi
jge 0x1003926
push edi
call fcn.01007543
cmp edi, esi
je 0x1003948
push esi
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x64]
push eax
push dword [ebp + 0xc]
jmp 0x10038af
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
lea edx, [ebp - 0x14]
push edx
push esi
push eax
call dword [ecx + 0x3c]
mov edi, eax
cmp edi, esi
jge 0x1003964
push edi
call fcn.01007543
cmp edi, esi
jne 0x1003928
push 8
pop eax
mov word [ebp - 0x64], ax
push 0x1001498
mov edi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
call edi
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push esi
lea edx, [ebp - 0x64]
push edx
push esi
push 0x100147c
push eax
call dword [ecx + 0x14]
cmp eax, esi
jge 0x100399b
push eax
call fcn.01007543
push 8
pop eax
mov word [ebp - 0x54], ax
push 0x1001464
call edi
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push esi
lea edx, [ebp - 0x54]
push edx
push esi
push 0x100144c
push eax
call dword [ecx + 0x14]
cmp eax, esi
jge 0x10039ca
push eax
call fcn.01007543
push 3
pop eax
mov word [ebp - 0x44], ax
mov dword [ebp - 0x3c], 0x80000002
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push esi
lea edx, [ebp - 0x44]
push edx
push esi
push 0x100143c
push eax
call dword [ecx + 0x14]
cmp eax, esi
jge 0x10039f6
push eax
call fcn.01007543
push ebx
lea ecx, [ebp - 0x34]
call fcn.01002ec1
mov edi, eax
mov byte [ebp - 4], 4
push 0x1001518
lea ecx, [ebp - 0x30]
call fcn.01002ec1
mov byte [ebp - 4], 5
cmp dword [edi], esi
je 0x1003a20
mov edi, dword [edi]
mov edi, dword [edi]
jmp 0x1003a22
xor edi, edi
cmp dword [eax], esi
je 0x1003a2c
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x1003a2e
xor eax, eax
mov ebx, dword [ebp + 0xc]
mov ecx, dword [ebx]
push esi
lea edx, [ebp - 0x18]
push edx
push dword [ebp - 0x14]
push esi
push esi
push edi
push eax
push ebx
call dword [ecx + 0x60]
mov edi, eax
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x30]
cmp ecx, esi
je 0x1003a58
call fcn.010035ed
mov dword [ebp - 0x30], esi
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x34]
cmp ecx, esi
je 0x1003a6b
call fcn.010035ed
mov dword [ebp - 0x34], esi
cmp edi, esi
jge 0x1003a75
push edi
call fcn.01007543
mov eax, dword [ebp - 0x18]
push esi
cmp eax, esi
jne 0x1003a9e
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x64]
push eax
push ebx
push dword [ebp - 0x14]
push esi
jmp 0x10038b5
mov ecx, dword [eax]
push esi
lea edx, [ebp - 0x84]
push edx
push esi
push 0x1001424
push eax
call dword [ecx + 0x10]
cmp eax, esi
jge 0x1003abc
push eax
call fcn.01007543
push esi
cmp dword [ebp - 0x7c], esi
jne 0x1003897
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
push esi
lea edx, [ebp - 0x74]
push edx
push esi
push 0x1001414
push eax
call dword [ecx + 0x10]
mov edi, eax
cmp edi, esi
jge 0x1003ae8
push edi
call fcn.01007543
cmp edi, esi
jne 0x1003896
mov dword [ebp - 4], esi
push dword [ebp - 0x6c]
lea ecx, [ebp - 0x24]
call sub.framedynos.dll_public:_class_CHString_const____thiscall_CHString::operator_unsigned_short_int_const__
push 0x1fc
call fcn.01008533
mov edi, eax
cmp edi, esi
jne 0x1003b12
push edi
jmp 0x1003897
mov ebx, dword [ebp - 0x24]
push esi
push ebx
call fcn.01008332
inc eax
inc eax
push eax
push ebx
push edi
call fcn.01008ca4
push esi
push 0x100140c
push edi
call fcn.01008c34
mov esi, eax
neg esi
sbb esi, esi
neg esi
inc esi
inc esi
push edi
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x64]
push eax
push dword [ebp + 0xc]
push dword [ebp - 0x14]
push dword [ebp - 0x18]
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.01002bc4
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call sub.framedynos.dll_public:_void___thiscall_CHString::destructor_void_
mov eax, esi
jmp 0x10038cf