Function at 0x1401d00d0
Capabilities:
Encode data using xor

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2e8]
sub rsp, 0x3e8
movsxd rax, dword [rdx]
lea r10, [rbp + 0x1df]
mov r8, rax
mov dword [rsp + 0x5c], eax
mov r13, rcx
lea rax, [0x140000000]
mov r15, rdx
mov ebx, 0x10000000
movsxd rdx, dword [rdx + 0xa8]
and r10, 0xffffffffffffffe0
movzx r11d, byte [rax + r8*2 + 0x32dab8]
movzx eax, byte [rax + r8*2 + 0x32dab9]
movsx esi, word [r13 + 0x6044]
movsx r9d, word [r13 + 0x6046]
mov r14, qword [r15 + 0x88]
mov rdi, qword [r15 + 0x80]
mov dword [rsp + 0x58], eax
mov eax, dword [rcx + 0x240]
movsx ecx, word [rcx + 0x6040]
mov dword [rbp - 0x68], eax
mov eax, ebx
mov qword [rbp + 0x150], rax
movsx eax, word [r13 + 0x6042]
mov dword [rbp + 0xc0], eax
neg eax
and eax, 0x7fff
mov dword [rsp + 0x70], ecx
neg ecx
mov dword [rbp + 0xc4], esi
shl ecx, 0x10
or ecx, eax
mov dword [rbp + 0xb4], r9d
mov dword [rbp + 0x158], ecx
mov eax, r9d
and eax, 0x7fff
mov dword [rbp + 0x88], r11d
mov ecx, esi
mov dword [rsp + 0x54], edx
mov rsi, qword [r15 + 8]
shl ecx, 0x10
mov r12, rsi
bts ecx, 0xf
mov qword [rbp - 0x40], rbx
or ecx, eax
mov qword [rbp + 0xb8], r14
xor eax, eax
mov dword [rbp + 0xb0], ecx
movsx rcx, word [r15 + 0xb4]
movsx r15, word [r15 + 0xb6]
mov r9d, ecx
mov dword [rbp + 0x11c], eax
mov rax, rcx
add rax, rax
mov qword [rbp + 0x60], rdi
sub r12, rax
mov qword [rbp - 0x50], r10
mov rax, r15
mov qword [rbp + 0x10], r12
add rax, rax
sub rsi, rax
movsxd rax, dword [rbp + 0x348]
cmp dword [r13 + 0x5fc8], 3
mov qword [rbp + 0x90], rax
mov qword [rsp + 0x78], rsi
jl 0x1401d068e
mov ecx, dword [rsp + 0x70]
mov eax, dword [rbp + 0xc4]
lea ecx, [rcx*4]
mov dword [rbp - 0x80], ecx
lea eax, [rax*4]
cmp r9d, ecx
jl 0x1401d0269
cmp r9d, eax
mov ecx, r9d
cmovg ecx, eax
mov dword [rbp - 0x80], ecx
mov eax, dword [rbp + 0xb4]
lea r8d, [rax*4]
mov eax, dword [rbp + 0xc0]
lea r9d, [rax*4]
movsx eax, r15w
mov dword [rbp + 0x11c], r9d
cmp eax, r9d
jl 0x1401d02a6
cmp eax, r8d
mov r9d, eax
cmovg r9d, r8d
mov dword [rbp + 0x11c], r9d
movzx eax, cx
mov r8d, r9d
shl r8d, 0x10
mov r15, rdx
add r8d, eax
mov qword [rbp + 0xd0], rdx
lea eax, [rcx + 2]
mov dword [rbp + 0xe0], r8d
sar eax, 2
mov dword [rsp + 0x60], eax
lea eax, [r9 + 2]
sar eax, 2
mov dword [rsp + 0x68], eax
mov rax, qword [rbp + 0x338]
mov qword [rbp - 0x60], reloc.WS2_32.dll_recv
lea r8, [rax + 0x20]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x28], r9d
mov r9, rdx
mov dword [rsp + 0x20], ecx
lea rdx, [rbp - 0x60]
mov rcx, r10
call qword [r13 + 0xbb80]
movsxd rcx, dword [rsp + 0x5c]
mov edx, reloc.WS2_32.dll_recv
mov r9, qword [rbp - 0x60]
add rcx, 0x1704
mov qword [rbp - 0x28], rcx
mov r8, rax
lea r10, [rcx*8]
mov rcx, r14
add r10, r13
mov qword [rbp], r10
call qword [r10]
movsxd r9, dword [rbp + 0x11c]
movsxd rdx, dword [rbp - 0x80]
movzx ecx, word [rsi + r9*2]
movzx r8d, word [r12 + rdx*2]
add ecx, eax
add r8d, ecx
mov ecx, 1
cmp dword [rbp + 0x348], 0
mov qword [rbp + 0x120], rcx
mov qword [rbp + 0x150], r8
mov dword [rbp - 0x44], r8d
jle 0x1401d05b6
movsx eax, word [r13 + 0x6040]
xor edx, edx
movsx esi, word [r13 + 0x6042]
shl eax, 2
mov dword [rbp - 0x48], eax
movsx eax, word [r13 + 0x6044]
shl eax, 2
mov dword [rbp + 8], eax
movsx eax, word [r13 + 0x6046]
shl eax, 2
shl esi, 2
cmp qword [rbp + 0x90], rdx
jle 0x1401d05b6
mov ebx, dword [rbp - 0x48]
lea r11, [rbp + 0x18a]
mov r14d, dword [rbp + 8]
mov r10d, edx
mov r12, qword [rbp + 0x340]
mov edi, edx
mov r13, qword [rbp + 0x90]
mov r15d, eax
mov ecx, dword [rbp + 0xe0]
nop word [rax + rax]
mov r9d, dword [r12 + r10*4]
mov eax, r9d
shr eax, 0x10
movsx edx, r9w
movsx r8d, ax
test r9d, r9d
je 0x1401d044b
cmp r9d, ecx
je 0x1401d044b
cmp edx, ebx
jge 0x1401d0424
mov edx, ebx
jmp 0x1401d042b
cmp edx, r14d
cmovg edx, r14d
mov word [r11 - 2], dx
cmp r8d, esi
jge 0x1401d043a
mov r8d, esi
jmp 0x1401d0441
cmp r8d, r15d
cmovg r8d, r15d
inc edi
mov word [r11], r8w
add r11, 4
inc r10
cmp r10, r13
jl 0x1401d0400
mov rbx, qword [rbp - 0x40]
test edi, edi
mov r15, qword [rbp + 0xd0]
mov ecx, 1
mov r12, qword [rbp + 0x10]
mov r14, qword [rbp + 0xb8]
mov r13, qword [rbp + 0x330]
mov dword [rsp + 0x64], edi
mov rdi, qword [rbp + 0x60]
jle 0x1401d05a8
mov eax, dword [rbp + 0xe0]
mov rbx, qword [rsp + 0x78]
mov dword [rbp + 0x184], eax
mov rax, qword [rbp + 0x150]
shl eax, 4
mov qword [rbp + 0x150], rax
movsxd rax, dword [rsp + 0x64]
mov qword [rbp + 0x70], rax
mov eax, ecx
mov dword [rbp - 0x20], ecx
mov qword [rbp - 0x70], rcx
nop dword [rax]
movsx rsi, word [rbp + rax*4 + 0x184]
lea rdx, [rbp - 0x30]
movsx rdi, word [rbp + rax*4 + 0x186]
mov r9, r15
mov rcx, qword [rbp + 0x338]
mov qword [rbp - 0x30], reloc.WS2_32.dll_recv
mov rax, qword [rcx + 0x18]
lea r8, [rcx + 0x20]
mov rcx, qword [rbp - 0x50]
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp + 0x88]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], esi
call qword [r13 + 0xbb80]
mov r9, qword [rbp - 0x30]
mov edx, reloc.WS2_32.dll_recv
mov r8, rax
mov rcx, r14
mov rax, qword [rbp - 0x28]
call qword [r13 + rax*8]
mov r8, qword [rbp + 0x150]
movzx ecx, word [rbx + rdi*2]
movzx edx, word [r12 + rsi*2]
add ecx, eax
mov eax, dword [rbp - 0x20]
add edx, ecx
shl edx, 4
add edx, eax
cmp edx, r8d
cmovge edx, r8d
inc eax
mov dword [rbp - 0x20], eax
mov r8d, edx
mov rax, qword [rbp - 0x70]
inc rax
mov qword [rbp + 0x150], r8
mov qword [rbp - 0x70], rax
cmp rax, qword [rbp + 0x70]
jle 0x1401d04c0
mov rbx, qword [rbp - 0x40]
mov eax, r8d
mov rdi, qword [rbp + 0x60]
and eax, 0xf
sar r8d, 4
mov qword [rbp + 0x150], r8
movsx edx, word [rbp + rax*4 + 0x184]
movsx r9d, word [rbp + rax*4 + 0x186]
mov dword [rbp - 0x80], edx
jmp 0x1401d05b6
mov r8, qword [rbp + 0x150]
mov r9d, dword [rbp + 0x11c]
mov eax, dword [rbp - 0x80]
lea esi, [r9 + 2]
shl r9d, 0x10
sar esi, 2
mov dword [rsp + 0x50], esi
lea r13d, [rax + 2]
movzx eax, ax
add r9d, eax
sar r13d, 2
mov dword [rbp - 0x78], r13d
mov dword [rbp + 0x11c], r9d
test r9d, 0x30003
je 0x1401d063a
mov eax, esi
mov r9, r15
imul eax, dword [rsp + 0x54]
mov edx, reloc.WS2_32.dll_recv
mov rcx, r14
add eax, r13d
movsxd r8, eax
mov rax, qword [rbp]
add r8, rdi
call qword [rax]
lea ecx, [rsi*4]
movsxd rdx, ecx
mov rcx, qword [rsp + 0x78]
movzx edx, word [rcx + rdx*2]
add edx, eax
lea eax, [r13*4]
movsxd rcx, eax
movzx eax, word [r12 + rcx*2]
add eax, edx
cmp eax, ebx
jge 0x1401d0641
mov ebx, eax
jmp 0x1401d063d
mov ebx, r8d
mov qword [rbp - 0x40], rbx
cmp dword [rbp + 0xe0], 0
je 0x1401d066e
mov eax, esi
or eax, r13d
je 0x1401d097c
mov rax, qword [rbp]
mov r9, r15
mov r8, rdi
mov edx, reloc.WS2_32.dll_recv
mov rcx, r14
call qword [rax]
jmp 0x1401d0947
mov eax, dword [rbp - 0x44]
cmp eax, ebx
jge 0x1401d097c
xor edx, edx
mov ebx, eax
mov r13d, edx
mov dword [rbp - 0x78], edx
mov esi, edx
mov dword [rsp + 0x50], edx
jmp 0x1401d0978
mov eax, dword [rsp + 0x70]
add r9d, 2
sar r9d, 2
cmp r9d, eax
jge 0x1401d06a8
mov r9d, eax
mov dword [rsp + 0x60], eax
jmp 0x1401d06bc
cmp r9d, dword [rbp + 0xc4]
cmovg r9d, dword [rbp + 0xc4]
mov dword [rsp + 0x60], r9d
mov eax, dword [rbp + 0xc0]
mov r13d, r9d
movsx ecx, r15w
add ecx, 2
mov dword [rbp - 0x78], r9d
sar ecx, 2
cmp ecx, eax
jge 0x1401d06db
mov ecx, eax
jmp 0x1401d06e8
cmp ecx, dword [rbp + 0xb4]
cmovg ecx, dword [rbp + 0xb4]
movzx eax, r9w
mov r10d, ecx
shl r10d, 0x10
mov esi, ecx
add r10d, eax
mov dword [rsp + 0x68], ecx
mov eax, ecx
mov dword [rbp + 0xe0], r10d
imul eax, edx
lea r10, [r8 + 0x1704]
mov dword [rsp + 0x50], ecx
mov r15, rdx
mov qword [rbp + 0xd0], rdx
mov rcx, r14
mov qword [rbp - 0x28], r10
add eax, r9d
mov r9, rdx
movsxd r8, eax
mov edx, reloc.WS2_32.dll_recv
mov rax, qword [rbp + 0x330]
add r8, rdi
call qword [rax + r10*8]
cmp dword [rbp + 0x348], 0
mov r8d, 1
mov ebx, eax
mov qword [rbp + 0x120], r8
mov qword [rbp - 0x40], rbx
jle 0x1401d0921
xor edx, edx
cmp qword [rbp + 0x90], rdx
jle 0x1401d0921
mov r12, qword [rbp + 0x330]
lea r10, [rbp + 0x18a]
mov r15, qword [rbp + 0x340]
mov r11d, edx
mov r14, qword [rbp + 0x90]
mov r13d, edx
mov esi, dword [rbp + 0xe0]
nop word [rax + rax]
movsx edx, word [r15 + r11*4 + 2]
movsx ecx, word [r15 + r11*4]
add edx, 2
sar edx, 2
add ecx, 2
sar ecx, 2
mov r9d, edx
shl r9d, 0x10
movzx eax, cx
add r9d, eax
je 0x1401d0815
cmp r9d, esi
je 0x1401d0815
movsx eax, word [r12 + 0x6040]
cmp ecx, eax
jl 0x1401d07e8
movsx eax, word [r12 + 0x6044]
cmp ecx, eax
cmovg ecx, eax
mov eax, ecx
mov word [r10 - 2], ax
movsx eax, word [r12 + 0x6042]
cmp edx, eax
jl 0x1401d080a
movsx eax, word [r12 + 0x6046]
cmp edx, eax
cmovg edx, eax
mov eax, edx
inc r13d
mov word [r10], ax
add r10, 4
inc r11
cmp r11, r14
jl 0x1401d07a0
mov esi, dword [rsp + 0x50]
test r13d, r13d
mov r15, qword [rbp + 0xd0]
mov r12, qword [rbp + 0x10]
mov r14, qword [rbp + 0xb8]
mov dword [rsp + 0x64], r13d
mov r13d, dword [rbp - 0x78]
jle 0x1401d0921
mov eax, dword [rbp + 0xe0]
mov r13, r8
mov rcx, qword [rbp - 0x28]
mov dword [rbp + 0x184], eax
movsxd rax, dword [rsp + 0x64]
mov qword [rbp - 0x50], rax
mov rax, qword [rbp + 0x330]
mov dword [rsp + 0x58], r8d
shl ebx, 4
lea r10, [rax + rcx*8]
mov qword [rbp - 0x60], r10
nop dword [rax + rax]
movsx edi, word [rbp + r13*4 + 0x186]
mov r9, r15
movsx esi, word [rbp + r13*4 + 0x184]
mov eax, edi
imul eax, r15d
mov edx, reloc.WS2_32.dll_recv
mov rcx, r14
add eax, esi
movsxd r8, eax
add r8, qword [rbp + 0x60]
call qword [r10]
mov r10, qword [rbp - 0x60]
lea ecx, [rdi*4]
movsxd rdx, ecx
mov rcx, qword [rsp + 0x78]
movzx edx, word [rcx + rdx*2]
add edx, eax
lea eax, [rsi*4]
movsxd rcx, eax
movzx eax, word [r12 + rcx*2]
mov ecx, dword [rsp + 0x58]
add eax, edx
shl eax, 4
add eax, ecx
cmp eax, ebx
cmovge eax, ebx
inc ecx
inc r13
mov dword [rsp + 0x58], ecx
mov ebx, eax
cmp r13, qword [rbp - 0x50]
jle 0x1401d0880
mov rdi, qword [rbp + 0x60]
mov eax, ebx
and eax, 0xf
sar ebx, 4
mov qword [rbp - 0x40], rbx
movsx r13d, word [rbp + rax*4 + 0x184]
movsx esi, word [rbp + rax*4 + 0x186]
mov dword [rbp - 0x78], r13d
mov dword [rsp + 0x50], esi
cmp dword [rbp + 0xe0], 0
je 0x1401d097c
mov rax, qword [rbp + 0x330]
mov r9, r15
mov r10, qword [rbp - 0x28]
mov r8, rdi
mov edx, reloc.WS2_32.dll_recv
mov rcx, r14
call qword [rax + r10*8]
mov rcx, qword [rsp + 0x78]
movzx edx, word [rcx]
movzx ecx, word [r12]
add edx, eax
add ecx, edx
xor edx, edx
cmp ecx, ebx
mov eax, edx
cmovge eax, esi
cmovge ecx, ebx
mov esi, eax
mov dword [rsp + 0x50], eax
mov eax, edx
mov ebx, ecx
cmovge eax, r13d
mov dword [rbp - 0x78], eax
mov r13d, eax
mov qword [rbp - 0x40], rbx
mov rcx, qword [rbp + 0x330]
mov eax, dword [rcx + 0x5fc4]
test eax, eax
je 0x1401d441e
cmp eax, 1
je 0x1401d3d5c
cmp eax, 2
je 0x1401d1495
add eax, 0xfffffffd
lea r10, [0x140000000]
cmp eax, 1
ja 0x1401d4414
mov eax, dword [rbp - 0x68]
mov r14d, r13d
mov rdi, qword [rbp + 0x330]
sub r14d, eax
cmp r14d, dword [rsp + 0x70]
mov r12d, esi
mov edx, 6
cmovle r14d, dword [rsp + 0x70]
lea ecx, [rax + r13]
sub r12d, eax
cmp r12d, dword [rbp + 0xc0]
cmovle r12d, dword [rbp + 0xc0]
add eax, esi
cmp eax, dword [rbp + 0xb4]
cmovge eax, dword [rbp + 0xb4]
cmp ecx, dword [rbp + 0xc4]
mov dword [rbp + 0x98], eax
cmovge ecx, dword [rbp + 0xc4]
sub ecx, r14d
add ecx, 3
and ecx, 0xfffffffc
cmp dword [rsp + 0x5c], 3
mov dword [rsp + 0x64], ecx
mov rcx, qword [rbp + 0x338]
mov rax, qword [rcx + 0xa0]
mov qword [rbp + 0x120], rax
mov eax, listen
cmovle eax, edx
movzx r8d, byte [rax + r10 + 0x32dab8]
mov r10d, 0xba08
mov rax, qword [rdi + 0xb448]
mov qword [rbp + 0xd8], rax
movsx eax, word [rcx + 0xb4]
movsxd rcx, dword [rdi + 0x9660]
neg eax
movsxd rdx, eax
mov rax, rdx
mov dword [rbp + 0x68], r8d
and eax, 3
sar rdx, 2
lea rax, [rax + rcx*4]
mov ecx, r8d
mov rax, qword [rdi + rax*8 + 0xd38]
mov rdi, qword [rbp + 0xb8]
shl ecx, 4
cmp dword [rsp + 0x5c], 3
lea rax, [rax + rdx*2]
mov rdx, rdi
mov qword [rbp + 0xa8], rax
mov eax, 0xb9f0
cmovle r10d, eax
lea r9, [rcx + rdi]
lea rax, [r8 + rcx]
add r8, rdi
add rax, rdi
lea rcx, [rbp + 0x140]
mov qword [rsp + 0x30], rcx
lea rcx, [0x14039c2c0]
mov qword [rsp + 0x28], reloc.WS2_32.dll_recv
mov qword [rsp + 0x20], rax
mov rax, qword [rbp + 0x330]
call qword [r10 + rax]
mov r8d, dword [rbp + 0x68]
mov r11, qword [rbp + 0x330]
mov r10, qword [rbp + 0x120]
cmp r8d, 4
jne 0x1401d0b27
mov rax, qword [r11 + 0x5190]
mov eax, dword [rax + 0xbc]
add eax, 0x40
imul eax, dword [rsp + 0x54]
cdqe
lea r10, [r10 + rax*2]
mov qword [rbp + 0x120], r10
movsxd rdx, dword [rsp + 0x5c]
mov ecx, dword [rsp + 0x54]
cmp edx, 5
ja 0x1401d0b47
mov eax, Ordinal_41
bt eax, edx
jae 0x1401d0b47
imul r8d, ecx
mov dword [rbp + 0x68], r8d
cmp edx, 2
je 0x1401d0b51
cmp edx, 5
jne 0x1401d0b5d
mov eax, dword [rbp + 0x148]
mov dword [rbp + 0x144], eax
cmp dword [r11 + 0x5fc4], 4
jne 0x1401d1140
movsxd rax, dword [rsp + 0x64]
mov rcx, qword [rbp + 0xd8]
add rax, 0x1f
and rax, 0xffffffffffffffe0
lea rcx, [rcx + rax*2]
xor eax, eax
add rcx, 8
mov dword [rsp + 0x70], eax
mov qword [rbp + 0x80], rcx
mov r15d, eax
mov ecx, dword [rbp - 0x68]
cmp ecx, 0x10
jg 0x1401d0bab
mov dword [rbp + 0xa0], 0xa
jmp 0x1401d0bba
cmp ecx, 0x18
setg al
add eax, 0xb
mov dword [rbp + 0xa0], eax
mov r9, qword [rbp + 0xd0]
mov eax, esi
imul eax, dword [rsp + 0x54]
mov r10, rdx
movsxd rcx, r13d
mov edx, reloc.WS2_32.dll_recv
movsxd r8, eax
add r8, rcx
mov rcx, rdi
add r8, qword [rbp + 0x60]
call qword [r11 + r10*8 + 0xb688]
mov r8, qword [rsp + 0x78]
lea ecx, [rsi*4]
mov r9, qword [rbp + 0xd0]
movsxd rdx, ecx
movzx edx, word [r8 + rdx*2]
add edx, eax
lea eax, [r13*4]
movsxd rcx, eax
mov rax, qword [rbp + 0x10]
movzx edi, word [rax + rcx*2]
add edi, edx
cmp r12d, dword [rbp + 0x98]
jg 0x1401d0fa4
mov rbx, qword [rbp + 0x80]
mov eax, r12d
imul eax, dword [rsp + 0x54]
mov esi, r15d
mov r13, qword [rbp + 0xa8]
movsxd rdx, eax
mov qword [rbp + 0x70], rdx
nop word [rax + rax]
lea eax, [r12*4]
movsxd rcx, eax
movzx eax, word [r8 + rcx*2]
mov dword [rbp - 0x80], eax
cmp edi, eax
jle 0x1401d0f7c
mov r15, qword [rbp + 0x330]
sub edi, eax
movsxd r10, dword [rsp + 0x5c]
mov r8d, dword [rbp + 0x68]
movsxd rax, r14d
add rdx, rax
imul ecx, edi, 0x11
mov qword [rbp - 0x50], rdx
lea r9, [rax*2]
mov rax, qword [rbp + 0x120]
add r9, r13
sar ecx, 4
mov dword [rsp + 0x30], ecx
lea rcx, [rbp + 0x140]
lea rdx, [rax + rdx*2]
mov eax, dword [rsp + 0x64]
mov dword [rsp + 0x28], eax
mov rax, qword [rbp + 0xd8]
mov qword [rsp + 0x20], rax
call qword [r15 + r10*8 + 0xba80]
xor r8d, r8d
mov dword [rbp + 0xb0], eax
mov qword [rbp + 0x90], r8
lea ecx, [rax - 2]
movsxd rdx, ecx
test ecx, ecx
jle 0x1401d0e91
movsxd rcx, dword [rsp + 0x5c]
add r15, 0xb9a0
mov r10, qword [rbp - 0x50]
movabs rax, 0xaaaaaaaaaaaaaaab
add r10, qword [rbp + 0x60]
movsxd r13, esi
lea r11, [r15 + rcx*8]
mov qword [rbp - 0x50], r10
mov r15, qword [rbp + 0xd8]
lea rcx, [rdx - 1]
mul rcx
add r15, 4
mov qword [rbp - 0x30], r11
mov rax, rdx
shr rax, 1
inc rax
mov qword [rbp - 0x60], rax
lea rax, [rax + rax*2]
mov qword [rbp + 0x90], rax
nop
movsx r9, word [r15]
lea rax, [rbp + 0x170]
movsx r8, word [r15 - 2]
add r9, r10
movsx rdx, word [r15 - 4]
add r8, r10
mov rcx, qword [rbp + 0xb8]
add rdx, r10
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0xd0]
mov qword [rsp + 0x20], rax
call qword [r11]
movsx rax, word [r15 - 4]
mov r10, qword [rbp + 0xa8]
mov r9d, dword [rbp + 0xa0]
mov r8d, dword [rbp - 0x80]
movzx edx, word [r10 + rax*2]
mov eax, edi
add edx, dword [rbp + 0x170]
imul eax, r9d
sar eax, 3
cmp edx, eax
jge 0x1401d0dd1
lea eax, [rdx + r8]
inc esi
mov dword [rbx + r13*8], eax
movzx eax, r14w
add ax, word [r15 - 4]
mov word [rbx + r13*8 + 4], ax
mov word [rbx + r13*8 + 6], r12w
inc r13
cmp edx, edi
cmovge edx, edi
mov edi, edx
movsx rax, word [r15 - 2]
movzx edx, word [r10 + rax*2]
mov eax, edi
add edx, dword [rbp + 0x174]
imul eax, r9d
sar eax, 3
cmp edx, eax
jge 0x1401d0e17
lea eax, [rdx + r8]
inc esi
mov dword [rbx + r13*8], eax
movzx eax, r14w
add ax, word [r15 - 2]
mov word [rbx + r13*8 + 4], ax
mov word [rbx + r13*8 + 6], r12w
inc r13
cmp edx, edi
cmovge edx, edi
mov edi, edx
movsx rax, word [r15]
movzx edx, word [r10 + rax*2]
mov eax, edi
add edx, dword [rbp + 0x178]
imul eax, r9d
sar eax, 3
cmp edx, eax
jge 0x1401d0e5b
lea eax, [rdx + r8]
inc esi
mov dword [rbx + r13*8], eax
movzx eax, r14w
add ax, word [r15]
mov word [rbx + r13*8 + 4], ax
mov word [rbx + r13*8 + 6], r12w
inc r13
cmp edx, edi
cmovge edx, edi
mov edi, edx
mov r10, qword [rbp - 0x50]
add r15, 6
sub qword [rbp - 0x60], 1
mov r11, qword [rbp - 0x30]
jne 0x1401d0d40
mov r15, qword [rbp + 0x330]
mov r8, qword [rbp + 0x90]
mov r13, qword [rbp + 0xa8]
mov eax, dword [rbp + 0xb0]
mov dword [rsp + 0x70], esi
cdqe
cmp r8, rax
jge 0x1401d0f69
movsxd r10, dword [rsp + 0x5c]
add r10, 0x16d1
movsxd rax, esi
lea r10, [r15 + r10*8]
lea r15, [rbx + 6]
mov qword [rbp - 0x50], r10
mov rbx, qword [rbp + 0xd0]
lea r15, [r15 + rax*8]
mov rax, qword [rbp + 0xd8]
mov r9, rbx
mov rcx, qword [rbp + 0xb8]
mov edx, reloc.WS2_32.dll_recv
movsx r13d, word [rax + r8*2]
add r13d, r14d
movsxd r8, r13d
add r8, qword [rbp + 0x70]
add r8, qword [rbp + 0x60]
call qword [r10]
mov r8, qword [rbp + 0x90]
mov rcx, qword [rbp + 0xd8]
mov rdx, qword [rbp + 0xa8]
movsx rcx, word [rcx + r8*2]
movzx ecx, word [rdx + rcx*2]
add ecx, eax
mov eax, edi
imul eax, dword [rbp + 0xa0]
sar eax, 3
cmp ecx, eax
jge 0x1401d0f3d
mov eax, dword [rbp - 0x80]
inc esi
add eax, ecx
mov dword [r15 - 6], eax
mov word [r15 - 2], r13w
mov word [r15], r12w
add r15, 8
cmp ecx, edi
cmovge ecx, edi
mov edi, ecx
movsxd rcx, dword [rbp + 0xb0]
inc r8
mov r10, qword [rbp - 0x50]
mov qword [rbp + 0x90], r8
cmp r8, rcx
jl 0x1401d0ec2
mov rbx, qword [rbp + 0x80]
mov r13, rdx
mov dword [rsp + 0x70], esi
add edi, dword [rbp - 0x80]
mov r9, qword [rbp + 0xd0]
mov r8, qword [rsp + 0x78]
mov rdx, qword [rbp + 0x70]
add rdx, r9
inc r12d
mov qword [rbp + 0x70], rdx
cmp r12d, dword [rbp + 0x98]
jle 0x1401d0c50
mov rbx, qword [rbp - 0x40]
mov r13d, dword [rbp - 0x78]
mov esi, dword [rsp + 0x50]
mov r15d, dword [rsp + 0x70]
mov eax, dword [rbp - 0x68]
mov r11d, edi
imul r11d, dword [rbp + 0xa0]
sar eax, 1
mov dword [rbp - 0x68], eax
sar r11d, 3
lea r12d, [rax + rax]
cmp r15d, r12d
jle 0x1401d102d
xor r13d, r13d
cmp r11d, edi
jle 0x1401d1026
mov r8, qword [rbp + 0x80]
add r11d, edi
sar r11d, 1
mov r10d, r13d
movsxd r14, r15d
mov rdx, r13
test r15d, r15d
jle 0x1401d0ff8
cmp dword [r8 + rdx*8], r11d
jg 0x1401d0ff8
inc r10d
inc rdx
cmp rdx, r14
jl 0x1401d0fe7
cmp rdx, r14
jge 0x1401d101e
nop dword [rax]
mov rcx, qword [r8 + rdx*8]
inc rdx
movsxd rax, r10d
mov qword [r8 + rax*8], rcx
sub ecx, r11d
dec ecx
shr ecx, 0x1f
add r10d, ecx
cmp rdx, r14
jl 0x1401d1000
mov r15d, r10d
cmp r10d, r12d
jg 0x1401d0fc7
mov r13d, dword [rbp - 0x78]
mov eax, dword [rbp - 0x68]
mov rdx, qword [rbp + 0x80]
movsxd r11, r15d
movsxd r14, eax
cmp r11, r14
jle 0x1401d108f
mov eax, r14d
mov edi, 1
sub eax, r11d
add r15d, eax
xor esi, esi
nop
mov r10, rsi
mov r8, rdi
cmp rdi, r11
jge 0x1401d107a
nop dword [rax + rax]
mov eax, dword [rdx + r10*8]
mov rcx, r8
cmp dword [rdx + r8*8], eax
cmovle rcx, r10
inc r8
mov r10, rcx
cmp r8, r11
jl 0x1401d1060
mov rax, qword [rdx + r11*8 - 8]
dec r11
mov qword [rdx + r10*8], rax
cmp r11, r14
jg 0x1401d1050
mov esi, dword [rsp + 0x50]
mov r12, qword [rbp + 0x10]
test r15d, r15d
movsxd rax, r15d
mov r15, qword [rsp + 0x78]
mov qword [rbp - 0x60], rax
jle 0x1401d1415
mov rax, qword [rbp + 0x330]
lea r14, [rdx + 4]
mov rcx, qword [rbp - 0x28]
lea r10, [rax + rcx*8]
mov qword [rbp - 0x50], r10
nop
movsx ecx, word [r14 + 2]
mov edx, reloc.WS2_32.dll_recv
imul ecx, dword [rsp + 0x54]
movsx eax, word [r14]
movsx edi, word [r14 + 2]
add ecx, eax
movsxd r8, ecx
add r8, qword [rbp + 0x60]
mov rcx, qword [rbp + 0xb8]
call qword [r10]
movsx r8d, word [r14]
lea ecx, [rdi*4]
mov r9, qword [rbp + 0xd0]
lea r14, [r14 + 8]
mov r10, qword [rbp - 0x50]
movsxd rdx, ecx
movzx edx, word [r15 + rdx*2]
add edx, eax
lea eax, [r8*4]
movsxd rcx, eax
movzx ecx, word [r12 + rcx*2]
add ecx, edx
cmp ecx, ebx
cmovge edi, esi
cmovge r8d, r13d
cmovge ecx, ebx
mov esi, edi
sub qword [rbp - 0x60], 1
mov r13d, r8d
mov ebx, ecx
jne 0x1401d10c0
jmp 0x1401d1415
cmp r12d, dword [rbp + 0x98]
jg 0x1401d140c
mov edx, r12d
imul edx, ecx
mov dword [rsp + 0x70], edx
nop word [rax + rax]
lea eax, [r12*4]
movsxd rcx, eax
mov rax, qword [rsp + 0x78]
lea rax, [rax + rcx*2]
mov qword [rbp - 0x30], rax
movzx eax, word [rax]
mov dword [rbp - 0x48], eax
cmp ebx, eax
jle 0x1401d13ed
mov rcx, qword [rbp + 0xa8]
sub ebx, eax
mov rdi, qword [rbp + 0x330]
movsxd rdx, edx
movsxd rax, r14d
mov dword [rsp + 0x30], ebx
lea r9, [rcx + rax*2]
add rax, rdx
lea rcx, [rbp + 0x140]
lea rdx, [r10 + rax*2]
mov eax, dword [rsp + 0x64]
movsxd r10, dword [rsp + 0x5c]
mov dword [rsp + 0x28], eax
mov rax, qword [rbp + 0xd8]
mov qword [rsp + 0x20], rax
call qword [rdi + r10*8 + 0xba80]
mov ecx, eax
mov dword [rbp + 0xb0], eax
add ecx, 0xfffffffe
xor eax, eax
movsxd rcx, ecx
mov qword [rbp + 0x90], rax
test rcx, rcx
jle 0x1401d1335
movsxd rdx, dword [rsp + 0x5c]
add rdi, 0xb860
movabs rax, 0xaaaaaaaaaaaaaaab
lea r11, [rdi + rdx*8]
mov rdi, qword [rbp + 0xd8]
add rdi, 4
mov qword [rbp - 0x50], r11
dec rcx
mul rcx
mov rax, rdx
shr rax, 1
inc rax
mov qword [rbp - 0x60], rax
lea rax, [rax + rax*2]
mov qword [rbp + 0x90], rax
nop word [rax + rax]
mov rcx, qword [rbp + 0x60]
movsx eax, word [rdi]
add eax, r14d
movsxd r9, eax
movsxd rax, dword [rsp + 0x70]
add r9, rcx
mov r10, rax
add r9, rax
movsx eax, word [rdi - 2]
add eax, r14d
movsxd r8, eax
movsx eax, word [rdi - 4]
add r8, rcx
add eax, r14d
add r8, r10
movsxd rdx, eax
lea rax, [rbp + 0x20]
add rdx, rcx
mov qword [rsp + 0x28], rax
mov rcx, qword [rbp + 0xb8]
add rdx, r10
mov qword [rsp + 0x20], r15
call qword [r11]
movsx eax, word [rdi - 4]
mov rdx, qword [rbp + 0x10]
add eax, r14d
shl eax, 2
cdqe
movzx r9d, word [rdx + rax*2]
add r9d, dword [rbp + 0x20]
mov dword [rbp + 0x20], r9d
movsx eax, word [rdi - 2]
add eax, r14d
shl eax, 2
cdqe
movzx r8d, word [rdx + rax*2]
add r8d, dword [rbp + 0x24]
mov dword [rbp + 0x24], r8d
movsx eax, word [rdi]
add eax, r14d
shl eax, 2
cdqe
movzx edx, word [rdx + rax*2]
add edx, dword [rbp + 0x28]
mov dword [rbp + 0x28], edx
cmp r9d, ebx
jge 0x1401d12f1
movsx r13d, word [rdi - 4]
mov esi, r12d
add r13d, r14d
mov ebx, r9d
cmp r8d, ebx
jge 0x1401d1304
movsx r13d, word [rdi - 2]
mov esi, r12d
add r13d, r14d
mov ebx, r8d
cmp edx, ebx
jge 0x1401d1314
movsx r13d, word [rdi]
mov esi, r12d
add r13d, r14d
mov ebx, edx
mov r11, qword [rbp - 0x50]
add rdi, 6
sub qword [rbp - 0x60], 1
jne 0x1401d1240
mov rdi, qword [rbp + 0x330]
mov rax, qword [rbp + 0x90]
add ebx, dword [rbp - 0x48]
movsxd rcx, dword [rbp + 0xb0]
mov edx, dword [rsp + 0x70]
cmp rax, rcx
jge 0x1401d13e9
mov rcx, qword [rbp - 0x28]
add edx, r14d
mov dword [rbp - 0x48], edx
lea r10, [rdi + rcx*8]
mov qword [rbp - 0x50], r10
nop
mov rcx, qword [rbp + 0xd8]
mov r9, r15
movsx eax, word [rcx + rax*2]
mov rcx, qword [rbp + 0xb8]
lea edi, [r14 + rax]
add eax, edx
movsxd r8, eax
mov edx, reloc.WS2_32.dll_recv
add r8, qword [rbp + 0x60]
call qword [r10]
movsxd r8, dword [rbp + 0xb0]
lea ecx, [rdi*4]
mov r10, qword [rbp - 0x50]
movsxd rdx, ecx
mov rcx, qword [rbp + 0x10]
movzx edx, word [rcx + rdx*2]
add edx, eax
mov rax, qword [rbp - 0x30]
movzx ecx, word [rax]
mov eax, r12d
add ecx, edx
mov edx, dword [rbp - 0x48]
cmp ecx, ebx
cmovge eax, esi
cmovge edi, r13d
cmovge ecx, ebx
mov esi, eax
mov rax, qword [rbp + 0x90]
mov r13d, edi
inc rax
mov ebx, ecx
mov qword [rbp + 0x90], rax
cmp rax, r8
jl 0x1401d1360
mov edx, dword [rsp + 0x70]
mov r8d, dword [rbp + 0x68]
add edx, dword [rsp + 0x54]
inc r12d
mov r10, qword [rbp + 0x120]
mov dword [rsp + 0x70], edx
cmp r12d, dword [rbp + 0x98]
jle 0x1401d1160
mov r12, qword [rbp + 0x10]
mov r15, qword [rsp + 0x78]
lea r10, [0x140000000]
movzx eax, r13w
mov r9d, esi
shl r9d, 0x10
add r9d, eax
mov rax, qword [rbp + 0x330]
mov r8d, r9d
and r8d, 0xffff3fff
shl r8d, 2
cmp dword [rax + 0x5fc8], 3
jge 0x1401d45c5
lea eax, [rsi*4]
movsxd rcx, eax
lea eax, [r13*4]
movzx edx, word [r15 + rcx*2]
movsxd rcx, eax
movzx ecx, word [r12 + rcx*2]
add ecx, edx
mov rdx, qword [rbp + 0x338]
mov dword [rdx + 0xb8], ecx
mov dword [rdx + 0xbc], ebx
cmp r9d, dword [rbp + 0xe0]
jne 0x1401d45e8
lea eax, [rcx + rbx]
jmp 0x1401d45e2
mov eax, dword [rsp + 0x68]
lea rcx, [rbp + 0x20]
imul eax, dword [rsp + 0x54]
movsxd r8, dword [rsp + 0x5c]
movsxd rdx, dword [rsp + 0x60]
mov qword [rsp + 0x30], rcx
mov rcx, r14
mov qword [rsp + 0x28], r15
cdqe
add rax, rdi
mov dword [rbp + 0x108], ebx
add rdx, rax
mov eax, dword [rsp + 0x54]
neg eax
movsxd r11, eax
mov rax, qword [rbp + 0x330]
add rax, 0xb898
mov qword [rbp + 0x70], r11
lea r9, [rdx - 1]
lea r10, [rax + r8*8]
lea rax, [rdx + 1]
mov qword [rbp + 0xd8], r10
lea r8, [rdx + r15]
mov qword [rsp + 0x20], rax
add rdx, r11
call qword [r10]
mov r10, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x68]
lea eax, [rcx*4]
movsxd r9, eax
mov eax, dword [rsp + 0x60]
lea eax, [rax*4]
movsxd rcx, eax
movzx edi, word [r12 + rcx*2]
lea r8, [r12 + rcx*2]
movzx ecx, word [r10 + r9*2 - 8]
add ecx, dword [rbp + 0x20]
mov eax, dword [rsp + 0x60]
add edi, ecx
mov dword [rbp + 0x20], edi
movzx ecx, word [r10 + r9*2 + 8]
add ecx, dword [rbp + 0x24]
movzx r11d, word [r8]
lea eax, [rax*4]
add r11d, ecx
movsxd r9, eax
mov eax, dword [rsp + 0x68]
mov dword [rbp + 0x24], r11d
lea eax, [rax*4]
movsxd rcx, eax
mov eax, dword [rbp + 0x2c]
lea r8, [r10 + rcx*2]
movzx ecx, word [r12 + r9*2 - 8]
add ecx, dword [rbp + 0x28]
movzx r10d, word [r8]
add r10d, ecx
mov dword [rbp + 0x28], r10d
movzx ecx, word [r12 + r9*2 + 8]
mov r9d, r10d
movzx edx, word [r8]
add eax, ecx
mov ecx, dword [rsp + 0x68]
add eax, edx
cmp edi, ebx
mov dword [rbp - 0x80], eax
mov dword [rbp + 0x2c], eax
mov r8d, edi
cmovge r8d, ebx
mov edx, r11d
cmp r11d, r8d
cmovge edx, r8d
cmp r10d, edx
cmovge r9d, edx
dec ecx
cmp edi, ebx
cmovge ecx, esi
mov esi, dword [rsp + 0x68]
cmp r11d, r8d
lea eax, [rsi + 1]
cmovge eax, ecx
mov ecx, esi
cmp r10d, edx
cmovge ecx, eax
cmp dword [rbp - 0x80], r9d
mov eax, dword [rsp + 0x60]
cmovge esi, ecx
cmp edi, ebx
mov rdi, qword [rbp + 0x60]
mov ecx, eax
cmovge ecx, r13d
mov dword [rsp + 0x50], esi
cmp r11d, r8d
mov r8d, dword [rsp + 0x60]
cmovge eax, ecx
cmp r10d, edx
mov edx, dword [rsp + 0x68]
lea ecx, [r8 - 1]
cmovge ecx, eax
lea r13d, [r8 + 1]
mov eax, dword [rbp - 0x80]
cmp eax, r9d
cmovge eax, r9d
cmovge r13d, ecx
mov dword [rbp - 0x80], eax
mov ebx, eax
mov eax, edx
mov dword [rbp - 0x78], r13d
or eax, r8d
je 0x1401d1737
mov rdx, qword [rbp + 0x70]
lea rcx, [rbp + 0x20]
mov qword [rsp + 0x30], rcx
lea rax, [rdi + 1]
mov qword [rsp + 0x28], r15
lea r9, [rdi - 1]
mov qword [rsp + 0x20], rax
lea r8, [rdi + r15]
mov rax, qword [rbp + 0xd8]
add rdx, rdi
mov rcx, r14
call qword [rax]
mov r11, qword [rsp + 0x78]
mov ebx, 0xffffffff
movzx r10d, word [r12]
mov eax, dword [rbp + 0x2c]
movzx ecx, word [r11 - 8]
add ecx, dword [rbp + 0x20]
add r10d, ecx
mov dword [rbp + 0x20], r10d
movzx ecx, word [r11 + 8]
add ecx, dword [rbp + 0x24]
movzx r8d, word [r12]
add r8d, ecx
mov dword [rbp + 0x24], r8d
movzx r9d, word [r11]
movzx ecx, word [r12 - 8]
add ecx, dword [rbp + 0x28]
add r9d, ecx
mov dword [rbp + 0x28], r9d
movzx edx, word [r11]
mov r11d, 1
movzx ecx, word [r12 + 8]
add eax, ecx
mov ecx, dword [rbp - 0x80]
add eax, edx
cmp r10d, ecx
mov dword [rbp + 0x2c], eax
cmovl esi, ebx
xor eax, eax
cmp r10d, ecx
cmovge eax, r13d
cmovge r10d, ecx
cmp r8d, r10d
mov ecx, r8d
cmovl esi, r11d
cmovge ecx, r10d
xor r13d, r13d
mov edx, esi
cmp r8d, r10d
cmovge r13d, eax
cmp r9d, ecx
mov eax, r9d
cmovl r13d, ebx
cmovge eax, ecx
xor r8d, r8d
mov dword [rbp - 0x78], r13d
cmp r9d, ecx
mov esi, r8d
mov ecx, dword [rbp + 0x2c]
mov ebx, eax
cmovge esi, edx
mov edx, dword [rsp + 0x68]
mov dword [rsp + 0x50], esi
cmp ecx, eax
jge 0x1401d1732
mov r13d, r11d
mov dword [rbp - 0x78], r11d
mov esi, r8d
mov dword [rsp + 0x50], r8d
mov ebx, ecx
mov r8d, dword [rsp + 0x60]
movsxd r9, dword [rsp + 0x5c]
cmp r9d, 6
je 0x1401d3d55
mov eax, esi
mov dword [rsp + 0x58], ebx
or eax, r13d
mov dword [rbp + 0x88], ebx
je 0x1401d18ab
mov ecx, esi
mov eax, r13d
sub ecx, edx
sub eax, r8d
or ecx, eax
je 0x1401d18ab
mov eax, esi
movsxd rcx, r13d
imul eax, dword [rsp + 0x54]
mov r10, r9
mov dword [rbp - 0x48], r13d
mov dword [rsp + 0x6c], esi
movsxd rdx, eax
add rdx, rcx
lea rcx, [rbp + 0x20]
add rdx, rdi
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r15
mov rcx, r14
lea rax, [rdx + 1]
mov qword [rsp + 0x20], rax
lea r9, [rdx - 1]
mov rax, qword [rbp + 0x330]
lea r8, [rdx + r15]
add rdx, qword [rbp + 0x70]
call qword [rax + r10*8 + 0xb898]
mov rdi, qword [rsp + 0x78]
lea eax, [rsi*4]
movsxd r9, eax
lea eax, [r13*4]
movsxd rcx, eax
lea eax, [r13*4]
movzx r11d, word [r12 + rcx*2]
lea r8, [r12 + rcx*2]
movzx ecx, word [rdi + r9*2 - 8]
add ecx, dword [rbp + 0x20]
add r11d, ecx
mov dword [rbp + 0x20], r11d
mov edx, r11d
movzx ecx, word [rdi + r9*2 + 8]
add ecx, dword [rbp + 0x24]
movzx r10d, word [r8]
add r10d, ecx
movsxd r9, eax
mov dword [rbp + 0x24], r10d
lea eax, [rsi*4]
movsxd rcx, eax
lea eax, [rsi + 1]
lea r8, [rdi + rcx*2]
movzx ecx, word [r12 + r9*2 - 8]
add ecx, dword [rbp + 0x28]
movzx edi, word [r8]
add edi, ecx
mov dword [rbp + 0x28], edi
movzx ecx, word [r12 + r9*2 + 8]
add ecx, dword [rbp + 0x2c]
movzx r9d, word [r8]
mov r8d, r10d
add r9d, ecx
lea ecx, [rsi - 1]
cmp r11d, ebx
mov dword [rbp + 0x2c], r9d
cmovge edx, ebx
cmp r10d, edx
cmovge r8d, edx
cmp r11d, ebx
cmovge ecx, esi
cmp r10d, edx
cmovge eax, ecx
cmp edi, r8d
mov ecx, edi
cmovge esi, eax
cmovge ecx, r8d
lea eax, [r13 - 1]
mov dword [rsp + 0x50], esi
cmovge eax, r13d
mov ebx, ecx
mov dword [rbp - 0x78], eax
mov r13d, eax
cmp r9d, ecx
jge 0x1401d18a6
mov r13d, dword [rbp - 0x48]
mov ebx, r9d
mov esi, dword [rsp + 0x6c]
inc r13d
mov dword [rbp - 0x78], r13d
mov dword [rsp + 0x50], esi
mov r9d, dword [rsp + 0x5c]
cmp ebx, dword [rbp + 0x88]
mov ecx, 3
mov rdi, qword [rbp + 0x60]
mov edx, 1
cmovne ecx, edx
movsxd r8, r13d
movsxd rax, esi
mov dword [rbp + 0x100], ecx
mov dword [rbp - 0x58], ecx
mov dword [rbp - 0x48], r13d
mov dword [rsp + 0x64], esi
mov dword [rbp - 0x38], esi
mov dword [rbp - 0x80], r13d
mov dword [rsp + 0x60], r13d
mov dword [rbp + 0x98], r13d
mov dword [rsp + 0x68], esi
mov dword [rbp + 0xa0], esi
mov qword [rbp + 0x80], r8
mov qword [rbp + 0x110], rax
cmp ebx, dword [rsp + 0x58]
jne 0x1401d28e9
lea rax, [0x140000000]
movsxd r9, r9d
lea r10, [rax + 0x32daec]
mov dword [rbp - 0x58], ecx
add r10, r9
mov eax, 0x7d0
mov qword [rbp + 0x130], r10
movzx ecx, byte [r10]
sar eax, cl
cmp ebx, eax
jge 0x1401d28e9
mov rcx, qword [rbp + 0x70]
mov eax, esi
imul eax, dword [rsp + 0x54]
movsxd rdx, eax
mov dword [rbp + 0x68], eax
add rdx, r8
mov eax, dword [rsp + 0x54]
lea r8, [rcx - 1]
add rdx, rdi
neg eax
add eax, eax
mov qword [rbp - 0x50], rdx
movsxd r11, eax
add r8, rdx
mov dword [rbp + 0xa8], eax
mov rax, qword [rbp + 0x330]
add rax, 0xb898
mov qword [rbp + 0x160], r11
lea r10, [rax + r9*8]
lea r9, [rcx + 1]
mov qword [rbp - 0x60], r10
lea rax, [rdx - 2]
add r9, rdx
lea rcx, [rbp + 0x20]
add rdx, r11
mov qword [rsp + 0x30], rcx
mov rcx, r14
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
call qword [r10]
mov r9, qword [rsp + 0x78]
lea ecx, [rsi - 2]
mov dword [rbp + 0xf4], ecx
lea eax, [r13*4]
mov dword [rbp + 0x118], eax
cdqe
lea r8, [rax + rax]
movzx r11d, word [r8 + r12]
lea eax, [rcx*4]
movsxd rcx, eax
lea eax, [rsi*4]
mov qword [rbp + 0x78], r8
movzx edx, word [r9 + rcx*2]
mov ecx, dword [rbp + 0x20]
add ecx, edx
movsxd rdx, eax
add r11d, ecx
mov qword [rbp - 0x30], rdx
mov dword [rbp + 0x20], r11d
lea eax, [r13*4]
movsxd r8, eax
movzx r10d, word [r9 + rdx*2 - 8]
mov dword [rbp - 0x40], eax
lea rax, [r8*2 - 8]
movzx ecx, word [rax + r12]
add ecx, dword [rbp + 0x24]
mov qword [rbp], rax
add r10d, ecx
lea rax, [r8*2 + 8]
mov dword [rbp + 0x24], r10d
movzx ecx, word [rax + r12]
movzx edx, word [r9 + rdx*2 - 8]
mov qword [rbp + 0xe8], rax
mov eax, dword [rbp + 0x28]
add eax, ecx
lea ecx, [r13 - 2]
add eax, edx
mov dword [rbp + 0x128], ecx
mov dword [rbp + 0x28], eax
lea eax, [rsi*4]
mov dword [rbp - 0x20], eax
cdqe
lea r8, [rax + rax]
lea eax, [rcx*4]
mov qword [rbp - 0x70], r8
movzx r8d, word [r8 + r9]
movsxd rcx, eax
movzx edx, word [r12 + rcx*2]
add edx, dword [rbp + 0x2c]
add edx, r8d
mov dword [rbp + 0x2c], edx
cmp r11d, ebx
lea r9d, [rsi - 1]
mov r8d, r11d
mov dword [rbp + 0x6c], r9d
cmovge r8d, ebx
mov eax, r13d
cmp r10d, r8d
jge 0x1401d1abd
lea ebx, [r13 - 1]
mov ecx, r9d
mov r13d, ebx
jmp 0x1401d1ad0
mov ecx, dword [rbp + 0xf4]
cmp r11d, ebx
mov r10d, r8d
lea ebx, [r13 - 1]
cmovge ecx, esi
mov r8d, dword [rbp + 0x28]
cmp r8d, r10d
jge 0x1401d1ae3
lea r13d, [rax + 1]
mov ecx, r9d
mov r10d, r8d
cmp edx, r10d
mov eax, esi
cmovge eax, ecx
cmovge edx, r10d
mov dword [rbp + 0xf8], eax
lea rcx, [rbp + 0x20]
mov eax, dword [rbp + 0x128]
cmovge eax, r13d
mov qword [rsp + 0x30], rcx
mov dword [rbp + 0x88], eax
mov rcx, r14
mov eax, dword [rsp + 0x54]
add eax, eax
mov dword [rsp + 0x6c], edx
mov rdx, qword [rbp - 0x50]
mov dword [rbp - 0x10], eax
cdqe
mov qword [rbp + 0x168], rax
add rax, rdx
lea r9, [rdx + 1]
mov qword [rsp + 0x28], r15
lea r8, [rdx - 1]
mov qword [rsp + 0x20], rax
mov rax, qword [rbp - 0x60]
add r9, r15
add r8, r15
add rdx, 2
call qword [rax]
mov r11, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x60]
lea r9d, [r8 + 2]
lea eax, [r9*4]
mov dword [rbp - 0x44], r9d
movsxd rcx, eax
mov rax, qword [rbp - 0x70]
lea rdx, [r12 + rcx*2]
movzx ecx, word [rax + r11]
mov eax, dword [rbp + 0x20]
add eax, ecx
mov qword [rbp - 0x50], rdx
movzx edx, word [rdx]
add eax, edx
mov dword [rbp + 0x20], eax
mov rax, qword [rbp - 0x30]
add rax, 4
movzx r13d, word [r11 + rax*2]
lea r10, [r11 + rax*2]
mov rax, qword [rbp]
mov qword [rbp + 0x170], r10
movzx ecx, word [rax + r12]
add ecx, dword [rbp + 0x24]
mov rax, qword [rbp + 0xe8]
add r13d, ecx
mov dword [rbp + 0x24], r13d
movzx edx, word [r10]
movzx ecx, word [rax + r12]
mov eax, dword [rbp + 0x28]
add eax, ecx
add eax, edx
mov dword [rbp + 0x28], eax
lea eax, [rsi + 2]
mov dword [rbp + 0xf0], eax
lea eax, [rax*4]
movsxd rcx, eax
movzx r10d, word [r11 + rcx*2]
lea rdx, [r11 + rcx*2]
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x140], rdx
movzx ecx, word [rax + r12]
add ecx, dword [rbp + 0x2c]
mov eax, dword [rsp + 0x6c]
add r10d, ecx
mov ecx, dword [rbp + 0x20]
mov edx, ecx
cmp ecx, eax
mov dword [rbp + 0x2c], r10d
cmovge edx, eax
mov dword [rsp + 0x6c], edx
lea edx, [rsi + 1]
mov dword [rbp + 0xc8], edx
mov edx, dword [rsp + 0x6c]
cmp r13d, edx
jge 0x1401d1c34
mov eax, dword [rbp + 0xc8]
mov esi, eax
jmp 0x1401d1c50
cmp ecx, eax
mov ebx, r9d
mov eax, dword [rbp + 0xc8]
mov r13d, edx
cmovge ebx, dword [rbp + 0x88]
cmovge esi, dword [rbp + 0xf8]
mov r9d, dword [rbp + 0x28]
lea ecx, [r8 + 1]
cmp r9d, r13d
mov dword [rsp + 0x6c], ecx
mov ecx, dword [rbp + 0xf0]
mov edx, r9d
cmovge eax, esi
cmovge edx, r13d
cmp r10d, edx
cmovge ecx, eax
mov eax, dword [rsp + 0x6c]
cmp r9d, r13d
mov dword [rbp + 0xf8], ecx
mov r9d, r8d
cmovge eax, ebx
cmp r10d, edx
cmovge r9d, eax
cmovge r10d, edx
mov dword [rbp + 0xc8], r9d
cmp r10d, dword [rbp + 0x108]
jne 0x1401d1cc7
mov rax, qword [rbp + 0x130]
mov esi, ecx
mov ebx, r10d
mov r13d, r9d
movzx ecx, byte [rax]
mov eax, 0x1f4
sar eax, cl
cmp r10d, eax
jl 0x1401d45bd
mov ecx, esi
mov ebx, r10d
mov eax, dword [rbp + 0x100]
mov r13d, r9d
mov dword [rbp - 0x58], eax
mov esi, ecx
mov dword [rbp - 0x78], r9d
mov dword [rsp + 0x50], ecx
cmp r10d, dword [rsp + 0x58]
jne 0x1401d28bb
mov eax, dword [rbp - 0x68]
mov r11d, 3
or eax, 2
mov dword [rbp - 0x58], r11d
sar eax, 1
mov edx, r13d
mov dword [rsp + 0x50], eax
mov ecx, r8d
sub ecx, dword [rsp + 0x70]
mov esi, r13d
mov eax, dword [rbp + 0xc4]
mov r9d, r11d
mov r13d, dword [rbp + 0xf8]
sub eax, r8d
cmp eax, ecx
mov dword [rbp - 0x78], edx
cmovge eax, ecx
mov ecx, dword [rsp + 0x50]
cmp ecx, eax
jg 0x1401d1f57
mov rsi, qword [rsp + 0x78]
lea eax, [rcx - 2]
mov dword [rbp + 0x100], eax
mov dword [rbp - 0x58], r11d
mov dword [rbp - 0x78], edx
cmp eax, r11d
jle 0x1401d1f5c
mov r9, qword [rbp + 0x80]
mov edx, r11d
movsxd rax, dword [rbp - 0x20]
lea r11d, [r8 - 3]
movsxd rcx, dword [rbp + 0x68]
mov r8, 0xfffffffffffffffd
add rcx, r9
mov qword [rbp - 0x70], rdx
add rcx, rdi
mov dword [rbp + 0x88], r11d
lea rbx, [rsi + rax*2]
mov qword [rbp + 0x138], rcx
lea rax, [r9 - 3]
mov qword [rbp + 0x130], rbx
lea rax, [r12 + rax*8]
mov qword [rbp], r8
lea r13, [r9 + 5]
mov qword [rbp + 0x108], rax
lea r13, [r12 + r13*8]
mov edi, edx
mov qword [rbp + 0xe8], r13
mov r12d, r10d
jmp 0x1401d1dce
mov rbx, qword [rbp + 0x130]
mov r13, qword [rbp + 0xe8]
lea rax, [r8 - 2]
mov esi, r11d
add rax, rcx
lea r9, [rdx + 2]
add r9, rcx
add r8, rcx
add rdx, rcx
lea rcx, [rbp + 0x20]
mov qword [rsp + 0x30], rcx
mov rcx, r14
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
mov rax, qword [rbp + 0xd8]
call qword [rax]
movzx r8d, word [rbx]
movzx ecx, word [r13 - 0x10]
add ecx, dword [rbp + 0x20]
mov r11, qword [rbp + 0x108]
add r8d, ecx
mov dword [rbp + 0x20], r8d
movzx ecx, word [rbx]
add ecx, dword [rbp + 0x24]
movzx r9d, word [r11]
add r9d, ecx
mov dword [rbp + 0x24], r9d
movzx ecx, word [rbx]
add ecx, dword [rbp + 0x28]
movzx r10d, word [r13]
add r10d, ecx
mov dword [rbp + 0x28], r10d
movzx ecx, word [r11 - 0x10]
add ecx, dword [rbp + 0x2c]
movzx ebx, word [rbx]
add ebx, ecx
mov dword [rbp + 0x2c], ebx
cmp r8d, r12d
jge 0x1401d1e6d
mov eax, dword [rbp - 0x44]
mov r12d, r8d
add eax, 0xfffffffe
add eax, edi
mov dword [rbp + 0xc8], eax
mov eax, dword [rsp + 0x68]
jmp 0x1401d1e73
mov eax, dword [rbp + 0xf8]
mov r11d, dword [rbp - 0x38]
cmp r9d, r12d
mov ecx, r11d
mov r13d, r11d
mov edx, r9d
mov r8d, r10d
cmovge edx, r12d
cmp r10d, edx
cmovge r8d, edx
cmp r9d, r12d
cmovge ecx, eax
cmp r10d, edx
mov eax, r11d
mov r11d, dword [rbp + 0x88]
cmovge eax, ecx
mov ecx, dword [rbp - 0x44]
cmp ebx, r8d
cmovge r13d, eax
cmp r9d, r12d
mov eax, r11d
mov dword [rbp + 0xf8], r13d
cmovge eax, dword [rbp + 0xc8]
add ecx, edi
cmp r10d, edx
mov rdx, qword [rbp - 0x70]
cmovge ecx, eax
mov eax, dword [rbp + 0x98]
sub eax, edi
cmp r9d, r12d
cmovge esi, eax
sub esi, 2
cmp ebx, r8d
cmovge esi, ecx
cmovge ebx, r8d
mov r8, qword [rbp]
add rdx, 4
add qword [rbp + 0xe8], 0x20
sub r8, 4
sub qword [rbp + 0x108], 0x20
sub r11d, 4
mov rcx, qword [rbp + 0x138]
add edi, 4
mov r12d, ebx
mov dword [rbp - 0x78], esi
mov qword [rbp - 0x70], rdx
mov qword [rbp], r8
mov dword [rbp + 0x88], r11d
mov dword [rbp + 0xc8], esi
cmp edi, dword [rbp + 0x100]
jl 0x1401d1dc0
mov r12, qword [rbp + 0x10]
mov edx, esi
mov r8d, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x50]
mov dword [rbp - 0x58], edi
mov r9d, dword [rbp - 0x58]
mov rdi, qword [rbp + 0x60]
mov rsi, qword [rsp + 0x78]
movsxd r11, r9d
movsxd r10, ecx
mov qword [rbp + 0x138], r11
mov qword [rbp + 0xe8], r10
cmp r11, r10
jge 0x1401d2137
mov rax, qword [rbp + 0x80]
mov ecx, r8d
add rax, r11
sub ecx, r9d
mov dword [rbp + 0xc8], ecx
lea r11, [r12 + rax*8]
mov rax, qword [rbp + 0x80]
sub rax, qword [rbp + 0x138]
mov qword [rbp - 0x78], r11
lea rax, [r12 + rax*8]
mov r12, qword [rbp + 0x330]
mov qword [rbp], rax
mov rax, r10
movsxd r10, r9d
sub rax, r10
dec rax
shr rax, 1
inc rax
mov qword [rbp - 0x70], rax
nop word [rax + rax]
lea r10d, [r9 + r8]
mov dword [rbp + 0xf8], r13d
mov dword [rbp + 0x88], ebx
mov dword [rbp + 0x108], edx
mov dword [rbp + 0x78], ebx
mov dword [rbp + 0x100], r10d
cmp r10d, dword [rbp + 0xc4]
jg 0x1401d2069
lea eax, [r9 + r8]
mov edx, reloc.WS2_32.dll_recv
add eax, dword [rbp + 0x68]
mov r9, r15
movsxd r8, eax
mov rcx, r14
mov rax, qword [rbp - 0x28]
add r8, rdi
call qword [r12 + rax*8]
movsxd rcx, dword [rbp - 0x20]
mov r11, qword [rbp - 0x78]
mov edx, dword [rbp + 0x100]
mov r13d, dword [rbp - 0x38]
movzx ecx, word [rsi + rcx*2]
movzx ebx, word [r11]
add ecx, eax
mov r8d, dword [rsp + 0x60]
add ebx, ecx
cmp ebx, dword [rbp + 0x78]
mov eax, ebx
mov r9d, dword [rbp - 0x58]
cmovge ebx, dword [rbp + 0x78]
cmovge edx, dword [rbp + 0x108]
cmp eax, dword [rbp + 0x88]
mov ecx, dword [rbp + 0xc8]
cmovge r13d, dword [rbp + 0xf8]
mov rax, qword [rbp - 0x70]
mov dword [rbp + 0x88], r13d
mov dword [rbp + 0x108], ebx
mov dword [rbp + 0x100], edx
mov dword [rbp + 0x78], ebx
cmp ecx, dword [rsp + 0x70]
jl 0x1401d20f0
mov eax, r8d
mov edx, reloc.WS2_32.dll_recv
sub eax, r9d
mov rcx, r14
add eax, dword [rbp + 0x68]
mov r9, r15
movsxd r8, eax
mov rax, qword [rbp - 0x28]
add r8, rdi
call qword [r12 + rax*8]
movsxd rcx, dword [rbp - 0x20]
mov r13d, dword [rbp - 0x38]
mov r9d, dword [rbp - 0x58]
mov r11, qword [rbp - 0x78]
movzx ecx, word [rsi + rcx*2]
add ecx, eax
mov rax, qword [rbp]
movzx ebx, word [rax]
add ebx, ecx
mov ecx, dword [rbp + 0xc8]
cmp ebx, dword [rbp + 0x78]
mov eax, ebx
mov edx, ecx
cmovge ebx, dword [rbp + 0x78]
cmovge edx, dword [rbp + 0x100]
cmp eax, dword [rbp + 0x108]
mov rax, qword [rbp - 0x70]
cmovge r13d, dword [rbp + 0x88]
sub qword [rbp], 0x10
add r9d, 2
mov r8d, dword [rsp + 0x60]
sub ecx, 2
add r11, 0x10
mov dword [rbp - 0x58], r9d
sub rax, 1
mov dword [rbp + 0xc8], ecx
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x78], r11
jne 0x1401d1fd0
mov r12, qword [rbp + 0x10]
mov r8d, dword [rsp + 0x68]
mov r9d, dword [rbp + 0x68]
mov dword [rbp - 0x78], edx
mov edx, dword [rsp + 0x54]
jmp 0x1401d214b
mov edx, dword [rsp + 0x54]
mov r9d, edx
mov r8d, dword [rsp + 0x68]
imul r9d, r8d
mov dword [rbp + 0x68], r9d
mov eax, dword [rbp + 0xb4]
mov ecx, r8d
sub ecx, dword [rbp + 0xc0]
sub eax, r8d
cmp eax, ecx
cmovge eax, ecx
mov ecx, dword [rsp + 0x50]
cmp ecx, eax
mov eax, 3
jg 0x1401d23cb
add ecx, 0xfffffffe
mov qword [rbp], rax
mov dword [rbp + 0x78], ecx
cmp ecx, eax
jle 0x1401d23cb
mov r10, qword [rbp + 0x110]
movsxd rax, r9d
add rax, qword [rbp + 0x80]
add rax, rdi
mov rdi, qword [rbp]
mov qword [rbp + 0x138], rax
movsxd rax, dword [rbp + 0x118]
lea rcx, [r12 + rax*2]
mov r12d, dword [rsp + 0x60]
lea eax, [r8 - 3]
mov qword [rbp + 0x130], rcx
mov dword [rbp - 0x38], eax
lea eax, [rdx + rdx*2]
movsxd rcx, eax
lea eax, [rdx*4]
cdqe
mov qword [rbp + 0xc8], rax
lea rax, [r10 + 5]
lea rax, [rsi + rax*8]
mov qword [rbp + 0x108], rcx
mov qword [rbp - 0x70], rax
add r10, 0xfffffffffffffffd
imul eax, edx, 0xfffffffd
movsxd r8, eax
mov eax, edx
neg eax
mov qword [rbp + 0x100], r8
shl eax, 2
movsxd r9, eax
lea rax, [rsi + r10*8]
mov rsi, qword [rbp + 0x138]
mov qword [rbp - 0x28], rax
imul eax, edx, 0xfffffffb
mov qword [rbp - 0x20], r9
movsxd r9, eax
lea eax, [rdx + rdx*4]
movsxd r10, eax
sub r10, rcx
mov qword [rbp + 0x88], r9
mov qword [rbp + 0xf8], r10
nop word [rax + rax]
lea rax, [r9 + rsi]
add r8, rsi
lea rdx, [rsi + rcx]
lea r9, [r10 + rsi]
add r9, rcx
lea rcx, [rbp + 0x20]
mov qword [rsp + 0x30], rcx
mov rcx, r14
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
mov rax, qword [rbp + 0xd8]
call qword [rax]
mov r11, qword [rbp + 0x130]
mov r8, qword [rbp - 0x70]
mov rax, qword [rbp - 0x28]
movzx r9d, word [r11]
movzx ecx, word [r8 - 0x10]
add ecx, dword [rbp + 0x20]
add r9d, ecx
mov dword [rbp + 0x20], r9d
movzx ecx, word [r11]
add ecx, dword [rbp + 0x24]
movzx r10d, word [rax]
add r10d, ecx
mov dword [rbp + 0x24], r10d
movzx ecx, word [r11]
add ecx, dword [rbp + 0x28]
movzx r8d, word [r8]
add r8d, ecx
mov dword [rbp + 0x28], r8d
movzx ecx, word [rax - 0x10]
add ecx, dword [rbp + 0x2c]
movzx r11d, word [r11]
add r11d, ecx
mov dword [rbp + 0x2c], r11d
cmp r9d, ebx
jge 0x1401d22e4
mov r13d, dword [rbp + 0xf0]
mov r9d, r12d
mov ebx, dword [rbp + 0x20]
add r13d, 0xfffffffe
add r13d, edi
jmp 0x1401d22e8
mov r9d, dword [rbp - 0x78]
mov eax, dword [rbp - 0x38]
cmp r10d, ebx
mov ecx, dword [rbp + 0xf0]
mov edx, r10d
cmovge edx, ebx
cmp dword [rbp + 0x28], edx
cmovge r8d, edx
cmp r10d, ebx
cmovge eax, r13d
mov r13d, dword [rbp - 0x38]
add ecx, edi
cmp dword [rbp + 0x28], edx
cmovge ecx, eax
mov eax, dword [rbp + 0xa0]
sub eax, edi
cmp r10d, ebx
cmovge r13d, eax
mov eax, r12d
sub r13d, 2
cmp r11d, r8d
cmovge r13d, ecx
cmp r10d, ebx
mov r10, qword [rbp + 0xf8]
mov ecx, r12d
cmovge ecx, r9d
mov ebx, r11d
cmp dword [rbp + 0x28], edx
mov edx, r12d
mov r9, qword [rbp + 0x88]
cmovge eax, ecx
mov rcx, qword [rbp + 0x108]
cmp r11d, r8d
cmovge ebx, r8d
cmovge edx, eax
mov r8, qword [rbp + 0x100]
add edi, 4
add r8, qword [rbp - 0x20]
add rcx, qword [rbp + 0xc8]
add r9, qword [rbp - 0x20]
sub dword [rbp - 0x38], 4
add qword [rbp - 0x70], 0x20
sub qword [rbp - 0x28], 0x20
mov dword [rbp - 0x78], edx
mov qword [rbp + 0x100], r8
mov qword [rbp + 0x108], rcx
mov qword [rbp + 0x88], r9
cmp edi, dword [rbp + 0x78]
jl 0x1401d2240
mov r12, qword [rbp + 0x10]
mov rsi, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x68]
mov qword [rbp], rdi
mov rax, qword [rbp]
mov rdi, qword [rbp + 0x60]
mov dword [rbp - 0x78], edx
mov r10, qword [rbp + 0xe8]
movsxd rcx, eax
mov qword [rbp - 0x28], rcx
cmp rcx, r10
jge 0x1401d25d4
sub r10, qword [rbp - 0x28]
lea r9d, [rax + r8]
movsxd rdx, dword [rbp + 0x118]
sub r8d, eax
mov rax, qword [rbp + 0x110]
dec r10
add rax, rcx
shr r10, 1
mov r11d, r9d
mov dword [rbp - 0x20], r9d
imul r11d, dword [rsp + 0x54]
mov dword [rbp + 0xc8], r8d
lea rax, [rsi + rax*8]
mov qword [rbp - 0x70], rax
mov rax, qword [rbp + 0x110]
add r11d, dword [rsp + 0x60]
sub rax, rcx
mov ecx, r8d
mov dword [rbp - 0x38], r11d
imul ecx, dword [rsp + 0x54]
lea rax, [rsi + rax*8]
mov qword [rbp], rax
mov rax, rdx
add ecx, dword [rsp + 0x60]
inc r10
mov dword [rbp + 0xf8], ecx
mov qword [rbp + 0xe8], r10
nop word [rax + rax]
mov rsi, qword [rbp + 0x330]
mov qword [rbp - 0x28], rax
mov dword [rbp + 0x78], ebx
cmp r9d, dword [rbp + 0xb4]
jg 0x1401d24f2
movsxd r10, dword [rsp + 0x5c]
mov r9, r15
movsxd rax, edx
mov rcx, r14
movsxd r8, r11d
mov edx, reloc.WS2_32.dll_recv
add r8, rdi
mov qword [rbp - 0x28], rax
call qword [rsi + r10*8 + 0xb820]
mov rcx, qword [rbp - 0x28]
mov r9d, dword [rbp - 0x20]
mov r8d, dword [rbp + 0xc8]
mov r10, qword [rbp + 0xe8]
movzx edx, word [r12 + rcx*2]
mov r11d, dword [rbp - 0x38]
add edx, eax
mov rax, qword [rbp - 0x70]
movzx ecx, word [rax]
mov eax, r9d
add ecx, edx
mov edx, dword [rbp + 0x118]
cmp ecx, ebx
cmovge eax, r13d
mov r13d, eax
mov eax, ecx
cmovge eax, ebx
cmp ecx, dword [rbp + 0x78]
mov ecx, dword [rbp + 0xf8]
mov ebx, eax
mov eax, dword [rbp - 0x80]
cmovge eax, dword [rbp - 0x78]
mov dword [rbp - 0x78], eax
mov dword [rbp + 0x100], ebx
mov dword [rbp + 0x78], ebx
cmp r8d, dword [rbp + 0xc0]
jl 0x1401d2588
movsxd r10, dword [rsp + 0x5c]
mov r9, r15
movsxd r8, ecx
mov edx, reloc.WS2_32.dll_recv
add r8, rdi
mov rcx, r14
call qword [rsi + r10*8 + 0xb820]
mov rcx, qword [rbp - 0x28]
mov rsi, qword [rbp]
mov r8d, dword [rbp + 0xc8]
mov r9d, dword [rbp - 0x20]
movzx edx, word [r12 + rcx*2]
movzx ecx, word [rsi]
add edx, eax
mov r10, qword [rbp + 0xe8]
add ecx, edx
mov r11d, dword [rbp - 0x38]
cmp ecx, ebx
mov edx, dword [rbp + 0x118]
mov eax, ecx
cmovge eax, ebx
cmp ecx, dword [rbp + 0x78]
mov ebx, eax
mov eax, dword [rbp - 0x80]
cmovge eax, dword [rbp - 0x78]
cmp ecx, dword [rbp + 0x100]
mov ecx, dword [rbp + 0xf8]
mov dword [rbp - 0x78], eax
mov eax, r8d
cmovge eax, r13d
mov r13d, eax
mov rax, qword [rbp - 0x28]
jmp 0x1401d258f
mov rsi, qword [rbp]
movsxd rax, edx
add r11d, dword [rbp - 0x10]
add r9d, 2
add ecx, dword [rbp + 0xa8]
sub r8d, 2
add qword [rbp - 0x70], 0x10
sub rsi, 0x10
sub r10, 1
mov dword [rbp - 0x20], r9d
mov qword [rbp + 0xe8], r10
mov dword [rbp - 0x38], r11d
mov dword [rbp + 0xf8], ecx
mov dword [rbp + 0xc8], r8d
mov qword [rbp], rsi
jne 0x1401d2460
mov rdx, qword [rbp + 0x70]
movsxd rcx, dword [rbp + 0x68]
add rcx, qword [rbp + 0x80]
add rcx, rdi
lea rax, [rdx + 2]
mov qword [rbp + 0x138], rcx
lea r9, [rdx - 2]
add rax, rcx
mov rdx, qword [rbp + 0x160]
add r9, rcx
lea r8, [rdx + 1]
dec rdx
add rdx, rcx
add r8, rcx
lea rcx, [rbp + 0x20]
mov qword [rsp + 0x30], rcx
mov rcx, r14
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
mov rax, qword [rbp - 0x60]
call qword [rax]
movsxd r8, dword [rbp - 0x40]
mov r10, qword [rsp + 0x78]
mov ecx, dword [rbp + 0xf4]
lea eax, [rcx*4]
movsxd rcx, eax
lea rax, [r8 - 4]
movzx r11d, word [r10 + rcx*2]
lea r9, [r10 + rcx*2]
movzx ecx, word [r12 + rax*2]
lea rax, [r12 + rax*2]
add ecx, dword [rbp + 0x20]
add r11d, ecx
mov qword [rbp + 0x130], rax
mov dword [rbp + 0x20], r11d
lea rax, [r8 + 4]
movzx ecx, word [r12 + rax*2]
lea rax, [r12 + rax*2]
add ecx, dword [rbp + 0x24]
movzx esi, word [r9]
mov r9, qword [rbp - 0x30]
add esi, ecx
mov qword [rbp - 0x70], rax
mov eax, dword [rbp + 0x128]
mov dword [rbp + 0x24], esi
lea eax, [rax*4]
movsxd rcx, eax
movzx r8d, word [r12 + rcx*2]
lea rax, [r12 + rcx*2]
movzx ecx, word [r10 + r9*2 - 8]
add ecx, dword [rbp + 0x28]
add r8d, ecx
mov qword [rbp + 0x160], rax
mov rax, qword [rbp - 0x50]
mov dword [rbp + 0x28], r8d
movzx ecx, word [r10 + r9*2 - 8]
mov r10d, dword [rbp + 0xf4]
movzx edx, word [rax]
mov eax, dword [rbp + 0x2c]
add eax, ecx
mov dword [rbp + 8], r8d
add eax, edx
mov ecx, esi
mov edx, dword [rbp + 0x98]
cmp r11d, ebx
mov dword [rbp - 0x40], eax
cmovge r10d, r13d
mov dword [rbp + 0x2c], eax
dec edx
cmp r11d, ebx
cmovge edx, dword [rbp - 0x78]
cmovge r11d, ebx
cmp esi, r11d
cmovge ecx, r11d
cmp r8d, ecx
jge 0x1401d271a
mov ecx, dword [rbp + 0x128]
mov edx, dword [rbp + 0x6c]
mov dword [rsp + 0x6c], ecx
mov ecx, edx
jmp 0x1401d273b
mov r8d, ecx
mov dword [rbp + 8], ecx
mov ecx, dword [rsp + 0x6c]
cmp esi, r11d
cmovge ecx, edx
mov edx, dword [rbp + 0x6c]
mov dword [rsp + 0x6c], ecx
mov ecx, dword [rbp + 0xf4]
cmovge ecx, r10d
cmp eax, r8d
mov ebx, eax
cmovge edx, ecx
cmovge ebx, r8d
mov rcx, qword [rbp + 0x138]
mov dword [rbp + 0x6c], edx
mov rdx, qword [rbp + 0x168]
lea r8, [rcx + 2]
add r8, r15
lea rax, [rdx + 1]
add rax, rcx
lea r9, [rdx - 1]
lea rdx, [rcx - 2]
add r9, rcx
lea rcx, [rbp + 0x20]
add rdx, r15
mov qword [rsp + 0x30], rcx
mov rcx, r14
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
mov rax, qword [rbp - 0x60]
call qword [rax]
mov r8, qword [rbp + 0x170]
mov rax, qword [rbp + 0x160]
mov esi, dword [rbp + 0xf0]
movzx ecx, word [r8]
add ecx, dword [rbp + 0x20]
movzx r13d, word [rax]
mov rax, qword [rbp - 0x50]
add r13d, ecx
mov dword [rbp + 0x20], r13d
movzx ecx, word [r8]
add ecx, dword [rbp + 0x24]
movzx r10d, word [rax]
mov r8, qword [rbp + 0x140]
add r10d, ecx
mov rax, qword [rbp + 0x130]
mov dword [rbp + 0x24], r10d
movzx ecx, word [r8]
movzx r11d, word [rax]
add ecx, dword [rbp + 0x28]
mov rax, qword [rbp - 0x70]
add r11d, ecx
mov dword [rbp + 0x28], r11d
movzx r9d, word [r8]
movzx ecx, word [rax]
add ecx, dword [rbp + 0x2c]
mov eax, dword [rbp + 0xa0]
add r9d, ecx
inc eax
mov dword [rbp + 0x2c], r9d
mov dword [rbp + 0x88], eax
cmp r13d, ebx
jl 0x1401d282e
mov eax, dword [rbp - 0x40]
cmp eax, dword [rbp + 8]
mov ecx, dword [rbp - 0x44]
cmovge ecx, dword [rsp + 0x6c]
mov eax, dword [rbp + 0x88]
mov dword [rbp + 0x128], ecx
cmp r13d, ebx
mov edx, r13d
mov ecx, r10d
mov r8d, r11d
cmovge edx, ebx
cmp r10d, edx
cmovge ecx, edx
cmp r11d, ecx
cmovge r8d, ecx
cmp r13d, ebx
mov ebx, dword [rbp + 0x88]
cmovge eax, dword [rbp + 0x6c]
cmp r10d, edx
cmovge ebx, eax
cmp r11d, ecx
mov eax, esi
cmovge eax, ebx
cmp r9d, r8d
cmovge esi, eax
mov eax, dword [rbp - 0x44]
cmp r10d, edx
mov edx, dword [rbp + 0x98]
cmovge eax, dword [rbp + 0x128]
cmp r11d, ecx
lea ecx, [rdx - 1]
cmovge ecx, eax
lea r13d, [rdx + 1]
cmp r9d, r8d
cmovge r9d, r8d
cmovge r13d, ecx
mov ebx, r9d
cmp r9d, dword [rsp + 0x58]
je 0x1401d1410
mov eax, dword [rsp + 0x50]
mov r11, qword [rsp + 0x78]
add eax, 2
mov dword [rbp - 0x58], eax
mov dword [rbp - 0x78], r13d
mov dword [rsp + 0x50], esi
mov edx, 1
mov r10d, dword [rbp + 0x348]
test r10d, r10d
je 0x1401d2add
mov r9d, edx
cmp r10d, 1
jne 0x1401d2934
cmp dword [rsp + 0x5c], 0
jne 0x1401d28f0
lea r8d, [r10 + 0x18]
jmp 0x1401d2a3f
mov r11, qword [rsp + 0x78]
jmp 0x1401d28c0
mov r10, qword [rbp + 0x340]
mov rax, qword [rbp + 0x338]
movsx ecx, word [r10 + 2]
movsx eax, word [rax + 0xb6]
sub eax, ecx
movsx ecx, word [r10]
cdq
mov r8d, eax
mov rax, qword [rbp + 0x338]
xor r8d, edx
sub r8d, edx
movsx eax, word [rax + 0xb4]
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
jmp 0x1401d2a37
mov r9, qword [rbp + 0x340]
lea eax, [r10 - 1]
mov dword [rbp + 8], eax
xor eax, eax
mov dword [rsp + 0x6c], eax
lea rcx, [r9 + 2]
mov qword [rbp + 0x140], rcx
cmp dword [rsp + 0x5c], eax
je 0x1401d29a2
movsx ecx, word [rcx]
mov rax, qword [rbp + 0x338]
mov dword [rbp + 8], r10d
movsx eax, word [rax + 0xb6]
sub eax, ecx
movsx ecx, word [r9]
cdq
mov r8d, eax
mov rax, qword [rbp + 0x338]
xor r8d, edx
sub r8d, edx
movsx eax, word [rax + 0xb4]
sub eax, ecx
mov rcx, qword [rbp + 0x140]
cdq
xor eax, edx
sub eax, edx
add r8d, eax
mov dword [rsp + 0x6c], r8d
mov rdx, qword [rbp + 0x90]
xor r8d, r8d
dec rdx
mov eax, r8d
test rdx, rdx
jle 0x1401d2a2e
movzx r14d, word [rcx]
mov edi, eax
mov r12d, eax
mov r15, rdx
nop dword [rax]
nop word [rax + rax]
movsx eax, word [rcx - 2]
lea r9, [rcx + 4]
movsx ecx, word [rcx + 2]
inc edi
movsx r10d, word [r9]
sub eax, ecx
cdq
lea rcx, [r9]
mov r8d, eax
movsx eax, r14w
sub eax, r10d
xor r8d, edx
sub r8d, edx
movzx r14d, r10w
cdq
xor eax, edx
sub eax, edx
add r12d, eax
movsxd rax, edi
add r12d, r8d
cmp rax, r15
jl 0x1401d29d0
mov r15, qword [rbp + 0xd0]
mov r14, qword [rbp + 0xb8]
mov rdi, qword [rbp + 0x60]
mov dword [rsp + 0x58], r12d
mov eax, dword [rsp + 0x58]
mov r12, qword [rbp + 0x10]
mov r8d, dword [rsp + 0x6c]
mov r9d, dword [rbp + 8]
mov edx, 1
add r8d, eax
movsxd rax, dword [rsp + 0x5c]
lea r10, [0x140000000]
movzx ecx, byte [rax + r10 + 0x32daec]
mov eax, 0x3e8
sar eax, cl
xor r10d, r10d
cmp ebx, eax
jge 0x1401d2a67
mov ecx, r10d
jmp 0x1401d2a8a
mov eax, 0x7d0
sar eax, cl
cmp ebx, eax
jge 0x1401d2a77
mov rcx, rdx
jmp 0x1401d2a8a
mov eax, 0xfa0
sar eax, cl
mov rcx, r10
cmp ebx, eax
setge cl
add rcx, 2
lea eax, [r9 + r9*4]
add eax, eax
cmp r8d, eax
jge 0x1401d2a9a
mov rdx, r10
jmp 0x1401d2aba
lea eax, [r9 + r9*4]
shl eax, 2
cmp r8d, eax
jl 0x1401d2aba
mov rdx, r10
lea eax, [r9 + r9*4]
shl eax, 3
cmp r8d, eax
setge dl
add rdx, 2
lea rax, [rcx + rdx*4]
lea rcx, [0x140000000]
movzx r10d, byte [rax + rcx + 0x32de78]
imul r10d, dword [rbp - 0x68]
sar r10d, 2
mov dword [rbp - 0x68], r10d
jmp 0x1401d2ae1
mov r10d, dword [rbp - 0x68]
mov edx, dword [rsp + 0x60]
mov ecx, edx
sub ecx, dword [rsp + 0x70]
mov eax, dword [rbp + 0xc4]
movsxd r8, dword [rbp - 0x58]
sub eax, edx
cmp eax, ecx
mov r9d, r8d
cmovge eax, ecx
cmp r10d, eax
jg 0x1401d2d3b
lea eax, [r10 - 2]
mov dword [rbp - 0x10], eax
cmp r8d, eax
jge 0x1401d2d3b
mov ecx, dword [rsp + 0x68]
mov eax, ecx
imul eax, dword [rsp + 0x54]
mov r10, qword [rbp + 0x80]
movsxd rdx, eax
lea eax, [rcx*4]
movsxd rcx, eax
add rdx, r10
add rdx, rdi
mov edi, dword [rsp + 0x60]
mov qword [rbp + 0x140], rdx
lea rax, [r11 + rcx*2]
mov rcx, r8
mov qword [rbp - 0x50], rax
mov eax, edi
sub eax, r8d
mov qword [rbp - 0x30], rcx
mov dword [rsp + 0x58], eax
mov eax, r8d
neg eax
movsxd r11, eax
lea rax, [r10 + 2]
add rax, r8
mov qword [rbp - 0x70], r11
lea r9, [r12 + rax*8]
mov rax, r10
sub rax, r8
mov qword [rbp - 0x60], r9
lea rax, [r12 + rax*8]
mov r12d, ecx
mov qword [rbp + 0x70], rax
mov eax, 0xfffffffe
sub eax, r8d
movsxd r9, eax
lea eax, [r8 + 2]
sub r9, r11
movsxd r8, eax
sub r8, rcx
mov qword [rbp + 0x170], r9
mov qword [rbp + 0x168], r8
lea rax, [rdx + r9]
lea r9, [rdx + r8]
add rax, r11
add r9, rcx
lea r8, [rdx + r11]
add rdx, rcx
lea rcx, [rbp + 0x20]
mov qword [rsp + 0x30], rcx
mov rcx, r14
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
mov rax, qword [rbp + 0xd8]
call qword [rax]
mov r11, qword [rbp - 0x50]
mov r10, qword [rbp - 0x60]
mov rax, qword [rbp + 0x70]
mov edx, dword [rsp + 0x58]
movzx r8d, word [r11]
movzx ecx, word [r10 - 0x10]
add ecx, dword [rbp + 0x20]
add r8d, ecx
mov dword [rbp + 0x20], r8d
movzx r9d, word [rax]
movzx ecx, word [r11]
add ecx, dword [rbp + 0x24]
add r9d, ecx
mov dword [rbp + 0x24], r9d
movzx ecx, word [r11]
add ecx, dword [rbp + 0x28]
movzx r11d, word [r10]
add r11d, ecx
mov dword [rbp + 0x28], r11d
movzx ecx, word [rax - 0x10]
add ecx, dword [rbp + 0x2c]
mov rax, qword [rbp - 0x50]
movzx r10d, word [rax]
mov eax, edi
add r10d, ecx
mov ecx, r8d
cmp r8d, ebx
mov dword [rbp + 0x2c], r10d
cmovge ecx, ebx
sub eax, r12d
cmp r9d, ecx
cmovge edx, eax
mov eax, dword [rsp + 0x64]
cmp r8d, ebx
mov dword [rbp + 0xa8], edx
cmovge eax, esi
mov esi, dword [rsp + 0x64]
cmp r9d, ecx
mov edx, esi
cmovge edx, eax
cmp r8d, ebx
mov r8d, dword [rsp + 0x58]
lea eax, [r12 + rdi]
cmovge eax, r13d
mov dword [rbp - 0x40], edx
cmp r9d, ecx
mov edx, r8d
cmovge r9d, ecx
cmovge edx, eax
cmp r11d, r9d
jge 0x1401d2c9e
lea edx, [rdi + 2]
add edx, r12d
mov r13d, dword [rbp + 0xa8]
cmp r11d, r9d
mov ecx, r11d
mov eax, esi
cmovge eax, dword [rbp - 0x40]
cmovge ecx, r9d
mov r11, qword [rbp - 0x70]
cmp r10d, ecx
mov r9, qword [rbp + 0x170]
cmovge esi, eax
add r13d, 0xfffffffe
cmp r10d, ecx
cmovge r10d, ecx
cmovge r13d, edx
mov rcx, qword [rbp - 0x30]
sub r8d, 4
add qword [rbp - 0x60], 0x20
add rcx, 4
sub qword [rbp + 0x70], 0x20
sub r11, 4
mov rdx, qword [rbp + 0x140]
add r12d, 4
mov ebx, r10d
mov dword [rsp + 0x58], r8d
mov r8, qword [rbp + 0x168]
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x70], r11
cmp r12d, dword [rbp - 0x10]
jl 0x1401d2bb2
mov rdi, qword [rbp + 0x60]
mov edx, dword [rsp + 0x60]
mov r10d, dword [rbp - 0x68]
mov dword [rbp - 0x20], r12d
mov r9d, dword [rbp - 0x20]
mov r12, qword [rbp + 0x10]
mov dword [rbp - 0x78], r13d
mov dword [rsp + 0x50], esi
mov r11d, dword [rsp + 0x68]
movsxd r8, r9d
movsxd rax, r10d
cmp r8, rax
jge 0x1401d2f3c
lea eax, [r9 + rdx]
mov ecx, edx
mov rdx, qword [rbp + 0x80]
sub ecx, r9d
mov dword [rbp + 0x98], eax
movsxd r9, r10d
mov r10d, dword [rbp + 0xa0]
sub r9, r8
lea rax, [r8 + rdx]
mov dword [rbp - 0x20], ecx
lea rax, [r12 + rax*8]
dec r9
mov qword [rbp - 0x60], rax
mov rax, rdx
mov edx, dword [rbp + 0x98]
sub rax, r8
mov r8, qword [rsp + 0x78]
shr r9, 1
inc r9
imul r10d, dword [rsp + 0x54]
lea rax, [r12 + rax*8]
mov r12, qword [rbp + 0x330]
mov qword [rbp - 0x30], rax
lea eax, [r11*4]
mov qword [rbp - 0x70], r9
nop dword [rax]
mov dword [rbp + 0x100], r10d
mov dword [rbp + 0x78], esi
mov dword [rbp - 0x10], ebx
mov dword [rbp + 0xa8], r13d
mov dword [rbp - 0x40], ebx
mov dword [rsp + 0x58], eax
mov dword [rbp - 0x44], r10d
cmp edx, dword [rbp + 0xc4]
jg 0x1401d2e66
lea eax, [rdx + r10]
mov r9, r15
movsxd r10, dword [rsp + 0x5c]
lea ebx, [r11*4]
movsxd r8, eax
mov edx, reloc.WS2_32.dll_recv
add r8, rdi
mov dword [rsp + 0x58], ebx
mov rcx, r14
call qword [r12 + r10*8 + 0xb820]
mov r8, qword [rsp + 0x78]
mov r13d, dword [rbp + 0x98]
mov esi, dword [rsp + 0x64]
mov r10d, dword [rbp - 0x44]
mov r11d, dword [rsp + 0x68]
mov r9, qword [rbp - 0x70]
movsxd rcx, ebx
movzx ecx, word [r8 + rcx*2]
add ecx, eax
mov rax, qword [rbp - 0x60]
movzx edx, word [rax]
add edx, ecx
mov ecx, dword [rbp - 0x20]
cmp edx, dword [rbp - 0x40]
mov ebx, edx
cmovge ebx, dword [rbp - 0x40]
cmovge r13d, dword [rbp + 0xa8]
cmp edx, dword [rbp - 0x10]
mov edx, dword [rbp + 0x98]
cmovge esi, dword [rbp + 0x78]
mov dword [rbp + 0x78], esi
mov dword [rbp - 0x10], ebx
mov dword [rbp + 0xa8], r13d
mov dword [rbp - 0x40], ebx
cmp ecx, dword [rsp + 0x70]
jl 0x1401d2efa
lea eax, [rcx + r10]
mov r9, r15
movsxd r10, dword [rsp + 0x5c]
mov edx, reloc.WS2_32.dll_recv
movsxd r8, eax
mov rcx, r14
add r8, rdi
call qword [r12 + r10*8 + 0xb820]
movsxd rcx, dword [rsp + 0x58]
mov r8, qword [rsp + 0x78]
mov esi, dword [rsp + 0x64]
mov r10d, dword [rbp + 0x100]
mov r11d, dword [rsp + 0x68]
movzx ecx, word [r8 + rcx*2]
mov r9, qword [rbp - 0x70]
add ecx, eax
mov rax, qword [rbp - 0x30]
mov dword [rbp - 0x44], r10d
movzx edx, word [rax]
mov eax, dword [rsp + 0x58]
add edx, ecx
cmp edx, dword [rbp - 0x40]
mov ebx, edx
mov ecx, dword [rbp - 0x20]
mov r13d, ecx
cmovge ebx, dword [rbp - 0x40]
cmovge r13d, dword [rbp + 0xa8]
cmp edx, dword [rbp - 0x10]
mov edx, dword [rbp + 0x98]
cmovge esi, dword [rbp + 0x78]
jmp 0x1401d2f02
lea eax, [r11*4]
add qword [rbp - 0x60], 0x10
add edx, 2
sub qword [rbp - 0x30], 0x10
sub ecx, 2
sub r9, 1
mov dword [rbp + 0x98], edx
mov qword [rbp - 0x70], r9
mov dword [rbp - 0x20], ecx
jne 0x1401d2dc0
mov r12, qword [rbp + 0x10]
mov r9d, dword [rsp + 0x54]
mov dword [rsp + 0x50], esi
mov dword [rbp - 0x78], r13d
jmp 0x1401d2f51
mov r9d, dword [rsp + 0x54]
mov r10d, r9d
mov r8, qword [rsp + 0x78]
imul r10d, r11d
mov dword [rbp - 0x44], r10d
mov eax, dword [rbp + 0xb4]
mov ecx, r11d
sub ecx, dword [rbp + 0xc0]
sub eax, r11d
mov edx, dword [rbp - 0x68]
sar edx, 1
cmp eax, ecx
mov dword [rbp + 0x78], edx
cmovge eax, ecx
cmp edx, eax
jg 0x1401d31f3
movsxd rax, dword [rbp - 0x58]
lea ecx, [rdx - 2]
mov dword [rbp - 0x10], ecx
cmp eax, ecx
jge 0x1401d31f6
mov rdx, rax
movsxd rax, r10d
add rax, qword [rbp + 0x80]
add rax, rdi
mov qword [rbp + 0x140], rax
mov eax, dword [rsp + 0x60]
mov rdi, qword [rbp + 0x140]
lea eax, [rax*4]
movsxd rcx, eax
lea rax, [r12 + rcx*2]
mov r12d, dword [rbp - 0x58]
mov qword [rbp - 0x60], rax
sub r11d, r12d
mov ecx, r12d
mov dword [rsp + 0x58], r11d
mov r11, qword [rbp + 0x110]
imul ecx, r9d
lea r10, [r11 + 2]
add r10, rdx
movsxd rax, ecx
neg ecx
mov qword [rbp - 0x70], rax
lea eax, [r9*4]
cdqe
mov qword [rbp + 0x168], rax
lea r10, [r8 + r10*8]
mov eax, r9d
mov qword [rbp], r10
neg eax
movsxd r10, ecx
shl eax, 2
movsxd rcx, eax
mov rax, r11
sub rax, rdx
mov qword [rbp + 0x170], rcx
mov qword [rbp - 0x30], r10
lea rcx, [r8 + rax*8]
mov eax, 0xfffffffe
sub eax, r12d
mov qword [rbp + 0x70], rcx
mov rcx, qword [rbp - 0x70]
imul eax, r9d
movsxd rdx, eax
lea eax, [r12 + 2]
imul eax, r9d
mov qword [rbp - 0x50], rdx
movsxd r8, eax
sub r8, rcx
mov qword [rbp + 0x160], r8
jmp 0x1401d3064
mov r10, qword [rbp - 0x30]
lea rax, [rdi + rdx]
lea r9, [rdi + r8]
add r9, rcx
lea rdx, [rdi + rcx]
lea rcx, [rbp + 0x20]
mov qword [rsp + 0x30], rcx
lea r8, [rdi + r10]
mov qword [rsp + 0x28], r15
mov rcx, r14
mov qword [rsp + 0x20], rax
mov rax, qword [rbp + 0xd8]
call qword [rax]
mov r10, qword [rbp]
mov r9, qword [rbp - 0x60]
mov r11, qword [rbp + 0x70]
mov rax, qword [rbp - 0x60]
movzx ecx, word [r10 - 0x10]
add ecx, dword [rbp + 0x20]
movzx r8d, word [r9]
add r8d, ecx
mov dword [rbp + 0x20], r8d
movzx ecx, word [r9]
add ecx, dword [rbp + 0x24]
movzx r9d, word [r11]
add r9d, ecx
mov dword [rbp + 0x24], r9d
movzx ecx, word [rax]
movzx edx, word [r10]
mov eax, dword [rbp + 0x28]
add eax, ecx
add eax, edx
mov edx, dword [rsp + 0x58]
mov dword [rbp + 0x28], eax
movzx ecx, word [r11 - 0x10]
mov r11d, edx
add ecx, dword [rbp + 0x2c]
mov rax, qword [rbp - 0x60]
movzx r10d, word [rax]
mov eax, dword [rbp + 0xa0]
add r10d, ecx
cmp r8d, ebx
mov dword [rbp + 0x2c], r10d
mov ecx, r8d
cmovge ecx, ebx
sub eax, r12d
cmp r9d, ecx
cmovge r11d, eax
cmp r8d, ebx
mov dword [rbp + 0xa8], r11d
mov r11d, dword [rsp + 0x68]
lea eax, [r12 + r11]
cmovge eax, esi
cmp r9d, ecx
cmovge edx, eax
mov eax, dword [rbp - 0x48]
cmp r8d, ebx
mov dword [rbp - 0x40], edx
mov ebx, dword [rbp - 0x48]
mov r8d, ebx
mov edx, dword [rbp + 0x28]
cmovge eax, r13d
cmp r9d, ecx
cmovge r9d, ecx
cmovge r8d, eax
cmp edx, r9d
jge 0x1401d315e
lea eax, [r11 + 2]
add eax, r12d
jmp 0x1401d3161
mov eax, dword [rbp - 0x40]
mov esi, dword [rbp + 0xa8]
cmp edx, r9d
mov ecx, edx
mov r13d, ebx
cmovge ecx, r9d
add esi, 0xfffffffe
cmp r10d, ecx
cmovge esi, eax
cmp edx, r9d
mov rdx, qword [rbp - 0x50]
mov eax, ebx
cmovge eax, r8d
mov r8, qword [rbp + 0x160]
cmp r10d, ecx
cmovge r10d, ecx
cmovge r13d, eax
mov rax, qword [rbp + 0x170]
add r12d, 4
mov rcx, qword [rbp - 0x70]
add rdx, rax
add rcx, qword [rbp + 0x168]
mov ebx, r10d
add qword [rbp - 0x30], rax
sub dword [rsp + 0x58], 4
add qword [rbp], 0x20
sub qword [rbp + 0x70], 0x20
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x50], rdx
cmp r12d, dword [rbp - 0x10]
jl 0x1401d3060
mov rdi, qword [rbp + 0x60]
mov edx, dword [rbp + 0x78]
mov dword [rbp - 0x58], r12d
mov r12, qword [rbp + 0x10]
mov dword [rbp - 0x78], r13d
mov dword [rsp + 0x50], esi
mov eax, dword [rbp - 0x58]
movsxd rcx, eax
movsxd r10, edx
mov qword [rbp - 0x50], rcx
cmp rcx, r10
jge 0x1401d3408
mov edx, dword [rsp + 0x54]
lea r9d, [rax + r11]
sub r10, qword [rbp - 0x50]
mov r8d, r11d
mov r14, qword [rbp + 0x110]
sub r8d, eax
sub r14, qword [rbp - 0x50]
dec r10
lea eax, [rdx + rdx]
shr r10, 1
mov dword [rbp - 0x10], eax
mov r11d, r9d
mov eax, edx
imul r11d, edx
neg eax
imul edx, r8d
add eax, eax
mov dword [rsp + 0x58], r9d
mov dword [rbp + 0x78], eax
mov rax, qword [rbp + 0x110]
add rax, rcx
mov dword [rbp + 0x6c], r8d
mov rcx, qword [rsp + 0x78]
lea rax, [rcx + rax*8]
lea rcx, [rcx + r14*8]
mov qword [rbp - 0x60], rax
mov eax, dword [rsp + 0x60]
add r11d, eax
mov r14, qword [rbp + 0xb8]
add edx, eax
inc r10
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x70], r10
lea ecx, [rax*4]
mov dword [rbp - 0x20], r11d
mov dword [rbp + 0xa0], edx
nop word [rax + rax]
mov dword [rsp + 0x64], ecx
mov dword [rbp - 0x40], ebx
cmp r9d, dword [rbp + 0xb4]
jg 0x1401d332e
lea eax, [rax*4]
movsxd r8, r11d
movsxd r11, dword [rsp + 0x5c]
add r8, rdi
mov dword [rsp + 0x64], eax
mov r9, r15
mov rax, qword [rbp + 0x330]
mov edx, reloc.WS2_32.dll_recv
mov rcx, r14
call qword [rax + r11*8 + 0xb820]
movsxd rcx, dword [rsp + 0x64]
mov r9d, dword [rsp + 0x58]
mov r8d, dword [rbp + 0x6c]
mov r10, qword [rbp - 0x70]
movzx ecx, word [r12 + rcx*2]
mov r11d, dword [rbp - 0x20]
add ecx, eax
mov rax, qword [rbp - 0x60]
movzx edx, word [rax]
mov eax, r9d
add edx, ecx
cmp edx, ebx
cmovge eax, esi
mov esi, eax
mov eax, edx
cmovge eax, ebx
cmp edx, dword [rbp - 0x40]
mov edx, dword [rbp + 0xa0]
mov ebx, eax
mov eax, dword [rbp - 0x80]
cmovge eax, r13d
mov r13d, eax
mov eax, dword [rsp + 0x60]
mov dword [rbp + 0xa8], ebx
mov dword [rbp - 0x40], ebx
cmp r8d, dword [rbp + 0xc0]
jl 0x1401d33bf
mov rax, qword [rbp + 0x330]
mov r9, r15
movsxd r11, dword [rsp + 0x5c]
mov rcx, r14
movsxd r8, edx
mov edx, reloc.WS2_32.dll_recv
add r8, rdi
call qword [rax + r11*8 + 0xb820]
movsxd rcx, dword [rsp + 0x64]
mov r8d, dword [rbp + 0x6c]
mov r9d, dword [rsp + 0x58]
mov r10, qword [rbp - 0x70]
movzx edx, word [r12 + rcx*2]
mov rcx, qword [rbp - 0x30]
add eax, edx
mov r11d, dword [rbp - 0x20]
mov edx, dword [rbp + 0xa0]
movzx ecx, word [rcx]
add ecx, eax
cmp ecx, ebx
mov eax, ecx
cmovge eax, ebx
cmp ecx, dword [rbp - 0x40]
mov ebx, eax
mov eax, dword [rbp - 0x80]
cmovge eax, r13d
cmp ecx, dword [rbp + 0xa8]
mov ecx, dword [rsp + 0x64]
mov r13d, eax
mov eax, r8d
cmovge eax, esi
mov esi, eax
mov eax, dword [rsp + 0x60]
jmp 0x1401d33c6
lea ecx, [rax*4]
add r11d, dword [rbp - 0x10]
add r9d, 2
add edx, dword [rbp + 0x78]
sub r8d, 2
add qword [rbp - 0x60], 0x10
sub qword [rbp - 0x30], 0x10
sub r10, 1
mov dword [rsp + 0x58], r9d
mov qword [rbp - 0x70], r10
mov dword [rbp - 0x20], r11d
mov dword [rbp + 0xa0], edx
mov dword [rbp + 0x6c], r8d
jne 0x1401d32a0
mov dword [rsp + 0x50], esi
mov dword [rbp - 0x78], r13d
mov ecx, dword [rsp + 0x54]
movsxd rdx, dword [rbp - 0x44]
add rdx, qword [rbp + 0x80]
movsxd r10, dword [rsp + 0x5c]
add rdx, rdi
lea eax, [rcx + rcx]
movsxd r8, eax
mov eax, ecx
neg eax
add r8, rdx
add eax, eax
cdqe
lea rcx, [r8 + 2]
add r8, 0xfffffffffffffffe
lea r9, [rax + 2]
add rax, 0xfffffffffffffffe
add r9, rdx
add rdx, rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x330]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rcx
mov rcx, r14
call qword [rax + r10*8 + 0xb898]
mov r11d, dword [rsp + 0x68]
mov r14, qword [rbp + 0x10]
mov esi, dword [rsp + 0x60]
mov r9, qword [rsp + 0x78]
lea r12d, [r11 - 2]
lea eax, [r12*4]
movsxd rcx, eax
lea r13d, [rsi - 2]
movzx r15d, word [r9 + rcx*2]
lea r10, [r9 + rcx*2]
lea eax, [r13*4]
movsxd rcx, eax
lea eax, [r11*4 + 8]
lea r8, [r14 + rcx*2]
movzx ecx, word [r14 + rcx*2]
add ecx, dword [rbp + 0x20]
add r15d, ecx
movsxd rcx, eax
lea r9, [r9 + rcx*2]
mov dword [rbp + 0x20], r15d
movzx ecx, word [r8]
lea eax, [rsi*4 + 8]
add ecx, dword [rbp + 0x24]
movzx edi, word [r9]
add edi, ecx
movsxd rcx, eax
mov dword [rbp + 0x24], edi
lea eax, [r11 + 2]
movzx r10d, word [r10]
mov edx, edi
lea r8, [r14 + rcx*2]
movzx ecx, word [r14 + rcx*2]
add ecx, dword [rbp + 0x28]
add r10d, ecx
mov dword [rbp + 0x28], r10d
movzx ecx, word [r8]
mov r8d, r15d
add ecx, dword [rbp + 0x2c]
movzx r14d, word [r9]
mov r9d, r10d
add r14d, ecx
mov ecx, r12d
cmp r15d, ebx
mov dword [rbp + 0x2c], r14d
cmovge r8d, ebx
cmp edi, r8d
cmovge edx, r8d
cmp r10d, edx
cmovge r9d, edx
cmp r15d, ebx
cmovge ecx, dword [rsp + 0x50]
cmp edi, r8d
cmovge eax, ecx
cmp r10d, edx
cmovge r12d, eax
lea eax, [r11 + 2]
cmp r14d, r9d
mov dword [rbp + 0xf0], 2
cmovge eax, r12d
mov r12, qword [rbp + 0x10]
mov dword [rsp + 0x50], eax
cmp r15d, ebx
mov r15, qword [rsp + 0x78]
mov eax, r13d
cmovge eax, dword [rbp - 0x78]
cmp edi, r8d
mov r8d, dword [rsp + 0x54]
cmovge r13d, eax
mov dword [rsp + 0x64], r8d
cmp r10d, edx
lea eax, [rsi + 2]
cmovge eax, r13d
cmp r14d, r9d
lea r13d, [rsi + 2]
mov esi, dword [rsp + 0x50]
cmovge r13d, eax
mov dword [rbp - 0x20], esi
cmovge r14d, r9d
mov dword [rbp - 0x78], r13d
mov r9d, dword [rbp + 0xb4]
mov edi, r13d
sub edi, dword [rsp + 0x70]
sub r9d, esi
lea eax, [r13*4]
mov dword [rsp + 0x58], r13d
movsxd rcx, eax
mov ebx, r14d
lea eax, [rsi*4]
mov dword [rbp + 0xc8], r9d
mov r14d, 4
mov dword [rbp - 0x80], edi
mov r10d, r13d
mov dword [rbp + 0x88], r14d
lea rdx, [r12 + rcx*2]
mov r11d, esi
movsxd rcx, eax
mov qword [rbp - 0x60], rdx
lea rax, [r15 + rcx*2]
mov ecx, esi
sub ecx, dword [rbp + 0xc0]
mov qword [rbp + 0x110], rax
mov eax, dword [rbp + 0xc4]
sub eax, r13d
mov dword [rbp - 0x38], ecx
mov dword [rbp - 0x48], eax
cmp r9d, ecx
mov eax, r9d
cmovge eax, ecx
mov dword [rsp + 0x6c], eax
mov eax, dword [rbp - 0x68]
sar eax, 2
mov dword [rbp + 0x118], eax
lea rax, [rdx + 0x10]
mov qword [rbp - 0x28], rax
mov rax, qword [rbp + 0x110]
add rax, 0x18
mov qword [rbp + 0xa0], rax
lea rax, [rdx + 0x20]
mov qword [rbp + 0xe8], rax
lea edx, [r8 + r8]
mov rax, qword [rbp + 0x110]
add rax, 8
mov dword [rbp + 0x6c], edx
mov rdx, qword [rbp - 0x60]
mov qword [rbp + 0x80], rax
lea eax, [r8*8]
mov dword [rbp - 0x44], eax
lea rax, [rdx - 0x10]
mov qword [rbp + 0x98], rax
lea rax, [rdx - 0x20]
mov qword [rbp + 0x90], rax
mov rax, qword [rbp + 0x110]
lea rdx, [rax - 8]
add rax, 0xffffffffffffffe8
mov qword [rbp], rax
mov eax, r8d
mov qword [rbp - 0x70], rdx
neg eax
lea edx, [r14 - 3]
shl eax, 2
mov dword [rbp + 0x108], eax
lea eax, [rsi - 4]
imul eax, r8d
mov dword [rbp + 0xf4], eax
mov rax, qword [rbp + 0x110]
sub rax, qword [rbp - 0x60]
mov qword [rbp - 0x30], rax
nop dword [rax]
cmp edi, dword [rsp + 0x6c]
jge 0x1401d36ea
mov eax, edi
jmp 0x1401d36f3
cmp r9d, ecx
mov eax, ecx
cmovl eax, r9d
cmp dword [rbp - 0x48], eax
jge 0x1401d36fd
mov eax, dword [rbp - 0x48]
jmp 0x1401d3710
cmp edi, dword [rsp + 0x6c]
jge 0x1401d3707
mov eax, edi
jmp 0x1401d3710
cmp r9d, ecx
mov eax, ecx
cmovl eax, r9d
cmp r14d, eax
jle 0x1401d381b
lea rcx, [0x14032de89]
mov qword [rbp - 0x50], rcx
nop dword [rax]
nop dword [rax + rax]
movsx edi, byte [rcx - 1]
movsx r14d, byte [rcx]
mov ecx, dword [rbp + 0xb0]
imul edi, edx
imul r14d, edx
add edi, r10d
add r14d, r11d
mov edx, edi
shl edx, 0x10
mov eax, r14d
and eax, 0x7fff
or edx, eax
mov eax, dword [rbp + 0x158]
add eax, edx
sub ecx, edx
or ecx, eax
test ecx, 0x80004000
jne 0x1401d37eb
movsxd r11, dword [rsp + 0x5c]
mov eax, r14d
mov r9, qword [rbp + 0xd0]
mov edx, reloc.WS2_32.dll_recv
mov rcx, qword [rbp + 0xb8]
imul eax, r8d
add eax, edi
movsxd r8, eax
mov rax, qword [rbp + 0x330]
add r8, qword [rbp + 0x60]
call qword [rax + r11*8 + 0xb820]
mov r8d, dword [rsp + 0x54]
lea ecx, [r14*4]
mov r10d, dword [rsp + 0x58]
mov r11d, dword [rbp - 0x20]
movsxd rdx, ecx
movzx edx, word [r15 + rdx*2]
add edx, eax
lea eax, [rdi*4]
movsxd rcx, eax
movzx ecx, word [r12 + rcx*2]
add ecx, edx
cmp ecx, ebx
cmovge r14d, esi
cmovge edi, r13d
cmovge ecx, ebx
mov esi, r14d
mov r13d, edi
mov ebx, ecx
mov rcx, qword [rbp - 0x50]
lea rax, [0x14032dea9]
mov rdx, qword [rbp + 0x120]
add rcx, 2
mov qword [rbp - 0x50], rcx
cmp rcx, rax
jl 0x1401d3730
mov dword [rsp + 0x50], esi
mov dword [rbp - 0x78], r13d
jmp 0x1401d3c80
movsxd r15, dword [rsp + 0x64]
lea rcx, [rbp + 0x20]
movsxd rdi, dword [rbp + 0xf4]
mov r13, r15
movsxd r8, dword [rbp - 0x44]
mov qword [rsp + 0x30], rcx
mov rcx, qword [rbp + 0xd0]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rbp + 0xb8]
movsxd rax, r10d
add rax, qword [rbp + 0x60]
add rdi, rax
movsxd rax, dword [rbp + 0xf0]
sub r13, rax
add r8, rdi
mov rdx, rdi
lea r12, [r15 + rax]
lea rax, [rdi + r12]
mov qword [rsp + 0x20], rax
lea r9, [rdi + r13]
mov rax, qword [rbp + 0xd8]
call qword [rax]
movsxd rsi, dword [rbp + 0x6c]
movsxd r14, r14d
add rdi, rsi
mov qword [rbp + 0x70], rdi
mov rcx, qword [rbp + 0x70]
mov rdx, rcx
lea rdi, [r14 + r15]
sub rdx, r14
sub r15, r14
lea rax, [rdi + rcx]
lea r8, [r14 + rcx]
lea r9, [r15 + rcx]
lea rcx, [rbp + 0x30]
mov qword [rsp + 0x30], rcx
mov rcx, qword [rbp + 0xd0]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rbp + 0xb8]
mov qword [rsp + 0x20], rax
mov rax, qword [rbp + 0xd8]
call qword [rax]
mov rax, qword [rbp + 0x70]
lea rcx, [rbp + 0x40]
add rax, rsi
mov qword [rsp + 0x30], rcx
mov rcx, qword [rbp + 0xb8]
mov qword [rbp + 0x70], rax
add rax, rdi
mov rdi, qword [rbp + 0x70]
mov rdx, rdi
sub rdx, r14
lea r9, [r15 + rdi]
mov r15, qword [rbp + 0xd0]
mov qword [rsp + 0x28], r15
lea r8, [r14 + rdi]
mov qword [rsp + 0x20], rax
mov rax, qword [rbp + 0xd8]
call qword [rax]
add rdi, rsi
lea rcx, [rbp + 0x50]
mov qword [rsp + 0x30], rcx
mov rcx, qword [rbp + 0xb8]
mov qword [rsp + 0x28], r15
lea rax, [rdi + r12]
mov qword [rsp + 0x20], rax
lea r9, [rdi + r13]
mov rax, qword [rbp + 0xd8]
lea r8, [r14 + rdi]
sub rdi, r14
mov rdx, rdi
call qword [rax]
mov r12, qword [rbp + 0x90]
mov r14, qword [rbp - 0x30]
mov r9, qword [rbp - 0x60]
mov r13, qword [rbp + 0xe8]
movzx ecx, word [r14 + r12]
add ecx, dword [rbp + 0x20]
movzx r8d, word [r9]
add r8d, ecx
mov dword [rbp + 0x20], r8d
movzx ecx, word [r14 + r13]
add ecx, dword [rbp + 0x24]
movzx r9d, word [r9]
mov r11, qword [rbp]
add r9d, ecx
mov rsi, qword [rbp + 0x98]
mov rax, qword [rbp - 0x28]
mov r15, qword [rbp - 0x70]
mov dword [rbp + 0x24], r9d
movzx ecx, word [r11]
add ecx, dword [rbp + 0x28]
movzx r10d, word [rsi]
add r10d, ecx
mov dword [rbp + 0x28], r10d
movzx ecx, word [r11]
movzx r11d, word [rax]
add ecx, dword [rbp + 0x2c]
mov rax, qword [rbp + 0x110]
add r11d, ecx
mov dword [rbp + 0x2c], r11d
movzx edi, word [r14 + rsi]
movzx ecx, word [r12]
add ecx, dword [rbp + 0x30]
add edi, ecx
mov dword [rbp + 0x30], edi
movzx ecx, word [r13]
add ecx, dword [rbp + 0x34]
movzx esi, word [r14 + rsi]
add esi, ecx
mov dword [rbp + 0x34], esi
movzx ecx, word [r15]
add ecx, dword [rbp + 0x38]
movzx r14d, word [r12]
add r14d, ecx
mov dword [rbp + 0x38], r14d
movzx ecx, word [r13]
add ecx, dword [rbp + 0x3c]
movzx r15d, word [r15]
add r15d, ecx
mov dword [rbp + 0x3c], r15d
movzx ecx, word [rax]
add ecx, dword [rbp + 0x40]
movzx r12d, word [r12]
add r12d, ecx
mov dword [rbp + 0x40], r12d
movzx ecx, word [rax]
add ecx, dword [rbp + 0x44]
movzx r13d, word [r13]
mov rax, qword [rbp + 0x80]
add r13d, ecx
mov dword [rbp + 0x44], r13d
movzx ecx, word [rax]
mov rax, qword [rbp + 0x90]
movzx edx, word [rax]
mov eax, dword [rbp + 0x48]
add eax, ecx
add eax, edx
mov dword [rbp + 0x48], eax
mov dword [rbp - 0x40], eax
mov rax, qword [rbp + 0xe8]
movzx ecx, word [rax]
mov rax, qword [rbp + 0x80]
movzx edx, word [rax]
mov eax, dword [rbp + 0x4c]
add eax, ecx
add eax, edx
mov rdx, qword [rbp - 0x30]
mov dword [rbp + 0x4c], eax
mov dword [rbp + 0xa8], eax
mov rax, qword [rbp + 0x90]
movzx ecx, word [rax]
mov rax, qword [rbp - 0x28]
movzx edx, word [rdx + rax]
mov eax, dword [rbp + 0x50]
add eax, ecx
add eax, edx
mov dword [rbp + 0x50], eax
mov dword [rbp - 0x10], eax
mov rax, qword [rbp + 0xe8]
movzx ecx, word [rax]
mov rax, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x30]
movzx edx, word [rdx + rax]
mov eax, dword [rbp + 0x54]
add eax, ecx
add eax, edx
mov dword [rbp + 0x54], eax
mov dword [rbp + 0x78], eax
mov rax, qword [rbp + 0xa0]
movzx ecx, word [rax]
mov rax, qword [rbp + 0x98]
movzx edx, word [rax]
mov eax, dword [rbp + 0x58]
add eax, ecx
add eax, edx
mov edx, listen
mov dword [rbp + 0x58], eax
mov dword [rbp + 0x100], eax
mov rax, qword [rbp + 0xa0]
movzx ecx, word [rax]
mov rax, qword [rbp - 0x28]
movzx eax, word [rax]
add eax, dword [rbp + 0x5c]
add eax, ecx
mov ecx, 0
cmp r8d, ebx
mov dword [rbp + 0x5c], eax
mov eax, r8d
mov r8d, 0x41
cmovge edx, ecx
cmovge eax, ebx
cmp r9d, eax
mov ecx, 4
cmovl edx, ecx
cmovge r9d, eax
cmp r10d, r9d
mov eax, 0xffffffed
mov ecx, 0xffffffc1
cmovl edx, eax
cmovge r10d, r9d
cmp r11d, r10d
mov eax, Ordinal_46
cmovl edx, eax
cmovge r11d, r10d
cmp edi, r11d
mov eax, 0xffffffce
cmovl edx, eax
cmovge edi, r11d
cmp esi, edi
mov eax, Ordinal_79
cmovl edx, eax
cmovge esi, edi
cmp r14d, esi
mov eax, 0xffffffcf
cmovl edx, eax
cmovge r14d, esi
cmp r15d, r14d
mov eax, reloc.WLDAP32.dll_Ordinal_79
cmovl edx, eax
cmovge r15d, r14d
cmp r12d, r15d
mov eax, 0xffffffc0
cmovl edx, eax
cmovge r12d, r15d
cmp r13d, r12d
mov eax, 0x40
cmovl edx, eax
cmovge r13d, r12d
mov eax, dword [rbp - 0x40]
cmp eax, r13d
cmovl edx, ecx
cmovge eax, r13d
mov ecx, dword [rbp + 0xa8]
cmp ecx, eax
cmovge ecx, eax
cmovl edx, r8d
mov eax, dword [rbp - 0x10]
mov r8d, 0xffffffc2
cmp eax, ecx
cmovge eax, ecx
cmovl edx, r8d
mov ecx, dword [rbp + 0x78]
cmp ecx, eax
mov r8d, 0x42
cmovge ecx, eax
cmovl edx, r8d
mov eax, dword [rbp + 0x100]
mov r8d, 0xffffffe3
cmp eax, ecx
cmovge eax, ecx
cmovl edx, r8d
mov ecx, dword [rbp + 0x5c]
mov dword [rbp + 8], edx
cmp ecx, eax
jge 0x1401d3c16
mov edx, 0x23
mov ebx, ecx
mov dword [rbp + 8], edx
jmp 0x1401d3c1c
mov ebx, eax
test edx, edx
je 0x1401d3c61
mov esi, dword [rbp + 8]
mov r13d, edx
mov rdx, qword [rbp + 0x120]
mov r10d, dword [rsp + 0x58]
mov r11d, dword [rbp - 0x20]
mov r12, qword [rbp + 0x10]
mov r15, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x54]
sar r13d, 4
shl esi, 0x1c
imul r13d, edx
sar esi, 0x1c
imul esi, edx
add r13d, r10d
mov dword [rbp - 0x78], r13d
add esi, r11d
mov dword [rsp + 0x50], esi
jmp 0x1401d3c87
mov r13d, dword [rbp - 0x78]
mov esi, dword [rsp + 0x50]
mov r12, qword [rbp + 0x10]
mov r15, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x54]
mov r10d, dword [rsp + 0x58]
mov r11d, dword [rbp - 0x20]
mov rdx, qword [rbp + 0x120]
mov r14d, dword [rbp + 0x88]
lea eax, [r8*8]
add dword [rbp - 0x44], eax
inc edx
add dword [rsp + 0x64], r8d
lea eax, [r8 + r8]
add dword [rbp + 0x6c], eax
add r14d, 4
mov eax, dword [rbp + 0x108]
add dword [rbp + 0xf4], eax
add dword [rbp + 0xf0], 2
sub qword [rbp - 0x70], 8
add qword [rbp + 0x80], 8
sub qword [rbp + 0x90], 0x20
add qword [rbp + 0xe8], 0x20
sub qword [rbp], 0x18
add qword [rbp + 0xa0], 0x18
sub qword [rbp + 0x98], 0x10
add qword [rbp - 0x28], 0x10
mov ecx, dword [rbp - 0x38]
mov r9d, dword [rbp + 0xc8]
mov edi, dword [rbp - 0x80]
mov qword [rbp + 0x120], rdx
mov dword [rbp + 0x88], r14d
cmp edx, dword [rbp + 0x118]
jle 0x1401d36e0
cmp esi, dword [rbp + 0xb4]
jg 0x1401d1415
cmp esi, dword [rbp + 0xc0]
jl 0x1401d1415
cmp r13d, dword [rbp + 0xc4]
jg 0x1401d1415
cmp r13d, dword [rsp + 0x70]
jl 0x1401d1415
mov r14, qword [rbp + 0xb8]
jmp 0x1401d3d61
mov r8d, dword [rsp + 0x54]
jmp 0x1401d3d66
mov r8d, dword [rsp + 0x54]
mov r9d, dword [rsp + 0x5c]
mov r12, qword [rbp + 0xd0]
mov eax, esi
imul eax, r8d
movsxd rdx, r13d
movsxd r15, eax
lea eax, [r8 + r8]
movsxd rcx, eax
add r15, rdx
add r15, qword [rbp + 0x60]
mov rax, qword [rbp + 0x330]
movsxd rdx, r9d
lea r8, [rcx - 1]
lea r9, [r15 + 1]
add r8, r15
add r9, rcx
lea rcx, [rbp + 0x20]
lea rax, [rax + rdx*8]
mov qword [rsp + 0x28], rcx
add rax, 0xb860
mov qword [rsp + 0x20], r12
mov rcx, r14
mov qword [rbp - 0x50], rax
lea rdx, [r15 - 2]
call qword [rax]
mov r9, qword [rbp + 0x10]
lea eax, [rsi*4]
mov r8, qword [rsp + 0x78]
movsxd rcx, eax
lea eax, [r13*4 - 8]
lea rsi, [r8 + rcx*2]
movsxd rcx, eax
movzx eax, word [rsi]
add eax, dword [rbp + 0x20]
movzx edx, word [r9 + rcx*2]
add eax, edx
mov dword [rbp + 0x20], eax
mov eax, dword [rsp + 0x50]
lea eax, [rax*4 + 8]
movsxd rcx, eax
lea eax, [r13*4]
movsxd rdx, eax
movzx eax, word [r9 + rdx*2 - 8]
add eax, dword [rbp + 0x24]
lea r8, [r8 + rcx*2]
movzx ecx, word [r8]
lea r14, [r9 + rdx*2]
add eax, ecx
lea rdi, [r9 + rdx*2]
mov dword [rbp + 0x24], eax
lea rdx, [r15 + 2]
movzx ecx, word [r8]
movzx eax, word [rdi + 8]
add eax, dword [rbp + 0x28]
add eax, ecx
mov dword [rbp + 0x28], eax
mov eax, dword [rsp + 0x54]
neg eax
add eax, eax
cdqe
lea r9, [rax - 1]
lea r8, [rax + 1]
add r9, r15
lea rax, [rbp + 0x30]
add r8, r15
mov r15, qword [rbp + 0xb8]
mov qword [rsp + 0x28], rax
mov rcx, r15
mov rax, qword [rbp - 0x50]
mov qword [rsp + 0x20], r12
call qword [rax]
movzx r8d, word [rsi]
lea eax, [r13*4 + 8]
add r8d, dword [rbp + 0x30]
mov esi, dword [rsp + 0x50]
movsxd rcx, eax
mov rax, qword [rbp + 0x10]
movzx edx, word [rax + rcx*2]
lea eax, [rsi*4 - 8]
add r8d, edx
movsxd rcx, eax
mov dword [rbp + 0x30], r8d
mov rax, qword [rsp + 0x78]
movzx r9d, word [rax + rcx*2]
lea rdx, [rax + rcx*2]
add r9d, dword [rbp + 0x34]
movzx ecx, word [rdi + 8]
mov eax, dword [rbp + 0x20]
add r9d, ecx
mov dword [rbp + 0x34], r9d
movzx r10d, word [rdx]
add r10d, dword [rbp + 0x38]
movzx ecx, word [r14 - 8]
lea edx, [rax*8 + 2]
mov eax, dword [rbp + 0x24]
add r10d, ecx
lea ecx, [rbx*8]
mov dword [rbp + 0x38], r10d
cmp edx, ecx
cmovge edx, ecx
lea ecx, [rax*8 + 3]
mov eax, dword [rbp + 0x28]
cmp ecx, edx
cmovge ecx, edx
lea edx, [rax*8 + 4]
cmp edx, ecx
lea eax, [r8*8 + 5]
cmovge edx, ecx
cmp eax, edx
jge 0x1401d3f20
lea edx, [r8*8 + 5]
lea eax, [r9*8 + 6]
cmp eax, edx
cmovge eax, edx
lea edx, [r10*8 + 7]
cmp edx, eax
cmovge edx, eax
mov eax, edx
mov r8d, edx
and eax, 7
je 0x1401d419f
lea r11d, [rax - 2]
lea rcx, [rax*2 - 2]
mov dword [rbp - 0x48], r11d
lea rdi, [0x140000000]
movsx eax, byte [rcx + rdi + 0x32de50]
add r13d, eax
movsx eax, byte [rcx + rdi + 0x32de51]
add esi, eax
mov eax, dword [rbp - 0x68]
sar eax, 1
dec eax
mov dword [rsp + 0x50], esi
mov dword [rbp - 0x68], eax
test eax, eax
jle 0x1401d419f
mov dword [rsp + 0x6c], edx
nop
mov ecx, dword [rbp + 0x158]
mov edx, r13d
shl edx, 0x10
mov eax, esi
and eax, 0x7fff
or edx, eax
mov eax, dword [rbp + 0xb0]
sub eax, edx
add ecx, edx
or ecx, eax
test ecx, 0x80004000
jne 0x1401d4191
mov edx, dword [rsp + 0x54]
mov eax, esi
imul eax, edx
movsxd rcx, r13d
movsxd r10, eax
movsxd rax, r11d
add r10, rcx
add r10, qword [rbp + 0x60]
mov rcx, qword [rbp + 0xb8]
lea r15, [rax*2 + 0x32de55]
lea r12, [rax*2 + 0x32de54]
add r15, rdi
lea rsi, [rax*2 + 0x32de53]
add r12, rdi
lea r14, [rax*2 + 0x32de52]
add rsi, rdi
lea rbx, [rax*2 + 0x32de51]
add r14, rdi
add rbx, rdi
lea rdi, [rdi + rax*2]
movsx eax, byte [r15]
lea rdi, [rdi + 0x32de50]
movsx r9, byte [r12]
movsx r8, byte [r14]
imul eax, edx
cdqe
add rax, r10
add r9, rax
movsx eax, byte [rsi]
imul eax, edx
cdqe
add rax, r10
add r8, rax
movsx eax, byte [rbx]
imul eax, edx
movsx rdx, byte [rdi]
cdqe
add rax, r10
add rdx, rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0xd0]
mov qword [rsp + 0x20], rax
mov rax, qword [rbp - 0x50]
call qword [rax]
mov r11, qword [rsp + 0x78]
movsx eax, byte [rbx]
add eax, dword [rsp + 0x50]
mov r8, qword [rbp + 0x10]
shl eax, 2
cdqe
movzx edx, word [r11 + rax*2]
movsx eax, byte [rdi]
add eax, r13d
shl eax, 2
cdqe
movzx r10d, word [r8 + rax*2]
movsx eax, byte [rsi]
add r10d, dword [rbp + 0x20]
mov esi, dword [rsp + 0x50]
add r10d, edx
add eax, esi
mov dword [rbp + 0x20], r10d
shl eax, 2
cdqe
movzx edx, word [r11 + rax*2]
movsx eax, byte [r14]
add eax, r13d
shl eax, 2
cdqe
movzx r9d, word [r8 + rax*2]
add r9d, dword [rbp + 0x24]
movsx eax, byte [r15]
add r9d, edx
add eax, esi
mov dword [rbp + 0x24], r9d
shl eax, 2
cdqe
movzx edx, word [r11 + rax*2]
movsx eax, byte [r12]
add eax, r13d
mov ecx, dword [rsp + 0x6c]
and ecx, 0xfffffff8
shl eax, 2
cdqe
movzx r8d, word [r8 + rax*2]
lea eax, [r10*8 + 1]
add r8d, dword [rbp + 0x28]
add r8d, edx
cmp eax, ecx
mov dword [rbp + 0x28], r8d
cmovge eax, ecx
lea ecx, [r9*8 + 2]
cmp ecx, eax
lea r8d, [r8*8 + 3]
cmovge ecx, eax
cmp r8d, ecx
cmovge r8d, ecx
mov ecx, r8d
and ecx, 7
je 0x1401d4191
mov eax, dword [rbp - 0x48]
lea rdi, [0x140000000]
mov r9d, dword [rbp - 0x68]
add eax, ecx
movsxd rcx, eax
dec r9d
mov dword [rbp - 0x68], r9d
mov dword [rsp + 0x6c], r8d
movzx r11d, byte [rcx + rdi + 0x32de47]
mov dword [rbp - 0x48], r11d
lea rcx, [r11*2 + 2]
movsx eax, byte [rcx + rdi + 0x32de50]
add r13d, eax
movsx eax, byte [rcx + rdi + 0x32de51]
add esi, eax
mov dword [rsp + 0x50], esi
test r9d, r9d
jg 0x1401d3f90
mov r12, qword [rbp + 0xd0]
mov r15, qword [rbp + 0xb8]
mov edx, dword [rsp + 0x54]
and r8d, 0xfffffff8
mov eax, esi
movsxd rcx, r13d
imul eax, edx
neg edx
movsxd rdx, edx
lea ebx, [r8 + r8]
movsxd r8, dword [rsp + 0x5c]
movsxd r9, eax
mov rax, qword [rbp + 0x330]
add r9, rcx
add r9, qword [rbp + 0x60]
lea rcx, [rbp + 0x20]
add rax, 0xb898
mov qword [rsp + 0x30], rcx
add rdx, r9
mov qword [rsp + 0x28], r12
mov rcx, r15
mov qword [rbp + 0x140], rdx
lea r14, [r12 + r9]
lea r10, [rax + r8*8]
mov r8, r14
lea rax, [r9 + 1]
mov qword [rbp + 0x170], r10
dec r9
mov qword [rsp + 0x20], rax
call qword [r10]
mov rdi, qword [rsp + 0x78]
lea eax, [rsi*4]
mov r11, qword [rbp + 0x10]
movsxd r8, eax
lea eax, [r13*4]
movsxd rcx, eax
lea rdx, [r11 + rcx*2]
movzx ecx, word [r11 + rcx*2]
lea r9, [rdi - 8]
lea r9, [r9 + r8*2]
add r8, 4
lea rax, [rdi + r8*2]
mov qword [rbp + 0x160], r9
movzx r9d, word [r9]
add r9d, dword [rbp + 0x20]
add r9d, ecx
mov qword [rbp + 0x138], rax
mov dword [rbp + 0x20], r9d
movzx ecx, word [rax]
lea eax, [r13*4]
movzx r10d, word [rdx]
add r10d, dword [rbp + 0x24]
add r10d, ecx
movsxd r8, eax
mov dword [rbp + 0x24], r10d
lea rax, [r11 - 8]
shl r9d, 4
inc r9d
lea rax, [rax + r8*2]
mov qword [rbp + 0x168], rax
lea eax, [rsi*4]
movsxd rcx, eax
lea rax, [r11 + 8]
lea rax, [rax + r8*2]
mov qword [rbp + 0x130], rax
lea rdx, [rdi + rcx*2]
movzx ecx, word [r11 + r8*2 - 8]
movzx edi, word [rdx]
add edi, dword [rbp + 0x28]
add edi, ecx
mov dword [rbp + 0x28], edi
movzx edx, word [rdx]
add edx, dword [rbp + 0x2c]
movzx ecx, word [rax]
add edx, ecx
cmp r9d, ebx
mov dword [rbp + 0x2c], edx
cmovge r9d, ebx
shl r10d, 4
add r10d, 2
cmp r10d, r9d
cmovge r10d, r9d
shl edi, 4
add edi, 3
mov eax, edx
cmp edi, r10d
cmovge edi, r10d
shl eax, 4
add eax, 4
cmp eax, edi
jge 0x1401d430a
mov edi, edx
shl edi, 4
add edi, 4
mov rdx, qword [rbp + 0x140]
lea rcx, [rbp + 0x20]
mov qword [rsp + 0x30], rcx
lea rax, [r14 + 1]
mov qword [rsp + 0x28], r12
lea r8, [r14 - 1]
mov qword [rsp + 0x20], rax
mov rcx, r15
mov rax, qword [rbp + 0x170]
lea r9, [rdx + 1]
dec rdx
call qword [rax]
mov r10, qword [rbp + 0x138]
mov r9, qword [rbp + 0x160]
mov r8, qword [rbp + 0x168]
mov r11, qword [rbp + 0x130]
movzx edx, word [r9]
movzx ecx, word [r8]
add edx, dword [rbp + 0x20]
add edx, ecx
mov dword [rbp + 0x20], edx
movzx r8d, word [r8]
add r8d, dword [rbp + 0x24]
movzx ecx, word [r10]
add r8d, ecx
shl edx, 4
mov dword [rbp + 0x24], r8d
add edx, 5
movzx r9d, word [r9]
add r9d, dword [rbp + 0x28]
movzx ecx, word [r11]
add r9d, ecx
mov dword [rbp + 0x28], r9d
movzx ecx, word [r10]
movzx r10d, word [r11]
add r10d, dword [rbp + 0x2c]
add r10d, ecx
cmp edx, edi
mov dword [rbp + 0x2c], r10d
mov eax, r10d
cmovge edx, edi
shl r8d, 4
add r8d, 6
cmp r8d, edx
cmovge r8d, edx
shl r9d, 4
add r9d, 7
cmp r9d, r8d
cmovge r9d, r8d
shl eax, 4
add eax, 8
mov ebx, r9d
cmp eax, r9d
jge 0x1401d43e6
shl r10d, 4
lea ebx, [r10 + 8]
mov r12, qword [rbp + 0x10]
lea r10, [0x140000000]
mov eax, ebx
and eax, 0xf
lea rcx, [rax + rax]
movsx eax, byte [rcx + r10 + 0x32de60]
add r13d, eax
movsx eax, byte [rcx + r10 + 0x32de61]
add esi, eax
sar ebx, 4
mov r15, qword [rsp + 0x78]
jmp 0x1401d141c
mov edx, dword [rsp + 0x54]
mov eax, edx
movsxd r11, dword [rsp + 0x5c]
neg eax
shl ebx, 4
add r11, 0x1713
movsxd r10, eax
mov qword [rbp + 0x140], r10
lea r11, [rcx + r11*8]
mov qword [rbp + 0x170], r11
nop word [rax + rax]
mov eax, esi
movsxd rcx, r13d
imul eax, edx
movsxd rdx, eax
add rdx, rcx
lea rcx, [rbp + 0x20]
add rdx, rdi
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r15
mov rcx, r14
lea rax, [rdx + 1]
lea r9, [rdx - 1]
mov qword [rsp + 0x20], rax
lea r8, [r15 + rdx]
add rdx, r10
call qword [r11]
mov r10, qword [rsp + 0x78]
lea eax, [rsi*4]
movsxd r8, eax
lea eax, [r13*4]
movsxd rcx, eax
lea eax, [r13*4]
movzx r9d, word [r12 + rcx*2]
lea rdx, [r12 + rcx*2]
add r9d, dword [rbp + 0x20]
movzx ecx, word [r10 + r8*2 - 8]
add r9d, ecx
mov dword [rbp + 0x20], r9d
movzx ecx, word [r10 + r8*2 + 8]
movzx r11d, word [rdx]
add r11d, dword [rbp + 0x24]
add r11d, ecx
movsxd r8, eax
mov dword [rbp + 0x24], r11d
lea eax, [rsi*4]
shl r9d, 4
movsxd rcx, eax
inc r9d
lea rdx, [r10 + rcx*2]
movzx ecx, word [r12 + r8*2 - 8]
movzx r10d, word [rdx]
add r10d, dword [rbp + 0x28]
add r10d, ecx
mov dword [rbp + 0x28], r10d
movzx edx, word [rdx]
add edx, dword [rbp + 0x2c]
movzx ecx, word [r12 + r8*2 + 8]
add edx, ecx
cmp r9d, ebx
mov dword [rbp + 0x2c], edx
mov eax, edx
cmovge r9d, ebx
shl r11d, 4
add r11d, 3
cmp r11d, r9d
cmovge r11d, r9d
shl r10d, 4
add r10d, 4
cmp r10d, r11d
cmovge r10d, r11d
shl eax, 4
add eax, 0xc
mov ebx, r10d
cmp eax, r10d
jge 0x1401d4553
shl edx, 4
lea ebx, [rdx + 0xc]
test bl, 0xf
je 0x1401d45b5
mov eax, ebx
shl eax, 0x1c
sar eax, 0x1e
sub r13d, eax
mov eax, ebx
shl eax, 0x1e
and ebx, 0xfffffff0
sar eax, 0x1e
sub esi, eax
sub dword [rbp - 0x68], 1
je 0x1401d45b5
mov ecx, dword [rbp + 0x158]
mov edx, r13d
mov r10, qword [rbp + 0x140]
mov eax, esi
mov r11, qword [rbp + 0x170]
and eax, 0x7fff
shl edx, 0x10
or edx, eax
mov eax, dword [rbp + 0xb0]
sub eax, edx
add ecx, edx
mov edx, dword [rsp + 0x54]
or ecx, eax
test ecx, 0x80004000
je 0x1401d4450
sar ebx, 4
jmp 0x1401d1410
mov r15, r11
jmp 0x1401d1415
mov rcx, qword [rbp + 0x150]
mov eax, ebx
mov rdx, qword [rbp + 0x338]
cmp ecx, ebx
cmovl r8d, dword [rbp + 0x11c]
cmovl eax, ecx
mov dword [rdx + 0xbc], eax
mov dword [rdx + 0xc0], r8d
mov rbx, qword [rbp + 0x330]
movsxd rax, dword [rbx + 0x5fc8]
cmp eax, 2
jl 0x1401d462e
movzx r9d, byte [r10 + rax*4 + 0x32de1b]
mov rcx, rbx
movzx r8d, byte [r10 + rax*4 + 0x32de1a]
xor eax, eax
mov dword [rsp + 0x28], eax
mov rax, qword [rbp + 0x350]
mov qword [rsp + 0x20], rax
call fcn.1401cbfb0
add rsp, 0x3e8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret