Function at 0x140073510
Capabilities:
Authenticate hmac
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x128
mov rdi, r9
mov r14, r8
mov r15, rdx
mov rsi, rcx
mov rax, qword [0x140396de8]
xor rax, rsp
mov qword [rsp + 0x120], rax
test r9, r9
mov rax, qword [rcx]
cmove rdi, rax
test rdx, rdx
jne 0x140073556
cmp rdi, rax
je 0x140073800
mov ebx, dword [rdi + 0x28]
cmp rbx, r14
jae 0x1400735c8
cmp qword [rsi + 8], rdi
je 0x140073589
mov ecx, dword [rdi + 0x2c]
call fcn.140093640
test rax, rax
je 0x140073814
mov r12, rax
mov rcx, qword [rsi + 0x10]
call fcn.1400936a0
mov qword [rsi + 0x10], r12
mov qword [rsi + 8], rdi
lea r12, [rsi + 8]
mov rcx, r12
call qword [rdi + reloc.WS2_32.dll_recv]
mov rax, qword [rsi + 8]
mov rcx, r12
mov rdx, r15
mov r8, r14
call qword [rax + 0x18]
mov rax, qword [rsi + 8]
lea rdx, [rsp + 0x20]
mov rcx, r12
call qword [rax + 0x20]
mov rax, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
mov r14d, dword [rax + 4]
mov edx, dword [rax + 0x2c]
call fcn.1400936e0
jmp 0x1400735dd
test r14, r14
je 0x1400735dd
lea rcx, [rsp + 0x20]
mov rdx, r15
mov r8, r14
call fcn.1402609f0
cmp ebx, r14d
je 0x1400735fa
mov eax, r14d
mov r8, rbx
sub r8, rax
lea rcx, [rsp + rax]
add rcx, 0x20
xor edx, edx
call fcn.140260830
test rbx, rbx
je 0x1400736b7
cmp ebx, 8
jae 0x14007360f
xor eax, eax
jmp 0x1400736a0
cmp ebx, 0x20
jae 0x140073618
xor eax, eax
jmp 0x140073663
mov eax, ebx
and eax, 0xffffffe0
xor ecx, ecx
movaps xmm0, xmmword [str.6666666666666666jjjjjjjjjjjjjjjj__f]
nop word cs:[rax + rax]
movaps xmm1, xmmword [rsp + rcx + 0x20]
xorps xmm1, xmm0
movaps xmm2, xmmword [rsp + rcx + 0x30]
xorps xmm2, xmm0
movaps xmmword [rsp + rcx + 0xa0], xmm1
movaps xmmword [rsp + rcx + 0xb0], xmm2
add rcx, 0x20
cmp rax, rcx
jne 0x140073630
cmp rax, rbx
je 0x1400736b7
test bl, 0x18
je 0x1400736a0
mov rcx, rax
mov eax, ebx
and eax, 0xfffffff8
movabs rdx, 0x3636363636363636
nop word cs:[rax + rax]
mov r8, qword [rsp + rcx + 0x20]
xor r8, rdx
mov qword [rsp + rcx + 0xa0], r8
add rcx, 8
cmp rax, rcx
jne 0x140073680
cmp rax, rbx
je 0x1400736b7
nop
movzx ecx, byte [rsp + rax + 0x20]
xor cl, 0x36
mov byte [rsp + rax + 0xa0], cl
inc rax
cmp rbx, rax
jne 0x1400736a0
cmp qword [rsi + 0x28], rdi
je 0x1400736e2
mov ecx, dword [rdi + 0x2c]
call fcn.140093640
test rax, rax
je 0x140073814
mov r14, rax
mov rcx, qword [rsi + 0x30]
call fcn.1400936a0
mov qword [rsi + 0x30], r14
mov qword [rsi + 0x28], rdi
lea r14, [rsi + 0x28]
mov rcx, r14
call qword [rdi + reloc.WS2_32.dll_recv]
mov rax, qword [r14]
lea rdx, [rsp + 0xa0]
mov rcx, r14
mov r8, rbx
call qword [rax + 0x18]
test rbx, rbx
je 0x1400737b7
cmp ebx, 8
jae 0x140073715
xor eax, eax
jmp 0x1400737a0
cmp ebx, 0x20
jae 0x14007371e
xor eax, eax
jmp 0x140073763
mov eax, ebx
and eax, 0xffffffe0
xor ecx, ecx
movaps xmm0, xmmword [0x1402d5f30]
nop dword [rax]
movaps xmm1, xmmword [rsp + rcx + 0x20]
xorps xmm1, xmm0
movaps xmm2, xmmword [rsp + rcx + 0x30]
xorps xmm2, xmm0
movaps xmmword [rsp + rcx + 0xa0], xmm1
movaps xmmword [rsp + rcx + 0xb0], xmm2
add rcx, 0x20
cmp rax, rcx
jne 0x140073730
cmp rax, rbx
je 0x1400737b7
test bl, 0x18
je 0x1400737a0
mov rcx, rax
mov eax, ebx
and eax, 0xfffffff8
movabs rdx, 0x5c5c5c5c5c5c5c5c
nop word cs:[rax + rax]
mov r8, qword [rsp + rcx + 0x20]
xor r8, rdx
mov qword [rsp + rcx + 0xa0], r8
add rcx, 8
cmp rax, rcx
jne 0x140073780
cmp rax, rbx
je 0x1400737b7
nop
movzx ecx, byte [rsp + rax + 0x20]
xor cl, 0x5c
mov byte [rsp + rax + 0xa0], cl
inc rax
cmp rbx, rax
jne 0x1400737a0
cmp qword [rsi + 0x48], rdi
je 0x1400737de
mov ecx, dword [rdi + 0x2c]
call fcn.140093640
test rax, rax
je 0x140073814
mov r14, rax
mov rcx, qword [rsi + 0x50]
call fcn.1400936a0
mov qword [rsi + 0x50], r14
mov qword [rsi + 0x48], rdi
lea r14, [rsi + 0x48]
mov rcx, r14
call qword [rdi + reloc.WS2_32.dll_recv]
mov rax, qword [rsi + 0x48]
lea rdx, [rsp + 0xa0]
mov rcx, r14
mov r8, rbx
call qword [rax + 0x18]
mov qword [rsi], rdi
lea rdx, [rsi + 0x28]
add rsi, 8
mov rcx, rsi
call fcn.1400666b0
mov esi, eax
jmp 0x140073816
xor esi, esi
mov rcx, qword [rsp + 0x120]
xor rcx, rsp
call fcn.14025dfe0
mov eax, esi
add rsp, 0x128
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret