Function at 0x14005e920
Capabilities:
Encrypt data using aes
Reference aes constants

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov r14, rdx
mov r15, rcx
xor edi, edi
mov dword [rax - 0x68], edi
mov dword [rax - 0x64], 1
mov dword [rax - 0x60], 2
mov dword [rax - 0x5c], 4
mov dword [rax - 0x58], 8
mov dword [rax - 0x54], 0x10
mov dword [rax - 0x50], 0x20
mov dword [rax - 0x4c], 0x40
mov dword [rax - 0x48], 0x80
mov dword [rax - 0x44], 0x1b
mov dword [rax - 0x40], 0x36
mov eax, r8d
cdq
and edx, 3
add eax, edx
sar eax, 2
movsxd rbp, eax
cmp r8d, 0x10
je 0x14005e9c4
cmp r8d, 0x18
je 0x14005e9bc
cmp r8d, 0x20
jne 0x14005e9b2
lea r13d, [rdi + 0xe]
jmp 0x14005e9ca
mov r13d, dword [rsp + 0xc0]
jmp 0x14005e9ca
mov r13d, recv
jmp 0x14005e9ca
mov r13d, 0xa
lea r12d, [r13*4 + 4]
movsxd rsi, r12d
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x28], xmm0
mov rbx, rdi
mov qword [rsp + 0x38], rbx
test r12d, r12d
je 0x14005ea22
mov rdx, rsi
lea rcx, [rsp + 0x28]
call fcn.140097b70
lea rbx, [rsi*4]
mov r8, rbx
xor edx, edx
mov rsi, qword [rsp + 0x28]
mov rcx, rsi
call sub.VCRUNTIME140.dll_memset
lea rax, [rbx + rsi]
mov qword [rsp + 0x30], rax
mov rbx, qword [rsp + 0x38]
jmp 0x14005ea2c
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x28]
mov qword [rsp + 0xc8], rax
mov rdx, rbp
test ebp, ebp
jle 0x14005ea60
mov rcx, rsi
sub r14, rsi
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rcx + r14]
mov dword [rcx], eax
lea rcx, [rcx + 4]
sub rdx, 1
jne 0x14005ea50
mov r9d, ebp
cmp ebp, r12d
jge 0x14005eb4c
mov r10, rsi
lea r14, str.cw
nop word [rax + rax]
mov ecx, dword [r10 + rbp*4 - 4]
mov eax, r9d
cdq
idiv ebp
movsxd r11, eax
test edx, edx
jne 0x14005eade
ror ecx, 8
mov r8d, ecx
shr rcx, 0x10
movzx edx, cl
movzx ecx, byte [rdx + r14]
mov eax, r8d
shr rax, 0x18
movzx eax, byte [rax + r14]
shl eax, 8
or ecx, eax
shl ecx, 8
mov eax, r8d
shr rax, 8
movzx edx, al
movzx eax, byte [rdx + r14]
or ecx, eax
shl ecx, 8
movzx eax, r8b
movzx edx, byte [rax + r14]
or ecx, edx
xor ecx, dword [rsp + r11*4 + 0x40]
jmp 0x14005eb2d
cmp ebp, 6
jle 0x14005eb2d
cmp edx, 4
jne 0x14005eb2d
mov r8, rcx
mov rax, rcx
shr rax, 0x10
movzx ecx, al
movzx ecx, byte [rcx + r14]
mov rax, r8
shr rax, 0x18
movzx eax, byte [rax + r14]
shl eax, 8
or ecx, eax
shl ecx, 8
mov rax, r8
shr rax, 8
movzx edx, al
movzx eax, byte [rdx + r14]
or ecx, eax
shl ecx, 8
movzx eax, r8b
movzx edx, byte [rax + r14]
or ecx, edx
xor ecx, dword [r10]
mov dword [r10 + rbp*4], ecx
inc r9d
add r10, 4
cmp r9d, r12d
jl 0x14005ea80
mov r15, qword [rsp + 0xb0]
lea eax, [r13 + 1]
movsxd rbp, eax
mov qword [r15], rdi
mov qword [r15 + 8], rdi
mov qword [r15 + 0x10], rdi
test eax, eax
je 0x14005ebe0
movabs rax, 0xfffffffffffffff
cmp rbp, rax
ja 0x14005ec86
mov r14, rbp
shl r14, 4
cmp r14, 0x1000
jb 0x14005ec3e
lea rcx, [r14 + 0x27]
cmp rcx, r14
jbe 0x14005ec80
call fcn.1400b089c
test rax, rax
je 0x14005ec37
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
lea rax, [r14 + rdi]
mov rcx, rdi
lea rdx, [r15 + 8]
mov r8, rdi
mov r9, r15
mov qword [r15], rdi
mov qword [rdx], rcx
mov qword [r15 + 0x10], rax
shl rbp, 4
mov r8, rbp
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rdi, r14
mov qword [r15 + 8], rdi
mov rax, qword [rsp + 0xc8]
sub rax, rsi
sar rax, 2
lea r8, [rax*4]
mov rdx, rsi
mov rcx, qword [r15]
call sub.VCRUNTIME140.dll_memcpy
nop
test rsi, rsi
je 0x14005ec65
sub rbx, rsi
and rbx, 0xfffffffffffffffc
mov rax, rsi
cmp rbx, 0x1000
jb 0x14005ec5a
add rbx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14005ec5a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
test r14, r14
je 0x14005ebb0
mov rcx, r14
call fcn.1400b089c
mov rdi, rax
add rax, r14
jmp 0x14005ebb4
mov rdx, rbx
mov rcx, rsi
call fcn.1400b0be8
mov rax, r15
mov rbx, qword [rsp + 0xb8]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140009110
nop
call fcn.140056480
int3