Function at 0x18007adb0
Capabilities:
Hash data using sha256

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x148
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0xb0], xmm6
mov qword [rbp + 0xa8], 0xfffffffffffffffe
mov r12, rdx
cmp qword [rcx + 0x8f8], 0
je 0x18007ae60
mov rsi, rcx
movzx edx, byte [rcx + 2]
lea rcx, [rbp - 0x60]
call fcn.180008240
mov rdi, qword [rsi + 0x8f8]
xorps xmm6, xmm6
movaps xmmword [rbp + 0x80], xmm6
mov qword [rbp + 0x90], 0
mov qword [rbp + 0x98], reloc.WS2_32.dll_ntohs
movaps xmmword [rbp + 0x40], xmm6
mov qword [rbp + 0x50], 0
mov rsi, qword [rdi + 0x10]
sub rsi, qword [rdi + 8]
je 0x18007aeb2
js 0x18007b27d
cmp rsi, 0x1000
jb 0x18007ae7f
lea rcx, [rsi + 0x27]
call fcn.1800c38b8
mov rbx, rax
add rbx, 0x27
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x18007ae8a
xorps xmm0, xmm0
movups xmmword [r12], xmm0
mov qword [r12 + 0x10], 0
mov qword [r12 + 0x18], reloc.WS2_32.dll_ntohs
jmp 0x18007b258
mov rcx, rsi
call fcn.1800c38b8
mov rbx, rax
mov qword [rbp + 0x40], rbx
add rsi, rbx
mov qword [rbp + 0x50], rsi
mov rdx, qword [rdi + 8]
mov rsi, qword [rdi + 0x10]
sub rsi, rdx
mov rcx, rbx
mov r8, rsi
call fcn.1801258c0
add rsi, rbx
mov qword [rbp + 0x48], rsi
movaps xmmword [rbp + 0x20], xmm6
mov qword [rbp + 0x30], 0
mov rsi, qword [rdi + 0x28]
sub rsi, qword [rdi + 0x20]
je 0x18007af24
js 0x18007b282
cmp rsi, 0x1000
jb 0x18007aef1
lea rcx, [rsi + 0x27]
call fcn.1800c38b8
mov rbx, rax
add rbx, 0x27
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x18007aefc
mov rcx, rsi
call fcn.1800c38b8
mov rbx, rax
mov qword [rbp + 0x20], rbx
add rsi, rbx
mov qword [rbp + 0x30], rsi
mov rdx, qword [rdi + 0x20]
mov rsi, qword [rdi + 0x28]
sub rsi, rdx
mov rcx, rbx
mov r8, rsi
call fcn.1801258c0
add rsi, rbx
mov qword [rbp + 0x28], rsi
lea rdx, [rbp + 0x60]
lea r8, [rbp + 0x20]
lea r9, [rbp + 0x40]
mov rcx, rdi
call fcn.1800017a0
mov rsi, qword [rbp + 0x60]
mov rdi, qword [rbp + 0x68]
cmp rdi, rsi
je 0x18007afca
xor ebx, ebx
lea r14, [rbp + 0x80]
jmp 0x18007af7e
mov byte [rdi + rax], dl
mov byte [rdi + rax + 1], 0
mov rsi, qword [rbp + 0x60]
mov rdi, qword [rbp + 0x68]
inc rbx
mov rax, rdi
sub rax, rsi
cmp rbx, rax
jae 0x18007afcd
movzx edx, byte [rsi + rbx]
test dl, dl
je 0x18007afd2
mov rax, qword [rbp + 0x90]
mov rcx, qword [rbp + 0x98]
cmp rax, rcx
jae 0x18007afc0
lea rdi, [rax + 1]
mov qword [rbp + 0x90], rdi
mov rdi, r14
cmp rcx, 0x10
jb 0x18007af60
mov rdi, qword [rbp + 0x80]
jmp 0x18007af60
mov rcx, r14
call fcn.18003c210
jmp 0x18007af70
mov rsi, rdi
test rsi, rsi
je 0x18007b006
mov rdx, qword [rbp + 0x70]
sub rdx, rsi
cmp rdx, 0x1000
jb 0x18007affe
mov rax, qword [rsi - 8]
add rsi, 0xfffffffffffffff8
sub rsi, rax
cmp rsi, 0x20
jae 0x18007b273
add rdx, 0x27
mov rsi, rax
mov rcx, rsi
call fcn.1800c38fc
lea r15, [rbp + 0x60]
lea r13, [rbp + 0x80]
lea r9, [rbp - 0x60]
mov rcx, r15
mov r8, r13
call fcn.18007b480
mov rax, qword [rbp + 0x98]
cmp rax, 0x10
jb 0x18007b065
mov rcx, qword [rbp + 0x80]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x18007b060
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x18007b273
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1800c38fc
mov rax, qword [rbp - 0x48]
cmp rax, 0x10
jb 0x18007b0a4
mov rcx, qword [rbp - 0x60]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x18007b09f
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x18007b273
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1800c38fc
mov qword [rbp + 0x18], r12
mov rsi, qword [rbp + 0x70]
movabs rax, 0x7fffffffffffffe1
cmp rsi, rax
jge 0x18007b278
mov rax, qword [rbp + 0x60]
mov rbx, qword [rbp + 0x78]
xorps xmm6, xmm6
movaps xmmword [rbp + 0x80], xmm6
movaps xmmword [rbp + 0x90], xmm6
lea r14, [rsi + 0x1f]
mov r12d, reloc.WS2_32.dll_ntohs
mov rdi, r13
cmp r14, 0x10
jb 0x18007b155
mov qword [rbp + 0x58], rax
mov rax, r14
or rax, 0xf
js 0x18007b11e
cmp rax, 0x17
mov r12d, reloc.WLDAP32.dll_Ordinal_22
cmovae r12, rax
lea rcx, [r12 + 1]
cmp r12, 0xfff
jae 0x18007b132
call fcn.1800c38b8
mov rdi, rax
jmp 0x18007b14a
movabs r12, 0x7fffffffffffffff
movabs rcx, 0x8000000000000000
add rcx, 0x27
call fcn.1800c38b8
mov rdi, rax
add rdi, 0x27
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0x80], rdi
cmp rbx, 0x10
cmovae r15, rax
mov qword [rbp + 0x90], r14
mov qword [rbp + 0x98], r12
mov rcx, rdi
mov rdx, r15
mov r8, rsi
call fcn.1801258c0
movups xmm0, xmmword [str.7rAk3kqK_zC_UQ33h_rH8ke__Ddr]
movups xmmword [rdi + rsi], xmm0
movups xmm0, xmmword [0x1801ab901]
movups xmmword [rdi + rsi + 0xf], xmm0
mov byte [rdi + rsi + 0x1f], 0
movaps xmmword [rbp - 0x60], xmm6
movaps xmm0, xmmword [0x18018c380]
movaps xmmword [rbp - 0x10], xmm0
movaps xmm0, xmmword [0x18018c390]
movaps xmmword [rbp], xmm0
mov rsi, qword [rbp + 0x80]
mov r8, qword [rbp + 0x90]
mov rbx, qword [rbp + 0x98]
cmp rbx, 0x10
cmovae r13, rsi
lea rdi, [rbp - 0x60]
mov rcx, rdi
mov rdx, r13
call fcn.1800ae1d0
mov rcx, rdi
mov rdx, qword [rbp + 0x18]
call fcn.1800ae410
cmp rbx, 0x10
jb 0x18007b21d
lea rdx, [rbx + 1]
cmp rdx, 0x1000
jb 0x18007b215
mov rax, qword [rsi - 8]
add rsi, 0xfffffffffffffff8
sub rsi, rax
cmp rsi, 0x20
jae 0x18007b273
add rbx, 0x28
mov rdx, rbx
mov rsi, rax
mov rcx, rsi
call fcn.1800c38fc
mov rax, qword [rbp + 0x78]
cmp rax, 0x10
jb 0x18007b258
mov rcx, qword [rbp + 0x60]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x18007b253
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x18007b273
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1800c38fc
movaps xmm6, xmmword [rbp + 0xb0]
add rsp, 0x148
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.180139754
call fcn.180001590
call fcn.1800034e0
call fcn.1800034e0
int3