Function at 0x1000d81f
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov eax, 0x105c
call fcn.10025d90
mov eax, dword [0x1005c010]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, dword [0x1005e7f8]
mov ecx, dword [0x1005dbfc]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 4]
jg 0x1000d8a2
mov esi, dword [ebp + 8]
cmp byte [0x1005e7f7], 0
js 0x1000d878
mov eax, dword [0x1005e7f4]
mov dword [esi + 8], eax
movsd xmm0, qword [0x1005e7ec]
movsd qword [esi], xmm0
jmp 0x1000d88b
mov ecx, esi
push dword [0x1005e7f0]
push dword [0x1005e7ec]
call fcn.1002364e
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10025727
mov eax, esi
add esp, 0x105c
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x1005e7f8
call fcn.10024716
add esp, 4
cmp dword [0x1005e7f8], 0xffffffff
jne 0x1000d856
mov esi, 0xffffffa0
mov eax, dword [esi + 0x10054d48]
mov ecx, dword [esi + str.SoftwarePoliciesMicrosoftInternet_ExplorerMainEnterpriseMode]
xor edi, edi
mov dword [ebp - 0x1058], edi
lea edx, [ebp - 0x1058]
push edx
push 0x20119
push edi
push eax
push ecx
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x1000d98c
mov ebx, dword [ebp - 0x1058]
mov edi, 0x1048
push edi
xor eax, eax
push eax
lea eax, [ebp - 0x1058]
push eax
call fcn.10027f80
add esp, 0xc
mov eax, dword [esi + 0x10054d4c]
mov dword [ebp - 0x105c], 0xffffffff
mov dword [ebp - 0x1060], edi
lea ecx, [ebp - 0x1060]
push ecx
lea ecx, [ebp - 0x1058]
push ecx
lea ecx, [ebp - 0x105c]
push ecx
xor ecx, ecx
push ecx
push eax
mov dword [ebp - 0x1064], ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x1000d977
mov eax, dword [ebp - 0x105c]
dec eax
cmp eax, 1
ja 0x1000d977
mov eax, dword [ebp - 0x1060]
test eax, eax
je 0x1000d9c5
test al, 1
jne 0x1000d977
and eax, 0xfffffffe
lea ecx, [ebp - 0x1058]
cmp word [eax + ecx - 2], 0
je 0x1000d9ce
cmp dword [ebp - 0x1064], 0
je 0x1000d98c
push dword [ebp - 0x1064]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
add esi, 0xc
jne 0x1000d8bd
xor eax, eax
mov dword [0x1005e7f0], eax
mov dword [0x1005e7ec], eax
mov dword [0x1005e7f4], eax
push 0x1000db10
call fcn.10024768
add esp, 4
push 0x1005e7f8
call fcn.100246cc
add esp, 4
jmp 0x1000d856
mov word [ebp - 0x1058], 0
xor esi, esi
mov dword [ebp - 0x105c], esi
lea eax, [ebp - 0x105c]
push eax
push esi
push 0x104
lea eax, [ebp - 0x1058]
push eax
call sub.urlmon.dll_CreateUri
test eax, eax
jne 0x1000da21
mov dword [ebp - 0x1060], 0
mov eax, dword [ebp - 0x105c]
mov ecx, dword [eax]
lea edx, [ebp - 0x1060]
push edx
push eax
call dword [ecx + 0x1c]
mov edi, dword [ebp - 0x1060]
test eax, eax
je 0x1000da6b
push edi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [0x1005e7f0], esi
mov dword [0x1005e7ec], esi
mov dword [0x1005e7f4], esi
mov eax, dword [ebp - 0x105c]
test eax, eax
je 0x1000da4d
mov dword [ebp - 0x105c], 0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp dword [ebp - 0x1064], 0
je 0x1000d9a6
push dword [ebp - 0x1064]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x1000d9a6
push edi
call fcn.10036a95
add esp, 4
cmp eax, 0x7ffffff0
jae 0x1000daf8
mov ebx, eax
cmp eax, 5
jae 0x1000da98
mov byte [0x1005e7f7], bl
mov dword [ebp - 0x1068], 0x1005e7ec
test ebx, ebx
jne 0x1000dac7
jmp 0x1000dadb
lea esi, [ebx + 8]
and esi, 0xfffffff8
lea eax, [esi + esi]
push eax
call fcn.10024ace
add esp, 4
mov dword [ebp - 0x1068], eax
mov dword [0x1005e7ec], eax
or esi, 0x80000000
mov dword [0x1005e7f4], esi
mov dword [0x1005e7f0], ebx
mov eax, ebx
add eax, ebx
push eax
push edi
push dword [ebp - 0x1068]
call fcn.10027a00
add esp, 0xc
mov eax, dword [ebp - 0x1068]
mov word [eax + ebx*2], 0
push dword [ebp - 0x1060]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
jmp 0x1000da33
mov ecx, 0x1005e7ec
call fcn.10022fc4
int3