Function at 0x18029ba6
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xb0
mov eax, dword [0x181c0008]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x5c], ebx
lea ecx, [ebp - 0xac]
mov dword [ebp - 0x60], edi
lea eax, [edi + 4]
push eax
call fcn.1800ea8f
lea eax, [ebp - 0x58]
mov dword [ebp - 0x58], 0x1819c048
push eax
lea eax, [ebp - 0x28]
mov dword [ebp - 0x50], 0x200
xor esi, esi
mov ecx, ebx
push eax
mov dword [ebp - 0x54], esi
call fcn.1802dd3b
push eax
mov ecx, edi
call fcn.180290d5
mov dword [ebp - 0x4c], eax
test eax, eax
js 0x18029f05
push esi
push esi
push esi
push esi
push str.ping_freshness
push dword [ebp - 0x54]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x18029c63
mov esi, 0x181776a0
lea edi, [ebp - 0x18]
lea eax, [ebp - 0x18]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [sym.imp.ole32.dll_CoCreateGuid]
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x64]
call fcn.18009092
push 1
lea ecx, [ebp - 0x58]
push dword [eax]
push str.ping_freshness
call fcn.18011e45
mov ecx, dword [ebp - 0x64]
lea ecx, [ecx - 0x10]
call fcn.18004595
mov edi, dword [ebp - 0x60]
xor esi, esi
mov ecx, ebx
call fcn.1802ddaf
mov ecx, ebx
test al, al
je 0x18029c8a
lea eax, [ebp - 0x68]
push eax
call fcn.1802dd04
mov cl, byte [edi]
mov edx, eax
call fcn.180b42d5
mov ecx, dword [ebp - 0x68]
mov dword [ebp - 0x4c], eax
jmp 0x18029ce0
lea eax, [ebp - 0x38]
push eax
call fcn.1802dd3b
push eax
mov ecx, edi
call fcn.18028cf2
test al, al
jne 0x18029ce8
lea eax, [ebp - 0x74]
mov ecx, ebx
push eax
call fcn.1802dd04
mov dl, byte [edi]
lea ecx, [ebp - 0x70]
push eax
call fcn.180b41a4
pop ecx
push esi
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x6c], esi
push ecx
mov ecx, dword [eax]
mov edx, str.eulaaccepted
push 4
call fcn.180118b0
mov ecx, dword [ebp - 0x70]
add esp, 0xc
mov dword [ebp - 0x4c], eax
lea ecx, [ecx - 0x10]
call fcn.18004595
mov ecx, dword [ebp - 0x74]
lea ecx, [ecx - 0x10]
call fcn.18004595
mov eax, dword [ebp - 0x4c]
test eax, eax
js 0x18029f05
lea eax, [ebp - 0x78]
mov ecx, ebx
push eax
call fcn.1802dd72
mov ecx, dword [ebp - 0x78]
mov eax, dword [eax]
lea ecx, [ecx - 0x10]
mov esi, dword [eax - 0xc]
call fcn.18004595
test esi, esi
je 0x18029d39
lea eax, [ebp - 0x7c]
mov ecx, ebx
push eax
call fcn.1802dd72
push 1
lea ecx, [ebp - 0x58]
push dword [eax]
push str.lang
call fcn.18011e45
mov ecx, dword [ebp - 0x7c]
lea ecx, [ecx - 0x10]
call fcn.18004595
lea eax, [ebp - 0x80]
mov ecx, ebx
push eax
call fcn.1802e23d
mov ecx, dword [ebp - 0x80]
mov eax, dword [eax]
lea ecx, [ecx - 0x10]
mov esi, dword [eax - 0xc]
call fcn.18004595
test esi, esi
jne 0x18029d67
push 0x181a1064
lea ecx, [ebp - 0x58]
call fcn.18011643
jmp 0x18029d94
lea eax, [ebp - 0x84]
mov ecx, ebx
push eax
call fcn.1802e23d
push 1
lea ecx, [ebp - 0x58]
push dword [eax]
push 0x181a1064
call fcn.18011e45
mov ecx, dword [ebp - 0x84]
lea ecx, [ecx - 0x10]
call fcn.18004595
lea eax, [ebp - 0x48]
mov ecx, ebx
push eax
call fcn.1802dd3b
push eax
lea eax, [ebp - 0x4c]
mov ecx, edi
push eax
call fcn.18029021
lea esi, [ebx + 8]
mov eax, dword [esi]
xchg dword [esi], eax
add eax, 4
lea ecx, [ebp - 0x9c]
push eax
call fcn.1800ea8f
mov ecx, dword [ebp - 0x9c]
mov ebx, dword [ebx + 0xb0]
mov eax, dword [ecx]
call dword [eax + 8]
mov eax, dword [esi]
xchg dword [esi], eax
add eax, 4
lea ecx, [ebp - 0xa4]
push eax
call fcn.1800ea8f
mov esi, dword [ebp - 0x5c]
mov ecx, dword [esi + 0x88]
sub ecx, 0x10
call fcn.18006e45
mov ecx, dword [ebp - 0xa4]
lea edi, [eax + 0x10]
mov eax, dword [ecx]
mov dword [ebp - 0x88], edi
call dword [eax + 8]
lea eax, [ebp - 0x90]
mov ecx, esi
push eax
call fcn.1802deb2
mov ecx, dword [ebp - 0x5c]
mov esi, eax
lea eax, [ebp - 0x8c]
push eax
call fcn.1802dff4
push ebx
lea ecx, [ebp - 0x88]
mov edx, eax
push ecx
push esi
lea ecx, [ebp - 0x4c]
call fcn.180b45ec
mov ecx, dword [ebp - 0x8c]
add esp, 0xc
lea ecx, [ecx - 0x10]
call fcn.18004595
mov ecx, dword [ebp - 0x90]
lea ecx, [ecx - 0x10]
call fcn.18004595
lea ecx, [edi - 0x10]
call fcn.18004595
mov edi, dword [ebp - 0x60]
cmp byte [edi], 0
je 0x18029e88
call fcn.180a8a1d
test al, al
je 0x18029e88
push 1
push 0x1819ff08
push str.oeminstall
lea ecx, [ebp - 0x58]
call fcn.18011e45
mov ebx, dword [ebp - 0x5c]
mov ecx, ebx
call fcn.1802df98
test eax, eax
jne 0x18029ea5
push str.browser
lea ecx, [ebp - 0x58]
call fcn.18011643
jmp 0x18029eba
mov ecx, ebx
call fcn.1802df98
push eax
push str.browser
lea ecx, [ebp - 0x58]
call fcn.18011df3
mov ecx, ebx
call fcn.1802dfc6
cmp eax, 2
je 0x18029ef6
mov ecx, ebx
call fcn.1802dfc6
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0x94]
push eax
call fcn.1802dd04
mov cl, byte [edi]
mov edx, eax
push esi
call fcn.180b43f3
pop ecx
mov ecx, dword [ebp - 0x94]
lea ecx, [ecx - 0x10]
call fcn.18004595
mov ecx, dword [ebp - 0x4c]
lea ecx, [ecx - 0x10]
call fcn.18004595
xor esi, esi
jmp 0x18029f07
mov esi, eax
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x58], 0x1819c048
call fcn.18011673
mov ecx, dword [ebp - 0xac]
mov edx, dword [ecx]
call dword [edx + 8]
mov ecx, dword [ebp - 8]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1813c4a8
leave
ret 4