Function at 0x1337c0ed4290
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 0x1337c0ed42c4
movzx r13d, word [rcx + 0x74]
jmp 0x1337c0ed42c7
mov r13d, eax
mov rcx, qword [0x1337c11dcb20]
xor edx, edx
movzx esi, r13w
imul rbx, rsi, 0xe8
lea r8, [rbx + 0x58]
call qword [0x1337c10054d8]
mov rdi, rax
test rax, rax
jne 0x1337c0ed42f7
mov eax, 0x8007000e
jmp 0x1337c0ed4951
lea r8, [rbx + 0x58]
mov qword [rsp + 0xe0], r12
xor edx, edx
mov rcx, rdi
call fcn.1337c1000cd0
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 0x1337c0ed4344
lea rdx, [rdi + 0x10]
call fcn.1337c0ed36f0
jmp 0x1337c0ed434a
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 0x1337c0ed4377
lock cmpxchg qword [r15 + 0x28], rcx
mov rcx, rax
je 0x1337c0ed4380
inc rcx
cmp rcx, 1
ja 0x1337c0ed4363
je 0x1337c0ed4380
mov ecx, recv
int 0x29
test byte [r14 + 0x10], 1
je 0x1337c0ed438a
or byte [rdi], 0x40
xor ecx, ecx
mov edx, 0xffff
lea eax, [rcx + 2]
lea r12, [rcx - 1]
cmp cx, r13w
jae 0x1337c0ed488a
lea rbx, [rdi + 0x60]
nop word [rax + rax]
mov qword [rbx - 8], rdi
mov qword [rbx], r12
test byte [r15], 2
je 0x1337c0ed43c4
mov eax, 0xfff7
jmp 0x1337c0ed43cb
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 [0x1337c10053c8]
mov qword [rbx + 0x10], rax
add rbx, 0xe8
sub rsi, 1
jne 0x1337c0ed43b0
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 [0x1337c1005700]
mov qword [rsi + 0x60], rax
cmp rax, 0xffffffffffffffff
je 0x1337c0ed485c
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 [0x1337c1005690]
cmp eax, 0xffffffff
je 0x1337c0ed485c
cmp qword [r14 + 8], 0
jne 0x1337c0ed44b8
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 [0x1337c10056d8]
test eax, eax
jne 0x1337c0ed485c
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 [0x1337c1005690]
cmp eax, 0xffffffff
je 0x1337c0ed485c
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 [0x1337c1005690]
cmp eax, 0xffffffff
je 0x1337c0ed485c
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 [0x1337c1005690]
cmp eax, 0xffffffff
je 0x1337c0ed485c
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 [0x1337c1005690]
cmp eax, 0xffffffff
je 0x1337c0ed485c
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 [0x1337c1005690]
cmp eax, 0xffffffff
je 0x1337c0ed485c
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 [0x1337c1005690]
cmp eax, 0xffffffff
je 0x1337c0ed485c
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 [0x1337c1005690]
cmp eax, 0xffffffff
je 0x1337c0ed485c
test byte [r15], 2
je 0x1337c0ed4630
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 [0x1337c1005690]
cmp eax, 0xffffffff
je 0x1337c0ed485c
mov rcx, qword [rsi + 0x60]
mov dl, 3
call qword [0x1337c1005538]
test eax, eax
je 0x1337c0ed4854
cmp qword [r14 + 8], 0
je 0x1337c0ed467a
lea rcx, [rbp - 0x29]
call qword [0x1337c10053f8]
movzx ecx, word [rbp - 0x29]
mov rax, qword [0x1337c1213b38]
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 [0x1337c1005530]
cmp qword [rbx + r15 + 0x88], rax
jne 0x1337c0ed4854
mov eax, dword [r14 + 0x14]
test eax, eax
je 0x1337c0ed4711
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 [0x1337c1005690]
cmp eax, 0xffffffff
je 0x1337c0ed485c
mov ecx, dword [r14 + 0x14]
call qword [0x1337c1005698]
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 [0x1337c1005690]
cmp eax, 0xffffffff
je 0x1337c0ed485c
test byte [r15], 0x10
je 0x1337c0ed47cb
mov rax, qword [r14]
test rax, rax
je 0x1337c0ed47cb
movzx ecx, word [rax + 2]
test cx, cx
je 0x1337c0ed47cb
xor ebx, ebx
test r12w, r12w
jne 0x1337c0ed478d
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 [0x1337c10056d8]
cmp eax, 0xffffffff
je 0x1337c0ed485c
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 [0x1337c10056d8]
cmp eax, 0xffffffff
je 0x1337c0ed485c
mov rcx, qword [rsi + 0x60]
lea rdx, [rdi + 0x10]
mov r8d, 0x1c
call qword [0x1337c1005730]
cmp eax, 0xffffffff
je 0x1337c0ed485c
mov rcx, qword [r14 + 8]
test rcx, rcx
je 0x1337c0ed481f
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.1337c0ed36f0
mov rcx, qword [rsi + 0x60]
lea rdx, [rbp - 1]
mov r8d, 0x1c
call qword [0x1337c1005720]
cmp eax, 0xffffffff
je 0x1337c0ed485c
test r12w, r12w
jne 0x1337c0ed4843
mov rcx, qword [rsi + 0x60]
lea r8, [rbp - 0x1d]
lea rdx, [rdi + 0x10]
mov dword [rbp - 0x1d], 0x1c
call qword [0x1337c1005710]
cmp eax, 0xffffffff
je 0x1337c0ed485c
inc r12w
cmp r12w, r13w
jae 0x1337c0ed4880
xor edx, edx
jmp 0x1337c0ed4400
call qword [0x1337c10053d8]
jmp 0x1337c0ed4862
call qword [0x1337c10056e8]
mov ebx, eax
test eax, eax
jle 0x1337c0ed4871
movzx ebx, ax
or ebx, 0x80070000
test ebx, ebx
js 0x1337c0ed4963
mov eax, ebx
jmp 0x1337c0ed4949
xor ecx, ecx
mov edx, 0xffff
lea eax, [rcx + 2]
cmp word [rdi + 0x18], 0
jne 0x1337c0ed48bd
cmp word [rdi + 0x1a], 0
jne 0x1337c0ed48bd
cmp word [rdi + 0x1c], 0
jne 0x1337c0ed48bd
cmp word [rdi + 0x1e], 0
jne 0x1337c0ed48bd
cmp word [rdi + 0x20], 0
jne 0x1337c0ed48bd
cmp word [rdi + 0x22], dx
jne 0x1337c0ed48bd
mov word [rdi + 0x10], ax
mov eax, dword [rdi + 0x24]
mov dword [rdi + 0x14], eax
mov rax, qword [r14 + 8]
test rax, rax
je 0x1337c0ed48df
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 0x1337c0ed48e3
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 0x1337c0ed4947
nop dword [rax + rax]
test byte [rdi], 4
je 0x1337c0ed490b
movzx eax, word [rdi + 2]
jmp 0x1337c0ed490e
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.1337c0ed5060
mov ebx, eax
test eax, eax
js 0x1337c0ed4963
inc si
cmp si, r13w
jb 0x1337c0ed4900
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 0x1337c0ed4978
mov rcx, rdi
call fcn.1337c0ed4c50
mov eax, ebx
jmp 0x1337c0ed4949
lea rsi, [rdi + 0x70]
movzx r14d, r13w
mov rcx, qword [rsi - 0x10]
cmp rcx, 0xffffffffffffffff
je 0x1337c0ed4990
call qword [0x1337c10056e0]
mov rcx, qword [rsi]
call qword [0x1337c10053c0]
add rsi, 0xe8
sub r14, 1
jne 0x1337c0ed4980
mov rax, 0xffffffffffffffff
lock xadd qword [r15 + 0x28], rax
sub rax, 1
jg 0x1337c0ed49d1
test rax, rax
jne 0x1337c0ed49ca
mov rcx, qword [r15 + 0x30]
call qword [0x1337c10053b8]
jmp 0x1337c0ed49d1
mov ecx, recv
int 0x29
mov rcx, qword [0x1337c11dcb20]
mov r8, rdi
xor edx, edx
call qword [0x1337c10054c0]
mov eax, ebx
jmp 0x1337c0ed4949