Function at 0x140010320
Capabilities:
Hash data using sha256

Disassembly:
push rbx
push rbp
sub rsp, 0x48
mov qword [rsp + 0x68], rdi
mov rbp, rcx
mov ecx, dword [rsp + 0x88]
xor ebx, ebx
mov qword [rsp + 0x70], r14
mov rdi, r9
mov qword [rsp + 0x40], r15
mov r15, rdx
sub ecx, 9
je 0x140010362
cmp ecx, 1
je 0x140010359
mov r14d, ebx
xor al, al
jmp 0x14001036e
lea r14, [0x14005d0c8]
jmp 0x140010369
lea r14, [0x14005d0c0]
movzx eax, byte [r14 + 4]
movzx eax, al
xorps xmm0, xmm0
mov qword [r8], rax
xor eax, eax
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rax
movups xmmword [rsp + 0x20], xmm0
test r14, r14
jne 0x1400103a1
mov rsi, qword [rsp + 0x28]
mov ebx, 0xffffaf00
mov r14, qword [rsp + 0x20]
jmp 0x140010552
mov ecx, dword [r14]
movdqu xmmword [rsp + 0x28], xmm0
sub ecx, 9
je 0x1400103f6
cmp ecx, 1
je 0x1400103c3
mov rsi, qword [rsp + 0x28]
mov ebx, 0xffffaf00
jmp 0x140010552
mov edx, 0xd8
mov ecx, 1
call fcn.140039240
mov rsi, rax
test rax, rax
jne 0x1400103e4
mov ebx, 0xffffae80
jmp 0x140010552
xor edx, edx
mov r8d, 0xd8
mov rcx, rax
call fcn.140036690
jmp 0x140010435
mov edx, 0x68
lea ecx, [rdx - 0x67]
call fcn.140039240
mov rsi, rax
test rax, rax
jne 0x140010415
mov ebx, 0xffffae80
jmp 0x140010552
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsi], xmm0
movups xmmword [rsi + 0x10], xmm0
movups xmmword [rsi + 0x20], xmm0
movups xmmword [rsi + 0x30], xmm0
movups xmmword [rsi + 0x40], xmm0
movups xmmword [rsi + 0x50], xmm0
mov qword [rsi + 0x60], rax
mov ecx, dword [r14]
sub ecx, 9
je 0x140010460
cmp ecx, 1
je 0x14001044c
mov ebx, 0xffffaf00
jmp 0x140010552
mov rcx, rsi
call fcn.140020bd0
mov ebx, eax
test eax, eax
jne 0x140010552
jmp 0x14001049c
mov qword [rsi + 0x40], rbx
mov dword [rsi + 0x48], 0x6a09e667
mov dword [rsi + 0x4c], 0xbb67ae85
mov dword [rsi + 0x50], 0x3c6ef372
mov dword [rsi + 0x54], 0xa54ff53a
mov dword [rsi + 0x58], 0x510e527f
mov dword [rsi + 0x5c], 0x9b05688c
mov dword [rsi + 0x60], 0x1f83d9ab
mov dword [rsi + 0x64], 0x5be0cd19
mov rdx, qword [rbp + 0x68]
mov ecx, dword [r14]
add rdx, 0x2c0
sub ecx, 9
je 0x1400104ce
cmp ecx, 1
je 0x1400104be
mov ebx, 0xffffaf00
jmp 0x140010552
mov r8d, 0x40
mov rcx, rsi
call fcn.140021490
jmp 0x1400104dc
mov r8d, 0x40
mov rcx, rsi
call fcn.1400209d0
mov ebx, eax
test eax, eax
jne 0x140010552
mov ecx, dword [r14]
sub ecx, 9
je 0x14001050b
cmp ecx, 1
je 0x1400104f6
mov ebx, 0xffffaf00
jmp 0x140010552
mov r8, qword [rsp + 0x80]
mov rdx, rdi
mov rcx, rsi
call fcn.140021490
jmp 0x14001051e
mov r8, qword [rsp + 0x80]
mov rdx, rdi
mov rcx, rsi
call fcn.1400209d0
mov ebx, eax
test eax, eax
jne 0x140010552
mov ecx, dword [r14]
sub ecx, 9
je 0x140010545
cmp ecx, 1
je 0x140010538
mov ebx, 0xffffaf00
jmp 0x140010552
mov rdx, r15
mov rcx, rsi
call fcn.1400215a0
jmp 0x140010550
mov rdx, r15
mov rcx, rsi
call fcn.140020ad0
mov ebx, eax
mov r15, qword [rsp + 0x40]
test r14, r14
je 0x1400105b9
test rsi, rsi
je 0x140010589
mov edx, dword [r14]
sub edx, 9
je 0x140010575
cmp edx, 1
jne 0x140010581
mov ecx, 0xd8
jmp 0x14001057a
mov ecx, 0x68
xor eax, eax
mov rdi, rsi
rep stosb byte [rdi], al
mov rcx, rsi
call fcn.14003c094
mov rdi, qword [rsp + 0x30]
test rdi, rdi
je 0x1400105ab
movzx ecx, byte [r14 + 5]
add rcx, rcx
je 0x1400105a1
xor eax, eax
rep stosb byte [rdi], al
mov rcx, qword [rsp + 0x30]
call fcn.14003c094
lea rdi, [rsp + 0x20]
xor eax, eax
mov ecx, 0x18
rep stosb byte [rdi], al
mov r14, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
test ebx, ebx
je 0x140010627
test rbp, rbp
je 0x140010627
cmp qword [rbp], 0
je 0x140010627
cmp qword [rbp + 0x150], 0
mov rcx, rbp
je 0x1400105f3
call fcn.140010ae0
mov eax, ebx
add rsp, 0x48
pop rbp
pop rbx
ret
mov rax, qword [rbp + 0x138]
mov edx, 1
mov dword [rbp + 0x140], socket
mov qword [rbp + 0x148], 2
mov byte [rax], 2
mov rax, qword [rbp + 0x138]
mov byte [rax + 1], 0x50
call fcn.140010ba0
mov eax, ebx
add rsp, 0x48
pop rbp
pop rbx
ret