Function at 0x44d430
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x50c
mov eax, dword [0x4ea418]
xor eax, ebp
mov dword [ebp - 0x10], eax
test ecx, ecx
je 0x44d98c
mov edi, edx
mov esi, ecx
mov dword [ebp - 0x514], 1
mov dword [ebp - 0x518], 0x400
lea ebx, [ebp - 0x410]
push 0x400
push 0
push ebx
call fcn.0049dcc0
add esp, 0xc
lea eax, [ebp - 0x518]
lea ecx, [ebp - 0x514]
push eax
push ebx
push ecx
push 0x4d9771
push str.Software360SafeLiveup
push 0x80000002
call dword [sym.imp.SHLWAPI.dll_SHGetValueA]
test eax, eax
jne 0x44d98c
push ebx
call fcn.004b7fc0
add esp, 4
cmp eax, 0x40
jne 0x44d98c
pcmpeqd xmm0, xmm0
movdqu xmmword [ebp - 0x420], xmm0
movdqu xmmword [ebp - 0x430], xmm0
movdqu xmmword [ebp - 0x440], xmm0
movdqu xmmword [ebp - 0x450], xmm0
movdqu xmmword [ebp - 0x460], xmm0
movdqu xmmword [ebp - 0x470], xmm0
movdqu xmmword [ebp - 0x480], xmm0
movdqu xmmword [ebp - 0x490], xmm0
movdqu xmmword [ebp - 0x4a0], xmm0
movdqu xmmword [ebp - 0x4b0], xmm0
movdqu xmmword [ebp - 0x4c0], xmm0
movdqu xmmword [ebp - 0x4d0], xmm0
movdqu xmmword [ebp - 0x4e0], xmm0
movdqu xmmword [ebp - 0x4f0], xmm0
movdqu xmmword [ebp - 0x500], xmm0
movdqu xmmword [ebp - 0x510], xmm0
movzx eax, byte [ebp - 0x410]
test al, al
je 0x44d7e9
mov byte [ebp - 0x490], al
movzx eax, byte [ebp - 0x40f]
test al, al
je 0x44d7f4
mov byte [ebp - 0x48f], al
movzx eax, byte [ebp - 0x40e]
test al, al
je 0x44d7ff
mov byte [ebp - 0x48e], al
movzx eax, byte [ebp - 0x40d]
test al, al
je 0x44d80a
mov byte [ebp - 0x48d], al
movzx eax, byte [ebp - 0x40c]
test al, al
je 0x44d815
mov byte [ebp - 0x48c], al
movzx eax, byte [ebp - 0x40b]
test al, al
je 0x44d820
mov byte [ebp - 0x48b], al
movzx eax, byte [ebp - 0x40a]
test al, al
je 0x44d82b
mov byte [ebp - 0x48a], al
movzx eax, byte [ebp - 0x409]
test al, al
je 0x44d836
mov byte [ebp - 0x489], al
movzx eax, byte [ebp - 0x408]
test al, al
je 0x44d841
mov byte [ebp - 0x488], al
movzx eax, byte [ebp - 0x407]
test al, al
je 0x44d84c
mov byte [ebp - 0x487], al
movzx eax, byte [ebp - 0x406]
test al, al
je 0x44d857
mov byte [ebp - 0x486], al
movzx eax, byte [ebp - 0x405]
test al, al
je 0x44d862
mov byte [ebp - 0x485], al
movzx eax, byte [ebp - 0x404]
test al, al
je 0x44d86d
mov byte [ebp - 0x484], al
movzx eax, byte [ebp - 0x403]
test al, al
je 0x44d878
mov byte [ebp - 0x483], al
movzx eax, byte [ebp - 0x402]
test al, al
je 0x44d883
mov byte [ebp - 0x482], al
movzx eax, byte [ebp - 0x401]
test al, al
je 0x44d88e
mov byte [ebp - 0x481], al
movzx eax, byte [ebp - 0x400]
test al, al
je 0x44d896
mov byte [ebp - 0x480], al
movzx eax, byte [ebp - 0x3ff]
test al, al
je 0x44d89e
mov byte [ebp - 0x47f], al
movzx eax, byte [ebp - 0x3fe]
test al, al
je 0x44d8a6
mov byte [ebp - 0x47e], al
movzx eax, byte [ebp - 0x3fd]
test al, al
je 0x44d8ae
mov byte [ebp - 0x47d], al
movzx eax, byte [ebp - 0x3fc]
test al, al
je 0x44d8b6
mov byte [ebp - 0x47c], al
movzx eax, byte [ebp - 0x3fb]
test al, al
je 0x44d8be
mov byte [ebp - 0x47b], al
movzx eax, byte [ebp - 0x3fa]
test al, al
je 0x44d8c6
mov byte [ebp - 0x47a], al
movzx eax, byte [ebp - 0x3f9]
test al, al
je 0x44d8ce
mov byte [ebp - 0x479], al
movzx eax, byte [ebp - 0x3f8]
test al, al
je 0x44d8d6
mov byte [ebp - 0x478], al
movzx eax, byte [ebp - 0x3f7]
test al, al
je 0x44d8de
mov byte [ebp - 0x477], al
movzx eax, byte [ebp - 0x3f6]
test al, al
je 0x44d8e6
mov byte [ebp - 0x476], al
movzx eax, byte [ebp - 0x3f5]
test al, al
je 0x44d8ee
mov byte [ebp - 0x475], al
movzx eax, byte [ebp - 0x3f4]
test al, al
je 0x44d8f6
mov byte [ebp - 0x474], al
movzx eax, byte [ebp - 0x3f3]
test al, al
je 0x44d8fe
mov byte [ebp - 0x473], al
movzx eax, byte [ebp - 0x3f2]
test al, al
je 0x44d906
mov byte [ebp - 0x472], al
movzx ecx, byte [ebp - 0x3f1]
test cl, cl
je 0x44d90e
lea eax, [ebp - 0x470]
mov byte [ebp - 0x471], cl
jmp 0x44d914
lea eax, [ebp - 0x490]
jmp 0x44d914
lea eax, [ebp - 0x48f]
jmp 0x44d914
lea eax, [ebp - 0x48e]
jmp 0x44d914
lea eax, [ebp - 0x48d]
jmp 0x44d914
lea eax, [ebp - 0x48c]
jmp 0x44d914
lea eax, [ebp - 0x48b]
jmp 0x44d914
lea eax, [ebp - 0x48a]
jmp 0x44d914
lea eax, [ebp - 0x489]
jmp 0x44d914
lea eax, [ebp - 0x488]
jmp 0x44d914
lea eax, [ebp - 0x487]
jmp 0x44d914
lea eax, [ebp - 0x486]
jmp 0x44d914
lea eax, [ebp - 0x485]
jmp 0x44d914
lea eax, [ebp - 0x484]
jmp 0x44d914
lea eax, [ebp - 0x483]
jmp 0x44d914
lea eax, [ebp - 0x482]
jmp 0x44d914
lea eax, [ebp - 0x481]
jmp 0x44d914
lea eax, [ebp - 0x480]
jmp 0x44d914
lea eax, [ebp - 0x47f]
jmp 0x44d914
lea eax, [ebp - 0x47e]
jmp 0x44d914
lea eax, [ebp - 0x47d]
jmp 0x44d914
lea eax, [ebp - 0x47c]
jmp 0x44d914
lea eax, [ebp - 0x47b]
jmp 0x44d914
lea eax, [ebp - 0x47a]
jmp 0x44d914
lea eax, [ebp - 0x479]
jmp 0x44d914
lea eax, [ebp - 0x478]
jmp 0x44d914
lea eax, [ebp - 0x477]
jmp 0x44d914
lea eax, [ebp - 0x476]
jmp 0x44d914
lea eax, [ebp - 0x475]
jmp 0x44d914
lea eax, [ebp - 0x474]
jmp 0x44d914
lea eax, [ebp - 0x473]
jmp 0x44d914
lea eax, [ebp - 0x472]
jmp 0x44d914
lea eax, [ebp - 0x471]
mov byte [eax], 0
mov eax, 0x80
xor ecx, ecx
nop
movzx edx, byte [ebp + ecx - 0x3f0]
test dl, dl
je 0x44d944
mov byte [ebp + ecx - 0x510], dl
inc ecx
dec eax
cmp ecx, 0x80
jne 0x44d920
mov ecx, 0x80
xor eax, eax
add ecx, ebp
add ecx, 0xfffffaf0
cmp eax, 1
sbb ecx, 0
mov byte [ecx], 0
push 0x400
push 0
push ebx
call fcn.0049dcc0
add esp, 0xc
lea ecx, [ebp - 0x490]
mov edx, ebx
push 0x400
call fcn.0044d000
add esp, 4
lea eax, [ebp - 0x510]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x44d9a5
xor ebx, ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004961ed
mov eax, ebx
add esp, 0x50c
pop esi
pop edi
pop ebx
pop ebp
ret
test edi, edi
jle 0x44d9e8
lea ecx, [edi - 1]
cmp ecx, 0x7ffffffd
mov eax, 0x7ffffffd
cmovb eax, ecx
inc eax
xor ecx, ecx
nop dword [eax]
movzx edx, byte [ebp + ecx - 0x490]
test dl, dl
je 0x44d9d5
mov byte [esi + ecx], dl
dec edi
inc ecx
cmp eax, ecx
jne 0x44d9c0
add esi, ecx
xor eax, eax
test edi, edi
setne bl
sete al
sub esi, eax
mov byte [esi], 0
jmp 0x44d98e
je 0x44d98c
mov byte [esi], 0
jmp 0x44d98c