Function at 0x140101260
Capabilities:
Enumerate pe sections
Parse pe header

Disassembly:
push rbp
push rbx
push rsi
push rdi
lea rbp, [rsp - 0x48]
sub rsp, 0x148
mov rax, qword [0x140195380]
xor rax, rsp
mov qword [rbp - 0x18], rax
mov qword [rsp + 0x48], rcx
xor ecx, ecx
mov byte [rsp + 0x61], dl
mov byte [rsp + 0x60], 0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov qword [rbp - 0x40], rax
test rax, rax
je 0x1401035ab
mov esi, 0x5a4d
cmp word [rax], si
jne 0x1401035ab
movsxd rbx, dword [rax + 0x3c]
add rbx, rax
cmp dword [rbx], 0x4550
jne 0x1401035ab
movzx ecx, word [rbx + 0x14]
lea rdx, [rbp - 0x28]
add rcx, 0x18
mov r8, rax
add rcx, rbx
mov qword [rbp - 0x50], rcx
lea rcx, [rsp + 0x60]
call fcn.1401035d0
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x1401035ab
mov rdi, qword [rbp - 0x28]
lea rax, [rdi - 1]
cmp rax, 0xfffffffffffffffd
ja 0x1401035ab
cmp word [rcx], si
jne 0x14010359c
movsxd rsi, dword [rcx + 0x3c]
add rsi, rcx
mov qword [rsp + 0x50], rsi
cmp dword [rsi], 0x4550
jne 0x14010359c
mov eax, dword [rbx + 8]
cmp dword [rsi + 8], eax
jne 0x14010359c
movzx edx, word [rsi + 6]
cmp dx, word [rbx + 6]
jne 0x14010359c
movzx eax, word [rsi + 0x14]
xor r8d, r8d
add rax, 0x18
mov byte [rsp + 0x30], 0
add rax, rsi
mov ebx, r8d
mov qword [rbp - 0x48], rax
mov dword [rsp + 0x78], ebx
cmp r8w, dx
jae 0x140103586
mov rdi, qword [rbp - 0x50]
mov qword [rsp + 0x178], r12
mov r12d, dword [rbp - 0x30]
mov qword [rsp + 0x180], r13
mov r13d, dword [rbp - 0x30]
mov qword [rsp + 0x188], r14
mov r14d, dword [rbp - 0x30]
mov qword [rsp + 0x140], r15
mov r15d, dword [rbp - 0x30]
movaps xmmword [rsp + 0x130], xmm6
movsd xmm6, qword [0x140171880]
movaps xmmword [rsp + 0x110], xmm8
movsd xmm8, qword [0x140171890]
movaps xmmword [rsp + 0x100], xmm9
movsd xmm9, qword [0x140171898]
movaps xmmword [rsp + 0xf0], xmm10
movsd xmm10, qword [0x140171888]
nop
mov rax, qword [0x1401733e0]
mov qword [rsp + 0x58], rax
test al, al
jne 0x140101e65
mov dword [rsp + 0x20], r8d
mov eax, dword [rsp + 0x20]
cmp eax, 1
jae 0x140101e65
call fcn.1400b42b0
movsx r9d, al
call fcn.1400b42a0
movsx ecx, al
imul r9d, ecx
call fcn.1400b42e0
movsx r10d, al
call fcn.1400b42c0
movsx r11d, al
call fcn.1400b42f0
movsx ebx, al
call fcn.1400b42d0
movsx edi, al
nop dword [rax]
movsx ecx, byte [0x140196808]
imul ecx, r11d
lea edx, [rcx + rcx*8]
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, ebx
add edx, edi
add ecx, edx
je 0x14010162d
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
lea esi, [r10 + r9*2]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x40], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, esi
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401014db
movsx ecx, byte [0x140196808]
imul ecx, r11d
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, ebx
add edx, edi
add ecx, edx
je 0x1401014db
mov dword [rsp + 0x28], 6
jmp 0x140101537
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140101537
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x28], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x40], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, esi
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401015ab
movsx ecx, byte [0x140196808]
imul ecx, r11d
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, ebx
add edx, edi
add ecx, edx
je 0x1401015ab
mov r14d, 6
jmp 0x140101604
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140101604
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r14d, xmm0
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x5c]
movsxd rax, dword [rsp + 0x20]
and r8d, r14d
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x5c]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, dword [rsp + 0x28]
mov dword [rsp + rax*4 + 0x5c], edx
movsx eax, byte [reloc.WS2_32.dll_htons]
lea ecx, [r9 + r10]
add eax, ecx
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140101c49
movsx ecx, byte [0x140196808]
imul ecx, r11d
lea edx, [rcx + rcx*4]
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add edx, edx
sub edx, ebx
add edx, edi
add ecx, edx
je 0x140101845
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
lea esi, [r10 + r9*2]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x40], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, esi
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401016f2
movsx ecx, byte [0x140196808]
imul ecx, r11d
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, ebx
add edx, edi
add ecx, edx
je 0x1401016f2
mov dword [rsp + 0x68], 6
jmp 0x14010174e
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14010174e
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x68], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x40], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, esi
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401017c3
movsx ecx, byte [0x140196808]
imul ecx, r11d
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, ebx
add edx, edi
add ecx, edx
je 0x1401017c3
mov r15d, 6
jmp 0x14010181c
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14010181c
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x5c]
movsxd rax, dword [rsp + 0x20]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x5c]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, dword [rsp + 0x68]
mov dword [rsp + rax*4 + 0x5c], edx
movsx ecx, byte [0x140196808]
imul ecx, r11d
lea edx, [rcx + rcx*4]
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, ebx
add edx, edi
add ecx, edx
je 0x140101a34
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
lea esi, [r10 + r9*2]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x40], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, esi
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401018e1
movsx ecx, byte [0x140196808]
imul ecx, r11d
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, ebx
add edx, edi
add ecx, edx
je 0x1401018e1
mov dword [rsp + 0x64], 6
jmp 0x14010193d
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14010193d
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x40], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, esi
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401019b2
movsx ecx, byte [0x140196808]
imul ecx, r11d
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, ebx
add edx, edi
add ecx, edx
je 0x1401019b2
mov r12d, 6
jmp 0x140101a0b
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140101a0b
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x5c]
movsxd rax, dword [rsp + 0x20]
and r8d, r12d
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x5c]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, dword [rsp + 0x64]
mov dword [rsp + rax*4 + 0x5c], edx
movsx eax, byte [reloc.WS2_32.dll_htons]
lea edx, [r9 + r9*4]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + rdx*2]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140101c49
mov eax, dword [rsp + 0x20]
lea esi, [r10 + r9*2]
sub eax, 0x36
xor edx, edx
movd xmm2, eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, esi
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140101ae8
movsx ecx, byte [0x140196808]
imul ecx, r11d
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, ebx
add edx, edi
add ecx, edx
je 0x140101ae8
mov dword [rsp + 0x6c], 6
jmp 0x140101b44
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140101b44
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x20]
xor edx, edx
sub eax, 0x36
movd xmm2, eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, esi
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140101bc7
movsx ecx, byte [0x140196808]
imul ecx, r11d
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, ebx
add edx, edi
add ecx, edx
je 0x140101bc7
mov r13d, 6
jmp 0x140101c20
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140101c20
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x5c]
movsxd rax, dword [rsp + 0x20]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x5c]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, dword [rsp + 0x6c]
mov dword [rsp + rax*4 + 0x5c], edx
movsx ecx, byte [0x140196808]
imul ecx, r11d
lea edx, [rcx + rcx*2]
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add edx, edx
sub edx, ebx
add edx, edi
add ecx, edx
je 0x140101e41
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
lea esi, [r10 + r9*2]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x40], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, esi
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140101ce7
movsx ecx, byte [0x140196808]
imul ecx, r11d
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, ebx
add edx, edi
add ecx, edx
je 0x140101ce7
mov dword [rsp + 0x74], 6
jmp 0x140101d43
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140101d43
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x74], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x40], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, esi
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140101dba
movsx ecx, byte [0x140196808]
imul ecx, r11d
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, ebx
add edx, edi
add ecx, edx
je 0x140101dba
mov dword [rsp + 0x70], 6
jmp 0x140101e16
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140101e16
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x5c]
movsxd rax, dword [rsp + 0x20]
and r8d, dword [rsp + 0x70]
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x5c]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, dword [rsp + 0x74]
mov dword [rsp + rax*4 + 0x5c], edx
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 1
jb 0x140101440
mov rsi, qword [rsp + 0x50]
mov ebx, dword [rsp + 0x78]
mov rdi, qword [rbp - 0x50]
mov eax, dword [rsp + 0x5c]
lea rcx, [0x140000000]
mov rdx, qword [rsp + 0x48]
mov byte [rsp + 0x58], 1
mov r8, qword [rcx + rax*8 + 0x194d60]
mov rcx, rdi
call r8
test eax, eax
jne 0x140101e95
test dword [rdi + 0x24], 0x20000000
jne 0x140101ebc
add qword [rbp - 0x48], 0x28
inc ebx
movzx eax, word [rsi + 6]
add rdi, 0x28
mov dword [rsp + 0x78], ebx
mov qword [rbp - 0x50], rdi
cmp ebx, eax
jge 0x14010353b
xor r8d, r8d
jmp 0x1401013e0
xor r14d, r14d
mov edx, r14d
mov dword [rsp + 0x64], edx
cmp dword [rdi + 0x10], edx
jbe 0x14010353b
mov r8, qword [rbp - 0x20]
movsd xmm6, qword [0x1401718a0]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x68]
mov rsi, qword [rbp - 0x40]
movaps xmmword [rsp + 0x120], xmm7
movsd xmm7, qword [0x1401718a8]
mov qword [rbp - 0x38], r8
nop dword [rax]
mov rax, qword [rbp - 0x48]
mov ecx, edx
mov eax, dword [rax + 0x14]
add rax, rcx
movzx r15d, byte [rax + r8]
mov eax, dword [rdi + 0xc]
add rax, rcx
mov byte [rsp + 0x62], r15b
cmp byte [rax + rsi], r15b
je 0x140103524
cmp byte [rsp + 0x61], 0
je 0x14010351f
mov rax, qword [0x1401733e8]
mov dword [rbp - 0x2c], 0x40
mov qword [rsp + 0x48], rax
test al, al
jne 0x1401029ec
mov dword [rsp + 0x20], r14d
mov eax, dword [rsp + 0x20]
cmp eax, 1
jae 0x1401029ec
call fcn.1400b42b0
movsx r9d, al
call fcn.1400b42a0
movsx ecx, al
imul r9d, ecx
call fcn.1400b42e0
movsx r10d, al
lea r14d, [r9 + r10]
call fcn.1400b42c0
movsx ebx, al
call fcn.1400b42f0
movsx edi, al
call fcn.1400b42d0
mov r15d, dword [rsp + 0x38]
mov r13d, dword [rsp + 0x7c]
mov r12d, dword [rbp - 0x58]
movsx esi, al
nop word [rax + rax]
movsx ecx, byte [0x140196808]
imul ecx, ebx
lea edx, [rcx + rcx*8]
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x14010219e
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
lea r11d, [r10 + r9*2]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14010204b
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x14010204b
mov dword [rsp + 0x78], 6
jmp 0x1401020a7
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401020a7
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x78], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14010211c
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x14010211c
mov r15d, 6
jmp 0x140102175
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102175
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x4c]
movsxd rax, dword [rsp + 0x20]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x4c]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, dword [rsp + 0x78]
mov dword [rsp + rax*4 + 0x4c], edx
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r14d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401027b9
movsx ecx, byte [0x140196808]
imul ecx, ebx
lea edx, [rcx + rcx*4]
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add edx, edx
sub edx, edi
add edx, esi
add ecx, edx
je 0x1401023b2
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
lea r11d, [r10 + r9*2]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14010225f
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x14010225f
mov dword [rsp + 0x74], 6
jmp 0x1401022bb
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401022bb
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x74], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102330
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140102330
mov r13d, 6
jmp 0x140102389
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102389
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x4c]
movsxd rax, dword [rsp + 0x20]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x4c]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, dword [rsp + 0x74]
mov dword [rsp + rax*4 + 0x4c], edx
movsx ecx, byte [0x140196808]
imul ecx, ebx
lea edx, [rcx + rcx*4]
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x1401025a0
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
lea r11d, [r10 + r9*2]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14010244d
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x14010244d
mov dword [rsp + 0x70], 6
jmp 0x1401024a9
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401024a9
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14010251e
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x14010251e
mov r12d, 6
jmp 0x140102577
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102577
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x4c]
movsxd rax, dword [rsp + 0x20]
and r8d, r12d
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x4c]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, dword [rsp + 0x70]
mov dword [rsp + rax*4 + 0x4c], edx
movsx eax, byte [reloc.WS2_32.dll_htons]
lea edx, [r9 + r9*4]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + rdx*2]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401027b9
mov eax, dword [rsp + 0x20]
lea r11d, [r10 + r9*2]
sub eax, 0x35
xor edx, edx
movd xmm2, eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102653
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140102653
mov dword [rbp - 0x64], 6
jmp 0x1401026ae
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401026ae
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rbp - 0x64], eax
mov eax, dword [rsp + 0x20]
xor edx, edx
sub eax, 0x35
movd xmm2, eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102733
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140102733
mov dword [rsp + 0x6c], 6
jmp 0x14010278f
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14010278f
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x6c], eax
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x4c]
movsxd rax, dword [rsp + 0x20]
and r8d, dword [rsp + 0x6c]
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x4c]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, dword [rbp - 0x64]
mov dword [rsp + rax*4 + 0x4c], edx
movsx ecx, byte [0x140196808]
imul ecx, ebx
lea edx, [rcx + rcx*2]
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add edx, edx
sub edx, edi
add edx, esi
add ecx, edx
je 0x1401029a8
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
lea r11d, [r10 + r9*2]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102854
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140102854
mov dword [rbp - 0x5c], 6
jmp 0x1401028af
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401028af
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rbp - 0x5c], eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102924
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140102924
mov dword [rbp - 0x60], 6
jmp 0x14010297f
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14010297f
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rbp - 0x60], eax
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x4c]
movsxd rax, dword [rsp + 0x20]
and r8d, dword [rbp - 0x60]
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x4c]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, dword [rbp - 0x5c]
mov dword [rsp + rax*4 + 0x4c], edx
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 1
jb 0x140101fb0
mov edx, dword [rsp + 0x64]
xor r14d, r14d
mov rdi, qword [rbp - 0x50]
mov rsi, qword [rbp - 0x40]
mov dword [rbp - 0x58], r12d
mov r12d, dword [rsp + 0x28]
mov dword [rsp + 0x7c], r13d
mov r13d, dword [rsp + 0x68]
mov dword [rsp + 0x38], r15d
movzx r15d, byte [rsp + 0x62]
mov ecx, dword [rdi + 0xc]
lea r9, [rbp - 0x30]
mov eax, dword [rsp + 0x4c]
lea r10, [0x140000000]
mov ebx, edx
mov edx, 1
add rcx, rbx
mov byte [rsp + 0x48], 1
add rcx, rsi
lea r8d, [rdx + 0x3f]
call qword [r10 + rax*8 + 0x194db0]
mov eax, dword [rdi + 0xc]
add rax, rbx
mov byte [rax + rsi], r15b
mov rax, qword [0x1401733f0]
mov qword [rsp + 0x50], rax
test al, al
jne 0x1401034e1
mov dword [rsp + 0x20], r14d
mov eax, dword [rsp + 0x20]
cmp eax, 1
jae 0x1401034e1
call fcn.1400b42b0
movsx r9d, al
call fcn.1400b42a0
movsx ecx, al
imul r9d, ecx
call fcn.1400b42e0
movsx r10d, al
lea r14d, [r9 + r10]
call fcn.1400b42c0
movsx ebx, al
call fcn.1400b42f0
movsx edi, al
call fcn.1400b42d0
movsx esi, al
nop word [rax + rax]
movsx ecx, byte [0x140196808]
imul ecx, ebx
lea edx, [rcx + rcx*8]
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140102c86
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
lea r11d, [r10 + r9*2]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x28], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102b2d
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140102b2d
mov r15d, 6
mov dword [rbp - 0x80], r15d
jmp 0x140102b90
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102b8c
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r15d, xmm0
mov dword [rbp - 0x80], r15d
jmp 0x140102b90
mov r15d, dword [rbp - 0x80]
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x28], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102c05
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140102c05
mov r12d, 6
jmp 0x140102c5e
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102c5e
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x54]
movsxd rax, dword [rsp + 0x20]
and r8d, r12d
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x54]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, r15d
mov dword [rsp + rax*4 + 0x54], edx
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r14d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401032bb
movsx ecx, byte [0x140196808]
imul ecx, ebx
lea edx, [rcx + rcx*4]
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add edx, edx
sub edx, edi
add edx, esi
add ecx, edx
je 0x140102ea2
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
lea r11d, [r10 + r9*2]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x28], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102d49
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140102d49
mov r15d, 6
mov dword [rbp - 0x7c], r15d
jmp 0x140102dac
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102da8
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r15d, xmm0
mov dword [rbp - 0x7c], r15d
jmp 0x140102dac
mov r15d, dword [rbp - 0x7c]
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x28], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102e21
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140102e21
mov r13d, 6
jmp 0x140102e7a
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102e7a
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x54]
movsxd rax, dword [rsp + 0x20]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x54]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, r15d
mov dword [rsp + rax*4 + 0x54], edx
movsx ecx, byte [0x140196808]
imul ecx, ebx
lea edx, [rcx + rcx*4]
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x14010309a
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
lea r11d, [r10 + r9*2]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x28], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102f3e
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140102f3e
mov r15d, 6
mov dword [rbp - 0x78], r15d
jmp 0x140102fa1
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140102f9d
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r15d, xmm0
mov dword [rbp - 0x78], r15d
jmp 0x140102fa1
mov r15d, dword [rbp - 0x78]
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x28], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140103016
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140103016
mov dword [rbp - 0x74], 6
jmp 0x140103071
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140103071
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rbp - 0x74], eax
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x54]
movsxd rax, dword [rsp + 0x20]
and r8d, dword [rbp - 0x74]
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x54]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, r15d
mov dword [rsp + rax*4 + 0x54], edx
movsx eax, byte [reloc.WS2_32.dll_htons]
lea edx, [r9 + r9*4]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + rdx*2]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401032bb
mov eax, dword [rsp + 0x20]
lea r11d, [r10 + r9*2]
sub eax, 0x34
xor edx, edx
movd xmm2, eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140103150
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140103150
mov r15d, 6
mov dword [rbp - 0x70], r15d
jmp 0x1401031b3
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401031af
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r15d, xmm0
mov dword [rbp - 0x70], r15d
jmp 0x1401031b3
mov r15d, dword [rbp - 0x70]
mov eax, dword [rsp + 0x20]
xor edx, edx
sub eax, 0x34
movd xmm2, eax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140103237
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140103237
mov dword [rbp - 0x6c], 6
jmp 0x140103292
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140103292
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rbp - 0x6c], eax
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x54]
movsxd rax, dword [rsp + 0x20]
and r8d, dword [rbp - 0x6c]
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x54]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, r15d
mov dword [rsp + rax*4 + 0x54], edx
movsx ecx, byte [0x140196808]
imul ecx, ebx
lea edx, [rcx + rcx*2]
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add edx, edx
sub edx, edi
add edx, esi
add ecx, edx
je 0x1401034b8
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
lea r11d, [r10 + r9*2]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x28], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140103359
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140103359
mov r15d, 6
mov dword [rbp - 0x68], r15d
jmp 0x1401033bc
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401033b8
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r15d, xmm0
mov dword [rbp - 0x68], r15d
jmp 0x1401033bc
mov r15d, dword [rbp - 0x68]
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
xor edx, edx
movd xmm1, eax
movsx eax, byte [reloc.WS2_32.dll_closesocket]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x28], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r11d
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140103432
movsx ecx, byte [0x140196808]
imul ecx, ebx
imul edx, ecx, 7
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
sub edx, edi
add edx, esi
add ecx, edx
je 0x140103432
mov dword [rsp + 0x40], 6
jmp 0x14010348e
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
lea eax, [rax + r9*4]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14010348e
movsx eax, byte [reloc.WS2_32.dll_htons]
xor edx, edx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
add eax, r10d
xorps xmm0, xmm0
lea eax, [rax + r9*8]
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x40], eax
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [rsp + rax*4 + 0x54]
movsxd rax, dword [rsp + 0x20]
and r8d, dword [rsp + 0x40]
add r8d, r8d
mov edx, dword [rsp + rax*4 + 0x54]
movsxd rax, dword [rsp + 0x20]
sub edx, r8d
add edx, r15d
mov dword [rsp + rax*4 + 0x54], edx
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 1
jb 0x140102a90
mov rdi, qword [rbp - 0x50]
mov rsi, qword [rbp - 0x40]
mov dword [rsp + 0x68], r13d
mov dword [rsp + 0x28], r12d
mov eax, dword [rdi + 0xc]
lea r9, [rbp - 0x2c]
mov r10d, dword [rsp + 0x54]
add rax, rsi
mov ecx, dword [rsp + 0x64]
mov edx, 1
mov r8d, dword [rbp - 0x30]
add rcx, rax
lea rax, [0x140000000]
mov byte [rsp + 0x50], 1
call qword [rax + r10*8 + 0x194e00]
mov edx, dword [rsp + 0x64]
xor r14d, r14d
mov r8, qword [rbp - 0x38]
mov byte [rsp + 0x30], 1
inc edx
mov dword [rsp + 0x64], edx
cmp edx, dword [rdi + 0x10]
jb 0x140101f00
movaps xmm7, xmmword [rsp + 0x120]
mov rdi, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x20]
movaps xmm9, xmmword [rsp + 0x100]
movaps xmm8, xmmword [rsp + 0x110]
movaps xmm6, xmmword [rsp + 0x130]
mov r15, qword [rsp + 0x140]
mov r14, qword [rsp + 0x188]
mov r13, qword [rsp + 0x180]
mov r12, qword [rsp + 0x178]
movaps xmm10, xmmword [rsp + 0xf0]
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
movzx eax, byte [rsp + 0x30]
jmp 0x1401035ad
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, 1
mov rcx, qword [rbp - 0x18]
xor rcx, rsp
call fcn.140122c70
add rsp, 0x148
pop rdi
pop rsi
pop rbx
pop rbp
ret