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

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x7a0
mov rax, qword [0x140306028]
xor rax, rsp
mov qword [rsp + 0x790], rax
mov qword [rsp + 0xa0], r8
mov r13, rdx
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0x500], rcx
mov qword [rsp + 0x508], rdx
mov qword [rsp + 0x4f8], r8
mov r8d, dword [rcx + 0xc8]
mov eax, 0x51eb851f
imul r8d
mov ecx, edx
sar ecx, 5
mov eax, ecx
shr eax, 0x1f
add ecx, eax
mov dword [rsp + 0x48], ecx
imul eax, ecx, 0x64
sub r8d, eax
mov dword [rsp + 0x44], r8d
mov dword [rsp + 0x98], ecx
imul r14d, ecx, 0x64
add r14d, r8d
movsxd rax, r14d
imul rdx, rax, 0x1f8
add rdx, qword [r13 + 0xc8]
lea rcx, [rsp + 0x590]
call fcn.14006bbd0
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x570], xmm0
mov qword [rsp + 0x580], rax
lea rdx, [r13 + 0xc8]
lea rcx, [rsp + 0x570]
call fcn.1401f5b10
nop
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x540], xmm1
xor esi, esi
mov qword [rsp + 0x550], rsi
movdqu xmmword [rsp + 0x558], xmm1
mov qword [rsp + 0x568], rsi
mov dword [rsp + 0x40], r14d
lea r8, [rsp + 0x40]
xor edx, edx
lea rcx, [rsp + 0x558]
call fcn.140211670
nop
mov r15d, esi
movabs r12, 0x8208208208208209
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rsp + 0x560]
mov rcx, qword [rsp + 0x558]
sub rax, rcx
sar rax, 2
movsxd r8, r15d
cmp r8, rax
jae 0x14006ac6a
mov eax, 0x51eb851f
imul dword [rcx + r8*4]
mov ebx, edx
sar ebx, 5
mov eax, ebx
shr eax, 0x1f
add ebx, eax
imul eax, ebx, 0x64
mov edi, dword [rcx + r8*4]
sub edi, eax
cmp edi, 0x63
jge 0x14006a71c
imul r8d, ebx, 0x64
inc r8d
add r8d, edi
movsxd r9, r8d
mov rcx, qword [rsp + 0x578]
sub rcx, qword [rsp + 0x570]
mov rax, r12
imul rcx
add rdx, rcx
sar rdx, 8
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, r9
jbe 0x14006bbb1
imul rcx, r9, 0x1f8
mov rax, qword [rsp + 0x570]
cmp byte [rcx + rax + 0xc7], 0
je 0x14006a71c
cmp dword [rcx + rax + 0xc8], r14d
jne 0x14006a71c
cmp byte [rcx + rax + 0xb0], 0
jne 0x14006a71c
mov byte [rcx + rax + 0xb0], 1
mov dword [rsp + 0x40], r8d
mov rdx, qword [rsp + 0x560]
cmp rdx, qword [rsp + 0x568]
je 0x14006a5fd
mov dword [rdx], r8d
add qword [rsp + 0x560], 4
jmp 0x14006a60f
lea r8, [rsp + 0x40]
lea rcx, [rsp + 0x558]
call fcn.140211670
lea eax, [rdi + 1]
mov dword [rsp + 0xa8], eax
mov dword [rsp + 0xac], ebx
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x510], xmm0
mov qword [rsp + 0x520], rsi
mov edx, 2
call fcn.1401f8b90
mov qword [rsp + 0x510], rax
lea r8, [rax + 8]
mov qword [rsp + 0x520], r8
mov rcx, qword [rsp + 0xa8]
mov qword [rax], rcx
mov qword [rsp + 0x518], r8
mov rdx, qword [rsp + 0x548]
cmp rdx, qword [rsp + 0x550]
je 0x14006a6b5
mov rcx, qword [rsp + 0x520]
mov qword [rsp + 0x520], rsi
mov qword [rsp + 0x518], rsi
mov rax, qword [rsp + 0x510]
mov qword [rsp + 0x510], rsi
mov qword [rdx], rax
mov qword [rdx + 8], r8
mov qword [rdx + 0x10], rcx
add qword [rsp + 0x548], 0x18
jmp 0x14006a6cb
lea r8, [rsp + 0x510]
lea rcx, [rsp + 0x540]
call fcn.140211010
nop
mov rcx, qword [rsp + 0x510]
test rcx, rcx
je 0x14006a71c
mov rax, qword [rsp + 0x520]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006a717
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14006a717
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140222190
test edi, edi
jle 0x14006a8e6
imul r8d, ebx, 0x64
dec r8d
add r8d, edi
movsxd r9, r8d
mov rcx, qword [rsp + 0x578]
sub rcx, qword [rsp + 0x570]
mov rax, r12
imul rcx
add rdx, rcx
sar rdx, 8
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, r9
jbe 0x14006bbb7
imul rcx, r9, 0x1f8
mov rax, qword [rsp + 0x570]
cmp byte [rcx + rax + 0xc7], 0
je 0x14006a8e6
cmp dword [rcx + rax + 0xc8], r14d
jne 0x14006a8e6
cmp byte [rcx + rax + 0xb0], 0
jne 0x14006a8e6
mov byte [rcx + rax + 0xb0], 1
mov dword [rsp + 0x40], r8d
mov rdx, qword [rsp + 0x560]
cmp rdx, qword [rsp + 0x568]
je 0x14006a7c7
mov dword [rdx], r8d
add qword [rsp + 0x560], 4
jmp 0x14006a7d9
lea r8, [rsp + 0x40]
lea rcx, [rsp + 0x558]
call fcn.140211670
lea eax, [rdi - 1]
mov dword [rsp + 0xb0], eax
mov dword [rsp + 0xb4], ebx
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x510], xmm0
mov qword [rsp + 0x520], rsi
mov edx, 2
call fcn.1401f8b90
mov qword [rsp + 0x510], rax
lea r8, [rax + 8]
mov qword [rsp + 0x520], r8
mov rcx, qword [rsp + 0xb0]
mov qword [rax], rcx
mov qword [rsp + 0x518], r8
mov rdx, qword [rsp + 0x548]
cmp rdx, qword [rsp + 0x550]
je 0x14006a87f
mov rcx, qword [rsp + 0x520]
mov qword [rsp + 0x520], rsi
mov qword [rsp + 0x518], rsi
mov rax, qword [rsp + 0x510]
mov qword [rsp + 0x510], rsi
mov qword [rdx], rax
mov qword [rdx + 8], r8
mov qword [rdx + 0x10], rcx
add qword [rsp + 0x548], 0x18
jmp 0x14006a895
lea r8, [rsp + 0x510]
lea rcx, [rsp + 0x540]
call fcn.140211010
nop
mov rcx, qword [rsp + 0x510]
test rcx, rcx
je 0x14006a8e6
mov rax, qword [rsp + 0x520]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006a8e1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14006a8e1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140222190
cmp ebx, 0x3b
jge 0x14006aaa8
lea eax, [rbx + 1]
imul r8d, eax, 0x64
add r8d, edi
movsxd r9, r8d
mov rcx, qword [rsp + 0x578]
sub rcx, qword [rsp + 0x570]
mov rax, r12
imul rcx
add rdx, rcx
sar rdx, 8
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, r9
jbe 0x14006bbbc
imul rcx, r9, 0x1f8
mov rax, qword [rsp + 0x570]
cmp byte [rcx + rax + 0xc7], 0
je 0x14006aaa8
cmp dword [rcx + rax + 0xc8], r14d
jne 0x14006aaa8
cmp byte [rcx + rax + 0xb0], 0
jne 0x14006aaa8
mov byte [rcx + rax + 0xb0], 1
mov dword [rsp + 0x40], r8d
mov rdx, qword [rsp + 0x560]
cmp rdx, qword [rsp + 0x568]
je 0x14006a992
mov dword [rdx], r8d
add qword [rsp + 0x560], 4
jmp 0x14006a9a4
lea r8, [rsp + 0x40]
lea rcx, [rsp + 0x558]
call fcn.140211670
mov dword [rsp + 0x60], edi
lea eax, [rbx + 1]
mov dword [rsp + 0x64], eax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x510], xmm0
mov qword [rsp + 0x520], rsi
mov edx, 2
call fcn.1401f8b90
mov qword [rsp + 0x510], rax
lea r8, [rax + 8]
mov qword [rsp + 0x520], r8
mov rcx, qword [rsp + 0x60]
mov qword [rax], rcx
mov qword [rsp + 0x518], r8
mov rdx, qword [rsp + 0x548]
cmp rdx, qword [rsp + 0x550]
je 0x14006aa41
mov rcx, qword [rsp + 0x520]
mov qword [rsp + 0x520], rsi
mov qword [rsp + 0x518], rsi
mov rax, qword [rsp + 0x510]
mov qword [rsp + 0x510], rsi
mov qword [rdx], rax
mov qword [rdx + 8], r8
mov qword [rdx + 0x10], rcx
add qword [rsp + 0x548], 0x18
jmp 0x14006aa57
lea r8, [rsp + 0x510]
lea rcx, [rsp + 0x540]
call fcn.140211010
nop
mov rcx, qword [rsp + 0x510]
test rcx, rcx
je 0x14006aaa8
mov rax, qword [rsp + 0x520]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006aaa3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14006aaa3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140222190
test ebx, ebx
jle 0x14006ac62
imul r8d, ebx, 0x64
add r8d, 0xffffff9c
add r8d, edi
movsxd r9, r8d
mov rcx, qword [rsp + 0x578]
sub rcx, qword [rsp + 0x570]
mov rax, r12
imul rcx
add rdx, rcx
sar rdx, 8
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, r9
jbe 0x14006bbc1
imul rcx, r9, 0x1f8
mov rax, qword [rsp + 0x570]
cmp byte [rcx + rax + 0xc7], 0
je 0x14006ac62
cmp dword [rcx + rax + 0xc8], r14d
jne 0x14006ac62
cmp byte [rcx + rax + 0xb0], 0
jne 0x14006ac62
mov byte [rcx + rax + 0xb0], 1
mov dword [rsp + 0x40], r8d
mov rdx, qword [rsp + 0x560]
cmp rdx, qword [rsp + 0x568]
je 0x14006ab54
mov dword [rdx], r8d
add qword [rsp + 0x560], 4
jmp 0x14006ab66
lea r8, [rsp + 0x40]
lea rcx, [rsp + 0x558]
call fcn.140211670
mov dword [rsp + 0x58], edi
lea eax, [rbx - 1]
mov dword [rsp + 0x5c], eax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x510], xmm0
mov qword [rsp + 0x520], rsi
mov edx, 2
call fcn.1401f8b90
mov qword [rsp + 0x510], rax
lea r8, [rax + 8]
mov qword [rsp + 0x520], r8
mov rcx, qword [rsp + 0x58]
mov qword [rax], rcx
mov qword [rsp + 0x518], r8
mov rdx, qword [rsp + 0x548]
cmp rdx, qword [rsp + 0x550]
je 0x14006ac03
mov rcx, qword [rsp + 0x520]
mov qword [rsp + 0x520], rsi
mov qword [rsp + 0x518], rsi
mov rax, qword [rsp + 0x510]
mov qword [rsp + 0x510], rsi
mov qword [rdx], rax
mov qword [rdx + 8], r8
mov qword [rdx + 0x10], rcx
add qword [rsp + 0x548], 0x18
jmp 0x14006ac19
lea r8, [rsp + 0x510]
lea rcx, [rsp + 0x540]
call fcn.140211010
nop
mov rcx, qword [rsp + 0x510]
test rcx, rcx
je 0x14006ac62
mov rdx, qword [rsp + 0x520]
sub rdx, rcx
and rdx, 0xfffffffffffffffc
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006ac5d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14006ac5d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140222190
inc r15d
jmp 0x14006a510
mov r13, qword [rsp + 0x50]
mov r12, qword [rsp + 0xa0]
mov r15d, dword [rsp + 0x48]
jmp 0x14006acba
mov rcx, qword [rsp + 0x548]
sub rcx, qword [rsp + 0x540]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rdi, rdx
sar rdi, 2
mov rax, rdi
shr rax, 0x3f
add rdi, rax
xorps xmm0, xmm0
je 0x14006b516
movups xmmword [rsp + 0x510], xmm0
movups xmmword [rsp + 0x520], xmm0
movups xmmword [rsp + 0x530], xmm0
test r12, r12
je 0x14006ad61
mov rbx, qword [r12 + 0x30]
lea rdx, [rbx + 0x250]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14006ad28
mov rdx, qword [rdx]
lea rcx, [rsp + 0x678]
cmp qword [rsp + 0x690], 0x10
cmovae rcx, qword [rsp + 0x678]
mov r8, qword [rsp + 0x688]
cmp r8, rax
jne 0x14006ad61
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14006ad61
mov r14d, dword [rbx + 0xec]
jmp 0x14006ad67
mov r14d, 0xffffffff
movzx edx, word [rsp + 0x590]
mov r15d, edx
imul r8, rdx, 0x3b8
add r8, qword [0x140307de8]
mov eax, dword [r8 + 0x390]
cmp eax, 3
jne 0x14006ad90
mov eax, esi
jmp 0x14006ae03
cmp byte [r8 + 0x142], 0
je 0x14006adb7
mov rax, qword [rsp + 0x668]
sub rax, qword [rsp + 0x660]
sar rax, 5
lea eax, [rax*4 + 0x63]
jmp 0x14006ae03
cmp eax, 0xd
jne 0x14006adfe
mov ecx, 0xca
movzx eax, dx
sub ax, cx
cmp ax, 4
ja 0x14006add9
mov r8d, reloc.WS2_32.dll_setsockopt
bt r8d, eax
jb 0x14006ad9a
mov ecx, 0x1382
cmp dx, cx
je 0x14006ad9a
mov rax, qword [r13 + 0xb8]
sub rax, qword [r13 + 0xb0]
sar rax, 5
lea eax, [rax*4 + 0x63]
jmp 0x14006ae03
mov eax, 0x63
lea eax, [rax + rdi*2]
add eax, 0x70
movsxd rbx, eax
mov rcx, rbx
call fcn.140222890
mov r12, rax
mov r8, rbx
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov dword [r12], reloc.WS2_32.dll_ntohs
mov dword [r12 + 4], r14d
mov edx, 8
mov dword [r12 + 0xc], edx
mov dword [r12 + 0x14], r15d
mov ecx, dword [rsp + 0x530]
mov dword [r12 + 0x18], ecx
mov eax, dword [rsp + 0x534]
mov dword [r12 + 0x1c], eax
mov eax, dword [rsp + 0x538]
mov dword [r12 + 0x20], eax
mov eax, dword [rsp + 0x53c]
mov dword [r12 + 0x24], eax
mov eax, dword [rsp + 0x44]
mov dword [r12 + 0x2c], eax
mov eax, dword [rsp + 0x48]
mov dword [r12 + 0x30], eax
mov word [r12 + 8], di
mov word [r12 + 0xc], dx
lea r13, [r12 + 0x38]
mov edi, esi
mov dword [rsp + 0x40], esi
mov rcx, qword [rsp + 0x548]
mov r14, qword [rsp + 0x540]
sub rcx, r14
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x14006b017
mov r15, rsi
movabs rax, 0x3fffffffffffffff
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x510], xmm0
mov qword [rsp + 0x520], rsi
mov rbx, qword [r15 + r14 + 8]
sub rbx, qword [r15 + r14]
sar rbx, 2
test rbx, rbx
je 0x14006af53
cmp rbx, rax
ja 0x14006bbc7
mov rdx, rbx
call fcn.1401f8b90
mov rdi, rax
mov qword [rsp + 0x510], rax
lea rcx, [rax + rbx*4]
mov qword [rsp + 0x520], rcx
mov rbx, qword [r15 + r14 + 8]
mov rdx, qword [r15 + r14]
sub rbx, rdx
mov r8, rbx
mov rcx, rax
call sub.VCRUNTIME140.dll_memmove
sar rbx, 2
lea rax, [rdi + rbx*4]
mov qword [rsp + 0x518], rax
mov edi, dword [rsp + 0x40]
mov rax, qword [rsp + 0x510]
mov ecx, dword [rax]
imul eax, dword [rax + 4], 0x64
add ecx, eax
mov word [r13], cx
movsxd rax, ecx
imul rcx, rax, 0x1f8
add rcx, qword [rsp + 0x570]
mov byte [rcx + 0xb0], 0
mov rcx, qword [rsp + 0x510]
test rcx, rcx
je 0x14006afcf
mov rax, qword [rsp + 0x520]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006afca
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006b058
call fcn.140222190
inc edi
mov dword [rsp + 0x40], edi
add r15, 0x18
add r13, 2
mov rcx, qword [rsp + 0x548]
mov r14, qword [rsp + 0x540]
sub rcx, r14
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, edi
cmp rax, rdx
jb 0x14006aed0
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rsp + 0x88], xmm0
movzx edx, word [rsp + 0x590]
imul r8, rdx, 0x3b8
add r8, qword [0x140307de8]
mov eax, dword [r8 + 0x390]
cmp eax, 3
jne 0x14006b05f
mov eax, WSAStartup
jmp 0x14006b0f4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
cmp byte [r8 + 0x142], 0
je 0x14006b086
mov rax, qword [rsp + 0x668]
sub rax, qword [rsp + 0x660]
sar rax, 5
lea eax, [rax*4 + 0xd3]
jmp 0x14006b0f4
cmp eax, 0xd
jne 0x14006b0ef
movzx eax, dx
mov r14d, 0xca
sub ax, r14w
cmp ax, 4
ja 0x14006b0a8
mov ecx, reloc.WS2_32.dll_setsockopt
bt ecx, eax
jb 0x14006b0d2
mov eax, 0x1382
cmp dx, ax
je 0x14006b0d2
mov r13, qword [rsp + 0x50]
mov rax, qword [r13 + 0xb8]
sub rax, qword [r13 + 0xb0]
sar rax, 5
lea eax, [rax*4 + 0xd3]
jmp 0x14006b0ff
mov rax, qword [rsp + 0x668]
sub rax, qword [rsp + 0x660]
sar rax, 5
lea eax, [rax*4 + 0xd3]
jmp 0x14006b0fa
mov eax, 0xd3
mov r14d, 0xca
mov r13, qword [rsp + 0x50]
movsxd rbx, eax
mov rcx, rbx
call fcn.140222890
mov r15, rax
mov r8, rbx
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov dword [r15], 5
mov ecx, dword [rsp + 0x68]
mov dword [r15 + 4], ecx
mov dword [r15 + 0xc], 8
mov ecx, dword [rsp + 0x78]
mov dword [r15 + 0x14], ecx
mov ecx, dword [rsp + 0x88]
mov dword [r15 + 0x18], ecx
mov eax, dword [rsp + 0x8c]
mov dword [r15 + 0x1c], eax
mov eax, dword [rsp + 0x90]
mov dword [r15 + 0x20], eax
mov eax, dword [rsp + 0x94]
mov dword [r15 + 0x24], eax
mov eax, dword [rsp + 0x44]
mov dword [r15 + 0x2c], eax
mov eax, dword [rsp + 0x48]
mov dword [r15 + 0x30], eax
lea rax, [r15 + 0x38]
mov qword [rsp + 0x4f8], rax
lea rax, [rsp + 0x2b8]
mov qword [rsp + 0x58], rax
mov rdx, r13
lea rcx, [rsp + 0x2b8]
call fcn.140046420
mov rbx, rax
lea rdx, [rsp + 0x590]
lea rcx, [rsp + 0xc0]
call fcn.14006bbd0
nop
mov dword [rsp + 0x38], 0xffffffff
mov dword [rsp + 0x30], 0xffffffff
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9, qword [rsp + 0xa0]
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x4f8]
call fcn.140068cb0
mov rbx, qword [0x1403076c0]
mov rdi, qword [rbx + 0x28]
imul rax, qword [rbx + 0x30], 0x1c8
add rax, rdi
cmp rdi, rax
jae 0x14006b506
mov esi, 0x1382
cmp dword [rdi + 0x38], 5
jne 0x14006b4e2
mov rdx, qword [rdi + 0x30]
test rdx, rdx
je 0x14006b4e2
add rdx, 0x2d0
lea rcx, [r13 + 8]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14006b240
mov rdx, qword [rdx]
mov r8, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0x10
jb 0x14006b24e
mov rcx, qword [rcx]
cmp r8, rax
jne 0x14006b4e2
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14006b4e2
movzx edx, word [rsp + 0x590]
imul rcx, rdx, 0x3b8
mov rax, qword [0x140307de8]
mov r8d, dword [rcx + rax + 0x390]
cmp r8d, 3
jne 0x14006b290
mov r8d, WSAStartup
jmp 0x14006b2fc
cmp byte [rcx + rax + 0x142], 0
je 0x14006b2b8
mov rax, qword [rsp + 0x668]
sub rax, qword [rsp + 0x660]
sar rax, 5
lea r8d, [rax*4 + 0xd3]
jmp 0x14006b2fc
cmp r8d, 0xd
jne 0x14006b2f6
movzx eax, dx
sub ax, r14w
cmp ax, 4
ja 0x14006b2d5
mov ecx, reloc.WS2_32.dll_setsockopt
bt ecx, eax
jb 0x14006b29a
cmp dx, si
je 0x14006b29a
mov rax, qword [r13 + 0xb8]
sub rax, qword [r13 + 0xb0]
sar rax, 5
lea r8d, [rax*4 + 0xd3]
jmp 0x14006b2fc
mov r8d, 0xd3
mov rcx, qword [rsp + 0x548]
sub rcx, qword [rsp + 0x540]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea ecx, [r8 + rdx*2]
movsxd r14, ecx
mov r8d, 1
test byte [r12 + 0xc], 8
je 0x14006b381
mov edx, dword [r12 + 0x34]
add ecx, 5
add edx, ecx
xor ecx, ecx
call fcn.140013230
mov rbx, rax
mov rcx, qword [rax + 0x10]
mov dword [rcx], 4
mov rcx, qword [rax + 0x10]
add rcx, 4
mov r8, r14
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
mov r8d, dword [r12 + 0x34]
mov rcx, qword [rbx + 0x10]
add rcx, 4
add rcx, r14
xor edx, edx
jmp 0x14006b3a9
lea eax, [rcx + 5]
movsxd rdx, eax
xor ecx, ecx
call fcn.140013230
mov rbx, rax
mov rax, qword [rax + 0x10]
mov dword [rax], 4
mov rcx, qword [rbx + 0x10]
add rcx, 4
mov r8, r14
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
mov r8, rbx
xor edx, edx
mov rcx, rdi
call fcn.1400134c0
movzx edx, word [rsp + 0x590]
imul r8, rdx, 0x3b8
add r8, qword [0x140307de8]
mov eax, dword [r8 + 0x390]
cmp eax, 3
jne 0x14006b3e2
lea ecx, [rax + 0x6d]
jmp 0x14006b44e
cmp byte [r8 + 0x142], 0
je 0x14006b409
mov rax, qword [rsp + 0x668]
sub rax, qword [rsp + 0x660]
sar rax, 5
lea ecx, [rax*4 + 0xd3]
jmp 0x14006b44e
cmp eax, 0xd
jne 0x14006b449
movzx eax, dx
mov ecx, 0xca
sub ax, cx
cmp ax, 4
ja 0x14006b429
mov ecx, reloc.WS2_32.dll_setsockopt
bt ecx, eax
jb 0x14006b3ec
cmp dx, si
je 0x14006b3ec
mov rax, qword [r13 + 0xb8]
sub rax, qword [r13 + 0xb0]
sar rax, 5
lea ecx, [rax*4 + 0xd3]
jmp 0x14006b44e
mov ecx, 0xd3
movsxd r14, ecx
mov r8d, 1
test byte [r15 + 0xc], 8
je 0x14006b4a1
mov edx, dword [r15 + 0x34]
add ecx, 5
add edx, ecx
xor ecx, ecx
call fcn.140013230
mov rbx, rax
mov rcx, qword [rax + 0x10]
mov dword [rcx], 4
mov rcx, qword [rax + 0x10]
add rcx, 4
mov r8, r14
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
mov r8d, dword [r15 + 0x34]
mov rcx, qword [rbx + 0x10]
add rcx, 4
add rcx, r14
xor edx, edx
jmp 0x14006b4c9
lea eax, [rcx + 5]
movsxd rdx, eax
xor ecx, ecx
call fcn.140013230
mov rbx, rax
mov rax, qword [rax + 0x10]
mov dword [rax], 4
mov rcx, qword [rbx + 0x10]
add rcx, 4
mov r8, r14
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
mov r8, rbx
xor edx, edx
mov rcx, rdi
call fcn.1400134c0
mov rbx, qword [0x1403076c0]
add rdi, 0x1c8
imul rax, qword [rbx + 0x30], 0x1c8
add rax, qword [rbx + 0x28]
cmp rdi, rax
mov r14d, 0xca
jb 0x14006b210
xor esi, esi
mov rcx, r12
call fcn.140222190
mov rcx, r15
jmp 0x14006ba01
movups xmmword [rsp + 0x68], xmm0
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rsp + 0x88], xmm0
mov rbx, qword [r12 + 0x30]
lea rdx, [rbx + 0x250]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14006b542
mov rdx, qword [rdx]
lea rcx, [rsp + 0x678]
cmp qword [rsp + 0x690], 0x10
cmovae rcx, qword [rsp + 0x678]
mov r8, qword [rsp + 0x688]
cmp r8, rax
jne 0x14006b57b
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14006b57b
mov r14d, dword [rbx + 0xec]
jmp 0x14006b581
mov r14d, 0xffffffff
movzx ebx, word [rsp + 0x590]
mov ecx, 0x38
call fcn.140222890
mov rdi, rax
mov dword [rax + 8], esi
mov qword [rax + 0xc], 8
mov dword [rax + 0x28], esi
mov dword [rax + 0x34], esi
mov dword [rax], reloc.WS2_32.dll_ntohs
mov dword [rax + 4], r14d
mov dword [rax + 0x14], ebx
mov eax, dword [rsp + 0x88]
mov dword [rdi + 0x18], eax
mov eax, dword [rsp + 0x8c]
mov dword [rdi + 0x1c], eax
mov eax, dword [rsp + 0x90]
mov dword [rdi + 0x20], eax
mov eax, dword [rsp + 0x94]
mov dword [rdi + 0x24], eax
mov eax, dword [rsp + 0x44]
mov dword [rdi + 0x2c], eax
mov dword [rdi + 0x30], r15d
mov rbx, qword [0x1403076c0]
mov r14, qword [rbx + 0x28]
imul rax, qword [rbx + 0x30], 0x1c8
add rax, r14
cmp r14, rax
jae 0x14006b9fe
mov esi, 0xca
mov r15d, reloc.WS2_32.dll_setsockopt
mov r12d, 0x1382
nop word [rax + rax]
cmp dword [r14 + 0x38], 5
jne 0x14006b9e0
mov rdx, qword [r14 + 0x30]
test rdx, rdx
je 0x14006b9e0
add rdx, 0x2d0
lea rcx, [r13 + 8]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14006b651
mov rdx, qword [rdx]
mov r8, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0x10
jb 0x14006b65f
mov rcx, qword [rcx]
cmp r8, rax
jne 0x14006b9e0
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14006b9e0
xor ecx, ecx
lea r8d, [rax + 1]
test byte [rdi + 0xc], 8
je 0x14006b6d3
mov edx, dword [rdi + 0x34]
add edx, 0x3d
call fcn.140013230
mov rbx, rax
mov rcx, qword [rax + 0x10]
mov dword [rcx], 4
mov rcx, qword [rax + 0x10]
movups xmm0, xmmword [rdi]
movups xmmword [rcx + 4], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rcx + 0x14], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rcx + 0x24], xmm0
movsd xmm1, qword [rdi + 0x30]
movsd qword [rcx + 0x34], xmm1
mov r8d, dword [rdi + 0x34]
mov rcx, qword [rax + 0x10]
add rcx, 0x3c
xor edx, edx
call sub.VCRUNTIME140.dll_memcpy
jmp 0x14006b70f
mov edx, 0x3d
call fcn.140013230
mov rbx, rax
mov rax, qword [rax + 0x10]
mov dword [rax], 4
mov rax, qword [rbx + 0x10]
movups xmm0, xmmword [rdi]
movups xmmword [rax + 4], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rax + 0x14], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rax + 0x24], xmm0
movsd xmm1, qword [rdi + 0x30]
movsd qword [rax + 0x34], xmm1
mov r8, rbx
xor edx, edx
mov rcx, r14
call fcn.1400134c0
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rsp + 0x88], xmm0
movzx edx, word [rsp + 0x590]
imul r8, rdx, 0x3b8
add r8, qword [0x140307de8]
mov eax, dword [r8 + 0x390]
cmp eax, 3
jne 0x14006b75a
mov eax, WSAStartup
jmp 0x14006b7c1
cmp byte [r8 + 0x142], 0
je 0x14006b781
mov rax, qword [rsp + 0x668]
sub rax, qword [rsp + 0x660]
sar rax, 5
lea eax, [rax*4 + 0xd3]
jmp 0x14006b7c1
cmp eax, 0xd
jne 0x14006b7bc
movzx eax, dx
sub ax, si
cmp ax, 4
ja 0x14006b79b
movzx eax, ax
bt r15d, eax
jb 0x14006b764
cmp dx, r12w
je 0x14006b764
mov rax, qword [r13 + 0xb8]
sub rax, qword [r13 + 0xb0]
sar rax, 5
lea eax, [rax*4 + 0xd3]
jmp 0x14006b7c1
mov eax, 0xd3
movsxd rbx, eax
mov rcx, rbx
call fcn.140222890
mov r15, rax
mov r8, rbx
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov dword [r15], 5
mov ecx, dword [rsp + 0x68]
mov dword [r15 + 4], ecx
mov dword [r15 + 0xc], 8
mov ecx, dword [rsp + 0x78]
mov dword [r15 + 0x14], ecx
mov ecx, dword [rsp + 0x88]
mov dword [r15 + 0x18], ecx
mov eax, dword [rsp + 0x8c]
mov dword [r15 + 0x1c], eax
mov eax, dword [rsp + 0x90]
mov dword [r15 + 0x20], eax
mov eax, dword [rsp + 0x94]
mov dword [r15 + 0x24], eax
mov eax, dword [rsp + 0x44]
mov dword [r15 + 0x2c], eax
mov eax, dword [rsp + 0x48]
mov dword [r15 + 0x30], eax
lea rax, [r15 + 0x38]
mov qword [rsp + 0x4f8], rax
lea rax, [rsp + 0x2b8]
mov qword [rsp + 0x58], rax
mov rdx, r13
lea rcx, [rsp + 0x2b8]
call fcn.140046420
mov rbx, rax
lea rdx, [rsp + 0x590]
lea rcx, [rsp + 0xc0]
call fcn.14006bbd0
nop
mov dword [rsp + 0x38], 0xffffffff
mov dword [rsp + 0x30], 0xffffffff
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9, r14
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x4f8]
call fcn.140068cb0
movzx edx, word [rsp + 0x590]
imul r8, rdx, 0x3b8
add r8, qword [0x140307de8]
mov eax, dword [r8 + 0x390]
cmp eax, 3
jne 0x14006b8d0
lea ecx, [rax + 0x6d]
jmp 0x14006b938
cmp byte [r8 + 0x142], 0
je 0x14006b8f7
mov rax, qword [rsp + 0x668]
sub rax, qword [rsp + 0x660]
sar rax, 5
lea ecx, [rax*4 + 0xd3]
jmp 0x14006b938
cmp eax, 0xd
jne 0x14006b933
movzx eax, dx
sub ax, si
cmp ax, 4
ja 0x14006b912
mov ecx, reloc.WS2_32.dll_setsockopt
bt ecx, eax
jb 0x14006b8da
cmp dx, r12w
je 0x14006b8da
mov rax, qword [r13 + 0xb8]
sub rax, qword [r13 + 0xb0]
sar rax, 5
lea ecx, [rax*4 + 0xd3]
jmp 0x14006b938
mov ecx, 0xd3
movsxd r12, ecx
mov r8d, 1
test byte [r15 + 0xc], 8
je 0x14006b98b
mov edx, dword [r15 + 0x34]
add ecx, 5
add edx, ecx
xor ecx, ecx
call fcn.140013230
mov rbx, rax
mov rcx, qword [rax + 0x10]
mov dword [rcx], 4
mov rcx, qword [rax + 0x10]
add rcx, 4
mov r8, r12
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
mov r8d, dword [r15 + 0x34]
mov rcx, qword [rbx + 0x10]
add rcx, 4
add rcx, r12
xor edx, edx
jmp 0x14006b9b3
lea eax, [rcx + 5]
movsxd rdx, eax
xor ecx, ecx
call fcn.140013230
mov rbx, rax
mov rax, qword [rax + 0x10]
mov dword [rax], 4
mov rcx, qword [rbx + 0x10]
add rcx, 4
mov r8, r12
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
mov r8, rbx
xor edx, edx
mov rcx, r14
call fcn.1400134c0
mov rcx, r15
call fcn.140222190
mov rbx, qword [0x1403076c0]
mov r12d, 0x1382
mov r15d, reloc.WS2_32.dll_setsockopt
add r14, 0x1c8
imul rax, qword [rbx + 0x30], 0x1c8
add rax, qword [rbx + 0x28]
cmp r14, rax
jb 0x14006b620
xor esi, esi
mov rcx, rdi
call fcn.140222190
nop
mov rcx, qword [rsp + 0x558]
test rcx, rcx
je 0x14006ba6c
mov rax, qword [rsp + 0x568]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006ba53
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14006ba53
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140222190
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x558], xmm0
mov qword [rsp + 0x568], rsi
lea rcx, [rsp + 0x540]
call fcn.1401f6bb0
nop
lea rcx, [rsp + 0x570]
call fcn.1401fcf40
nop
lea rcx, [rsp + 0x750]
call fcn.1401fdef0
lea rcx, [rsp + 0x730]
call fcn.1401fdef0
lea rcx, [rsp + 0x6f0]
call fcn.1401fce80
lea rcx, [rsp + 0x6c0]
call fcn.1401f6bb0
lea rcx, [rsp + 0x698]
call fcn.1401fdef0
lea rcx, [rsp + 0x678]
call fcn.1401fdef0
lea rcx, [rsp + 0x660]
call fcn.1401fa820
lea rcx, [rsp + 0x610]
call fcn.1401fdef0
lea rcx, [rsp + 0x5f0]
call fcn.1401fdef0
lea rcx, [rsp + 0x5d0]
call fcn.1401fdef0
nop
mov rbx, qword [rsp + 0xb8]
lea rcx, [rbx + 0x1c0]
call fcn.1401fdef0
lea rcx, [rbx + 0x1a0]
call fcn.1401fdef0
lea rcx, [rbx + 0x160]
call fcn.1401fce80
lea rcx, [rbx + 0x130]
call fcn.1401f6bb0
lea rcx, [rbx + 0x108]
call fcn.1401fdef0
lea rcx, [rbx + 0xe8]
call fcn.1401fdef0
lea rcx, [rbx + 0xd0]
call fcn.1401fa820
lea rcx, [rbx + 0x80]
call fcn.1401fdef0
lea rcx, [rbx + 0x60]
call fcn.1401fdef0
lea rcx, [rbx + 0x40]
call fcn.1401fdef0
nop
mov rcx, r13
call fcn.140040250
mov rcx, qword [rsp + 0x790]
xor rcx, rsp
call fcn.140222170
add rsp, 0x7a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
call fcn.1401fcde0
nop
call fcn.1401fcde0
call fcn.1401fcde0
call fcn.1401fcde0
nop
call fcn.1401f5d80
int3