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

Disassembly:
mov qword [rsp + 0x18], r8
push rbp
push rbx
push rsi
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xa0
cmp qword [rdx + 8], 0
mov r14, rdx
mov r15, rcx
mov eax, 1
jne 0x1337c0ed65a4
movzx r13d, word [rcx + 0x74]
jmp 0x1337c0ed65a7
mov r13d, eax
mov rcx, qword [0x1337c120bb30]
xor edx, edx
movzx esi, r13w
imul rbx, rsi, 0xe8
lea r8, [rbx + 0x58]
call qword [0x1337c10074d8]
mov rdi, rax
test rax, rax
jne 0x1337c0ed65d7
mov eax, 0x8007000e
jmp 0x1337c0ed6c31
lea r8, [rbx + 0x58]
mov qword [rsp + 0xe0], r12
xor edx, edx
mov rcx, rdi
call fcn.1337c1002fb0
mov rax, qword [r14 + 0x18]
mov qword [rdi + 0x50], rax
mov rax, qword [r14 + 8]
neg rax
mov qword [rdi + 8], r15
movzx eax, byte [rdi]
sbb cl, cl
and al, 0xfb
and cl, 4
or cl, al
and cl, 0xdc
mov byte [rdi], cl
mov rcx, qword [r14]
test rcx, rcx
je 0x1337c0ed6624
lea rdx, [rdi + 0x10]
call fcn.1337c0ed59d0
jmp 0x1337c0ed662a
mov word [rdi + 0x10], reloc.WS2_32.dll_socket
mov word [rdi + 0x48], 0x5dc
prefetchw byte [r15 + 0x28]
mov rax, qword [r15 + 0x28]
lea rcx, [rax + 1]
cmp rcx, 1
jbe 0x1337c0ed6657
lock cmpxchg qword [r15 + 0x28], rcx
mov rcx, rax
je 0x1337c0ed6660
inc rcx
cmp rcx, 1
ja 0x1337c0ed6643
je 0x1337c0ed6660
mov ecx, recv
int 0x29
test byte [r14 + 0x10], 1
je 0x1337c0ed666a
or byte [rdi], 0x40
xor ecx, ecx
mov edx, 0xffff
lea eax, [rcx + 2]
lea r12, [rcx - 1]
cmp cx, r13w
jae 0x1337c0ed6b6a
lea rbx, [rdi + 0x60]
nop word [rax + rax]
mov qword [rbx - 8], rdi
mov qword [rbx], r12
test byte [r15], 2
je 0x1337c0ed66a4
mov eax, 0xfff7
jmp 0x1337c0ed66ab
movzx eax, word [rdi + 0x48]
sub eax, 0x1c
xor r9d, r9d
mov dword [rbx + 0x18], eax
xor r8d, r8d
mov qword [rbx + 8], 1
xor edx, edx
xor ecx, ecx
call qword [0x1337c10073c8]
mov qword [rbx + 0x10], rax
add rbx, 0xe8
sub rsi, 1
jne 0x1337c0ed6690
xor edx, edx
movzx r12d, dx
nop dword [rax]
xor r9d, r9d
movzx eax, r12w
imul rsi, rax, 0xe8
mov dword [rsp + 0x28], 1
lea r8d, [r9 + 0x11]
mov dword [rsp + 0x20], edx
movzx ebx, r12w
lea edx, [r9 + 2]
add rsi, rdi
lea ecx, [rdx + 0x15]
call qword [0x1337c1007700]
mov qword [rsi + 0x60], rax
cmp rax, 0xffffffffffffffff
je 0x1337c0ed6b3c
mov edx, 0x29
mov dword [rbp + 0x7f], 0
mov rcx, qword [rsi + 0x60]
lea r9, [rbp + 0x7f]
mov dword [rsp + 0x20], 4
lea r8d, [rdx - 0xe]
call qword [0x1337c1007690]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
cmp qword [r14 + 8], 0
jne 0x1337c0ed6798
xor ecx, ecx
mov word [rbp + 0x6f], r12w
mov qword [rsp + 0x40], rcx
lea rax, [rbp - 0x21]
mov qword [rsp + 0x38], rcx
lea r8, [rbp + 0x6f]
mov qword [rsp + 0x30], rax
mov edx, 0x98000015
mov dword [rsp + 0x28], ecx
lea r9d, [rcx + 2]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsi + 0x60]
call qword [0x1337c10076d8]
test eax, eax
jne 0x1337c0ed6b3c
xor edx, edx
mov dword [rbp + 0x7f], 1
mov rcx, qword [rsi + 0x60]
lea r9, [rbp + 0x7f]
mov dword [rsp + 0x20], 4
lea r8d, [rdx + 0xe]
call qword [0x1337c1007690]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
mov edx, 0x29
mov dword [rbp + 0x7f], 1
mov rcx, qword [rsi + 0x60]
lea r9, [rbp + 0x7f]
mov dword [rsp + 0x20], 4
lea r8d, [rdx - 0x1b]
call qword [0x1337c1007690]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
mov edx, 0x29
mov dword [rbp + 0x7f], 1
mov rcx, qword [rsi + 0x60]
lea r9, [rbp + 0x7f]
mov dword [rsp + 0x20], 4
lea r8d, [rdx - 0x16]
call qword [0x1337c1007690]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
xor edx, edx
mov dword [rbp + 0x7f], 1
mov rcx, qword [rsi + 0x60]
lea r9, [rbp + 0x7f]
mov dword [rsp + 0x20], 4
lea r8d, [rdx + 0x13]
call qword [0x1337c1007690]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
mov edx, 0x29
mov dword [rbp + 0x7f], 1
mov rcx, qword [rsi + 0x60]
lea r9, [rbp + 0x7f]
mov dword [rsp + 0x20], 4
lea r8d, [rdx + 9]
call qword [0x1337c1007690]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
mov eax, 1
mov dword [rsp + 0x20], 4
mov dword [rbp + 0x7f], eax
lea r9, [rbp + 0x7f]
mov rcx, qword [rsi + 0x60]
xor edx, edx
lea r8d, [rax + 0x31]
call qword [0x1337c1007690]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
mov dword [rbp + 0x7f], 0x7fffffff
lea r9, [rbp + 0x7f]
mov rcx, qword [rsi + 0x60]
mov edx, 0xffff
mov r8d, 0x1002
mov dword [rsp + 0x20], 4
call qword [0x1337c1007690]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
test byte [r15], 2
je 0x1337c0ed6910
mov edx, setsockopt
mov dword [rbp + 0x7f], 0xfff7
mov rcx, qword [rsi + 0x60]
lea r9, [rbp + 0x7f]
mov dword [rsp + 0x20], 4
lea r8d, [rdx - 0xe]
call qword [0x1337c1007690]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
mov rcx, qword [rsi + 0x60]
mov dl, 3
call qword [0x1337c1007538]
test eax, eax
je 0x1337c0ed6b34
cmp qword [r14 + 8], 0
je 0x1337c0ed695a
lea rcx, [rbp - 0x29]
call qword [0x1337c10073f8]
movzx ecx, word [rbp - 0x29]
mov rax, qword [0x1337c1242b78]
movzx edx, byte [rbp - 0x27]
add dx, word [rax + rcx*4]
movzx ecx, word [r15 + 0x74]
movzx eax, dx
xor edx, edx
div ecx
mov ebx, edx
mov word [rdi + 2], dx
mov rcx, qword [rsi + 0x60]
lea r8, [rsi + 0x58]
movzx eax, bx
xor r9d, r9d
lea rbx, [rax + rax*4]
shl rbx, 5
mov rdx, qword [rbx + r15 + 0x88]
call qword [0x1337c1007530]
cmp qword [rbx + r15 + 0x88], rax
jne 0x1337c0ed6b34
mov eax, dword [r14 + 0x14]
test eax, eax
je 0x1337c0ed69f1
mov edx, 0x29
mov dword [rbp + 0x7f], eax
mov rcx, qword [rsi + 0x60]
lea r9, [rbp + 0x7f]
mov dword [rsp + 0x20], 4
lea r8d, [rdx - 0xa]
call qword [0x1337c1007690]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
mov ecx, dword [r14 + 0x14]
call qword [0x1337c1007698]
xor edx, edx
mov dword [rsp + 0x20], 4
mov dword [rbp + 0x7f], eax
lea r9, [rbp + 0x7f]
mov rcx, qword [rsi + 0x60]
lea r8d, [rdx + 0x1f]
call qword [0x1337c1007690]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
test byte [r15], 0x10
je 0x1337c0ed6aab
mov rax, qword [r14]
test rax, rax
je 0x1337c0ed6aab
movzx ecx, word [rax + 2]
test cx, cx
je 0x1337c0ed6aab
xor ebx, ebx
test r12w, r12w
jne 0x1337c0ed6a6d
mov qword [rsp + 0x40], rbx
lea r9d, [rbx + 4]
mov qword [rsp + 0x38], rbx
lea r8, [rbp - 0x25]
mov eax, 1
mov word [rbp - 0x25], cx
mov rcx, qword [rsi + 0x60]
mov edx, 0x98000064
mov word [rbp - 0x23], ax
lea rax, [rbp - 0x21]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x11]
mov dword [rsp + 0x28], reloc.WS2_32.dll_recv
mov qword [rsp + 0x20], rax
call qword [0x1337c10076d8]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
mov rcx, qword [rsi + 0x60]
lea rax, [rbp - 0x21]
mov qword [rsp + 0x40], rbx
lea r8, [rbp - 9]
mov qword [rsp + 0x38], rbx
mov r9d, 8
mov qword [rsp + 0x30], rax
mov edx, 0x98000066
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
call qword [0x1337c10076d8]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
mov rcx, qword [rsi + 0x60]
lea rdx, [rdi + 0x10]
mov r8d, 0x1c
call qword [0x1337c1007730]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
mov rcx, qword [r14 + 8]
test rcx, rcx
je 0x1337c0ed6aff
xor eax, eax
lea rdx, [rbp - 1]
xorps xmm0, xmm0
mov qword [rbp + 0xf], rax
movups xmmword [rbp - 1], xmm0
mov dword [rbp + 0x17], eax
call fcn.1337c0ed59d0
mov rcx, qword [rsi + 0x60]
lea rdx, [rbp - 1]
mov r8d, 0x1c
call qword [0x1337c1007720]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
test r12w, r12w
jne 0x1337c0ed6b23
mov rcx, qword [rsi + 0x60]
lea r8, [rbp - 0x1d]
lea rdx, [rdi + 0x10]
mov dword [rbp - 0x1d], 0x1c
call qword [0x1337c1007710]
cmp eax, 0xffffffff
je 0x1337c0ed6b3c
inc r12w
cmp r12w, r13w
jae 0x1337c0ed6b60
xor edx, edx
jmp 0x1337c0ed66e0
call qword [0x1337c10073d8]
jmp 0x1337c0ed6b42
call qword [0x1337c10076e8]
mov ebx, eax
test eax, eax
jle 0x1337c0ed6b51
movzx ebx, ax
or ebx, 0x80070000
test ebx, ebx
js 0x1337c0ed6c43
mov eax, ebx
jmp 0x1337c0ed6c29
xor ecx, ecx
mov edx, 0xffff
lea eax, [rcx + 2]
cmp word [rdi + 0x18], 0
jne 0x1337c0ed6b9d
cmp word [rdi + 0x1a], 0
jne 0x1337c0ed6b9d
cmp word [rdi + 0x1c], 0
jne 0x1337c0ed6b9d
cmp word [rdi + 0x1e], 0
jne 0x1337c0ed6b9d
cmp word [rdi + 0x20], 0
jne 0x1337c0ed6b9d
cmp word [rdi + 0x22], dx
jne 0x1337c0ed6b9d
mov word [rdi + 0x10], ax
mov eax, dword [rdi + 0x24]
mov dword [rdi + 0x14], eax
mov rax, qword [r14 + 8]
test rax, rax
je 0x1337c0ed6bbf
movups xmm0, xmmword [rax]
movups xmmword [rdi + 0x2c], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rdi + 0x3c], xmm1
mov eax, dword [rax + 0x18]
mov dword [rdi + 0x44], eax
jmp 0x1337c0ed6bc3
mov word [rdi + 0x2e], cx
or byte [rdi], 8
movzx esi, cx
mov rax, qword [rbp + 0x77]
mov qword [rax], rdi
mov word [rdi + 0x4a], r13w
cmp cx, r13w
jae 0x1337c0ed6c27
nop dword [rax + rax]
test byte [rdi], 4
je 0x1337c0ed6beb
movzx eax, word [rdi + 2]
jmp 0x1337c0ed6bee
movzx eax, si
movzx eax, ax
lea rdx, [rax + rax*4]
movzx eax, si
shl rdx, 5
imul rcx, rax, 0xe8
sub rdx, 0xffffffffffffff80
add rcx, 0x58
add rdx, r15
add rcx, rdi
call fcn.1337c0ed7340
mov ebx, eax
test eax, eax
js 0x1337c0ed6c43
inc si
cmp si, r13w
jb 0x1337c0ed6be0
xor ecx, ecx
mov eax, ecx
mov r12, qword [rsp + 0xe0]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret
movzx eax, word [rdi + 0x4a]
test ax, ax
je 0x1337c0ed6c58
mov rcx, rdi
call fcn.1337c0ed6f30
mov eax, ebx
jmp 0x1337c0ed6c29
lea rsi, [rdi + 0x70]
movzx r14d, r13w
mov rcx, qword [rsi - 0x10]
cmp rcx, 0xffffffffffffffff
je 0x1337c0ed6c70
call qword [0x1337c10076e0]
mov rcx, qword [rsi]
call qword [0x1337c10073c0]
add rsi, 0xe8
sub r14, 1
jne 0x1337c0ed6c60
mov rax, 0xffffffffffffffff
lock xadd qword [r15 + 0x28], rax
sub rax, 1
jg 0x1337c0ed6cb1
test rax, rax
jne 0x1337c0ed6caa
mov rcx, qword [r15 + 0x30]
call qword [0x1337c10073b8]
jmp 0x1337c0ed6cb1
mov ecx, recv
int 0x29
mov rcx, qword [0x1337c120bb30]
mov r8, rdi
xor edx, edx
call qword [0x1337c10074c0]
mov eax, ebx
jmp 0x1337c0ed6c29