Function at 0x1402dfb60
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 - 0x130]
sub rsp, 0x230
mov rax, qword [0x1403cd210]
xor rax, rsp
mov qword [rbp + 0x120], rax
mov qword [rbp - 0x68], r8
mov r12, rdx
mov qword [rbp - 0x78], rdx
mov rdi, rcx
mov dword [rsp + 0x20], 0xf0000000
mov r9d, 1
xor r8d, r8d
xor edx, edx
add rcx, 0x10
call qword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
lea rsi, [0x140355f14]
lea r15, str.E:BTe8e47e48_3b05_43b5_9116_aabf675ef23bMCSP_DBSplit_2_6McCSPService_srcMcHardwareId.cpp
test eax, eax
jne 0x1402dfc3c
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x80090016
jne 0x1402dfbfb
mov dword [rsp + 0x20], 0xf0000008
mov r9d, 1
xor r8d, r8d
xor edx, edx
lea rcx, [rdi + 0x10]
call qword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
test eax, eax
jne 0x1402dfc3c
call fcn.140190390
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x68], eax
lea rax, str.Failed_to_acquire_crypt_context._Error__u
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], 0xda
jmp 0x1402dfc9d
lea r14, [rdi + 0x18]
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
mov edx, 0x8003
mov rcx, qword [rdi + 0x10]
call qword [sym.imp.ADVAPI32.dll_CryptCreateHash]
test eax, eax
jne 0x1402dfcc5
call fcn.140190390
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x68], eax
lea rax, str.Failed_to_create_crypto_hash_for_SHA1._Error__u
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], 0xd5
mov qword [rsp + 0x28], r15
lea rax, str.McAfee::MCSP::CMcHardwareId::InitCrypto
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
lea edx, [r9 - 3]
mov rcx, rbx
call fcn.1401905f0
jmp 0x1402dfcca
cmp eax, 1
je 0x1402dfd29
call fcn.140190390
lea rcx, str.crypto_initilization_failed
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], 0x17f
mov qword [rsp + 0x28], r15
lea rcx, str.McAfee::MCSP::CMcHardwareId::GetMachineId
mov qword [rsp + 0x20], rcx
mov r9d, 4
xor r8d, r8d
lea edx, [r9 - 3]
mov rcx, rax
call fcn.1401905f0
xor al, al
jmp 0x1402e036a
mov byte [rsp + 0x70], 0
xor r15d, r15d
mov qword [rbp - 0x50], r15
mov r13d, 7
mov qword [rbp - 0x48], r13
mov word [rbp - 0x60], r15w
lea rdx, [rbp - 0x60]
mov rcx, rdi
call fcn.1402df250
lea rsi, [0x140355f14]
lea rdi, str.E:BTe8e47e48_3b05_43b5_9116_aabf675ef23bMCSP_DBSplit_2_6McCSPService_srcMcHardwareId.cpp
lea rbx, str.McAfee::MCSP::CMcHardwareId::GetMachineId
test al, al
jne 0x1402dfe7e
call fcn.140190390
lea rcx, str.GetHardwareIdFromWMI_failed.so_generate_it_from_machine_name.
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], 0x187
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rbx
lea r9d, [r15 + 4]
xor r8d, r8d
lea edx, [r15 + 1]
mov rcx, rax
call fcn.1401905f0
lea rcx, [rbp - 0x10]
call fcn.1401b2240
mov rbx, rax
lea rax, [rbp - 0x60]
cmp rax, rbx
je 0x1402dfe39
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x1402dfe11
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402dfe0c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402e039a
call fcn.14011a254
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], r13
mov word [rbp - 0x60], r15w
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x50], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], r13
mov word [rbx], r15w
mov rdx, qword [rbp + 8]
cmp rdx, 8
jb 0x1402dfe79
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402dfe74
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402e039a
call fcn.14011a254
mov byte [rsp + 0x70], 1
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 8
cmovae rdx, qword [rbp - 0x60]
lea rax, [rbp + 0x18]
mov qword [rbp + 0x10], rax
mov r8d, 3
lea rcx, [rbp + 0x10]
call fcn.140055f58
nop
mov rdx, qword [rbp + 0x10]
mov r15, 0xffffffffffffffff
mov rax, r15
inc rax
cmp byte [rdx + rax], 0
jne 0x1402dfeb2
xor r9d, r9d
mov r8d, eax
mov rcx, qword [r14]
call qword [sym.imp.ADVAPI32.dll_CryptHashData]
test eax, eax
jne 0x1402dfeea
call fcn.140190390
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x190
lea rdx, str.Failed_to_hash_plain_text_machineid_Error__u
jmp 0x1402dff26
xor ebx, ebx
mov dword [rsp + 0x74], ebx
mov dword [rsp + 0x20], ebx
lea r9, [rsp + 0x74]
xor r8d, r8d
lea edx, [rbx + 2]
mov rcx, qword [r14]
call qword [sym.imp.ADVAPI32.dll_CryptGetHashParam]
test eax, eax
jne 0x1402dff7a
call fcn.140190390
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x197
lea rdx, str.Failed_in_getting_hash_param_length_Error__u
mov dword [rsp + 0x68], eax
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], ecx
mov qword [rsp + 0x28], rdi
lea rcx, str.McAfee::MCSP::CMcHardwareId::GetMachineId
mov qword [rsp + 0x20], rcx
mov r9d, 4
xor r8d, r8d
lea edx, [r9 - 3]
mov rcx, rbx
call fcn.1401905f0
xor sil, sil
jmp 0x1402e0317
mov ecx, dword [rsp + 0x74]
inc ecx
call fcn.14011aa14
mov rdi, rax
mov qword [rbp - 0x70], rax
mov dword [rsp + 0x20], ebx
lea r9, [rsp + 0x74]
mov r8, rax
mov edx, 2
mov rcx, qword [r14]
call qword [sym.imp.ADVAPI32.dll_CryptGetHashParam]
test eax, eax
jne 0x1402e001e
call fcn.140190390
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x68], eax
lea rax, str.Failed_in_getting_has_param_with_buffer_Error__u
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], 0x19e
lea rcx, str.E:BTe8e47e48_3b05_43b5_9116_aabf675ef23bMCSP_DBSplit_2_6McCSPService_srcMcHardwareId.cpp
mov qword [rsp + 0x28], rcx
lea rcx, str.McAfee::MCSP::CMcHardwareId::GetMachineId
mov qword [rsp + 0x20], rcx
mov r9d, 4
xor r8d, r8d
lea edx, [r9 - 3]
mov rcx, rbx
call fcn.1401905f0
xor sil, sil
jmp 0x1402e030e
call fcn.1400394e4
mov rcx, rax
test rax, rax
je 0x1402e03a0
mov rax, qword [rax]
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x78], rbx
xor r14d, r14d
cmp dword [rsp + 0x74], r14d
jbe 0x1402e0090
nop dword [rax + rax]
movzx r8d, byte [r14 + rdi]
lea rdx, str._02x
lea rcx, [rsp + 0x78]
call fcn.1400e8070
mov rbx, qword [rsp + 0x78]
mov r8, r15
nop
inc r8
cmp word [rbx + r8*2], 0
jne 0x1402e0070
mov rdx, rbx
mov rcx, r12
call fcn.140031c78
inc r14d
cmp r14d, dword [rsp + 0x74]
jb 0x1402e0050
cmp byte [rsp + 0x70], 0
je 0x1402e0194
mov r12, qword [r12 + 0x10]
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, r12
cmp rax, 3
jb 0x1402e03ab
mov rax, qword [rbp - 0x78]
mov qword [rbp - 0x80], rax
cmp qword [rax + 0x18], 8
jb 0x1402e00d0
mov rax, qword [rax]
mov qword [rbp - 0x80], rax
lea r14, [r12 + 3]
lea rdi, [rbp - 0x40]
cmp r14, 7
jbe 0x1402e0110
mov r13, r14
or r13, 7
cmp r13, rcx
jbe 0x1402e00f0
mov r13, rcx
jmp 0x1402e00fc
mov eax, 0xa
cmp r13, rax
cmovb r13, rax
lea rdx, [r13 + 1]
lea rcx, [rbp - 0x40]
call fcn.14003302c
mov rdi, rax
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x28], r13
mov r8d, dword [0x140350268]
mov dword [rdi], r8d
movzx r8d, word [0x14035026c]
mov word [rdi + 4], r8w
lea rcx, [rdi + 6]
lea r8, [r12 + r12]
mov rdx, qword [rbp - 0x80]
call fcn.1401389a0
xor eax, eax
mov word [rdi + r14*2], ax
lea rdx, [rbp - 0x40]
mov rcx, qword [rbp - 0x78]
call fcn.140031cf4
mov rdx, qword [rbp - 0x28]
cmp rdx, 8
jb 0x1402e0194
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402e018f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402e03b1
call fcn.14011a254
lea rcx, [rbp - 0x20]
call qword [sym.imp.ole32.dll_CoCreateGuid]
mov edi, eax
test eax, eax
jns 0x1402e020f
call fcn.140190390
mov dword [rsp + 0x68], edi
lea rcx, str.Failed_to_CoCreateGuid:_HRESULT__x
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], 0x1b2
lea rcx, str.E:BTe8e47e48_3b05_43b5_9116_aabf675ef23bMCSP_DBSplit_2_6McCSPService_srcMcHardwareId.cpp
mov qword [rsp + 0x28], rcx
lea rcx, str.McAfee::MCSP::CMcHardwareId::GetMachineId
mov qword [rsp + 0x20], rcx
mov r9d, 4
xor r8d, r8d
lea edx, [r9 - 3]
mov rcx, rax
call fcn.1401905f0
xor sil, sil
jmp 0x1402e02f1
xorps xmm0, xmm0
movups xmmword [rbp + 0xa0], xmm0
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm0
movups xmmword [rbp + 0xd0], xmm0
movups xmmword [rbp + 0xe0], xmm0
movups xmmword [rbp + 0xf0], xmm0
movups xmmword [rbp + 0x100], xmm0
movups xmmword [rbp + 0x110], xmm0
mov r8d, 0x40
lea rdx, [rbp + 0xa0]
lea rcx, [rbp - 0x20]
call qword [sym.imp.ole32.dll_StringFromGUID2]
test eax, eax
jne 0x1402e02c9
call fcn.140190390
lea rcx, str.Failed_to_Convert_GUID_to_string
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], 0x1b8
lea rcx, str.E:BTe8e47e48_3b05_43b5_9116_aabf675ef23bMCSP_DBSplit_2_6McCSPService_srcMcHardwareId.cpp
mov qword [rsp + 0x28], rcx
lea rcx, str.McAfee::MCSP::CMcHardwareId::GetMachineId
mov qword [rsp + 0x20], rcx
mov r9d, 4
xor r8d, r8d
lea edx, [r9 - 3]
mov rcx, rax
call fcn.1401905f0
xor sil, sil
jmp 0x1402e02f1
lea rax, [rbp + 0xa0]
mov r8, r15
inc r8
cmp word [rax + r8*2], 0
jne 0x1402e02d3
lea rdx, [rbp + 0xa0]
mov rcx, qword [rbp - 0x68]
call fcn.14003318c
mov sil, 1
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], r15d
sub r15d, 1
jg 0x1402e030a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rdi, qword [rbp - 0x70]
mov rcx, rdi
call fcn.14011a254
nop
lea rax, [rbp + 0x18]
mov rcx, qword [rbp + 0x10]
cmp rcx, rax
je 0x1402e032a
call fcn.14013d394
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x1402e0366
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402e0361
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402e0394
call fcn.14011a254
movzx eax, sil
mov rcx, qword [rbp + 0x120]
xor rcx, rsp
call fcn.140119fe0
mov rbx, qword [rsp + 0x288]
add rsp, 0x230
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14013d31c
nop
call fcn.14013d31c
nop
mov ecx, 0x80004005
call fcn.140039608
nop
call fcn.140032ec0
int3
call fcn.14013d31c
int3