Function at 0x14004c6f0
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.140085204
mov r9, rax
lea ebx, [r14 + 0xa]
cmp byte [rax], r14b
jne 0x14004d1a9
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 0x14004c999
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 0x14004c854
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 0x14004c854
mov dword [rbp - 0x2d], ebx
jmp 0x14004c8aa
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 0x14004c8aa
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 0x14004c91b
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 0x14004c91b
mov r13d, ebx
jmp 0x14004c972
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 0x14004c972
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 0x14004cfa2
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 0x14004cbab
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 0x14004ca5f
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 0x14004ca5f
mov dword [rbp - 0x25], ebx
jmp 0x14004cab5
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 0x14004cab5
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 0x14004cb2a
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 0x14004cb2a
mov dword [rbp - 0x29], ebx
jmp 0x14004cb83
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 0x14004cb83
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 0x14004cd99
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 0x14004cc4d
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 0x14004cc4d
mov dword [rbp - 0x1d], ebx
jmp 0x14004cca3
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 0x14004cca3
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 0x14004cd18
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 0x14004cd18
mov dword [rbp - 0x21], ebx
jmp 0x14004cd71
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 0x14004cd71
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 0x14004cfa2
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 0x14004ce4c
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 0x14004ce4c
mov dword [rbp - 0x15], ebx
jmp 0x14004cea2
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 0x14004cea2
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 0x14004cf21
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 0x14004cf21
mov dword [rbp - 0x19], ebx
jmp 0x14004cf7a
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 0x14004cf7a
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 0x14004d192
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 0x14004d046
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 0x14004d046
mov dword [rbp - 0xd], ebx
jmp 0x14004d09c
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 0x14004d09c
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 0x14004d111
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 0x14004d111
mov dword [rbp - 0x11], ebx
jmp 0x14004d16a
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 0x14004d16a
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 0x14004c7b6
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.140088e64
mov r9, rax
cmp byte [rax], r14b
jne 0x14004dc3e
mov dword [rbp - 0x49], r14d
mov ecx, dword [rbp - 0x49]
cmp ecx, 1
jae 0x14004dc3e
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 0x14004d432
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 0x14004d2e9
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 0x14004d2e9
mov dword [rbp - 0xd], ebx
jmp 0x14004d33f
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 0x14004d33f
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 0x14004d3b4
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 0x14004d3b4
mov r13d, ebx
jmp 0x14004d40b
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 0x14004d40b
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 0x14004da3b
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 0x14004d644
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 0x14004d4f8
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 0x14004d4f8
mov dword [rbp - 0x15], ebx
jmp 0x14004d54e
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 0x14004d54e
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 0x14004d5c3
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 0x14004d5c3
mov dword [rbp - 0x11], ebx
jmp 0x14004d61c
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 0x14004d61c
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 0x14004d832
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 0x14004d6e6
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 0x14004d6e6
mov dword [rbp - 0x1d], ebx
jmp 0x14004d73c
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 0x14004d73c
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 0x14004d7b1
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 0x14004d7b1
mov dword [rbp - 0x19], ebx
jmp 0x14004d80a
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 0x14004d80a
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 0x14004da3b
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 0x14004d8e5
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 0x14004d8e5
mov dword [rbp - 0x25], ebx
jmp 0x14004d93b
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 0x14004d93b
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 0x14004d9ba
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 0x14004d9ba
mov dword [rbp - 0x21], ebx
jmp 0x14004da13
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 0x14004da13
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 0x14004dc23
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 0x14004dadb
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 0x14004dadb
mov dword [rbp - 0x2d], ebx
jmp 0x14004db31
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 0x14004db31
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 0x14004dba2
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 0x14004dba2
mov dword [rbp - 0x29], ebx
jmp 0x14004dbfb
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 0x14004dbfb
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 0x14004d247
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 0x14004dc63
mov rax, qword [rax]
mov rdx, rax
mov rcx, rdi
call r8
mov qword [0x1402311f0], 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 0x14004de09
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 [0x1402311f0], 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 0x14004dd61
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 0x14004ddb8
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 0x14004ddb5
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 0x14004ddb8
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 0x14004de09
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 0x14004dec1
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 0x14004df2f
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 0x14004df27
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 0x14004df2a
mov eax, dword [rbp - 0x31]
cmp r14d, eax
jge 0x14004df50
mov rax, qword [0x1402311f0]
mov rcx, qword [rbp + 0xf]
movabs rdx, 0xff00ff00ff00ff07
xor rcx, rdx
lea rdx, [rbp + 0x5f]
mov qword [rdx], rcx
jmp 0x14004df68
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