Function at 0x140035070
Capabilities:
Hash data via bcrypt

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x170]
sub rsp, 0x270
mov rax, qword [0x140214ba0]
xor rax, rsp
mov qword [rbp + 0x168], rax
mov rdi, r8
mov r15d, edx
mov r14, rcx
xorps xmm0, xmm0
movups xmmword [rbp + 0x150], xmm0
lea rax, [0x1401e7600]
mov qword [rbp + 0x150], rax
movdqu xmmword [rbp + 0x158], xmm0
xor r9d, r9d
xor r8d, r8d
lea rdx, [0x1401e72d0]
lea rcx, [rbp + 0x148]
call qword [sym.imp.bcrypt.dll_BCryptOpenAlgorithmProvider]
test eax, eax
je 0x14003516a
call fcn.1400553d0
mov r8d, 1
lea rdx, [rbp + 0x48]
mov rcx, rax
call fcn.140055290
lea rax, str.c:jenkinsworkspaceebAdvisor_WABinary_release_4.1.1_srcSecurityUtilsMD5.h
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], 0x3a
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x48]
call fcn.1400244b0
lea rdx, str.Failed_to_option_MD5_algorithm_provider
lea rcx, [rbp + 0x48]
call fcn.1400244e0
lea rcx, [rbp + 0xe0]
call fcn.140058d50
nop
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0xe0], rax
lea rcx, [rbp + 0xe0]
call fcn.140128970
nop
mov rbx, qword [rbp + 0x160]
mov rsi, qword [rbp + 0x158]
jmp 0x14003540a
mov rsi, qword [rbp + 0x148]
mov qword [rbp + 0x158], rsi
xor r12d, r12d
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x140]
mov rcx, rsi
call qword [sym.imp.bcrypt.dll_BCryptCreateHash]
test eax, eax
je 0x14003521a
call fcn.1400553d0
lea r8d, [r12 + 1]
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.140055290
lea rax, str.c:jenkinsworkspaceebAdvisor_WABinary_release_4.1.1_srcSecurityUtilsMD5.h
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], 0x42
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call fcn.1400244b0
lea rdx, str.Failed_to_create_MD5_hash_object
lea rcx, [rsp + 0x50]
call fcn.1400244e0
lea rcx, [rbp - 0x18]
call fcn.140058d50
nop
lea rax, vtable.std::ios_base.0
mov qword [rbp - 0x18], rax
lea rcx, [rbp - 0x18]
call fcn.140128970
nop
mov rbx, qword [rbp + 0x160]
jmp 0x14003540a
mov rbx, qword [rbp + 0x140]
mov qword [rbp + 0x160], rbx
xor r9d, r9d
mov r8d, r15d
mov rdx, r14
mov rcx, rbx
call qword [sym.imp.bcrypt.dll_BCryptHashData]
test eax, eax
je 0x1400352ae
call fcn.1400553d0
mov r8d, 1
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.140055290
lea rax, str.c:jenkinsworkspaceebAdvisor_WABinary_release_4.1.1_srcSecurityUtilsMD5.h
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], 0x4e
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call fcn.1400244b0
lea rdx, str.Failed_to_create_MD5_hash_of_buffer
lea rcx, [rsp + 0x50]
call fcn.1400244e0
lea rcx, [rbp - 0x18]
call fcn.140058d50
nop
lea rax, vtable.std::ios_base.0
mov qword [rbp - 0x18], rax
lea rcx, [rbp - 0x18]
call fcn.140128970
nop
jmp 0x14003540a
mov dword [rbp + 0x148], r12d
mov dword [rbp + 0x140], r12d
mov dword [rsp + 0x28], r12d
lea rax, [rbp + 0x140]
mov qword [rsp + 0x20], rax
mov r9d, 4
lea r8, [rbp + 0x148]
lea rdx, str.HashDigestLength
mov rcx, rbx
call qword [sym.imp.bcrypt.dll_BCryptGetProperty]
test eax, eax
jne 0x140035399
cmp dword [rbp + 0x140], 4
jne 0x140035399
mov edx, dword [rbp + 0x148]
mov rcx, rdi
call fcn.140035fd0
mov rdx, qword [rdi]
mov r8, qword [rdi + 8]
sub r8, rdx
xor r9d, r9d
mov rcx, rbx
call qword [sym.imp.bcrypt.dll_BCryptFinishHash]
test eax, eax
je 0x140035394
call fcn.1400553d0
mov r8d, 1
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.140055290
lea rax, str.c:jenkinsworkspaceebAdvisor_WABinary_release_4.1.1_srcSecurityUtilsMD5.h
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], 0x67
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call fcn.1400244b0
lea rdx, str.Failed_to_retrieve_MD5_hash
lea rcx, [rsp + 0x50]
call fcn.1400244e0
lea rcx, [rbp - 0x18]
call fcn.140058d50
nop
lea rax, vtable.std::ios_base.0
mov qword [rbp - 0x18], rax
lea rcx, [rbp - 0x18]
call fcn.140128970
nop
jmp 0x14003540a
mov dil, 1
jmp 0x14003540d
call fcn.1400553d0
mov r8d, 1
lea rdx, [rbp + 0x48]
mov rcx, rax
call fcn.140055290
lea rax, str.c:jenkinsworkspaceebAdvisor_WABinary_release_4.1.1_srcSecurityUtilsMD5.h
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], 0x5f
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x48]
call fcn.1400244b0
lea rdx, str.Failed_to_retrieve_hash_length
lea rcx, [rbp + 0x48]
call fcn.1400244e0
lea rcx, [rbp + 0xe0]
call fcn.140058d50
nop
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0xe0], rax
lea rcx, [rbp + 0xe0]
call fcn.140128970
nop
xor dil, dil
test rbx, rbx
je 0x14003541b
mov rcx, rbx
call qword [sym.imp.bcrypt.dll_BCryptDestroyHash]
test rsi, rsi
je 0x14003542b
xor edx, edx
mov rcx, rsi
call qword [sym.imp.bcrypt.dll_BCryptCloseAlgorithmProvider]
movzx eax, dil
mov rcx, qword [rbp + 0x168]
xor rcx, rsp
call fcn.14014f8e0
add rsp, 0x270
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret