Function at 0x1400f9110
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by fnv-1a hash
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1d8]
sub rsp, 0x2b0
mov rax, qword [0x1403111c0]
xor rax, rsp
mov qword [rbp + 0x1a0], rax
xor edx, edx
lea rcx, [rbp - 0x70]
mov r8d, 0x20a
call sub.VCRUNTIME140.dll_memset
mov r9, qword [0x140314a00]
xor r15d, r15d
test r9, r9
jne 0x1400f92ca
mov rax, qword gs:[0x60]
mov ebx, r15d
mov edi, 0xa3fbd5fb
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r14, qword [rax]
mov r8, r14
movups xmm0, xmmword [r8 + 0x58]
movd eax, xmm0
sub ax, 8
test ebx, ebx
je 0x1400f91d2
psrldq xmm0, 8
mov edx, 0x811c9dc5
movzx eax, ax
movq rcx, xmm0
shr rax, 1
lea r9, [rcx + rax*2]
jmp 0x1400f91c5
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r9
jne 0x1400f91b6
cmp edx, ebx
jne 0x1400f92ab
mov r10, qword [r8 + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov rax, qword [rax + r10 + 0x88]
mov r11d, eax
add r11, r10
shr rax, 0x20
cmp r11, r10
je 0x1400f92ab
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x1400f92ab
mov r12d, dword [r11 + 0x20]
dec r9d
mov esi, 0x811c9dc5
lea rcx, [r12 + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
jmp 0x1400f9226
movsx ecx, cl
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x1400f921b
cmp esi, edi
je 0x1400f923d
xor r15d, r15d
test r9d, r9d
jne 0x1400f9206
jmp 0x1400f92ab
mov edx, dword [r11 + 0x24]
add rdx, r10
movzx r8d, word [rdx + r9*2]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov r9d, dword [rdx + r8*4]
add r9, r10
cmp r9, r11
jbe 0x1400f9338
lea rcx, [rax + r11]
cmp r9, rcx
jae 0x1400f9338
mov ebx, 0x811c9dc5
mov edi, ebx
jmp 0x1400f9284
movsx eax, al
xor eax, ebx
imul ebx, eax, 0x1000193
inc r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x1400f9276
inc r9
xor r15d, r15d
jmp 0x1400f92a1
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
inc r9
mov al, byte [r9]
test al, al
jne 0x1400f9293
mov r8, qword [r14]
mov rax, qword [r8]
mov r8, rax
cmp rax, r14
je 0x1400f92c0
cmp qword [rax + 0x30], r15
jne 0x1400f918a
mov r9, r15
mov qword [0x140314a00], r9
mov r8d, 0x104
lea rdx, [rbp - 0x70]
xor ecx, ecx
call r9
mov r10, qword [0x1403149f8]
mov edi, 0xafcab3c4
mov dword [rsp + 0x50], edi
test r10, r10
jne 0x1400f9451
mov rax, qword gs:[0x60]
mov ebx, r15d
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r14, qword [rax]
mov r8, r14
movups xmm0, xmmword [r8 + 0x58]
movd eax, xmm0
sub ax, 8
test ebx, ebx
je 0x1400f9359
psrldq xmm0, 8
mov edx, 0x811c9dc5
movzx eax, ax
movq rcx, xmm0
shr rax, 1
lea r9, [rcx + rax*2]
jmp 0x1400f934c
xor r15d, r15d
jmp 0x1400f92c3
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r9
jne 0x1400f933d
cmp edx, ebx
jne 0x1400f9432
mov r9, qword [r8 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r11d, eax
add r11, r9
shr rax, 0x20
cmp r11, r9
je 0x1400f9432
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x1400f9432
mov r12d, dword [r11 + 0x20]
dec r10d
mov esi, 0x811c9dc5
lea rcx, [r12 + r10*4]
mov edx, dword [rcx + r9]
add rdx, r9
jmp 0x1400f93ad
movsx ecx, cl
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x1400f93a2
cmp esi, edi
je 0x1400f93c4
xor r15d, r15d
test r10d, r10d
jne 0x1400f938d
jmp 0x1400f9432
mov edx, dword [r11 + 0x24]
add rdx, r9
movzx r8d, word [rdx + r10*2]
mov edx, dword [r11 + 0x1c]
add rdx, r9
mov r10d, dword [rdx + r8*4]
add r10, r9
cmp r10, r11
jbe 0x1400f9572
lea rcx, [rax + r11]
cmp r10, rcx
jae 0x1400f9572
mov ebx, 0x811c9dc5
mov edi, ebx
jmp 0x1400f940b
movsx eax, al
xor eax, ebx
imul ebx, eax, 0x1000193
inc r10
mov al, byte [r10]
cmp al, 0x2e
jne 0x1400f93fd
inc r10
xor r15d, r15d
jmp 0x1400f9428
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
inc r10
mov al, byte [r10]
test al, al
jne 0x1400f941a
mov r8, qword [r14]
mov rax, qword [r8]
mov r8, rax
cmp rax, r14
je 0x1400f9447
cmp qword [rax + 0x30], r15
jne 0x1400f930c
mov r10, r15
mov qword [0x1403149f8], r10
mov qword [rsp + 0x30], r15
lea rcx, [rbp - 0x70]
mov dword [rsp + 0x28], 0x80
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], 3
mov edx, 0x10000
call r10
mov r12, rax
mov qword [rbp - 0x80], rax
call fcn.1400753c4
movsx edi, al
call fcn.1400753c0
movsx esi, al
mov r9d, esi
imul r9d, edi
call fcn.1400753d0
movsx r10d, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400f9785
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
cmp r12, 0xffffffffffffffff
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
mov rax, r15
sete al
imul ebx, r9d, 7
cvtdq2pd xmm0, xmm0
xor edx, edx
add ebx, r10d
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, ebx
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400f957a
call fcn.1400753c8
movsx edx, al
movsx eax, byte [0x1403122a0]
imul edx, eax
add edx, edx
call fcn.1400753d4
movsx ecx, al
sub edx, ecx
call fcn.1400753cc
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x1400f957a
mov r11d, 1
jmp 0x1400f95ef
xor r15d, r15d
jmp 0x1400f944a
movsx r8d, byte [reloc.WS2_32.dll_htons]
lea ecx, [r9 + r10]
lea eax, [rcx + r9*8]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400f95ea
movsx r8d, byte [reloc.WS2_32.dll_htons]
lea ecx, [r9 + r10]
lea eax, [rcx + r9*2]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
xorps xmm0, xmm0
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r11d, xmm0
jmp 0x1400f95ef
mov r11d, dword [rsp + 0x40]
movsx r8d, byte [reloc.WS2_32.dll_htons]
lea ecx, [r9 + r10]
lea eax, [rcx + r9*4]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
imul r8d, r11d
test r8d, r8d
je 0x1400f9785
movsx eax, byte [reloc.WS2_32.dll_htons]
lea edx, [r9 + r9*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm2, xmm2
lea eax, [rax + rdx*2]
xor edx, edx
div ecx
xor edx, edx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm2, rax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, ebx
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400f96e5
call fcn.1400753c8
movsx edx, al
movsx eax, byte [0x1403122a0]
imul edx, eax
add edx, edx
call fcn.1400753d4
movsx ecx, al
sub edx, ecx
call fcn.1400753cc
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
jne 0x1400fafb3
call fcn.1400753d0
movsx r8d, al
xor edx, edx
mov ecx, edi
imul ecx, esi
lea eax, [rcx + rcx*8]
add r8d, eax
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400f9778
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*2]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
xorps xmm0, xmm0
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
jmp 0x1400f977c
mov eax, dword [rsp + 0x40]
cmp r15d, eax
jl 0x1400fafb3
xor eax, eax
mov dword [rsp + 0x60], 0x43074d02
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x64], 0x47de41d4
mov dword [rsp + 0x68], 0xbb2c45e1
mov dword [rsp + 0x6c], 0xbfecb919
mov dword [rsp + 0x70], 0xb320bd19
mov dword [rsp + 0x74], 0xb7b6b117
mov qword [rsp + 0x40], r15
jmp 0x1400f97fe
mov rdx, qword [rsp + 0x40]
mov ecx, reloc.WLDAP32.dll_Ordinal_35
mov rax, qword [rsp + 0x40]
sub dl, 0xa
mov r8b, byte [rsp + rax + 0x60]
mov al, dl
and al, r8b
sub cl, al
mov rax, qword [rsp + 0x40]
add cl, cl
add cl, dl
add cl, r8b
mov byte [rsp + rax + 0x60], cl
mov rax, qword [rsp + 0x40]
inc rax
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
cmp rax, 0x20
jb 0x1400f97c3
lea rax, [rsp + 0x60]
or r14, 0xffffffffffffffff
inc r14
cmp word [rax + r14*2], r15w
jne 0x1400f9812
add r14d, r14d
lea edi, [r14 + 0x18]
mov ecx, edi
mov dword [rsp + 0x40], edi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r13, rax
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*2]
call fcn.1400753d0
movsx ecx, al
mov r11d, 0xfaba0065
movsx eax, byte [reloc.WS2_32.dll_htons]
mov dword [rsp + 0x54], r11d
lea r8d, [rcx + rdx*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400f9d54
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
test r13, r13
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
mov rax, r15
cvtdq2pd xmm0, xmm0
sete al
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
imul r10d, edx, 7
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r10d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400f994c
call fcn.1400753c8
movsx edx, al
movsx eax, byte [0x1403122a0]
imul edx, eax
add edx, edx
call fcn.1400753d4
movsx ecx, al
sub edx, ecx
call fcn.1400753cc
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x1400f994c
mov r9d, 1
jmp 0x1400f99f3
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*8]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400f99ee
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*2]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
xorps xmm0, xmm0
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r9d, xmm0
jmp 0x1400f99f3
mov r9d, dword [rsp + 0x40]
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
imul r8d, r9d
test r8d, r8d
je 0x1400f9d54
mov rdx, qword [0x140314a18]
test rdx, rdx
jne 0x1400f9ba0
mov rax, qword gs:[0x60]
mov edi, r15d
mov esi, r11d
xor r8d, r8d
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r15, qword [rax]
mov rbx, r15
movups xmm0, xmmword [rbx + 0x58]
movd eax, xmm0
sub ax, 8
test edi, edi
je 0x1400f9a9c
psrldq xmm0, 8
mov edx, 0x811c9dc5
movzx eax, ax
movq rcx, xmm0
shr rax, 1
lea r8, [rcx + rax*2]
jmp 0x1400f9a8c
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x1400f9a7d
xor r8d, r8d
cmp edx, edi
jne 0x1400f9b76
mov r10, qword [rbx + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov rax, qword [rax + r10 + 0x88]
mov r11d, eax
add r11, r10
shr rax, 0x20
cmp r11, r10
je 0x1400f9b76
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x1400f9b76
mov r12d, dword [r11 + 0x20]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + r12]
mov edx, 0x811c9dc5
add r8, r10
jmp 0x1400f9af0
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
mov cl, byte [r8]
inc r8
test cl, cl
jne 0x1400f9ae5
cmp edx, esi
je 0x1400f9b08
xor r8d, r8d
test r9d, r9d
jne 0x1400f9ad0
jmp 0x1400f9b76
mov edx, dword [r11 + 0x24]
add rdx, r10
movzx r9d, word [rdx + r9*2]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov edx, dword [rdx + r9*4]
add rdx, r10
cmp rdx, r11
jbe 0x1400f9d3f
lea rcx, [r11 + rax]
cmp rdx, rcx
jae 0x1400f9d3f
mov eax, 0x811c9dc5
mov edi, eax
mov esi, eax
jmp 0x1400f9b51
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
inc rdx
mov al, byte [rdx]
cmp al, 0x2e
jne 0x1400f9b43
inc rdx
xor r8d, r8d
jmp 0x1400f9b6d
movsx eax, al
xor eax, esi
imul esi, eax, 0x1000193
inc rdx
mov al, byte [rdx]
test al, al
jne 0x1400f9b5f
mov rbx, qword [r15]
mov rax, qword [rbx]
mov rbx, rax
cmp rax, r15
je 0x1400f9b8b
cmp qword [rax + 0x30], r8
jne 0x1400f9a52
xor r15d, r15d
mov edx, r15d
mov edi, dword [rsp + 0x40]
mov r12, qword [rbp - 0x80]
mov qword [0x140314a18], rdx
mov rcx, r12
call rdx
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
call fcn.1400753d0
movsx ecx, al
xorps xmm2, xmm2
movsx eax, byte [reloc.WS2_32.dll_htons]
lea r8d, [rcx + rdx*8]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm2, rax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
imul r8d, edx, 7
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400f9c9e
call fcn.1400753c8
movsx edx, al
movsx eax, byte [0x1403122a0]
imul edx, eax
add edx, edx
call fcn.1400753d4
movsx ecx, al
sub edx, ecx
call fcn.1400753cc
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
jne 0x1400fafb3
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*8]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400f9d47
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*2]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
xorps xmm0, xmm0
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
jmp 0x1400f9d4b
xor r15d, r15d
jmp 0x1400f9b91
mov eax, dword [rsp + 0x40]
cmp r15d, eax
jl 0x1400fafb3
mov r8d, edi
xor edx, edx
mov rcx, r13
call sub.VCRUNTIME140.dll_memset
mov r9, qword [0x1403149f0]
mov dword [r13 + 0x10], r14d
test r9, r9
jne 0x1400f9ee7
mov rax, qword gs:[0x60]
mov edi, r15d
mov esi, 0xa45cec64
xor edx, edx
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r15, qword [rax]
mov rbx, r15
movups xmm0, xmmword [rbx + 0x58]
movd eax, xmm0
sub ax, 8
test edi, edi
je 0x1400f9ddf
psrldq xmm0, 8
mov edx, 0x811c9dc5
movzx eax, ax
movq rcx, xmm0
shr rax, 1
lea r8, [rcx + rax*2]
jmp 0x1400f9dd0
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x1400f9dc1
cmp edx, edi
jne 0x1400f9ebb
xor edx, edx
mov r10, qword [rbx + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov rax, qword [rax + r10 + 0x88]
mov r11d, eax
add r11, r10
shr rax, 0x20
cmp r11, r10
je 0x1400f9ebd
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x1400f9ebd
mov r12d, dword [r11 + 0x20]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + r12]
mov edx, 0x811c9dc5
add r8, r10
jmp 0x1400f9e33
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
mov cl, byte [r8]
inc r8
test cl, cl
jne 0x1400f9e28
cmp edx, esi
je 0x1400f9e4a
xor edx, edx
test r9d, r9d
jne 0x1400f9e13
jmp 0x1400f9ebd
mov edx, dword [r11 + 0x24]
add rdx, r10
movzx r9d, word [rdx + r9*2]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov r9d, dword [rdx + r9*4]
add r9, r10
cmp r9, r11
jbe 0x1400fa015
lea rcx, [rax + r11]
cmp r9, rcx
jae 0x1400fa015
mov eax, 0x811c9dc5
mov edi, eax
mov esi, eax
jmp 0x1400f9e93
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
inc r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x1400f9e85
inc r9
xor edx, edx
jmp 0x1400f9eaf
movsx eax, al
xor eax, esi
imul esi, eax, 0x1000193
inc r9
mov al, byte [r9]
test al, al
jne 0x1400f9ea1
mov rbx, qword [r15]
jmp 0x1400f9ebd
xor edx, edx
mov rax, qword [rbx]
mov rbx, rax
cmp rax, r15
je 0x1400f9ed2
cmp qword [rax + 0x30], rdx
jne 0x1400f9d96
xor r15d, r15d
mov r9d, r15d
mov edi, dword [rsp + 0x40]
mov r12, qword [rbp - 0x80]
mov qword [0x1403149f0], r9
mov r8d, r14d
lea rcx, [r13 + 0x14]
lea rdx, [rsp + 0x60]
call r9
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add ebx, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, ebx
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400fa41e
mov r9d, edi
mov r8, r13
mov edx, 3
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_SetFileInformationByHandle]
mov rcx, r15
xorps xmm2, xmm2
test eax, eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
sete cl
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
cvtsi2sd xmm2, rcx
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
imul r8d, edx, 7
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400fa01d
call fcn.1400753c8
movsx edx, al
movsx eax, byte [0x1403122a0]
imul edx, eax
add edx, edx
call fcn.1400753d4
movsx ecx, al
sub edx, ecx
call fcn.1400753cc
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x1400fa01d
mov r9d, 1
jmp 0x1400fa0a1
xor r15d, r15d
jmp 0x1400f9ed8
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*8]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400fa09c
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, ebx
div ecx
xorps xmm0, xmm0
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r9d, xmm0
jmp 0x1400fa0a1
mov r9d, dword [rsp + 0x40]
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
call fcn.1400753d0
movsx ecx, al
movsx eax, byte [reloc.WS2_32.dll_htons]
lea r8d, [rcx + rdx*4]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
imul r8d, r9d
test r8d, r8d
je 0x1400fa41e
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rdx, qword [0x140314a18]
test rdx, rdx
jne 0x1400fa267
mov rax, qword gs:[0x60]
mov edi, r15d
mov esi, 0xfaba0065
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r14, qword [rax]
mov rbx, r14
movups xmm0, xmmword [rbx + 0x58]
movd eax, xmm0
sub ax, 8
test edi, edi
je 0x1400fa16e
psrldq xmm0, 8
mov edx, 0x811c9dc5
movzx eax, ax
movq rcx, xmm0
shr rax, 1
lea r8, [rcx + rax*2]
jmp 0x1400fa161
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x1400fa152
cmp edx, edi
jne 0x1400fa248
mov r9, qword [rbx + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r10d, eax
add r10, r9
shr rax, 0x20
cmp r10, r9
je 0x1400fa248
mov r11d, dword [r10 + 0x18]
test r11d, r11d
je 0x1400fa248
mov r15d, dword [r10 + 0x20]
dec r11d
lea rdx, [r9 + r11*4]
mov r8d, dword [rdx + r15]
mov edx, 0x811c9dc5
add r8, r9
jmp 0x1400fa1c2
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
mov cl, byte [r8]
inc r8
test cl, cl
jne 0x1400fa1b7
cmp edx, esi
je 0x1400fa1da
test r11d, r11d
jne 0x1400fa1a2
xor r15d, r15d
jmp 0x1400fa248
mov ecx, dword [r10 + 0x24]
mov edx, dword [r10 + 0x1c]
add rcx, r9
add rdx, r9
movzx r8d, word [rcx + r11*2]
mov edx, dword [rdx + r8*4]
add rdx, r9
cmp rdx, r10
jbe 0x1400fa409
lea rcx, [r10 + rax]
cmp rdx, rcx
jae 0x1400fa409
mov eax, 0x811c9dc5
mov edi, eax
mov esi, eax
jmp 0x1400fa223
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
inc rdx
mov al, byte [rdx]
cmp al, 0x2e
jne 0x1400fa215
inc rdx
xor r15d, r15d
jmp 0x1400fa23f
movsx eax, al
xor eax, esi
imul esi, eax, 0x1000193
inc rdx
mov al, byte [rdx]
test al, al
jne 0x1400fa231
mov rbx, qword [r14]
mov rax, qword [rbx]
mov rbx, rax
cmp rax, r14
je 0x1400fa25d
cmp qword [rax + 0x30], r15
jne 0x1400fa127
mov rdx, r15
mov qword [0x140314a18], rdx
mov rcx, r12
call rdx
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*4]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
xorps xmm2, xmm2
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm2, rax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
imul r8d, edx, 7
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400fa368
call fcn.1400753c8
movsx edx, al
movsx eax, byte [0x1403122a0]
imul edx, eax
add edx, edx
call fcn.1400753d4
movsx ecx, al
sub edx, ecx
call fcn.1400753cc
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
jne 0x1400fafb3
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*8]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400fa411
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*2]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
xorps xmm0, xmm0
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
jmp 0x1400fa415
xor r15d, r15d
jmp 0x1400fa260
mov eax, dword [rsp + 0x40]
cmp r15d, eax
jl 0x1400fafb3
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rdx, qword [0x140314a18]
test rdx, rdx
jne 0x1400fa594
mov rax, qword gs:[0x60]
mov edi, r15d
mov esi, 0xfaba0065
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r14, qword [rax]
mov r11, r14
movups xmm0, xmmword [r11 + 0x58]
movd eax, xmm0
sub ax, 8
test edi, edi
je 0x1400fa49e
psrldq xmm0, 8
mov edx, 0x811c9dc5
movzx eax, ax
movq rcx, xmm0
shr rax, 1
lea r8, [rcx + rax*2]
jmp 0x1400fa491
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x1400fa482
cmp edx, edi
jne 0x1400fa575
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r10d, eax
add r10, r9
shr rax, 0x20
cmp r10, r9
je 0x1400fa575
mov ebx, dword [r10 + 0x18]
test ebx, ebx
je 0x1400fa575
mov r15d, dword [r10 + 0x20]
dec ebx
lea rdx, [r15 + rbx*4]
mov r8d, dword [rdx + r9]
mov edx, 0x811c9dc5
add r8, r9
jmp 0x1400fa4f0
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
mov cl, byte [r8]
inc r8
test cl, cl
jne 0x1400fa4e5
cmp edx, esi
je 0x1400fa507
test ebx, ebx
jne 0x1400fa4d1
xor r15d, r15d
jmp 0x1400fa575
mov ecx, dword [r10 + 0x24]
mov edx, dword [r10 + 0x1c]
add rcx, r9
add rdx, r9
movzx r8d, word [rcx + rbx*2]
mov edx, dword [rdx + r8*4]
add rdx, r9
cmp rdx, r10
jbe 0x1400fa5f3
lea rcx, [r10 + rax]
cmp rdx, rcx
jae 0x1400fa5f3
mov eax, 0x811c9dc5
mov edi, eax
mov esi, eax
jmp 0x1400fa550
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
inc rdx
mov al, byte [rdx]
cmp al, 0x2e
jne 0x1400fa542
inc rdx
xor r15d, r15d
jmp 0x1400fa56c
movsx eax, al
xor eax, esi
imul esi, eax, 0x1000193
inc rdx
mov al, byte [rdx]
test al, al
jne 0x1400fa55e
mov r11, qword [r14]
mov rax, qword [r11]
mov r11, rax
cmp rax, r14
je 0x1400fa58a
cmp qword [rax + 0x30], r15
jne 0x1400fa456
mov rdx, r15
mov qword [0x140314a18], rdx
mov rcx, r12
call rdx
mov r10, qword [0x1403149f8]
test r10, r10
jne 0x1400fa708
mov rax, qword gs:[0x60]
mov edi, r15d
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov r10, rsi
movups xmm0, xmmword [r10 + 0x58]
mov r12d, 0x811c9dc5
movd eax, xmm0
sub ax, 8
test edi, edi
je 0x1400fa614
psrldq xmm0, 8
mov edx, r12d
movzx eax, ax
movq rcx, xmm0
shr rax, 1
lea r8, [rcx + rax*2]
jmp 0x1400fa607
xor r15d, r15d
jmp 0x1400fa58d
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x1400fa5f8
cmp edx, edi
jne 0x1400fa6e9
mov r9, qword [r10 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r11d, eax
add r11, r9
shr rax, 0x20
cmp r11, r9
je 0x1400fa6e9
mov ebx, dword [r11 + 0x18]
test ebx, ebx
je 0x1400fa6e9
mov r14d, dword [r11 + 0x20]
dec ebx
lea rdx, [r14 + rbx*4]
mov r8d, dword [rdx + r9]
mov edx, r12d
add r8, r9
jmp 0x1400fa664
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
mov cl, byte [r8]
inc r8
test cl, cl
jne 0x1400fa659
cmp edx, dword [rsp + 0x50]
je 0x1400fa67a
test ebx, ebx
jne 0x1400fa647
jmp 0x1400fa6e9
mov ecx, dword [r11 + 0x24]
mov edx, dword [r11 + 0x1c]
add rcx, r9
add rdx, r9
movzx r8d, word [rcx + rbx*2]
mov r10d, dword [rdx + r8*4]
add r10, r9
cmp r10, r11
jbe 0x1400fa701
lea rcx, [r11 + rax]
cmp r10, rcx
jae 0x1400fa701
mov ecx, r12d
mov edi, r12d
mov dword [rsp + 0x50], ecx
jmp 0x1400fa6bc
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
inc r10
mov al, byte [r10]
cmp al, 0x2e
jne 0x1400fa6ae
inc r10
mov al, byte [r10]
test al, al
je 0x1400fa6e6
movsx eax, al
inc r10
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [r10]
test al, al
jne 0x1400fa6cd
mov dword [rsp + 0x50], ecx
mov r10, qword [rsi]
mov rax, qword [r10]
mov r10, rax
cmp rax, rsi
je 0x1400fa6fe
cmp qword [rax + 0x30], r15
jne 0x1400fa5c3
mov r10, r15
mov qword [0x1403149f8], r10
mov qword [rsp + 0x30], r15
lea rcx, [rbp - 0x70]
mov dword [rsp + 0x28], 0x80
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], 3
mov edx, 0x10000
call r10
mov r12, rax
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*4]
call fcn.1400753d0
movsx ecx, al
movsx eax, byte [reloc.WS2_32.dll_htons]
lea r8d, [rcx + rdx*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400faabd
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
cmp r12, 0xffffffffffffffff
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
mov rax, r15
cvtdq2pd xmm0, xmm0
sete al
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
imul r10d, edx, 7
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r10d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400fa842
call fcn.1400753c8
movsx edx, al
movsx eax, byte [0x1403122a0]
imul edx, eax
add edx, edx
call fcn.1400753d4
movsx ecx, al
sub edx, ecx
call fcn.1400753cc
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x1400fa842
mov r9d, 1
jmp 0x1400fa8e9
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*8]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400fa8e4
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*2]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
xorps xmm0, xmm0
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r9d, xmm0
jmp 0x1400fa8e9
mov r9d, dword [rsp + 0x40]
call fcn.1400753c4
movsx r8d, al
call fcn.1400753c0
movsx ecx, al
imul r8d, ecx
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
imul r8d, r9d
test r8d, r8d
je 0x1400faabd
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
call fcn.1400753d0
movsx ecx, al
xorps xmm2, xmm2
movsx eax, byte [reloc.WS2_32.dll_htons]
lea r8d, [rcx + rdx*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
xor edx, edx
div ecx
xor edx, edx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm2, rax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400faa0f
call fcn.1400753c8
movsx edx, al
movsx eax, byte [0x1403122a0]
imul edx, eax
add edx, edx
call fcn.1400753d4
movsx ecx, al
sub edx, ecx
call fcn.1400753cc
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
jne 0x1400fafb3
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*8]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400faab0
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*2]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
xorps xmm0, xmm0
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
jmp 0x1400faab4
mov eax, dword [rsp + 0x40]
cmp r15d, eax
jl 0x1400fafb3
mov byte [rbp - 0x78], 1
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
imul ebx, edx, 7
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add ebx, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, ebx
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400fafba
mov r9d, 1
lea r8, [rbp - 0x78]
mov rcx, r12
lea edx, [r9 + 3]
call qword [sym.imp.KERNEL32.dll_SetFileInformationByHandle]
mov rcx, r15
xorps xmm2, xmm2
test eax, eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
sete cl
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtsi2sd xmm2, rcx
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, ebx
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400fabc0
call fcn.1400753c8
movsx edx, al
movsx eax, byte [0x1403122a0]
imul edx, eax
add edx, edx
call fcn.1400753d4
movsx ecx, al
sub edx, ecx
call fcn.1400753cc
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x1400fabc0
mov r9d, 1
jmp 0x1400fac67
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*8]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400fac62
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*2]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
xorps xmm0, xmm0
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r9d, xmm0
jmp 0x1400fac67
mov r9d, dword [rsp + 0x40]
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
call fcn.1400753d0
movsx ecx, al
movsx eax, byte [reloc.WS2_32.dll_htons]
lea r8d, [rcx + rdx*8]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
imul r8d, r9d
test r8d, r8d
je 0x1400fafba
mov rdx, qword [0x140314a18]
test rdx, rdx
jne 0x1400fae22
mov rax, qword gs:[0x60]
mov edi, r15d
mov esi, 0xfaba0065
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r14, qword [rax]
mov r11, r14
movups xmm0, xmmword [r11 + 0x58]
movd eax, xmm0
sub ax, 8
test edi, edi
je 0x1400fad2c
psrldq xmm0, 8
mov edx, 0x811c9dc5
movzx eax, ax
movq rcx, xmm0
shr rax, 1
lea r8, [rcx + rax*2]
jmp 0x1400fad1f
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x1400fad10
cmp edx, edi
jne 0x1400fae03
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r10d, eax
add r10, r9
shr rax, 0x20
cmp r10, r9
je 0x1400fae03
mov ebx, dword [r10 + 0x18]
test ebx, ebx
je 0x1400fae03
mov r15d, dword [r10 + 0x20]
dec ebx
lea rdx, [r15 + rbx*4]
mov r8d, dword [rdx + r9]
mov edx, 0x811c9dc5
add r8, r9
jmp 0x1400fad7e
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
mov cl, byte [r8]
inc r8
test cl, cl
jne 0x1400fad73
cmp edx, esi
je 0x1400fad95
test ebx, ebx
jne 0x1400fad5f
xor r15d, r15d
jmp 0x1400fae03
mov ecx, dword [r10 + 0x24]
mov edx, dword [r10 + 0x1c]
add rcx, r9
add rdx, r9
movzx r8d, word [rcx + rbx*2]
mov edx, dword [rdx + r8*4]
add rdx, r9
cmp rdx, r10
jbe 0x1400fafa2
lea rcx, [r10 + rax]
cmp rdx, rcx
jae 0x1400fafa2
mov eax, 0x811c9dc5
mov edi, eax
mov esi, eax
jmp 0x1400fadde
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
inc rdx
mov al, byte [rdx]
cmp al, 0x2e
jne 0x1400fadd0
inc rdx
xor r15d, r15d
jmp 0x1400fadfa
movsx eax, al
xor eax, esi
imul esi, eax, 0x1000193
inc rdx
mov al, byte [rdx]
test al, al
jne 0x1400fadec
mov r11, qword [r14]
mov rax, qword [r11]
mov r11, rax
cmp rax, r14
je 0x1400fae18
cmp qword [rax + 0x30], r15
jne 0x1400face4
mov rdx, r15
mov qword [0x140314a18], rdx
mov rcx, r12
call rdx
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*8]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r9d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r9d
div ecx
xorps xmm2, xmm2
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm2, rax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
imul r8d, edx, 7
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400faf23
call fcn.1400753c8
movsx edx, al
movsx eax, byte [0x1403122a0]
imul edx, eax
add edx, edx
call fcn.1400753d4
movsx ecx, al
sub edx, ecx
call fcn.1400753cc
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
jne 0x1400fafb3
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r9d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400fafaa
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*2]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
xorps xmm0, xmm0
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
jmp 0x1400fafae
xor r15d, r15d
jmp 0x1400fae1b
mov eax, dword [rsp + 0x40]
cmp r15d, eax
jge 0x1400fafba
xor al, al
jmp 0x1400fb2ac
mov rdx, qword [0x140314a18]
test rdx, rdx
jne 0x1400fb121
mov rax, qword gs:[0x60]
mov edi, r15d
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov r11, rsi
movups xmm0, xmmword [r11 + 0x58]
mov r13d, 0x811c9dc5
movd eax, xmm0
sub ax, 8
test edi, edi
je 0x1400fb030
psrldq xmm0, 8
mov edx, r13d
movzx eax, ax
movq rcx, xmm0
shr rax, 1
lea r8, [rcx + rax*2]
jmp 0x1400fb023
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x1400fb014
cmp edx, edi
jne 0x1400fb102
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r10d, eax
add r10, r9
shr rax, 0x20
cmp r10, r9
je 0x1400fb102
mov ebx, dword [r10 + 0x18]
test ebx, ebx
je 0x1400fb102
mov r14d, dword [r10 + 0x20]
dec ebx
lea rdx, [r9 + rbx*4]
mov r8d, dword [rdx + r14]
mov edx, r13d
add r8, r9
jmp 0x1400fb080
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
mov cl, byte [r8]
inc r8
test cl, cl
jne 0x1400fb075
cmp edx, dword [rsp + 0x54]
je 0x1400fb096
test ebx, ebx
jne 0x1400fb063
jmp 0x1400fb102
mov ecx, dword [r10 + 0x24]
mov edx, dword [r10 + 0x1c]
add rcx, r9
add rdx, r9
movzx r8d, word [rcx + rbx*2]
mov edx, dword [rdx + r8*4]
add rdx, r9
cmp rdx, r10
jbe 0x1400fb11a
lea rcx, [rax + r10]
cmp rdx, rcx
jae 0x1400fb11a
mov ecx, r13d
mov edi, r13d
mov dword [rsp + 0x54], ecx
jmp 0x1400fb0d8
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
inc rdx
mov al, byte [rdx]
cmp al, 0x2e
jne 0x1400fb0ca
inc rdx
mov al, byte [rdx]
test al, al
je 0x1400fb0ff
movsx eax, al
inc rdx
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [rdx]
test al, al
jne 0x1400fb0e7
mov dword [rsp + 0x54], ecx
mov r11, qword [rsi]
mov rax, qword [r11]
mov r11, rax
cmp rax, rsi
je 0x1400fb117
cmp qword [rax + 0x30], r15
jne 0x1400fafe4
mov rdx, r15
mov qword [0x140314a18], rdx
mov rcx, r12
call rdx
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*8]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r9d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r9d
div ecx
xorps xmm2, xmm2
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm2, rax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
imul r8d, edx, 7
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400fb222
call fcn.1400753c8
movsx edx, al
movsx eax, byte [0x1403122a0]
imul edx, eax
add edx, edx
call fcn.1400753d4
movsx ecx, al
sub edx, ecx
call fcn.1400753cc
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
jne 0x1400fb2aa
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r9d
div ecx
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
cmp r8d, eax
je 0x1400fb2a1
call fcn.1400753c4
movsx edx, al
call fcn.1400753c0
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*2]
call fcn.1400753d0
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r8d
div ecx
xorps xmm0, xmm0
mov r8d, eax
movsx eax, byte [reloc.WS2_32.dll_accept]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
jmp 0x1400fb2a5
mov eax, dword [rsp + 0x40]
cmp r15d, eax
jge 0x1400fb2ac
mov al, 1
mov rcx, qword [rbp + 0x1a0]
xor rcx, rsp
call fcn.140180200
lea r11, [rsp + 0x2b0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret