Function at 0x1402516a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r12
push r15
sub rsp, 0x58
mov rax, qword [0x14037d7c0]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov r12, rdx
mov r15, rcx
test rdx, rdx
jne 0x1402516c9
xor al, al
jmp 0x140251a15
mov qword [rsp + 0x80], rbx
mov ebx, dword [rcx + 0x80]
test ebx, ebx
je 0x140251740
xor eax, eax
test ebx, ebx
je 0x1402516f4
lea rdx, [rcx + 0x70]
mov r8d, ebx
lea rcx, [rsp + 0x20]
call sub.VCRUNTIME140.dll_memcpy
mov eax, ebx
mov ecx, eax
inc eax
mov byte [rsp + rcx + 0x20], 1
cmp eax, 0x10
jae 0x14025171d
mov ecx, eax
cmp rcx, 0x10
jae 0x140251a2b
mov byte [rsp + rcx + 0x20], 0
inc eax
inc rcx
cmp eax, 0x10
jb 0x140251704
mov r9d, reloc.WS2_32.dll_recv
mov dword [r15 + 0x80], 0
lea r8, [rsp + 0x20]
mov dl, 1
mov rcx, r15
call fcn.140251ba0
nop dword [rax]
mov ecx, dword [r15 + 0x38]
mov r8d, ecx
shr r8d, 0x1a
and ecx, 0x3ffffff
add r8d, dword [r15 + 0x3c]
mov eax, r8d
mov qword [rsp + 0x88], rbp
shr eax, 0x1a
and r8d, 0x3ffffff
add eax, dword [r15 + 0x40]
mov qword [rsp + 0x50], rsi
mov esi, eax
shr eax, 0x1a
and esi, 0x3ffffff
add eax, dword [r15 + 0x44]
mov ebp, eax
mov qword [rsp + 0x48], rdi
shr eax, 0x1a
and ebp, 0x3ffffff
add eax, dword [r15 + 0x48]
mov qword [rsp + 0x40], r14
mov r14d, eax
shr eax, 0x1a
and r14d, 0x3ffffff
lea eax, [rax + rax*4]
add eax, ecx
mov edx, eax
shr eax, 0x1a
and edx, 0x3ffffff
lea r9d, [rax + r8]
lea ecx, [rdx + 5]
mov r8d, ecx
shr r8d, 0x1a
add r8d, r9d
mov r10d, r8d
shr r10d, 0x1a
add r10d, esi
mov ebx, r10d
shr ebx, 0x1a
add ebx, ebp
mov edi, ebx
shr edi, 0x1a
add edi, 0xfc000000
add edi, r14d
mov r11d, edi
shr r11d, 0x1f
dec r11d
mov eax, r11d
and ebx, r11d
not eax
and r8d, r11d
and r10d, r11d
and ecx, r11d
and edi, r11d
and esi, eax
movzx r11d, byte [r15 + 0x1b]
and ebp, eax
and edx, eax
shl r11, 8
and r9d, eax
and r14d, eax
movzx eax, byte [r15 + 0x1a]
and ebx, 0x3ffffff
and r8d, 0x3ffffff
and r10d, 0x3ffffff
or r9d, r8d
or esi, r10d
or ebp, ebx
mov r8d, esi
and ecx, 0x3ffffff
mov ebx, ebp
or edx, ecx
mov dword [r15 + 0x40], r8d
or r14d, edi
mov dword [r15 + 0x44], ebx
or r11, rax
mov dword [r15 + 0x38], edx
movzx eax, byte [r15 + 0x19]
mov dword [r15 + 0x3c], r9d
mov dword [r15 + 0x48], r14d
shl r11, 8
movzx r10d, byte [r15 + 0x1f]
or r11, rax
movzx eax, byte [r15 + 0x18]
mov ecx, r9d
shl ecx, 0x1a
or rcx, rdx
shl r10, 8
movzx edx, byte [r15 + 0x23]
shl rdx, 8
shl r11, 8
or r11, rax
shr r9, 6
movzx eax, byte [r15 + 0x1e]
add r11, rcx
or r10, rax
shr r8, 0xc
movzx eax, byte [r15 + 0x1d]
mov ecx, esi
shl ecx, 0x14
or r9, rcx
shl r10, 8
or r10, rax
shl r14d, 8
movzx eax, byte [r15 + 0x1c]
mov ecx, ebp
shl ecx, 0xe
or rcx, r8
shl r10, 8
or r10, rax
shr rbx, 0x12
movzx eax, byte [r15 + 0x22]
add r10, r9
or rdx, rax
movzx eax, byte [r15 + 0x21]
shl rdx, 8
or rdx, rax
movzx eax, byte [r15 + 0x20]
shl rdx, 8
or rdx, rax
movzx eax, byte [r15 + 0x26]
add rdx, rcx
movzx ecx, byte [r15 + 0x27]
shl rcx, 8
or rcx, rax
movzx eax, byte [r15 + 0x25]
shl rcx, 8
or rcx, rax
movzx eax, byte [r15 + 0x24]
shl rcx, 8
or rcx, rax
mov byte [r12], r11b
mov eax, r14d
or rax, rbx
add rcx, rax
mov rax, r11
shr rax, 8
mov byte [r12 + 1], al
mov rax, r11
shr rax, 0x10
mov byte [r12 + 2], al
mov rax, r11
shr rax, 0x18
mov byte [r12 + 3], al
shr r11, 0x20
add r10, r11
mov rax, r10
mov byte [r12 + 4], r10b
shr rax, 8
mov byte [r12 + 5], al
mov rax, r10
shr rax, 0x10
mov byte [r12 + 6], al
mov rax, r10
shr rax, 0x18
shr r10, 0x20
add rdx, r10
mov byte [r12 + 7], al
mov rax, rdx
mov byte [r12 + 8], dl
shr rax, 8
mov byte [r12 + 9], al
mov r14, qword [rsp + 0x40]
mov rax, rdx
mov rdi, qword [rsp + 0x48]
xorps xmm0, xmm0
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x80]
shr rax, 0x10
mov byte [r12 + 0xa], al
mov rax, rdx
shr rax, 0x18
mov byte [r12 + 0xb], al
shr rdx, 0x20
add rcx, rdx
mov byte [r12 + 0xc], cl
mov rax, rcx
shr rax, 8
mov byte [r12 + 0xd], al
mov rax, rcx
shr rax, 0x10
mov byte [r12 + 0xe], al
mov al, 1
shr rcx, 0x18
mov byte [r12 + 0xf], cl
movups xmmword [r15 + 8], xmm0
movups xmmword [r15 + 0x18], xmm0
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1402577a0
add rsp, 0x58
pop r15
pop r12
ret
call fcn.1402579a8
int3