Function at 0x4436f0
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x63bf68
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x18
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov edx, dword [ebx + 0x13c]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [ebp - 0x10], esp
mov dword [ebp - 4], 0
je 0x4438df
push 0x5c
push edx
call fcn.0060ab40
mov esi, eax
add esp, 8
test esi, esi
je 0x443747
inc esi
jmp 0x44374d
mov esi, dword [ebx + 0x13c]
push 0xb
push str.firefox.exe
push esi
call fcn.0060d550
add esp, 0xc
test eax, eax
jne 0x443968
test dword [ebx + 0x16c], 0x100000
jne 0x4438df
mov eax, dword [ebx + 0x198]
push str.Firefox_
push eax
mov dword [ebp - 0x14], 0
mov byte [ebp + 0xb], 0
call fcn.00609cc0
add esp, 8
test eax, eax
je 0x4437ce
lea ecx, [ebp - 0x18]
add eax, 8
push ecx
push 0x6c9150
push eax
call fcn.0060a0d0
add esp, 0xc
cmp eax, 1
jne 0x4437ce
cmp dword [ebp - 0x18], 7
jle 0x4437bf
mov dword [ebp - 0x14], 1
mov ebx, dword [ebp + 0xc]
cmp ebx, 1
jle 0x4437d1
mov al, 1
jmp 0x443901
mov ebx, dword [ebp + 0xc]
lea edx, [ebp - 0x18]
lea eax, [ebp - 0x20]
push edx
mov edx, dword [0x6fc940]
lea ecx, [ebp - 0x1c]
push eax
push ecx
push str._ld__ld__ld
push edx
call fcn.0060a0d0
add esp, 0x14
cmp eax, 3
jne 0x443875
lea eax, [ebp + 0xc]
push eax
call fcn.0061fc90
push 0
lea ecx, [ebp + 0xc]
call fcn.0061fca3
mov esi, dword [eax + 0x10]
push 0
lea ecx, [ebp + 0xc]
inc esi
call fcn.0061fca3
mov edi, dword [eax + 0xc]
push 0
lea ecx, [ebp + 0xc]
call fcn.0061fca3
mov eax, dword [eax + 0x14]
add eax, 0x76c
lea ecx, [eax + eax*8]
lea eax, [eax + ecx*8]
lea edx, [eax + eax*4]
mov eax, esi
shl eax, 4
sub eax, esi
lea ecx, [edx + eax*2]
mov eax, dword [ebp - 0x18]
lea edx, [eax + eax*8]
lea eax, [eax + edx*8]
lea eax, [eax + eax*4]
sub ecx, eax
mov eax, dword [ebp - 0x1c]
mov edx, eax
shl edx, 4
sub edx, eax
shl edx, 1
sub ecx, edx
mov edx, dword [ebp - 0x20]
sub ecx, edx
lea eax, [ecx + edi - 0xb2390]
cmp eax, 0x2d
jbe 0x443875
mov byte [ebp + 0xb], 1
jmp 0x4438fe
mov eax, dword [0x6f7b78]
mov dword [ebp + 0xc], eax
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 1
test eax, eax
mov eax, str.bShFF8Tip
jne 0x443892
mov eax, str.bShFFTip
push ebx
push eax
lea ecx, [ebp + 0xc]
push str._s_ld
push ecx
call fcn.0061fae1
mov ecx, dword [ebp + 0xc]
add esp, 0x10
lea edx, [ebp - 0x20]
lea eax, [ebp - 0x1c]
push edx
mov edx, dword [0x6fcafc]
push eax
push 0
push 0
push ecx
push edx
mov dword [ebp - 0x20], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x4438f2
cmp dword [ebp - 0x1c], 1
jne 0x4438f2
mov byte [ebp - 4], 0
lea ecx, [ebp + 0xc]
call fcn.00622d8a
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 0
call fcn.00622d8a
mov al, byte [ebp + 0xb]
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x443938
test al, al
je 0x44390f
or ebx, 8
push 0
push 0
push 0
push 0
push ebx
push 0x43e780
call fcn.00626cae
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test al, al
je 0x44393f
or ebx, 8
push 0
push 0
push 0
push 0
push ebx
push 0x43e750
call fcn.00626cae
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa
push str.chrome.exe
push esi
call fcn.0060bf70
add esp, 0xc
test eax, eax
jne 0x443a1f
mov esi, dword [ebp + 0xc]
cmp esi, 1
setg al
test al, al
jne 0x4439f3
mov eax, dword [0x6f7b78]
mov dword [ebp + 0xc], eax
push esi
lea ecx, [ebp + 0xc]
push str.bShChrIntTip2__ld
push ecx
mov byte [ebp - 4], 2
call fcn.0061fae1
mov ecx, dword [ebp + 0xc]
add esp, 0xc
lea edx, [ebp - 0x20]
lea eax, [ebp - 0x1c]
push edx
mov edx, dword [0x6fcafc]
push eax
push 0
push 0
push ecx
push edx
mov dword [ebp - 0x20], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x4439e5
cmp dword [ebp - 0x1c], 1
jne 0x4439e5
mov byte [ebp - 4], 0
lea ecx, [ebp + 0xc]
jmp 0x4438da
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 0
call fcn.00622d8a
jmp 0x4439f6
or esi, 8
push 0
push 0
push 0
push 0
push esi
push 0x43e7b0
call fcn.00626cae
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x13
push str.MicrosoftEdgeCP.exe
push esi
call fcn.0060bf70
add esp, 0xc
test eax, eax
jne 0x4438df
test dword [ebx + 0x16c], 0x100000
jne 0x4438df
mov esi, dword [ebp + 0xc]
cmp esi, 1
setg al
test al, al
jne 0x443aba
mov eax, dword [0x6f7b78]
mov dword [ebp + 8], eax
push esi
lea ecx, [ebp + 8]
push str.bShEdgeIntTip__ld
push ecx
mov byte [ebp - 4], 3
call fcn.0061fae1
mov ecx, dword [ebp + 8]
add esp, 0xc
lea edx, [ebp - 0x14]
lea eax, [ebp - 0x24]
push edx
mov edx, dword [0x6fcafc]
push eax
push 0
push 0
push ecx
push edx
mov dword [ebp - 0x14], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x443aac
cmp dword [ebp - 0x24], 1
jne 0x443aac
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
jmp 0x4438da
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0
call fcn.00622d8a
jmp 0x443abd
or esi, 8
push 0
push 0
push 0
push 0
push esi
push 0x43e7e0
call fcn.00626cae
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov eax, 1
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret