Function at 0x14004df84
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x90
mov qword [rbp - 9], rdx
mov qword [rbp - 0x39], rcx
xorps xmm0, xmm0
movups xmmword [rbp + 0xf], xmm0
lea rcx, [rbp + 0x5f]
movabs rdx, 0xff00ff00ff00ff07
mov qword [rbp + 0x17], rdx
mov qword [rbp + 0x1f], rcx
mov rax, qword [rcx]
xor rax, rdx
mov qword [rbp + 0xf], rax
xor r14d, r14d
mov qword [rcx], r14
mov byte [rbp - 0x45], r14b
lea rdx, [rbp - 1]
lea rcx, [rbp - 0x45]
call fcn.140085364
mov r9, rax
lea ebx, [r14 + 0xa]
cmp byte [rax], r14b
jne 0x14004ea3d
mov dword [rbp - 0x49], r14d
mov ecx, dword [rbp - 0x49]
call fcn.1400a4578
movsx r11d, al
call fcn.1400a4574
movsx ecx, al
imul r11d, ecx
call fcn.1400a4584
movsx r10d, al
lea eax, [r10 + r11*8]
add eax, r11d
mov dword [rbp - 0x31], eax
call fcn.1400a457c
movsx edi, al
call fcn.1400a4588
movsx esi, al
call fcn.1400a4580
movsx r14d, al
movsd xmm3, qword [0x14015cdf0]
mov r13d, dword [rbp - 0x31]
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*2]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004e22d
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm3
movsd qword [rbp - 0x41], xmm1
lea eax, [r11 + r11*2]
lea r12d, [rax + rax]
lea r15d, [r12 + r10]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e0e8
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004e0e8
mov dword [rbp - 0x2d], ebx
jmp 0x14004e13e
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e13e
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x41]
cvttsd2si eax, xmm0
mov dword [rbp - 0x2d], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm3
movsd qword [rbp - 0x41], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e1af
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004e1af
mov r13d, ebx
jmp 0x14004e206
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e206
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
add eax, r10d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x41]
cvttsd2si r13d, xmm0
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [r9 + rax*4 + 4]
and r8d, r13d
add r8d, r8d
movsxd rax, dword [rbp - 0x49]
mov edx, dword [r9 + rax*4 + 4]
sub edx, r8d
add edx, dword [rbp - 0x2d]
movsxd rax, dword [rbp - 0x49]
mov dword [r9 + rax*4 + 4], edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, dword [rbp - 0x31]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e836
movsx edx, byte [0x14022ead4]
imul edx, edi
shl edx, 3
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004e43f
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x14015cde8]
movsd qword [rbp - 0x41], xmm1
lea eax, [r11 + r11*2]
lea r12d, [rax + rax]
lea r15d, [r12 + r10]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e2f3
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004e2f3
mov dword [rbp - 0x25], ebx
jmp 0x14004e349
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e349
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x41]
cvttsd2si eax, xmm0
mov dword [rbp - 0x25], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x14015cde8]
movsd qword [rbp - 0x41], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e3be
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004e3be
mov dword [rbp - 0x29], ebx
jmp 0x14004e417
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e417
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
add eax, r10d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x41]
cvttsd2si eax, xmm0
mov dword [rbp - 0x29], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [r9 + rax*4 + 4]
and r8d, dword [rbp - 0x29]
add r8d, r8d
movsxd rax, dword [rbp - 0x49]
mov edx, dword [r9 + rax*4 + 4]
sub edx, r8d
add edx, dword [rbp - 0x25]
movsxd rax, dword [rbp - 0x49]
mov dword [r9 + rax*4 + 4], edx
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*2]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004e62d
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x14015cde0]
movsd qword [rbp - 0x41], xmm1
lea eax, [r11 + r11*2]
lea r12d, [rax + rax]
lea r15d, [r12 + r10]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e4e1
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004e4e1
mov dword [rbp - 0x1d], ebx
jmp 0x14004e537
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e537
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x41]
cvttsd2si eax, xmm0
mov dword [rbp - 0x1d], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x14015cde0]
movsd qword [rbp - 0x41], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e5ac
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004e5ac
mov dword [rbp - 0x21], ebx
jmp 0x14004e605
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e605
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
add eax, r10d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x41]
cvttsd2si eax, xmm0
mov dword [rbp - 0x21], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [r9 + rax*4 + 4]
and r8d, dword [rbp - 0x21]
add r8d, r8d
movsxd rax, dword [rbp - 0x49]
mov edx, dword [r9 + rax*4 + 4]
sub edx, r8d
add edx, dword [rbp - 0x1d]
movsxd rax, dword [rbp - 0x49]
mov dword [r9 + rax*4 + 4], edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*4]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e836
mov eax, dword [rbp - 0x49]
sub eax, 0x5b
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp - 0x41], xmm1
lea eax, [r11 + r11*2]
lea r12d, [rax + rax]
lea r15d, [r12 + r10]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e6e0
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004e6e0
mov dword [rbp - 0x15], ebx
jmp 0x14004e736
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e736
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x41]
cvttsd2si eax, xmm0
mov dword [rbp - 0x15], eax
mov eax, dword [rbp - 0x49]
sub eax, 0x5b
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp - 0x41], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e7b5
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004e7b5
mov dword [rbp - 0x19], ebx
jmp 0x14004e80e
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e80e
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
add eax, r10d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x41]
cvttsd2si eax, xmm0
mov dword [rbp - 0x19], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [r9 + rax*4 + 4]
and r8d, dword [rbp - 0x19]
add r8d, r8d
movsxd rax, dword [rbp - 0x49]
mov edx, dword [r9 + rax*4 + 4]
sub edx, r8d
add edx, dword [rbp - 0x15]
movsxd rax, dword [rbp - 0x49]
mov dword [r9 + rax*4 + 4], edx
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
add edx, edx
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004ea26
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x14015cdd8]
movsd qword [rbp - 0x41], xmm1
lea eax, [r11 + r11*2]
lea r12d, [rax + rax]
lea r15d, [r12 + r10]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e8da
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004e8da
mov dword [rbp - 0xd], ebx
jmp 0x14004e930
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e930
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x41]
cvttsd2si eax, xmm0
mov dword [rbp - 0xd], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x14015cdd8]
movsd qword [rbp - 0x41], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e9a5
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004e9a5
mov dword [rbp - 0x11], ebx
jmp 0x14004e9fe
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004e9fe
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
add eax, r10d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x41]
cvttsd2si eax, xmm0
mov dword [rbp - 0x11], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [r9 + rax*4 + 4]
and r8d, dword [rbp - 0x11]
add r8d, r8d
movsxd rax, dword [rbp - 0x49]
mov edx, dword [r9 + rax*4 + 4]
sub edx, r8d
add edx, dword [rbp - 0xd]
movsxd rax, dword [rbp - 0x49]
mov dword [r9 + rax*4 + 4], edx
mov eax, dword [rbp - 0x49]
inc eax
mov dword [rbp - 0x49], eax
mov eax, dword [rbp - 0x49]
cmp eax, 1
jb 0x14004e04a
xor r14d, r14d
mov byte [r9], 1
mov eax, dword [r9 + 4]
lea rcx, [0x140000000]
mov rax, qword [rcx + rax*8 + 0x1a9060]
mov rcx, qword [rbp - 0x39]
call rax
mov rdi, rax
mov qword [rbp - 0x41], rax
mov byte [rbp - 0x45], r14b
lea rdx, [rbp + 7]
lea rcx, [rbp - 0x45]
call fcn.140088fbc
mov r9, rax
cmp byte [rax], r14b
jne 0x14004f4d2
mov dword [rbp - 0x49], r14d
mov ecx, dword [rbp - 0x49]
cmp ecx, 1
jae 0x14004f4d2
call fcn.1400a4578
movsx r11d, al
call fcn.1400a4574
movsx ecx, al
imul r11d, ecx
call fcn.1400a4584
movsx r10d, al
lea eax, [r10 + r11*8]
add eax, r11d
mov dword [rbp - 0x31], eax
call fcn.1400a457c
movsx edi, al
call fcn.1400a4588
movsx esi, al
call fcn.1400a4580
movsx r14d, al
movsd xmm3, qword [0x14015cdd0]
mov r13d, dword [rbp - 0x31]
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*2]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004ecc6
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x14015cde8]
movsd qword [rbp - 0x39], xmm1
lea eax, [r11 + r11*2]
lea r12d, [rax + rax]
lea r15d, [r12 + r10]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004eb7d
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004eb7d
mov dword [rbp - 0xd], ebx
jmp 0x14004ebd3
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004ebd3
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x39]
cvttsd2si eax, xmm0
mov dword [rbp - 0xd], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x14015cde8]
movsd qword [rbp - 0x39], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004ec48
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004ec48
mov r13d, ebx
jmp 0x14004ec9f
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004ec9f
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
add eax, r10d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x39]
cvttsd2si r13d, xmm0
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [r9 + rax*4 + 4]
and r8d, r13d
add r8d, r8d
movsxd rax, dword [rbp - 0x49]
mov edx, dword [r9 + rax*4 + 4]
sub edx, r8d
add edx, dword [rbp - 0xd]
movsxd rax, dword [rbp - 0x49]
mov dword [r9 + rax*4 + 4], edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, dword [rbp - 0x31]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f2cf
movsx edx, byte [0x14022ead4]
imul edx, edi
shl edx, 3
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004eed8
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x14015cde0]
movsd qword [rbp - 0x39], xmm1
lea eax, [r11 + r11*2]
lea r12d, [rax + rax]
lea r15d, [r12 + r10]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004ed8c
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004ed8c
mov dword [rbp - 0x15], ebx
jmp 0x14004ede2
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004ede2
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x39]
cvttsd2si eax, xmm0
mov dword [rbp - 0x15], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x14015cde0]
movsd qword [rbp - 0x39], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004ee57
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004ee57
mov dword [rbp - 0x11], ebx
jmp 0x14004eeb0
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004eeb0
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
add eax, r10d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x39]
cvttsd2si eax, xmm0
mov dword [rbp - 0x11], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [r9 + rax*4 + 4]
and r8d, dword [rbp - 0x11]
add r8d, r8d
movsxd rax, dword [rbp - 0x49]
mov edx, dword [r9 + rax*4 + 4]
sub edx, r8d
add edx, dword [rbp - 0x15]
movsxd rax, dword [rbp - 0x49]
mov dword [r9 + rax*4 + 4], edx
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*2]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004f0c6
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x14015cdd8]
movsd qword [rbp - 0x39], xmm1
lea eax, [r11 + r11*2]
lea r12d, [rax + rax]
lea r15d, [r12 + r10]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004ef7a
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004ef7a
mov dword [rbp - 0x1d], ebx
jmp 0x14004efd0
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004efd0
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x39]
cvttsd2si eax, xmm0
mov dword [rbp - 0x1d], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x14015cdd8]
movsd qword [rbp - 0x39], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f045
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004f045
mov dword [rbp - 0x19], ebx
jmp 0x14004f09e
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f09e
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
add eax, r10d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x39]
cvttsd2si eax, xmm0
mov dword [rbp - 0x19], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [r9 + rax*4 + 4]
and r8d, dword [rbp - 0x19]
add r8d, r8d
movsxd rax, dword [rbp - 0x49]
mov edx, dword [r9 + rax*4 + 4]
sub edx, r8d
add edx, dword [rbp - 0x1d]
movsxd rax, dword [rbp - 0x49]
mov dword [r9 + rax*4 + 4], edx
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*4]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f2cf
mov eax, dword [rbp - 0x49]
sub eax, 0x5a
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp - 0x39], xmm1
lea eax, [r11 + r11*2]
lea r12d, [rax + rax]
lea r15d, [r12 + r10]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f179
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004f179
mov dword [rbp - 0x25], ebx
jmp 0x14004f1cf
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f1cf
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x39]
cvttsd2si eax, xmm0
mov dword [rbp - 0x25], eax
mov eax, dword [rbp - 0x49]
sub eax, 0x5a
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp - 0x39], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f24e
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004f24e
mov dword [rbp - 0x21], ebx
jmp 0x14004f2a7
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f2a7
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
add eax, r10d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x39]
cvttsd2si eax, xmm0
mov dword [rbp - 0x21], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [r9 + rax*4 + 4]
and r8d, dword [rbp - 0x21]
add r8d, r8d
movsxd rax, dword [rbp - 0x49]
mov edx, dword [r9 + rax*4 + 4]
sub edx, r8d
add edx, dword [rbp - 0x25]
movsxd rax, dword [rbp - 0x49]
mov dword [r9 + rax*4 + 4], edx
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
add edx, edx
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004f4b7
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm3
movsd qword [rbp - 0x39], xmm1
lea eax, [r11 + r11*2]
lea r12d, [rax + rax]
lea r15d, [r12 + r10]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f36f
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004f36f
mov dword [rbp - 0x2d], ebx
jmp 0x14004f3c5
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f3c5
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x39]
cvttsd2si eax, xmm0
mov dword [rbp - 0x2d], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm3
movsd qword [rbp - 0x39], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r15d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f436
movsx ecx, byte [0x14022ead4]
imul ecx, edi
lea edx, [rcx + rcx*4]
sub edx, esi
add edx, r14d
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14004f436
mov dword [rbp - 0x29], ebx
jmp 0x14004f48f
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r10d
lea eax, [rax + r11*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f48f
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
add eax, r10d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x39]
cvttsd2si eax, xmm0
mov dword [rbp - 0x29], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [r9 + rax*4 + 4]
and r8d, dword [rbp - 0x29]
add r8d, r8d
movsxd rax, dword [rbp - 0x49]
mov edx, dword [r9 + rax*4 + 4]
sub edx, r8d
add edx, dword [rbp - 0x2d]
movsxd rax, dword [rbp - 0x49]
mov dword [r9 + rax*4 + 4], edx
mov eax, dword [rbp - 0x49]
inc eax
mov dword [rbp - 0x49], eax
mov eax, dword [rbp - 0x49]
cmp eax, 1
jb 0x14004eadb
mov rdi, qword [rbp - 0x41]
xor r14d, r14d
mov byte [r9], 1
mov eax, dword [r9 + 4]
lea r8, [0x140000000]
mov r8, qword [r8 + rax*8 + 0x1a90b0]
mov rax, qword [rbp - 9]
cmp qword [rax + 0x18], 0xf
jbe 0x14004f4f7
mov rax, qword [rax]
mov rdx, rax
mov rcx, rdi
call r8
mov qword [0x1402311e8], rax
call fcn.1400a4578
movsx esi, al
call fcn.1400a4574
movsx r9d, al
imul r9d, esi
call fcn.1400a4584
movsx r11d, al
imul ecx, r9d, 7
movsx eax, byte [reloc.WS2_32.dll_htons]
add ecx, r11d
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
lea r10d, [r9 + r9*2]
add r10d, r10d
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f69d
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mov rax, r14
cmp qword [0x1402311e8], r14
sete al
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rbp - 9], xmm1
lea edi, [r11 + r10]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, edi
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f5f5
call fcn.1400a457c
movsx edx, al
movsx eax, byte [0x14022ead4]
imul edx, eax
lea r8d, [rdx + rdx*4]
call fcn.1400a4588
movsx ecx, al
sub r8d, ecx
call fcn.1400a4580
movsx ecx, al
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, r8d
jne 0x14004f64c
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r11d
lea eax, [rax + r9*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f649
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, edi
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 9]
cvttsd2si ebx, xmm0
jmp 0x14004f64c
mov ebx, dword [rbp - 0x31]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r11d
lea eax, [rax + r9*8]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
imul eax, ebx
test eax, eax
je 0x14004f69d
mov edx, Ordinal_27
lea rcx, [rbp + 0xf]
call fcn.1400a458c
lea rdx, [rbp + 0x5f]
lea rcx, [rbp + 0xf]
call fcn.14008454c
nop
mov ecx, 0x99
call qword [sym.imp.KERNEL32.dll_ExitProcess]
lea ecx, [r9 + r11]
movsx eax, byte [reloc.WS2_32.dll_htons]
lea ecx, [rcx + r9*8]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp - 9], xmm1
lea r9d, [r11 + r10]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r9d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f755
call fcn.1400a457c
movsx edx, al
movsx eax, byte [0x14022ead4]
imul edx, eax
lea r8d, [rdx + rdx*4]
call fcn.1400a4588
movsx ecx, al
sub r8d, ecx
call fcn.1400a4580
movsx ecx, al
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, r8d
jne 0x14004f7c3
call fcn.1400a4574
movsx edx, al
imul edx, esi
call fcn.1400a4584
movsx ecx, al
lea eax, [rcx + rdx*2]
movsx ecx, byte [reloc.WS2_32.dll_htons]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14004f7bb
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r9d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 9]
cvttsd2si eax, xmm0
jmp 0x14004f7be
mov eax, dword [rbp - 0x31]
cmp r14d, eax
jge 0x14004f7e4
mov rax, qword [0x1402311e8]
mov rcx, qword [rbp + 0xf]
movabs rdx, 0xff00ff00ff00ff07
xor rcx, rdx
lea rdx, [rbp + 0x5f]
mov qword [rdx], rcx
jmp 0x14004f7fc
mov rax, qword [rbp + 0xf]
movabs rdx, 0xff00ff00ff00ff07
xor rax, rdx
lea rdx, [rbp + 0x5f]
mov qword [rdx], rax
mov rbx, qword [rsp + 0xe0]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret