Function at 0x140052940
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.140085784
mov r9, rax
lea ebx, [r14 + 0xa]
cmp byte [rax], r14b
jne 0x1400533f9
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 0x140052be9
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 0x140052aa4
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 0x140052aa4
mov dword [rbp - 0x2d], ebx
jmp 0x140052afa
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 0x140052afa
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 0x140052b6b
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 0x140052b6b
mov r13d, ebx
jmp 0x140052bc2
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 0x140052bc2
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 0x1400531f2
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 0x140052dfb
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 0x140052caf
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 0x140052caf
mov dword [rbp - 0x25], ebx
jmp 0x140052d05
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 0x140052d05
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 0x140052d7a
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 0x140052d7a
mov dword [rbp - 0x29], ebx
jmp 0x140052dd3
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 0x140052dd3
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 0x140052fe9
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 0x140052e9d
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 0x140052e9d
mov dword [rbp - 0x1d], ebx
jmp 0x140052ef3
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 0x140052ef3
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 0x140052f68
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 0x140052f68
mov dword [rbp - 0x21], ebx
jmp 0x140052fc1
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 0x140052fc1
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 0x1400531f2
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 0x14005309c
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 0x14005309c
mov dword [rbp - 0x15], ebx
jmp 0x1400530f2
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 0x1400530f2
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 0x140053171
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 0x140053171
mov dword [rbp - 0x19], ebx
jmp 0x1400531ca
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 0x1400531ca
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 0x1400533e2
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 0x140053296
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 0x140053296
mov dword [rbp - 0xd], ebx
jmp 0x1400532ec
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 0x1400532ec
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 0x140053361
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 0x140053361
mov dword [rbp - 0x11], ebx
jmp 0x1400533ba
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 0x1400533ba
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 0x140052a06
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.1400893c4
mov r9, rax
cmp byte [rax], r14b
jne 0x140053e8e
mov dword [rbp - 0x49], r14d
mov ecx, dword [rbp - 0x49]
cmp ecx, 1
jae 0x140053e8e
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 0x140053682
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 0x140053539
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 0x140053539
mov dword [rbp - 0xd], ebx
jmp 0x14005358f
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 0x14005358f
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 0x140053604
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 0x140053604
mov r13d, ebx
jmp 0x14005365b
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 0x14005365b
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 0x140053c8b
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 0x140053894
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 0x140053748
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 0x140053748
mov dword [rbp - 0x15], ebx
jmp 0x14005379e
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 0x14005379e
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 0x140053813
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 0x140053813
mov dword [rbp - 0x11], ebx
jmp 0x14005386c
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 0x14005386c
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 0x140053a82
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 0x140053936
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 0x140053936
mov dword [rbp - 0x1d], ebx
jmp 0x14005398c
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 0x14005398c
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 0x140053a01
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 0x140053a01
mov dword [rbp - 0x19], ebx
jmp 0x140053a5a
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 0x140053a5a
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 0x140053c8b
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 0x140053b35
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 0x140053b35
mov dword [rbp - 0x25], ebx
jmp 0x140053b8b
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 0x140053b8b
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 0x140053c0a
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 0x140053c0a
mov dword [rbp - 0x21], ebx
jmp 0x140053c63
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 0x140053c63
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 0x140053e73
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 0x140053d2b
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 0x140053d2b
mov dword [rbp - 0x2d], ebx
jmp 0x140053d81
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 0x140053d81
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 0x140053df2
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 0x140053df2
mov dword [rbp - 0x29], ebx
jmp 0x140053e4b
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 0x140053e4b
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 0x140053497
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 0x140053eb3
mov rax, qword [rax]
mov rdx, rax
mov rcx, rdi
call r8
mov qword [0x140231210], 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 0x140054059
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 [0x140231210], 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 0x140053fb1
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 0x140054008
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 0x140054005
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 0x140054008
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 0x140054059
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 0x140054111
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 0x14005417f
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 0x140054177
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 0x14005417a
mov eax, dword [rbp - 0x31]
cmp r14d, eax
jge 0x1400541a0
mov rax, qword [0x140231210]
mov rcx, qword [rbp + 0xf]
movabs rdx, 0xff00ff00ff00ff07
xor rcx, rdx
lea rdx, [rbp + 0x5f]
mov qword [rdx], rcx
jmp 0x1400541b8
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