Function at 0x4068b0
Capabilities:
Query or enumerate registry value
Set registry value

Disassembly:
mov eax, 0x1ed8
call fcn.00406160
push ebx
push ebp
mov ebp, dword [esp + 0x1ee8]
push esi
push edi
push 0x4273f4
push ebp
call fcn.0041750c
add esp, 8
test eax, eax
jne 0x4068e1
mov esi, str.Foxit_SSH_Link
jmp 0x406999
push 0x4273cc
push ebp
call fcn.0041750c
add esp, 8
test eax, eax
jne 0x4068fd
mov esi, str.PDF_Text_Converter
jmp 0x406999
push 0x42739c
push ebp
call fcn.0041750c
add esp, 8
test eax, eax
jne 0x406919
mov esi, str.PDF_Text_Viewer
jmp 0x406999
push 0x427374
push ebp
call fcn.0041750c
add esp, 8
test eax, eax
jne 0x406932
mov esi, str.WAC_Server
jmp 0x406999
push 0x427354
push ebp
call fcn.0041750c
add esp, 8
test eax, eax
jne 0x40694b
mov esi, str.PDF_Page_Organizer
jmp 0x406999
push 0x427324
push ebp
call fcn.0041750c
add esp, 8
test eax, eax
jne 0x406964
mov esi, str.PDF_Page_Organizer_Pro
jmp 0x406999
push 0x4272ec
push ebp
call fcn.0041750c
add esp, 8
test eax, eax
jne 0x40697d
mov esi, str.PDF_Editor
jmp 0x406999
push 0x4272cc
push ebp
call fcn.0041750c
add esp, 8
mov esi, str.Foxit_Reader_Pro
test eax, eax
je 0x406999
mov esi, str.Foxit_License
mov ecx, 0x80
xor eax, eax
lea edi, [esp + 0x2e8]
mov ebx, dword [0x41f050]
rep stosd dword es:[edi], eax
mov ecx, 0x80
lea edi, [esp + 0xae8]
rep stosd dword es:[edi], eax
mov ecx, 0x80
lea edi, [esp + 0x6e8]
rep stosd dword es:[edi], eax
mov ecx, 0x80
lea edi, [esp + 0x4e8]
rep stosd dword es:[edi], eax
mov ecx, 0x80
lea edi, [esp + 0x8e8]
rep stosd dword es:[edi], eax
mov ecx, 0x200
lea edi, [esp + 0x16e8]
rep stosd dword es:[edi], eax
mov ecx, 0x80
lea edi, [esp + 0xe8]
rep stosd dword es:[edi], eax
mov ecx, 0x200
lea edi, [esp + 0xee8]
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x1eec]
lea eax, [esp + 0x2e8]
push edi
push 0x100
push eax
push 0x42ca44
push 0x427284
push esi
call ebx
cmp word [esp + 0x2e8], 0
jne 0x406a5e
push edi
lea ecx, [esp + 0x2ec]
push 0x100
push ecx
mov esi, str.Foxit_License
push 0x42ca44
push 0x427284
push esi
call ebx
push edi
lea edx, [esp + 0x16ec]
push 0x400
push edx
push 0x42ca44
push str.Modules
push esi
call ebx
push edi
lea eax, [esp + 0xaec]
push 0x100
push eax
push 0x42ca44
push str.Users
push esi
call ebx
push edi
lea ecx, [esp + 0x6ec]
push 0x100
push ecx
push 0x42ca44
push str.Licensee
push esi
call ebx
push edi
lea edx, [esp + 0x4ec]
push 0x100
push edx
push 0x42ca44
push str.ExpireDate
push esi
call ebx
push edi
lea eax, [esp + 0xcec]
push 0x100
push eax
push 0x42ca44
push str.Sign
push esi
call ebx
push edi
lea ecx, [esp + 0xeec]
push 0x400
push ecx
push 0x42ca44
push str.Restrictions
push esi
call ebx
push edi
lea edx, [esp + 0x8ec]
push 0x100
push edx
push 0x42ca44
push str.LicenseDate
push esi
call ebx
push edi
lea eax, [esp + 0xec]
push 0x400
push eax
push 0x42ca44
push str.CDKey
push esi
call ebx
push 3
lea ecx, [esp + 0x2ec]
push ebp
push ecx
call fcn.004174d4
add esp, 0xc
test eax, eax
je 0x406b5a
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1ed8
ret
lea edx, [esp + 0x6e8]
push str.Unregistered_Retail_Customer
push edx
call fcn.0041750c
add esp, 8
test eax, eax
jne 0x406d35
mov ecx, 0x20
lea edi, [esp + 0x28]
rep stosd dword es:[edi], eax
lea eax, [esp + 0xe8]
push eax
call fcn.0041cef0
mov cl, byte [esp + 0xec]
mov al, byte [esp + 0xf0]
mov dl, byte [esp + 0xee]
mov byte [esp + 0x2c], cl
mov cl, byte [esp + 0xf2]
add esp, 4
mov byte [esp + 0x2a], al
mov byte [esp + 0x29], dl
mov byte [esp + 0x2b], cl
xor eax, eax
cmp eax, 2
mov ecx, 5
jl 0x406bcf
mov ecx, 6
lea ecx, [ecx + eax*2]
mov dl, byte [esp + ecx*2 + 0xe8]
mov bl, byte [esp + ecx*2 + 0xea]
shl dl, 4
add dl, bl
sub dl, 0x51
mov byte [esp + eax + 0x2c], dl
inc eax
cmp eax, 4
jl 0x406bc0
mov edi, str.Write_to_sales_foxitsoftware.com_for_more_information.
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x30]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x80
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x2c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
lea eax, [esp + 0x1c]
and ecx, 3
push edx
rep movsb byte es:[edi], byte [esi]
xor ecx, ecx
push eax
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], ecx
call fcn.00407200
mov eax, dword [esp + 0x1f04]
add esp, 0xc
test eax, eax
je 0x406c5d
lea ecx, [esp + 0xe8]
push ecx
push eax
call fcn.00401b0f
add esp, 8
mov eax, dword [esp + 0x1f04]
test eax, eax
je 0x406c79
lea edx, [esp + 0x6e8]
push edx
push eax
call fcn.00401b0f
add esp, 8
xor ecx, ecx
lea esi, [esp + 0x18]
mov dl, byte [esi]
cmp ecx, 4
mov eax, 0xf
jl 0x406c90
mov eax, 0x10
add eax, ecx
mov bl, byte [esp + eax*2 + 0xe8]
shl bl, 4
add bl, byte [esp + eax*2 + 0xea]
sub bl, 0x51
cmp dl, bl
jne 0x407061
add ecx, 2
add esi, 4
cmp ecx, 8
jl 0x406c7f
mov eax, dword [esp + 0x1f00]
test eax, eax
je 0x406cd5
lea ecx, [esp + 0xae8]
push ecx
push eax
call fcn.00401b0f
add esp, 8
mov eax, dword [esp + 0x1f08]
test eax, eax
je 0x406cf1
lea edx, [esp + 0x4e8]
push edx
push eax
call fcn.00401b0f
add esp, 8
mov eax, dword [esp + 0x1f10]
test eax, eax
je 0x406d0d
lea ecx, [esp + 0xee8]
push ecx
push eax
call fcn.00401b0f
add esp, 8
mov eax, dword [esp + 0x1f0c]
lea edx, [esp + 0x8e8]
push edx
push eax
call fcn.00401b0f
add esp, 8
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x1ed8
ret
lea ecx, [esp + 0xce8]
push ecx
call fcn.00401ac8
add esp, 4
cmp eax, 0x50
je 0x406d57
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1ed8
ret
mov ecx, 0x10
xor eax, eax
lea edi, [esp + 0xa8]
xor edx, edx
rep stosd dword es:[edi], eax
lea esi, [esp + 0xce8]
mov ax, word [esi]
cmp ax, 0x39
jbe 0x406d83
and eax, 0xffff
sub eax, 0x37
jmp 0x406d8b
and eax, 0xffff
sub eax, 0x30
mov cl, al
mov ax, word [esi + 2]
shl cl, 4
cmp ax, 0x39
mov byte [esp + edx + 0xa8], cl
jbe 0x406dab
and eax, 0xffff
sub eax, 0x37
jmp 0x406db3
and eax, 0xffff
sub eax, 0x30
add cl, al
add esi, 4
mov byte [esp + edx + 0xa8], cl
inc edx
cmp edx, 0x28
jl 0x406d70
push 0x1000
call fcn.00402679
lea edx, [esp + 0x2ec]
mov esi, eax
push edx
push esi
mov byte [esi], 0
call fcn.00406860
lea eax, [esp + 0x16f4]
push eax
push esi
call fcn.00406860
lea ecx, [esp + 0xafc]
push ecx
push esi
call fcn.00406860
lea edx, [esp + 0x704]
push edx
push esi
call fcn.00406860
lea eax, [esp + 0x50c]
push eax
push esi
call fcn.00406860
lea ecx, [esp + 0xf14]
push ecx
push esi
call fcn.00406860
lea edx, [esp + 0x91c]
push edx
push esi
call fcn.00406860
lea eax, [esp + 0xe4]
push 0x426f50
push eax
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push esi
call fcn.00407300
add esp, 0x4c
shl eax, 4
push esi
mov dword [esp + 0x18], eax
call fcn.00402631
mov eax, dword [esp + 0x18]
add esp, 4
test eax, eax
jne 0x406e7e
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1ed8
ret
cmp word [esp + 0x4e8], 0
je 0x406f75
lea ecx, [esp + 0x10]
push ecx
push 0xf003f
push 0
push str.SoftwareMicrosoftWindowsCurrentVersion
push 0x80000002
call dword [0x41f010]
mov eax, dword [esp + 0x10]
push 0
push 0
push 0
lea edx, [esp + 0x2f4]
push 0
push edx
push eax
call dword [section..rdata]
test eax, eax
jne 0x406ee0
mov ecx, dword [esp + 0x10]
push ecx
call dword [0x41f00c]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1ed8
ret
lea edx, [esp + 0x18]
push edx
call dword [0x41f054]
mov eax, dword [esp + 0x1e]
mov ecx, dword [esp + 0x1a]
mov edx, dword [esp + 0x18]
and eax, 0xffff
and ecx, 0xffff
push eax
and edx, 0xffff
push ecx
push edx
lea eax, [esp + 0x34]
push str._04d__02d__02d
push eax
call dword [0x41f17c]
lea ecx, [esp + 0x4fc]
lea edx, [esp + 0x3c]
push ecx
push edx
call fcn.0041750c
add esp, 0x1c
test eax, eax
jl 0x406f6a
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x14]
push 4
push eax
push 4
lea ecx, [esp + 0x2f4]
push 0
push ecx
push edx
call dword [0x41f008]
mov eax, dword [esp + 0x10]
push eax
call dword [0x41f00c]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1ed8
ret
mov ecx, dword [esp + 0x10]
push ecx
call dword [0x41f00c]
mov eax, dword [esp + 0x1ef8]
test eax, eax
je 0x406f91
lea edx, [esp + 0x2e8]
push edx
push eax
call fcn.00401b0f
add esp, 8
mov eax, dword [esp + 0x1efc]
test eax, eax
je 0x406fad
lea ecx, [esp + 0x16e8]
push ecx
push eax
call fcn.00401b0f
add esp, 8
mov eax, dword [esp + 0x1f00]
test eax, eax
je 0x406fc9
lea edx, [esp + 0xae8]
push edx
push eax
call fcn.00401b0f
add esp, 8
mov eax, dword [esp + 0x1f04]
test eax, eax
je 0x406fe5
lea ecx, [esp + 0x6e8]
push ecx
push eax
call fcn.00401b0f
add esp, 8
mov eax, dword [esp + 0x1f08]
test eax, eax
je 0x407001
lea edx, [esp + 0x4e8]
push edx
push eax
call fcn.00401b0f
add esp, 8
mov eax, dword [esp + 0x1f0c]
test eax, eax
je 0x40701d
lea ecx, [esp + 0x8e8]
push ecx
push eax
call fcn.00401b0f
add esp, 8
mov eax, dword [esp + 0x1f10]
test eax, eax
je 0x407039
lea edx, [esp + 0xee8]
push edx
push eax
call fcn.00401b0f
add esp, 8
mov eax, dword [esp + 0x1ef4]
test eax, eax
je 0x406d25
lea ecx, [esp + 0x8e8]
push ecx
push eax
call fcn.0041750c
add esp, 8
test eax, eax
jle 0x406d25
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1ed8
ret