Function at 0x1337c0ed8820
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 0x1337c0ed8854
movzx r13d, word [rcx + 0x74]
jmp 0x1337c0ed8857
mov r13d, eax
mov rcx, qword [0x1337c121eb20]
xor edx, edx
movzx esi, r13w
imul rbx, rsi, 0xe8
lea r8, [rbx + 0x58]
call qword [0x1337c10094d8]
mov rdi, rax
test rax, rax
jne 0x1337c0ed8887
mov eax, 0x8007000e
jmp 0x1337c0ed8ee1
lea r8, [rbx + 0x58]
mov qword [rsp + 0xe0], r12
xor edx, edx
mov rcx, rdi
call fcn.1337c10051f0
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 0x1337c0ed88d4
lea rdx, [rdi + 0x10]
call fcn.1337c0ed7c80
jmp 0x1337c0ed88da
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 0x1337c0ed8907
lock cmpxchg qword [r15 + 0x28], rcx
mov rcx, rax
je 0x1337c0ed8910
inc rcx
cmp rcx, 1
ja 0x1337c0ed88f3
je 0x1337c0ed8910
mov ecx, recv
int 0x29
test byte [r14 + 0x10], 1
je 0x1337c0ed891a
or byte [rdi], 0x40
xor ecx, ecx
mov edx, 0xffff
lea eax, [rcx + 2]
lea r12, [rcx - 1]
cmp cx, r13w
jae 0x1337c0ed8e1a
lea rbx, [rdi + 0x60]
nop word [rax + rax]
mov qword [rbx - 8], rdi
mov qword [rbx], r12
test byte [r15], 2
je 0x1337c0ed8954
mov eax, 0xfff7
jmp 0x1337c0ed895b
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 [0x1337c10093c8]
mov qword [rbx + 0x10], rax
add rbx, 0xe8
sub rsi, 1
jne 0x1337c0ed8940
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 [0x1337c1009700]
mov qword [rsi + 0x60], rax
cmp rax, 0xffffffffffffffff
je 0x1337c0ed8dec
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 [0x1337c1009690]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
cmp qword [r14 + 8], 0
jne 0x1337c0ed8a48
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 [0x1337c10096d8]
test eax, eax
jne 0x1337c0ed8dec
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 [0x1337c1009690]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
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 [0x1337c1009690]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
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 [0x1337c1009690]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
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 [0x1337c1009690]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
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 [0x1337c1009690]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
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 [0x1337c1009690]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
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 [0x1337c1009690]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
test byte [r15], 2
je 0x1337c0ed8bc0
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 [0x1337c1009690]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
mov rcx, qword [rsi + 0x60]
mov dl, 3
call qword [0x1337c1009538]
test eax, eax
je 0x1337c0ed8de4
cmp qword [r14 + 8], 0
je 0x1337c0ed8c0a
lea rcx, [rbp - 0x29]
call qword [0x1337c10093f8]
movzx ecx, word [rbp - 0x29]
mov rax, qword [0x1337c1255b38]
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 [0x1337c1009530]
cmp qword [rbx + r15 + 0x88], rax
jne 0x1337c0ed8de4
mov eax, dword [r14 + 0x14]
test eax, eax
je 0x1337c0ed8ca1
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 [0x1337c1009690]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
mov ecx, dword [r14 + 0x14]
call qword [0x1337c1009698]
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 [0x1337c1009690]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
test byte [r15], 0x10
je 0x1337c0ed8d5b
mov rax, qword [r14]
test rax, rax
je 0x1337c0ed8d5b
movzx ecx, word [rax + 2]
test cx, cx
je 0x1337c0ed8d5b
xor ebx, ebx
test r12w, r12w
jne 0x1337c0ed8d1d
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 [0x1337c10096d8]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
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 [0x1337c10096d8]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
mov rcx, qword [rsi + 0x60]
lea rdx, [rdi + 0x10]
mov r8d, 0x1c
call qword [0x1337c1009730]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
mov rcx, qword [r14 + 8]
test rcx, rcx
je 0x1337c0ed8daf
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.1337c0ed7c80
mov rcx, qword [rsi + 0x60]
lea rdx, [rbp - 1]
mov r8d, 0x1c
call qword [0x1337c1009720]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
test r12w, r12w
jne 0x1337c0ed8dd3
mov rcx, qword [rsi + 0x60]
lea r8, [rbp - 0x1d]
lea rdx, [rdi + 0x10]
mov dword [rbp - 0x1d], 0x1c
call qword [0x1337c1009710]
cmp eax, 0xffffffff
je 0x1337c0ed8dec
inc r12w
cmp r12w, r13w
jae 0x1337c0ed8e10
xor edx, edx
jmp 0x1337c0ed8990
call qword [0x1337c10093d8]
jmp 0x1337c0ed8df2
call qword [0x1337c10096e8]
mov ebx, eax
test eax, eax
jle 0x1337c0ed8e01
movzx ebx, ax
or ebx, 0x80070000
test ebx, ebx
js 0x1337c0ed8ef3
mov eax, ebx
jmp 0x1337c0ed8ed9
xor ecx, ecx
mov edx, 0xffff
lea eax, [rcx + 2]
cmp word [rdi + 0x18], 0
jne 0x1337c0ed8e4d
cmp word [rdi + 0x1a], 0
jne 0x1337c0ed8e4d
cmp word [rdi + 0x1c], 0
jne 0x1337c0ed8e4d
cmp word [rdi + 0x1e], 0
jne 0x1337c0ed8e4d
cmp word [rdi + 0x20], 0
jne 0x1337c0ed8e4d
cmp word [rdi + 0x22], dx
jne 0x1337c0ed8e4d
mov word [rdi + 0x10], ax
mov eax, dword [rdi + 0x24]
mov dword [rdi + 0x14], eax
mov rax, qword [r14 + 8]
test rax, rax
je 0x1337c0ed8e6f
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 0x1337c0ed8e73
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 0x1337c0ed8ed7
nop dword [rax + rax]
test byte [rdi], 4
je 0x1337c0ed8e9b
movzx eax, word [rdi + 2]
jmp 0x1337c0ed8e9e
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.1337c0ed95f0
mov ebx, eax
test eax, eax
js 0x1337c0ed8ef3
inc si
cmp si, r13w
jb 0x1337c0ed8e90
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 0x1337c0ed8f08
mov rcx, rdi
call fcn.1337c0ed91e0
mov eax, ebx
jmp 0x1337c0ed8ed9
lea rsi, [rdi + 0x70]
movzx r14d, r13w
mov rcx, qword [rsi - 0x10]
cmp rcx, 0xffffffffffffffff
je 0x1337c0ed8f20
call qword [0x1337c10096e0]
mov rcx, qword [rsi]
call qword [0x1337c10093c0]
add rsi, 0xe8
sub r14, 1
jne 0x1337c0ed8f10
mov rax, 0xffffffffffffffff
lock xadd qword [r15 + 0x28], rax
sub rax, 1
jg 0x1337c0ed8f61
test rax, rax
jne 0x1337c0ed8f5a
mov rcx, qword [r15 + 0x30]
call qword [0x1337c10093b8]
jmp 0x1337c0ed8f61
mov ecx, recv
int 0x29
mov rcx, qword [0x1337c121eb20]
mov r8, rdi
xor edx, edx
call qword [0x1337c10094c0]
mov eax, ebx
jmp 0x1337c0ed8ed9