Function at 0x14003baa0
Capabilities:
Hash data via wincrypt
Hash data with md5
Initialize hashing via wincrypt

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x70]
sub rsp, 0x170
mov rax, qword [0x14015a038]
xor rax, rsp
mov qword [rbp + 0x68], rax
mov rdi, r8
mov r13, rcx
mov r12, qword [rbp + 0xd0]
mov r15, qword [rbp + 0xd8]
mov qword [rsp + 0x70], r15
mov rcx, qword [rbp + 0xe0]
mov rsi, qword [rbp + 0xe8]
test rdx, rdx
jne 0x14003bb10
lea r8d, [rdx + 0x16]
lea rdx, str.Product_Code_is_missed
mov rcx, rsi
call fcn.1400123a0
xor al, al
jmp 0x14003c2bb
test rdi, rdi
jne 0x14003bb2f
lea r8d, [rdi + 0x17]
lea rdx, str.Computer_Code_is_missed
mov rcx, rsi
call fcn.1400123a0
xor al, al
jmp 0x14003c2bb
lea r8, [0x14015e980]
mov rbx, 0xffffffffffffffff
mov rax, rbx
inc rax
cmp word [r8 + rax*2], 0
jne 0x14003bb40
cmp rax, 0x24
jne 0x14003bb6b
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], r12
mov r8, rdi
mov rcx, r13
call fcn.14003c330
jmp 0x14003c2bb
add rax, 0xffffffffffffffde
test rax, 0xfffffffffffffff7
je 0x14003c29f
movzx eax, byte [r13 + 0x38]
mov byte [rsp + 0x41], al
xor r14d, r14d
mov dword [r12], r14d
mov dword [r15], r14d
mov rax, rbx
inc rax
cmp word [rdx + rax*2], r14w
jne 0x14003bb91
cmp rax, 0x10
jbe 0x14003bbbd
mov r8d, gethostbyname
lea rdx, str.Product_ID_should_not_be_more_than_16_characters_
mov rcx, rsi
call fcn.1400123a0
xor al, al
jmp 0x14003c2bb
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x28], 7
mov word [rbp - 0x40], r14w
mov r8, rbx
inc r8
cmp word [rdx + r8*2], r14w
jne 0x14003bbd5
lea rcx, [rbp - 0x40]
call fcn.1400123a0
nop
mov qword [rbp], r14
mov qword [rbp + 0x10], r14
mov qword [rbp + 0x18], 7
mov word [rbp], r14w
mov r8, rbx
lea rdx, [0x14015e980]
nop dword [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x14003bc10
lea rcx, [rbp]
call fcn.1400123a0
nop
cmp qword [rbp + 0x10], 0x30
je 0x14003bc49
mov r8d, 0x23
lea rdx, str.Incorrect_length_of_Activation_Code
mov rcx, rsi
call fcn.1400123a0
xor sil, sil
jmp 0x14003c20c
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x10], r14
mov qword [rbp - 8], 7
mov word [rbp - 0x20], r14w
mov r8, rbx
inc r8
cmp word [rdi + r8*2], 0
jne 0x14003bc61
mov rdx, rdi
lea rcx, [rbp - 0x20]
call fcn.1400123a0
nop
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov rdi, r14
mov qword [rbp - 0x60], r14
lea rcx, [rbp - 0x20]
call fcn.14003cd80
cmp qword [rbp - 0x10], 0x10
je 0x14003bcb5
mov r8d, 0x26
lea rdx, str.Computer_Code_must_have_16_characters_
mov rcx, rsi
call fcn.1400123a0
xor sil, sil
jmp 0x14003c181
lea rdx, [rbp - 0x70]
lea rcx, [rbp - 0x20]
call fcn.140037b50
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x58], xmm0
mov qword [rbp - 0x48], r14
movdqu xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], r14
movdqu xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r14
lea rdx, [rbp - 0x58]
lea rcx, [rbp]
call fcn.140037b50
lea rcx, [rbp + 0x40]
call fcn.1400373d0
nop
lea rdx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rdx, qword [rbp - 0x40]
lea rcx, [rbp + 0x20]
call fcn.1400109a0
nop
lea rdx, [rbp + 0x20]
cmp qword [rbp + 0x38], 0x10
cmovae rdx, qword [rbp + 0x20]
mov r8, rbx
inc r8
cmp byte [rdx + r8], 0
jne 0x14003bd23
lea rcx, [rbp + 0x48]
call fcn.140011ad0
nop
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x14003bd72
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003bd6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003c2e8
call fcn.14009b510
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x40]
call fcn.1400376a0
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x70]
call fcn.1400379b0
nop
mov rdx, qword [rbp + 0x60]
cmp rdx, 0x10
jb 0x14003bdc8
inc rdx
mov rcx, qword [rbp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003bdc3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003c2ee
call fcn.14009b510
lea rcx, [rbp + 0x40]
call fcn.1400373d0
nop
lea rdx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rdx, qword [rbp - 0x40]
lea rcx, [rbp + 0x20]
call fcn.1400109a0
nop
lea rdx, [rbp + 0x20]
cmp qword [rbp + 0x38], 0x10
cmovae rdx, qword [rbp + 0x20]
nop dword [rax + rax]
inc rbx
cmp byte [rdx + rbx], 0
jne 0x14003be00
mov r8, rbx
lea rcx, [rbp + 0x48]
call fcn.140011ad0
nop
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x14003be51
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003be4c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003c2f4
call fcn.14009b510
lea r8, [rsp + 0x40]
mov edx, 8
lea rcx, [rsp + 0x78]
call fcn.140019c40
mov r14, qword [rbp - 0x58]
mov rax, qword [r14]
mov rbx, qword [rsp + 0x78]
mov qword [rbx], rax
mov qword [rsp + 0x60], 0
mov rdi, qword [rbp - 0x80]
cmp rbx, rdi
je 0x14003bfc8
lea rcx, [rbp + 0x40]
call fcn.1400374d0
test eax, eax
je 0x14003bf44
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x8003
mov rcx, qword [rbp + 0x40]
call qword [sym.imp.ADVAPI32.dll_CryptCreateHash]
test eax, eax
je 0x14003bf44
sub rdi, rbx
xor r9d, r9d
mov r8d, edi
mov rdx, rbx
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_CryptHashData]
test eax, eax
je 0x14003bf32
mov dword [rsp + 0x68], reloc.WS2_32.dll_recv
lea r8, [rsp + 0x40]
mov edx, reloc.WS2_32.dll_recv
lea rcx, [rsp + 0x48]
call fcn.140019c40
mov dword [rsp + 0x20], 0
lea r9, [rsp + 0x68]
mov rbx, qword [rsp + 0x48]
mov r8, rbx
mov edx, 2
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_CryptGetHashParam]
test eax, eax
je 0x14003bf37
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_CryptDestroyHash]
jmp 0x14003bfcd
mov rbx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_CryptDestroyHash]
jmp 0x14003bf49
mov rbx, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov rcx, rdi
sub rcx, rbx
cmp rcx, 1
jbe 0x14003bf68
lea rdi, [rbx + 1]
mov qword [rsp + 0x50], rdi
mov byte [rbx], reloc.OLEAUT32.dll_SafeArrayUnaccessData
jmp 0x14003bfd2
jae 0x14003bfc3
mov rax, qword [rsp + 0x58]
sub rax, rbx
cmp rax, 1
jae 0x14003bfa0
lea r8, [rsp + 0x40]
mov edx, 1
lea rcx, [rsp + 0x48]
call fcn.140019c40
mov rdi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov r15, qword [rsp + 0x70]
mov byte [rbx], reloc.OLEAUT32.dll_SafeArrayUnaccessData
jmp 0x14003bfd2
mov r15d, 1
sub r15, rcx
mov r8, r15
xor edx, edx
mov rcx, rdi
call fcn.14009e4c0
add rdi, r15
mov r15, qword [rsp + 0x70]
mov qword [rsp + 0x50], rdi
mov byte [rbx], reloc.OLEAUT32.dll_SafeArrayUnaccessData
jmp 0x14003bfd2
mov rbx, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0x40]
call fcn.140037890
sub rdi, rbx
lea rdx, [r14 + 8]
mov r8, rdi
mov rcx, rbx
call fcn.14009ee60
mov rdi, qword [rsp + 0x78]
test eax, eax
jne 0x14003c0af
cmp byte [rsp + 0x41], al
je 0x14003c01d
lea r8d, [rax + 0x57]
lea rdx, str.Activation_Code_was_generated_by_obsolete_version_of_LockXLS_Activation_Code_Generator.
mov rcx, rsi
call fcn.1400123a0
xor sil, sil
jmp 0x14003c063
movzx eax, byte [rdi]
cmp al, 1
jne 0x14003c03b
lea rcx, [r13 + 0x20]
lea rdx, [rsp + 0x48]
call fcn.140007c90
mov eax, dword [rdi + 1]
mov dword [r12], eax
jmp 0x14003c05b
cmp al, 2
jne 0x14003c0a0
lea rcx, [r13 + 0x20]
lea rdx, [rsp + 0x48]
call fcn.140007c90
mov eax, dword [rdi + 1]
mov dword [r12], eax
movsx eax, word [rdi + 5]
mov dword [r15], eax
mov rbx, qword [rsp + 0x48]
mov sil, 1
mov rdx, qword [rbp + 0x60]
cmp rdx, 0x10
jb 0x14003c0d1
inc rdx
mov rcx, qword [rbp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003c099
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003c2fa
call fcn.14009b510
jmp 0x14003c0d1
mov r8d, 0x4b
lea rdx, str.Activation_Code_contains_invalid_data_or_it_has_been_generated_to_other_PC.
jmp 0x14003c0bc
mov r8d, 0x27
lea rdx, str.Data_in_Activation_Code_is_not_correct.
mov rcx, rsi
call fcn.1400123a0
nop
lea rcx, [rbp + 0x40]
call fcn.140037470
xor sil, sil
test rbx, rbx
je 0x14003c10c
mov rdx, qword [rsp + 0x58]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x14003c103
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003c300
mov rcx, rbx
call fcn.14009b510
nop
test rdi, rdi
je 0x14003c146
mov rdx, qword [rbp - 0x78]
sub rdx, rdi
mov rax, rdi
cmp rdx, 0x1000
jb 0x14003c13d
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003c306
mov rcx, rdi
call fcn.14009b510
nop
mov rdx, qword [rbp - 0x48]
sub rdx, r14
mov rax, r14
cmp rdx, 0x1000
jb 0x14003c172
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003c30c
mov rcx, r14
call fcn.14009b510
mov rdi, qword [rbp - 0x60]
xor r14d, r14d
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x14003c1bb
sub rdi, rcx
mov rax, rcx
cmp rdi, 0x1000
jb 0x14003c1b2
add rdi, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003c312
mov rdx, rdi
call fcn.14009b510
nop
mov rdx, qword [rbp - 8]
cmp rdx, 8
jb 0x14003c1fb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003c1f6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003c318
call fcn.14009b510
mov qword [rbp - 0x10], r14
mov qword [rbp - 8], 7
mov word [rbp - 0x20], r14w
mov rdx, qword [rbp + 0x18]
cmp rdx, 8
jb 0x14003c24c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003c247
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003c31e
call fcn.14009b510
mov qword [rbp + 0x10], r14
mov qword [rbp + 0x18], 7
mov word [rbp], r14w
mov rdx, qword [rbp - 0x28]
cmp rdx, 8
jb 0x14003c299
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003c294
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003c2e2
call fcn.14009b510
movzx eax, sil
jmp 0x14003c2bb
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r12
mov r8, rdi
call fcn.14003c850
mov rcx, qword [rbp + 0x68]
xor rcx, rsp
call fcn.14009b5b0
mov rbx, qword [rsp + 0x1c8]
add rsp, 0x170
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400ac408
nop
call fcn.1400ac408
nop
call fcn.1400ac408
nop
call fcn.1400ac408
nop
call fcn.1400ac408
nop
call fcn.1400ac408
nop
call fcn.1400ac408
nop
call fcn.1400ac408
nop
call fcn.1400ac408
nop
call fcn.1400ac408
nop
call fcn.1400ac408
int3