Function at 0x140009990
Capabilities:
Hash data with md5

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x458]
sub rsp, 0x558
mov rax, qword [0x14006a110]
xor rax, rsp
mov qword [rbp + 0x448], rax
mov r15, qword [rdx]
mov rdi, rcx
movzx ecx, byte [rcx + 0xa]
movzx eax, byte [rdi + 0xb]
shl cx, 8
xor ebx, ebx
or cx, ax
mov rsi, rdx
mov r12, r8
mov word [rsp + 0x54], cx
lea rdx, [r8 + 0x19fa]
lea rcx, [rbp + 0x3d0]
lea r8d, [rbx + 0x40]
movzx r14d, r9w
mov dword [rbp + 0x3d0], 0x67452301
mov dword [rbp + 0x3d4], 0xefcdab89
mov dword [rbp + 0x3d8], 0x98badcfe
mov qword [rbp + 0x3dc], 0x10325476
mov dword [rbp + 0x3e4], ebx
mov dword [rbp + 0x428], ebx
call fcn.140009360
mov r8d, dword [rsi]
lea rcx, [rbp + 0x3d0]
mov rdx, rdi
sub r8d, edi
call fcn.140009360
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], ebx
lea rcx, [rsp + 0x60]
mov r9d, 0xfa
xor r8d, r8d
xor edx, edx
mov byte [rsp + 0x28], 0x20
mov dword [rsp + 0x20], ebx
call fcn.140002530
lea rdx, [r12 + 0x18d8]
lea rcx, [r12 + 0x17d8]
call fcn.140001420
mov ecx, 0x100
cmp ax, cx
ja 0x140009aa9
lea rdx, [r12 + 0x17d8]
lea rcx, [rbp + 0x1b8]
movzx r8d, ax
call fcn.140025ca0
jmp 0x140009aaf
mov byte [rbp + 0x1b8], bl
lea rdx, [r12 + 0x18d8]
lea rcx, [r12 + 0x17d8]
call fcn.140001420
lea rdx, [r12 + 0x17d8]
lea rcx, [rbp + 0x3d0]
movzx r8d, ax
call fcn.140009360
mov word [rsp + 0x50], 0xff00
movzx eax, word [rsp + 0x50]
mov r11d, 0xff
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x3d0]
mov r8d, 2
mov word [rsp + 0x50], ax
mov word [rsp + 0x6c], r11w
call fcn.140009360
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x3d0]
mov r8d, 4
mov dword [rsp + 0x70], ebx
call fcn.140009360
lea rdx, [0x140051e18]
lea rcx, str._bhmac_md5_asig_alg
call fcn.140001420
mov ecx, 0x100
cmp ax, cx
ja 0x140009b62
mov rcx, qword [rbp - 0x70]
lea rdx, str._bhmac_md5_asig_alg
movzx r8d, ax
add rcx, 4
call fcn.140025ca0
jmp 0x140009b69
mov rax, qword [rbp - 0x70]
mov byte [rax + 4], bl
lea rdx, [0x140051e18]
lea rcx, str._bhmac_md5_asig_alg
call fcn.140001420
lea rdx, str._bhmac_md5_asig_alg
lea rcx, [rbp + 0x3d0]
movzx r8d, ax
mov rax, qword [rbp - 0x70]
lea r13, [r8 + rax + 4]
call fcn.140009360
call fcn.140025d50
mov ebx, eax
cmp eax, 0xffffffff
jne 0x140009bbd
lea rdx, str.ERROR:_DNSDigest_SignMessage___mDNSPlatformUTC_returned_bad_time__1
xor ecx, ecx
call fcn.140025be0
mov qword [rsi], 0
mov eax, ebx
mov ecx, ebx
lea rdx, [rbp + 0x430]
shr eax, 0x10
shr ecx, 0x18
mov r8d, 6
mov byte [rbp + 0x433], al
mov eax, ebx
mov byte [rbp + 0x432], cl
shr eax, 8
mov rcx, r13
mov word [rbp + 0x430], 0
mov byte [rbp + 0x434], al
mov byte [rbp + 0x435], bl
call fcn.140025ca0
lea rdx, [rbp + 0x430]
lea rcx, [rbp + 0x3d0]
mov r8d, 6
call fcn.140009360
lea rdx, [r13 + 6]
lea rcx, [rbp + 0x3d0]
mov r8d, 2
mov word [r13 + 6], 0x2c01
call fcn.140009360
movzx ebx, r14w
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x3d0]
shr bx, 8
mov r8d, 2
mov byte [rsp + 0x50], bl
mov byte [rsp + 0x51], r14b
call fcn.140009360
xor eax, eax
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x3d0]
lea r8d, [rax + 2]
mov word [rsp + 0x50], ax
call fcn.140009360
lea rdx, [rbp + 0x3d0]
lea rcx, [rbp + 0x438]
call fcn.140009670
xor eax, eax
lea rdx, [r12 + 0x1a3a]
lea rcx, [rbp + 0x3d0]
lea r8d, [rax + 0x40]
mov dword [rbp + 0x3d0], 0x67452301
mov dword [rbp + 0x3d4], 0xefcdab89
mov dword [rbp + 0x3d8], 0x98badcfe
mov qword [rbp + 0x3dc], 0x10325476
mov dword [rbp + 0x3e4], eax
mov dword [rbp + 0x428], eax
call fcn.140009360
lea rdx, [rbp + 0x438]
lea rcx, [rbp + 0x3d0]
mov r8d, reloc.WS2_32.dll_recv
call fcn.140009360
lea rdx, [rbp + 0x3d0]
lea rcx, [rbp + 0x438]
call fcn.140009670
lea rdx, [rbp + 0x438]
lea rcx, [r13 + 0xa]
mov r8d, reloc.WS2_32.dll_recv
mov word [r13 + 8], 0x1000
call fcn.140025ca0
movzx eax, byte [rdi]
add r13, 0x1a
mov byte [r13], al
movzx eax, byte [rdi + 1]
mov byte [r13 + 2], bl
mov byte [r13 + 1], al
mov byte [r13 + 3], r14b
mov word [r13 + 4], 0
sub r13w, word [rbp - 0x70]
lea rax, [rdi + 0x22f8]
lea r9, [rsp + 0x68]
add r13w, 2
xor ebx, ebx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebx
mov word [rsp + 0x74], r13w
lea r8, [rsp + 0x54]
mov rdx, r15
mov rcx, rdi
call fcn.140005ed0
mov qword [rsi], rax
test rax, rax
jne 0x140009d9b
lea rdx, str.ERROR:_DNSDigest_SignMessage___could_not_put_TSIG
xor ecx, ecx
call fcn.140025be0
mov qword [rsi], rbx
jmp 0x140009dad
movzx ecx, word [rsp + 0x54]
movzx eax, cx
mov byte [rdi + 0xb], cl
shr ax, 8
mov byte [rdi + 0xa], al
mov rcx, qword [rbp + 0x448]
xor rcx, rsp
call fcn.1400437e0
add rsp, 0x558
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret