Function at 0x140090ca0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub rsp, 0x68
mov r11, qword [rsp + 0x98]
mov eax, dword [r11 + 0x28]
add eax, 0xfffffffe
cmp eax, 0x3f
ja case.0x1400824b2.14
mov qword [rsp + 0x60], rbx
lea rbx, [0x140000000]
cdqe
movzx eax, byte [rbx + rax + 0x825bc]
mov r10d, dword [rbx + rax*4 + 0x82588]
add r10, rbx
mov rbx, qword [rsp + 0x60]
jmp r10
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x140082600
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x1400834c0
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x1400854a0
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x14008b980
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x14008f6c0
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x140086a60
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x1400883e0
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x140089bb0
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x14008cf10
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x140084310
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x14008e150
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x140090ca0
add rsp, 0x68
ret
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push r12
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xe0
mov r12, qword [rbp + 0x5f]
mov r15, rdx
mov r10, qword [rbp + 0x77]
mov rax, rcx
mov r14, qword [rbp + 0x7f]
mov edx, 1
mov r11, r9
mov qword [rbp - 0x29], r14
mov ecx, dword [r12 + 8]
mov r9, r8
mov r10, qword [r10]
lea r8, [rax + r15]
shl rdx, cl
mov rcx, qword [r12 + 0x10]
sub rdx, 0x10
mov qword [rbp - 0x79], rdx
mov qword [rbp - 0x71], rcx
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x58], r8
cmp rax, 8
jb 0x14008267e
lea rax, [r8 - 7]
mov qword [rbp - 0x49], rax
jmp 0x140082682
mov qword [rbp - 0x49], r15
cmp dword [r12 + 4], 9
mov eax, 0x200
mov ebx, 0x40
cmovl eax, ebx
mov qword [rbp - 0x41], rax
add rax, r15
mov qword [rsp + 8], rax
lea rax, [r15 + 8]
cmp rax, r8
jae 0x140083487
mov qword [rsp + 0xd8], rsi
mov eax, r11d
mov qword [rsp + 0xd0], rdi
mov qword [rsp + 0xc8], r13
mov dword [rbp + 0x37], eax
mov dword [rsp + 0x50], eax
mov rsi, qword [rbp + 0x67]
lea rax, [rcx + r15]
mov rcx, qword [rbp + 0x3f]
sub r8, r15
cmp r15, rdx
mov qword [rsp], r8
mov r14, rdx
mov qword [rsp + 0x10], 0x7e4
mov rsi, qword [rsi + 0x38]
cmovb r14, r15
cmp rax, rdx
mov dword [rbp - 0x51], 0
mov r13, rdx
cmovb r13, rax
xor eax, eax
mov qword [rsp + 0x18], rax
mov qword [rbp - 0x61], rax
mov rax, qword [r12 + 0x50]
mov r12, r11
and r12, r15
mov qword [rsp + 0x28], rax
add r12, r9
movabs rax, 0xbd1e35a7bd000000
mov rbx, qword [r12]
movzx edi, byte [r12]
imul rbx, rax
mov rax, qword [rbp + 0x6f]
shr rbx, 0x30
movsxd r15, dword [rax]
sub rcx, r15
cmp rcx, qword [rbp + 0x3f]
jae 0x140082833
mov r11d, dword [rbp + 0x37]
and r11, rcx
add r11, r9
cmp dil, byte [r11]
jne 0x140082833
mov rax, r8
xor ecx, ecx
shr rax, 3
mov rdx, r12
test rax, rax
je 0x1400827b2
mov r10, r11
sub r10, r12
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rdx + r10]
cmp r9, r8
jne 0x140082819
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140082790
mov r8, qword [rsp]
and r8d, 7
je 0x1400827d3
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x1400827d3
inc rcx
sub r8, 1
jne 0x1400827c0
mov rax, rcx
cmp rax, 4
jb 0x14008282a
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, 0x7e4
jbe 0x14008282a
mov rdi, qword [rsp]
mov r8, rax
mov r12, qword [rbp + 0x5f]
mov qword [rbp - 0x61], r15
mov r15, qword [rbp + 0x3f]
mov dword [rsi + rbx*4], r15d
mov qword [rsp + 0x18], rax
mov qword [rsp + 0x10], rcx
jmp 0x140082abd
xor r8, r9
tzcnt rax, r8
shr rax, 3
add rax, rcx
jmp 0x1400827d6
mov r10, qword [rsp + 0x20]
mov r9, qword [rbp + 0x47]
mov ecx, dword [rsi + rbx*4]
mov r15, qword [rbp + 0x3f]
mov r11d, ecx
mov eax, dword [rbp + 0x37]
mov dword [rsi + rbx*4], r15d
and r11, rax
add r11, r9
mov rbx, r15
sub rbx, rcx
cmp dil, byte [r11]
jne 0x14008333b
test rbx, rbx
je 0x14008333b
cmp rbx, r14
ja 0x14008333b
mov rdi, qword [rsp]
xor ecx, ecx
mov rax, rdi
mov rdx, r12
shr rax, 3
test rax, rax
je 0x1400828aa
mov r10, r11
sub r10, r12
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rdx + r10]
cmp r9, r8
jne 0x14008290a
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140082890
mov r8, rdi
and r8d, 7
je 0x1400828c9
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x1400828c9
inc rcx
sub r8, 1
jne 0x1400828b6
mov rdx, rcx
cmp rdx, 4
jb 0x14008291b
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, 0x7e4
jbe 0x14008291b
mov r12, qword [rbp + 0x5f]
mov r8, rdx
mov qword [rsp + 0x18], rdx
mov qword [rbp - 0x61], rbx
mov qword [rsp + 0x10], rax
jmp 0x140082abd
xor r8, r9
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x1400828cc
mov r8, qword [rbp + 0x67]
mov rbx, qword [r8 + 0x30]
mov rdx, qword [rbx + 8]
mov r14, qword [rbx + 0x10]
mov rax, rdx
shr rax, 7
cmp r14, rax
jb 0x140083327
imul ecx, dword [r12], 0x1e35a7bd
lea rax, [rdx + 1]
mov r8, qword [rbp + 0x5f]
mov qword [rbx + 8], rax
mov rax, qword [r8 + 0x78]
shr rcx, 0x11
and ecx, 0x7ffe
movzx edx, byte [rcx + rax]
test dl, dl
je 0x140082ab5
mov rax, qword [r8 + 0x70]
mov r11d, edx
movzx esi, word [rax + rcx*2]
cmp rdx, rdi
ja 0x140082ab5
mov rdi, qword [r8 + 0x58]
mov eax, r11d
imul rax, rsi
mov edx, dword [rdi + rdx*4 + 0x20]
mov r8d, r11d
xor ecx, ecx
shr r8, 3
add rdx, rax
add rdx, qword [rdi + 0xa8]
test r8, r8
je 0x1400829ce
mov r10, r12
sub r10, rdx
nop word [rax + rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x140082a94
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400829b0
mov r8, r11
and r8d, 7
je 0x1400829f3
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r12], al
jne 0x1400829f3
inc rcx
sub r8, 1
jne 0x1400829e0
mov r9, rcx
mov r12, qword [rbp + 0x5f]
mov eax, dword [r12 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140082aaf
test r9, r9
je 0x140082aaf
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r12 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [r11 + rdi]
and edx, 0x3f
lea rdx, [rdx + r8*4]
shl rdx, cl
inc rdx
add rdx, rsi
add rdx, r13
cmp rdx, qword [rsp + 0x28]
ja 0x140082aaf
mov rdi, qword [rsp]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
mov rcx, qword [rsp + 0x10]
add rax, 0x780
cmp rax, rcx
jb 0x140082aa8
mov qword [rsp + 0x10], rax
sub r11d, r9d
lea rax, [r14 + 1]
mov qword [rsp + 0x18], r9
mov qword [rbx + 0x10], rax
mov r8, r9
mov dword [rbp - 0x51], r11d
mov qword [rbp - 0x61], rdx
jmp 0x140082abd
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x1400829f6
mov r8, qword [rsp + 0x18]
jmp 0x140082ac2
mov rdi, qword [rsp]
jmp 0x140082ab8
mov r12, r8
mov r8, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x10]
cmp rcx, 0x7e4
jbe 0x140083332
mov ebx, dword [rsp + 0x50]
lea rdx, [r15 + 1]
mov qword [rsp + 8], rdx
mov dword [rsp + 0x28], 0
mov dword [rbp + 0x37], ebx
dec rdi
cmp dword [r12 + 4], 5
mov qword [rsp], rdi
jge 0x140082b06
lea rax, [r8 - 1]
mov r11, rdi
cmp rax, rdi
cmovb r11, rax
jmp 0x140082b09
xor r11d, r11d
mov r8, qword [rbp - 0x79]
mov rax, qword [rbp - 0x71]
cmp rdx, r8
mov r12, r8
mov qword [rsp + 0x30], r11
cmovb r12, rdx
mov qword [rsp + 0x38], 0
add rax, rdx
mov qword [rsp + 0x40], 0x7e4
cmp rax, r8
mov dword [rsp + 0x48], 0
mov rcx, r8
mov r8, qword [rbp + 0x5f]
cmovb rcx, rax
mov qword [rbp - 0x39], rcx
mov rcx, qword [rbp + 0x4f]
mov rax, qword [r8 + 0x50]
and rcx, rdx
mov r8, qword [rbp + 0x47]
mov rdi, qword [rcx + r8]
lea r13, [rcx + r8]
mov qword [rbp - 0x31], rax
mov rax, qword [rbp + 0x67]
mov rsi, qword [rax + 0x38]
lea rax, [rcx + r11]
movzx r14d, byte [rax + r8]
mov rcx, rdx
movabs rax, 0xbd1e35a7bd000000
imul rdi, rax
mov rax, qword [rbp + 0x6f]
shr rdi, 0x30
movsxd r15, dword [rax]
sub rcx, r15
cmp rcx, rdx
jae 0x140082d01
mov eax, ebx
and rcx, rax
lea rax, [rcx + r11]
cmp r14b, byte [rax + r8]
jne 0x140082d01
mov rax, qword [rsp]
lea rbx, [rcx + r8]
mov r8, rax
xor ecx, ecx
shr r8, 3
mov rdx, r13
test r8, r8
je 0x140082c02
mov r10, rbx
sub r10, r13
nop word [rax + rax]
mov rax, qword [rdx]
mov r9, qword [r10 + rdx]
cmp rax, r9
jne 0x140082ced
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140082be0
mov rax, qword [rsp]
mov r8, rax
and r8d, 7
je 0x140082c22
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + rbx], al
jne 0x140082c22
inc rcx
sub r8, 1
jne 0x140082c10
mov rax, rcx
mov rdx, qword [rsp + 8]
cmp rax, 4
jb 0x140082d01
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, 0x7e4
jbe 0x140082d01
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x40], rcx
mov dword [rsi + rdi*4], edx
mov rdi, qword [rsp]
mov r12, qword [rbp + 0x5f]
mov rax, qword [rsp + 0x10]
mov r15, qword [rbp + 0x3f]
add rax, 0xaf
mov r13, qword [rsp + 0x20]
cmp qword [rsp + 0x40], rax
jb 0x140082f95
mov ecx, dword [rsp + 0x28]
inc r15
movups xmm0, xmmword [rsp + 0x30]
inc ecx
inc rdx
movups xmm1, xmmword [rsp + 0x40]
inc r13
mov qword [rbp + 0x3f], r15
mov qword [rsp + 8], rdx
mov qword [rsp + 0x20], r13
mov dword [rsp + 0x28], ecx
movups xmmword [rbp - 0x69], xmm0
movups xmmword [rbp - 0x59], xmm1
cmp ecx, 4
jge 0x140082f8a
lea rax, [rdx + 7]
cmp rax, qword [rsp + 0x58]
jae 0x140082f8a
mov r15, qword [rbp - 0x59]
mov r8, qword [rbp - 0x69]
mov ebx, dword [rbp + 0x37]
mov qword [rsp + 0x10], r15
mov qword [rsp + 0x18], r8
jmp 0x140082ae7
xor rax, r9
tzcnt rax, rax
shr rax, 3
add rax, rcx
jmp 0x140082c25
mov ecx, dword [rsi + rdi*4]
mov rbx, rdx
mov eax, dword [rbp + 0x37]
mov r8d, ecx
and r8, rax
mov dword [rsi + rdi*4], edx
sub rbx, rcx
mov rcx, qword [rbp + 0x47]
lea rax, [r8 + r11]
cmp r14b, byte [rax + rcx]
jne 0x140082c61
test rbx, rbx
je 0x140082c61
mov rdi, qword [rsp]
cmp rbx, r12
ja 0x140082c65
lea r11, [r8 + rcx]
xor eax, eax
mov r8, rdi
mov rdx, r13
shr r8, 3
test r8, r8
je 0x140082d7a
mov r10, r11
sub r10, r13
nop dword [rax]
mov rcx, qword [rdx]
mov r9, qword [r10 + rdx]
cmp rcx, r9
jne 0x140082dd9
add rdx, 8
add rax, 8
sub r8, 1
jne 0x140082d60
mov r8, rdi
and r8d, 7
je 0x140082d99
sub rdx, rax
movzx ecx, byte [rdx + rax]
cmp byte [rax + r11], cl
jne 0x140082d99
inc rax
sub r8, 1
jne 0x140082d86
mov rdx, rax
cmp rdx, 4
jb 0x140082dea
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, 0x7e4
jbe 0x140082dea
mov qword [rsp + 0x30], rdx
mov rdx, qword [rsp + 8]
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], rax
jmp 0x140082c65
xor rcx, r9
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x140082d9c
mov rax, qword [rbp + 0x67]
mov r12, qword [rbp + 0x5f]
mov rbx, qword [rax + 0x30]
mov rdx, qword [rbx + 8]
mov r14, qword [rbx + 0x10]
mov rax, rdx
shr rax, 7
cmp r14, rax
jb 0x140082f5e
imul ecx, dword [r13], 0x1e35a7bd
lea rax, [rdx + 1]
mov qword [rbx + 8], rax
mov rax, qword [r12 + 0x78]
shr rcx, 0x11
and ecx, 0x7ffe
movzx edx, byte [rcx + rax]
test dl, dl
je 0x140082f5e
mov rax, qword [r12 + 0x70]
mov r11d, edx
movzx esi, word [rax + rcx*2]
cmp rdx, rdi
ja 0x140082f5e
mov rdi, qword [r12 + 0x58]
mov eax, r11d
imul rax, rsi
mov edx, dword [rdi + rdx*4 + 0x20]
mov r8d, r11d
xor ecx, ecx
shr r8, 3
add rdx, rax
add rdx, qword [rdi + 0xa8]
test r8, r8
je 0x140082e9e
mov r10, r13
sub r10, rdx
nop dword [rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x140082f68
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140082e80
mov r8, r11
and r8d, 7
je 0x140082ec3
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r13], al
jne 0x140082ec3
inc rcx
sub r8, 1
jne 0x140082eb0
mov r9, rcx
mov eax, dword [r12 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140082f7c
test r9, r9
je 0x140082f7c
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r12 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [rdi + r11]
and edx, 0x3f
lea rax, [rdx + r8*4]
mov rdx, qword [rbp - 0x39]
shl rax, cl
inc rdx
add rax, rsi
add rdx, rax
cmp rdx, qword [rbp - 0x31]
ja 0x140082f7c
mov rdi, qword [rsp]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, 0x7e4
jb 0x140082f5e
mov qword [rsp + 0x40], rax
sub r11d, r9d
lea rax, [r14 + 1]
mov qword [rsp + 0x30], r9
mov qword [rbx + 0x10], rax
mov dword [rsp + 0x48], r11d
mov qword [rsp + 0x38], rdx
mov rdx, qword [rsp + 8]
jmp 0x140082c69
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140082ec6
mov rdx, qword [rsp + 8]
mov rdi, qword [rsp]
jmp 0x140082c69
mov rax, qword [rbp - 0x69]
mov qword [rsp + 0x18], rax
jmp 0x140082f9a
mov rax, qword [rsp + 0x18]
mov r10, qword [rbp - 0x79]
mov rcx, qword [rbp - 0x41]
mov rbx, qword [rbp - 0x61]
lea r11, [rcx + rax*2]
mov rax, qword [rbp - 0x71]
add r11, r15
add rax, r15
cmp rax, r10
mov qword [rsp + 8], r11
mov r11, qword [rbp + 0x6f]
cmovb r10, rax
lea rdx, [r11 + 4]
cmp rbx, r10
ja 0x14008304b
movsxd rax, dword [r11]
lea rcx, [rbx + 3]
movsxd r9, dword [rdx]
mov r8, rcx
sub r8, rax
sub rcx, r9
cmp rbx, rax
jne 0x140082fea
xor r8d, r8d
jmp 0x14008304f
cmp rbx, r9
jne 0x140082ff7
mov r8d, 1
jmp 0x14008304f
cmp r8, 7
jae 0x140083013
movzx ecx, r8b
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14008304f
cmp rcx, 7
jae 0x14008302b
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14008304f
movsxd rax, dword [r11 + 8]
cmp rbx, rax
jne 0x14008303c
mov r8d, 2
jmp 0x14008304f
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x14008304f
lea r8, [rbx + 0xf]
cmp rbx, r10
ja 0x14008306f
test r8, r8
je 0x14008306f
mov eax, dword [r11 + 8]
mov dword [r11 + 0xc], eax
mov eax, dword [rdx]
mov dword [r11 + 8], eax
mov eax, dword [r11]
mov dword [rdx], eax
mov dword [r11], ebx
mov rcx, qword [rbp + 0x7f]
mov esi, dword [rbp - 0x51]
mov r11, qword [rsp + 0x18]
movzx eax, sil
shl eax, 0x19
or eax, r11d
mov dword [rcx], r13d
mov dword [rcx + 4], eax
mov r14d, dword [r12 + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x14008309d
xor edi, edi
jmp 0x140083117
mov r11d, dword [r12 + 0x40]
add r8, 0xfffffffffffffff0
mov r10d, 1
lea ecx, [r11 + 2]
shl r10, cl
sub r10, r14
add r10, r8
bsr eax, r10d
mov rdx, r10
mov rdi, r10
dec eax
mov ecx, eax
mov r9d, eax
shr rdx, cl
sub r9, r11
and edx, 1
lea r8, [r9 - 1]
shl r9, 0xa
lea r8, [rdx + r8*2]
lea rax, [rdx + 2]
shl rax, cl
mov ecx, r11d
mov r11, qword [rsp + 0x18]
sub rdi, rax
shl r8, cl
mov eax, 1
shl ax, cl
add r8w, 0x10
dec ax
shr rdi, cl
and ax, r10w
add r8w, ax
add r8w, r14w
or r8w, r9w
mov r14, qword [rbp + 0x7f]
lea edx, [r11 + rsi]
mov eax, 0x3ff
movsxd r9, edx
mov word [r14 + 0xe], r8w
and r8w, ax
mov dword [r14 + 8], edi
cmp r13, 6
jae 0x140083145
movzx r10d, r13w
mov ecx, 0x17
jmp 0x1400831b6
cmp r13, 0x82
jae 0x14008316f
lea eax, [r13 - 2]
bsr ecx, eax
lea r10, [r13 - 2]
dec ecx
shr r10, cl
inc cx
add cx, cx
add r10w, cx
mov ecx, 0x17
jmp 0x1400831b6
mov ecx, 0x17
cmp r13, 0x842
jae 0x14008318c
lea eax, [r13 - 0x42]
bsr r10d, eax
add r10w, 0xa
jmp 0x1400831b6
cmp r13, 0x1842
jae 0x14008319d
mov r10d, reloc.WS2_32.dll_setsockopt
jmp 0x1400831b6
mov r10d, reloc.WS2_32.dll_shutdown
cmp r13, 0x5842
movzx eax, cx
cmovb ax, r10w
movzx r10d, ax
cmp r9, 0xa
jae 0x1400831c3
sub r9w, 2
jmp 0x140083203
cmp r9, 0x86
jae 0x1400831e8
add r9, 0xfffffffffffffffa
lea eax, [rdx - 6]
bsr ecx, eax
dec ecx
shr r9, cl
add cx, 2
add cx, cx
add r9w, cx
jmp 0x140083203
cmp r9, 0x846
jae 0x1400831ff
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x140083203
movzx r9d, cx
movzx edx, r10w
movzx eax, r9w
and dx, 7
and ax, 7
shl dx, 3
or dx, ax
test r8w, r8w
jne 0x14008323b
cmp r10w, 8
jae 0x14008323b
cmp r9w, 0x10
jae 0x14008323b
cmp r9w, 8
jb 0x14008326f
or dx, 0x40
jmp 0x14008326f
movzx eax, r10w
mov r8d, 0xc0
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, r9w
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, r8w
add ax, cx
or dx, ax
mov rax, qword [rbp + 0x8f]
xor r10d, r10d
mov r8, qword [rbp - 0x49]
mov word [r14 + 0xc], dx
add r14, 0x10
mov qword [rbp + 0x7f], r14
lea rdx, [r15 + 2]
add qword [rax], r13
lea rax, [r11 + r15]
cmp rax, r8
mov qword [rsp + 0x20], r10
cmovb r8, rax
mov rax, r11
shr rax, 2
cmp rbx, rax
jae 0x1400832d6
lea rax, [rbx*4]
mov rcx, r11
sub rcx, rax
lea rax, [rcx + r15]
cmp rdx, rax
mov eax, 2
cmova rcx, rax
lea rdx, [r15 + rcx]
cmp r8, rdx
cmovb rdx, r8
cmp rdx, r8
jae 0x14008331b
mov r9, qword [rbp + 0x47]
movabs r14, 0xbd1e35a7bd000000
mov r12, qword [rbp + 0x67]
mov rbx, qword [rbp + 0x4f]
mov rax, rdx
and rax, rbx
mov rcx, qword [rax + r9]
mov rax, qword [r12 + 0x38]
imul rcx, r14
shr rcx, 0x30
mov dword [rax + rcx*4], edx
inc rdx
cmp rdx, r8
jb 0x1400832f1
mov r12, qword [rbp + 0x5f]
mov r14, qword [rbp + 0x7f]
add r15, r11
mov qword [rbp + 0x3f], r15
jmp 0x14008344d
mov r9, qword [rbp + 0x47]
mov r10, qword [rsp + 0x20]
jmp 0x14008333f
mov r9, qword [rbp + 0x47]
mov r10, qword [rsp + 0x20]
mov r8, qword [rbp + 0x67]
mov r11, qword [rsp + 8]
inc r10
inc r15
mov qword [rsp + 0x20], r10
mov qword [rbp + 0x3f], r15
cmp r15, r11
jbe 0x140083445
mov rax, qword [rbp - 0x41]
mov rdx, qword [rsp + 0x58]
add rdx, 0xfffffffffffffff9
lea rax, [r11 + rax*4]
mov r11, qword [rbp + 0x4f]
cmp r15, rax
jbe 0x1400833e6
lea rax, [r15 + 0x10]
cmp rax, rdx
cmovb rdx, rax
cmp r15, rdx
jae 0x1400833dc
add r10, 4
mov rax, rdx
sub rax, r15
dec rax
and rax, 0xfffffffffffffffc
add r10, rax
mov qword [rsp + 0x20], r10
movabs r10, 0xbd1e35a7bd000000
nop dword [rax]
mov rax, r11
and rax, r15
mov rcx, qword [rax + r9]
mov rax, qword [r8 + 0x38]
imul rcx, r10
shr rcx, 0x30
mov dword [rax + rcx*4], r15d
add r15, 4
cmp r15, rdx
jb 0x1400833b0
mov r10, qword [rsp + 0x20]
mov qword [rbp + 0x3f], r15
mov r12, qword [rbp + 0x5f]
mov r14, qword [rbp + 0x7f]
jmp 0x140083451
lea rax, [r15 + 8]
cmp rax, rdx
cmovb rdx, rax
cmp r15, rdx
jae 0x1400833dc
add r10, 2
mov rax, rdx
sub rax, r15
dec rax
and rax, 0xfffffffffffffffe
add r10, rax
mov qword [rsp + 0x20], r10
movabs r10, 0xbd1e35a7bd000000
nop dword [rax]
mov rax, r11
and rax, r15
mov rcx, qword [rax + r9]
mov rax, qword [r8 + 0x38]
imul rcx, r10
shr rcx, 0x30
mov dword [rax + rcx*4], r15d
add r15, 2
cmp r15, rdx
jb 0x140083420
jmp 0x1400833d3
mov r12, qword [rbp + 0x5f]
mov r14, qword [rbp + 0x7f]
mov r11, qword [rbp + 0x4f]
mov r8, qword [rsp + 0x58]
lea rax, [r15 + 8]
mov r9, qword [rbp + 0x47]
mov rdx, qword [rbp - 0x79]
mov rcx, qword [rbp - 0x71]
cmp rax, r8
jb 0x1400826d0
mov r13, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0xd0]
mov rsi, qword [rsp + 0xd8]
mov rax, qword [rbp + 0x77]
sub r8, r15
sub r14, qword [rbp - 0x29]
add r8, r10
sar r14, 4
mov qword [rax], r8
mov rax, qword [rbp + 0x87]
add qword [rax], r14
add rsp, 0xe0
pop r15
pop r14
pop r12
pop rbx
pop rbp
ret
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rdi
push r13
lea rbp, [rsp - 7]
sub rsp, 0xe8
mov r11, qword [rbp + 0x57]
mov rax, rcx
mov r10, qword [rbp + 0x6f]
mov rbx, r9
mov r9, r8
mov r13, rdx
add rdx, rax
mov r8d, 1
mov ecx, dword [r11 + 8]
mov r10, qword [r10]
shl r8, cl
mov rcx, qword [r11 + 0x10]
sub r8, 0x10
mov qword [rbp - 0x31], rcx
mov rcx, qword [rbp + 0x77]
mov qword [rbp - 0x29], rcx
mov qword [rbp - 0x79], r8
mov qword [rsp + 0x10], r10
mov qword [rsp + 0x60], rdx
cmp rax, 8
jb 0x140083539
lea rax, [rdx - 7]
mov qword [rbp - 0x71], rax
jmp 0x14008353d
mov qword [rbp - 0x71], r13
cmp dword [r11 + 4], 9
mov eax, 0x200
mov edi, 0x40
cmovl eax, edi
mov qword [rbp - 0x69], rax
add rax, r13
mov qword [rsp + 0x20], rax
lea rax, [r13 + 8]
cmp rax, rdx
jae 0x1400841a8
movdqa xmm4, xmmword [0x1406e1820]
movabs rdi, 0xbd1e35a7bd000000
movdqa xmm3, xmmword [0x1406e1830]
movdqa xmm2, xmm4
mov qword [rsp + 0xe0], rsi
mov qword [rsp + 0xd8], r12
mov qword [rsp + 0xd0], r14
psllq xmm2, 3
mov qword [rsp + 0xc8], r15
mov dword [rbp + 0x2f], ebx
mov dword [rsp + 0x58], ebx
mov rcx, qword [rbp + 0x37]
mov r10, rdx
mov rax, qword [rbp + 0x5f]
sub r10, r13
cmp rcx, r8
mov qword [rsp], r10
mov r13, r8
mov r15, rbx
cmovb r13, rcx
mov edx, 0x7e4
mov rax, qword [rax + 0x38]
and r15, rcx
movzx r14d, byte [r15 + r9]
lea r8, [r15 + r9]
mov qword [rsp + 0x30], rax
xor r11d, r11d
mov rax, qword [r8]
xor r12d, r12d
imul rax, rdi
mov qword [rsp + 8], r11
mov esi, edx
shr rax, 0x30
mov qword [rbp - 0x49], r11
mov qword [rsp + 0x18], rdx
mov dword [rbp - 0x39], r11d
movq xmm0, rax
mov rax, qword [rbp + 0x67]
punpcklqdq xmm0, xmm0
movsxd rdi, dword [rax]
sub rcx, rdi
cmp rcx, qword [rbp + 0x37]
jae 0x140083700
mov ebx, dword [rbp + 0x2f]
and rbx, rcx
add rbx, r9
movzx eax, byte [rbx]
cmp r14d, eax
jne 0x140083700
mov rax, r10
xor ecx, ecx
shr rax, 3
mov rdx, r8
test rax, rax
je 0x14008367e
mov r11, rbx
sub r11, r8
nop dword [rax]
mov r10, qword [rdx]
mov r9, qword [rdx + r11]
cmp r10, r9
jne 0x1400836e0
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140083660
mov r10, qword [rsp]
mov r9, r10
and r9d, 7
je 0x1400836a2
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + rbx], al
jne 0x1400836a2
inc rcx
sub r9, 1
jne 0x140083690
mov rax, rcx
mov r11, qword [rbp + 0x3f]
cmp rax, 4
jb 0x140083704
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rsi
jbe 0x140083704
mov qword [rsp + 8], rax
mov r12, rax
add rax, r15
mov qword [rbp - 0x49], rdi
mov qword [rsp + 0x18], rcx
mov rsi, rcx
movzx r14d, byte [rax + r11]
jmp 0x140083704
xor r9, r10
mov r10, qword [rsp]
tzcnt rax, r9
shr rax, 3
add rax, rcx
jmp 0x1400836a5
mov r11, qword [rbp + 0x3f]
mov rdi, qword [rbp + 0x37]
paddq xmm0, xmm2
mov rcx, qword [rsp + 0x30]
mov rax, rdi
shr rax, 3
andps xmm0, xmm3
and eax, 1
movdqu xmmword [rbp - 0x61], xmm0
mov rax, qword [rbp + rax*8 - 0x61]
mov qword [rsp + 0x28], rax
movq rax, xmm0
mov r9d, dword [rcx + rax*4]
mov eax, dword [rbp + 0x2f]
sub rdi, r9
and r9, rax
lea rax, [r9 + r12]
movzx ecx, byte [rax + r11]
cmp r14d, ecx
jne 0x140083832
test rdi, rdi
je 0x140083832
cmp rdi, r13
ja 0x140083832
mov rbx, qword [rbp + 0x3f]
xor ecx, ecx
add rbx, r9
mov rdx, r8
mov r9, r10
shr r9, 3
test r9, r9
je 0x1400837b2
mov r11, rbx
sub r11, r8
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rdx]
mov rax, qword [rdx + r11]
cmp r10, rax
jne 0x14008381d
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x140083790
mov r10, qword [rsp]
mov r9, r10
and r9d, 7
je 0x1400837d2
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + rbx], al
jne 0x1400837d2
inc rcx
sub r9, 1
jne 0x1400837c0
mov rdx, rcx
cmp rdx, 4
jb 0x140083832
bsr eax, edi
imul r9, rdx, 0x87
imul ecx, eax, 0x1e
sub r9, rcx
add r9, 0x780
cmp rsi, r9
jae 0x140083832
mov r11, qword [rbp + 0x3f]
lea rax, [rdx + r15]
mov r12, rdx
mov qword [rsp + 8], rdx
mov rsi, r9
mov qword [rsp + 0x18], r9
mov r15, r9
mov qword [rbp - 0x49], rdi
movzx r14d, byte [rax + r11]
jmp 0x140083837
xor rax, r10
mov r10, qword [rsp]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x1400837d5
mov r15, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x30]
mov rbx, qword [rbp + 0x37]
mov r9, qword [rbp + 0x3f]
psrldq xmm0, 8
movq rax, xmm0
mov edx, dword [rdi + rax*4]
mov eax, dword [rbp + 0x2f]
sub rbx, rdx
and rdx, rax
lea rax, [rdx + r12]
movzx ecx, byte [rax + r9]
cmp r14d, ecx
jne 0x14008392f
test rbx, rbx
je 0x14008392f
cmp rbx, r13
ja 0x14008392f
mov rax, r10
lea r11, [rdx + r9]
shr rax, 3
xor ecx, ecx
test rax, rax
je 0x1400838be
mov r10, r11
sub r10, r8
nop word [rax + rax]
mov r9, qword [r8]
mov rdx, qword [r8 + r10]
cmp r9, rdx
jne 0x14008391a
add r8, 8
add rcx, 8
sub rax, 1
jne 0x1400838a0
mov r10, qword [rsp]
mov rdx, r10
and edx, 7
je 0x1400838dc
movzx eax, byte [r8]
cmp byte [rcx + r11], al
jne 0x1400838dc
inc r8
inc rcx
sub rdx, 1
jne 0x1400838c6
mov r8, rcx
mov r9, qword [rbp + 0x3f]
cmp r8, 4
jb 0x14008392f
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, r8, 0x87
sub rax, rcx
add rax, 0x780
cmp rsi, rax
jae 0x14008392f
mov rcx, r8
mov qword [rsp + 0x18], rax
mov qword [rsp + 8], rcx
mov r15, rax
mov qword [rbp - 0x49], rbx
jmp 0x140083934
mov r10, qword [rsp]
xor rdx, r9
tzcnt r8, rdx
shr r8, 3
add r8, rcx
jmp 0x1400838df
mov rcx, qword [rsp + 8]
mov rax, qword [rsp + 0x28]
mov r13, qword [rbp + 0x37]
mov dword [rdi + rax*4], r13d
lea rdi, [r13 + 1]
mov qword [rsp + 0x28], rdi
cmp r15, 0x7e4
jbe 0x1400841d1
mov r11d, dword [rsp + 0x58]
movdqa xmm2, xmm4
psllq xmm2, 3
mov dword [rbp + 0x37], 0
mov dword [rbp + 0x2f], r11d
mov rax, qword [rbp + 0x57]
dec r10
mov qword [rsp], r10
cmp dword [rax + 4], 5
jge 0x140083991
lea rax, [rcx - 1]
mov rsi, r10
cmp rax, r10
cmovb rsi, rax
jmp 0x140083993
xor esi, esi
mov rax, qword [rbp + 0x5f]
mov edx, 0x7e4
mov r12, qword [rbp + 0x47]
movabs rcx, 0xbd1e35a7bd000000
mov qword [rsp + 0x48], rdx
mov r14d, 0x7e4
mov rdx, qword [rbp - 0x79]
mov rax, qword [rax + 0x38]
cmp rdi, rdx
mov qword [rsp + 0x30], rax
cmovb rdx, rdi
mov qword [rsp + 0x38], rsi
and r12, rdi
mov qword [rsp + 0x40], 0
lea r8, [r12 + r9]
mov qword [rsp + 0x20], rdx
mov dword [rsp + 0x50], 0
lea rax, [r12 + rsi]
movzx r15d, byte [rax + r9]
mov rax, qword [r8]
mov r9, qword [rsp + 0x28]
imul rax, rcx
shr rax, 0x30
movq xmm0, rax
mov rax, qword [rbp + 0x67]
punpcklqdq xmm0, xmm0
movsxd rdi, dword [rax]
sub r9, rdi
cmp r9, qword [rsp + 0x28]
jae 0x140083b00
mov eax, r11d
mov r11, qword [rbp + 0x3f]
and r9, rax
lea rax, [r9 + rsi]
movzx ecx, byte [rax + r11]
cmp r15d, ecx
jne 0x140083b04
mov rbx, r11
xor eax, eax
add rbx, r9
mov rdx, r8
mov r9, r10
shr r9, 3
test r9, r9
je 0x140083a7e
mov r11, rbx
sub r11, r8
nop dword [rax + rax]
mov rcx, qword [rdx]
mov r10, qword [rdx + r11]
cmp rcx, r10
jne 0x140083ae6
add rdx, 8
add rax, 8
sub r9, 1
jne 0x140083a60
mov r10, qword [rsp]
mov r9, r10
and r9d, 7
je 0x140083aa2
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rax + rdx]
cmp byte [rax + rbx], cl
jne 0x140083aa2
inc rax
sub r9, 1
jne 0x140083a90
mov rcx, rax
mov rdx, qword [rsp + 0x20]
cmp rcx, 4
jb 0x140083b00
mov r11, qword [rbp + 0x3f]
imul rax, rcx, 0x87
add rax, 0x78f
cmp rax, r14
jbe 0x140083b04
mov qword [rsp + 0x48], rax
mov r14, rax
lea rax, [rcx + r12]
mov qword [rsp + 0x38], rcx
movzx r15d, byte [rax + r11]
mov rsi, rcx
mov qword [rsp + 0x40], rdi
jmp 0x140083b04
xor rcx, r10
mov r10, qword [rsp]
tzcnt rcx, rcx
shr rcx, 3
add rcx, rax
jmp 0x140083aa5
mov r11, qword [rbp + 0x3f]
mov rdi, qword [rsp + 0x28]
paddq xmm0, xmm2
mov rcx, qword [rsp + 0x30]
mov rax, rdi
shr rax, 3
andps xmm0, xmm3
and eax, 1
movdqu xmmword [rbp - 0x61], xmm0
mov rax, qword [rbp + rax*8 - 0x61]
mov qword [rbp - 0x61], rax
movq rax, xmm0
mov r9d, dword [rcx + rax*4]
mov eax, dword [rbp + 0x2f]
sub rdi, r9
and r9, rax
lea rax, [r9 + rsi]
movzx ecx, byte [rax + r11]
cmp r15d, ecx
jne 0x140083c33
test rdi, rdi
je 0x140083c33
cmp rdi, rdx
ja 0x140083c33
mov rbx, qword [rbp + 0x3f]
xor ecx, ecx
add rbx, r9
mov rdx, r8
mov r9, r10
shr r9, 3
test r9, r9
je 0x140083bb2
mov r11, rbx
sub r11, r8
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rdx]
mov r10, qword [rdx + r11]
cmp rax, r10
jne 0x140083c1e
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x140083b90
mov r10, qword [rsp]
mov r9, r10
and r9d, 7
je 0x140083bd2
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + rbx], al
jne 0x140083bd2
inc rcx
sub r9, 1
jne 0x140083bc0
mov rdx, rcx
cmp rdx, 4
jb 0x140083c33
bsr eax, edi
imul r9, rdx, 0x87
imul ecx, eax, 0x1e
sub r9, rcx
add r9, 0x780
cmp r14, r9
jae 0x140083c33
mov r11, qword [rbp + 0x3f]
lea rax, [rdx + r12]
mov rsi, rdx
mov qword [rsp + 0x38], rdx
mov r14, r9
mov qword [rsp + 0x48], r9
mov r12, r9
mov qword [rsp + 0x40], rdi
movzx r15d, byte [rax + r11]
jmp 0x140083c38
xor rax, r10
mov r10, qword [rsp]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140083bd5
mov r12, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x28]
mov r11d, dword [rbp + 0x2f]
mov rbx, rdi
mov r9, qword [rbp + 0x3f]
psrldq xmm0, 8
movq rax, xmm0
mov edx, dword [rcx + rax*4]
sub rbx, rdx
and rdx, r11
lea rax, [rdx + rsi]
movzx ecx, byte [rax + r9]
cmp r15d, ecx
jne 0x140083d24
test rbx, rbx
je 0x140083d24
cmp rbx, qword [rsp + 0x20]
ja 0x140083d24
lea r11, [rdx + r9]
xor ecx, ecx
mov rdx, r10
shr rdx, 3
test rdx, rdx
je 0x140083cc2
mov r10, r11
sub r10, r8
nop
mov rax, qword [r8]
mov r9, qword [r8 + r10]
cmp rax, r9
jne 0x140083d99
add r8, 8
add rcx, 8
sub rdx, 1
jne 0x140083ca0
mov r10, qword [rsp]
mov rdx, r10
and edx, 7
je 0x140083ce6
nop word [rax + rax]
movzx eax, byte [r8]
cmp byte [rcx + r11], al
jne 0x140083ce6
inc r8
inc rcx
sub rdx, 1
jne 0x140083cd0
mov rdx, rcx
mov r9, qword [rbp + 0x3f]
mov r11d, dword [rbp + 0x2f]
cmp rdx, 4
jb 0x140083d24
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r14, rax
jae 0x140083d24
mov qword [rsp + 0x38], rdx
mov r12, rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rbx
mov rax, qword [rbp - 0x61]
mov rcx, qword [rsp + 0x30]
mov r15, qword [rsp + 0x10]
mov dword [rcx + rax*4], edi
mov rax, qword [rsp + 0x18]
add rax, 0xaf
cmp r12, rax
jb 0x140083dbc
mov ecx, dword [rbp + 0x37]
inc rdi
movups xmm0, xmmword [rsp + 0x38]
inc ecx
inc r15
movups xmm1, xmmword [rsp + 0x48]
inc r13
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x10], r15
mov dword [rbp + 0x37], ecx
movups xmmword [rbp - 0x51], xmm0
movups xmmword [rbp - 0x41], xmm1
cmp ecx, 4
jge 0x140083db1
lea rax, [rdi + 7]
cmp rax, qword [rsp + 0x60]
jae 0x140083db1
mov r15, qword [rbp - 0x41]
mov rcx, qword [rbp - 0x51]
mov qword [rsp + 0x18], r15
mov qword [rsp + 8], rcx
jmp 0x140083970
mov r10, qword [rsp]
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140083ce9
mov r12, qword [rbp - 0x51]
mov qword [rsp + 8], r12
jmp 0x140083dc1
mov r12, qword [rsp + 8]
mov rax, qword [rbp - 0x69]
mov r10, qword [rbp - 0x79]
mov rbx, qword [rbp - 0x49]
lea r11, [rax + r12*2]
mov rax, qword [rbp - 0x31]
add r11, r13
add rax, r13
cmp rax, r10
mov qword [rsp + 0x20], r11
mov r11, qword [rbp + 0x67]
cmovb r10, rax
lea rdx, [r11 + 4]
cmp rbx, r10
ja 0x140083e72
movsxd rax, dword [r11]
lea rcx, [rbx + 3]
movsxd r9, dword [rdx]
mov r8, rcx
sub r8, rax
sub rcx, r9
cmp rbx, rax
jne 0x140083e11
xor r8d, r8d
jmp 0x140083e76
cmp rbx, r9
jne 0x140083e1e
mov r8d, 1
jmp 0x140083e76
cmp r8, 7
jae 0x140083e3a
movzx ecx, r8b
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x140083e76
cmp rcx, 7
jae 0x140083e52
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x140083e76
movsxd rax, dword [r11 + 8]
cmp rbx, rax
jne 0x140083e63
mov r8d, 2
jmp 0x140083e76
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x140083e76
lea r8, [rbx + 0xf]
cmp rbx, r10
ja 0x140083e96
test r8, r8
je 0x140083e96
mov eax, dword [r11 + 8]
mov dword [r11 + 0xc], eax
mov eax, dword [rdx]
mov dword [r11 + 8], eax
mov eax, dword [r11]
mov dword [rdx], eax
mov dword [r11], ebx
mov r11, qword [rbp + 0x77]
mov esi, dword [rbp - 0x39]
mov rcx, qword [rbp + 0x57]
movzx eax, sil
shl eax, 0x19
or eax, r12d
mov dword [r11], r15d
mov dword [r11 + 4], eax
mov r14d, dword [rcx + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x140083ec3
xor edi, edi
jmp 0x140083f3b
mov r11d, dword [rcx + 0x40]
mov r10d, 1
lea ecx, [r11 + 2]
shl r10, cl
sub r10, r14
add r10, 0xfffffffffffffff0
add r10, r8
bsr eax, r10d
mov rdx, r10
mov rdi, r10
dec eax
mov ecx, eax
mov r9d, eax
shr rdx, cl
sub r9, r11
and edx, 1
lea r8, [r9 - 1]
shl r9, 0xa
lea r8, [rdx + r8*2]
lea rax, [rdx + 2]
shl rax, cl
mov ecx, r11d
mov r11, qword [rbp + 0x77]
sub rdi, rax
shl r8, cl
mov eax, 1
shl ax, cl
add r8w, 0x10
dec ax
shr rdi, cl
and ax, r10w
add r8w, ax
add r8w, r14w
or r8w, r9w
mov word [r11 + 0xe], r8w
lea edx, [r12 + rsi]
mov eax, 0x3ff
mov dword [r11 + 8], edi
and r8w, ax
movsxd r9, edx
cmp r15, 6
jae 0x140083f65
movzx r10d, r15w
mov eax, 0x17
jmp 0x140083fd7
cmp r15, 0x82
jae 0x140083f8f
lea eax, [r15 - 2]
bsr ecx, eax
lea r10, [r15 - 2]
mov eax, 0x17
dec ecx
shr r10, cl
inc cx
add cx, cx
add r10w, cx
jmp 0x140083fd7
cmp r15, 0x842
jae 0x140083fac
lea eax, [r15 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x140083fd7
mov eax, 0x17
cmp r15, 0x1842
jae 0x140083fc2
mov r10d, reloc.WS2_32.dll_setsockopt
jmp 0x140083fd7
cmp r15, 0x5842
jae 0x140083fd3
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x140083fd7
movzx r10d, ax
cmp r9, 0xa
jae 0x140083fe4
sub r9w, 2
jmp 0x140084024
cmp r9, 0x86
jae 0x140084009
add r9, 0xfffffffffffffffa
lea eax, [rdx - 6]
bsr ecx, eax
dec ecx
shr r9, cl
add cx, 2
add cx, cx
add r9w, cx
jmp 0x140084024
cmp r9, 0x846
jae 0x140084020
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x140084024
movzx r9d, ax
movzx edx, r10w
movzx eax, r9w
and dx, 7
and ax, 7
shl dx, 3
or dx, ax
test r8w, r8w
jne 0x14008405c
cmp r10w, 8
jae 0x14008405c
cmp r9w, 0x10
jae 0x14008405c
cmp r9w, 8
jb 0x140084090
or dx, 0x40
jmp 0x140084090
movzx eax, r10w
mov r8d, 0xc0
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, r9w
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, r8w
add ax, cx
or dx, ax
mov rax, qword [rbp + 0x87]
xor r10d, r10d
mov r8, qword [rbp - 0x71]
mov word [r11 + 0xc], dx
add r11, 0x10
mov qword [rbp + 0x77], r11
lea rdx, [r13 + 2]
add qword [rax], r15
lea rax, [r12 + r13]
cmp rax, r8
mov qword [rsp + 0x10], r10
cmovb r8, rax
mov rax, r12
shr rax, 2
cmp rbx, rax
jae 0x1400840f7
lea rax, [rbx*4]
mov rcx, r12
sub rcx, rax
lea rax, [rcx + r13]
cmp rdx, rax
mov eax, 2
cmova rcx, rax
lea rdx, [rcx + r13]
cmp r8, rdx
cmovb rdx, r8
cmp rdx, r8
jae 0x140084155
mov r11, qword [rbp + 0x3f]
movabs r12, 0xbd1e35a7bd000000
mov r9, qword [rbp + 0x47]
mov r10, qword [rbp + 0x5f]
nop dword [rax]
nop word [rax + rax]
mov rax, rdx
and rax, r9
mov rcx, qword [rax + r11]
mov eax, edx
imul rcx, r12
and eax, 8
shr rcx, 0x30
add ecx, eax
mov rax, qword [r10 + 0x38]
movzx ecx, cx
mov dword [rax + rcx*4], edx
inc rdx
cmp rdx, r8
jb 0x140084120
mov r10, qword [rsp + 0x10]
mov r12, qword [rsp + 8]
add r13, r12
mov qword [rbp + 0x37], r13
mov rbx, qword [rbp + 0x47]
movabs rdi, 0xbd1e35a7bd000000
mov rdx, qword [rsp + 0x60]
lea rax, [r13 + 8]
mov r9, qword [rbp + 0x3f]
mov r8, qword [rbp - 0x79]
cmp rax, rdx
jb 0x1400835b2
mov r15, qword [rsp + 0xc8]
mov r14, qword [rsp + 0xd0]
mov r12, qword [rsp + 0xd8]
mov rsi, qword [rsp + 0xe0]
mov rcx, qword [rbp + 0x77]
mov rax, qword [rbp + 0x6f]
sub rdx, r13
sub rcx, qword [rbp - 0x29]
add rdx, r10
sar rcx, 4
mov qword [rax], rdx
mov rax, qword [rbp + 0x7f]
add qword [rax], rcx
add rsp, 0xe8
pop r13
pop rdi
pop rbx
pop rbp
ret
mov r10, qword [rsp + 0x10]
mov r13, rdi
mov r11, qword [rsp + 0x20]
inc r10
mov qword [rsp + 0x10], r10
mov qword [rbp + 0x37], rdi
cmp rdi, r11
jbe 0x14008415c
mov rax, qword [rbp - 0x69]
mov rdx, qword [rsp + 0x60]
mov rbx, qword [rbp + 0x47]
add rdx, 0xfffffffffffffff9
lea rax, [r11 + rax*4]
cmp rdi, rax
jbe 0x14008428c
lea rax, [rdi + 0x10]
cmp rax, rdx
cmovb rdx, rax
cmp rdi, rdx
jae 0x140084160
add r10, 4
mov rax, rdx
sub rax, rdi
movabs rdi, 0xbd1e35a7bd000000
dec rax
and rax, 0xfffffffffffffffc
add r10, rax
mov qword [rsp + 0x10], r10
mov r10, qword [rbp + 0x5f]
nop dword [rax + rax]
mov rax, rbx
and rax, r13
mov rcx, qword [rax + r9]
mov eax, r13d
imul rcx, rdi
and eax, 8
shr rcx, 0x30
add ecx, eax
mov rax, qword [r10 + 0x38]
movzx ecx, cx
mov dword [rax + rcx*4], r13d
add r13, 4
cmp r13, rdx
jb 0x140084250
mov r10, qword [rsp + 0x10]
mov qword [rbp + 0x37], r13
jmp 0x14008416a
lea rax, [rdi + 8]
cmp rax, rdx
cmovb rdx, rax
cmp rdi, rdx
jae 0x140084160
add r10, 2
mov rax, rdx
sub rax, rdi
movabs rdi, 0xbd1e35a7bd000000
dec rax
and rax, 0xfffffffffffffffe
add r10, rax
mov qword [rsp + 0x10], r10
mov r10, qword [rbp + 0x5f]
nop word [rax + rax]
mov rax, rbx
and rax, r13
mov rcx, qword [rax + r9]
mov eax, r13d
imul rcx, rdi
and eax, 8
shr rcx, 0x30
add ecx, eax
mov rax, qword [r10 + 0x38]
movzx ecx, cx
mov dword [rax + rcx*4], r13d
add r13, 2
cmp r13, rdx
jb 0x1400842d0
mov r10, qword [rsp + 0x10]
mov qword [rbp + 0x37], r13
jmp 0x14008416a
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rdi
push r15
lea rbp, [rsp - 7]
sub rsp, 0xf8
mov rbx, qword [rbp + 0x57]
mov rax, rcx
mov r10, qword [rbp + 0x6f]
mov r11, r8
mov r8d, 1
mov r15, rdx
add rdx, rax
mov ecx, dword [rbx + 8]
mov r10, qword [r10]
shl r8, cl
mov rcx, qword [rbx + 0x10]
sub r8, 0x10
mov qword [rbp - 0x41], rcx
mov rcx, qword [rbp + 0x77]
mov qword [rbp - 0x39], rcx
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x60], rdx
cmp rax, 8
jb 0x140084386
lea rax, [rdx - 7]
mov qword [rbp - 0x51], rax
jmp 0x14008438a
mov qword [rbp - 0x51], r15
cmp dword [rbx + 4], 9
mov eax, 0x200
mov edi, 0x40
cmovl eax, edi
mov qword [rbp - 0x49], rax
add rax, r15
mov qword [rsp + 0x30], rax
lea rax, [r15 + 8]
cmp rax, rdx
jae 0x140085474
movdqa xmm4, xmmword [0x1406e1820]
mov eax, r9d
movdqa xmm3, xmmword [0x1406e1830]
movdqa xmm2, xmm4
mov rbx, qword [rbp + 0x5f]
movabs rcx, 0xbd1e35a7bd000000
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xe8], r12
mov qword [rsp + 0xe0], r13
psllq xmm2, 3
mov qword [rsp + 0xd8], r14
mov dword [rbp + 0x2f], eax
mov dword [rsp + 0x5c], eax
nop word [rax + rax]
mov r12, qword [rbp + 0x37]
mov r10, rdx
mov r13, qword [rbx + 0x38]
sub r10, r15
cmp r15, r8
mov qword [rsp + 0x10], r10
mov rdx, r8
mov r14, r9
cmovb rdx, r15
mov r8d, 0x7e4
xor edi, edi
mov qword [rsp + 0x18], rdx
and r14, r15
mov qword [rsp + 0x28], rdi
mov rax, qword [r14 + r11]
lea r9, [r14 + r11]
movzx esi, byte [r9]
xor r15d, r15d
imul rax, rcx
mov rcx, r12
mov qword [rbp - 0x69], rdi
shr rax, 0x30
mov dword [rbp - 0x59], edi
mov edi, r8d
mov qword [rsp], r8
mov qword [rsp + 8], r9
movq xmm0, rax
mov rax, qword [rbp + 0x67]
punpcklqdq xmm0, xmm0
movsxd rbx, dword [rax]
sub rcx, rbx
cmp rcx, r12
jae 0x140084564
mov eax, dword [rbp + 0x2f]
and rax, rcx
add r11, rax
movzx eax, byte [r11]
cmp esi, eax
jne 0x140084560
mov r8, r10
xor ecx, ecx
shr r8, 3
mov rdx, r9
test r8, r8
je 0x1400844df
mov r10, r11
sub r10, r9
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14008454a
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400844c0
mov r10, qword [rsp + 0x10]
mov r8, r10
and r8d, 7
je 0x140084503
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x140084503
inc rcx
sub r8, 1
jne 0x1400844f0
mov rax, rcx
mov r9, qword [rsp + 8]
mov rdx, qword [rsp + 0x18]
cmp rax, 4
jb 0x140084560
mov r11, qword [rbp + 0x3f]
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rdi
jbe 0x140084564
mov qword [rsp + 0x28], rax
mov r15, rax
add rax, r14
mov qword [rbp - 0x69], rbx
mov qword [rsp], rcx
mov rdi, rcx
movzx esi, byte [rax + r11]
jmp 0x140084564
mov r10, qword [rsp + 0x10]
xor rax, r9
tzcnt rax, rax
shr rax, 3
add rax, rcx
jmp 0x140084506
mov r11, qword [rbp + 0x3f]
mov rbx, qword [rbp + 0x37]
mov rax, r12
shr rax, 3
paddq xmm0, xmm2
and eax, 1
andps xmm0, xmm3
movdqu xmmword [rsp + 0x70], xmm0
mov r12, qword [rsp + rax*8 + 0x70]
movq rax, xmm0
mov r8d, dword [r13 + rax*4]
mov eax, dword [rbp + 0x2f]
sub rbx, r8
and r8, rax
lea rax, [r8 + r15]
movzx ecx, byte [rax + r11]
cmp esi, ecx
jne 0x140084668
test rbx, rbx
je 0x140084668
cmp rbx, rdx
ja 0x140084668
add r11, r8
xor ecx, ecx
mov r8, r10
mov rdx, r9
shr r8, 3
test r8, r8
je 0x140084603
mov r10, r11
sub r10, r9
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x14008474f
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400845e0
mov r10, qword [rsp + 0x10]
mov r8, r10
and r8d, 7
je 0x140084623
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x140084623
inc rcx
sub r8, 1
jne 0x140084610
mov rdx, rcx
mov r11, qword [rbp + 0x3f]
cmp rdx, 4
jb 0x140084668
bsr eax, ebx
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x140084668
lea rax, [rdx + r14]
mov qword [rsp + 0x28], rdx
movzx esi, byte [rax + r11]
mov r15, rdx
mov rdi, r8
mov qword [rsp], r8
mov qword [rbp - 0x69], rbx
mov edx, dword [rbp + 0x2f]
mov rbx, qword [rbp + 0x37]
mov r14, qword [rsp + 8]
psrldq xmm0, 8
movq rax, xmm0
mov ecx, dword [r13 + rax*4]
and rdx, rcx
sub rbx, rcx
lea rax, [rdx + r15]
mov r15, qword [rsp + 0x18]
movzx ecx, byte [rax + r11]
cmp esi, ecx
jne 0x140084779
test rbx, rbx
je 0x140084779
cmp rbx, r15
ja 0x140084779
add r11, rdx
mov rax, r10
shr rax, 3
xor edx, edx
mov rcx, r14
test rax, rax
je 0x1400846f3
mov r10, r11
sub r10, r14
nop dword [rax + rax]
mov r9, qword [rcx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x140084768
add rcx, 8
add rdx, 8
sub rax, 1
jne 0x1400846d0
mov r10, qword [rsp + 0x10]
mov r8, r10
and r8d, 7
je 0x140084715
nop dword [rax]
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x140084715
inc rcx
inc rdx
sub r8, 1
jne 0x140084700
mov r9, rdx
mov r11, qword [rbp + 0x3f]
cmp r9, 4
jb 0x140084779
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rdi, rax
jae 0x140084779
mov qword [rsp + 0x28], r9
mov r10, rax
mov qword [rsp], rax
mov qword [rbp - 0x69], rbx
jmp 0x14008477d
mov r10, qword [rsp + 0x10]
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140084626
xor r8, r9
tzcnt r9, r8
shr r9, 3
add r9, rdx
jmp 0x140084718
mov r10, qword [rsp]
mov rax, qword [rbp + 0x37]
mov rdi, qword [rbp + 0x5f]
mov dword [r13 + r12*4], eax
mov r12, rax
mov r13, qword [rsp + 0x10]
test r12b, 3
jne 0x140084921
cmp r13, 0x20
jb 0x140084921
mov rbx, qword [rdi + 0x50]
cmp rbx, rax
ja 0x140084913
lea rsi, [rbx + 0x20]
nop word [rax + rax]
mov r8d, dword [rdi + 0x40]
mov rax, rbx
and rax, qword [rbp + 0x47]
mov r9d, r8d
imul r8d, dword [rdi + 0x5c]
and r9d, 0x3fffffff
movzx edx, byte [rax + r11]
mov rax, qword [rbp + 0x47]
inc edx
imul edx, dword [rdi + 0x60]
and rax, rsi
movzx ecx, byte [rax + r11]
lea eax, [r8 + 1]
sub ecx, edx
add eax, ecx
mov dword [rdi + 0x40], eax
cmp r9d, 0x1000000
jae 0x140084902
mov rax, qword [rdi + 0x48]
mov r10d, dword [rax + r9*4]
mov dword [rax + r9*4], ebx
cmp rbx, r12
jne 0x1400848fe
mov eax, 0xffffffff
cmp r10, rax
je 0x1400848fe
mov edi, r12d
sub edi, r10d
cmp rdi, r15
ja 0x1400848fa
and r10, qword [rbp + 0x47]
mov r8, r13
add r10, r11
shr r8, 3
xor ecx, ecx
mov rdx, r14
test r8, r8
je 0x14008487a
mov r11, r10
sub r11, r14
nop dword [rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r11]
cmp rax, r9
jne 0x1400848e9
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140084860
mov r8, r13
and r8d, 7
je 0x140084899
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r10], al
jne 0x140084899
inc rcx
sub r8, 1
jne 0x140084886
mov rdx, rcx
mov r11, qword [rbp + 0x3f]
cmp rdx, 4
jb 0x1400848fa
mov r10, qword [rsp]
cmp rdx, qword [rsp + 0x28]
jbe 0x1400848e3
bsr eax, edi
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r10
jbe 0x1400848e3
mov qword [rsp + 0x28], rdx
mov r10, rax
mov qword [rbp - 0x69], rdi
mov qword [rsp], rax
mov dword [rbp - 0x59], 0
mov rdi, qword [rbp + 0x5f]
jmp 0x140084902
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14008489c
mov rdi, qword [rbp + 0x5f]
mov r10, qword [rsp]
add rbx, 4
add rsi, 4
cmp rbx, r12
jbe 0x1400847c0
mov r15, qword [rbp + 0x37]
lea rax, [r15 + 4]
mov qword [rdi + 0x50], rax
jmp 0x140084925
mov r15, qword [rbp + 0x37]
lea r12, [r15 + 1]
mov qword [rsp + 0x70], r12
cmp r10, 0x7e4
jbe 0x1400852e0
mov ecx, dword [rsp + 0x5c]
movdqa xmm2, xmm4
mov rax, qword [rsp + 0x28]
psllq xmm2, 3
mov dword [rsp + 0x58], 0
mov dword [rbp + 0x2f], ecx
mov rdx, qword [rbp + 0x57]
dec r13
mov qword [rsp + 0x10], r13
cmp dword [rdx + 4], 5
jge 0x140084979
dec rax
mov r9, r13
cmp rax, r13
cmovb r9, rax
jmp 0x14008497c
xor r9d, r9d
mov r10, qword [rsp + 0x68]
mov r8d, 0x7e4
mov r15, qword [rbp + 0x47]
cmp r12, r10
mov r13, qword [rdi + 0x38]
mov r14, r9
cmovb r10, r12
mov qword [rsp + 0x48], r8
and r15, r12
mov qword [rsp + 0x38], r9
lea rdx, [r15 + r11]
mov qword [rsp + 8], r9
movabs r8, 0xbd1e35a7bd000000
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x30], r10
mov edi, 0x7e4
lea rax, [r15 + r9]
mov qword [rsp + 0x18], rdx
movzx esi, byte [rax + r11]
mov rax, qword [rdx]
imul rax, r8
mov r8, r12
mov dword [rsp + 0x50], 0
shr rax, 0x30
movq xmm0, rax
mov rax, qword [rbp + 0x67]
punpcklqdq xmm0, xmm0
movsxd rbx, dword [rax]
sub r8, rbx
cmp r8, r12
jae 0x140084ae0
mov eax, ecx
and r8, rax
lea rax, [r9 + r8]
movzx ecx, byte [rax + r11]
cmp esi, ecx
jne 0x140084ae0
mov rdi, qword [rsp + 0x10]
add r11, r8
mov r8, rdi
xor ecx, ecx
shr r8, 3
test r8, r8
je 0x140084a5e
mov r10, r11
sub r10, rdx
nop
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x140084cdb
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140084a40
mov r8, rdi
and r8d, 7
je 0x140084a83
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x140084a83
inc rcx
sub r8, 1
jne 0x140084a70
mov rax, rcx
mov r11, qword [rbp + 0x3f]
mov edi, 0x7e4
mov rdx, qword [rsp + 0x18]
mov r10, qword [rsp + 0x30]
cmp rax, 4
jb 0x140084ae0
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rdi
jbe 0x140084ae0
mov qword [rsp + 8], rax
mov r14, rax
mov qword [rsp + 0x38], rax
mov rdi, rcx
add rax, r15
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rcx
movzx esi, byte [rax + r11]
nop dword [rax]
nop dword [rax + rax]
mov r8d, dword [rbp + 0x2f]
mov rax, r12
mov rbx, qword [rsp + 0x70]
paddq xmm0, xmm2
shr rax, 3
andps xmm0, xmm3
and eax, 1
movdqu xmmword [rbp - 0x31], xmm0
mov r12, qword [rbp + rax*8 - 0x31]
movq rax, xmm0
mov ecx, dword [r13 + rax*4]
and r8, rcx
sub rbx, rcx
lea rax, [r8 + r14]
movzx ecx, byte [rax + r11]
cmp esi, ecx
jne 0x140084bef
test rbx, rbx
je 0x140084bef
cmp rbx, r10
ja 0x140084bef
mov rax, qword [rsp + 0x10]
add r11, r8
mov r8, rax
xor ecx, ecx
shr r8, 3
test r8, r8
je 0x140084b83
mov r10, r11
sub r10, qword [rsp + 0x18]
nop word [rax + rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x140084cef
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140084b60
mov rax, qword [rsp + 0x10]
mov r8, rax
and r8d, 7
je 0x140084ba3
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x140084ba3
inc rcx
sub r8, 1
jne 0x140084b90
mov rdx, rcx
mov r11, qword [rbp + 0x3f]
cmp rdx, 4
jb 0x140084bef
bsr eax, ebx
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x140084bef
lea rax, [rdx + r15]
mov qword [rsp + 8], rdx
movzx esi, byte [rax + r11]
mov r14, rdx
mov qword [rsp + 0x38], rdx
mov rdi, r8
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x40], rbx
mov edx, dword [rbp + 0x2f]
mov r15, qword [rsp + 0x70]
psrldq xmm0, 8
mov rbx, r15
movq rax, xmm0
mov ecx, dword [r13 + rax*4]
and rdx, rcx
sub rbx, rcx
lea rax, [rdx + r14]
movzx ecx, byte [rax + r11]
cmp esi, ecx
jne 0x140084d14
test rbx, rbx
je 0x140084d14
cmp rbx, qword [rsp + 0x30]
ja 0x140084d14
mov rsi, qword [rsp + 0x10]
add r11, rdx
mov rax, qword [rsp + 0x18]
mov r8, rsi
shr r8, 3
xor edx, edx
mov rcx, rax
test r8, r8
je 0x140084c7e
mov r10, r11
sub r10, rax
nop dword [rax + rax]
mov rax, qword [rcx]
mov r9, qword [rcx + r10]
cmp rax, r9
jne 0x140084d03
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x140084c60
mov r8, rsi
and r8d, 7
je 0x140084c9c
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x140084c9c
inc rcx
inc rdx
sub r8, 1
jne 0x140084c87
mov r8, rdx
mov r11, qword [rbp + 0x3f]
cmp r8, 4
jb 0x140084d14
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, r8, 0x87
sub rax, rcx
add rax, 0x780
cmp rdi, rax
jae 0x140084d14
mov r14, r8
mov qword [rsp + 0x38], r8
mov r10, rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rbx
jmp 0x140084d1e
xor rax, r9
tzcnt rax, rax
shr rax, 3
add rax, rcx
jmp 0x140084a86
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140084ba6
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x140084c9f
mov r14, qword [rsp + 8]
mov r10, qword [rsp + 0x48]
mov rdi, qword [rbp + 0x5f]
mov dword [r13 + r12*4], r15d
mov r12, qword [rsp + 0x70]
mov r13, qword [rsp + 0x10]
test r12b, 3
jne 0x140084ec3
cmp r13, 0x20
jb 0x140084ec3
mov rbx, qword [rdi + 0x50]
cmp rbx, r12
ja 0x140084eba
mov r15, qword [rbp + 0x47]
lea rsi, [rbx + 0x20]
nop word [rax + rax]
mov r8d, dword [rdi + 0x40]
mov rax, r15
and rax, rbx
mov r9d, r8d
imul r8d, dword [rdi + 0x5c]
and r9d, 0x3fffffff
movzx edx, byte [rax + r11]
mov rax, r15
and rax, rsi
inc edx
imul edx, dword [rdi + 0x60]
movzx ecx, byte [rax + r11]
lea eax, [r8 + 1]
sub ecx, edx
add eax, ecx
mov dword [rdi + 0x40], eax
cmp r9d, 0x1000000
jae 0x140084ea9
mov rax, qword [rdi + 0x48]
mov r11d, dword [rax + r9*4]
mov dword [rax + r9*4], ebx
cmp rbx, r12
jne 0x140084e9b
mov eax, 0xffffffff
cmp r11, rax
je 0x140084e9b
mov edi, r12d
sub edi, r11d
cmp rdi, qword [rsp + 0x30]
ja 0x140084ea1
mov rcx, qword [rsp + 0x18]
and r11, r15
add r11, qword [rbp + 0x3f]
mov r8, r13
shr r8, 3
xor eax, eax
mov rdx, rcx
test r8, r8
je 0x140084e1a
mov r10, r11
sub r10, rcx
nop
mov r9, qword [rdx]
mov rcx, qword [rdx + r10]
cmp r9, rcx
jne 0x140084e8a
add rdx, 8
add rax, 8
sub r8, 1
jne 0x140084e00
mov r8, r13
and r8d, 7
je 0x140084e39
sub rdx, rax
movzx ecx, byte [rax + rdx]
cmp byte [rax + r11], cl
jne 0x140084e39
inc rax
sub r8, 1
jne 0x140084e26
mov rdx, rax
mov r10, qword [rsp + 0x48]
cmp rdx, 4
jb 0x140084ea1
cmp rdx, r14
jbe 0x140084ea1
mov r11, qword [rbp + 0x3f]
bsr eax, edi
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r10
jbe 0x140084ea5
mov r14, rdx
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x40], rdi
mov r10, rax
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x50], 0
jmp 0x140084ea5
xor rcx, r9
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x140084e3c
mov r11, qword [rbp + 0x3f]
jmp 0x140084ea9
mov r11, qword [rbp + 0x3f]
mov rdi, qword [rbp + 0x5f]
add rbx, 4
add rsi, 4
cmp rbx, r12
jbe 0x140084d60
lea rax, [r12 + 4]
mov qword [rdi + 0x50], rax
mov rax, qword [rsp]
mov r15, qword [rbp + 0x37]
add rax, 0xaf
cmp r10, rax
jb 0x140084f36
mov ecx, dword [rsp + 0x58]
inc r15
movups xmm0, xmmword [rsp + 0x38]
inc qword [rsp + 0x20]
inc ecx
movups xmm1, xmmword [rsp + 0x48]
inc r12
mov qword [rbp + 0x37], r15
mov qword [rsp + 0x70], r12
mov dword [rsp + 0x58], ecx
movups xmmword [rbp - 0x71], xmm0
movups xmmword [rbp - 0x61], xmm1
cmp ecx, 4
jge 0x140084f30
lea rax, [r12 + 7]
cmp rax, qword [rsp + 0x60]
jae 0x140084f30
mov rax, qword [rbp - 0x61]
mov ecx, dword [rbp + 0x2f]
mov qword [rsp], rax
mov rax, qword [rbp - 0x71]
mov qword [rsp + 0x28], rax
jmp 0x140084958
mov r12, qword [rbp - 0x71]
jmp 0x140084f3b
mov r12, qword [rsp + 0x28]
mov rax, qword [rbp - 0x49]
mov r10, qword [rsp + 0x68]
mov rbx, qword [rbp - 0x69]
lea r11, [rax + r12*2]
mov rax, qword [rbp - 0x41]
add r11, r15
add rax, r15
cmp rax, r10
mov qword [rsp + 0x30], r11
mov r11, qword [rbp + 0x67]
cmovb r10, rax
lea rdx, [r11 + 4]
cmp rbx, r10
ja 0x140084fed
movsxd rax, dword [r11]
lea rcx, [rbx + 3]
movsxd r9, dword [rdx]
mov r8, rcx
sub r8, rax
sub rcx, r9
cmp rbx, rax
jne 0x140084f8c
xor r8d, r8d
jmp 0x140084ff1
cmp rbx, r9
jne 0x140084f99
mov r8d, 1
jmp 0x140084ff1
cmp r8, 7
jae 0x140084fb5
movzx ecx, r8b
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x140084ff1
cmp rcx, 7
jae 0x140084fcd
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x140084ff1
movsxd rax, dword [r11 + 8]
cmp rbx, rax
jne 0x140084fde
mov r8d, 2
jmp 0x140084ff1
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x140084ff1
lea r8, [rbx + 0xf]
cmp rbx, r10
ja 0x140085011
test r8, r8
je 0x140085011
mov eax, dword [r11 + 8]
mov dword [r11 + 0xc], eax
mov eax, dword [rdx]
mov dword [r11 + 8], eax
mov eax, dword [r11]
mov dword [rdx], eax
mov dword [r11], ebx
mov r11, qword [rbp + 0x77]
mov esi, dword [rbp - 0x59]
mov rcx, qword [rbp + 0x57]
mov r13, qword [rsp + 0x20]
movzx eax, sil
shl eax, 0x19
or eax, r12d
mov dword [r11], r13d
mov dword [r11 + 4], eax
mov r14d, dword [rcx + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x140085043
xor edi, edi
jmp 0x1400850bb
mov r11d, dword [rcx + 0x40]
mov r10d, 1
lea ecx, [r11 + 2]
shl r10, cl
sub r10, r14
add r10, 0xfffffffffffffff0
add r10, r8
bsr eax, r10d
mov rdx, r10
mov rdi, r10
dec eax
mov ecx, eax
mov r9d, eax
shr rdx, cl
sub r9, r11
and edx, 1
lea r8, [r9 - 1]
shl r9, 0xa
lea r8, [rdx + r8*2]
lea rax, [rdx + 2]
shl rax, cl
mov ecx, r11d
mov r11, qword [rbp + 0x77]
sub rdi, rax
shl r8, cl
mov eax, 1
shl ax, cl
add r8w, 0x10
dec ax
shr rdi, cl
and ax, r10w
add r8w, ax
add r8w, r14w
or r8w, r9w
mov word [r11 + 0xe], r8w
lea edx, [r12 + rsi]
mov eax, 0x3ff
mov dword [r11 + 8], edi
and r8w, ax
movsxd r9, edx
cmp r13, 6
jae 0x1400850e5
movzx r10d, r13w
mov eax, 0x17
jmp 0x140085157
cmp r13, 0x82
jae 0x14008510f
lea eax, [r13 - 2]
bsr ecx, eax
lea r10, [r13 - 2]
mov eax, 0x17
dec ecx
shr r10, cl
inc cx
add cx, cx
add r10w, cx
jmp 0x140085157
cmp r13, 0x842
jae 0x14008512c
lea eax, [r13 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x140085157
mov eax, 0x17
cmp r13, 0x1842
jae 0x140085142
mov r10d, reloc.WS2_32.dll_setsockopt
jmp 0x140085157
cmp r13, 0x5842
jae 0x140085153
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x140085157
movzx r10d, ax
cmp r9, 0xa
jae 0x140085164
sub r9w, 2
jmp 0x1400851a4
cmp r9, 0x86
jae 0x140085189
add r9, 0xfffffffffffffffa
lea eax, [rdx - 6]
bsr ecx, eax
dec ecx
shr r9, cl
add cx, 2
add cx, cx
add r9w, cx
jmp 0x1400851a4
cmp r9, 0x846
jae 0x1400851a0
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x1400851a4
movzx r9d, ax
movzx edx, r10w
movzx eax, r9w
and dx, 7
and ax, 7
shl dx, 3
or dx, ax
test r8w, r8w
jne 0x1400851dc
cmp r10w, 8
jae 0x1400851dc
cmp r9w, 0x10
jae 0x1400851dc
cmp r9w, 8
jb 0x140085210
or dx, 0x40
jmp 0x140085210
movzx eax, r10w
mov r8d, 0xc0
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, r9w
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, r8w
add ax, cx
or dx, ax
mov rax, qword [rbp + 0x87]
xor r10d, r10d
mov r8, qword [rbp - 0x51]
mov word [r11 + 0xc], dx
add r11, 0x10
mov qword [rbp + 0x77], r11
lea rdx, [r15 + 2]
add qword [rax], r13
lea rax, [r12 + r15]
cmp rax, r8
mov qword [rsp + 0x20], r10
cmovb r8, rax
mov rax, r12
shr rax, 2
cmp rbx, rax
jae 0x140085277
lea rax, [rbx*4]
mov rcx, r12
sub rcx, rax
lea rax, [rcx + r15]
cmp rdx, rax
mov eax, 2
cmova rcx, rax
lea rdx, [r15 + rcx]
cmp r8, rdx
cmovb rdx, r8
mov rbx, qword [rbp + 0x5f]
cmp rdx, r8
jae 0x1400852d4
mov r9, qword [rbp + 0x3f]
movabs r15, 0xbd1e35a7bd000000
mov r10, qword [rbp + 0x47]
nop dword [rax]
nop word [rax + rax]
mov rax, rdx
and rax, r10
mov rcx, qword [rax + r9]
mov eax, edx
imul rcx, r15
and eax, 8
shr rcx, 0x30
add ecx, eax
mov rax, qword [rbx + 0x38]
movzx ecx, cx
mov dword [rax + rcx*4], edx
inc rdx
cmp rdx, r8
jb 0x1400852a0
mov r15, qword [rbp + 0x37]
mov r10, qword [rsp + 0x20]
add r15, r12
mov qword [rbp + 0x37], r15
jmp 0x140085427
mov r10, qword [rsp + 0x20]
mov r15, r12
mov r11, qword [rsp + 0x30]
inc r10
mov qword [rsp + 0x20], r10
mov qword [rbp + 0x37], r12
cmp r12, r11
jbe 0x140085423
mov rax, qword [rbp - 0x49]
mov rdx, qword [rsp + 0x60]
mov r9, qword [rbp + 0x47]
add rdx, 0xfffffffffffffff9
lea rax, [r11 + rax*4]
mov r11, qword [rbp + 0x3f]
cmp r12, rax
jbe 0x1400853a0
lea rax, [r12 + 0x10]
cmp rax, rdx
cmovb rdx, rax
cmp r12, rdx
jae 0x14008541d
add r10, 4
mov rax, rdx
sub rax, r12
dec rax
and rax, 0xfffffffffffffffc
add r10, rax
mov qword [rsp + 0x20], r10
movabs r10, 0xbd1e35a7bd000000
nop dword [rax]
mov rax, r9
and rax, r15
mov rcx, qword [rax + r11]
mov eax, r15d
imul rcx, r10
and eax, 8
shr rcx, 0x30
add ecx, eax
mov rax, qword [rdi + 0x38]
movzx ecx, cx
mov dword [rax + rcx*4], r15d
add r15, 4
cmp r15, rdx
jb 0x140085360
mov rbx, qword [rbp + 0x5f]
mov r10, qword [rsp + 0x20]
mov qword [rbp + 0x37], r15
jmp 0x14008542f
lea rax, [r12 + 8]
cmp rax, rdx
cmovb rdx, rax
cmp r12, rdx
jae 0x14008541d
add r10, 2
mov rax, rdx
sub rax, r12
dec rax
and rax, 0xfffffffffffffffe
add r10, rax
mov qword [rsp + 0x20], r10
movabs r10, 0xbd1e35a7bd000000
nop dword [rax]
nop dword [rax + rax]
mov rax, r9
and rax, r15
mov rcx, qword [rax + r11]
mov eax, r15d
imul rcx, r10
and eax, 8
shr rcx, 0x30
add ecx, eax
mov rax, qword [rdi + 0x38]
movzx ecx, cx
mov dword [rax + rcx*4], r15d
add r15, 2
cmp r15, rdx
jb 0x1400853e0
mov rbx, qword [rbp + 0x5f]
mov r10, qword [rsp + 0x20]
mov qword [rbp + 0x37], r15
jmp 0x14008542f
mov rbx, qword [rbp + 0x5f]
jmp 0x14008542f
mov rbx, qword [rbp + 0x5f]
mov r9, qword [rbp + 0x47]
mov r11, qword [rbp + 0x3f]
mov rdx, qword [rsp + 0x60]
lea rax, [r15 + 8]
mov r8, qword [rsp + 0x68]
movabs rcx, 0xbd1e35a7bd000000
cmp rax, rdx
jb 0x140084410
mov r14, qword [rsp + 0xd8]
mov r13, qword [rsp + 0xe0]
mov r12, qword [rsp + 0xe8]
mov rsi, qword [rsp + 0xf0]
mov rcx, qword [rbp + 0x77]
mov rax, qword [rbp + 0x6f]
sub rdx, r15
sub rcx, qword [rbp - 0x39]
add rdx, r10
sar rcx, 4
mov qword [rax], rdx
mov rax, qword [rbp + 0x7f]
add qword [rax], rcx
add rsp, 0xf8
pop r15
pop rdi
pop rbx
pop rbp
ret
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x48]
sub rsp, 0x148
mov rax, qword [0x1407b6d00]
xor rax, rsp
mov qword [rbp + 0x30], rax
mov r10, qword [rbp + 0xd8]
mov rax, rcx
mov rcx, qword [rbp + 0xe8]
mov r11, rdx
mov rsi, qword [rbp + 0xc0]
mov rdi, r9
mov r15, qword [rbp + 0xe0]
mov rbx, r8
mov r8, qword [rbp + 0xc8]
mov r13d, 1
mov qword [rsp + 0x18], r9
lea r14, [r11 + rax]
mov r9, qword [rbp + 0xd0]
mov qword [rbp - 0x30], rcx
mov qword [rsp + 0x30], rdx
mov rdx, qword [rbp + 0xb8]
mov qword [rbp - 0x20], r9
mov r9, qword [r9]
mov qword [rsp], rbx
mov ecx, dword [rdx + 8]
shl r13, cl
mov rcx, qword [rdx + 0x10]
sub r13, 0x10
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x70], r10
mov qword [rbp - 0x28], r15
mov qword [rsp + 0x58], r13
mov qword [rbp - 0x80], rcx
mov qword [rbp - 0x18], r10
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x78], r14
cmp rax, 8
jb 0x140085574
lea rax, [r14 - 7]
mov qword [rbp - 0x50], rax
jmp 0x140085578
mov qword [rbp - 0x50], r11
cmp dword [rdx + 4], 9
mov eax, 0x200
mov r12d, 0x40
cmovl eax, r12d
mov qword [rbp - 0x48], rax
add rax, r11
mov qword [rsp + 0x60], rax
lea rax, [r11 + 8]
cmp rax, r14
jae 0x140086a22
movdqa xmm2, xmmword [0x1406e1820]
movdqa xmm3, xmmword [0x1406e1840]
nop dword [rax]
nop dword [rax + rax]
lea rax, [r11 + rcx]
mov qword [rsp + 0x28], 0x7e4
mov r9, r14
mov r15, r13
sub r9, r11
mov rcx, r13
cmp r11, r13
mov qword [rsp + 8], r9
mov r14, rdi
cmovb r15, r11
cmp rax, r13
mov r13, qword [rsp + 0x30]
cmovb rcx, rax
mov rax, qword [rdx + 0x50]
mov rdx, qword [rsp]
xor r10d, r10d
and r14, r11
mov qword [rsp + 0x50], rcx
movsxd r11, dword [r8]
lea r12, [rbx + r14]
movzx edi, byte [r12]
movabs rcx, 0xbd1e35a7bd000000
mov r8, qword [rsp + 0x18]
mov ebx, 0x7e4
mov qword [rbp - 0x78], rax
mov rax, qword [r12]
imul rax, rcx
mov qword [rsp + 0x20], r10
mov rcx, r13
shr rax, 0x2f
sub rcx, r11
mov qword [rbp - 0x68], r10
mov r10, qword [rsi + 0x38]
xor esi, esi
mov qword [rsp + 0x40], r10
mov dword [rbp - 0x58], esi
movq xmm1, rax
punpcklqdq xmm1, xmm1
cmp rcx, r13
jae 0x140085736
mov r10d, r8d
and r10, rcx
add r10, rdx
movzx eax, byte [r10]
cmp edi, eax
jne 0x140085731
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r12
test rax, rax
je 0x1400856af
nop dword [rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008571b
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140085690
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x1400856d3
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x1400856d3
inc rcx
sub r8, 1
jne 0x1400856c0
mov rax, rcx
mov rdx, qword [rsp]
mov r10, qword [rsp + 0x40]
mov r8, qword [rsp + 0x18]
cmp rax, 4
jb 0x140085736
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rbx
jbe 0x140085736
mov qword [rsp + 0x20], rax
mov rsi, rax
add rax, rdx
mov qword [rbp - 0x68], r11
mov qword [rsp + 0x28], rcx
mov rbx, rcx
movzx edi, byte [rax + r14]
jmp 0x140085736
xor r8, r9
mov r9, qword [rsp + 8]
tzcnt rax, r8
shr rax, 3
add rax, rcx
jmp 0x1400856d6
mov r10, qword [rsp + 0x40]
xor eax, eax
nop dword [rax + rax]
movq xmm0, rax
punpcklqdq xmm0, xmm0
paddq xmm0, xmm2
psllq xmm0, 3
paddq xmm0, xmm1
andps xmm0, xmm3
movdqu xmmword [rbp + rax*8 - 0x10], xmm0
add rax, 2
cmp rax, 4
jb 0x140085740
mov r11, qword [rsp + 0x30]
mov rax, r13
shr rax, 3
and eax, 3
mov r13, qword [rbp + rax*8 - 0x10]
mov rax, qword [rbp - 0x10]
mov ecx, dword [r10 + rax*4]
mov r10d, r8d
sub r11, rcx
and r10, rcx
add r10, rdx
movzx eax, byte [rsi + r10]
cmp edi, eax
jne 0x140085859
test r11, r11
je 0x140085859
cmp r11, r15
ja 0x140085859
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r12
test rax, rax
je 0x1400857f3
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x140085af1
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x1400857d0
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x140085813
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x140085813
inc rcx
sub r8, 1
jne 0x140085800
mov rdx, rcx
cmp rdx, 4
jb 0x140085859
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x140085859
mov rax, qword [rsp]
mov rsi, rdx
add rax, rdx
mov qword [rsp + 0x20], rdx
mov rbx, r8
mov qword [rsp + 0x28], r8
mov qword [rbp - 0x68], r11
movzx edi, byte [rax + r14]
mov rax, qword [rbp - 8]
mov rcx, qword [rsp + 0x40]
mov r11, qword [rsp + 0x30]
mov r10, qword [rsp]
mov ecx, dword [rcx + rax*4]
mov eax, dword [rsp + 0x18]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [rsi + r10]
cmp edi, eax
jne 0x14008593b
test r11, r11
je 0x14008593b
cmp r11, r15
ja 0x14008593b
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r12
test rax, rax
je 0x1400858d3
nop dword [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x140085b0a
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x1400858b0
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x1400858f5
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x1400858f5
inc rdx
inc rcx
sub r8, 1
jne 0x1400858e0
mov rdx, rcx
cmp rdx, 4
jb 0x14008593b
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x14008593b
mov rax, qword [rsp]
mov rsi, rdx
add rax, rdx
mov qword [rsp + 0x20], rdx
mov rbx, r8
mov qword [rsp + 0x28], r8
mov qword [rbp - 0x68], r11
movzx edi, byte [rax + r14]
mov rax, qword [rbp]
mov rcx, qword [rsp + 0x40]
mov r11, qword [rsp + 0x30]
mov r10, qword [rsp]
mov ecx, dword [rcx + rax*4]
mov eax, dword [rsp + 0x18]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [rsi + r10]
cmp edi, eax
jne 0x140085a1b
test r11, r11
je 0x140085a1b
cmp r11, r15
ja 0x140085a1b
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r12
test rax, rax
je 0x1400859b3
nop dword [rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x140085b23
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140085990
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x1400859d5
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x1400859d5
inc rdx
inc rcx
sub r8, 1
jne 0x1400859c0
mov rdx, rcx
cmp rdx, 4
jb 0x140085a1b
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x140085a1b
mov rax, qword [rsp]
mov rsi, rdx
add rax, rdx
mov qword [rsp + 0x20], rdx
mov rbx, r8
mov qword [rsp + 0x28], r8
mov qword [rbp - 0x68], r11
movzx edi, byte [rax + r14]
mov rax, qword [rbp + 8]
mov rcx, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x18]
mov r14, qword [rsp]
mov r11, qword [rsp + 0x30]
mov ecx, dword [rcx + rax*4]
and r10, rcx
sub r11, rcx
add r10, r14
movzx eax, byte [rsi + r10]
cmp edi, eax
jne 0x140085b55
test r11, r11
je 0x140085b55
cmp r11, r15
ja 0x140085b55
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r12
test rax, rax
je 0x140085a93
nop
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x140085b3c
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140085a70
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x140085ab5
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x140085ab5
inc rdx
inc rcx
sub r8, 1
jne 0x140085aa0
mov rdx, rcx
cmp rdx, 4
jb 0x140085b55
bsr eax, r11d
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rbx, rax
jae 0x140085b55
mov qword [rsp + 0x20], rdx
mov r15, rax
mov qword [rsp + 0x28], rax
mov qword [rbp - 0x68], r11
jmp 0x140085b5a
xor r8, r9
mov r9, qword [rsp + 8]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x140085816
xor r8, r9
mov r9, qword [rsp + 8]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x1400858f8
xor r8, r9
mov r9, qword [rsp + 8]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x1400859d8
xor r8, r9
mov r9, qword [rsp + 8]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x140085ab8
mov r15, qword [rsp + 0x28]
mov r8, qword [rsp + 0x10]
mov r10, qword [rsp + 0x38]
cmp r15, 0x7e4
jne 0x140085d09
mov rbx, qword [r8 + 0x30]
mov rdx, qword [rbx + 8]
mov r14, qword [rbx + 0x10]
mov rax, rdx
shr rax, 7
cmp r14, rax
jb 0x140085d05
imul ecx, dword [r12], 0x1e35a7bd
lea rax, [rdx + 1]
mov qword [rbx + 8], rax
mov rax, qword [r10 + 0x78]
shr rcx, 0x11
and ecx, 0x7ffe
movzx edx, byte [rcx + rax]
test dl, dl
je 0x140085d05
mov rax, qword [r10 + 0x70]
mov r11d, edx
movzx esi, word [rax + rcx*2]
cmp rdx, r9
ja 0x140085d05
mov rdi, qword [r10 + 0x58]
mov eax, r11d
imul rax, rsi
mov edx, dword [rdi + rdx*4 + 0x20]
mov r8d, r11d
xor ecx, ecx
shr r8, 3
add rdx, rax
add rdx, qword [rdi + 0xa8]
test r8, r8
je 0x140085c23
mov r10, r12
sub r10, rdx
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x140085ce7
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140085c00
mov r10, qword [rsp + 0x38]
mov r8, r11
and r8d, 7
je 0x140085c43
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r12], al
jne 0x140085c43
inc rcx
sub r8, 1
jne 0x140085c30
mov r9, rcx
mov eax, dword [r10 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140085d00
test r9, r9
je 0x140085d00
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r10 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [r11 + rdi]
and edx, 0x3f
lea rax, [rdx + r8*4]
mov rdx, qword [rsp + 0x50]
shl rax, cl
inc rdx
add rax, rsi
add rdx, rax
cmp rdx, qword [rbp - 0x78]
ja 0x140085d00
mov r8, qword [rsp + 0x10]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r15
jb 0x140085d05
mov qword [rsp + 0x28], rax
mov rcx, r9
mov r15, qword [rsp + 0x28]
lea rax, [r14 + 1]
mov r14, qword [rsp]
sub r11d, r9d
mov qword [rbx + 0x10], rax
mov qword [rsp + 0x20], rcx
mov dword [rbp - 0x58], r11d
mov qword [rbp - 0x68], rdx
jmp 0x140085d0e
mov r10, qword [rsp + 0x38]
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140085c46
mov r8, qword [rsp + 0x10]
mov r14, qword [rsp]
mov rcx, qword [rsp + 0x20]
mov rax, qword [rsp + 0x40]
mov r11, qword [rsp + 0x30]
mov dword [rax + r13*4], r11d
cmp r15, 0x7e4
jbe 0x1400868b7
mov r9, qword [rsp + 8]
xor edi, edi
mov dword [rsp + 0x40], edi
dec r9
cmp dword [r10 + 4], 5
mov qword [rsp + 8], r9
jge 0x140085d53
lea rax, [rcx - 1]
mov rbx, r9
cmp rax, r9
cmovb rbx, rax
jmp 0x140085d56
mov rbx, rdi
mov rdx, qword [rsp + 0x58]
lea r10, [r11 + 1]
mov rax, qword [rbp - 0x80]
cmp r10, rdx
mov r15, rdx
mov qword [rbp - 8], rdi
cmovb r15, r10
mov dword [rbp + 8], edi
inc rax
mov qword [rbp - 0x10], rbx
add rax, r11
mov qword [rsp + 0x50], r10
cmp rax, rdx
mov rcx, rdx
mov rdx, qword [rsp + 0x38]
mov r12d, 0x7e4
cmovb rcx, rax
mov qword [rbp], r12
mov qword [rbp - 0x78], rcx
mov edi, r12d
movabs rcx, 0xbd1e35a7bd000000
mov rax, qword [rdx + 0x50]
mov rdx, qword [rsp]
mov qword [rbp - 0x40], rax
mov rax, qword [r8 + 0x38]
mov r8, qword [rsp + 0x18]
mov qword [rsp + 0x60], rax
mov r14, r8
and r14, r10
mov rax, qword [rdx + r14]
lea r13, [rdx + r14]
movzx esi, byte [rbx + r13]
imul rax, rcx
mov rcx, r10
shr rax, 0x2f
movq xmm1, rax
mov rax, qword [rsp + 0x68]
punpcklqdq xmm1, xmm1
movsxd r11, dword [rax]
sub rcx, r11
cmp rcx, r10
jae 0x140085ed2
mov r10d, r8d
and r10, rcx
add r10, rdx
movzx eax, byte [r10 + rbx]
cmp esi, eax
jne 0x140085ecd
mov r8, r9
xor ecx, ecx
shr r8, 3
mov rdx, r13
test r8, r8
je 0x140085e4f
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x140085eb7
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140085e30
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x140085e73
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x140085e73
inc rcx
sub r8, 1
jne 0x140085e60
mov rax, rcx
mov r8, qword [rsp]
mov r10, qword [rsp + 0x50]
cmp rax, 4
jb 0x140085ed5
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rdi
jbe 0x140085ed5
mov qword [rbp - 0x10], rax
mov rbx, rax
add rax, r8
mov qword [rbp - 8], r11
mov r12, rcx
mov qword [rbp], rcx
mov rdi, rcx
movzx esi, byte [rax + r14]
jmp 0x140085ed5
xor rax, r9
mov r9, qword [rsp + 8]
tzcnt rax, rax
shr rax, 3
add rax, rcx
jmp 0x140085e76
mov r10, qword [rsp + 0x50]
mov r8, rdx
xor eax, eax
nop word [rax + rax]
movq xmm0, rax
punpcklqdq xmm0, xmm0
paddq xmm0, xmm2
psllq xmm0, 3
paddq xmm0, xmm1
andps xmm0, xmm3
movdqu xmmword [rbp + rax*8 + 0x10], xmm0
add rax, 2
cmp rax, 4
jb 0x140085ee0
mov rdx, qword [rsp + 0x60]
mov rax, r10
shr rax, 3
mov r11, r10
mov r10d, dword [rsp + 0x18]
and eax, 3
mov rcx, qword [rbp + rax*8 + 0x10]
mov rax, qword [rbp + 0x10]
mov qword [rbp - 0x38], rcx
mov ecx, dword [rdx + rax*4]
and r10, rcx
sub r11, rcx
add r10, r8
movzx eax, byte [r10 + rbx]
cmp esi, eax
jne 0x140085ffa
test r11, r11
je 0x140085ffa
cmp r11, r15
ja 0x140085ffa
mov r8, r9
xor ecx, ecx
shr r8, 3
mov rdx, r13
test r8, r8
je 0x140085f93
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x140086416
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140085f70
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x140085fb3
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x140085fb3
inc rcx
sub r8, 1
jne 0x140085fa0
mov rdx, rcx
cmp rdx, 4
jb 0x140085ffa
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x140085ffa
mov rax, qword [rsp]
mov rbx, rdx
add rax, rdx
mov qword [rbp - 0x10], rdx
mov rdi, r8
mov qword [rbp], r8
mov r12, r8
mov qword [rbp - 8], r11
movzx esi, byte [rax + r14]
mov rax, qword [rbp + 0x18]
mov rcx, qword [rsp + 0x60]
mov r10, qword [rsp]
mov r11, qword [rsp + 0x50]
mov ecx, dword [rcx + rax*4]
mov eax, dword [rsp + 0x18]
sub r11, rcx
and rax, rcx
add r10, rax
movzx eax, byte [r10 + rbx]
cmp esi, eax
jne 0x1400860dc
test r11, r11
je 0x1400860dc
cmp r11, r15
ja 0x1400860dc
mov r8, r9
xor ecx, ecx
shr r8, 3
mov rdx, r13
test r8, r8
je 0x140086073
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x14008642f
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140086050
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x140086095
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x140086095
inc rdx
inc rcx
sub r8, 1
jne 0x140086080
mov rdx, rcx
cmp rdx, 4
jb 0x1400860dc
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x1400860dc
mov rax, qword [rsp]
mov rbx, rdx
add rax, rdx
mov qword [rbp - 0x10], rdx
mov rdi, r8
mov qword [rbp], r8
mov r12, r8
mov qword [rbp - 8], r11
movzx esi, byte [rax + r14]
mov rax, qword [rbp + 0x20]
mov rcx, qword [rsp + 0x60]
mov r11, qword [rsp + 0x50]
mov r10, qword [rsp]
mov ecx, dword [rcx + rax*4]
mov eax, dword [rsp + 0x18]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [r10 + rbx]
cmp esi, eax
jne 0x1400861bc
test r11, r11
je 0x1400861bc
cmp r11, r15
ja 0x1400861bc
mov r8, r9
xor ecx, ecx
shr r8, 3
mov rdx, r13
test r8, r8
je 0x140086153
nop
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x140086448
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140086130
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x140086175
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x140086175
inc rdx
inc rcx
sub r8, 1
jne 0x140086160
mov rdx, rcx
cmp rdx, 4
jb 0x1400861bc
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x1400861bc
mov rax, qword [rsp]
mov rbx, rdx
add rax, rdx
mov qword [rbp - 0x10], rdx
mov rdi, r8
mov qword [rbp], r8
mov r12, r8
mov qword [rbp - 8], r11
movzx esi, byte [rax + r14]
mov rax, qword [rbp + 0x28]
mov rcx, qword [rsp + 0x60]
mov r11, qword [rsp + 0x50]
mov r10, qword [rsp]
mov ecx, dword [rcx + rax*4]
mov eax, dword [rsp + 0x18]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [r10 + rbx]
cmp esi, eax
jne 0x140086289
test r11, r11
je 0x140086289
cmp r11, r15
ja 0x140086289
mov rcx, r9
xor eax, eax
shr rcx, 3
mov rdx, r13
test rcx, rcx
je 0x140086233
nop
mov r9, qword [rdx]
mov r8, qword [rax + r10]
cmp r9, r8
jne 0x140086461
add rdx, 8
add rax, 8
sub rcx, 1
jne 0x140086210
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x140086255
nop dword [rax]
movzx ecx, byte [rdx]
cmp byte [rax + r10], cl
jne 0x140086255
inc rdx
inc rax
sub r8, 1
jne 0x140086240
mov rdx, rax
cmp rdx, 4
jb 0x140086289
bsr eax, r11d
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rdi, rax
jae 0x140086289
mov qword [rbp - 0x10], rdx
mov r12, rax
mov qword [rbp], rax
mov qword [rbp - 8], r11
mov r8, qword [rsp + 0x10]
mov r10, qword [rsp + 0x38]
cmp r12, 0x7e4
jne 0x140086498
mov rbx, qword [r8 + 0x30]
mov rdx, qword [rbx + 8]
mov r14, qword [rbx + 0x10]
mov rax, rdx
shr rax, 7
cmp r14, rax
jb 0x140086498
imul ecx, dword [r13], 0x1e35a7bd
lea rax, [rdx + 1]
mov qword [rbx + 8], rax
mov rax, qword [r10 + 0x78]
shr rcx, 0x11
and ecx, 0x7ffe
movzx edx, byte [rcx + rax]
test dl, dl
je 0x140086498
mov rax, qword [r10 + 0x70]
mov r11d, edx
movzx esi, word [rax + rcx*2]
cmp rdx, r9
ja 0x140086498
mov rdi, qword [r10 + 0x58]
mov eax, r11d
imul rax, rsi
mov edx, dword [rdi + rdx*4 + 0x20]
mov r8d, r11d
xor ecx, ecx
shr r8, 3
add rdx, rax
add rdx, qword [rdi + 0xa8]
test r8, r8
je 0x140086353
mov r10, r13
sub r10, rdx
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14008647a
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140086330
mov r10, qword [rsp + 0x38]
mov r8, r11
and r8d, 7
je 0x140086373
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r13], al
jne 0x140086373
inc rcx
sub r8, 1
jne 0x140086360
mov r9, rcx
mov eax, dword [r10 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140086493
test r9, r9
je 0x140086493
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r10 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [rdi + r11]
and edx, 0x3f
lea rax, [rdx + r8*4]
mov rdx, qword [rbp - 0x78]
shl rax, cl
inc rdx
add rax, rsi
add rdx, rax
cmp rdx, qword [rbp - 0x40]
ja 0x140086493
mov r8, qword [rsp + 0x10]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r12
jb 0x140086498
mov r12, rax
mov qword [rbp], rax
lea rax, [r14 + 1]
mov qword [rbp - 0x10], r9
sub r11d, r9d
mov qword [rbx + 0x10], rax
mov dword [rbp + 8], r11d
mov qword [rbp - 8], rdx
jmp 0x140086498
xor rax, r9
mov r9, qword [rsp + 8]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140085fb6
xor rax, r9
mov r9, qword [rsp + 8]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140086098
xor rax, r9
mov r9, qword [rsp + 8]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140086178
xor r8, r9
mov r9, qword [rsp + 8]
tzcnt rdx, r8
shr rdx, 3
add rdx, rax
jmp 0x140086258
mov r10, qword [rsp + 0x38]
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140086376
mov r8, qword [rsp + 0x10]
mov rax, qword [rbp - 0x38]
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
mov dword [rdx + rax*4], ecx
mov rax, qword [rsp + 0x28]
add rax, 0xaf
cmp r12, rax
mov r12, qword [rsp + 0x48]
jb 0x14008651f
movups xmm0, xmmword [rbp - 0x10]
mov r11, rcx
mov qword [rsp + 0x30], rcx
mov ecx, dword [rsp + 0x40]
inc r12
movups xmm1, xmmword [rbp]
inc ecx
mov qword [rsp + 0x48], r12
mov dword [rsp + 0x40], ecx
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp - 0x60], xmm1
cmp ecx, 4
jge 0x140086519
lea rax, [r11 + 8]
cmp rax, qword [rsp + 0x78]
jae 0x140086519
mov r9, qword [rsp + 8]
mov rax, qword [rbp - 0x60]
dec r9
mov rcx, qword [rbp - 0x70]
xor edi, edi
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
jmp 0x140085d37
mov r15, qword [rbp - 0x70]
jmp 0x140086529
mov r11, qword [rsp + 0x30]
mov r15, qword [rsp + 0x20]
mov rax, qword [rbp - 0x80]
lea r13, [r11 + r15*2]
add r13, qword [rbp - 0x48]
add rax, r11
mov rbx, qword [rbp - 0x68]
mov rdi, qword [rsp + 0x68]
mov qword [rsp + 0x60], r13
mov r13, qword [rsp + 0x58]
cmp rax, r13
mov r9, r13
cmovb r9, rax
cmp rbx, r9
ja 0x1400865d8
movsxd rax, dword [rdi]
lea rcx, [rbx + 3]
movsxd r8, dword [rdi + 4]
mov rdx, rcx
sub rdx, rax
sub rcx, r8
cmp rbx, rax
jne 0x140086578
xor r8d, r8d
jmp 0x1400865dc
cmp rbx, r8
jne 0x140086585
mov r8d, 1
jmp 0x1400865dc
cmp rdx, 7
jae 0x1400865a0
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x1400865dc
cmp rcx, 7
jae 0x1400865b8
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x1400865dc
movsxd rax, dword [rdi + 8]
cmp rbx, rax
jne 0x1400865c9
mov r8d, 2
jmp 0x1400865dc
movsxd rax, dword [rdi + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x1400865dc
lea r8, [rbx + 0xf]
cmp rbx, r9
ja 0x1400865f9
test r8, r8
je 0x1400865f9
mov eax, dword [rdi + 8]
mov dword [rdi + 0xc], eax
mov eax, dword [rdi + 4]
mov dword [rdi + 8], eax
mov eax, dword [rdi]
mov dword [rdi + 4], eax
mov dword [rdi], ebx
mov rcx, qword [rsp + 0x70]
mov esi, dword [rbp - 0x58]
movzx eax, sil
shl eax, 0x19
or eax, r15d
mov dword [rcx], r12d
mov dword [rcx + 4], eax
mov r14d, dword [r10 + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x140086622
xor edi, edi
jmp 0x14008669b
mov r11d, dword [r10 + 0x40]
add r8, 0xfffffffffffffff0
mov r10d, 1
lea ecx, [r11 + 2]
shl r10, cl
sub r10, r14
add r10, r8
bsr eax, r10d
mov rdx, r10
mov rdi, r10
dec eax
mov ecx, eax
mov r9d, eax
shr rdx, cl
sub r9, r11
and edx, 1
lea r8, [r9 - 1]
shl r9, 0xa
lea r8, [rdx + r8*2]
lea rax, [rdx + 2]
shl rax, cl
mov ecx, r11d
mov r11, qword [rsp + 0x30]
sub rdi, rax
shl r8, cl
mov eax, 1
shl ax, cl
add r8w, 0x10
dec ax
shr rdi, cl
and ax, r10w
add r8w, ax
add r8w, r14w
or r8w, r9w
mov r14, qword [rsp + 0x70]
lea edx, [r15 + rsi]
mov eax, 0x3ff
movsxd r9, edx
mov word [r14 + 0xe], r8w
and r8w, ax
mov dword [r14 + 8], edi
cmp r12, 6
jae 0x1400866ca
movzx r10d, r12w
mov eax, 0x17
jmp 0x14008673f
cmp r12, 0x82
jae 0x1400866f6
lea eax, [r12 - 2]
bsr ecx, eax
lea r10, [r12 - 2]
mov eax, 0x17
dec ecx
shr r10, cl
inc cx
add cx, cx
add r10w, cx
jmp 0x14008673f
cmp r12, 0x842
jae 0x140086714
lea eax, [r12 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x14008673f
mov eax, 0x17
cmp r12, 0x1842
jae 0x14008672a
mov r10d, reloc.WS2_32.dll_setsockopt
jmp 0x14008673f
cmp r12, 0x5842
jae 0x14008673b
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x14008673f
movzx r10d, ax
cmp r9, 0xa
jae 0x14008674c
sub r9w, 2
jmp 0x14008678c
cmp r9, 0x86
jae 0x140086771
add r9, 0xfffffffffffffffa
lea eax, [rdx - 6]
bsr ecx, eax
dec ecx
shr r9, cl
add cx, 2
add cx, cx
add r9w, cx
jmp 0x14008678c
cmp r9, 0x846
jae 0x140086788
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x14008678c
movzx r9d, ax
movzx edx, r10w
movzx eax, r9w
and dx, 7
and ax, 7
shl dx, 3
or dx, ax
test r8w, r8w
jne 0x1400867c4
cmp r10w, 8
jae 0x1400867c4
cmp r9w, 0x10
jae 0x1400867c4
cmp r9w, 8
jb 0x1400867f8
or dx, 0x40
jmp 0x1400867f8
movzx eax, r10w
mov r8d, 0xc0
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, r9w
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, r8w
add ax, cx
or dx, ax
mov rax, qword [rbp - 0x30]
xor r9d, r9d
mov r8, qword [rbp - 0x50]
mov word [r14 + 0xc], dx
add r14, 0x10
mov qword [rsp + 0x70], r14
lea rdx, [r11 + 2]
add qword [rax], r12
lea rax, [r11 + r15]
cmp rax, r8
mov qword [rsp + 0x48], r9
cmovb r8, rax
mov rax, r15
shr rax, 2
cmp rbx, rax
jae 0x140086856
lea rax, [rbx*4]
mov rcx, r11
sub rcx, rax
add rcx, r15
cmp rdx, rcx
cmova rcx, rdx
cmp r8, rcx
mov rdx, rcx
cmovb rdx, r8
mov rsi, qword [rsp + 0x10]
cmp rdx, r8
jae 0x1400868aa
mov r11, qword [rsp]
movabs r13, 0xbd1e35a7bd000000
nop
mov rax, qword [rsp + 0x18]
and rax, rdx
mov rcx, qword [rax + r11]
mov eax, edx
imul rcx, r13
and eax, 0x18
shr rcx, 0x2f
add ecx, eax
mov rax, qword [rsi + 0x38]
and ecx, 0x1ffff
mov dword [rax + rcx*4], edx
inc rdx
cmp rdx, r8
jb 0x140086870
mov r11, qword [rsp + 0x30]
mov r13, qword [rsp + 0x58]
add r11, r15
mov qword [rsp + 0x30], r11
jmp 0x1400869f0
mov r9, qword [rsp + 0x48]
inc r11
mov r13, qword [rsp + 0x60]
inc r9
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x30], r11
cmp r11, r13
jbe 0x1400869e6
mov rax, qword [rbp - 0x48]
mov rdx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x18]
add rdx, 0xfffffffffffffff9
lea rax, [rax*4]
add rax, r13
cmp r11, rax
jbe 0x140086977
lea rax, [r11 + 0x10]
cmp rax, rdx
cmovb rdx, rax
cmp r11, rdx
jae 0x14008696b
add r9, 4
mov rax, rdx
sub rax, r11
dec rax
and rax, 0xfffffffffffffffc
add r9, rax
mov qword [rsp + 0x48], r9
movabs r9, 0xbd1e35a7bd000000
nop
mov rax, rdi
and rax, r11
mov rcx, qword [rax + r14]
mov eax, r11d
imul rcx, r9
and eax, 0x18
shr rcx, 0x2f
add ecx, eax
mov rax, qword [r8 + 0x38]
and ecx, 0x1ffff
mov dword [rax + rcx*4], r11d
add r11, 4
cmp r11, rdx
jb 0x140086930
mov r9, qword [rsp + 0x48]
mov qword [rsp + 0x30], r11
mov rsi, qword [rsp + 0x10]
mov r13, qword [rsp + 0x58]
jmp 0x1400869f5
lea rax, [r11 + 8]
cmp rax, rdx
cmovb rdx, rax
cmp r11, rdx
jae 0x14008696b
add r9, 2
mov rax, rdx
sub rax, r11
dec rax
and rax, 0xfffffffffffffffe
add r9, rax
mov qword [rsp + 0x48], r9
movabs r9, 0xbd1e35a7bd000000
nop word [rax + rax]
mov rax, rdi
and rax, r11
mov rcx, qword [rax + r14]
mov eax, r11d
imul rcx, r9
and eax, 0x18
shr rcx, 0x2f
add ecx, eax
mov rax, qword [r8 + 0x38]
and ecx, 0x1ffff
mov dword [rax + rcx*4], r11d
add r11, 2
cmp r11, rdx
jb 0x1400869b0
jmp 0x140086961
mov rsi, qword [rsp + 0x10]
mov r13, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x18]
mov r14, qword [rsp + 0x78]
lea rax, [r11 + 8]
mov rbx, qword [rsp]
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x68]
mov rcx, qword [rbp - 0x80]
cmp rax, r14
jb 0x1400855c0
mov r10, qword [rsp + 0x70]
mov r15, qword [rbp - 0x28]
sub r10, qword [rbp - 0x18]
sub r14, r11
mov rax, qword [rbp - 0x20]
add r14, r9
sar r10, 4
mov qword [rax], r14
add qword [r15], r10
mov rcx, qword [rbp + 0x30]
xor rcx, rsp
call fcn.1400ba850
add rsp, 0x148
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xd8
mov r15, qword [rbp + 0x67]
mov r14, rdx
mov rdi, qword [rbp + 0x7f]
mov rax, rcx
mov edx, 1
mov r10, r9
mov ecx, dword [r15 + 8]
mov r11, qword [r15 + 0x10]
lea r12, [rax + r14]
mov rdi, qword [rdi]
shl rdx, cl
mov rcx, qword [rbp + 0x87]
sub rdx, 0x10
mov qword [rbp - 0x41], rdx
mov r9, rcx
mov qword [rbp - 0x39], r11
mov qword [rbp - 0x19], rcx
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x50], r12
cmp rax, 4
jb 0x140086ae1
lea rax, [r12 - 3]
mov qword [rbp - 0x29], rax
jmp 0x140086ae5
mov qword [rbp - 0x29], r14
cmp dword [r15 + 4], 9
mov eax, 0x200
mov ebx, 0x40
cmovl eax, ebx
mov qword [rbp - 0x21], rax
add rax, r14
mov qword [rbp - 0x71], rax
lea rax, [r14 + 4]
cmp rax, r12
jae 0x1400883b1
mov r12, qword [rbp + 0x6f]
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0xc8], r13
nop dword [rax]
nop word [rax + rax]
mov rsi, qword [r12 + 0x40]
lea rax, [r11 + r14]
mov r9, qword [rsp + 0x50]
mov rdi, rdx
mov r11, qword [rbp + 0x47]
sub r9, r14
cmp r14, rdx
mov qword [rsp], r9
mov rcx, rdx
mov qword [rbp - 0x59], 0
cmovb rdi, r14
mov qword [rsp + 8], 0x7e4
cmp rax, rdx
mov qword [rbp - 0x69], rdi
mov qword [rsp + 0x10], rsi
cmovb rcx, rax
mov rax, qword [r15 + 0x50]
mov qword [rbp - 0x79], rax
xor r12d, r12d
mov rax, r14
mov qword [rbp + 0x3f], rcx
and rax, r10
xor ecx, ecx
imul r14d, dword [rax + r8], 0x1e35a7bd
lea r13, [rax + r8]
mov qword [rsp + 0x48], rax
mov r15d, 0x7e4
mov rax, qword [rbp + 0x77]
mov qword [rsp + 0x18], rcx
mov dword [rbp - 0x49], ecx
shr r14, 0x11
movsxd rbx, dword [rax]
sub r11, rbx
mov qword [rbp - 0x31], r14
cmp r11, qword [rbp + 0x47]
jae 0x140086c66
cmp rbx, rdi
ja 0x140086c66
and r11, r10
mov rdx, r13
add r11, r8
mov r8, r9
shr r8, 3
test r8, r8
je 0x140086c12
mov r10, r11
sub r10, r13
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x140086efe
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140086bf0
mov r9, qword [rsp]
mov r8, r9
and r8d, 7
je 0x140086c33
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x140086c33
inc rcx
sub r8, 1
jne 0x140086c20
mov rdx, rcx
mov r8, qword [rbp + 0x4f]
cmp rdx, 2
jb 0x140086c66
imul rax, rdx, 0x87
add rax, 0x78f
cmp rax, r15
jbe 0x140086c66
mov r15, rax
mov qword [rsp + 0x18], rdx
mov r12, rdx
mov qword [rbp - 0x59], rbx
mov qword [rsp + 8], rax
mov rax, qword [rbp + 0x77]
mov r11, qword [rbp + 0x47]
mov r10, r11
movsxd rbx, dword [rax + 4]
sub r10, rbx
movzx eax, r10w
cmp byte [rax + rsi + 0x30000], r14b
jne 0x140086d3d
cmp r10, r11
jae 0x140086d3d
cmp rbx, rdi
ja 0x140086d3d
and r10, qword [rbp + 0x57]
xor edx, edx
add r10, r8
mov rcx, r13
mov r8, r9
shr r8, 3
test r8, r8
je 0x140086ce2
mov r11, r10
sub r11, r13
nop word [rax + rax]
mov r9, qword [rcx]
mov rax, qword [rcx + r11]
cmp r9, rax
jne 0x140086f16
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x140086cc0
mov r9, qword [rsp]
mov r8, r9
and r8d, 7
je 0x140086d05
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x140086d05
inc rcx
inc rdx
sub r8, 1
jne 0x140086cf0
mov rcx, rdx
cmp rcx, 2
jb 0x140086d3d
imul rax, rcx, 0x87
add rax, 0x78f
cmp r15, rax
jae 0x140086d3d
add rax, 0xffffffffffffffd9
cmp r15, rax
jae 0x140086d3d
mov r15, rax
mov qword [rsp + 0x18], rcx
mov r12, rcx
mov qword [rbp - 0x59], rbx
mov qword [rsp + 8], rax
mov rax, qword [rbp + 0x77]
mov r10, qword [rbp + 0x47]
movsxd rbx, dword [rax + 8]
sub r10, rbx
movzx eax, r10w
cmp byte [rax + rsi + 0x30000], r14b
jne 0x140086e11
cmp r10, qword [rbp + 0x47]
jae 0x140086e11
cmp rbx, rdi
ja 0x140086e11
and r10, qword [rbp + 0x57]
mov r8, r9
add r10, qword [rbp + 0x4f]
xor edx, edx
shr r8, 3
mov rcx, r13
test r8, r8
je 0x140086db2
mov r11, r10
sub r11, r13
mov r9, qword [rcx]
mov rax, qword [rcx + r11]
cmp r9, rax
jne 0x140086f2e
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x140086d90
mov r9, qword [rsp]
mov r8, r9
and r8d, 7
je 0x140086dd5
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x140086dd5
inc rcx
inc rdx
sub r8, 1
jne 0x140086dc0
mov rcx, rdx
cmp rcx, 2
jb 0x140086e11
imul rdx, rcx, 0x87
lea rax, [rdx + 0x78f]
cmp r15, rax
jae 0x140086e11
lea rax, [rdx + 0x764]
cmp r15, rax
jae 0x140086e11
mov r15, rax
mov qword [rsp + 0x18], rcx
mov r12, rcx
mov qword [rbp - 0x59], rbx
mov qword [rsp + 8], rax
mov rax, qword [rbp + 0x77]
mov r10, qword [rbp + 0x47]
movsxd rbx, dword [rax + 0xc]
sub r10, rbx
movzx eax, r10w
cmp byte [rax + rsi + 0x30000], r14b
jne 0x140086f5e
cmp r10, qword [rbp + 0x47]
jae 0x140086f5e
cmp rbx, rdi
ja 0x140086f5e
and r10, qword [rbp + 0x57]
mov r8, r9
add r10, qword [rbp + 0x4f]
xor edx, edx
shr r8, 3
mov rcx, r13
test r8, r8
je 0x140086e92
mov r11, r10
sub r11, r13
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rcx]
mov rax, qword [rcx + r11]
cmp r9, rax
jne 0x140086f46
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x140086e70
mov r9, qword [rsp]
mov r8, r9
and r8d, 7
je 0x140086eb5
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x140086eb5
inc rcx
inc rdx
sub r8, 1
jne 0x140086ea0
mov rcx, rdx
cmp rcx, 2
jb 0x140086f5e
imul rdx, rcx, 0x87
lea rax, [rdx + 0x78f]
cmp r15, rax
jae 0x140086f5e
lea rax, [rdx + 0x764]
cmp r15, rax
jae 0x140086f5e
mov r15, rax
mov qword [rsp + 0x18], rcx
mov r12, rcx
mov qword [rbp - 0x59], rbx
mov r11, rax
mov qword [rsp + 8], rax
jmp 0x140086f63
xor rax, r9
mov r9, qword [rsp]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140086c36
xor rax, r9
mov r9, qword [rsp]
tzcnt rcx, rax
shr rcx, 3
add rcx, rdx
jmp 0x140086d08
xor rax, r9
mov r9, qword [rsp]
tzcnt rcx, rax
shr rcx, 3
add rcx, rdx
jmp 0x140086dd8
xor rax, r9
mov r9, qword [rsp]
tzcnt rcx, rax
shr rcx, 3
add rcx, rdx
jmp 0x140086eb8
mov r11, qword [rsp + 8]
mov rsi, qword [rbp + 0x6f]
xor ebx, ebx
mov r10, qword [rsp + 0x10]
mov rdi, qword [rsi + 0x38]
mov eax, dword [r10 + r14*4]
mov rsi, qword [rbp + 0x47]
movzx r14d, word [r10 + r14*2 + 0x20000]
sub rsi, rax
test rdi, rdi
je 0x1400870b8
nop
dec rdi
add rbx, rsi
cmp rbx, qword [rbp - 0x69]
ja 0x1400870b8
mov r8, qword [rbp + 0x57]
lea rax, [r10 + r14*4]
mov rcx, qword [rbp + 0x47]
mov rdx, qword [rsp + 0x48]
sub rcx, rbx
movzx r14d, word [rax + 0x40002]
and rcx, r8
movzx esi, word [rax + 0x40000]
add rdx, r12
cmp rdx, r8
ja 0x1400870af
lea rax, [rcx + r12]
cmp rax, r8
ja 0x1400870af
mov r8, qword [rbp + 0x4f]
movzx eax, byte [rax + r8]
cmp byte [rdx + r8], al
jne 0x1400870af
lea r11, [rcx + r8]
mov rdx, r13
mov r8, r9
xor ecx, ecx
shr r8, 3
test r8, r8
je 0x14008702e
mov r10, r11
sub r10, r13
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x140087095
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140087010
mov r9, qword [rsp]
mov r8, r9
and r8d, 7
je 0x140087053
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x140087053
inc rcx
sub r8, 1
jne 0x140087040
mov rdx, rcx
mov r10, qword [rsp + 0x10]
cmp rdx, 4
jb 0x1400870aa
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r15, rax
jae 0x1400870aa
mov r15, rax
mov qword [rsp + 0x18], rdx
mov r12, rdx
mov qword [rbp - 0x59], rbx
mov r11, rax
mov qword [rsp + 8], rax
jmp 0x1400870af
xor rax, r9
mov r9, qword [rsp]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140087056
mov r11, qword [rsp + 8]
test rdi, rdi
jne 0x140086f90
mov r8, qword [rbp - 0x31]
mov esi, 0xffff
mov r14, qword [rbp + 0x47]
mov r12, qword [rbp + 0x6f]
mov rcx, r14
movzx edx, word [r12 + 0x30]
lea eax, [rdx + 1]
mov word [r12 + 0x30], ax
mov eax, dword [r10 + r8*4]
sub rcx, rax
movzx eax, r14w
cmp rcx, rsi
cmova rcx, rsi
mov byte [rax + r10 + 0x30000], r8b
mov word [r10 + rdx*4 + 0x40000], cx
movzx eax, word [r10 + r8*2 + 0x20000]
mov word [r10 + rdx*4 + 0x40002], ax
mov dword [r10 + r8*4], r14d
mov word [r10 + r8*2 + 0x20000], dx
cmp r11, 0x7e4
jne 0x14008741f
mov r13, qword [r12 + 0x48]
mov rcx, qword [r13 + 8]
mov r14, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r14, rax
jb 0x14008741b
mov r12, qword [rsp + 0x48]
lea r15, [rcx + 1]
add r12, qword [rbp + 0x4f]
mov rdx, qword [rbp + 0x67]
imul ebx, dword [r12], 0x1e35a7bd
mov qword [r13 + 8], r15
mov rax, qword [rdx + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x1400872b1
mov rax, qword [rdx + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, r9
ja 0x1400872b1
mov rdi, qword [rdx + 0x58]
mov eax, ecx
imul rax, rsi
mov edx, dword [rdi + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rdi + 0xa8]
xor ecx, ecx
test r8, r8
je 0x1400871de
mov r10, r12
sub r10, rdx
nop
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x14008729d
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400871c0
mov r8, r11
and r8d, 7
je 0x140087203
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r12], al
jne 0x140087203
inc rcx
sub r8, 1
jne 0x1400871f0
mov r9, rcx
mov rcx, qword [rbp + 0x67]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x1400872b1
test r9, r9
je 0x1400872b1
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [rcx + 0x68]
add al, al
movzx ecx, al
shr rdx, cl
movzx ecx, byte [r11 + rdi]
and edx, 0x3f
lea rax, [rdx + r8*4]
shl rax, cl
add rax, rsi
mov rsi, qword [rbp + 0x3f]
lea rdx, [rsi + 1]
add rdx, rax
cmp rdx, qword [rbp - 0x79]
ja 0x1400872b5
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 8]
jb 0x1400872b5
mov qword [rsp + 8], rax
sub r11d, r9d
lea rax, [r14 + 1]
mov qword [rsp + 0x18], r9
mov qword [r13 + 0x10], rax
mov dword [rbp - 0x49], r11d
mov qword [rbp - 0x59], rdx
jmp 0x1400872b5
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140087206
mov rsi, qword [rbp + 0x3f]
lea rax, [r15 + 1]
mov r15, qword [rbp + 0x67]
mov qword [r13 + 8], rax
mov rax, qword [r15 + 0x78]
movzx ecx, byte [rbx + rax + 1]
test cl, cl
je 0x14008740c
mov r11d, ecx
mov rax, qword [r15 + 0x70]
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, qword [rsp]
ja 0x14008740c
mov rbx, qword [r15 + 0x58]
mov eax, ecx
imul rax, rdi
mov edx, dword [rbx + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rbx + 0xa8]
xor ecx, ecx
test r8, r8
je 0x14008733e
mov r10, r12
sub r10, rdx
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x1400873f8
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140087320
mov r8, r11
and r8d, 7
je 0x14008735c
movzx eax, byte [rdx]
cmp byte [rcx + r12], al
jne 0x14008735c
inc rdx
inc rcx
sub r8, 1
jne 0x140087347
mov r9, rcx
mov eax, dword [r15 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008740c
test r9, r9
je 0x14008740c
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r15 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [r11 + rbx]
and edx, 0x3f
lea rdx, [rdx + r8*4]
shl rdx, cl
inc rdx
add rdx, rdi
add rdx, rsi
cmp rdx, qword [rbp - 0x79]
ja 0x14008740c
mov r14, qword [rbp + 0x47]
mov esi, 0xffff
mov r12, qword [rbp + 0x6f]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 8]
jb 0x140087423
sub r11d, r9d
mov qword [rbp - 0x59], rdx
inc qword [r13 + 0x10]
mov rcx, r9
mov qword [rsp + 0x18], rcx
mov dword [rbp - 0x49], r11d
mov qword [rsp + 8], rax
jmp 0x140087428
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14008735f
mov r14, qword [rbp + 0x47]
mov esi, 0xffff
mov r12, qword [rbp + 0x6f]
jmp 0x140087423
mov r14, qword [rbp + 0x47]
mov r15, qword [rbp + 0x67]
mov rcx, qword [rsp + 0x18]
cmp qword [rsp + 8], 0x7e4
jbe 0x1400881d4
mov r10, qword [rsp]
xor ebx, ebx
mov dword [rbp + 0x3f], ebx
dec r10
cmp dword [r15 + 4], 5
mov qword [rsp], r10
jge 0x14008745e
lea rax, [rcx - 1]
mov r12, r10
cmp rax, r10
cmovb r12, rax
jmp 0x140087461
mov r12, rbx
mov rdx, qword [rbp - 0x41]
lea r11, [r14 + 1]
mov rax, qword [rbp - 0x39]
cmp r11, rdx
mov r9, qword [rbp + 0x57]
mov ecx, 0x7e4
mov r8, qword [rbp + 0x4f]
mov r13, rdx
mov rsi, qword [rbp + 0x6f]
cmovb r13, r11
inc rax
mov qword [rsp + 0x30], rcx
add rax, r14
mov qword [rsp + 0x10], r11
cmp rax, rdx
mov qword [rsp + 0x28], rbx
mov rsi, qword [rsi + 0x40]
mov rcx, rdx
cmovb rcx, rax
mov qword [rsp + 0x20], rbx
mov rax, qword [r15 + 0x50]
mov r15d, 0x7e4
mov qword [rbp - 0x71], rax
mov rax, r11
and rax, r9
mov dword [rsp + 0x38], ebx
imul r14d, dword [rax + r8], 0x1e35a7bd
lea rdi, [rax + r8]
mov qword [rbp - 0x79], rax
mov rax, qword [rbp + 0x77]
mov qword [rbp - 0x69], rcx
mov qword [rsp + 0x48], rsi
shr r14, 0x11
movsxd rbx, dword [rax]
sub r11, rbx
mov qword [rbp - 0x31], r14
cmp r11, qword [rsp + 0x10]
jae 0x1400875ab
cmp rbx, r13
ja 0x1400875ab
and r11, r9
xor ecx, ecx
mov r9, r10
add r11, r8
shr r9, 3
mov rdx, rdi
test r9, r9
je 0x140087552
mov r10, r11
sub r10, rdi
nop dword [rax]
nop dword [rax + rax]
mov r8, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r8, rax
jne 0x140087847
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x140087530
mov r10, qword [rsp]
mov r8, r10
and r8d, 7
je 0x140087573
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x140087573
inc rcx
sub r8, 1
jne 0x140087560
mov rdx, rcx
mov r8, qword [rbp + 0x4f]
mov r9, qword [rbp + 0x57]
cmp rdx, 2
jb 0x1400875ab
imul rax, rdx, 0x87
add rax, 0x78f
cmp rax, r15
jbe 0x1400875ab
mov r15, rax
mov qword [rsp + 0x20], rdx
mov r12, rdx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x30], rax
mov r11, qword [rbp + 0x77]
movsxd rbx, dword [r11 + 4]
mov r11, qword [rsp + 0x10]
sub r11, rbx
movzx eax, r11w
cmp byte [rax + rsi + 0x30000], r14b
jne 0x14008767e
cmp r11, qword [rsp + 0x10]
jae 0x14008767e
cmp rbx, r13
ja 0x14008767e
and r11, r9
xor edx, edx
mov r9, r10
add r11, r8
shr r9, 3
mov rcx, rdi
test r9, r9
je 0x140087622
mov r10, r11
sub r10, rdi
nop
mov r8, qword [rcx]
mov rax, qword [r10 + rcx]
cmp r8, rax
jne 0x14008785f
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x140087600
mov r10, qword [rsp]
mov r8, r10
and r8d, 7
je 0x140087645
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x140087645
inc rcx
inc rdx
sub r8, 1
jne 0x140087630
mov rcx, rdx
cmp rcx, 2
jb 0x14008767e
imul rax, rcx, 0x87
add rax, 0x78f
cmp r15, rax
jae 0x14008767e
add rax, 0xffffffffffffffd9
cmp r15, rax
jae 0x14008767e
mov r15, rax
mov qword [rsp + 0x20], rcx
mov r12, rcx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x77]
mov r11, qword [rsp + 0x10]
movsxd rbx, dword [rax + 8]
sub r11, rbx
movzx eax, r11w
cmp byte [rax + rsi + 0x30000], r14b
jne 0x140087762
cmp r11, qword [rsp + 0x10]
jae 0x140087762
cmp rbx, r13
ja 0x140087762
and r11, qword [rbp + 0x57]
mov r9, r10
add r11, qword [rbp + 0x4f]
xor edx, edx
shr r9, 3
mov rcx, rdi
test r9, r9
je 0x140087702
mov r10, r11
sub r10, rdi
nop dword [rax]
nop word [rax + rax]
mov r8, qword [rcx]
mov rax, qword [r10 + rcx]
cmp r8, rax
jne 0x140087877
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x1400876e0
mov r10, qword [rsp]
mov r8, r10
and r8d, 7
je 0x140087725
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x140087725
inc rcx
inc rdx
sub r8, 1
jne 0x140087710
mov rcx, rdx
cmp rcx, 2
jb 0x140087762
imul rdx, rcx, 0x87
lea rax, [rdx + 0x78f]
cmp r15, rax
jae 0x140087762
lea rax, [rdx + 0x764]
cmp r15, rax
jae 0x140087762
mov r15, rax
mov qword [rsp + 0x20], rcx
mov r12, rcx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x77]
mov r11, qword [rsp + 0x10]
mov r10, r11
movsxd rbx, dword [rax + 0xc]
sub r10, rbx
movzx eax, r10w
cmp byte [rax + rsi + 0x30000], r14b
jne 0x14008789f
cmp r10, r11
jae 0x14008789f
cmp rbx, r13
ja 0x14008789f
and r10, qword [rbp + 0x57]
xor edx, edx
mov rsi, qword [rsp]
mov rcx, rdi
add r10, qword [rbp + 0x4f]
mov r8, rsi
shr r8, 3
test r8, r8
je 0x1400877de
mov r11, r10
sub r11, rdi
nop dword [rax]
mov r9, qword [rcx]
mov rax, qword [r11 + rcx]
cmp r9, rax
jne 0x14008788b
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x1400877c0
mov r8, rsi
and r8d, 7
je 0x1400877fc
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x1400877fc
inc rcx
inc rdx
sub r8, 1
jne 0x1400877e7
mov rcx, rdx
mov r11, qword [rsp + 0x10]
cmp rcx, 2
jb 0x14008789f
imul rdx, rcx, 0x87
lea rax, [rdx + 0x78f]
cmp r15, rax
jae 0x14008789f
lea rax, [rdx + 0x764]
cmp r15, rax
jae 0x14008789f
mov r15, rax
mov qword [rsp + 0x20], rcx
mov r12, rcx
mov qword [rsp + 0x28], rbx
mov r9, rax
mov qword [rsp + 0x30], rax
jmp 0x1400878a4
mov r10, qword [rsp]
xor rax, r8
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140087576
mov r10, qword [rsp]
xor rax, r8
tzcnt rcx, rax
shr rcx, 3
add rcx, rdx
jmp 0x140087648
xor rax, r8
tzcnt rcx, rax
shr rcx, 3
add rcx, rdx
jmp 0x140087728
xor rax, r9
tzcnt rcx, rax
shr rcx, 3
add rcx, rdx
jmp 0x1400877ff
mov r9, qword [rsp + 0x30]
mov rax, qword [rbp + 0x6f]
mov rsi, r11
mov r10, qword [rsp + 0x48]
xor ebx, ebx
mov rdi, qword [rax + 0x38]
mov eax, dword [r10 + r14*4]
movzx r14d, word [r10 + r14*2 + 0x20000]
sub rsi, rax
test rdi, rdi
je 0x140087a0a
nop
dec rdi
add rbx, rsi
cmp rbx, r13
ja 0x140087a0a
mov r8, qword [rbp + 0x57]
lea rax, [r10 + r14*4]
mov r9, qword [rbp - 0x79]
mov rcx, r11
movzx r14d, word [rax + 0x40002]
sub rcx, rbx
movzx esi, word [rax + 0x40000]
and rcx, r8
lea rdx, [r12 + r9]
cmp rdx, r8
ja 0x1400879fc
lea rax, [rcx + r12]
cmp rax, r8
ja 0x1400879fc
mov r8, qword [rbp + 0x4f]
movzx eax, byte [rax + r8]
cmp byte [rdx + r8], al
jne 0x1400879fc
mov rax, r8
lea r8, [r9 + rax]
lea r11, [rcx + rax]
mov rdx, r8
mov rcx, qword [rsp]
xor eax, eax
mov r9, rcx
shr r9, 3
test r9, r9
je 0x14008797e
mov r10, r11
sub r10, r8
nop word [rax + rax]
mov rcx, qword [rdx]
mov r8, qword [r10 + rdx]
cmp rcx, r8
jne 0x1400879eb
add rdx, 8
add rax, 8
sub r9, 1
jne 0x140087960
mov rcx, qword [rsp]
mov r8, rcx
and r8d, 7
je 0x1400879a3
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
cmp byte [rax + r11], cl
jne 0x1400879a3
inc rax
sub r8, 1
jne 0x140087990
mov rdx, rax
mov r10, qword [rsp + 0x48]
mov r11, qword [rsp + 0x10]
cmp rdx, 4
jb 0x1400879fc
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r15, rax
jae 0x1400879fc
mov r15, rax
mov qword [rsp + 0x20], rdx
mov r12, rdx
mov qword [rsp + 0x28], rbx
mov r9, rax
mov qword [rsp + 0x30], rax
jmp 0x140087a01
xor rcx, r8
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x1400879a6
mov r9, qword [rsp + 0x30]
test rdi, rdi
jne 0x1400878d0
mov r8, qword [rbp - 0x31]
mov esi, 0xffff
mov r12, qword [rbp + 0x6f]
mov rcx, r11
movzx edx, word [r12 + 0x30]
lea eax, [rdx + 1]
mov word [r12 + 0x30], ax
mov eax, dword [r10 + r8*4]
sub rcx, rax
movzx eax, r11w
cmp rcx, rsi
cmova rcx, rsi
mov byte [rax + r10 + 0x30000], r8b
mov word [r10 + rdx*4 + 0x40000], cx
movzx eax, word [r10 + r8*2 + 0x20000]
mov word [r10 + rdx*4 + 0x40002], ax
mov dword [r10 + r8*4], r11d
mov word [r10 + r8*2 + 0x20000], dx
cmp r9, 0x7e4
jne 0x140087d67
mov r13, qword [r12 + 0x48]
mov rcx, qword [r13 + 8]
mov r14, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r14, rax
jb 0x140087d67
mov r12, qword [rbp - 0x79]
lea r15, [rcx + 1]
add r12, qword [rbp + 0x4f]
mov r8, qword [rbp + 0x67]
mov rdx, qword [rsp]
imul ebx, dword [r12], 0x1e35a7bd
mov qword [r13 + 8], r15
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x140087c08
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x140087c08
mov rdi, qword [r8 + 0x58]
mov eax, ecx
imul rax, rsi
mov edx, dword [rdi + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rdi + 0xa8]
xor ecx, ecx
test r8, r8
je 0x140087b2e
mov r10, r12
sub r10, rdx
nop
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x140087bf4
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140087b10
mov r8, r11
and r8d, 7
je 0x140087b53
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r12], al
jne 0x140087b53
inc rcx
sub r8, 1
jne 0x140087b40
mov r9, rcx
mov rcx, qword [rbp + 0x67]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140087c0f
test r9, r9
je 0x140087c0f
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [rcx + 0x68]
add al, al
movzx ecx, al
shr rdx, cl
movzx ecx, byte [rdi + r11]
and edx, 0x3f
lea rax, [rdx + r8*4]
mov rdx, qword [rbp - 0x69]
shl rax, cl
inc rdx
add rax, rsi
mov rsi, qword [rsp + 0x30]
add rdx, rax
cmp rdx, qword [rbp - 0x71]
ja 0x140087c14
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, rsi
jb 0x140087c14
mov rsi, rax
mov qword [rsp + 0x30], rax
lea rax, [r14 + 1]
mov qword [rsp + 0x20], r9
sub r11d, r9d
mov qword [r13 + 0x10], rax
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x28], rdx
jmp 0x140087c14
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140087b56
mov rsi, qword [rsp + 0x30]
jmp 0x140087c18
mov rsi, qword [rsp + 0x30]
mov rdx, qword [rsp]
lea rax, [r15 + 1]
mov r15, qword [rbp + 0x67]
mov qword [r13 + 8], rax
mov rax, qword [r15 + 0x78]
movzx ecx, byte [rbx + rax + 1]
test cl, cl
je 0x140087d6d
mov rax, qword [r15 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x140087d6d
mov rbx, qword [r15 + 0x58]
mov eax, ecx
imul rax, rdi
mov edx, dword [rbx + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rbx + 0xa8]
xor ecx, ecx
test r8, r8
je 0x140087c9e
mov r10, r12
sub r10, rdx
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x140087d53
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140087c80
mov r8, r11
and r8d, 7
je 0x140087cbc
movzx eax, byte [rdx]
cmp byte [rcx + r12], al
jne 0x140087cbc
inc rdx
inc rcx
sub r8, 1
jne 0x140087ca7
mov r9, rcx
mov eax, dword [r15 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140087d6d
test r9, r9
je 0x140087d6d
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r15 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [rbx + r11]
and edx, 0x3f
lea rax, [rdx + r8*4]
mov rdx, qword [rbp - 0x69]
shl rax, cl
inc rdx
add rax, rdi
add rdx, rax
cmp rdx, qword [rbp - 0x71]
ja 0x140087d6d
mov r12, qword [rbp + 0x6f]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, rsi
jb 0x140087d71
sub r11d, r9d
mov qword [rsp + 0x20], r9
inc qword [r13 + 0x10]
mov rcx, rax
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x30], rax
jmp 0x140087d76
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140087cbf
mov r15, qword [rbp + 0x67]
jmp 0x140087d71
mov r12, qword [rbp + 0x6f]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 8]
mov r11, qword [rsp + 0x40]
add rax, 0xaf
cmp rcx, rax
jb 0x140087dec
mov ecx, dword [rbp + 0x3f]
inc r11
movups xmm0, xmmword [rsp + 0x20]
mov r14, qword [rsp + 0x10]
inc ecx
mov qword [rbp + 0x47], r14
mov qword [rsp + 0x40], r11
mov dword [rbp + 0x3f], ecx
movups xmm1, xmmword [rsp + 0x30]
movups xmmword [rbp - 0x61], xmm0
movups xmmword [rbp - 0x51], xmm1
cmp ecx, 4
jge 0x140087de6
lea rax, [r14 + 4]
cmp rax, qword [rsp + 0x50]
jae 0x140087de6
mov r10, qword [rsp]
mov r13, qword [rbp - 0x51]
dec r10
mov rcx, qword [rbp - 0x61]
xor ebx, ebx
mov qword [rsp + 8], r13
mov qword [rsp + 0x18], rcx
jmp 0x140087443
mov r13, qword [rbp - 0x61]
jmp 0x140087df5
mov r14, qword [rbp + 0x47]
mov r13, qword [rsp + 0x18]
mov rax, qword [rbp - 0x21]
mov r9, qword [rbp - 0x41]
mov rbx, qword [rbp - 0x59]
mov r10, qword [rbp + 0x77]
lea r15, [rax + r13*2]
mov rax, qword [rbp - 0x39]
add rax, r14
add r15, r14
cmp rax, r9
mov qword [rbp - 0x71], r15
cmovb r9, rax
cmp rbx, r9
ja 0x140087ea1
movsxd rax, dword [r10]
lea rcx, [rbx + 3]
movsxd r8, dword [r10 + 4]
mov rdx, rcx
sub rdx, rax
sub rcx, r8
cmp rbx, rax
jne 0x140087e41
xor r8d, r8d
jmp 0x140087ea5
cmp rbx, r8
jne 0x140087e4e
mov r8d, 1
jmp 0x140087ea5
cmp rdx, 7
jae 0x140087e69
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x140087ea5
cmp rcx, 7
jae 0x140087e81
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x140087ea5
movsxd rax, dword [r10 + 8]
cmp rbx, rax
jne 0x140087e92
mov r8d, 2
jmp 0x140087ea5
movsxd rax, dword [r10 + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x140087ea5
lea r8, [rbx + 0xf]
cmp rbx, r9
ja 0x140087ec9
test r8, r8
je 0x140087ec9
mov eax, dword [r10 + 8]
mov dword [r10 + 0xc], eax
mov eax, dword [r10 + 4]
mov dword [r10 + 8], eax
mov eax, dword [r10]
mov dword [r10 + 4], eax
mov dword [r10], ebx
mov rcx, qword [rbp + 0x87]
mov esi, dword [rbp - 0x49]
mov r15, qword [rbp + 0x67]
movzx eax, sil
shl eax, 0x19
or eax, r13d
mov dword [rcx], r11d
mov dword [rcx + 4], eax
mov r14d, dword [r15 + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x140087ef8
xor edi, edi
jmp 0x140087f71
mov r11d, dword [r15 + 0x40]
mov r10d, 1
lea ecx, [r11 + 2]
shl r10, cl
sub r10, r14
add r10, 0xfffffffffffffff0
add r10, r8
bsr eax, r10d
mov rdx, r10
mov rdi, r10
dec eax
mov ecx, eax
mov r9d, eax
shr rdx, cl
sub r9, r11
and edx, 1
lea r8, [r9 - 1]
shl r9, 0xa
lea r8, [rdx + r8*2]
lea rax, [rdx + 2]
shl rax, cl
mov ecx, r11d
mov r11, qword [rsp + 0x40]
sub rdi, rax
shl r8, cl
mov eax, 1
shl ax, cl
add r8w, 0x10
dec ax
shr rdi, cl
and ax, r10w
add r8w, ax
add r8w, r14w
or r8w, r9w
mov r14, qword [rbp + 0x87]
lea edx, [rsi + r13]
mov eax, 0x3ff
movsxd r9, edx
mov word [r14 + 0xe], r8w
and r8w, ax
mov dword [r14 + 8], edi
cmp r11, 6
jae 0x140087fa2
movzx r10d, r11w
mov eax, 0x17
jmp 0x140088014
cmp r11, 0x82
jae 0x140087fcc
lea eax, [r11 - 2]
bsr ecx, eax
lea r10, [r11 - 2]
mov eax, 0x17
dec ecx
shr r10, cl
inc cx
add cx, cx
add r10w, cx
jmp 0x140088014
cmp r11, 0x842
jae 0x140087fe9
lea eax, [r11 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x140088014
mov eax, 0x17
cmp r11, 0x1842
jae 0x140087fff
mov r10d, reloc.WS2_32.dll_setsockopt
jmp 0x140088014
cmp r11, 0x5842
jae 0x140088010
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x140088014
movzx r10d, ax
cmp r9, 0xa
jae 0x140088021
sub r9w, 2
jmp 0x140088061
cmp r9, 0x86
jae 0x140088046
add r9, 0xfffffffffffffffa
lea eax, [rdx - 6]
bsr ecx, eax
dec ecx
shr r9, cl
add cx, 2
add cx, cx
add r9w, cx
jmp 0x140088061
cmp r9, 0x846
jae 0x14008805d
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x140088061
movzx r9d, ax
movzx edx, r10w
movzx eax, r9w
and dx, 7
and ax, 7
shl dx, 3
or dx, ax
test r8w, r8w
jne 0x140088099
cmp r10w, 8
jae 0x140088099
cmp r9w, 0x10
jae 0x140088099
cmp r9w, 8
jb 0x1400880cd
or dx, 0x40
jmp 0x1400880cd
movzx eax, r10w
mov r8d, 0xc0
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, r9w
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, r8w
add ax, cx
or dx, ax
mov rax, qword [rbp + 0x97]
xor edi, edi
mov word [r14 + 0xc], dx
add r14, 0x10
mov qword [rbp + 0x87], r14
mov r14, qword [rbp + 0x47]
add qword [rax], r11
mov r11, qword [rbp - 0x29]
mov qword [rsp + 0x40], rdi
lea rax, [r14 + r13]
cmp rax, r11
lea r10, [r14 + 2]
cmovb r11, rax
mov rax, r13
shr rax, 2
cmp rbx, rax
jae 0x14008813a
lea rax, [rbx*4]
mov rcx, r13
sub rcx, rax
lea rax, [rcx + r14]
cmp r10, rax
mov eax, 2
cmova rcx, rax
lea r10, [r14 + rcx]
cmp r11, r10
cmovb r10, r11
cmp r10, r11
jae 0x1400881c8
mov r14, qword [rbp + 0x4f]
mov esi, 0xffff
mov rbx, qword [rbp + 0x57]
mov r9, qword [r12 + 0x40]
mov rax, r10
movzx r8d, word [r12 + 0x30]
and rax, rbx
mov rcx, r10
imul edx, dword [rax + r14], 0x1e35a7bd
lea eax, [r8 + 1]
mov word [r12 + 0x30], ax
shr rdx, 0x11
mov eax, dword [r9 + rdx*4]
sub rcx, rax
movzx eax, r10w
cmp rcx, rsi
cmova rcx, rsi
mov byte [rax + r9 + 0x30000], dl
mov word [r9 + r8*4 + 0x40000], cx
movzx eax, word [r9 + rdx*2 + 0x20000]
mov word [r9 + r8*4 + 0x40002], ax
mov dword [r9 + rdx*4], r10d
inc r10
mov word [r9 + rdx*2 + 0x20000], r8w
cmp r10, r11
jb 0x140088150
mov r14, qword [rbp + 0x47]
add r14, r13
mov qword [rbp + 0x47], r14
jmp 0x140088372
mov rdi, qword [rsp + 0x40]
inc r14
mov r15, qword [rbp - 0x71]
inc rdi
mov qword [rsp + 0x40], rdi
mov qword [rbp + 0x47], r14
cmp r14, r15
jbe 0x14008836e
mov rax, qword [rbp - 0x21]
mov r10, qword [rsp + 0x50]
lea rax, [r15 + rax*4]
cmp r14, rax
jbe 0x1400882bd
add r10, 0xfffffffffffffffc
lea rax, [r14 + 0x10]
cmp rax, r10
cmovb r10, rax
cmp r14, r10
jae 0x14008836e
mov rbx, qword [rbp + 0x57]
mov rax, r10
sub rax, r14
add rdi, 4
dec rax
and rax, 0xfffffffffffffffc
add rdi, rax
mov qword [rsp + 0x40], rdi
mov r9, qword [r12 + 0x40]
mov rax, r14
movzx r8d, word [r12 + 0x30]
and rax, rbx
mov rcx, qword [rbp + 0x4f]
imul edx, dword [rax + rcx], 0x1e35a7bd
lea eax, [r8 + 1]
mov word [r12 + 0x30], ax
mov rcx, r14
shr rdx, 0x11
mov eax, dword [r9 + rdx*4]
sub rcx, rax
movzx eax, r14w
cmp rcx, rsi
cmova rcx, rsi
mov byte [rax + r9 + 0x30000], dl
mov word [r9 + r8*4 + 0x40000], cx
movzx eax, word [r9 + rdx*2 + 0x20000]
mov word [r9 + r8*4 + 0x40002], ax
mov dword [r9 + rdx*4], r14d
add r14, 4
mov word [r9 + rdx*2 + 0x20000], r8w
cmp r14, r10
jb 0x140088240
jmp 0x14008836a
add r10, 0xfffffffffffffffd
lea rax, [r14 + 8]
cmp rax, r10
cmovb r10, rax
cmp r14, r10
jae 0x14008836e
mov rbx, qword [rbp + 0x57]
mov rax, r10
sub rax, r14
add rdi, 2
dec rax
and rax, 0xfffffffffffffffe
add rdi, rax
mov qword [rsp + 0x40], rdi
mov r9, qword [r12 + 0x40]
mov rax, r14
movzx r8d, word [r12 + 0x30]
and rax, rbx
mov rcx, qword [rbp + 0x4f]
imul edx, dword [rax + rcx], 0x1e35a7bd
lea eax, [r8 + 1]
mov word [r12 + 0x30], ax
mov rcx, r14
shr rdx, 0x11
mov eax, dword [r9 + rdx*4]
sub rcx, rax
movzx eax, r14w
cmp rcx, rsi
cmova rcx, rsi
mov byte [rax + r9 + 0x30000], dl
mov word [r9 + r8*4 + 0x40000], cx
movzx eax, word [r9 + rdx*2 + 0x20000]
mov word [r9 + r8*4 + 0x40002], ax
mov dword [r9 + rdx*4], r14d
add r14, 2
mov word [r9 + rdx*2 + 0x20000], r8w
cmp r14, r10
jb 0x1400882f2
mov qword [rbp + 0x47], r14
mov r15, qword [rbp + 0x67]
mov r8, qword [rbp + 0x4f]
lea rax, [r14 + 4]
mov r10, qword [rbp + 0x57]
mov rdx, qword [rbp - 0x41]
mov r11, qword [rbp - 0x39]
cmp rax, qword [rsp + 0x50]
jb 0x140086b30
mov r13, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xd0]
mov r12, qword [rsp + 0x50]
mov rcx, qword [rbp + 0x87]
mov r9, qword [rbp - 0x19]
mov rax, qword [rbp + 0x7f]
sub r12, r14
add r12, rdi
sub rcx, r9
sar rcx, 4
mov qword [rax], r12
mov rax, qword [rbp + 0x8f]
add qword [rax], rcx
add rsp, 0xd8
pop r15
pop r14
pop r12
pop rdi
pop rbx
pop rbp
ret
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xf8
mov r15, qword [rbp + 0x67]
mov rax, rcx
mov rsi, qword [rbp + 0x7f]
mov r11d, 1
mov r10, r9
mov rdi, rdx
add rdx, rax
mov r9, r8
mov ecx, dword [r15 + 8]
mov r14, qword [r15 + 0x10]
mov r8, qword [rbp + 0x87]
mov rsi, qword [rsi]
shl r11, cl
sub r11, 0x10
mov qword [rbp - 0x69], r14
mov qword [rbp - 0x71], r11
mov qword [rbp - 0x21], r8
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x68], rdx
cmp rax, 4
jb 0x14008845f
lea rax, [rdx - 3]
mov qword [rbp - 0x39], rax
jmp 0x140088463
mov qword [rbp - 0x39], rdi
cmp dword [r15 + 4], 9
mov ecx, 0x40
mov rbx, qword [rbp + 0x77]
mov eax, 0x200
cmovl eax, ecx
mov qword [rbp - 0x31], rax
add rax, rdi
mov qword [rsp + 0x60], rax
mov ecx, dword [rbx]
lea eax, [rcx - 1]
mov dword [rbx + 0x10], eax
lea eax, [rcx + 1]
mov dword [rbx + 0x14], eax
lea eax, [rcx - 2]
mov dword [rbx + 0x18], eax
lea eax, [rcx + 2]
mov dword [rbx + 0x1c], eax
lea eax, [rcx - 3]
mov dword [rbx + 0x20], eax
lea eax, [rcx + 3]
mov dword [rbx + 0x24], eax
lea rax, [rdi + 4]
cmp rax, rdx
jae 0x140089b7c
mov qword [rsp + 0xf0], r12
lea rax, [rbx + 4]
mov r12, qword [rbp + 0x6f]
mov qword [rbp - 0x79], rax
mov qword [rsp + 0xe8], r13
mov rsi, qword [r12 + 0x40]
lea rax, [r14 + rdi]
mov r8, rdx
mov qword [rbp - 0x51], 0
sub r8, rdi
mov qword [rsp + 8], 0x7e4
cmp rdi, r11
mov qword [rsp], r8
mov rcx, r11
mov qword [rsp + 0x28], rsi
cmovb rcx, rdi
mov qword [rsp + 0x10], 0
cmp rax, r11
mov qword [rbp + 0x3f], rcx
mov rdx, r11
mov dword [rbp - 0x41], 0
mov r11, qword [rbp + 0x47]
cmovb rdx, rax
mov rax, qword [r15 + 0x50]
mov r15d, 0x7e4
mov qword [rsp + 0x58], rax
lea rax, [rsi + 0x40000]
mov qword [rsp + 0x70], rax
mov rax, rdi
and rax, r10
mov qword [rsp + 0x18], rdx
imul r14d, dword [rax + r9], 0x1e35a7bd
lea r12, [rax + r9]
xor edi, edi
mov qword [rsp + 0x50], rax
shr r14, 0x11
mov qword [rbp - 0x61], r14
xor r13d, r13d
jmp 0x140088574
mov r10, qword [rbp + 0x57]
movsxd rbx, dword [rbx + rdi*4]
sub r11, rbx
test rdi, rdi
je 0x140088592
movzx eax, r11w
cmp byte [rax + rsi + 0x30000], r14b
jne 0x140088678
cmp r11, qword [rbp + 0x47]
jae 0x140088678
cmp rbx, rcx
ja 0x140088678
and r11, r10
xor ecx, ecx
add r11, r9
mov rdx, r12
mov r9, r8
shr r9, 3
test r9, r9
je 0x1400885f2
mov r10, r11
sub r10, r12
nop dword [rax]
nop word [rax + rax]
mov r8, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r8, rax
jne 0x14008878e
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x1400885d0
mov r8, qword [rsp]
and r8d, 7
je 0x140088613
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x140088613
inc rcx
sub r8, 1
jne 0x140088600
mov r8, rcx
cmp r8, 2
jb 0x14008866c
imul r9, r8, 0x87
add r9, 0x78f
cmp r15, r9
jae 0x14008866c
test rdi, rdi
je 0x140088658
movzx ecx, dil
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r15, r9
jae 0x14008866c
mov r15, r9
mov qword [rsp + 0x10], r8
mov r13, r8
mov qword [rbp - 0x51], rbx
mov qword [rsp + 8], r9
mov r9, qword [rbp + 0x4f]
mov r8, qword [rsp]
mov rcx, qword [rbp + 0x3f]
mov rax, qword [rbp - 0x79]
mov r11, qword [rbp + 0x47]
mov r10, r11
movsxd rbx, dword [rax + rdi*4]
lea rax, [rdi + 1]
sub r10, rbx
test rax, rax
je 0x1400886a5
movzx eax, r10w
cmp byte [rax + rsi + 0x30000], r14b
jne 0x1400887ba
cmp r10, r11
jae 0x1400887ba
cmp rbx, rcx
ja 0x1400887ba
and r10, qword [rbp + 0x57]
xor edx, edx
add r10, r9
mov rcx, r12
mov r9, r8
shr r9, 3
test r9, r9
je 0x140088702
mov r11, r10
sub r11, r12
nop word [rax + rax]
mov r8, qword [rcx]
mov rax, qword [r11 + rcx]
cmp r8, rax
jne 0x1400887a2
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x1400886e0
mov r8, qword [rsp]
and r8d, 7
je 0x140088725
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x140088725
inc rcx
inc rdx
sub r8, 1
jne 0x140088710
mov r8, rdx
cmp r8, 2
jb 0x1400887b6
imul r9, r8, 0x87
add r9, 0x78f
cmp r15, r9
jae 0x1400887b6
lea rax, [rdi + 1]
test rax, rax
je 0x140088771
lea ecx, [rdi + 1]
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r15, r9
jae 0x1400887b6
mov r11, qword [rbp + 0x47]
mov r15, r9
mov r13, r8
mov qword [rsp + 0x10], r8
mov qword [rbp - 0x51], rbx
mov r10, r9
mov qword [rsp + 8], r9
jmp 0x1400887bf
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x140088616
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x140088728
mov r11, qword [rbp + 0x47]
mov r10, qword [rsp + 8]
mov rcx, qword [rbp + 0x3f]
add rdi, 2
mov r8, qword [rsp]
mov r9, qword [rbp + 0x4f]
mov rbx, qword [rbp + 0x77]
cmp rdi, 0xa
jb 0x140088570
mov rax, qword [rbp + 0x6f]
xor ebx, ebx
mov r9, qword [rsp + 0x28]
mov rdi, qword [rax + 0x38]
mov eax, dword [rsi + r14*4]
mov rsi, r11
movzx r14d, word [r9 + r14*2 + 0x20000]
sub rsi, rax
test rdi, rdi
je 0x140088938
nop dword [rax + rax]
dec rdi
add rbx, rsi
cmp rbx, qword [rbp + 0x3f]
ja 0x140088933
mov r8, qword [rbp + 0x57]
mov rcx, r11
mov rax, qword [rsp + 0x70]
sub rcx, rbx
mov rdx, qword [rsp + 0x50]
lea rax, [rax + r14*4]
movzx r14d, word [rax + 2]
and rcx, r8
movzx esi, word [rax]
add rdx, r13
cmp rdx, r8
ja 0x14008892a
lea rax, [rcx + r13]
cmp rax, r8
ja 0x14008892a
mov r8, qword [rbp + 0x4f]
movzx eax, byte [rax + r8]
cmp byte [rdx + r8], al
jne 0x14008892a
mov rax, qword [rsp]
lea r11, [rcx + r8]
mov r8, rax
xor ecx, ecx
shr r8, 3
mov rdx, r12
test r8, r8
je 0x1400888ae
mov r10, r11
sub r10, r12
nop
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x140088914
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140088890
mov rax, qword [rsp]
mov r8, rax
and r8d, 7
je 0x1400888d3
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x1400888d3
inc rcx
sub r8, 1
jne 0x1400888c0
mov rdx, rcx
mov r11, qword [rbp + 0x47]
cmp rdx, 4
jb 0x140088925
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r15, rax
jae 0x140088925
mov r15, rax
mov qword [rsp + 0x10], rdx
mov r13, rdx
mov qword [rbp - 0x51], rbx
mov r10, rax
mov qword [rsp + 8], rax
jmp 0x14008892a
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x1400888d6
mov r10, qword [rsp + 8]
test rdi, rdi
jne 0x140088810
mov r9, qword [rsp + 0x28]
mov r8, qword [rbp - 0x61]
mov r14d, 0xffff
mov rdi, qword [rbp + 0x47]
mov r12, qword [rbp + 0x6f]
mov rcx, rdi
movzx edx, word [r12 + 0x30]
lea eax, [rdx + 1]
mov word [r12 + 0x30], ax
mov eax, dword [r9 + r8*4]
sub rcx, rax
movzx eax, di
cmp rcx, r14
cmova rcx, r14
mov byte [rax + r9 + 0x30000], r8b
mov word [r9 + rdx*4 + 0x40000], cx
movzx eax, word [r9 + r8*2 + 0x20000]
mov word [r9 + rdx*4 + 0x40002], ax
mov dword [r9 + r8*4], edi
mov word [r9 + r8*2 + 0x20000], dx
mov rdx, qword [rbp + 0x4f]
cmp r10, 0x7e4
jne 0x140088cd8
mov r12, qword [r12 + 0x48]
mov rdi, qword [rsp + 0x50]
add rdi, rdx
mov rcx, qword [r12 + 8]
mov r15, qword [r12 + 0x10]
mov rax, rcx
shr rax, 7
cmp r15, rax
jb 0x140088cd0
imul ebx, dword [rdi], 0x1e35a7bd
lea r13, [rcx + 1]
mov r8, qword [rbp + 0x67]
mov rdx, qword [rsp]
mov qword [r12 + 8], r13
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x140088b43
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx r14d, word [rax + rbx*2]
cmp rcx, rdx
ja 0x140088b43
mov rsi, qword [r8 + 0x58]
mov eax, ecx
imul rax, r14
mov edx, dword [rsi + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rsi + 0xa8]
xor ecx, ecx
test r8, r8
je 0x140088a6e
mov r10, rdi
sub r10, rdx
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x140088b2f
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140088a50
mov r8, r11
and r8d, 7
je 0x140088a92
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + rdi], al
jne 0x140088a92
inc rcx
sub r8, 1
jne 0x140088a80
mov r9, rcx
mov rcx, qword [rbp + 0x67]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140088b4a
test r9, r9
je 0x140088b4a
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [rcx + 0x68]
add al, al
movzx ecx, al
shr rdx, cl
movzx ecx, byte [rsi + r11]
and edx, 0x3f
lea rax, [rdx + r8*4]
shl rax, cl
add rax, r14
mov r14, qword [rsp + 0x18]
lea rdx, [r14 + 1]
add rdx, rax
cmp rdx, qword [rsp + 0x58]
ja 0x140088b4f
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 8]
jb 0x140088b4f
mov qword [rsp + 8], rax
sub r11d, r9d
lea rax, [r15 + 1]
mov qword [rsp + 0x10], r9
mov qword [r12 + 0x10], rax
mov dword [rbp - 0x41], r11d
mov qword [rbp - 0x51], rdx
jmp 0x140088b4f
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140088a95
mov r14, qword [rsp + 0x18]
jmp 0x140088b53
mov r14, qword [rsp + 0x18]
mov rdx, qword [rsp]
mov r15, qword [rbp + 0x67]
lea rax, [r13 + 1]
mov qword [r12 + 8], rax
mov rax, qword [r15 + 0x78]
movzx ecx, byte [rax + rbx + 1]
test cl, cl
je 0x140088cbc
mov rax, qword [r15 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x140088cbc
mov rbx, qword [r15 + 0x58]
mov eax, ecx
imul rax, rsi
mov edx, dword [rbx + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rbx + 0xa8]
xor ecx, ecx
test r8, r8
je 0x140088bde
mov r10, rdi
sub r10, rdx
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x140088c9e
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140088bc0
mov r8, r11
and r8d, 7
je 0x140088bfb
movzx eax, byte [rdx]
cmp byte [rcx + rdi], al
jne 0x140088bfb
inc rdx
inc rcx
sub r8, 1
jne 0x140088be7
mov r9, rcx
mov eax, dword [r15 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140088cbc
test r9, r9
je 0x140088cbc
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r15 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [rbx + r11]
and edx, 0x3f
lea rdx, [rdx + r8*4]
shl rdx, cl
inc rdx
add rdx, rsi
add rdx, r14
cmp rdx, qword [rsp + 0x58]
ja 0x140088cbc
mov rdi, qword [rbp + 0x47]
mov r14d, 0xffff
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 8]
jb 0x140088cb2
sub r11d, r9d
mov qword [rbp - 0x51], rdx
inc qword [r12 + 0x10]
mov rcx, r9
mov r12, qword [rbp + 0x6f]
mov rdx, qword [rbp + 0x4f]
mov qword [rsp + 0x10], rcx
mov dword [rbp - 0x41], r11d
mov qword [rsp + 8], rax
jmp 0x140088ce1
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140088bfe
mov rdx, qword [rbp + 0x4f]
mov r12, qword [rbp + 0x6f]
jmp 0x140088cdc
mov rdi, qword [rbp + 0x47]
mov r14d, 0xffff
mov rdx, qword [rbp + 0x4f]
mov r12, qword [rbp + 0x6f]
jmp 0x140088cdc
mov rdi, qword [rbp + 0x47]
mov r12, qword [rbp + 0x6f]
mov r15, qword [rbp + 0x67]
mov rcx, qword [rsp + 0x10]
cmp qword [rsp + 8], 0x7e4
jbe 0x140089995
mov r10, qword [rsp]
xor r11d, r11d
mov dword [rbp + 0x3f], r11d
dec r10
cmp dword [r15 + 4], 5
mov qword [rsp], r10
jge 0x140088d19
lea rax, [rcx - 1]
mov r12, r10
cmp rax, r10
cmovb r12, rax
jmp 0x140088d1c
mov r12, r11
mov r8, qword [rbp - 0x71]
lea r13, [rdi + 1]
mov rax, qword [rbp - 0x69]
cmp r13, r8
mov rcx, r8
mov qword [rsp + 0x38], r11
cmovb rcx, r13
mov qword [rsp + 0x30], r11
inc rax
mov qword [rsp + 0x28], rcx
add rax, rdi
mov dword [rsp + 0x48], r11d
cmp rax, r8
mov rdx, r8
mov r9d, 0x7e4
mov rdi, r11
cmovb rdx, rax
mov qword [rsp + 0x40], r9
mov rax, qword [r15 + 0x50]
mov r15d, r9d
mov qword [rsp + 0x60], rax
mov rax, qword [rbp + 0x6f]
mov qword [rsp + 0x70], rdx
mov rdx, qword [rbp + 0x4f]
mov rsi, qword [rax + 0x40]
mov qword [rsp + 0x58], rsi
lea rax, [rsi + 0x40000]
mov qword [rbp - 0x61], rax
mov rax, r13
and rax, qword [rbp + 0x57]
imul r14d, dword [rax + rdx], 0x1e35a7bd
lea r8, [rax + rdx]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x18], r8
shr r14, 0x11
mov qword [rbp - 0x29], r14
nop word [rax + rax]
mov rax, qword [rbp + 0x77]
mov r11, r13
movsxd rbx, dword [rax + rdi*4]
sub r11, rbx
test rdi, rdi
je 0x140088de5
movzx eax, r11w
cmp byte [rax + rsi + 0x30000], r14b
jne 0x140088ee7
cmp r11, r13
jae 0x140088ee7
cmp rbx, rcx
ja 0x140088ee7
and r11, qword [rbp + 0x57]
mov r9, r10
add r11, qword [rbp + 0x4f]
xor ecx, ecx
shr r9, 3
mov rdx, r8
test r9, r9
je 0x140088e42
mov r10, r11
sub r10, r8
nop word [rax + rax]
mov r8, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r8, rax
jne 0x140088ebf
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x140088e20
mov r10, qword [rsp]
mov r8, r10
and r8d, 7
je 0x140088e63
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x140088e63
inc rcx
sub r8, 1
jne 0x140088e50
mov r8, rcx
cmp r8, 2
jb 0x140088ed4
imul r9, r8, 0x87
add r9, 0x78f
cmp r15, r9
jae 0x140088ed4
test rdi, rdi
je 0x140088ea8
movzx ecx, dil
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r15, r9
jae 0x140088ed4
mov r15, r9
mov qword [rsp + 0x30], r8
mov r12, r8
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], r9
jmp 0x140088ed9
mov r10, qword [rsp]
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x140088e66
mov r9, qword [rsp + 0x40]
mov rdx, qword [rbp + 0x4f]
mov rcx, qword [rsp + 0x28]
mov r8, qword [rsp + 0x18]
mov rax, qword [rbp - 0x79]
mov r11, r13
movsxd rbx, dword [rax + rdi*4]
lea rax, [rdi + 1]
sub r11, rbx
test rax, rax
je 0x140088f10
movzx eax, r11w
cmp byte [rax + rsi + 0x30000], r14b
jne 0x140088ffe
cmp r11, r13
jae 0x140088ffe
cmp rbx, rcx
ja 0x140088ffe
and r11, qword [rbp + 0x57]
mov r9, r10
add r11, rdx
shr r9, 3
xor edx, edx
mov rcx, r8
test r9, r9
je 0x140088f62
mov r10, r11
sub r10, r8
mov r8, qword [rcx]
mov rax, qword [r10 + rcx]
cmp r8, rax
jne 0x140088fe4
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x140088f40
mov r10, qword [rsp]
mov r8, r10
and r8d, 7
je 0x140088f85
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x140088f85
inc rcx
inc rdx
sub r8, 1
jne 0x140088f70
mov r8, rdx
cmp r8, 2
jb 0x140088ff9
imul r9, r8, 0x87
add r9, 0x78f
cmp r15, r9
jae 0x140088ff9
lea rax, [rdi + 1]
test rax, rax
je 0x140088fcd
lea ecx, [rdi + 1]
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r15, r9
jae 0x140088ff9
mov r15, r9
mov qword [rsp + 0x30], r8
mov r12, r8
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], r9
jmp 0x140088ffe
mov r10, qword [rsp]
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x140088f88
mov r9, qword [rsp + 0x40]
mov r8, qword [rsp + 0x18]
add rdi, 2
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rbp + 0x4f]
cmp rdi, 0xa
jb 0x140088dc0
mov rax, qword [rbp + 0x6f]
xor ebx, ebx
mov r10, qword [rsp + 0x58]
mov rdi, qword [rax + 0x38]
mov eax, dword [rsi + r14*4]
mov rsi, r13
movzx r14d, word [r10 + r14*2 + 0x20000]
sub rsi, rax
test rdi, rdi
je 0x140089175
dec rdi
add rbx, rsi
cmp rbx, qword [rsp + 0x28]
ja 0x140089170
mov r8, qword [rbp + 0x57]
mov rcx, r13
mov rax, qword [rbp - 0x61]
sub rcx, rbx
mov rdx, qword [rsp + 0x50]
lea rax, [rax + r14*4]
movzx r14d, word [rax + 2]
and rcx, r8
movzx esi, word [rax]
add rdx, r12
cmp rdx, r8
ja 0x140089167
lea rax, [rcx + r12]
cmp rax, r8
ja 0x140089167
mov r8, qword [rbp + 0x4f]
movzx eax, byte [rax + r8]
cmp byte [rdx + r8], al
jne 0x140089167
mov r9, qword [rsp + 0x18]
lea r11, [rcx + r8]
mov rcx, qword [rsp]
xor eax, eax
mov r8, rcx
mov rdx, r9
shr r8, 3
test r8, r8
je 0x1400890ee
mov r10, r11
sub r10, r9
nop dword [rax + rax]
mov rcx, qword [rdx]
mov r9, qword [rdx + r10]
cmp rcx, r9
jne 0x140089151
add rdx, 8
add rax, 8
sub r8, 1
jne 0x1400890d0
mov rcx, qword [rsp]
mov r8, rcx
and r8d, 7
je 0x140089113
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rax + rdx]
cmp byte [rax + r11], cl
jne 0x140089113
inc rax
sub r8, 1
jne 0x140089100
mov rdx, rax
cmp rdx, 4
jb 0x140089162
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r15, rax
jae 0x140089162
mov r15, rax
mov qword [rsp + 0x30], rdx
mov r12, rdx
mov qword [rsp + 0x38], rbx
mov r9, rax
mov qword [rsp + 0x40], rax
jmp 0x140089167
xor rcx, r9
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x140089116
mov r9, qword [rsp + 0x40]
test rdi, rdi
jne 0x140089045
mov r10, qword [rsp + 0x58]
mov r8, qword [rbp - 0x29]
mov rcx, r13
mov r12, qword [rbp + 0x6f]
movzx edx, word [r12 + 0x30]
lea eax, [rdx + 1]
mov word [r12 + 0x30], ax
mov eax, dword [r10 + r8*4]
sub rcx, rax
movzx eax, r13w
mov byte [rax + r10 + 0x30000], r8b
mov eax, 0xffff
cmp rcx, rax
cmova rcx, rax
mov word [r10 + rdx*4 + 0x40000], cx
movzx eax, word [r10 + r8*2 + 0x20000]
mov word [r10 + rdx*4 + 0x40002], ax
mov dword [r10 + r8*4], r13d
mov r13, qword [rbp + 0x4f]
mov word [r10 + r8*2 + 0x20000], dx
cmp r9, 0x7e4
jne 0x1400894e4
mov r12, qword [r12 + 0x48]
mov rdi, qword [rsp + 0x50]
add rdi, r13
mov rcx, qword [r12 + 8]
mov r15, qword [r12 + 0x10]
mov rax, rcx
shr rax, 7
cmp r15, rax
jb 0x1400894d9
imul ebx, dword [rdi], 0x1e35a7bd
lea r13, [rcx + 1]
mov r8, qword [rbp + 0x67]
mov rdx, qword [rsp]
mov qword [r12 + 8], r13
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x14008937a
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx r14d, word [rax + rbx*2]
cmp rcx, rdx
ja 0x14008937a
mov rsi, qword [r8 + 0x58]
mov eax, ecx
imul rax, r14
mov edx, dword [rsi + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rsi + 0xa8]
xor ecx, ecx
test r8, r8
je 0x14008929e
mov r10, rdi
sub r10, rdx
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x140089366
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140089280
mov r8, r11
and r8d, 7
je 0x1400892c2
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + rdi], al
jne 0x1400892c2
inc rcx
sub r8, 1
jne 0x1400892b0
mov r9, rcx
mov rcx, qword [rbp + 0x67]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140089381
test r9, r9
je 0x140089381
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [rcx + 0x68]
add al, al
movzx ecx, al
shr rdx, cl
movzx ecx, byte [r11 + rsi]
and edx, 0x3f
lea rax, [rdx + r8*4]
mov rdx, qword [rsp + 0x70]
shl rax, cl
inc rdx
add rax, r14
mov r14, qword [rsp + 0x40]
add rdx, rax
cmp rdx, qword [rsp + 0x60]
ja 0x140089386
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r14
jb 0x140089386
mov r14, rax
mov qword [rsp + 0x40], rax
lea rax, [r15 + 1]
mov qword [rsp + 0x30], r9
sub r11d, r9d
mov qword [r12 + 0x10], rax
mov dword [rsp + 0x48], r11d
mov qword [rsp + 0x38], rdx
jmp 0x140089386
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x1400892c5
mov r14, qword [rsp + 0x40]
jmp 0x14008938a
mov r14, qword [rsp + 0x40]
mov rdx, qword [rsp]
mov r15, qword [rbp + 0x67]
lea rax, [r13 + 1]
mov qword [r12 + 8], rax
mov rax, qword [r15 + 0x78]
movzx ecx, byte [rax + rbx + 1]
test cl, cl
je 0x1400894ef
mov rax, qword [r15 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x1400894ef
mov rbx, qword [r15 + 0x58]
mov eax, ecx
imul rax, rsi
mov edx, dword [rbx + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rbx + 0xa8]
xor ecx, ecx
test r8, r8
je 0x14008940e
mov r10, rdi
sub r10, rdx
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x1400894c5
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400893f0
mov r8, r11
and r8d, 7
je 0x14008942b
movzx eax, byte [rdx]
cmp byte [rcx + rdi], al
jne 0x14008942b
inc rdx
inc rcx
sub r8, 1
jne 0x140089417
mov r9, rcx
mov eax, dword [r15 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x1400894ef
test r9, r9
je 0x1400894ef
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r15 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [r11 + rbx]
and edx, 0x3f
lea rax, [rdx + r8*4]
mov rdx, qword [rsp + 0x70]
shl rax, cl
inc rdx
add rax, rsi
add rdx, rax
cmp rdx, qword [rsp + 0x60]
ja 0x1400894ef
mov r13, qword [rbp + 0x4f]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r14
jb 0x1400894f3
sub r11d, r9d
mov qword [rsp + 0x30], r9
inc qword [r12 + 0x10]
mov r14, rax
mov dword [rsp + 0x48], r11d
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x40], rax
jmp 0x1400894f3
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14008942e
mov r14, qword [rsp + 0x40]
mov r15, qword [rbp + 0x67]
jmp 0x1400894f3
mov r14, qword [rsp + 0x40]
mov r15, qword [rbp + 0x67]
jmp 0x1400894f7
mov r13, qword [rbp + 0x4f]
mov r12, qword [rbp + 0x6f]
mov rax, qword [rsp + 8]
mov rdi, qword [rbp + 0x47]
add rax, 0xaf
cmp r14, rax
jb 0x14008956d
mov ecx, dword [rbp + 0x3f]
inc rdi
movups xmm0, xmmword [rsp + 0x30]
inc qword [rsp + 0x20]
inc ecx
mov qword [rbp + 0x47], rdi
mov dword [rbp + 0x3f], ecx
movups xmm1, xmmword [rsp + 0x40]
movups xmmword [rbp - 0x59], xmm0
movups xmmword [rbp - 0x49], xmm1
cmp ecx, 4
jge 0x140089562
lea rax, [rdi + 4]
cmp rax, qword [rsp + 0x68]
jae 0x140089562
mov r10, qword [rsp]
mov rax, qword [rbp - 0x49]
dec r10
mov rcx, qword [rbp - 0x59]
xor r11d, r11d
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rcx
jmp 0x140088cfe
mov r10, qword [rbp - 0x59]
mov qword [rsp + 0x10], r10
jmp 0x140089572
mov r10, qword [rsp + 0x10]
mov rax, qword [rbp - 0x31]
mov r9, qword [rbp - 0x71]
mov rbx, qword [rbp - 0x51]
mov r11, qword [rbp + 0x77]
lea r15, [rax + r10*2]
mov rax, qword [rbp - 0x69]
add rax, rdi
add r15, rdi
cmp rax, r9
mov qword [rsp + 0x60], r15
cmovb r9, rax
cmp rbx, r9
ja 0x140089629
movsxd rax, dword [r11]
lea rcx, [rbx + 3]
movsxd r8, dword [r11 + 4]
lea rdi, [r11 + 4]
mov rdx, rcx
sub rcx, r8
sub rdx, rax
cmp rbx, rax
jne 0x1400895c7
xor r8d, r8d
jmp 0x140089631
cmp rbx, r8
jne 0x1400895d4
mov r8d, 1
jmp 0x140089631
cmp rdx, 7
jae 0x1400895ef
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x140089631
cmp rcx, 7
jae 0x140089607
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x140089631
movsxd rax, dword [r11 + 8]
cmp rbx, rax
jne 0x140089618
mov r8d, 2
jmp 0x140089631
movsxd rax, dword [r11 + 0xc]
cmp rbx, rax
jne 0x14008962d
mov r8d, 3
jmp 0x140089631
mov rdi, qword [rbp - 0x79]
lea r8, [rbx + 0xf]
cmp rbx, r9
ja 0x14008967b
test r8, r8
je 0x14008967b
mov eax, dword [r11 + 8]
mov dword [r11 + 0xc], eax
mov eax, dword [rdi]
mov dword [r11 + 8], eax
mov eax, dword [r11]
mov dword [rdi], eax
lea eax, [rbx - 1]
mov dword [r11 + 0x10], eax
lea eax, [rbx + 1]
mov dword [r11 + 0x14], eax
lea eax, [rbx - 2]
mov dword [r11 + 0x18], eax
lea eax, [rbx + 2]
mov dword [r11 + 0x1c], eax
lea eax, [rbx - 3]
mov dword [r11 + 0x20], eax
lea eax, [rbx + 3]
mov dword [r11 + 0x24], eax
mov dword [r11], ebx
mov rcx, qword [rbp + 0x87]
mov esi, dword [rbp - 0x41]
mov r15, qword [rbp + 0x67]
mov r11, qword [rsp + 0x20]
movzx eax, sil
shl eax, 0x19
or eax, r10d
mov dword [rcx], r11d
mov dword [rcx + 4], eax
mov r14d, dword [r15 + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x1400896b2
xor edi, edi
jmp 0x140089732
mov r11d, dword [r15 + 0x40]
mov r10d, 1
lea ecx, [r11 + 2]
shl r10, cl
sub r10, r14
add r10, 0xfffffffffffffff0
add r10, r8
bsr eax, r10d
mov rdx, r10
mov rdi, r10
dec eax
mov ecx, eax
mov r9d, eax
shr rdx, cl
sub r9, r11
and edx, 1
lea r8, [r9 - 1]
shl r9, 0xa
lea r8, [rdx + r8*2]
lea rax, [rdx + 2]
shl rax, cl
mov ecx, r11d
mov r11, qword [rsp + 0x20]
sub rdi, rax
shl r8, cl
mov eax, 1
shl ax, cl
add r8w, 0x10
dec ax
shr rdi, cl
mov rcx, qword [rbp + 0x87]
and ax, r10w
add r8w, ax
add r8w, r14w
or r8w, r9w
mov word [rcx + 0xe], r8w
mov eax, 0x3ff
mov dword [rcx + 8], edi
and r8w, ax
mov r14, qword [rsp + 0x10]
lea edx, [r14 + rsi]
movsxd r9, edx
cmp r11, 6
jae 0x140089760
movzx r10d, r11w
mov eax, 0x17
jmp 0x1400897d2
cmp r11, 0x82
jae 0x14008978a
lea eax, [r11 - 2]
bsr ecx, eax
lea r10, [r11 - 2]
mov eax, 0x17
dec ecx
shr r10, cl
inc cx
add cx, cx
add r10w, cx
jmp 0x1400897d2
cmp r11, 0x842
jae 0x1400897a7
lea eax, [r11 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x1400897d2
mov eax, 0x17
cmp r11, 0x1842
jae 0x1400897bd
mov r10d, reloc.WS2_32.dll_setsockopt
jmp 0x1400897d2
cmp r11, 0x5842
jae 0x1400897ce
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x1400897d2
movzx r10d, ax
cmp r9, 0xa
jae 0x1400897df
sub r9w, 2
jmp 0x14008981f
cmp r9, 0x86
jae 0x140089804
add r9, 0xfffffffffffffffa
lea eax, [rdx - 6]
bsr ecx, eax
dec ecx
shr r9, cl
add cx, 2
add cx, cx
add r9w, cx
jmp 0x14008981f
cmp r9, 0x846
jae 0x14008981b
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x14008981f
movzx r9d, ax
movzx edx, r10w
movzx eax, r9w
and dx, 7
and ax, 7
shl dx, 3
or dx, ax
test r8w, r8w
jne 0x140089857
cmp r10w, 8
jae 0x140089857
cmp r9w, 0x10
jae 0x140089857
cmp r9w, 8
jb 0x14008988b
or dx, 0x40
jmp 0x14008988b
movzx eax, r10w
mov r8d, 0xc0
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, r9w
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, r8w
add ax, cx
or dx, ax
mov rax, qword [rbp + 0x87]
xor esi, esi
mov rdi, qword [rbp + 0x47]
mov qword [rsp + 0x20], rsi
mov word [rax + 0xc], dx
add rax, 0x10
mov qword [rbp + 0x87], rax
lea r10, [rdi + 2]
mov rax, qword [rbp + 0x97]
add qword [rax], r11
lea rax, [r14 + rdi]
mov r11, qword [rbp - 0x39]
cmp rax, r11
cmovb r11, rax
mov rax, r14
shr rax, 2
cmp rbx, rax
jae 0x1400898fe
lea rax, [rbx*4]
mov rcx, r14
sub rcx, rax
lea rax, [rcx + rdi]
cmp r10, rax
mov eax, 2
cmova rcx, rax
lea r10, [rdi + rcx]
cmp r11, r10
cmovb r10, r11
cmp r10, r11
jae 0x140089989
mov rbx, qword [rbp + 0x57]
mov r15d, 0xffff
mov r9, qword [r12 + 0x40]
mov rax, r10
movzx r8d, word [r12 + 0x30]
and rax, rbx
mov rcx, r10
imul edx, dword [rax + r13], 0x1e35a7bd
lea eax, [r8 + 1]
mov word [r12 + 0x30], ax
shr rdx, 0x11
mov eax, dword [r9 + rdx*4]
sub rcx, rax
movzx eax, r10w
cmp rcx, r15
cmova rcx, r15
mov byte [rax + r9 + 0x30000], dl
mov word [r9 + r8*4 + 0x40000], cx
movzx eax, word [r9 + rdx*2 + 0x20000]
mov word [r9 + r8*4 + 0x40002], ax
mov dword [r9 + rdx*4], r10d
inc r10
mov word [r9 + rdx*2 + 0x20000], r8w
cmp r10, r11
jb 0x140089911
mov r15, qword [rbp + 0x67]
add rdi, r14
mov qword [rbp + 0x47], rdi
jmp 0x140089b3f
mov rsi, qword [rsp + 0x20]
inc rdi
mov r15, qword [rsp + 0x60]
inc rsi
mov qword [rsp + 0x20], rsi
mov qword [rbp + 0x47], rdi
cmp rdi, r15
jbe 0x140089b3b
mov rax, qword [rbp - 0x31]
mov r10, qword [rsp + 0x68]
lea rax, [r15 + rax*4]
cmp rdi, rax
jbe 0x140089a7e
add r10, 0xfffffffffffffffc
lea rax, [rdi + 0x10]
cmp rax, r10
cmovb r10, rax
cmp rdi, r10
jae 0x140089b3b
mov rbx, qword [rbp + 0x57]
mov rax, r10
sub rax, rdi
add rsi, 4
dec rax
and rax, 0xfffffffffffffffc
add rsi, rax
mov qword [rsp + 0x20], rsi
mov r9, qword [r12 + 0x40]
mov rax, rdi
movzx r8d, word [r12 + 0x30]
and rax, rbx
mov rcx, rdi
imul edx, dword [rax + rdx], 0x1e35a7bd
lea eax, [r8 + 1]
mov word [r12 + 0x30], ax
shr rdx, 0x11
mov eax, dword [r9 + rdx*4]
sub rcx, rax
movzx eax, di
cmp rcx, r14
cmova rcx, r14
mov byte [rax + r9 + 0x30000], dl
mov word [r9 + r8*4 + 0x40000], cx
movzx eax, word [r9 + rdx*2 + 0x20000]
mov word [r9 + r8*4 + 0x40002], ax
mov dword [r9 + rdx*4], edi
add rdi, 4
mov word [r9 + rdx*2 + 0x20000], r8w
mov rdx, qword [rbp + 0x4f]
cmp rdi, r10
jb 0x140089a02
jmp 0x140089b37
add r10, 0xfffffffffffffffd
lea rax, [rdi + 8]
cmp rax, r10
cmovb r10, rax
cmp rdi, r10
jae 0x140089b3b
mov rbx, qword [rbp + 0x57]
mov rax, r10
sub rax, rdi
add rsi, 2
dec rax
and rax, 0xfffffffffffffffe
add rsi, rax
mov qword [rsp + 0x20], rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [r12 + 0x40]
mov rax, rdi
movzx r8d, word [r12 + 0x30]
and rax, rbx
mov rcx, rdi
imul edx, dword [rax + rdx], 0x1e35a7bd
lea eax, [r8 + 1]
mov word [r12 + 0x30], ax
shr rdx, 0x11
mov eax, dword [r9 + rdx*4]
sub rcx, rax
movzx eax, di
cmp rcx, r14
cmova rcx, r14
mov byte [rax + r9 + 0x30000], dl
mov word [r9 + r8*4 + 0x40000], cx
movzx eax, word [r9 + rdx*2 + 0x20000]
mov word [r9 + r8*4 + 0x40002], ax
mov dword [r9 + rdx*4], edi
add rdi, 2
mov word [r9 + rdx*2 + 0x20000], r8w
mov rdx, qword [rbp + 0x4f]
cmp rdi, r10
jb 0x140089ac0
mov qword [rbp + 0x47], rdi
mov r15, qword [rbp + 0x67]
mov rdx, qword [rsp + 0x68]
lea rax, [rdi + 4]
mov r9, qword [rbp + 0x4f]
mov r10, qword [rbp + 0x57]
mov rbx, qword [rbp + 0x77]
mov r11, qword [rbp - 0x71]
mov r14, qword [rbp - 0x69]
cmp rax, rdx
jb 0x1400884d4
mov r13, qword [rsp + 0xe8]
mov r12, qword [rsp + 0xf0]
mov r8, qword [rbp + 0x87]
mov rax, qword [rbp + 0x7f]
sub rdx, rdi
sub r8, qword [rbp - 0x21]
add rdx, rsi
sar r8, 4
mov qword [rax], rdx
mov rax, qword [rbp + 0x8f]
add qword [rax], r8
add rsp, 0xf8
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xe0
mov r15, qword [rbp + 0x6f]
mov r10, rcx
mov r14, qword [rbp + 0x87]
mov ebx, 1
mov r9, qword [rbp + 0x77]
mov r13, r8
mov rax, qword [rbp + 0x8f]
add r9, 0x30
mov ecx, dword [r15 + 8]
lea r11, [r10 + rdx]
mov rdi, qword [r15 + 0x10]
mov rsi, rdx
mov r14, qword [r14]
shl rbx, cl
sub rbx, 0x10
mov qword [rsp + 8], r9
mov qword [rbp - 0x41], rbx
mov qword [rbp - 0x39], rdi
mov qword [rbp - 0x11], rax
mov qword [rsp + 0x30], r14
mov qword [rbp - 0x69], r11
cmp r10, 4
jb 0x140089c3d
lea rax, [r11 - 3]
mov qword [rbp - 0x29], rax
jmp 0x140089c41
mov qword [rbp - 0x29], rsi
mov rdx, qword [rbp + 0x7f]
mov ecx, 0x40
cmp dword [r15 + 4], 9
mov eax, 0x200
cmovl eax, ecx
mov ecx, dword [rdx]
mov qword [rbp - 0x21], rax
add rax, rsi
mov qword [rbp - 0x71], rax
lea eax, [rcx - 1]
mov dword [rdx + 0x10], eax
lea eax, [rcx + 1]
mov dword [rdx + 0x14], eax
lea eax, [rcx - 2]
mov dword [rdx + 0x18], eax
lea eax, [rcx + 2]
mov dword [rdx + 0x1c], eax
lea eax, [rcx - 3]
mov dword [rdx + 0x20], eax
lea eax, [rcx + 3]
mov ecx, dword [rdx + 4]
mov dword [rdx + 0x24], eax
lea eax, [rcx - 1]
mov dword [rdx + 0x28], eax
lea eax, [rcx + 1]
mov dword [rdx + 0x2c], eax
lea eax, [rcx - 2]
mov dword [rdx + 0x30], eax
lea eax, [rcx + 2]
mov dword [rdx + 0x34], eax
lea eax, [rcx - 3]
mov dword [rdx + 0x38], eax
lea eax, [rcx + 3]
mov dword [rdx + 0x3c], eax
lea rax, [rsi + 4]
cmp rax, r11
jae 0x14008b940
lea rax, [rdx + 8]
mov qword [rsp + 0xd8], r12
mov qword [rbp - 0x31], rax
nop dword [rax]
xor r14d, r14d
mov qword [rsp + 0x10], 0x7e4
lea rax, [rdi + rsi]
mov qword [rbp - 0x59], r14
mov r8, r11
mov qword [rsp + 0x28], r14
sub r8, rsi
mov dword [rbp - 0x49], r14d
cmp rsi, rbx
mov qword [rsp], r14
mov r14, qword [rbp - 0x31]
mov rcx, rbx
cmovb rcx, rsi
mov qword [rbp + 0x47], r8
cmp rax, rbx
mov qword [rbp + 0x77], rcx
mov rdx, rbx
mov edi, 2
cmovb rdx, rax
mov rax, qword [r15 + 0x50]
mov r15, qword [r9 + 0x408]
mov qword [rsp + 0x18], rax
mov qword [rsp + 0x20], rdx
mov rdx, qword [rbp + 0x5f]
lea rax, [r15 + 0x40000]
mov qword [rsp + 0x40], rax
mov rax, rsi
and rax, rdx
imul r12d, dword [rax + r13], 0x1e35a7bd
lea rsi, [rax + r13]
mov qword [rsp + 0x38], rax
mov r13d, 0x7e4
shr r12, 0x11
jmp 0x140089d78
mov rcx, qword [rbp + 0x77]
mov r8, qword [rbp + 0x47]
mov r10, qword [rbp + 0x4f]
lea r11, [rdi - 2]
movsxd rbx, dword [r14 - 8]
mov r9, r10
sub r9, rbx
test r11, r11
je 0x140089da1
movzx eax, r9w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x140089e94
cmp r9, r10
jae 0x140089e94
cmp rbx, rcx
ja 0x140089e94
and r9, qword [rbp + 0x5f]
xor ecx, ecx
add r9, qword [rbp + 0x57]
mov rdx, rsi
shr r8, 3
test r8, r8
je 0x140089dee
nop dword [rax]
mov r10, qword [rdx]
mov rax, qword [rcx + r9]
cmp r10, rax
jne 0x140089e77
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140089dd0
mov r8, qword [rbp + 0x47]
and r8d, 7
je 0x140089e13
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r9], al
jne 0x140089e13
inc rcx
sub r8, 1
jne 0x140089e00
mov r8, rcx
cmp r8, 2
jb 0x140089e88
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x140089e88
test r11, r11
je 0x140089e53
movzx ecx, r11b
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
mov rcx, qword [rbp + 0x77]
mov rdx, qword [rbp + 0x5f]
cmp r13, r9
jae 0x140089e90
mov r13, r9
mov qword [rsp], r8
mov qword [rsp + 0x28], r8
mov qword [rbp - 0x59], rbx
mov qword [rsp + 0x10], r9
jmp 0x140089e90
xor rax, r10
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x140089e16
mov rdx, qword [rbp + 0x5f]
mov rcx, qword [rbp + 0x77]
mov r8, qword [rbp + 0x47]
mov r9, qword [rbp + 0x4f]
lea rax, [rdi - 1]
movsxd rbx, dword [r14 - 4]
mov r10, r9
sub r10, rbx
test rax, rax
je 0x140089ebd
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x140089f92
cmp r10, r9
jae 0x140089f92
cmp rbx, rcx
ja 0x140089f92
and r10, rdx
mov r9, r8
add r10, qword [rbp + 0x57]
xor edx, edx
shr r9, 3
mov rcx, rsi
test r9, r9
je 0x140089f12
mov r11, r10
sub r11, rsi
nop dword [rax]
mov r8, qword [rcx]
mov rax, qword [rcx + r11]
cmp r8, rax
jne 0x14008a1b6
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x140089ef0
mov r8, qword [rbp + 0x47]
and r8d, 7
je 0x140089f35
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x140089f35
inc rcx
inc rdx
sub r8, 1
jne 0x140089f20
mov r8, rdx
cmp r8, 2
jb 0x140089f92
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x140089f92
lea rax, [rdi - 1]
test rax, rax
je 0x140089f7d
lea ecx, [rdi - 1]
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r13, r9
jae 0x140089f92
mov r13, r9
mov qword [rsp], r8
mov qword [rsp + 0x28], r8
mov qword [rbp - 0x59], rbx
mov qword [rsp + 0x10], r9
mov rcx, qword [rbp + 0x4f]
movsxd rbx, dword [r14]
mov r10, rcx
sub r10, rbx
test rdi, rdi
je 0x140089fb6
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14008a08f
cmp r10, rcx
mov rcx, qword [rbp + 0x77]
jae 0x14008a093
cmp rbx, rcx
ja 0x14008a093
and r10, qword [rbp + 0x5f]
xor edx, edx
mov rax, qword [rbp + 0x47]
mov rcx, rsi
add r10, qword [rbp + 0x57]
mov r9, rax
shr r9, 3
test r9, r9
je 0x14008a012
mov r11, r10
sub r11, rsi
nop
mov r8, qword [rcx]
mov rax, qword [rcx + r11]
cmp r8, rax
jne 0x14008a1ca
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x140089ff0
mov rax, qword [rbp + 0x47]
mov r8, rax
and r8d, 7
je 0x14008a035
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14008a035
inc rcx
inc rdx
sub r8, 1
jne 0x14008a020
mov r8, rdx
cmp r8, 2
jb 0x14008a08f
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14008a08f
test rdi, rdi
je 0x14008a07a
movzx ecx, dil
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r13, r9
jae 0x14008a08f
mov r13, r9
mov qword [rsp], r8
mov qword [rsp + 0x28], r8
mov qword [rbp - 0x59], rbx
mov qword [rsp + 0x10], r9
mov rcx, qword [rbp + 0x77]
mov r8, qword [rbp + 0x4f]
lea rax, [rdi + 1]
movsxd rbx, dword [r14 + 4]
mov r10, r8
sub r10, rbx
test rax, rax
je 0x14008a0bc
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14008a1f6
cmp r10, r8
jae 0x14008a1f6
cmp rbx, rcx
ja 0x14008a1f6
and r10, qword [rbp + 0x5f]
xor edx, edx
mov rax, qword [rbp + 0x47]
mov rcx, rsi
add r10, qword [rbp + 0x57]
mov r8, rax
shr r8, 3
test r8, r8
je 0x14008a122
mov r11, r10
sub r11, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rcx]
mov rax, qword [rcx + r11]
cmp r9, rax
jne 0x14008a1de
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x14008a100
mov rax, qword [rbp + 0x47]
mov r8, rax
and r8d, 7
je 0x14008a145
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14008a145
inc rcx
inc rdx
sub r8, 1
jne 0x14008a130
mov r8, rdx
cmp r8, 2
jb 0x14008a1f2
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14008a1f2
lea rax, [rdi + 1]
test rax, rax
je 0x14008a195
lea ecx, [rdi + 1]
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r13, r9
jae 0x14008a1f2
mov r10, r8
mov qword [rsp], r8
mov qword [rsp + 0x28], r8
mov r13, r9
mov r8, qword [rbp + 0x4f]
mov r11, r9
mov qword [rbp - 0x59], rbx
mov qword [rsp + 0x10], r9
jmp 0x14008a1ff
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x140089f38
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14008a038
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14008a148
mov r8, qword [rbp + 0x4f]
mov r11, qword [rsp + 0x10]
mov r10, qword [rsp]
mov rdx, qword [rbp + 0x5f]
add rdi, 4
add r14, 0x10
lea rax, [rdi - 2]
cmp rax, 0x10
jb 0x140089d70
mov rax, qword [rsp + 8]
mov r15, r12
mov rsi, r8
and r15d, 0x1ff
xor ebx, ebx
mov rcx, qword [rax + 0x408]
mov rdi, qword [rax + 0x400]
mov eax, dword [rcx + r12*4]
movzx r12d, word [rcx + r12*2 + 0x20000]
sub rsi, rax
test rdi, rdi
je 0x14008a3a4
mov rdx, qword [rsp + 0x38]
mov r9, qword [rbp + 0x57]
lea r14, [rdx + r9]
nop dword [rax]
nop word [rax + rax]
dec rdi
add rbx, rsi
cmp rbx, qword [rbp + 0x77]
ja 0x14008a3a4
mov r11, qword [rbp + 0x5f]
mov rcx, r8
mov r8, qword [rsp + 0x40]
sub rcx, rbx
mov rax, r15
and rcx, r11
shl rax, 9
add rdx, r10
add rax, r12
movzx r12d, word [r8 + rax*4 + 2]
movzx esi, word [r8 + rax*4]
cmp rdx, r11
ja 0x14008a38d
lea rax, [rcx + r10]
cmp rax, r11
ja 0x14008a38d
movzx eax, byte [rax + r9]
cmp byte [rdx + r9], al
jne 0x14008a38d
mov rax, qword [rbp + 0x47]
lea r11, [rcx + r9]
mov r8, rax
xor ecx, ecx
shr r8, 3
mov rdx, r14
test r8, r8
je 0x14008a30e
mov r10, r11
sub r10, r14
nop
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x14008a378
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14008a2f0
mov rax, qword [rbp + 0x47]
mov r8, rax
and r8d, 7
je 0x14008a333
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x14008a333
inc rcx
sub r8, 1
jne 0x14008a320
mov rdx, rcx
mov r9, qword [rbp + 0x57]
cmp rdx, 4
jb 0x14008a389
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r13, rax
jae 0x14008a389
mov r13, rax
mov qword [rsp], rdx
mov r10, rdx
mov qword [rsp + 0x28], rdx
mov qword [rbp - 0x59], rbx
mov r11, rax
mov qword [rsp + 0x10], rax
jmp 0x14008a392
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14008a336
mov r10, qword [rsp]
mov r11, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x38]
mov r8, qword [rbp + 0x4f]
test rdi, rdi
jne 0x14008a270
mov rsi, qword [rbp + 0x4f]
mov r12d, 0xffff
mov rdi, qword [rsp + 8]
mov rax, rsi
mov rbx, qword [rbp + 0x5f]
mov rdx, rsi
mov r13, qword [rbp + 0x57]
and rax, rbx
mov r10, qword [rdi + 0x408]
imul eax, dword [rax + r13], 0x1e35a7bd
mov r9d, eax
shr r9, 0x11
mov rcx, r9
and ecx, 0x1ff
movzx eax, word [rdi + rcx*2]
mov r8d, eax
inc ax
mov word [rdi + rcx*2], ax
and r8d, 0x1ff
mov eax, dword [r10 + r9*4]
sub rdx, rax
movzx eax, si
cmp rdx, r12
cmova rdx, r12
mov byte [rax + r10 + 0x30000], r9b
lea rax, [rcx + 0x80]
shl rax, 9
add rax, r8
mov word [r10 + rax*4], dx
lea rcx, [r10 + rax*4]
movzx eax, word [r10 + r9*2 + 0x20000]
mov word [rcx + 2], ax
mov dword [r10 + r9*4], esi
mov word [r10 + r9*2 + 0x20000], r8w
cmp r11, 0x7e4
jne 0x14008a77c
mov r9, qword [rsp + 8]
mov rdi, qword [rsp + 0x38]
add rdi, r13
mov r15, qword [r9 + 0x410]
mov rcx, qword [r15 + 8]
mov rax, rcx
shr rax, 7
cmp qword [r15 + 0x10], rax
jb 0x14008a779
imul ebx, dword [rdi], 0x1e35a7bd
lea r14, [rcx + 1]
mov r12, qword [rbp + 0x6f]
mov rdx, qword [rbp + 0x47]
mov qword [r15 + 8], r14
mov rax, qword [r12 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x14008a5e4
mov rax, qword [r12 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x14008a5e4
mov rcx, qword [r12 + 0x58]
mov eax, r11d
imul rax, rsi
mov r8d, dword [rcx + r11*4 + 0x20]
mov edx, r11d
add r8, rax
shr rdx, 3
add r8, qword [rcx + 0xa8]
xor ecx, ecx
test rdx, rdx
je 0x14008a50e
mov r10, rdi
sub r10, r8
nop dword [rax]
mov r9, qword [r8]
mov rax, qword [r8 + r10]
cmp r9, rax
jne 0x14008a5d0
add r8, 8
add rcx, 8
sub rdx, 1
jne 0x14008a4f0
mov rdx, r11
and edx, 7
je 0x14008a533
sub r8, rcx
nop dword [rax]
movzx eax, byte [rcx + r8]
cmp byte [rcx + rdi], al
jne 0x14008a533
inc rcx
sub rdx, 1
jne 0x14008a520
mov r9, rcx
mov eax, dword [r12 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008a5f0
test r9, r9
je 0x14008a5f0
mov rdx, qword [r12 + 0x68]
mov r8, r11
sub r8, r9
movzx ecx, r8b
add cl, cl
lea eax, [rcx + r8]
lea ecx, [rax + rax]
shr rdx, cl
mov rcx, qword [r12 + 0x58]
and edx, 0x3f
mov r12, qword [rsp + 0x18]
movzx ecx, byte [r11 + rcx]
lea rax, [rdx + r8*4]
shl rax, cl
add rax, rsi
mov rsi, qword [rsp + 0x20]
lea rdx, [rsi + 1]
add rdx, rax
cmp rdx, r12
ja 0x14008a5fa
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x10]
jb 0x14008a5fa
sub r11d, r9d
mov qword [rsp + 0x28], r9
inc qword [r15 + 0x10]
mov dword [rbp - 0x49], r11d
mov qword [rbp - 0x59], rdx
mov qword [rsp + 0x10], rax
jmp 0x14008a5fa
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14008a536
mov rsi, qword [rsp + 0x20]
mov r12, qword [rsp + 0x18]
jmp 0x14008a5fe
mov rsi, qword [rsp + 0x20]
mov r12, qword [rsp + 0x18]
mov rdx, qword [rbp + 0x47]
lea rax, [r14 + 1]
mov r14, qword [rbp + 0x6f]
mov qword [r15 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rax + rbx + 1]
test cl, cl
je 0x14008a764
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx ebx, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x14008a764
mov rcx, qword [r14 + 0x58]
mov eax, r11d
imul rax, rbx
mov edx, dword [rcx + r11*4 + 0x20]
mov r8d, r11d
mov rcx, qword [rcx + 0xa8]
add rdx, rax
add rcx, rdx
shr r8, 3
xor edx, edx
test r8, r8
je 0x14008a68e
mov r10, rdi
sub r10, rcx
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rcx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x14008a750
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x14008a670
mov r8, r11
and r8d, 7
je 0x14008a6ab
movzx eax, byte [rcx]
cmp byte [rdx + rdi], al
jne 0x14008a6ab
inc rcx
inc rdx
sub r8, 1
jne 0x14008a697
mov r9, rdx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008a764
test r9, r9
je 0x14008a764
mov rdx, qword [r14 + 0x68]
mov r8, r11
sub r8, r9
movzx ecx, r8b
add cl, cl
lea eax, [rcx + r8]
lea ecx, [rax + rax]
shr rdx, cl
mov rcx, qword [r14 + 0x58]
and edx, 0x3f
movzx ecx, byte [r11 + rcx]
lea rdx, [rdx + r8*4]
shl rdx, cl
inc rdx
add rdx, rbx
add rdx, rsi
cmp rdx, r12
ja 0x14008a764
mov rbx, qword [rbp + 0x5f]
mov r12d, 0xffff
mov rsi, qword [rbp + 0x4f]
mov rdi, qword [rsp + 8]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x10]
jb 0x14008a780
sub r11d, r9d
mov qword [rbp - 0x59], rdx
inc qword [r15 + 0x10]
mov rcx, r9
mov qword [rsp + 0x28], rcx
mov dword [rbp - 0x49], r11d
mov qword [rsp + 0x10], rax
jmp 0x14008a785
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rdx
jmp 0x14008a6ae
mov rbx, qword [rbp + 0x5f]
mov r12d, 0xffff
mov rsi, qword [rbp + 0x4f]
mov rdi, qword [rsp + 8]
jmp 0x14008a780
mov rdi, r9
mov r14, qword [rbp + 0x6f]
mov rcx, qword [rsp + 0x28]
cmp qword [rsp + 0x10], 0x7e4
jbe 0x14008b73a
mov dword [rbp + 0x77], 0
mov r8, qword [rbp + 0x47]
dec r8
cmp dword [r14 + 4], 5
mov qword [rbp + 0x47], r8
jge 0x14008a7c1
lea rax, [rcx - 1]
mov r10, r8
cmp rax, r8
cmovb r10, rax
mov qword [rsp], r10
jmp 0x14008a7c7
xor eax, eax
mov qword [rsp], rax
mov r9, qword [rbp - 0x41]
lea r11, [rsi + 1]
mov r15, qword [rdi + 0x408]
cmp r11, r9
mov rax, qword [rbp - 0x39]
mov r12d, 0x7e4
mov rcx, r9
mov qword [rsp + 0x58], r12
cmovb rcx, r11
mov qword [rsp + 0x50], 0
inc rax
mov qword [rsp + 0x18], r11
add rax, rsi
mov qword [rsp + 0x20], rcx
cmp rax, r9
mov qword [rsp + 0x48], 0
mov rdx, r9
mov dword [rbp - 0x79], 0
mov r9, qword [rbp + 0x57]
cmovb rdx, rax
mov rax, qword [r14 + 0x50]
mov edi, 2
mov r14, qword [rbp - 0x31]
mov r13d, 0x7e4
mov qword [rsp + 0x38], rax
lea rax, [r15 + 0x40000]
mov qword [rbp - 0x19], rax
mov rax, r11
mov qword [rsp + 0x40], rdx
mov rdx, qword [rbp + 0x5f]
and rax, rdx
imul r12d, dword [rax + r9], 0x1e35a7bd
lea rsi, [rax + r9]
mov qword [rbp - 0x71], rax
shr r12, 0x11
jmp 0x14008a881
mov rcx, qword [rsp + 0x20]
mov r8, qword [rbp + 0x47]
mov r9, qword [rbp + 0x57]
mov rdx, qword [rbp + 0x5f]
movsxd rbx, dword [r14 - 8]
lea rax, [rdi - 2]
sub r11, rbx
test rax, rax
je 0x14008a8a3
movzx eax, r11w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14008a9ae
cmp r11, qword [rsp + 0x18]
jae 0x14008a9ae
cmp rbx, rcx
ja 0x14008a9ae
and r11, qword [rbp + 0x5f]
xor ecx, ecx
add r11, r9
mov rdx, rsi
mov r9, r8
shr r9, 3
test r9, r9
je 0x14008a902
mov r10, r11
sub r10, rsi
nop word [rax + rax]
mov r8, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r8, rax
jne 0x14008a98c
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x14008a8e0
mov r8, qword [rbp + 0x47]
and r8d, 7
je 0x14008a923
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x14008a923
inc rcx
sub r8, 1
jne 0x14008a910
mov r8, rcx
cmp r8, 2
jb 0x14008a99d
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14008a99d
lea rax, [rdi - 2]
test rax, rax
je 0x14008a966
lea ecx, [rdi - 2]
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rbp + 0x5f]
cmp r13, r9
jae 0x14008a9a6
mov r13, r9
mov qword [rsp], r8
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], r9
jmp 0x14008a9a6
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x14008a926
mov rdx, qword [rbp + 0x5f]
mov rcx, qword [rsp + 0x20]
mov r9, qword [rbp + 0x57]
mov r8, qword [rbp + 0x47]
movsxd rbx, dword [r14 - 4]
lea rax, [rdi - 1]
mov r11, qword [rsp + 0x18]
sub r11, rbx
test rax, rax
je 0x14008a9d5
movzx eax, r11w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14008aab3
cmp r11, qword [rsp + 0x18]
jae 0x14008aab3
cmp rbx, rcx
ja 0x14008aab3
and r11, rdx
mov rcx, rsi
add r11, r9
xor edx, edx
mov r9, r8
shr r9, 3
test r9, r9
je 0x14008aa32
mov r10, r11
sub r10, rsi
nop word [rax + rax]
mov r8, qword [rcx]
mov rax, qword [r10 + rcx]
cmp r8, rax
jne 0x14008ace5
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14008aa10
mov r8, qword [rbp + 0x47]
and r8d, 7
je 0x14008aa55
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x14008aa55
inc rcx
inc rdx
sub r8, 1
jne 0x14008aa40
mov r8, rdx
cmp r8, 2
jb 0x14008aab3
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14008aab3
lea rax, [rdi - 1]
test rax, rax
je 0x14008aa9d
lea ecx, [rdi - 1]
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r13, r9
jae 0x14008aab3
mov r13, r9
mov qword [rsp], r8
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], r9
mov r11, qword [rsp + 0x18]
movsxd rbx, dword [r14]
mov r10, r11
sub r10, rbx
test rdi, rdi
je 0x14008aad8
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14008abc5
mov rcx, qword [rsp + 0x20]
cmp r10, r11
jae 0x14008abca
cmp rbx, rcx
ja 0x14008abca
and r10, qword [rbp + 0x5f]
xor edx, edx
mov rax, qword [rbp + 0x47]
mov rcx, rsi
add r10, qword [rbp + 0x57]
mov r9, rax
shr r9, 3
test r9, r9
je 0x14008ab42
mov r11, r10
sub r11, rsi
nop dword [rax]
nop word [rax + rax]
mov r8, qword [rcx]
mov rax, qword [r11 + rcx]
cmp r8, rax
jne 0x14008acf9
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14008ab20
mov rax, qword [rbp + 0x47]
mov r8, rax
and r8d, 7
je 0x14008ab65
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14008ab65
inc rcx
inc rdx
sub r8, 1
jne 0x14008ab50
mov r8, rdx
cmp r8, 2
jb 0x14008abc0
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14008abc0
test rdi, rdi
je 0x14008abaa
movzx ecx, dil
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r13, r9
jae 0x14008abc0
mov r13, r9
mov qword [rsp], r8
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], r9
mov r11, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
movsxd rbx, dword [r14 + 4]
lea rax, [rdi + 1]
mov r10, r11
sub r10, rbx
test rax, rax
je 0x14008abef
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14008ad26
cmp r10, r11
jae 0x14008ad26
cmp rbx, rcx
ja 0x14008ad26
and r10, qword [rbp + 0x5f]
xor edx, edx
mov rax, qword [rbp + 0x47]
mov rcx, rsi
add r10, qword [rbp + 0x57]
mov r9, rax
shr r9, 3
test r9, r9
je 0x14008ac52
mov r11, r10
sub r11, rsi
nop dword [rax]
nop dword [rax + rax]
mov r8, qword [rcx]
mov rax, qword [r11 + rcx]
cmp r8, rax
jne 0x14008ad0d
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14008ac30
mov rax, qword [rbp + 0x47]
mov r8, rax
and r8d, 7
je 0x14008ac75
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14008ac75
inc rcx
inc rdx
sub r8, 1
jne 0x14008ac60
mov r8, rdx
cmp r8, 2
jb 0x14008ad21
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14008ad21
lea rax, [rdi + 1]
test rax, rax
je 0x14008acc5
lea ecx, [rdi + 1]
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r13, r9
jae 0x14008ad21
mov r11, qword [rsp + 0x18]
mov r13, r9
mov r10, r8
mov qword [rsp], r8
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], r9
jmp 0x14008ad2a
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14008aa58
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14008ab68
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14008ac78
mov r11, qword [rsp + 0x18]
mov r10, qword [rsp]
add rdi, 4
add r14, 0x10
lea rax, [rdi - 2]
cmp rax, 0x10
jb 0x14008a870
mov rax, qword [rsp + 8]
mov r15, r12
mov rsi, r11
and r15d, 0x1ff
xor ebx, ebx
mov rcx, qword [rax + 0x408]
mov rdi, qword [rax + 0x400]
mov eax, dword [rcx + r12*4]
movzx r12d, word [rcx + r12*2 + 0x20000]
sub rsi, rax
test rdi, rdi
je 0x14008aebd
mov rdx, qword [rbp - 0x71]
mov r9, qword [rbp + 0x57]
lea r14, [rdx + r9]
nop word [rax + rax]
dec rdi
add rbx, rsi
cmp rbx, qword [rsp + 0x20]
ja 0x14008aebd
mov r8, qword [rbp - 0x19]
mov rax, r15
shl rax, 9
mov rcx, r11
add rax, r12
sub rcx, rbx
and rcx, qword [rbp + 0x5f]
add rdx, r10
movzx r12d, word [r8 + rax*4 + 2]
movzx esi, word [r8 + rax*4]
mov r8, qword [rbp + 0x5f]
cmp rdx, r8
ja 0x14008aeb0
lea rax, [rcx + r10]
cmp rax, r8
ja 0x14008aeb0
movzx eax, byte [rax + r9]
cmp byte [rdx + r9], al
jne 0x14008aeb0
lea r11, [rcx + r9]
xor eax, eax
mov rcx, qword [rbp + 0x47]
mov rdx, r14
mov r8, rcx
shr r8, 3
test r8, r8
je 0x14008ae2e
mov r10, r11
sub r10, r14
nop
mov rcx, qword [rdx]
mov r9, qword [rdx + r10]
cmp rcx, r9
jne 0x14008ae9b
add rdx, 8
add rax, 8
sub r8, 1
jne 0x14008ae10
mov rcx, qword [rbp + 0x47]
mov r8, rcx
and r8d, 7
je 0x14008ae53
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rax + rdx]
cmp byte [rax + r11], cl
jne 0x14008ae53
inc rax
sub r8, 1
jne 0x14008ae40
mov rdx, rax
mov r11, qword [rsp + 0x18]
mov r9, qword [rbp + 0x57]
cmp rdx, 4
jb 0x14008aeac
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r13, rax
jae 0x14008aeac
mov r13, rax
mov qword [rsp], rdx
mov r10, rdx
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rax
jmp 0x14008aeb0
xor rcx, r9
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x14008ae56
mov r10, qword [rsp]
mov rdx, qword [rbp - 0x71]
test rdi, rdi
jne 0x14008ad90
mov rdi, qword [rsp + 8]
mov rax, r11
and rax, qword [rbp + 0x5f]
mov rdx, r11
mov r13, qword [rbp + 0x57]
mov r12, qword [rsp + 0x58]
mov r10, qword [rdi + 0x408]
imul eax, dword [rax + r13], 0x1e35a7bd
mov r9d, eax
shr r9, 0x11
mov rcx, r9
and ecx, 0x1ff
movzx eax, word [rdi + rcx*2]
mov r8d, eax
inc ax
mov word [rdi + rcx*2], ax
and r8d, 0x1ff
mov eax, dword [r10 + r9*4]
sub rdx, rax
movzx eax, r11w
mov byte [rax + r10 + 0x30000], r9b
mov eax, 0xffff
cmp rdx, rax
cmova rdx, rax
lea rax, [rcx + 0x80]
shl rax, 9
add rax, r8
mov word [r10 + rax*4], dx
lea rcx, [r10 + rax*4]
movzx eax, word [r10 + r9*2 + 0x20000]
mov word [rcx + 2], ax
mov dword [r10 + r9*4], r11d
mov word [r10 + r9*2 + 0x20000], r8w
cmp r12, 0x7e4
jne 0x14008b267
mov r9, qword [rsp + 8]
mov rdi, qword [rbp - 0x71]
add rdi, r13
mov r15, qword [r9 + 0x410]
mov rcx, qword [r15 + 8]
mov rax, rcx
shr rax, 7
cmp qword [r15 + 0x10], rax
jb 0x14008b264
imul ebx, dword [rdi], 0x1e35a7bd
lea r14, [rcx + 1]
mov r13, qword [rbp + 0x6f]
mov rdx, qword [rbp + 0x47]
mov qword [r15 + 8], r14
mov rax, qword [r13 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x14008b0f3
mov rax, qword [r13 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x14008b0f3
mov rcx, qword [r13 + 0x58]
mov eax, r11d
imul rax, rsi
mov r8d, dword [rcx + r11*4 + 0x20]
mov edx, r11d
add r8, rax
shr rdx, 3
add r8, qword [rcx + 0xa8]
xor ecx, ecx
test rdx, rdx
je 0x14008b01e
mov r10, rdi
sub r10, r8
mov r9, qword [r8]
mov rax, qword [r8 + r10]
cmp r9, rax
jne 0x14008b0df
add r8, 8
add rcx, 8
sub rdx, 1
jne 0x14008b000
mov rdx, r11
and edx, 7
je 0x14008b043
sub r8, rcx
nop dword [rax]
movzx eax, byte [rcx + r8]
cmp byte [rcx + rdi], al
jne 0x14008b043
inc rcx
sub rdx, 1
jne 0x14008b030
mov r9, rcx
mov eax, dword [r13 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008b0ff
test r9, r9
je 0x14008b0ff
mov rdx, qword [r13 + 0x68]
mov r8, r11
sub r8, r9
movzx ecx, r8b
add cl, cl
lea eax, [rcx + r8]
lea ecx, [rax + rax]
shr rdx, cl
mov rcx, qword [r13 + 0x58]
and edx, 0x3f
mov r13, qword [rsp + 0x38]
movzx ecx, byte [r11 + rcx]
lea rax, [rdx + r8*4]
shl rax, cl
add rax, rsi
mov rsi, qword [rsp + 0x40]
lea rdx, [rsi + 1]
add rdx, rax
cmp rdx, r13
ja 0x14008b109
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r12
jb 0x14008b109
sub r11d, r9d
mov qword [rsp + 0x48], r9
inc qword [r15 + 0x10]
mov r12, rax
mov dword [rbp - 0x79], r11d
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], rax
jmp 0x14008b109
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14008b046
mov rsi, qword [rsp + 0x40]
mov r13, qword [rsp + 0x38]
jmp 0x14008b10d
mov rsi, qword [rsp + 0x40]
mov r13, qword [rsp + 0x38]
mov rdx, qword [rbp + 0x47]
lea rax, [r14 + 1]
mov r14, qword [rbp + 0x6f]
mov qword [r15 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rax + rbx + 1]
test cl, cl
je 0x14008b259
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx ebx, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x14008b259
mov rcx, qword [r14 + 0x58]
mov eax, r11d
imul rax, rbx
mov edx, dword [rcx + r11*4 + 0x20]
mov r8d, r11d
mov rcx, qword [rcx + 0xa8]
add rdx, rax
add rcx, rdx
shr r8, 3
xor edx, edx
test r8, r8
je 0x14008b18e
mov r10, rdi
sub r10, rcx
mov r9, qword [rcx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x14008b245
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x14008b170
mov r8, r11
and r8d, 7
je 0x14008b1ab
movzx eax, byte [rcx]
cmp byte [rdx + rdi], al
jne 0x14008b1ab
inc rcx
inc rdx
sub r8, 1
jne 0x14008b197
mov r9, rdx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008b259
test r9, r9
je 0x14008b259
mov rdx, qword [r14 + 0x68]
mov r8, r11
sub r8, r9
movzx ecx, r8b
add cl, cl
lea eax, [rcx + r8]
lea ecx, [rax + rax]
shr rdx, cl
mov rcx, qword [r14 + 0x58]
and edx, 0x3f
movzx ecx, byte [r11 + rcx]
lea rdx, [rdx + r8*4]
shl rdx, cl
inc rdx
add rdx, rbx
add rdx, rsi
cmp rdx, r13
ja 0x14008b259
mov r13, qword [rbp + 0x57]
mov rdi, qword [rsp + 8]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r12
jb 0x14008b26b
sub r11d, r9d
mov qword [rsp + 0x48], r9
inc qword [r15 + 0x10]
mov r12, rax
mov dword [rbp - 0x79], r11d
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], rax
jmp 0x14008b26b
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rdx
jmp 0x14008b1ae
mov r13, qword [rbp + 0x57]
mov rdi, qword [rsp + 8]
jmp 0x14008b26b
mov rdi, r9
mov r14, qword [rbp + 0x6f]
mov rax, qword [rsp + 0x10]
mov rsi, qword [rbp + 0x4f]
add rax, 0xaf
mov r11, qword [rsp + 0x30]
cmp r12, rax
jb 0x14008b2d9
mov ecx, dword [rbp + 0x77]
inc rsi
movups xmm0, xmmword [rsp + 0x48]
inc ecx
inc r11
mov qword [rbp + 0x4f], rsi
mov qword [rsp + 0x30], r11
mov dword [rbp + 0x77], ecx
movups xmm1, xmmword [rsp + 0x58]
movups xmmword [rbp - 0x61], xmm0
movups xmmword [rbp - 0x51], xmm1
cmp ecx, 4
jge 0x14008b2d3
lea rax, [rsi + 4]
cmp rax, qword [rbp - 0x69]
jae 0x14008b2d3
mov rax, qword [rbp - 0x51]
mov rcx, qword [rbp - 0x61]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x28], rcx
jmp 0x14008a79b
mov r12, qword [rbp - 0x61]
jmp 0x14008b2de
mov r12, qword [rsp + 0x28]
mov rax, qword [rbp - 0x21]
mov r9, qword [rbp - 0x41]
mov rdi, qword [rbp - 0x59]
mov r10, qword [rbp + 0x7f]
lea r15, [rax + r12*2]
mov rax, qword [rbp - 0x39]
add rax, rsi
add r15, rsi
cmp rax, r9
mov qword [rbp - 0x71], r15
cmovb r9, rax
cmp rdi, r9
ja 0x14008b38a
movsxd rax, dword [r10]
lea rcx, [rdi + 3]
movsxd r8, dword [r10 + 4]
mov rdx, rcx
sub rdx, rax
sub rcx, r8
cmp rdi, rax
jne 0x14008b32a
xor r8d, r8d
jmp 0x14008b38e
cmp rdi, r8
jne 0x14008b337
mov r8d, 1
jmp 0x14008b38e
cmp rdx, 7
jae 0x14008b352
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14008b38e
cmp rcx, 7
jae 0x14008b36a
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14008b38e
movsxd rax, dword [r10 + 8]
cmp rdi, rax
jne 0x14008b37b
mov r8d, 2
jmp 0x14008b38e
movsxd rax, dword [r10 + 0xc]
mov r8d, 3
cmp rdi, rax
je 0x14008b38e
lea r8, [rdi + 0xf]
cmp rdi, r9
ja 0x14008b406
test r8, r8
je 0x14008b406
mov ecx, dword [r10]
mov eax, dword [r10 + 8]
mov dword [r10 + 0xc], eax
mov eax, dword [r10 + 4]
mov dword [r10 + 8], eax
lea eax, [rdi - 1]
mov dword [r10 + 0x10], eax
lea eax, [rdi + 1]
mov dword [r10 + 0x14], eax
lea eax, [rdi - 2]
mov dword [r10 + 0x18], eax
lea eax, [rdi + 2]
mov dword [r10 + 0x1c], eax
lea eax, [rdi - 3]
mov dword [r10 + 0x20], eax
lea eax, [rdi + 3]
mov dword [r10 + 0x24], eax
lea eax, [rcx - 1]
mov dword [r10 + 0x28], eax
lea eax, [rcx + 1]
mov dword [r10 + 0x2c], eax
lea eax, [rcx - 2]
mov dword [r10 + 0x30], eax
lea eax, [rcx + 2]
mov dword [r10 + 0x34], eax
lea eax, [rcx - 3]
mov dword [r10 + 0x38], eax
lea eax, [rcx + 3]
mov dword [r10 + 0x3c], eax
mov dword [r10 + 4], ecx
mov dword [r10], edi
mov rcx, qword [rbp + 0x8f]
mov esi, dword [rbp - 0x49]
mov r15, qword [rbp + 0x6f]
movzx eax, sil
shl eax, 0x19
or eax, r12d
mov dword [rcx], r11d
mov dword [rcx + 4], eax
mov r14d, dword [r14 + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x14008b435
xor ebx, ebx
jmp 0x14008b4ae
mov r11d, dword [r15 + 0x40]
add r8, 0xfffffffffffffff0
mov r10d, 1
lea ecx, [r11 + 2]
shl r10, cl
sub r10, r14
add r10, r8
bsr eax, r10d
mov rdx, r10
mov rbx, r10
dec eax
mov ecx, eax
mov r9d, eax
shr rdx, cl
sub r9, r11
and edx, 1
lea r8, [r9 - 1]
shl r9, 0xa
lea r8, [rdx + r8*2]
lea rax, [rdx + 2]
shl rax, cl
mov ecx, r11d
mov r11, qword [rsp + 0x30]
sub rbx, rax
shl r8, cl
mov eax, 1
shl ax, cl
add r8w, 0x10
dec ax
shr rbx, cl
and ax, r10w
add r8w, ax
add r8w, r14w
or r8w, r9w
mov r14, qword [rbp + 0x8f]
lea edx, [r12 + rsi]
mov eax, 0x3ff
movsxd r9, edx
mov word [r14 + 0xe], r8w
and r8w, ax
mov dword [r14 + 8], ebx
cmp r11, 6
jae 0x14008b4df
movzx r10d, r11w
mov eax, 0x17
jmp 0x14008b551
cmp r11, 0x82
jae 0x14008b509
lea eax, [r11 - 2]
bsr ecx, eax
lea r10, [r11 - 2]
mov eax, 0x17
dec ecx
shr r10, cl
inc cx
add cx, cx
add r10w, cx
jmp 0x14008b551
cmp r11, 0x842
jae 0x14008b526
lea eax, [r11 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x14008b551
mov eax, 0x17
cmp r11, 0x1842
jae 0x14008b53c
mov r10d, reloc.WS2_32.dll_setsockopt
jmp 0x14008b551
cmp r11, 0x5842
jae 0x14008b54d
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x14008b551
movzx r10d, ax
cmp r9, 0xa
jae 0x14008b55e
sub r9w, 2
jmp 0x14008b59e
cmp r9, 0x86
jae 0x14008b583
add r9, 0xfffffffffffffffa
lea eax, [rdx - 6]
bsr ecx, eax
dec ecx
shr r9, cl
add cx, 2
add cx, cx
add r9w, cx
jmp 0x14008b59e
cmp r9, 0x846
jae 0x14008b59a
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x14008b59e
movzx r9d, ax
movzx edx, r10w
movzx eax, r9w
and dx, 7
and ax, 7
shl dx, 3
or dx, ax
test r8w, r8w
jne 0x14008b5d6
cmp r10w, 8
jae 0x14008b5d6
cmp r9w, 0x10
jae 0x14008b5d6
cmp r9w, 8
jb 0x14008b60a
or dx, 0x40
jmp 0x14008b60a
movzx eax, r10w
mov r8d, 0xc0
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, r9w
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, r8w
add ax, cx
or dx, ax
mov rax, qword [rbp + 0x9f]
mov rsi, qword [rbp + 0x4f]
mov rbx, qword [rbp - 0x29]
mov word [r14 + 0xc], dx
add r14, 0x10
add qword [rax], r11
lea rax, [r12 + rsi]
mov qword [rbp + 0x8f], r14
xor r14d, r14d
lea r11, [rsi + 2]
cmp rax, rbx
mov qword [rsp + 0x30], r14
cmovb rbx, rax
mov rax, r12
shr rax, 2
cmp rdi, rax
jae 0x14008b678
lea rax, [rdi*4]
mov rcx, r12
sub rcx, rax
lea rax, [rcx + rsi]
cmp r11, rax
mov eax, 2
cmova rcx, rax
lea r11, [rsi + rcx]
cmp rbx, r11
cmovb r11, rbx
cmp r11, rbx
jae 0x14008b72e
mov r15, qword [rsp + 8]
mov r14d, 0xffff
nop dword [rax]
mov r10, qword [r15 + 0x408]
mov rax, r11
and rax, qword [rbp + 0x5f]
mov rdx, r11
imul eax, dword [rax + r13], 0x1e35a7bd
mov r9d, eax
shr r9, 0x11
mov rcx, r9
and ecx, 0x1ff
movzx eax, word [r15 + rcx*2]
mov r8d, eax
inc ax
mov word [r15 + rcx*2], ax
and r8d, 0x1ff
mov eax, dword [r10 + r9*4]
sub rdx, rax
movzx eax, r11w
cmp rdx, r14
cmova rdx, r14
mov byte [rax + r10 + 0x30000], r9b
lea rax, [rcx + 0x80]
shl rax, 9
add rax, r8
lea rcx, [r10 + rax*4]
mov word [rcx], dx
movzx eax, word [r10 + r9*2 + 0x20000]
mov word [rcx + 2], ax
mov dword [r10 + r9*4], r11d
inc r11
mov word [r10 + r9*2 + 0x20000], r8w
cmp r11, rbx
jb 0x14008b690
mov r15, qword [rbp + 0x6f]
mov r14, qword [rsp + 0x30]
add rsi, r12
mov qword [rbp + 0x4f], rsi
jmp 0x14008b91a
mov r14, qword [rsp + 0x30]
inc rsi
mov r15, qword [rbp - 0x71]
inc r14
mov qword [rsp + 0x30], r14
mov qword [rbp + 0x4f], rsi
cmp rsi, r15
jbe 0x14008b916
mov rax, qword [rbp - 0x21]
mov r11, qword [rbp - 0x69]
lea rax, [r15 + rax*4]
cmp rsi, rax
jbe 0x14008b847
add r11, 0xfffffffffffffffc
lea rax, [rsi + 0x10]
cmp rax, r11
cmovb r11, rax
cmp rsi, r11
jae 0x14008b916
mov rax, r11
add r14, 4
sub rax, rsi
dec rax
and rax, 0xfffffffffffffffc
add r14, rax
mov qword [rsp + 0x30], r14
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rdi + 0x408]
mov rax, rsi
and rax, rbx
mov rdx, rsi
imul eax, dword [rax + r13], 0x1e35a7bd
mov r9d, eax
shr r9, 0x11
mov rcx, r9
and ecx, 0x1ff
movzx eax, word [rdi + rcx*2]
mov r8d, eax
inc ax
mov word [rdi + rcx*2], ax
and r8d, 0x1ff
mov eax, dword [r10 + r9*4]
sub rdx, rax
movzx eax, si
cmp rdx, r12
cmova rdx, r12
mov byte [rax + r10 + 0x30000], r9b
lea rax, [rcx + 0x80]
shl rax, 9
add rax, r8
lea rcx, [r10 + rax*4]
mov word [rcx], dx
movzx eax, word [r10 + r9*2 + 0x20000]
mov word [rcx + 2], ax
mov dword [r10 + r9*4], esi
add rsi, 4
mov word [r10 + r9*2 + 0x20000], r8w
cmp rsi, r11
jb 0x14008b7b0
jmp 0x14008b912
add r11, 0xfffffffffffffffd
lea rax, [rsi + 8]
cmp rax, r11
cmovb r11, rax
cmp rsi, r11
jae 0x14008b916
mov rax, r11
add r14, 2
sub rax, rsi
dec rax
and rax, 0xfffffffffffffffe
add r14, rax
mov qword [rsp + 0x30], r14
nop dword [rax + rax]
mov r10, qword [rdi + 0x408]
mov rax, rsi
and rax, rbx
mov rdx, rsi
imul eax, dword [rax + r13], 0x1e35a7bd
mov r9d, eax
shr r9, 0x11
mov rcx, r9
and ecx, 0x1ff
movzx eax, word [rdi + rcx*2]
mov r8d, eax
inc ax
mov word [rdi + rcx*2], ax
and r8d, 0x1ff
mov eax, dword [r10 + r9*4]
sub rdx, rax
movzx eax, si
cmp rdx, r12
cmova rdx, r12
mov byte [rax + r10 + 0x30000], r9b
lea rax, [rcx + 0x80]
shl rax, 9
add rax, r8
lea rcx, [r10 + rax*4]
mov word [rcx], dx
movzx eax, word [r10 + r9*2 + 0x20000]
mov word [rcx + 2], ax
mov dword [r10 + r9*4], esi
add rsi, 2
mov word [r10 + r9*2 + 0x20000], r8w
cmp rsi, r11
jb 0x14008b880
mov qword [rbp + 0x4f], rsi
mov r15, qword [rbp + 0x6f]
mov r11, qword [rbp - 0x69]
lea rax, [rsi + 4]
mov r9, qword [rsp + 8]
mov rbx, qword [rbp - 0x41]
mov rdi, qword [rbp - 0x39]
cmp rax, r11
jb 0x140089cd0
mov r12, qword [rsp + 0xd8]
mov rax, qword [rbp + 0x87]
sub r11, rsi
mov rcx, qword [rbp + 0x8f]
add r11, r14
sub rcx, qword [rbp - 0x11]
sar rcx, 4
mov qword [rax], r11
mov rax, qword [rbp + 0x97]
add qword [rax], rcx
add rsp, 0xe0
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xf8
mov r8, qword [rbp + 0x67]
mov rax, rcx
mov rdi, qword [rbp + 0x7f]
mov r10d, 1
mov rbx, qword [rbp + 0x87]
mov rsi, rdx
add rdx, rax
mov qword [rbp - 0x21], rbx
mov ecx, dword [r8 + 8]
mov r11, r9
mov r14, qword [r8 + 0x10]
mov rdi, qword [rdi]
shl r10, cl
sub r10, 0x10
mov qword [rbp - 0x61], r14
mov qword [rbp - 0x69], r10
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x58], rdx
cmp rax, 4
jb 0x14008b9fc
add rdx, 0xfffffffffffffffd
mov qword [rbp - 0x31], rdx
jmp 0x14008ba00
mov qword [rbp - 0x31], rsi
cmp dword [r8 + 4], 9
mov eax, 0x200
mov r15, qword [rbp + 0x6f]
mov ecx, 0x40
cmovl eax, ecx
mov qword [rbp - 0x29], rax
add rax, rsi
mov qword [rsp + 0x60], rax
mov edx, dword [r15 + 0x4c]
cmp edx, 4
jle 0x14008ba8f
mov r9, qword [rbp + 0x77]
mov ecx, dword [r9]
lea eax, [rcx - 1]
mov dword [r9 + 0x10], eax
lea eax, [rcx + 1]
mov dword [r9 + 0x14], eax
lea eax, [rcx - 2]
mov dword [r9 + 0x18], eax
lea eax, [rcx + 2]
mov dword [r9 + 0x1c], eax
lea eax, [rcx - 3]
mov dword [r9 + 0x20], eax
lea eax, [rcx + 3]
mov dword [r9 + 0x24], eax
cmp edx, 0xa
jle 0x14008ba8f
mov ecx, dword [r9 + 4]
lea eax, [rcx - 1]
mov dword [r9 + 0x28], eax
lea eax, [rcx + 1]
mov dword [r9 + 0x2c], eax
lea eax, [rcx - 2]
mov dword [r9 + 0x30], eax
lea eax, [rcx + 2]
mov dword [r9 + 0x34], eax
lea eax, [rcx - 3]
mov dword [r9 + 0x38], eax
lea eax, [rcx + 3]
mov dword [r9 + 0x3c], eax
mov rcx, qword [rsp + 0x58]
lea rax, [rsi + 4]
cmp rax, rcx
jae 0x14008cd75
mov qword [rsp + 0xf0], r12
xor edx, edx
mov qword [rsp + 0xe8], r13
nop dword [rax]
nop word [rax + rax]
mov r13, qword [rbp + 0x6f]
lea rax, [r14 + rsi]
mov r15, qword [r15 + 0x58]
mov r12, rcx
sub r12, rsi
mov qword [rbp - 0x49], rdx
cmp rsi, r10
mov qword [rsp + 8], r12
mov r14, qword [r13 + 0x60]
mov r9, r10
cmovb r9, rsi
mov qword [rsp + 0x30], 0x7e4
cmp rax, r10
mov qword [rsp + 0x18], r9
mov rcx, r10
mov qword [rsp + 0x38], r15
cmovb rcx, rax
mov qword [rsp + 0x50], r14
mov rax, qword [r8 + 0x50]
mov rbx, rdx
mov r8, rsi
mov qword [rsp], rcx
movsxd rsi, dword [r13 + 0x4c]
and r8, r11
mov qword [rsp + 0x48], rax
mov ecx, 0x7e4
mov qword [rsp + 0x10], r8
mov r10, rdx
mov qword [rsp + 0x20], rdx
mov dword [rbp - 0x39], edx
mov qword [rsp + 0x28], rcx
mov qword [rbp + 0x3f], rdx
test rsi, rsi
je 0x14008bcd4
mov r14, qword [rbp + 0x4f]
mov r15, r8
mov rax, qword [rbp + 0x47]
mov r13, qword [rbp + 0x77]
mov qword [rsp + 0x28], rcx
mov qword [rbp + 0x3f], rdx
nop dword [rax]
nop dword [rax + rax]
movsxd rdi, dword [r13 + rbx*4]
mov rcx, rax
sub rcx, rdi
cmp rcx, rax
jae 0x14008bcb5
cmp rdi, r9
ja 0x14008bcb5
and rcx, r11
lea rdx, [r10 + r15]
cmp rdx, r11
ja 0x14008bcb5
lea rax, [rcx + r10]
cmp rax, r11
ja 0x14008bcb1
movzx eax, byte [rax + r14]
cmp byte [rdx + r14], al
jne 0x14008bcb1
mov r8, r12
lea r11, [rcx + r14]
shr r8, 3
lea rdx, [r15 + r14]
xor ecx, ecx
test r8, r8
je 0x14008bbfe
mov r10, r11
sub r10, rdx
nop word [rax + rax]
mov rax, qword [rdx]
mov r9, qword [r10 + rdx]
cmp rax, r9
jne 0x14008bc93
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14008bbe0
mov r8, r12
and r8d, 7
je 0x14008bc23
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x14008bc23
inc rcx
sub r8, 1
jne 0x14008bc10
mov r8, rcx
cmp r8, 3
jae 0x14008bc37
cmp r8, 2
jne 0x14008bca4
cmp rbx, r8
jae 0x14008bca4
mov r11, qword [rsp + 0x28]
imul r9, r8, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x14008bca4
test rbx, rbx
je 0x14008bc77
movzx ecx, bl
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r11, r9
jae 0x14008bca4
mov qword [rsp + 0x28], r9
mov r10, r8
mov qword [rbp + 0x3f], r8
mov qword [rsp + 0x20], r8
mov qword [rbp - 0x49], rdi
mov qword [rsp + 0x30], r9
jmp 0x14008bca8
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x14008bc26
mov r10, qword [rbp + 0x3f]
mov r9, qword [rsp + 0x18]
mov r11, qword [rbp + 0x57]
mov rax, qword [rbp + 0x47]
inc rbx
cmp rbx, rsi
jb 0x14008bb70
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x50]
mov r8, qword [rsp + 0x10]
mov r13, qword [rbp + 0x6f]
mov ecx, dword [r13 + 0x40]
mov r12, qword [rbp + 0x4f]
add r12, r8
imul edx, dword [r12], 0x1e35a7bd
shr edx, cl
mov ecx, dword [r13 + 0x48]
mov eax, edx
shl eax, cl
lea r13, [r15 + rdx*2]
mov r15, qword [rbp + 0x6f]
movzx edx, word [r13]
mov esi, edx
mov qword [rsp + 0x38], r13
lea r14, [r14 + rax*4]
mov edi, edx
sub rsi, qword [r15 + 0x38]
mov eax, 0
cmp rdx, qword [r15 + 0x38]
cmovbe rsi, rax
cmp rdx, rsi
jbe 0x14008be5f
mov r15d, dword [r15 + 0x44]
mov r13, qword [rbp + 0x4f]
nop dword [rax]
mov rbx, qword [rbp + 0x47]
dec rdi
mov rax, r15
and rax, rdi
mov ecx, dword [r14 + rax*4]
sub rbx, rcx
cmp rbx, r9
ja 0x14008be51
and rcx, r11
lea rdx, [r10 + r8]
cmp rdx, r11
ja 0x14008be48
lea rax, [rcx + r10]
cmp rax, r11
ja 0x14008be48
movzx eax, byte [rax + r13]
cmp byte [rdx + r13], al
jne 0x14008be48
xor eax, eax
lea r11, [rcx + r13]
mov ecx, eax
mov rdx, r12
mov rax, qword [rsp + 8]
mov r8, rax
shr r8, 3
test r8, r8
je 0x14008bdc3
mov r10, r11
sub r10, r12
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14008be33
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14008bda0
mov rax, qword [rsp + 8]
mov r8, rax
and r8d, 7
je 0x14008bde3
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x14008bde3
inc rcx
sub r8, 1
jne 0x14008bdd0
mov rdx, rcx
mov r8, qword [rsp + 0x10]
mov r9, qword [rsp + 0x18]
mov r11, qword [rbp + 0x57]
cmp rdx, 4
jb 0x14008be44
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp qword [rsp + 0x28], rax
jae 0x14008be44
mov qword [rsp + 0x28], rax
mov r10, rdx
mov qword [rbp + 0x3f], rdx
mov qword [rsp + 0x20], rdx
mov qword [rbp - 0x49], rbx
mov qword [rsp + 0x30], rax
jmp 0x14008be48
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14008bde6
mov r10, qword [rbp + 0x3f]
cmp rdi, rsi
ja 0x14008bd30
mov r13, qword [rsp + 0x38]
mov r15, qword [rbp + 0x6f]
movzx edx, word [r13]
mov eax, dword [r15 + 0x44]
mov rsi, qword [rbp + 0x47]
and rax, rdx
mov dword [r14 + rax*4], esi
inc word [r13]
cmp qword [rsp + 0x30], 0x7e4
jne 0x14008c182
mov r13, qword [r15 + 0x50]
mov rcx, qword [r13 + 8]
mov r14, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r14, rax
jb 0x14008c182
imul ebx, dword [r12], 0x1e35a7bd
lea r15, [rcx + 1]
mov r8, qword [rbp + 0x67]
mov rdx, qword [rsp + 8]
mov qword [r13 + 8], r15
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x14008c012
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x14008c012
mov rdi, qword [r8 + 0x58]
mov eax, ecx
imul rax, rsi
mov edx, dword [rdi + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rdi + 0xa8]
xor eax, eax
mov ecx, eax
test r8, r8
je 0x14008bf3e
mov r10, r12
sub r10, rdx
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x14008bffe
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14008bf20
mov r8, r11
and r8d, 7
je 0x14008bf63
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r12], al
jne 0x14008bf63
inc rcx
sub r8, 1
jne 0x14008bf50
mov r9, rcx
mov rcx, qword [rbp + 0x67]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008c018
test r9, r9
je 0x14008c018
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [rcx + 0x68]
add al, al
movzx ecx, al
shr rdx, cl
movzx ecx, byte [r11 + rdi]
and edx, 0x3f
lea rax, [rdx + r8*4]
shl rax, cl
add rax, rsi
mov rsi, qword [rsp]
lea rdx, [rsi + 1]
add rdx, rax
cmp rdx, qword [rsp + 0x48]
ja 0x14008c01c
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x30]
jb 0x14008c01c
mov qword [rsp + 0x30], rax
sub r11d, r9d
lea rax, [r14 + 1]
mov qword [rsp + 0x20], r9
mov qword [r13 + 0x10], rax
mov dword [rbp - 0x39], r11d
mov qword [rbp - 0x49], rdx
jmp 0x14008c01c
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14008bf66
mov rsi, qword [rsp]
jmp 0x14008c021
mov rsi, qword [rsp]
mov rdx, qword [rsp + 8]
mov r14, qword [rbp + 0x67]
lea rax, [r15 + 1]
mov qword [r13 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rbx + rax + 1]
test cl, cl
je 0x14008c178
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x14008c178
mov rbx, qword [r14 + 0x58]
mov eax, ecx
imul rax, rdi
mov edx, dword [rbx + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rbx + 0xa8]
xor eax, eax
mov ecx, eax
test r8, r8
je 0x14008c0ae
mov r10, r12
sub r10, rdx
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x14008c164
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14008c090
mov r8, r11
and r8d, 7
je 0x14008c0cc
movzx eax, byte [rdx]
cmp byte [rcx + r12], al
jne 0x14008c0cc
inc rdx
inc rcx
sub r8, 1
jne 0x14008c0b7
mov r9, rcx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008c178
test r9, r9
je 0x14008c178
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r14 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [r11 + rbx]
and edx, 0x3f
lea rdx, [rdx + r8*4]
shl rdx, cl
inc rdx
add rdx, rdi
add rdx, rsi
cmp rdx, qword [rsp + 0x48]
ja 0x14008c178
mov rsi, qword [rbp + 0x47]
mov r15, qword [rbp + 0x6f]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x30]
jb 0x14008c186
sub r11d, r9d
mov qword [rbp - 0x49], rdx
inc qword [r13 + 0x10]
mov rcx, r9
mov qword [rsp + 0x20], rcx
mov dword [rbp - 0x39], r11d
mov qword [rsp + 0x30], rax
jmp 0x14008c18b
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14008c0cf
mov rsi, qword [rbp + 0x47]
mov r15, qword [rbp + 0x6f]
jmp 0x14008c186
mov r14, qword [rbp + 0x67]
mov rcx, qword [rsp + 0x20]
cmp qword [rsp + 0x30], 0x7e4
jbe 0x14008cda9
mov r12, qword [rsp + 8]
xor ebx, ebx
mov dword [rbp + 0x3f], ebx
dec r12
cmp dword [r14 + 4], 5
mov qword [rsp + 8], r12
jge 0x14008c1c3
lea rax, [rcx - 1]
mov r10, r12
cmp rax, r12
cmovb r10, rax
jmp 0x14008c1c6
mov r10, rbx
mov r8, qword [rbp - 0x69]
lea rdx, [rsi + 1]
mov rax, qword [rbp - 0x61]
cmp rdx, r8
mov r13, qword [rbp + 0x6f]
mov r11, r8
mov r9, qword [rbp + 0x57]
cmovb r11, rdx
inc rax
mov qword [rsp + 0x18], r10
add rax, rsi
mov qword [rsp + 0x70], rbx
movsxd rsi, dword [r13 + 0x4c]
cmp rax, r8
mov rcx, r8
mov qword [rbp - 0x79], 0x7e4
cmovb rcx, rax
mov qword [rsp], rdx
mov rax, qword [r14 + 0x50]
mov r8, rdx
mov r14, qword [r15 + 0x58]
and r8, r9
mov r15, qword [r15 + 0x60]
mov qword [rsp + 0x48], rcx
mov ecx, 0x7e4
mov qword [rbp - 0x59], r15
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x10], r14
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x68], rbx
mov dword [rbp - 0x71], ebx
test rsi, rsi
je 0x14008c3d5
mov r15, qword [rbp + 0x4f]
mov r14, r8
mov rax, qword [rbp + 0x77]
mov qword [rsp + 0x50], rcx
nop dword [rax + rax]
movsxd rdi, dword [rax + rbx*4]
mov rcx, rdx
sub rcx, rdi
cmp rcx, rdx
jae 0x14008c3bb
cmp rdi, r11
ja 0x14008c3bb
and rcx, r9
lea rdx, [r10 + r14]
cmp rdx, r9
ja 0x14008c3b7
lea rax, [rcx + r10]
cmp rax, r9
ja 0x14008c3b3
movzx eax, byte [rax + r15]
cmp byte [rdx + r15], al
jne 0x14008c3b3
mov r8, r12
lea rdx, [r14 + r15]
shr r8, 3
lea r11, [rcx + r15]
xor eax, eax
test r8, r8
je 0x14008c2fe
mov r10, r11
sub r10, rdx
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdx]
mov rcx, qword [r10 + rdx]
cmp r9, rcx
jne 0x14008c394
add rdx, 8
add rax, 8
sub r8, 1
jne 0x14008c2e0
mov r8, r12
and r8d, 7
je 0x14008c323
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
cmp byte [rax + r11], cl
jne 0x14008c323
inc rax
sub r8, 1
jne 0x14008c310
mov r8, rax
cmp r8, 3
jae 0x14008c337
cmp r8, 2
jne 0x14008c3a5
cmp rbx, r8
jae 0x14008c3a5
mov r11, qword [rsp + 0x50]
imul r9, r8, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x14008c3a5
test rbx, rbx
je 0x14008c377
movzx ecx, bl
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r11, r9
jae 0x14008c3a5
mov qword [rsp + 0x50], r9
mov r10, r8
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x70], rdi
mov qword [rbp - 0x79], r9
jmp 0x14008c3aa
xor rcx, r9
tzcnt r8, rcx
shr r8, 3
add r8, rax
jmp 0x14008c326
mov r10, qword [rsp + 0x18]
mov r11, qword [rsp + 0x28]
mov r9, qword [rbp + 0x57]
mov rax, qword [rbp + 0x77]
mov rdx, qword [rsp]
inc rbx
cmp rbx, rsi
jb 0x14008c270
mov r14, qword [rsp + 0x10]
mov r15, qword [rbp - 0x59]
mov r8, qword [rsp + 0x38]
mov r9, qword [rbp + 0x4f]
mov rbx, r13
add r9, r8
mov qword [rsp + 0x10], r9
mov ecx, dword [rbx + 0x40]
imul edx, dword [r9], 0x1e35a7bd
shr edx, cl
movzx r13d, word [r14 + rdx*2]
lea r12, [r14 + rdx*2]
mov ecx, dword [rbx + 0x48]
mov eax, edx
shl eax, cl
mov esi, r13d
sub rsi, qword [rbx + 0x38]
mov edi, r13d
cmp r13, qword [rbx + 0x38]
mov qword [rbp - 0x59], r12
lea r15, [r15 + rax*4]
mov eax, 0
cmovbe rsi, rax
cmp r13, rsi
jbe 0x14008c571
mov r14d, dword [rbx + 0x44]
mov r13, qword [rsp]
mov r12, qword [rbp + 0x4f]
nop dword [rax]
nop dword [rax + rax]
dec rdi
mov rax, r14
and rax, rdi
mov rbx, r13
mov ecx, dword [r15 + rax*4]
sub rbx, rcx
cmp rbx, r11
ja 0x14008c564
and rcx, qword [rbp + 0x57]
lea rdx, [r10 + r8]
cmp rdx, qword [rbp + 0x57]
ja 0x14008c55b
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x57]
ja 0x14008c55b
movzx eax, byte [rax + r12]
cmp byte [rdx + r12], al
jne 0x14008c55b
xor eax, eax
lea r11, [rcx + r12]
mov ecx, eax
mov rdx, r9
mov rax, qword [rsp + 8]
mov r8, rax
shr r8, 3
test r8, r8
je 0x14008c4d3
mov r10, r11
sub r10, r9
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14008c545
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14008c4b0
mov rax, qword [rsp + 8]
mov r8, rax
and r8d, 7
je 0x14008c4f3
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x14008c4f3
inc rcx
sub r8, 1
jne 0x14008c4e0
mov rdx, rcx
mov r9, qword [rsp + 0x10]
mov r8, qword [rsp + 0x38]
mov r11, qword [rsp + 0x28]
cmp rdx, 4
jb 0x14008c556
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp qword [rsp + 0x50], rax
jae 0x14008c556
mov qword [rsp + 0x50], rax
mov r10, rdx
mov qword [rsp + 0x18], rdx
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rbx
mov qword [rbp - 0x79], rax
jmp 0x14008c55b
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14008c4f6
mov r10, qword [rsp + 0x18]
cmp rdi, rsi
ja 0x14008c440
mov r12, qword [rbp - 0x59]
mov rbx, qword [rbp + 0x6f]
movzx r13d, word [r12]
mov eax, dword [rbx + 0x44]
mov rcx, qword [rsp]
and rax, r13
mov dword [r15 + rax*4], ecx
inc word [r12]
mov r12, qword [rbp - 0x79]
mov r15, qword [rbp + 0x6f]
cmp r12, 0x7e4
jne 0x14008c89d
mov r13, qword [r15 + 0x50]
mov rcx, qword [r13 + 8]
mov r14, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r14, rax
jb 0x14008c899
imul ebx, dword [r9], 0x1e35a7bd
lea r15, [rcx + 1]
mov r8, qword [rbp + 0x67]
mov rdx, qword [rsp + 8]
mov qword [r13 + 8], r15
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x14008c738
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x14008c738
mov rdi, qword [r8 + 0x58]
mov eax, ecx
imul rax, rsi
mov edx, dword [rdi + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rdi + 0xa8]
xor eax, eax
mov ecx, eax
test r8, r8
je 0x14008c653
mov r10, r9
sub r10, rdx
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14008c71a
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14008c630
mov r9, qword [rsp + 0x10]
mov r8, r11
and r8d, 7
je 0x14008c673
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r9], al
jne 0x14008c673
inc rcx
sub r8, 1
jne 0x14008c660
mov r9, rcx
mov rcx, qword [rbp + 0x67]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008c72e
test r9, r9
je 0x14008c72e
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [rcx + 0x68]
add al, al
movzx ecx, al
shr rdx, cl
movzx ecx, byte [rdi + r11]
and edx, 0x3f
lea rax, [rdx + r8*4]
shl rax, cl
add rax, rsi
mov rsi, qword [rsp + 0x48]
lea rdx, [rsi + 1]
add rdx, rax
cmp rdx, qword [rsp + 0x60]
ja 0x14008c70e
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r12
jb 0x14008c70e
mov r12, rax
mov qword [rbp - 0x79], rax
lea rax, [r14 + 1]
mov qword [rsp + 0x68], r9
sub r11d, r9d
mov qword [r13 + 0x10], rax
mov dword [rbp - 0x71], r11d
mov qword [rsp + 0x70], rdx
mov r9, qword [rsp + 0x10]
mov rdx, qword [rsp + 8]
jmp 0x14008c73d
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14008c676
mov rdx, qword [rsp + 8]
mov r9, qword [rsp + 0x10]
mov rsi, qword [rsp + 0x48]
mov r14, qword [rbp + 0x67]
lea rax, [r15 + 1]
mov qword [r13 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rax + rbx + 1]
test cl, cl
je 0x14008c88f
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x14008c88f
mov rbx, qword [r14 + 0x58]
mov eax, ecx
imul rax, rdi
mov edx, dword [rbx + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rbx + 0xa8]
xor eax, eax
mov ecx, eax
test r8, r8
je 0x14008c7be
mov r10, r9
sub r10, rdx
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14008c87b
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14008c7a0
mov r8, r11
and r8d, 7
je 0x14008c7e5
mov r9, qword [rsp + 0x10]
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r9], al
jne 0x14008c7e5
inc rdx
inc rcx
sub r8, 1
jne 0x14008c7d0
mov r9, rcx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008c88f
test r9, r9
je 0x14008c88f
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r14 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [rbx + r11]
and edx, 0x3f
lea rdx, [rdx + r8*4]
shl rdx, cl
inc rdx
add rdx, rdi
add rdx, rsi
cmp rdx, qword [rsp + 0x60]
ja 0x14008c88f
mov r15, qword [rbp + 0x6f]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
mov rcx, qword [rsp]
add rax, 0x780
cmp rax, r12
jb 0x14008c8a1
sub r11d, r9d
mov qword [rsp + 0x68], r9
inc qword [r13 + 0x10]
mov r12, rax
mov dword [rbp - 0x71], r11d
mov qword [rsp + 0x70], rdx
mov qword [rbp - 0x79], rax
jmp 0x14008c8a1
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14008c7e8
mov rcx, qword [rsp]
mov r15, qword [rbp + 0x6f]
jmp 0x14008c8a1
mov rcx, qword [rsp]
mov r14, qword [rbp + 0x67]
mov rax, qword [rsp + 0x30]
add rax, 0xaf
cmp r12, rax
jb 0x14008c90d
movups xmm0, xmmword [rsp + 0x68]
inc qword [rsp + 0x40]
mov rsi, rcx
movups xmm1, xmmword [rbp - 0x79]
mov qword [rbp + 0x47], rcx
mov ecx, dword [rbp + 0x3f]
inc ecx
mov dword [rbp + 0x3f], ecx
movups xmmword [rbp - 0x51], xmm0
movups xmmword [rbp - 0x41], xmm1
cmp ecx, 4
jge 0x14008c907
lea rax, [rsi + 4]
cmp rax, qword [rsp + 0x58]
jae 0x14008c907
mov r12, qword [rsp + 8]
mov r9, qword [rbp - 0x41]
dec r12
mov rcx, qword [rbp - 0x51]
xor ebx, ebx
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x20], rcx
jmp 0x14008c1a7
mov r13, qword [rbp - 0x51]
jmp 0x14008c916
mov rsi, qword [rbp + 0x47]
mov r13, qword [rsp + 0x20]
mov rax, qword [rbp - 0x29]
mov r10, qword [rbp - 0x69]
mov r11, qword [rbp + 0x77]
mov rbx, qword [rbp - 0x49]
lea r12, [rax + r13*2]
mov rax, qword [rbp - 0x61]
add rax, rsi
add r12, rsi
cmp rax, r10
mov qword [rsp + 0x60], r12
lea rdx, [r11 + 4]
cmovb r10, rax
cmp rbx, r10
ja 0x14008c9ce
movsxd rax, dword [r11]
lea rcx, [rbx + 3]
movsxd r9, dword [rdx]
mov r8, rcx
sub r8, rax
sub rcx, r9
cmp rbx, rax
jne 0x14008c96d
xor r9d, r9d
mov r8d, r9d
jmp 0x14008c9d5
cmp rbx, r9
jne 0x14008c97a
mov r8d, 1
jmp 0x14008c9d2
cmp r8, 7
jae 0x14008c996
movzx ecx, r8b
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14008c9d2
cmp rcx, 7
jae 0x14008c9ae
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14008c9d2
movsxd rax, dword [r11 + 8]
cmp rbx, rax
jne 0x14008c9bf
mov r8d, 2
jmp 0x14008c9d2
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x14008c9d2
lea r8, [rbx + 0xf]
xor r9d, r9d
cmp rbx, r10
ja 0x14008ca57
test r8, r8
je 0x14008ca57
mov eax, dword [r11 + 8]
mov ecx, dword [r11]
mov dword [r11 + 0xc], eax
mov eax, dword [rdx]
mov dword [r11 + 8], eax
mov dword [rdx], ecx
mov dword [r11], ebx
mov edx, dword [r15 + 0x4c]
cmp edx, 4
jle 0x14008ca57
lea eax, [rbx - 1]
mov dword [r11 + 0x10], eax
lea eax, [rbx + 1]
mov dword [r11 + 0x14], eax
lea eax, [rbx - 2]
mov dword [r11 + 0x18], eax
lea eax, [rbx + 2]
mov dword [r11 + 0x1c], eax
lea eax, [rbx - 3]
mov dword [r11 + 0x20], eax
lea eax, [rbx + 3]
mov dword [r11 + 0x24], eax
cmp edx, 0xa
jle 0x14008ca57
lea eax, [rcx - 1]
mov dword [r11 + 0x28], eax
lea eax, [rcx + 1]
mov dword [r11 + 0x2c], eax
lea eax, [rcx - 2]
mov dword [r11 + 0x30], eax
lea eax, [rcx + 2]
mov dword [r11 + 0x34], eax
lea eax, [rcx - 3]
mov dword [r11 + 0x38], eax
lea eax, [rcx + 3]
mov dword [r11 + 0x3c], eax
mov r11, qword [rbp + 0x87]
mov esi, dword [rbp - 0x39]
mov r12, qword [rsp + 0x40]
movzx eax, sil
shl eax, 0x19
or eax, r13d
mov dword [r11], r12d
mov dword [r11 + 4], eax
mov r14d, dword [r14 + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x14008ca89
mov edi, r9d
jmp 0x14008cb08
mov rcx, qword [rbp + 0x67]
add r8, 0xfffffffffffffff0
mov r10d, 1
mov r11d, dword [rcx + 0x40]
lea ecx, [r11 + 2]
shl r10, cl
sub r10, r14
add r10, r8
bsr eax, r10d
mov rdx, r10
mov rdi, r10
dec eax
mov ecx, eax
mov r9d, eax
shr rdx, cl
sub r9, r11
and edx, 1
lea r8, [r9 - 1]
shl r9, 0xa
lea r8, [rdx + r8*2]
lea rax, [rdx + 2]
shl rax, cl
mov ecx, r11d
mov r11, qword [rbp + 0x87]
sub rdi, rax
shl r8, cl
mov eax, 1
shl ax, cl
add r8w, 0x10
dec ax
shr rdi, cl
and ax, r10w
add r8w, ax
add r8w, r14w
or r8w, r9w
mov word [r11 + 0xe], r8w
lea edx, [rsi + r13]
mov eax, 0x3ff
mov dword [r11 + 8], edi
and r8w, ax
movsxd r9, edx
cmp r12, 6
jae 0x14008cb32
movzx r10d, r12w
mov eax, 0x17
jmp 0x14008cba7
cmp r12, 0x82
jae 0x14008cb5e
lea eax, [r12 - 2]
bsr ecx, eax
lea r10, [r12 - 2]
mov eax, 0x17
dec ecx
shr r10, cl
inc cx
add cx, cx
add r10w, cx
jmp 0x14008cba7
cmp r12, 0x842
jae 0x14008cb7c
lea eax, [r12 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x14008cba7
mov eax, 0x17
cmp r12, 0x1842
jae 0x14008cb92
mov r10d, reloc.WS2_32.dll_setsockopt
jmp 0x14008cba7
cmp r12, 0x5842
jae 0x14008cba3
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x14008cba7
movzx r10d, ax
cmp r9, 0xa
jae 0x14008cbb4
sub r9w, 2
jmp 0x14008cbf4
cmp r9, 0x86
jae 0x14008cbd9
add r9, 0xfffffffffffffffa
lea eax, [rdx - 6]
bsr ecx, eax
dec ecx
shr r9, cl
add cx, 2
add cx, cx
add r9w, cx
jmp 0x14008cbf4
cmp r9, 0x846
jae 0x14008cbf0
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x14008cbf4
movzx r9d, ax
movzx edx, r10w
movzx eax, r9w
and dx, 7
and ax, 7
shl dx, 3
or dx, ax
test r8w, r8w
jne 0x14008cc2c
cmp r10w, 8
jae 0x14008cc2c
cmp r9w, 0x10
jae 0x14008cc2c
cmp r9w, 8
jb 0x14008cc60
or dx, 0x40
jmp 0x14008cc60
movzx eax, r10w
mov r8d, 0xc0
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, r9w
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, r8w
add ax, cx
or dx, ax
mov rax, qword [rbp + 0x97]
mov rsi, qword [rbp + 0x47]
mov word [r11 + 0xc], dx
add r11, 0x10
mov qword [rbp + 0x87], r11
add qword [rax], r12
xor eax, eax
mov r11, qword [rbp - 0x31]
lea r10, [rsi + 2]
mov edi, eax
mov qword [rsp + 0x40], rax
lea rax, [rsi + r13]
cmp rax, r11
cmovb r11, rax
mov rax, r13
shr rax, 2
cmp rbx, rax
jae 0x14008cccf
lea rax, [rbx*4]
mov rcx, r13
sub rcx, rax
lea rax, [rcx + rsi]
cmp r10, rax
mov eax, 2
cmova rcx, rax
lea r10, [rsi + rcx]
cmp r11, r10
cmovb r10, r11
cmp r10, r11
jae 0x14008cd30
mov rbx, qword [rbp + 0x4f]
nop dword [rax + rax]
mov ecx, dword [r15 + 0x40]
mov rax, r10
and rax, qword [rbp + 0x57]
imul r8d, dword [rax + rbx], 0x1e35a7bd
mov rax, qword [r15 + 0x58]
shr r8d, cl
mov ecx, dword [r15 + 0x48]
lea r9, [r8 + r8]
shl r8d, cl
movzx edx, word [r9 + rax]
mov eax, dword [r15 + 0x44]
and rdx, rax
mov eax, r8d
add rdx, rax
mov rax, qword [r15 + 0x60]
mov dword [rax + rdx*4], r10d
inc r10
mov rax, qword [r15 + 0x58]
inc word [r9 + rax]
cmp r10, r11
jb 0x14008cce0
add rsi, r13
mov qword [rbp + 0x47], rsi
mov r11, qword [rbp + 0x57]
mov rcx, qword [rsp + 0x58]
lea rax, [rsi + 4]
mov r8, qword [rbp + 0x67]
mov edx, 0
mov r10, qword [rbp - 0x69]
mov r14, qword [rbp - 0x61]
cmp rax, rcx
jb 0x14008bac0
mov r13, qword [rsp + 0xe8]
mov r12, qword [rsp + 0xf0]
mov rbx, qword [rbp + 0x87]
sub rbx, qword [rbp - 0x21]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rbp + 0x7f]
sub rax, rsi
add rax, rdi
sar rbx, 4
mov qword [rcx], rax
mov rax, qword [rbp + 0x8f]
add qword [rax], rbx
add rsp, 0xf8
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rdi, qword [rsp + 0x40]
inc rsi
mov r12, qword [rsp + 0x60]
inc rdi
mov qword [rsp + 0x40], rdi
mov qword [rbp + 0x47], rsi
cmp rsi, r12
jbe 0x14008cd37
mov rax, qword [rbp - 0x29]
mov r10, qword [rsp + 0x58]
mov r11, qword [rbp + 0x57]
lea rax, [r12 + rax*4]
cmp rsi, rax
jbe 0x14008ce78
add r10, 0xfffffffffffffffc
lea rax, [rsi + 0x10]
cmp rax, r10
cmovb r10, rax
cmp rsi, r10
jae 0x14008cd3b
mov rbx, qword [rbp + 0x4f]
mov rax, r10
sub rax, rsi
add rdi, 4
dec rax
and rax, 0xfffffffffffffffc
add rdi, rax
mov qword [rsp + 0x40], rdi
nop word [rax + rax]
mov ecx, dword [r15 + 0x40]
mov rax, rsi
and rax, r11
imul r8d, dword [rax + rbx], 0x1e35a7bd
mov rax, qword [r15 + 0x58]
shr r8d, cl
mov ecx, dword [r15 + 0x48]
lea r9, [r8 + r8]
shl r8d, cl
movzx edx, word [r9 + rax]
mov eax, dword [r15 + 0x44]
and rdx, rax
mov eax, r8d
add rdx, rax
mov rax, qword [r15 + 0x60]
mov dword [rax + rdx*4], esi
add rsi, 4
mov rax, qword [r15 + 0x58]
inc word [r9 + rax]
cmp rsi, r10
jb 0x14008ce20
mov qword [rbp + 0x47], rsi
jmp 0x14008cd3b
add r10, 0xfffffffffffffffd
lea rax, [rsi + 8]
cmp rax, r10
cmovb r10, rax
cmp rsi, r10
jae 0x14008cd3b
mov rbx, qword [rbp + 0x4f]
mov rax, r10
sub rax, rsi
add rdi, 2
dec rax
and rax, 0xfffffffffffffffe
add rdi, rax
mov qword [rsp + 0x40], rdi
nop dword [rax]
mov ecx, dword [r15 + 0x40]
mov rax, rsi
and rax, r11
imul r8d, dword [rax + rbx], 0x1e35a7bd
mov rax, qword [r15 + 0x58]
shr r8d, cl
mov ecx, dword [r15 + 0x48]
lea r9, [r8 + r8]
shl r8d, cl
movzx edx, word [r9 + rax]
mov eax, dword [r15 + 0x44]
and rdx, rax
mov eax, r8d
add rdx, rax
mov rax, qword [r15 + 0x60]
mov dword [rax + rdx*4], esi
add rsi, 2
mov rax, qword [r15 + 0x58]
inc word [r9 + rax]
cmp rsi, r10
jb 0x14008ceb0
mov qword [rbp + 0x47], rsi
jmp 0x14008cd3b
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x38]
sub rsp, 0x138
mov rax, qword [0x1407b6d00]
xor rax, rsp
mov qword [rbp + 0x20], rax
mov rsi, qword [rbp + 0xa8]
mov rax, rcx
mov rcx, qword [rbp + 0xd8]
mov rbx, r9
mov r9, qword [rbp + 0xc0]
mov r15, rdx
mov r10, qword [rbp + 0xc8]
mov edi, 1
mov r14, qword [rbp + 0xd0]
mov r11, r8
mov qword [rbp - 0x40], rcx
mov ecx, dword [rsi + 8]
lea r13, [r15 + rax]
shl rdi, cl
mov rcx, qword [rsi + 0x10]
sub rdi, 0x10
mov qword [rbp - 0x48], rcx
mov rcx, r10
mov qword [rsp], r8
mov r8, qword [rbp + 0xb8]
mov qword [rsp + 0x28], rdx
mov rdx, qword [rbp + 0xb0]
mov qword [rbp - 0x28], r9
mov r9, qword [r9]
mov qword [rbp - 0x30], rcx
mov qword [rsp + 8], rbx
mov qword [rbp - 0x68], rsi
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x70], r10
mov qword [rbp - 0x38], r14
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x60], r13
cmp rax, 8
jb 0x14008cfe5
lea rax, [r13 - 7]
mov qword [rbp - 0x60], rax
jmp 0x14008cfe9
mov qword [rbp - 0x60], r15
cmp dword [rsi + 4], 9
mov eax, 0x200
mov r12d, 0x40
cmovl eax, r12d
mov qword [rbp - 0x58], rax
add rax, r15
mov qword [rsp + 0x48], rax
lea rax, [r15 + 8]
cmp rax, r13
jae 0x14008dfc8
movdqa xmm2, xmmword [0x1406e1820]
movabs rcx, 0x35a7bd1e35a7bd00
movdqa xmm3, xmmword [0x1406e1850]
nop
mov r9, r13
mov qword [rsp + 0x20], 0x7e4
mov r13, qword [rsp + 0x28]
sub r9, r15
cmp r15, rdi
mov qword [rsp + 0x10], r9
mov r12, rdi
mov edi, 0x7e4
cmovb r12, r15
xor r10d, r10d
mov r15, rbx
mov qword [rsp + 0x18], r10
and r15, r13
mov qword [rbp - 0x80], r10
mov r10, qword [rdx + 0x38]
lea rbx, [r11 + r15]
movsxd r11, dword [r8]
xor r14d, r14d
mov rax, qword [rbx]
movzx esi, byte [rbx]
mov r8, qword [rsp + 8]
mov rdx, qword [rsp]
imul rax, rcx
mov rcx, r13
mov qword [rsp + 0x38], r10
shr rax, 0x2c
sub rcx, r11
mov dword [rbp - 0x70], r14d
movq xmm1, rax
punpcklqdq xmm1, xmm1
cmp rcx, r13
jae 0x14008d186
mov r10d, r8d
and r10, rcx
add r10, rdx
movzx eax, byte [r10]
cmp esi, eax
jne 0x14008d181
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x14008d0ff
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008d16b
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008d0e0
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x14008d123
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x14008d123
inc rcx
sub r8, 1
jne 0x14008d110
mov rax, rcx
mov rdx, qword [rsp]
mov r10, qword [rsp + 0x38]
mov r8, qword [rsp + 8]
cmp rax, 4
jb 0x14008d186
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rdi
jbe 0x14008d186
mov qword [rsp + 0x18], rax
mov r14, rax
add rax, rdx
mov qword [rbp - 0x80], r11
mov qword [rsp + 0x20], rcx
mov rdi, rcx
movzx esi, byte [rax + r15]
jmp 0x14008d186
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rax, r8
shr rax, 3
add rax, rcx
jmp 0x14008d126
mov r10, qword [rsp + 0x38]
xor eax, eax
nop dword [rax + rax]
movq xmm0, rax
punpcklqdq xmm0, xmm0
paddq xmm0, xmm2
psllq xmm0, 3
paddq xmm0, xmm1
andps xmm0, xmm3
movdqu xmmword [rbp + rax*8 - 0x20], xmm0
add rax, 2
cmp rax, 4
jb 0x14008d190
mov r11, qword [rsp + 0x28]
mov rax, r13
shr rax, 3
and eax, 3
mov r13, qword [rbp + rax*8 - 0x20]
mov rax, qword [rbp - 0x20]
mov ecx, dword [r10 + rax*4]
mov r10d, r8d
sub r11, rcx
and r10, rcx
add r10, rdx
movzx eax, byte [r10 + r14]
cmp esi, eax
jne 0x14008d2a9
test r11, r11
je 0x14008d2a9
cmp r11, r12
ja 0x14008d2a9
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x14008d243
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008d547
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008d220
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x14008d263
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x14008d263
inc rcx
sub r8, 1
jne 0x14008d250
mov rdx, rcx
cmp rdx, 4
jb 0x14008d2a9
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x14008d2a9
mov rax, qword [rsp]
mov r14, rdx
add rax, rdx
mov qword [rsp + 0x18], rdx
mov rdi, r8
mov qword [rsp + 0x20], r8
mov qword [rbp - 0x80], r11
movzx esi, byte [rax + r15]
mov rax, qword [rbp - 0x18]
mov rcx, qword [rsp + 0x38]
mov r11, qword [rsp + 0x28]
mov r10, qword [rsp]
mov ecx, dword [rcx + rax*4]
mov eax, dword [rsp + 8]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [r10 + r14]
cmp esi, eax
jne 0x14008d38b
test r11, r11
je 0x14008d38b
cmp r11, r12
ja 0x14008d38b
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x14008d323
nop dword [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008d560
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008d300
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x14008d345
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14008d345
inc rdx
inc rcx
sub r8, 1
jne 0x14008d330
mov rdx, rcx
cmp rdx, 4
jb 0x14008d38b
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x14008d38b
mov rax, qword [rsp]
mov r14, rdx
add rax, rdx
mov qword [rsp + 0x18], rdx
mov rdi, r8
mov qword [rsp + 0x20], r8
mov qword [rbp - 0x80], r11
movzx esi, byte [rax + r15]
mov rax, qword [rbp - 0x10]
mov rcx, qword [rsp + 0x38]
mov r11, qword [rsp + 0x28]
mov r10, qword [rsp]
mov ecx, dword [rcx + rax*4]
mov eax, dword [rsp + 8]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [r10 + r14]
cmp esi, eax
jne 0x14008d46b
test r11, r11
je 0x14008d46b
cmp r11, r12
ja 0x14008d46b
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x14008d403
nop dword [rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008d579
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008d3e0
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x14008d425
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14008d425
inc rdx
inc rcx
sub r8, 1
jne 0x14008d410
mov rdx, rcx
cmp rdx, 4
jb 0x14008d46b
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x14008d46b
mov rax, qword [rsp]
mov r14, rdx
add rax, rdx
mov qword [rsp + 0x18], rdx
mov rdi, r8
mov qword [rsp + 0x20], r8
mov qword [rbp - 0x80], r11
movzx esi, byte [rax + r15]
mov rax, qword [rbp - 8]
mov r11, qword [rsp + 0x38]
mov r15, qword [rsp + 0x28]
mov r9, qword [rsp]
mov r10, r15
mov ecx, dword [r11 + rax*4]
mov eax, dword [rsp + 8]
sub r10, rcx
and rcx, rax
add r9, rcx
movzx eax, byte [r9 + r14]
cmp esi, eax
jne 0x14008d5a1
test r10, r10
je 0x14008d5a1
cmp r10, r12
ja 0x14008d5a1
mov r14, qword [rsp + 0x10]
xor ecx, ecx
mov rax, r14
shr rax, 3
test rax, rax
je 0x14008d4ee
nop dword [rax]
nop word [rax + rax]
mov r8, qword [rbx]
mov rdx, qword [rcx + r9]
cmp r8, rdx
jne 0x14008d58d
add rbx, 8
add rcx, 8
sub rax, 1
jne 0x14008d4d0
mov rdx, r14
and edx, 7
je 0x14008d50b
movzx eax, byte [rbx]
cmp byte [rcx + r9], al
jne 0x14008d50b
inc rbx
inc rcx
sub rdx, 1
jne 0x14008d4f6
mov r8, rcx
cmp r8, 4
jb 0x14008d5a1
bsr eax, r10d
imul ecx, eax, 0x1e
imul rax, r8, 0x87
sub rax, rcx
add rax, 0x780
cmp rdi, rax
jae 0x14008d5a1
mov rcx, r8
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x18], rcx
mov qword [rbp - 0x80], r10
jmp 0x14008d5ab
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008d266
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008d348
xor r8, r9
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008d428
xor rdx, r8
tzcnt r8, rdx
shr r8, 3
add r8, rcx
jmp 0x14008d50e
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x18]
mov dword [r11 + r13*4], r15d
cmp rax, 0x7e4
jbe 0x14008dfff
mov dword [rsp + 0x38], 0
mov r9, qword [rsp + 0x10]
mov rax, qword [rbp - 0x68]
dec r9
mov qword [rsp + 0x10], r9
cmp dword [rax + 4], 5
jge 0x14008d5ea
lea rax, [rcx - 1]
mov rdi, r9
cmp rax, r9
cmovb rdi, rax
jmp 0x14008d5ec
xor edi, edi
mov r12, qword [rsp + 0x68]
lea r10, [r15 + 1]
mov rdx, qword [rsp + 8]
cmp r10, r12
mov rax, qword [rsp + 0x50]
movabs rcx, 0x35a7bd1e35a7bd00
mov rbx, qword [rsp]
cmovb r12, r10
mov r15, rdx
mov qword [rbp - 0x20], rdi
and r15, r10
mov qword [rbp - 0x18], 0
mov rax, qword [rax + 0x38]
add rbx, r15
mov qword [rsp + 0x48], rax
mov r13d, 0x7e4
mov qword [rbp - 0x10], r13
mov esi, r13d
mov qword [rsp + 0x40], r10
mov rax, qword [rbx]
movzx r14d, byte [rbx + rdi]
imul rax, rcx
mov rcx, r10
mov dword [rbp - 8], 0
shr rax, 0x2c
movq xmm1, rax
mov rax, qword [rsp + 0x58]
punpcklqdq xmm1, xmm1
movsxd r11, dword [rax]
sub rcx, r11
cmp rcx, r10
jae 0x14008d756
mov r10, qword [rsp]
mov eax, edx
and rcx, rax
add r10, rcx
movzx eax, byte [r10 + rdi]
cmp r14d, eax
jne 0x14008d751
mov rcx, r9
xor eax, eax
shr rcx, 3
mov rdx, rbx
test rcx, rcx
je 0x14008d6cf
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rax + r10]
cmp r9, r8
jne 0x14008d73b
add rdx, 8
add rax, 8
sub rcx, 1
jne 0x14008d6b0
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x14008d6f3
sub rdx, rax
nop dword [rax + rax]
movzx ecx, byte [rdx + rax]
cmp byte [rax + r10], cl
jne 0x14008d6f3
inc rax
sub r8, 1
jne 0x14008d6e0
mov rcx, rax
mov r10, qword [rsp + 0x40]
mov rdx, qword [rsp + 8]
cmp rcx, 4
jb 0x14008d756
imul rax, rcx, 0x87
add rax, 0x78f
cmp rax, rsi
jbe 0x14008d756
mov r13, rax
mov qword [rbp - 0x10], rax
mov rsi, rax
mov qword [rbp - 0x20], rcx
mov rax, qword [rsp]
mov rdi, rcx
add rax, rcx
mov qword [rbp - 0x18], r11
movzx r14d, byte [rax + r15]
jmp 0x14008d756
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rcx, r8
shr rcx, 3
add rcx, rax
jmp 0x14008d6f6
mov r10, qword [rsp + 0x40]
xor eax, eax
nop dword [rax + rax]
movq xmm0, rax
punpcklqdq xmm0, xmm0
paddq xmm0, xmm2
psllq xmm0, 3
paddq xmm0, xmm1
andps xmm0, xmm3
movdqu xmmword [rbp + rax*8], xmm0
add rax, 2
cmp rax, 4
jb 0x14008d760
mov rax, r10
mov r11, r10
mov r10, qword [rsp]
shr rax, 3
and eax, 3
mov rcx, qword [rbp + rax*8]
mov rax, qword [rbp]
mov qword [rbp - 0x50], rcx
mov rcx, qword [rsp + 0x48]
mov ecx, dword [rcx + rax*4]
mov eax, edx
sub r11, rcx
and rax, rcx
add r10, rax
movzx eax, byte [r10 + rdi]
cmp r14d, eax
jne 0x14008d87a
test r11, r11
je 0x14008d87a
cmp r11, r12
ja 0x14008d87a
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x14008d813
nop dword [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008db83
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008d7f0
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x14008d833
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x14008d833
inc rcx
sub r8, 1
jne 0x14008d820
mov rdx, rcx
cmp rdx, 4
jb 0x14008d87a
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rsi, r8
jae 0x14008d87a
mov rax, qword [rsp]
mov rdi, rdx
add rax, rdx
mov qword [rbp - 0x20], rdx
mov rsi, r8
mov qword [rbp - 0x10], r8
mov r13, r8
mov qword [rbp - 0x18], r11
movzx r14d, byte [rax + r15]
mov rax, qword [rbp + 8]
mov rcx, qword [rsp + 0x48]
mov r10, qword [rsp]
mov r11, qword [rsp + 0x40]
mov ecx, dword [rcx + rax*4]
mov eax, dword [rsp + 8]
sub r11, rcx
and rax, rcx
add r10, rax
movzx eax, byte [r10 + rdi]
cmp r14d, eax
jne 0x14008d95c
test r11, r11
je 0x14008d95c
cmp r11, r12
ja 0x14008d95c
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x14008d8f3
nop dword [rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008db9c
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008d8d0
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x14008d915
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14008d915
inc rdx
inc rcx
sub r8, 1
jne 0x14008d900
mov rdx, rcx
cmp rdx, 4
jb 0x14008d95c
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rsi, r8
jae 0x14008d95c
mov rax, qword [rsp]
mov rdi, rdx
add rax, rdx
mov qword [rbp - 0x20], rdx
mov rsi, r8
mov qword [rbp - 0x10], r8
mov r13, r8
mov qword [rbp - 0x18], r11
movzx r14d, byte [rax + r15]
mov rax, qword [rbp + 0x10]
mov rcx, qword [rsp + 0x48]
mov r10, qword [rsp]
mov r11, qword [rsp + 0x40]
mov ecx, dword [rcx + rax*4]
mov eax, dword [rsp + 8]
sub r11, rcx
and rax, rcx
add r10, rax
movzx eax, byte [r10 + rdi]
cmp r14d, eax
jne 0x14008da3c
test r11, r11
je 0x14008da3c
cmp r11, r12
ja 0x14008da3c
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x14008d9d3
nop
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008dbb5
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008d9b0
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x14008d9f5
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14008d9f5
inc rdx
inc rcx
sub r8, 1
jne 0x14008d9e0
mov rdx, rcx
cmp rdx, 4
jb 0x14008da3c
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rsi, r8
jae 0x14008da3c
mov rax, qword [rsp]
mov rdi, rdx
add rax, rdx
mov qword [rbp - 0x20], rdx
mov rsi, r8
mov qword [rbp - 0x10], r8
mov r13, r8
mov qword [rbp - 0x18], r11
movzx r14d, byte [rax + r15]
mov rax, qword [rbp + 0x18]
mov r15, qword [rsp + 0x48]
mov r9, qword [rsp]
mov r11, qword [rsp + 0x40]
mov r10, r11
mov ecx, dword [r15 + rax*4]
mov eax, dword [rsp + 8]
sub r10, rcx
and rax, rcx
add r9, rax
movzx eax, byte [r9 + rdi]
cmp r14d, eax
jne 0x14008db0f
test r10, r10
je 0x14008db0f
cmp r10, r12
ja 0x14008db0f
mov r14, qword [rsp + 0x10]
xor ecx, ecx
mov rax, r14
shr rax, 3
test rax, rax
je 0x14008dabe
nop word [rax + rax]
mov r8, qword [rbx]
mov rdx, qword [rcx + r9]
cmp r8, rdx
jne 0x14008dbc9
add rbx, 8
add rcx, 8
sub rax, 1
jne 0x14008daa0
mov rdx, r14
and edx, 7
je 0x14008dadb
movzx eax, byte [rbx]
cmp byte [rcx + r9], al
jne 0x14008dadb
inc rbx
inc rcx
sub rdx, 1
jne 0x14008dac6
mov r8, rcx
cmp r8, 4
jb 0x14008db0f
bsr eax, r10d
imul ecx, eax, 0x1e
imul rax, r8, 0x87
sub rax, rcx
add rax, 0x780
cmp rsi, rax
jae 0x14008db0f
mov qword [rbp - 0x20], r8
mov r13, rax
mov qword [rbp - 0x10], rax
mov qword [rbp - 0x18], r10
mov rax, qword [rbp - 0x50]
mov r12, qword [rsp + 0x30]
mov dword [r15 + rax*4], r11d
mov rax, qword [rsp + 0x20]
add rax, 0xaf
cmp r13, rax
jb 0x14008dbe9
mov ecx, dword [rsp + 0x38]
inc r12
movups xmm0, xmmword [rbp - 0x20]
inc ecx
mov r15, r11
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x38], ecx
movups xmm1, xmmword [rbp - 0x10]
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rbp - 0x78], xmm1
cmp ecx, 4
jge 0x14008dbdd
lea rax, [r11 + 8]
cmp rax, qword [rsp + 0x60]
jae 0x14008dbdd
mov r10, qword [rbp - 0x78]
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x18], rcx
jmp 0x14008d5c3
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008d836
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008d918
xor r8, r9
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008d9f8
xor rdx, r8
tzcnt r8, rdx
shr r8, 3
add r8, rcx
jmp 0x14008dade
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x18], r11
jmp 0x14008dbf3
mov r15, qword [rsp + 0x28]
mov r11, qword [rsp + 0x18]
mov r9, qword [rsp + 0x68]
lea r13, [r15 + r11*2]
add r13, qword [rbp - 0x58]
mov rax, qword [rbp - 0x48]
mov rbx, qword [rbp - 0x80]
add rax, r15
mov r10, qword [rsp + 0x58]
cmp rax, r9
mov qword [rsp + 0x48], r13
cmovb r9, rax
cmp rbx, r9
ja 0x14008dc9f
movsxd rax, dword [r10]
lea rcx, [rbx + 3]
movsxd r8, dword [r10 + 4]
mov rdx, rcx
sub rdx, rax
sub rcx, r8
cmp rbx, rax
jne 0x14008dc3f
xor r8d, r8d
jmp 0x14008dca3
cmp rbx, r8
jne 0x14008dc4c
mov r8d, 1
jmp 0x14008dca3
cmp rdx, 7
jae 0x14008dc67
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14008dca3
cmp rcx, 7
jae 0x14008dc7f
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14008dca3
movsxd rax, dword [r10 + 8]
cmp rbx, rax
jne 0x14008dc90
mov r8d, 2
jmp 0x14008dca3
movsxd rax, dword [r10 + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x14008dca3
lea r8, [rbx + 0xf]
cmp rbx, r9
ja 0x14008dcc7
test r8, r8
je 0x14008dcc7
mov eax, dword [r10 + 8]
mov dword [r10 + 0xc], eax
mov eax, dword [r10 + 4]
mov dword [r10 + 8], eax
mov eax, dword [r10]
mov dword [r10 + 4], eax
mov dword [r10], ebx
mov r13, qword [rsp + 0x70]
mov esi, dword [rbp - 0x70]
mov rcx, qword [rbp - 0x68]
movzx eax, sil
shl eax, 0x19
or eax, r11d
mov dword [r13], r12d
mov dword [r13 + 4], eax
mov r14d, dword [rcx + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x14008dcf6
xor edi, edi
jmp 0x14008dd6f
mov r11d, dword [rcx + 0x40]
mov r10d, 1
lea ecx, [r11 + 2]
shl r10, cl
sub r10, r14
add r10, 0xfffffffffffffff0
add r10, r8
bsr eax, r10d
mov rdx, r10
mov rdi, r10
dec eax
mov ecx, eax
mov r9d, eax
shr rdx, cl
sub r9, r11
and edx, 1
lea r8, [r9 - 1]
shl r9, 0xa
lea r8, [rdx + r8*2]
lea rax, [rdx + 2]
shl rax, cl
mov ecx, r11d
mov r11, qword [rsp + 0x18]
sub rdi, rax
shl r8, cl
mov eax, 1
shl ax, cl
add r8w, 0x10
dec ax
shr rdi, cl
and ax, r10w
add r8w, ax
add r8w, r14w
or r8w, r9w
mov word [r13 + 0xe], r8w
lea edx, [rsi + r11]
mov eax, 0x3ff
mov dword [r13 + 8], edi
and r8w, ax
movsxd r9, edx
cmp r12, 6
jae 0x14008dd99
movzx r10d, r12w
mov eax, 0x17
jmp 0x14008de0e
cmp r12, 0x82
jae 0x14008ddc5
lea eax, [r12 - 2]
bsr ecx, eax
lea r10, [r12 - 2]
mov eax, 0x17
dec ecx
shr r10, cl
inc cx
add cx, cx
add r10w, cx
jmp 0x14008de0e
cmp r12, 0x842
jae 0x14008dde3
lea eax, [r12 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x14008de0e
mov eax, 0x17
cmp r12, 0x1842
jae 0x14008ddf9
mov r10d, reloc.WS2_32.dll_setsockopt
jmp 0x14008de0e
cmp r12, 0x5842
jae 0x14008de0a
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x14008de0e
movzx r10d, ax
cmp r9, 0xa
jae 0x14008de1b
sub r9w, 2
jmp 0x14008de5b
cmp r9, 0x86
jae 0x14008de40
add r9, 0xfffffffffffffffa
lea eax, [rdx - 6]
bsr ecx, eax
dec ecx
shr r9, cl
add cx, 2
add cx, cx
add r9w, cx
jmp 0x14008de5b
cmp r9, 0x846
jae 0x14008de57
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x14008de5b
movzx r9d, ax
movzx edx, r10w
movzx eax, r9w
and dx, 7
and ax, 7
shl dx, 3
or dx, ax
test r8w, r8w
jne 0x14008de93
cmp r10w, 8
jae 0x14008de93
cmp r9w, 0x10
jae 0x14008de93
cmp r9w, 8
jb 0x14008dec7
or dx, 0x40
jmp 0x14008dec7
movzx eax, r10w
mov r8d, 0xc0
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, r9w
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, r8w
add ax, cx
or dx, ax
mov rax, qword [rbp - 0x40]
xor r9d, r9d
mov r8, qword [rbp - 0x60]
mov word [r13 + 0xc], dx
add r13, 0x10
mov qword [rsp + 0x70], r13
lea rdx, [r15 + 2]
add qword [rax], r12
lea rax, [r15 + r11]
cmp rax, r8
mov qword [rsp + 0x30], r9
cmovb r8, rax
mov rax, r11
shr rax, 2
cmp rbx, rax
jae 0x14008df25
lea rax, [rbx*4]
mov rcx, r15
sub rcx, rax
add rcx, r11
cmp rdx, rcx
cmova rcx, rdx
cmp r8, rcx
mov rdx, rcx
cmovb rdx, r8
cmp rdx, r8
jae 0x14008df7f
mov r15, qword [rsp]
movabs r11, 0x35a7bd1e35a7bd00
mov r9, qword [rsp + 0x50]
nop dword [rax]
mov rax, qword [rsp + 8]
and rax, rdx
mov rcx, qword [rax + r15]
mov eax, edx
imul rcx, r11
and eax, 0x18
shr rcx, 0x2c
add ecx, eax
mov rax, qword [r9 + 0x38]
and ecx, 0xfffff
mov dword [rax + rcx*4], edx
inc rdx
cmp rdx, r8
jb 0x14008df40
mov r15, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
mov r11, qword [rsp + 0x18]
add r15, r11
mov qword [rsp + 0x28], r15
mov rbx, qword [rsp + 8]
mov r11, qword [rsp]
mov r13, qword [rsp + 0x60]
lea rax, [r15 + 8]
mov rdx, qword [rsp + 0x50]
movabs rcx, 0x35a7bd1e35a7bd00
mov r8, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x68]
cmp rax, r13
jb 0x14008d030
mov r10, qword [rsp + 0x70]
mov r14, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x28]
sub r13, r15
sub r10, rcx
add r13, r9
sar r10, 4
mov qword [rax], r13
add qword [r14], r10
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.1400ba850
add rsp, 0x138
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov r9, qword [rsp + 0x30]
inc r15
mov r13, qword [rsp + 0x48]
inc r9
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x28], r15
cmp r15, r13
jbe 0x14008df87
mov rax, qword [rbp - 0x58]
mov rdx, qword [rsp + 0x60]
mov r11, qword [rsp]
add rdx, 0xfffffffffffffff9
mov rbx, qword [rsp + 8]
lea rax, [rax*4]
add rax, r13
cmp r15, rax
jbe 0x14008e0ca
lea rax, [r15 + 0x10]
cmp rax, rdx
cmovb rdx, rax
cmp r15, rdx
jae 0x14008df90
add r9, 4
mov rax, rdx
sub rax, r15
dec rax
and rax, 0xfffffffffffffffc
add r9, rax
mov qword [rsp + 0x30], r9
mov r9, qword [rsp + 0x50]
nop
mov rax, rbx
and rax, r15
mov rcx, qword [rax + r11]
movabs rax, 0x35a7bd1e35a7bd00
imul rcx, rax
mov eax, r15d
shr rcx, 0x2c
and eax, 0x18
add ecx, eax
mov rax, qword [r9 + 0x38]
and ecx, 0xfffff
mov dword [rax + rcx*4], r15d
add r15, 4
cmp r15, rdx
jb 0x14008e080
mov r9, qword [rsp + 0x30]
mov qword [rsp + 0x28], r15
jmp 0x14008df90
lea rax, [r15 + 8]
cmp rax, rdx
cmovb rdx, rax
cmp r15, rdx
jae 0x14008df90
add r9, 2
mov rax, rdx
sub rax, r15
dec rax
and rax, 0xfffffffffffffffe
add r9, rax
mov qword [rsp + 0x30], r9
mov r9, qword [rsp + 0x50]
nop dword [rax]
mov rax, rbx
and rax, r15
mov rcx, qword [rax + r11]
movabs rax, 0x35a7bd1e35a7bd00
imul rcx, rax
mov eax, r15d
shr rcx, 0x2c
and eax, 0x18
add ecx, eax
mov rax, qword [r9 + 0x38]
and ecx, 0xfffff
mov dword [rax + rcx*4], r15d
add r15, 2
cmp r15, rdx
jb 0x14008e100
mov r9, qword [rsp + 0x30]
mov qword [rsp + 0x28], r15
jmp 0x14008df90
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x38]
sub rsp, 0x138
mov rax, qword [0x1407b6d00]
xor rax, rsp
mov qword [rbp + 0x20], rax
mov rsi, qword [rbp + 0xa8]
mov rax, rcx
mov rcx, qword [rbp + 0xd8]
mov r14, rdx
mov rbx, qword [rbp + 0xc8]
mov edi, 1
mov r10, qword [rbp + 0xb0]
mov r11, r9
mov r12, qword [rbp + 0xd0]
mov r15, r8
mov qword [rbp - 0x40], rcx
mov ecx, dword [rsi + 8]
shl rdi, cl
mov rcx, qword [rsi + 0x10]
sub rdi, 0x10
mov qword [rsp + 0x20], rdx
mov rdx, qword [rbp + 0xc0]
mov qword [rsp], r9
mov qword [rsp + 8], r8
mov r8, qword [rbp + 0xb8]
mov r9, qword [rdx]
mov qword [rbp - 0x28], rdx
lea rdx, [r14 + rax]
mov qword [rbp - 0x48], rcx
mov rcx, rbx
mov qword [rbp - 0x60], rsi
mov qword [rsp + 0x10], r10
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x38], r12
mov qword [rsp + 0x70], rdi
mov qword [rbp - 0x30], rbx
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x68], rdx
cmp rax, 8
jb 0x14008e225
lea rax, [rdx - 7]
mov qword [rbp - 0x58], rax
jmp 0x14008e229
mov qword [rbp - 0x58], r14
cmp dword [rsi + 4], 9
mov eax, 0x200
mov r13d, 0x40
cmovl eax, r13d
mov qword [rbp - 0x50], rax
add rax, r14
mov qword [rsp + 0x50], rax
lea rax, [r14 + 8]
cmp rax, rdx
jae 0x14008f67a
movdqa xmm2, xmmword [0x1406e1820]
movabs rcx, 0x35a7bd1e35a7bd00
movdqa xmm3, xmmword [0x1406e1850]
nop
mov r12, qword [r10 + 0x38]
mov r9, rdx
mov r10, qword [rsp + 0x20]
sub r9, r14
cmp r14, rdi
mov qword [rsp + 0x18], r9
mov rdx, rdi
mov qword [rsp + 0x40], 0x7e4
cmovb rdx, r14
xor ebx, ebx
mov r14, r11
mov qword [rsp + 0x48], rbx
movsxd r11, dword [r8]
and r14, r10
mov rax, qword [r15 + r14]
lea r13, [r15 + r14]
movzx edi, byte [r13]
xor esi, esi
mov r8, qword [rsp]
imul rax, rcx
mov rcx, r10
mov qword [rbp - 0x78], rbx
shr rax, 0x2c
sub rcx, r11
mov dword [rbp - 0x68], ebx
mov ebx, 0x7e4
mov qword [rsp + 0x28], rdx
movq xmm1, rax
punpcklqdq xmm1, xmm1
cmp rcx, r10
jae 0x14008e3c6
mov r10d, r8d
and r10, rcx
add r10, r15
movzx eax, byte [r10]
cmp edi, eax
jne 0x14008e3c1
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r13
test rax, rax
je 0x14008e343
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008e3ab
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008e320
mov r9, qword [rsp + 0x18]
mov r8, r9
and r8d, 7
je 0x14008e363
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x14008e363
inc rcx
sub r8, 1
jne 0x14008e350
mov rax, rcx
mov rdx, qword [rsp + 0x28]
mov r10, qword [rsp + 0x20]
mov r8, qword [rsp]
cmp rax, 4
jb 0x14008e3c6
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rbx
jbe 0x14008e3c6
mov qword [rsp + 0x48], rax
mov rsi, rax
add rax, r15
mov qword [rbp - 0x78], r11
mov qword [rsp + 0x40], rcx
mov rbx, rcx
movzx edi, byte [rax + r14]
jmp 0x14008e3c6
xor r8, r9
mov r9, qword [rsp + 0x18]
tzcnt rax, r8
shr rax, 3
add rax, rcx
jmp 0x14008e366
mov r10, qword [rsp + 0x20]
xor eax, eax
nop dword [rax + rax]
movq xmm0, rax
punpcklqdq xmm0, xmm0
paddq xmm0, xmm2
psllq xmm0, 3
paddq xmm0, xmm1
andps xmm0, xmm3
movdqu xmmword [rbp + rax*8 - 0x20], xmm0
add rax, 2
cmp rax, 4
jb 0x14008e3d0
mov rax, r10
mov r11, r10
mov r10, qword [rsp + 8]
shr rax, 3
and eax, 3
mov r15, qword [rbp + rax*8 - 0x20]
mov rax, qword [rbp - 0x20]
mov ecx, dword [r12 + rax*4]
mov eax, r8d
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [rsi + r10]
cmp edi, eax
jne 0x14008e4ea
test r11, r11
je 0x14008e4ea
cmp r11, rdx
ja 0x14008e4ea
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r13
test rax, rax
je 0x14008e483
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008e948
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008e460
mov r9, qword [rsp + 0x18]
mov r8, r9
and r8d, 7
je 0x14008e4a3
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r10], al
jne 0x14008e4a3
inc rcx
sub r8, 1
jne 0x14008e490
mov rdx, rcx
cmp rdx, 4
jb 0x14008e4ea
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x14008e4ea
mov rax, qword [rsp + 8]
mov rsi, rdx
add rax, rdx
mov qword [rsp + 0x48], rdx
mov rbx, r8
mov qword [rsp + 0x40], r8
mov qword [rbp - 0x78], r11
movzx edi, byte [rax + r14]
mov rax, qword [rbp - 0x18]
mov r11, qword [rsp + 0x20]
mov r10, qword [rsp + 8]
mov rdx, qword [rsp + 0x28]
mov ecx, dword [r12 + rax*4]
mov eax, dword [rsp]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [rsi + r10]
cmp edi, eax
jne 0x14008e5d1
test r11, r11
je 0x14008e5d1
cmp r11, rdx
ja 0x14008e5d1
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r13
test rax, rax
je 0x14008e563
nop dword [rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008e961
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008e540
mov r9, qword [rsp + 0x18]
mov r8, r9
and r8d, 7
je 0x14008e585
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14008e585
inc rdx
inc rcx
sub r8, 1
jne 0x14008e570
mov rdx, rcx
cmp rdx, 4
jb 0x14008e5cc
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x14008e5cc
mov rax, qword [rsp + 8]
mov rsi, rdx
add rax, rdx
mov qword [rsp + 0x48], rdx
mov rbx, r8
mov qword [rsp + 0x40], r8
mov qword [rbp - 0x78], r11
movzx edi, byte [rax + r14]
mov rdx, qword [rsp + 0x28]
mov rax, qword [rbp - 0x10]
mov r11, qword [rsp + 0x20]
mov r10, qword [rsp + 8]
mov ecx, dword [r12 + rax*4]
mov eax, dword [rsp]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [rsi + r10]
cmp edi, eax
jne 0x14008e6ac
test r11, r11
je 0x14008e6ac
cmp r11, rdx
ja 0x14008e6ac
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r13
test rax, rax
je 0x14008e643
nop
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008e97a
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008e620
mov r9, qword [rsp + 0x18]
mov r8, r9
and r8d, 7
je 0x14008e665
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14008e665
inc rdx
inc rcx
sub r8, 1
jne 0x14008e650
mov rdx, rcx
cmp rdx, 4
jb 0x14008e6ac
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x14008e6ac
mov rax, qword [rsp + 8]
mov rsi, rdx
add rax, rdx
mov qword [rsp + 0x48], rdx
mov rbx, r8
mov qword [rsp + 0x40], r8
mov qword [rbp - 0x78], r11
movzx edi, byte [rax + r14]
mov rax, qword [rbp - 8]
mov r14, qword [rsp + 0x20]
mov r10, qword [rsp + 8]
mov r11, r14
mov ecx, dword [r12 + rax*4]
mov eax, dword [rsp]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [rsi + r10]
mov rsi, qword [rsp + 0x28]
cmp edi, eax
jne 0x14008e788
test r11, r11
je 0x14008e788
cmp r11, rsi
ja 0x14008e788
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r13
test rax, rax
je 0x14008e733
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008e993
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008e710
mov r9, qword [rsp + 0x18]
mov r8, r9
and r8d, 7
je 0x14008e755
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14008e755
inc rdx
inc rcx
sub r8, 1
jne 0x14008e740
mov rdx, rcx
cmp rdx, 4
jb 0x14008e788
bsr eax, r11d
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rbx, rax
jae 0x14008e788
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x40], rax
mov qword [rbp - 0x78], r11
mov rbx, qword [rsp + 0x10]
mov dword [r12 + r15*4], r14d
mov r15, qword [rsp + 0x18]
test r14b, 3
jne 0x14008e907
cmp r15, 0x20
jb 0x14008e907
mov r11, qword [rbx + 0x50]
cmp r11, r14
ja 0x14008e8ff
mov r12, qword [rsp + 8]
lea rdi, [r11 + 0x20]
mov r10, qword [rsp]
nop dword [rax]
nop dword [rax + rax]
mov r8d, dword [rbx + 0x40]
mov rax, r10
and rax, r11
mov r9d, r8d
imul r8d, dword [rbx + 0x5c]
and r9d, 0x3fffffff
movzx edx, byte [rax + r12]
mov rax, r10
and rax, rdi
inc edx
imul edx, dword [rbx + 0x60]
movzx ecx, byte [rax + r12]
lea eax, [r8 + 1]
sub ecx, edx
add eax, ecx
mov dword [rbx + 0x40], eax
cmp r9d, 0x1000000
jae 0x14008e8ee
mov rax, qword [rbx + 0x48]
mov r8d, dword [rax + r9*4]
mov dword [rax + r9*4], r11d
cmp r11, r14
jne 0x14008e8ee
mov eax, 0xffffffff
cmp r8, rax
je 0x14008e8ee
mov ebx, r14d
sub ebx, r8d
cmp rbx, rsi
ja 0x14008e8e9
and r10, r8
xor ecx, ecx
mov r8, r15
add r10, r12
shr r8, 3
mov rdx, r13
test r8, r8
je 0x14008e87e
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x14008e9a7
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14008e860
mov r8, r15
and r8d, 7
je 0x14008e8a3
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r10], al
jne 0x14008e8a3
inc rcx
sub r8, 1
jne 0x14008e890
mov rdx, rcx
mov r10, qword [rsp]
cmp rdx, 4
jb 0x14008e8e9
cmp rdx, qword [rsp + 0x48]
jbe 0x14008e8e9
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x40]
jbe 0x14008e8e9
mov qword [rsp + 0x48], rdx
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x40], rax
mov dword [rbp - 0x68], 0
mov rbx, qword [rsp + 0x10]
add r11, 4
add rdi, 4
cmp r11, r14
jbe 0x14008e7d0
lea rax, [r14 + 4]
mov qword [rbx + 0x50], rax
cmp qword [rsp + 0x40], 0x7e4
jbe 0x14008f4f6
mov rax, qword [rsp + 0x48]
mov dword [rsp + 0x28], 0
mov rcx, qword [rbp - 0x60]
dec r15
mov qword [rsp + 0x18], r15
cmp dword [rcx + 4], 5
jge 0x14008e9bb
dec rax
mov r13, r15
cmp rax, r15
cmovb r13, rax
jmp 0x14008e9be
xor r8, r9
mov r9, qword [rsp + 0x18]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008e4a6
xor r8, r9
mov r9, qword [rsp + 0x18]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008e588
xor r8, r9
mov r9, qword [rsp + 0x18]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008e668
xor r8, r9
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008e758
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14008e8a6
xor r13d, r13d
mov rdx, qword [rsp + 0x70]
lea r10, [r14 + 1]
mov r14, qword [rsp]
cmp r10, rdx
mov r9, qword [rsp + 8]
mov r8d, 0x7e4
mov r12, qword [rbx + 0x38]
cmovb rdx, r10
and r14, r10
mov qword [rbp - 0x10], r8
mov rax, qword [r9 + r14]
lea r8, [r9 + r14]
movzx edi, byte [r8 + r13]
movabs rcx, 0x35a7bd1e35a7bd00
imul rax, rcx
mov rcx, r10
mov qword [rbp - 0x20], r13
shr rax, 0x2c
mov rsi, r13
mov qword [rbp - 0x18], 0
mov ebx, 0x7e4
mov qword [rsp + 0x58], r10
mov qword [rsp + 0x30], rdx
movq xmm1, rax
mov qword [rsp + 0x50], r8
mov rax, qword [rsp + 0x60]
punpcklqdq xmm1, xmm1
mov dword [rbp - 8], 0
movsxd r11, dword [rax]
sub rcx, r11
cmp rcx, r10
jae 0x14008eb1b
mov r10d, dword [rsp]
and r10, rcx
add r10, r9
movzx eax, byte [r10 + r13]
cmp edi, eax
jne 0x14008eb16
mov rax, r15
xor ecx, ecx
shr rax, 3
mov rdx, r8
test rax, rax
je 0x14008ea9a
nop dword [rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008eb05
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008ea80
mov r8, r15
and r8d, 7
je 0x14008eab9
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x14008eab9
inc rcx
sub r8, 1
jne 0x14008eaa6
mov rax, rcx
mov r10, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x50]
cmp rax, 4
jb 0x14008eb1b
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rbx
jbe 0x14008eb1b
mov r13, rax
mov qword [rbp - 0x20], rax
mov rsi, rax
mov qword [rbp - 0x18], r11
add rax, qword [rsp + 8]
mov rbx, rcx
mov qword [rbp - 0x10], rcx
movzx edi, byte [rax + r14]
jmp 0x14008eb1b
xor r8, r9
tzcnt rax, r8
shr rax, 3
add rax, rcx
jmp 0x14008eabc
mov r10, qword [rsp + 0x58]
xor eax, eax
nop dword [rax]
movq xmm0, rax
punpcklqdq xmm0, xmm0
paddq xmm0, xmm2
psllq xmm0, 3
paddq xmm0, xmm1
andps xmm0, xmm3
movdqu xmmword [rbp + rax*8], xmm0
add rax, 2
cmp rax, 4
jb 0x14008eb20
mov rax, r10
mov r11, r10
mov r10, qword [rsp + 8]
shr rax, 3
and eax, 3
mov r15, qword [rbp + rax*8]
mov rax, qword [rbp]
mov ecx, dword [r12 + rax*4]
mov eax, dword [rsp]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [r10 + rsi]
cmp edi, eax
jne 0x14008ec3b
test r11, r11
je 0x14008ec3b
cmp r11, rdx
ja 0x14008ec3b
mov rax, qword [rsp + 0x18]
xor ecx, ecx
shr rax, 3
mov rdx, r8
test rax, rax
je 0x14008ebce
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008eef9
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008ebb0
mov r8, qword [rsp + 0x18]
and r8d, 7
je 0x14008ebf3
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x14008ebf3
inc rcx
sub r8, 1
jne 0x14008ebe0
mov rdx, rcx
cmp rdx, 4
jb 0x14008ec3b
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x14008ec3b
mov rax, qword [rsp + 8]
mov rsi, rdx
add rax, rdx
mov qword [rbp - 0x20], rdx
mov r13, rdx
mov qword [rbp - 0x10], r8
mov rbx, r8
mov qword [rbp - 0x18], r11
movzx edi, byte [rax + r14]
mov rax, qword [rbp + 8]
mov r10, qword [rsp + 8]
mov r11, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x30]
mov ecx, dword [r12 + rax*4]
mov eax, dword [rsp]
sub r11, rcx
and rax, rcx
add r10, rax
movzx eax, byte [r10 + rsi]
cmp edi, eax
jne 0x14008ed32
test r11, r11
je 0x14008ed32
cmp r11, rdx
ja 0x14008ed32
mov rax, qword [rsp + 0x18]
xor ecx, ecx
mov rdx, qword [rsp + 0x50]
shr rax, 3
test rax, rax
je 0x14008ecbe
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008ef0d
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008eca0
mov r8, qword [rsp + 0x18]
and r8d, 7
je 0x14008ece5
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14008ece5
inc rdx
inc rcx
sub r8, 1
jne 0x14008ecd0
mov rdx, rcx
cmp rdx, 4
jb 0x14008ed2d
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x14008ed2d
mov rax, qword [rsp + 8]
mov rsi, rdx
add rax, rdx
mov qword [rbp - 0x20], rdx
mov r13, rdx
mov qword [rbp - 0x10], r8
mov rbx, r8
mov qword [rbp - 0x18], r11
movzx edi, byte [rax + r14]
mov rdx, qword [rsp + 0x30]
mov rax, qword [rbp + 0x10]
mov r10, qword [rsp + 8]
mov r11, qword [rsp + 0x58]
mov ecx, dword [r12 + rax*4]
mov eax, dword [rsp]
sub r11, rcx
and rax, rcx
add r10, rax
movzx eax, byte [r10 + rsi]
cmp edi, eax
jne 0x14008ee1d
test r11, r11
je 0x14008ee1d
cmp r11, rdx
ja 0x14008ee1d
mov rax, qword [rsp + 0x18]
xor ecx, ecx
mov rdx, qword [rsp + 0x50]
shr rax, 3
test rax, rax
je 0x14008edae
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008ef21
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008ed90
mov r8, qword [rsp + 0x18]
and r8d, 7
je 0x14008edd5
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14008edd5
inc rdx
inc rcx
sub r8, 1
jne 0x14008edc0
mov rdx, rcx
cmp rdx, 4
jb 0x14008ee1d
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x14008ee1d
mov rax, qword [rsp + 8]
mov rsi, rdx
add rax, rdx
mov qword [rbp - 0x20], rdx
mov r13, rdx
mov qword [rbp - 0x10], r8
mov rbx, r8
mov qword [rbp - 0x18], r11
movzx edi, byte [rax + r14]
mov rax, qword [rbp + 0x18]
mov r14, qword [rsp + 0x58]
mov r10, qword [rsp + 8]
mov r11, r14
mov ecx, dword [r12 + rax*4]
mov eax, dword [rsp]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [r10 + rsi]
cmp edi, eax
jne 0x14008ef49
test r11, r11
je 0x14008ef49
cmp r11, qword [rsp + 0x30]
ja 0x14008ef49
mov rdi, qword [rsp + 0x18]
xor ecx, ecx
mov rdx, qword [rsp + 0x50]
mov rax, rdi
shr rax, 3
test rax, rax
je 0x14008ee9e
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008ef35
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14008ee80
mov r8, rdi
and r8d, 7
je 0x14008eebc
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14008eebc
inc rdx
inc rcx
sub r8, 1
jne 0x14008eea7
mov rdx, rcx
cmp rdx, 4
jb 0x14008ef49
bsr eax, r11d
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rbx, rax
jae 0x14008ef49
mov r13, rdx
mov qword [rbp - 0x20], rdx
mov rsi, rax
mov qword [rbp - 0x10], rax
mov qword [rbp - 0x18], r11
jmp 0x14008ef4d
xor r8, r9
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008ebf6
xor r8, r9
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008ece8
xor r8, r9
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008edd8
xor r8, r9
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14008eebf
mov rsi, qword [rbp - 0x10]
mov rbx, qword [rsp + 0x10]
mov dword [r12 + r15*4], r14d
mov r15, qword [rsp + 0x18]
test r14b, 3
jne 0x14008f0d7
cmp r15, 0x20
jb 0x14008f0d7
mov r11, qword [rbx + 0x50]
cmp r11, r14
ja 0x14008f0cf
mov r12, qword [rsp + 8]
lea rdi, [r11 + 0x20]
mov r10, qword [rsp]
nop dword [rax]
mov r8d, dword [rbx + 0x40]
mov rax, r10
and rax, r11
mov r9d, r8d
imul r8d, dword [rbx + 0x5c]
and r9d, 0x3fffffff
movzx edx, byte [rax + r12]
mov rax, rdi
and rax, r10
inc edx
imul edx, dword [rbx + 0x60]
movzx ecx, byte [rax + r12]
lea eax, [r8 + 1]
sub ecx, edx
add eax, ecx
mov dword [rbx + 0x40], eax
cmp r9d, 0x1000000
jae 0x14008f0ba
mov rax, qword [rbx + 0x48]
mov r8d, dword [rax + r9*4]
mov dword [rax + r9*4], r11d
cmp r11, r14
jne 0x14008f0ba
mov eax, 0xffffffff
cmp r8, rax
je 0x14008f0ba
mov ebx, r14d
sub ebx, r8d
cmp rbx, qword [rsp + 0x30]
ja 0x14008f0b5
mov rdx, qword [rsp + 0x50]
and r10, r8
mov r8, r15
add r10, r12
shr r8, 3
xor eax, eax
test r8, r8
je 0x14008f04e
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdx]
mov rcx, qword [rax + r10]
cmp r9, rcx
jne 0x14008f13a
add rdx, 8
add rax, 8
sub r8, 1
jne 0x14008f030
mov r8, r15
and r8d, 7
je 0x14008f073
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
cmp byte [rax + r10], cl
jne 0x14008f073
inc rax
sub r8, 1
jne 0x14008f060
mov rdx, rax
mov r10, qword [rsp]
cmp rdx, 4
jb 0x14008f0b5
cmp rdx, r13
jbe 0x14008f0b5
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, rsi
jbe 0x14008f0b5
mov r13, rdx
mov qword [rbp - 0x20], rdx
mov qword [rbp - 0x18], rbx
mov rsi, rax
mov dword [rbp - 8], 0
mov rbx, qword [rsp + 0x10]
add r11, 4
add rdi, 4
cmp r11, r14
jbe 0x14008ef90
mov qword [rbp - 0x10], rsi
lea rax, [r14 + 4]
mov qword [rbx + 0x50], rax
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
add rax, 0xaf
cmp rsi, rax
jb 0x14008f154
mov ecx, dword [rsp + 0x28]
inc r12
movups xmm0, xmmword [rbp - 0x20]
inc ecx
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x38], r12
mov dword [rsp + 0x28], ecx
movups xmm1, xmmword [rbp - 0x10]
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm1
cmp ecx, 4
jge 0x14008f14e
lea rax, [r14 + 8]
cmp rax, qword [rsp + 0x68]
jae 0x14008f14e
mov rax, qword [rbp - 0x70]
mov qword [rsp + 0x40], rax
mov rax, qword [rbp - 0x80]
mov qword [rsp + 0x48], rax
jmp 0x14008e923
xor rcx, r9
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x14008f076
mov r13, qword [rbp - 0x80]
jmp 0x14008f15e
mov r14, qword [rsp + 0x20]
mov r13, qword [rsp + 0x48]
mov r9, qword [rsp + 0x70]
lea r15, [r14 + r13*2]
add r15, qword [rbp - 0x50]
mov rax, qword [rbp - 0x48]
mov rbx, qword [rbp - 0x78]
add rax, r14
mov r10, qword [rsp + 0x60]
cmp rax, r9
mov qword [rsp + 0x50], r15
cmovb r9, rax
cmp rbx, r9
ja 0x14008f20a
movsxd rax, dword [r10]
lea rcx, [rbx + 3]
movsxd r8, dword [r10 + 4]
mov rdx, rcx
sub rdx, rax
sub rcx, r8
cmp rbx, rax
jne 0x14008f1aa
xor r8d, r8d
jmp 0x14008f20e
cmp rbx, r8
jne 0x14008f1b7
mov r8d, 1
jmp 0x14008f20e
cmp rdx, 7
jae 0x14008f1d2
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14008f20e
cmp rcx, 7
jae 0x14008f1ea
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14008f20e
movsxd rax, dword [r10 + 8]
cmp rbx, rax
jne 0x14008f1fb
mov r8d, 2
jmp 0x14008f20e
movsxd rax, dword [r10 + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x14008f20e
lea r8, [rbx + 0xf]
cmp rbx, r9
ja 0x14008f232
test r8, r8
je 0x14008f232
mov eax, dword [r10 + 8]
mov dword [r10 + 0xc], eax
mov eax, dword [r10 + 4]
mov dword [r10 + 8], eax
mov eax, dword [r10]
mov dword [r10 + 4], eax
mov dword [r10], ebx
mov r15, qword [rsp + 0x78]
mov esi, dword [rbp - 0x68]
mov rcx, qword [rbp - 0x60]
movzx eax, sil
shl eax, 0x19
or eax, r13d
mov dword [r15], r12d
mov dword [r15 + 4], eax
mov r14d, dword [rcx + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x14008f260
xor edi, edi
jmp 0x14008f2d4
mov r11d, dword [rcx + 0x40]
mov r10d, 1
lea ecx, [r11 + 2]
shl r10, cl
sub r10, r14
add r10, 0xfffffffffffffff0
add r10, r8
bsr eax, r10d
mov rdx, r10
mov rdi, r10
dec eax
mov ecx, eax
mov r9d, eax
shr rdx, cl
sub r9, r11
and edx, 1
lea r8, [r9 - 1]
shl r9, 0xa
lea r8, [rdx + r8*2]
lea rax, [rdx + 2]
shl rax, cl
mov ecx, r11d
sub rdi, rax
shl r8, cl
add r8w, 0x10
shr rdi, cl
mov eax, 1
shl ax, cl
dec ax
and ax, r10w
add r8w, ax
add r8w, r14w
or r8w, r9w
mov word [r15 + 0xe], r8w
lea edx, [rsi + r13]
mov eax, 0x3ff
mov dword [r15 + 8], edi
and r8w, ax
movsxd r9, edx
cmp r12, 6
jae 0x14008f2fe
movzx r10d, r12w
mov eax, 0x17
jmp 0x14008f373
cmp r12, 0x82
jae 0x14008f32a
lea eax, [r12 - 2]
bsr ecx, eax
lea r10, [r12 - 2]
mov eax, 0x17
dec ecx
shr r10, cl
inc cx
add cx, cx
add r10w, cx
jmp 0x14008f373
cmp r12, 0x842
jae 0x14008f348
lea eax, [r12 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x14008f373
mov eax, 0x17
cmp r12, 0x1842
jae 0x14008f35e
mov r10d, reloc.WS2_32.dll_setsockopt
jmp 0x14008f373
cmp r12, 0x5842
jae 0x14008f36f
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x14008f373
movzx r10d, ax
cmp r9, 0xa
jae 0x14008f380
sub r9w, 2
jmp 0x14008f3c0
cmp r9, 0x86
jae 0x14008f3a5
add r9, 0xfffffffffffffffa
lea eax, [rdx - 6]
bsr ecx, eax
dec ecx
shr r9, cl
add cx, 2
add cx, cx
add r9w, cx
jmp 0x14008f3c0
cmp r9, 0x846
jae 0x14008f3bc
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x14008f3c0
movzx r9d, ax
movzx edx, r10w
movzx eax, r9w
and dx, 7
and ax, 7
shl dx, 3
or dx, ax
test r8w, r8w
jne 0x14008f3f8
cmp r10w, 8
jae 0x14008f3f8
cmp r9w, 0x10
jae 0x14008f3f8
cmp r9w, 8
jb 0x14008f42c
or dx, 0x40
jmp 0x14008f42c
movzx eax, r10w
mov r8d, 0xc0
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, r9w
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, r8w
add ax, cx
or dx, ax
mov rax, qword [rbp - 0x40]
xor r9d, r9d
mov r14, qword [rsp + 0x20]
mov r8, qword [rbp - 0x58]
mov word [r15 + 0xc], dx
add r15, 0x10
add qword [rax], r12
lea rax, [r14 + r13]
mov qword [rsp + 0x78], r15
cmp rax, r8
mov qword [rsp + 0x38], r9
lea rdx, [r14 + 2]
cmovb r8, rax
mov rax, r13
shr rax, 2
cmp rbx, rax
jae 0x14008f48f
lea rax, [rbx*4]
mov rcx, r14
sub rcx, rax
add rcx, r13
cmp rdx, rcx
cmova rcx, rdx
cmp r8, rcx
mov rdx, rcx
cmovb rdx, r8
mov r10, qword [rsp + 0x10]
cmp rdx, r8
jae 0x14008f4e9
mov r14, qword [rsp + 8]
movabs r9, 0x35a7bd1e35a7bd00
nop dword [rax + rax]
mov rax, qword [rsp]
and rax, rdx
mov rcx, qword [rax + r14]
mov eax, edx
imul rcx, r9
and eax, 0x18
shr rcx, 0x2c
add ecx, eax
mov rax, qword [r10 + 0x38]
and ecx, 0xfffff
mov dword [rax + rcx*4], edx
inc rdx
cmp rdx, r8
jb 0x14008f4b0
mov r14, qword [rsp + 0x20]
mov r9, qword [rsp + 0x38]
add r14, r13
mov qword [rsp + 0x20], r14
jmp 0x14008f63e
mov r9, qword [rsp + 0x38]
inc r14
mov r15, qword [rsp + 0x50]
inc r9
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x20], r14
cmp r14, r15
jbe 0x14008f639
mov rax, qword [rbp - 0x50]
mov rdx, qword [rsp + 0x68]
mov r11, qword [rsp]
add rdx, 0xfffffffffffffff9
lea rax, [r15 + rax*4]
mov r15, qword [rsp + 8]
cmp r14, rax
jbe 0x14008f5b5
lea rax, [r14 + 0x10]
cmp rax, rdx
cmovb rdx, rax
cmp r14, rdx
jae 0x14008f632
add r9, 4
mov rax, rdx
sub rax, r14
dec rax
and rax, 0xfffffffffffffffc
add r9, rax
mov qword [rsp + 0x38], r9
movabs r9, 0x35a7bd1e35a7bd00
nop
mov rax, r11
and rax, r14
mov rcx, qword [rax + r15]
mov eax, r14d
imul rcx, r9
and eax, 0x18
shr rcx, 0x2c
add ecx, eax
mov rax, qword [rbx + 0x38]
and ecx, 0xfffff
mov dword [rax + rcx*4], r14d
add r14, 4
cmp r14, rdx
jb 0x14008f570
mov r10, qword [rsp + 0x10]
mov r9, qword [rsp + 0x38]
mov qword [rsp + 0x20], r14
jmp 0x14008f647
lea rax, [r14 + 8]
cmp rax, rdx
cmovb rdx, rax
cmp r14, rdx
jae 0x14008f632
add r9, 2
mov rax, rdx
sub rax, r14
dec rax
and rax, 0xfffffffffffffffe
add r9, rax
mov qword [rsp + 0x38], r9
movabs r9, 0x35a7bd1e35a7bd00
nop dword [rax + rax]
mov rax, r11
and rax, r14
mov rcx, qword [rax + r15]
mov eax, r14d
imul rcx, r9
and eax, 0x18
shr rcx, 0x2c
add ecx, eax
mov rax, qword [rbx + 0x38]
and ecx, 0xfffff
mov dword [rax + rcx*4], r14d
add r14, 2
cmp r14, rdx
jb 0x14008f5f0
mov r10, qword [rsp + 0x10]
mov r9, qword [rsp + 0x38]
mov qword [rsp + 0x20], r14
jmp 0x14008f647
mov r10, qword [rsp + 0x10]
jmp 0x14008f647
mov r10, qword [rsp + 0x10]
mov r11, qword [rsp]
mov r15, qword [rsp + 8]
mov rdx, qword [rsp + 0x68]
lea rax, [r14 + 8]
mov r8, qword [rsp + 0x60]
movabs rcx, 0x35a7bd1e35a7bd00
mov rdi, qword [rsp + 0x70]
cmp rax, rdx
jb 0x14008e270
mov rbx, qword [rsp + 0x78]
mov r12, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x28]
sub rdx, r14
sub rbx, rcx
add rdx, r9
sar rbx, 4
mov qword [rax], rdx
add qword [r12], rbx
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.1400ba850
add rsp, 0x138
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xf0
mov r14, qword [rbp + 0x87]
mov rax, rcx
mov rsi, qword [rbp + 0x8f]
mov r11, r8
mov r8, qword [rbp + 0x6f]
mov r10d, 1
mov r13, r9
mov qword [rbp - 0x19], rsi
mov r14, qword [r14]
lea rbx, [rax + rdx]
mov r15, rdx
mov qword [rsp + 0x30], r14
mov ecx, dword [r8 + 8]
shl r10, cl
mov rcx, qword [r8 + 0x10]
sub r10, 0x10
mov qword [rbp - 0x59], r10
mov qword [rsp + 0x58], rcx
mov qword [rbp - 0x61], rbx
cmp rax, 8
jb 0x14008f745
lea rax, [rbx - 7]
mov qword [rbp - 0x29], rax
jmp 0x14008f749
mov qword [rbp - 0x29], r15
cmp dword [r8 + 4], 9
mov edx, 0x40
mov rdi, qword [rbp + 0x77]
mov eax, 0x200
cmovl eax, edx
mov qword [rbp - 0x21], rax
add rax, r15
mov qword [rsp + 0x60], rax
mov edx, dword [rdi + 0x58]
cmp edx, 4
jle 0x14008f9bb
mov r9, qword [rbp + 0x7f]
cmp edx, 0xa
mov rdx, r9
mov ecx, dword [r9]
lea eax, [rcx - 1]
mov dword [r9 + 0x10], eax
lea eax, [rcx + 1]
mov dword [r9 + 0x14], eax
lea eax, [rcx - 2]
mov dword [r9 + 0x18], eax
lea eax, [rcx + 2]
mov dword [r9 + 0x1c], eax
lea eax, [rcx - 3]
mov dword [r9 + 0x20], eax
lea eax, [rcx + 3]
mov dword [r9 + 0x24], eax
jle 0x14008f7d7
mov ecx, dword [rdx + 4]
lea eax, [rcx - 1]
mov dword [rdx + 0x28], eax
lea eax, [rcx + 1]
mov dword [rdx + 0x2c], eax
lea eax, [rcx - 2]
mov dword [rdx + 0x30], eax
lea eax, [rcx + 2]
mov dword [rdx + 0x34], eax
lea eax, [rcx - 3]
mov dword [rdx + 0x38], eax
lea eax, [rcx + 3]
mov dword [rdx + 0x3c], eax
mov rcx, qword [rsp + 0x58]
lea rax, [r15 + 8]
cmp rax, rbx
jae 0x140090ae1
mov qword [rsp + 0xe8], r12
movsxd rsi, dword [rdi + 0x58]
lea rax, [rcx + r15]
mov r14, qword [rdi + 0x70]
mov r12, rbx
sub r12, r15
mov qword [rsp + 0x38], 0x7e4
cmp r15, r10
mov qword [rsp + 8], r12
mov r9, r10
mov qword [rsp + 0x50], r14
cmovb r9, r15
mov rcx, r10
mov r15, qword [rdi + 0x68]
cmp rax, r10
mov qword [rsp + 0x18], r9
cmovb rcx, rax
mov qword [rsp + 0x40], r15
mov rax, qword [r8 + 0x50]
xor r10d, r10d
mov qword [rsp + 0x48], rax
mov ebx, r10d
mov rax, qword [rbp + 0x4f]
mov r8, rax
mov qword [rsp], rcx
and r8, r13
mov qword [rbp - 0x41], r10
mov qword [rsp + 0x10], r8
mov ecx, 0x7e4
mov qword [rsp + 0x20], r10
mov dword [rbp - 0x31], r10d
mov qword [rsp + 0x28], rcx
mov qword [rbp + 0x47], r10
test rsi, rsi
je 0x14008fa0f
mov r15, qword [rsp + 0x10]
xor r8d, r8d
mov r14, qword [rbp + 0x57]
mov qword [rbp + 0x47], r8
mov qword [rsp + 0x28], rcx
movsxd rdi, dword [rdx + rbx*4]
mov rcx, rax
sub rcx, rdi
cmp rcx, rax
jae 0x14008f9ec
cmp rdi, r9
ja 0x14008f9ec
and rcx, r13
lea rdx, [r10 + r15]
cmp rdx, r13
ja 0x14008f9e8
lea rax, [rcx + r10]
cmp rax, r13
ja 0x14008f9e4
movzx eax, byte [rax + r14]
cmp byte [rdx + r14], al
jne 0x14008f9e4
lea r11, [rcx + r14]
mov rcx, r8
mov r8, r12
lea rdx, [r15 + r14]
shr r8, 3
test r8, r8
je 0x14008f91e
mov r10, r11
sub r10, rdx
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14008f9c4
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14008f900
mov r8, r12
and r8d, 7
je 0x14008f943
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x14008f943
inc rcx
sub r8, 1
jne 0x14008f930
mov r8, rcx
cmp r8, 3
jae 0x14008f95f
cmp r8, 2
jne 0x14008f9d8
cmp rbx, r8
jae 0x14008f9d8
mov r11, qword [rsp + 0x28]
imul r9, r8, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x14008f9d8
test rbx, rbx
je 0x14008f99f
movzx ecx, bl
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r11, r9
jae 0x14008f9d8
mov qword [rsp + 0x28], r9
mov r10, r8
mov qword [rbp + 0x47], r8
mov qword [rsp + 0x20], r8
mov qword [rbp - 0x41], rdi
mov qword [rsp + 0x38], r9
jmp 0x14008f9dc
mov rdx, qword [rbp + 0x7f]
jmp 0x14008f7dc
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x14008f946
mov r10, qword [rbp + 0x47]
mov r9, qword [rsp + 0x18]
xor r8d, r8d
mov rax, qword [rbp + 0x4f]
mov rdx, qword [rbp + 0x7f]
inc rbx
cmp rbx, rsi
jb 0x14008f893
mov r15, qword [rsp + 0x40]
mov r14, qword [rsp + 0x50]
mov r8, qword [rsp + 0x10]
mov r11, qword [rbp + 0x57]
mov rdi, qword [rbp + 0x77]
mov ecx, dword [rdi + 0x40]
lea r12, [r8 + r11]
mov rdx, qword [r12]
movabs rax, 0x1fe35a7bd3579bd3
and rdx, qword [rdi + 0x48]
imul rdx, rax
shr rdx, cl
mov ecx, dword [rdi + 0x54]
mov eax, edx
shl eax, cl
lea r14, [r14 + rax*4]
mov eax, edx
movzx edx, word [r15 + rax*2]
mov esi, edx
sub rsi, qword [rdi + 0x38]
cmp rdx, qword [rdi + 0x38]
lea r13, [r15 + rax*2]
mov eax, 0
mov qword [rsp + 0x40], r13
cmovbe rsi, rax
mov edi, edx
cmp rdx, rsi
jbe 0x14008fba1
mov rax, qword [rbp + 0x77]
mov r13, qword [rsp + 8]
mov r15d, dword [rax + 0x50]
nop word [rax + rax]
mov rbx, qword [rbp + 0x4f]
dec rdi
mov rax, r15
and rax, rdi
mov ecx, dword [r14 + rax*4]
sub rbx, rcx
cmp rbx, r9
ja 0x14008fb97
and rcx, qword [rbp + 0x5f]
lea rdx, [r10 + r8]
cmp rdx, qword [rbp + 0x5f]
ja 0x14008fb8e
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x5f]
ja 0x14008fb8e
movzx eax, byte [rax + r11]
cmp byte [rdx + r11], al
jne 0x14008fb8e
add r11, rcx
xor eax, eax
mov r8, r13
mov rdx, r12
shr r8, 3
mov ecx, eax
test r8, r8
je 0x14008fb0a
mov r10, r11
sub r10, r12
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14008fb79
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14008faf0
mov r8, r13
and r8d, 7
je 0x14008fb29
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x14008fb29
inc rcx
sub r8, 1
jne 0x14008fb16
mov rdx, rcx
mov r8, qword [rsp + 0x10]
mov r9, qword [rsp + 0x18]
mov r11, qword [rbp + 0x57]
cmp rdx, 4
jb 0x14008fb8a
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp qword [rsp + 0x28], rax
jae 0x14008fb8a
mov qword [rsp + 0x28], rax
mov r10, rdx
mov qword [rbp + 0x47], rdx
mov qword [rsp + 0x20], rdx
mov qword [rbp - 0x41], rbx
mov qword [rsp + 0x38], rax
jmp 0x14008fb8e
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14008fb2c
mov r10, qword [rbp + 0x47]
cmp rdi, rsi
ja 0x14008fa80
mov r13, qword [rsp + 0x40]
movzx edx, word [r13]
mov rsi, qword [rbp + 0x77]
mov r15, qword [rbp + 0x4f]
mov eax, dword [rsi + 0x50]
and rax, rdx
mov dword [r14 + rax*4], r15d
inc word [r13]
cmp qword [rsp + 0x38], 0x7e4
jne 0x14008fec2
mov r13, qword [rsi + 0x60]
mov rcx, qword [r13 + 8]
mov r14, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r14, rax
jb 0x14008fec2
imul ebx, dword [r12], 0x1e35a7bd
lea r15, [rcx + 1]
mov r8, qword [rbp + 0x6f]
mov rdx, qword [rsp + 8]
mov qword [r13 + 8], r15
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x14008fd52
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x14008fd52
mov rdi, qword [r8 + 0x58]
mov eax, ecx
imul rax, rsi
mov edx, dword [rdi + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rdi + 0xa8]
xor eax, eax
mov ecx, eax
test r8, r8
je 0x14008fc7e
mov r10, r12
sub r10, rdx
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14008fd3e
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14008fc60
mov r8, r11
and r8d, 7
je 0x14008fca3
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r12], al
jne 0x14008fca3
inc rcx
sub r8, 1
jne 0x14008fc90
mov r9, rcx
mov rcx, qword [rbp + 0x6f]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008fd58
test r9, r9
je 0x14008fd58
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [rcx + 0x68]
add al, al
movzx ecx, al
shr rdx, cl
movzx ecx, byte [r11 + rdi]
and edx, 0x3f
lea rax, [rdx + r8*4]
shl rax, cl
add rax, rsi
mov rsi, qword [rsp]
lea rdx, [rsi + 1]
add rdx, rax
cmp rdx, qword [rsp + 0x48]
ja 0x14008fd5c
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x38]
jb 0x14008fd5c
mov qword [rsp + 0x38], rax
sub r11d, r9d
lea rax, [r14 + 1]
mov qword [rsp + 0x20], r9
mov qword [r13 + 0x10], rax
mov dword [rbp - 0x31], r11d
mov qword [rbp - 0x41], rdx
jmp 0x14008fd5c
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14008fca6
mov rsi, qword [rsp]
jmp 0x14008fd61
mov rsi, qword [rsp]
mov rdx, qword [rsp + 8]
mov r14, qword [rbp + 0x6f]
lea rax, [r15 + 1]
mov qword [r13 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rax + rbx + 1]
test cl, cl
je 0x14008feb8
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x14008feb8
mov rbx, qword [r14 + 0x58]
mov eax, ecx
imul rax, rdi
mov edx, dword [rbx + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rbx + 0xa8]
xor eax, eax
mov ecx, eax
test r8, r8
je 0x14008fdee
mov r10, r12
sub r10, rdx
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14008fea4
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14008fdd0
mov r8, r11
and r8d, 7
je 0x14008fe0c
movzx eax, byte [rdx]
cmp byte [rcx + r12], al
jne 0x14008fe0c
inc rdx
inc rcx
sub r8, 1
jne 0x14008fdf7
mov r9, rcx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008feb8
test r9, r9
je 0x14008feb8
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r14 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [r11 + rbx]
and edx, 0x3f
lea rdx, [rdx + r8*4]
shl rdx, cl
inc rdx
add rdx, rdi
add rdx, rsi
cmp rdx, qword [rsp + 0x48]
ja 0x14008feb8
mov r15, qword [rbp + 0x4f]
mov rsi, qword [rbp + 0x77]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x38]
jb 0x14008fec6
sub r11d, r9d
mov qword [rbp - 0x41], rdx
inc qword [r13 + 0x10]
mov rcx, r9
mov qword [rsp + 0x20], rcx
mov dword [rbp - 0x31], r11d
mov qword [rsp + 0x38], rax
jmp 0x14008fecb
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14008fe0f
mov r15, qword [rbp + 0x4f]
mov rsi, qword [rbp + 0x77]
jmp 0x14008fec6
mov r14, qword [rbp + 0x6f]
mov rcx, qword [rsp + 0x20]
cmp qword [rsp + 0x38], 0x7e4
jbe 0x140090b15
mov r12, qword [rsp + 8]
xor r13d, r13d
mov dword [rbp + 0x47], r13d
dec r12
cmp dword [r14 + 4], 5
mov qword [rsp + 8], r12
jge 0x14008ff05
lea rax, [rcx - 1]
mov r10, r12
cmp rax, r12
cmovb r10, rax
jmp 0x14008ff08
mov r10, r13
mov r8, qword [rbp - 0x59]
lea rdx, [r15 + 1]
mov rax, qword [rsp + 0x58]
cmp rdx, r8
mov r9, qword [rbp + 0x5f]
mov r11, r8
cmovb r11, rdx
mov qword [rsp + 0x18], r10
inc rax
mov qword [rbp - 0x79], r13
add rax, r15
mov qword [rbp - 0x71], 0x7e4
mov r15, qword [rsi + 0x70]
cmp rax, r8
mov rcx, r8
mov qword [rsp], rdx
cmovb rcx, rax
mov qword [rsp + 0x28], r11
mov rax, qword [r14 + 0x50]
mov r8, rdx
mov r14, qword [rsi + 0x68]
and r8, r9
movsxd rsi, dword [rsi + 0x58]
mov rbx, r13
mov qword [rsp + 0x48], rcx
mov ecx, 0x7e4
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x10], r14
mov qword [rbp - 0x51], r15
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x68], r13
mov dword [rbp - 0x69], r13d
mov qword [rsp + 0x50], rcx
test rsi, rsi
je 0x140090114
mov r15, qword [rbp + 0x57]
mov r14, r8
mov rax, qword [rbp + 0x7f]
mov qword [rsp + 0x50], rcx
nop word [rax + rax]
movsxd rdi, dword [rax + rbx*4]
mov rcx, rdx
sub rcx, rdi
cmp rcx, rdx
jae 0x1400900fa
cmp rdi, r11
ja 0x1400900fa
and rcx, r9
lea rdx, [r10 + r14]
cmp rdx, r9
ja 0x1400900f6
lea rax, [rcx + r10]
cmp rax, r9
ja 0x1400900f2
movzx eax, byte [rax + r15]
cmp byte [rdx + r15], al
jne 0x1400900f2
mov r8, r12
lea rdx, [r14 + r15]
shr r8, 3
lea r11, [rcx + r15]
mov rax, r13
test r8, r8
je 0x14009003e
mov r10, r11
sub r10, rdx
nop word [rax + rax]
mov r9, qword [rdx]
mov rcx, qword [r10 + rdx]
cmp r9, rcx
jne 0x1400900d3
add rdx, 8
add rax, 8
sub r8, 1
jne 0x140090020
mov r8, r12
and r8d, 7
je 0x140090063
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
cmp byte [rax + r11], cl
jne 0x140090063
inc rax
sub r8, 1
jne 0x140090050
mov r8, rax
cmp r8, 3
jae 0x140090077
cmp r8, 2
jne 0x1400900e4
cmp rbx, r8
jae 0x1400900e4
mov r11, qword [rsp + 0x50]
imul r9, r8, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x1400900e4
test rbx, rbx
je 0x1400900b7
movzx ecx, bl
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r11, r9
jae 0x1400900e4
mov qword [rsp + 0x50], r9
mov r10, r8
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x68], r8
mov qword [rbp - 0x79], rdi
mov qword [rbp - 0x71], r9
jmp 0x1400900e9
xor rcx, r9
tzcnt r8, rcx
shr r8, 3
add r8, rax
jmp 0x140090066
mov r10, qword [rsp + 0x18]
mov r11, qword [rsp + 0x28]
mov r9, qword [rbp + 0x5f]
mov rax, qword [rbp + 0x7f]
mov rdx, qword [rsp]
inc rbx
cmp rbx, rsi
jb 0x14008ffb0
mov r14, qword [rsp + 0x10]
mov r15, qword [rbp - 0x51]
mov r8, qword [rsp + 0x40]
mov rbx, qword [rbp + 0x77]
movabs rax, 0x1fe35a7bd3579bd3
mov r9, qword [rbp + 0x57]
add r9, r8
mov qword [rsp + 0x10], r9
mov ecx, dword [rbx + 0x40]
mov rdx, qword [r9]
and rdx, qword [rbx + 0x48]
imul rdx, rax
shr rdx, cl
mov ecx, dword [rbx + 0x54]
mov eax, edx
shl eax, cl
lea r15, [r15 + rax*4]
mov eax, edx
movzx r13d, word [r14 + rax*2]
lea r12, [r14 + rax*2]
mov esi, r13d
mov qword [rbp - 0x51], r12
sub rsi, qword [rbx + 0x38]
mov eax, 0
cmp r13, qword [rbx + 0x38]
mov edi, r13d
cmovbe rsi, rax
cmp r13, rsi
jbe 0x1400902cc
mov r14d, dword [rbx + 0x50]
mov r13, qword [rsp]
mov r12, qword [rsp + 8]
nop word [rax + rax]
dec rdi
mov rax, r14
and rax, rdi
mov rbx, r13
mov ecx, dword [r15 + rax*4]
sub rbx, rcx
cmp rbx, r11
ja 0x1400902c3
and rcx, qword [rbp + 0x5f]
lea rdx, [r10 + r8]
cmp rdx, qword [rbp + 0x5f]
ja 0x1400902ba
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x5f]
ja 0x1400902ba
mov r13, qword [rbp + 0x57]
movzx eax, byte [rax + r13]
cmp byte [rdx + r13], al
mov r13, qword [rsp]
jne 0x1400902ba
mov r11, qword [rbp + 0x57]
xor eax, eax
add r11, rcx
mov r8, r12
shr r8, 3
mov rdx, r9
mov ecx, eax
test r8, r8
je 0x14009022e
mov r10, r11
sub r10, r9
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x1400902a4
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140090210
mov r8, r12
and r8d, 7
je 0x140090253
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x140090253
inc rcx
sub r8, 1
jne 0x140090240
mov rdx, rcx
mov r9, qword [rsp + 0x10]
mov r8, qword [rsp + 0x40]
mov r11, qword [rsp + 0x28]
cmp rdx, 4
jb 0x1400902b5
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp qword [rsp + 0x50], rax
jae 0x1400902b5
mov qword [rsp + 0x50], rax
mov r10, rdx
mov qword [rsp + 0x18], rdx
mov qword [rsp + 0x68], rdx
mov qword [rbp - 0x79], rbx
mov qword [rbp - 0x71], rax
jmp 0x1400902ba
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140090256
mov r10, qword [rsp + 0x18]
cmp rdi, rsi
ja 0x140090190
mov r12, qword [rbp - 0x51]
movzx r13d, word [r12]
mov rsi, qword [rbp + 0x77]
mov rcx, qword [rsp]
mov eax, dword [rsi + 0x50]
and rax, r13
mov dword [r15 + rax*4], ecx
inc word [r12]
mov r12, qword [rbp - 0x71]
cmp r12, 0x7e4
jne 0x1400905fc
mov r13, qword [rsi + 0x60]
mov rcx, qword [r13 + 8]
mov r14, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r14, rax
jb 0x1400905f8
imul ebx, dword [r9], 0x1e35a7bd
lea r15, [rcx + 1]
mov r8, qword [rbp + 0x6f]
mov rdx, qword [rsp + 8]
mov qword [r13 + 8], r15
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x140090497
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x140090497
mov rdi, qword [r8 + 0x58]
mov eax, ecx
imul rax, rsi
mov edx, dword [rdi + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rdi + 0xa8]
xor eax, eax
mov ecx, eax
test r8, r8
je 0x1400903b3
mov r10, r9
sub r10, rdx
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x140090479
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140090390
mov r9, qword [rsp + 0x10]
mov r8, r11
and r8d, 7
je 0x1400903d3
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r9], al
jne 0x1400903d3
inc rcx
sub r8, 1
jne 0x1400903c0
mov r9, rcx
mov rcx, qword [rbp + 0x6f]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14009048d
test r9, r9
je 0x14009048d
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [rcx + 0x68]
add al, al
movzx ecx, al
shr rdx, cl
movzx ecx, byte [rdi + r11]
and edx, 0x3f
lea rax, [rdx + r8*4]
shl rax, cl
add rax, rsi
mov rsi, qword [rsp + 0x48]
lea rdx, [rsi + 1]
add rdx, rax
cmp rdx, qword [rsp + 0x60]
ja 0x14009046d
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r12
jb 0x14009046d
mov r12, rax
mov qword [rbp - 0x71], rax
lea rax, [r14 + 1]
mov qword [rsp + 0x68], r9
sub r11d, r9d
mov qword [r13 + 0x10], rax
mov dword [rbp - 0x69], r11d
mov qword [rbp - 0x79], rdx
mov r9, qword [rsp + 0x10]
mov rdx, qword [rsp + 8]
jmp 0x14009049c
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x1400903d6
mov rdx, qword [rsp + 8]
mov r9, qword [rsp + 0x10]
mov rsi, qword [rsp + 0x48]
mov r14, qword [rbp + 0x6f]
lea rax, [r15 + 1]
mov qword [r13 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rbx + rax + 1]
test cl, cl
je 0x1400905ee
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x1400905ee
mov rbx, qword [r14 + 0x58]
mov eax, ecx
imul rax, rdi
mov edx, dword [rbx + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rbx + 0xa8]
xor eax, eax
mov ecx, eax
test r8, r8
je 0x14009051e
mov r10, r9
sub r10, rdx
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x1400905da
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140090500
mov r8, r11
and r8d, 7
je 0x140090545
mov r9, qword [rsp + 0x10]
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r9], al
jne 0x140090545
inc rdx
inc rcx
sub r8, 1
jne 0x140090530
mov r9, rcx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x1400905ee
test r9, r9
je 0x1400905ee
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r14 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [rbx + r11]
and edx, 0x3f
lea rdx, [rdx + r8*4]
shl rdx, cl
inc rdx
add rdx, rdi
add rdx, rsi
cmp rdx, qword [rsp + 0x60]
ja 0x1400905ee
mov rsi, qword [rbp + 0x77]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
mov rcx, qword [rsp]
add rax, 0x780
cmp rax, r12
jb 0x140090600
sub r11d, r9d
mov qword [rsp + 0x68], r9
inc qword [r13 + 0x10]
mov r12, rax
mov dword [rbp - 0x69], r11d
mov qword [rbp - 0x79], rdx
mov qword [rbp - 0x71], rax
jmp 0x140090600
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140090548
mov rcx, qword [rsp]
mov rsi, qword [rbp + 0x77]
jmp 0x140090600
mov rcx, qword [rsp]
mov r14, qword [rbp + 0x6f]
mov rax, qword [rsp + 0x38]
add rax, 0xaf
cmp r12, rax
jb 0x14009066c
movups xmm0, xmmword [rsp + 0x68]
inc qword [rsp + 0x30]
mov r15, rcx
movups xmm1, xmmword [rbp - 0x71]
mov qword [rbp + 0x4f], rcx
mov ecx, dword [rbp + 0x47]
inc ecx
mov dword [rbp + 0x47], ecx
movups xmmword [rbp - 0x49], xmm0
movups xmmword [rbp - 0x39], xmm1
cmp ecx, 4
jge 0x140090666
lea rax, [r15 + 8]
cmp rax, qword [rbp - 0x61]
jae 0x140090666
mov r12, qword [rsp + 8]
mov r9, qword [rbp - 0x39]
dec r12
mov rcx, qword [rbp - 0x49]
xor r13d, r13d
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x20], rcx
jmp 0x14008fee9
mov r13, qword [rbp - 0x49]
jmp 0x140090675
mov r15, qword [rbp + 0x4f]
mov r13, qword [rsp + 0x20]
mov rax, qword [rbp - 0x21]
mov r10, qword [rbp - 0x59]
mov r11, qword [rbp + 0x7f]
mov rdi, qword [rbp - 0x41]
lea r12, [rax + r13*2]
mov rax, qword [rsp + 0x58]
add rax, r15
add r12, r15
cmp rax, r10
mov qword [rsp + 0x60], r12
lea rdx, [r11 + 4]
cmovb r10, rax
cmp rdi, r10
ja 0x14009072e
movsxd rax, dword [r11]
lea rcx, [rdi + 3]
movsxd r9, dword [rdx]
mov r8, rcx
sub r8, rax
sub rcx, r9
cmp rdi, rax
jne 0x1400906cd
xor r9d, r9d
mov r8d, r9d
jmp 0x140090735
cmp rdi, r9
jne 0x1400906da
mov r8d, 1
jmp 0x140090732
cmp r8, 7
jae 0x1400906f6
movzx ecx, r8b
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x140090732
cmp rcx, 7
jae 0x14009070e
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x140090732
movsxd rax, dword [r11 + 8]
cmp rdi, rax
jne 0x14009071f
mov r8d, 2
jmp 0x140090732
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp rdi, rax
je 0x140090732
lea r8, [rdi + 0xf]
xor r9d, r9d
cmp rdi, r10
ja 0x1400907b6
test r8, r8
je 0x1400907b6
mov eax, dword [r11 + 8]
mov ecx, dword [r11]
mov dword [r11 + 0xc], eax
mov eax, dword [rdx]
mov dword [r11 + 8], eax
mov dword [rdx], ecx
mov dword [r11], edi
mov edx, dword [rsi + 0x58]
cmp edx, 4
jle 0x1400907b6
lea eax, [rdi - 1]
mov dword [r11 + 0x10], eax
lea eax, [rdi + 1]
mov dword [r11 + 0x14], eax
lea eax, [rdi - 2]
mov dword [r11 + 0x18], eax
lea eax, [rdi + 2]
mov dword [r11 + 0x1c], eax
lea eax, [rdi - 3]
mov dword [r11 + 0x20], eax
lea eax, [rdi + 3]
mov dword [r11 + 0x24], eax
cmp edx, 0xa
jle 0x1400907b6
lea eax, [rcx - 1]
mov dword [r11 + 0x28], eax
lea eax, [rcx + 1]
mov dword [r11 + 0x2c], eax
lea eax, [rcx - 2]
mov dword [r11 + 0x30], eax
lea eax, [rcx + 2]
mov dword [r11 + 0x34], eax
lea eax, [rcx - 3]
mov dword [r11 + 0x38], eax
lea eax, [rcx + 3]
mov dword [r11 + 0x3c], eax
mov r11, qword [rbp + 0x8f]
mov esi, dword [rbp - 0x31]
mov r12, qword [rsp + 0x30]
movzx eax, sil
shl eax, 0x19
or eax, r13d
mov dword [r11], r12d
mov dword [r11 + 4], eax
mov r14d, dword [r14 + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x1400907e8
mov ebx, r9d
jmp 0x140090867
mov rcx, qword [rbp + 0x6f]
add r8, 0xfffffffffffffff0
mov r10d, 1
mov r11d, dword [rcx + 0x40]
lea ecx, [r11 + 2]
shl r10, cl
sub r10, r14
add r10, r8
bsr eax, r10d
mov rdx, r10
mov rbx, r10
dec eax
mov ecx, eax
mov r9d, eax
shr rdx, cl
sub r9, r11
and edx, 1
lea r8, [r9 - 1]
shl r9, 0xa
lea r8, [rdx + r8*2]
lea rax, [rdx + 2]
shl rax, cl
mov ecx, r11d
mov r11, qword [rbp + 0x8f]
sub rbx, rax
shl r8, cl
mov eax, 1
shl ax, cl
add r8w, 0x10
dec ax
shr rbx, cl
and ax, r10w
add r8w, ax
add r8w, r14w
or r8w, r9w
mov word [r11 + 0xe], r8w
lea edx, [rsi + r13]
mov eax, 0x3ff
mov dword [r11 + 8], ebx
and r8w, ax
movsxd r9, edx
cmp r12, 6
jae 0x140090891
movzx r10d, r12w
mov eax, 0x17
jmp 0x140090906
cmp r12, 0x82
jae 0x1400908bd
lea eax, [r12 - 2]
bsr ecx, eax
lea r10, [r12 - 2]
mov eax, 0x17
dec ecx
shr r10, cl
inc cx
add cx, cx
add r10w, cx
jmp 0x140090906
cmp r12, 0x842
jae 0x1400908db
lea eax, [r12 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x140090906
mov eax, 0x17
cmp r12, 0x1842
jae 0x1400908f1
mov r10d, reloc.WS2_32.dll_setsockopt
jmp 0x140090906
cmp r12, 0x5842
jae 0x140090902
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x140090906
movzx r10d, ax
cmp r9, 0xa
jae 0x140090913
sub r9w, 2
jmp 0x140090953
cmp r9, 0x86
jae 0x140090938
add r9, 0xfffffffffffffffa
lea eax, [rdx - 6]
bsr ecx, eax
dec ecx
shr r9, cl
add cx, 2
add cx, cx
add r9w, cx
jmp 0x140090953
cmp r9, 0x846
jae 0x14009094f
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x140090953
movzx r9d, ax
movzx edx, r10w
movzx eax, r9w
and dx, 7
and ax, 7
shl dx, 3
or dx, ax
test r8w, r8w
jne 0x14009098b
cmp r10w, 8
jae 0x14009098b
cmp r9w, 0x10
jae 0x14009098b
cmp r9w, 8
jb 0x1400909bf
or dx, 0x40
jmp 0x1400909bf
movzx eax, r10w
mov r8d, 0xc0
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, r9w
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, r8w
add ax, cx
or dx, ax
mov rax, qword [rbp + 0x9f]
lea rbx, [r15 + 2]
mov rsi, qword [rbp - 0x29]
mov word [r11 + 0xc], dx
add r11, 0x10
mov qword [rbp + 0x8f], r11
add qword [rax], r12
xor eax, eax
mov r14d, eax
mov qword [rsp + 0x30], rax
lea rax, [r15 + r13]
cmp rax, rsi
cmovb rsi, rax
mov rax, r13
shr rax, 2
cmp rdi, rax
jae 0x140090a2b
lea rax, [rdi*4]
mov rcx, r13
sub rcx, rax
lea rax, [rcx + r15]
cmp rbx, rax
mov eax, 2
cmova rcx, rax
lea rbx, [r15 + rcx]
cmp rsi, rbx
cmovb rbx, rsi
cmp rbx, rsi
jae 0x140090a9d
mov rdi, qword [rbp + 0x77]
movabs r14, 0x1fe35a7bd3579bd3
nop
mov rdx, qword [rdi + 0x68]
mov rax, rbx
and rax, qword [rbp + 0x5f]
mov rcx, qword [rbp + 0x57]
mov r11, qword [rdi + 0x70]
mov r10, qword [rax + rcx]
and r10, qword [rdi + 0x48]
mov ecx, dword [rdi + 0x40]
imul r10, r14
shr r10, cl
mov ecx, dword [rdi + 0x54]
mov eax, r10d
lea r9, [rdx + rax*2]
shl r10d, cl
movzx edx, word [r9]
mov eax, dword [rdi + 0x50]
mov r8d, edx
and r8, rax
inc dx
mov eax, r10d
add r8, rax
mov word [r9], dx
mov dword [r11 + r8*4], ebx
inc rbx
cmp rbx, rsi
jb 0x140090a40
mov r14, qword [rsp + 0x30]
add r15, r13
mov qword [rbp + 0x4f], r15
mov r13, qword [rbp + 0x5f]
mov rbx, qword [rbp - 0x61]
lea rax, [r15 + 8]
mov r11, qword [rbp + 0x57]
mov rdi, qword [rbp + 0x77]
mov r8, qword [rbp + 0x6f]
mov rdx, qword [rbp + 0x7f]
mov r10, qword [rbp - 0x59]
mov rcx, qword [rsp + 0x58]
cmp rax, rbx
jb 0x14008f7f1
mov r12, qword [rsp + 0xe8]
mov rsi, qword [rbp + 0x8f]
mov rax, qword [rbp + 0x87]
sub rbx, r15
sub rsi, qword [rbp - 0x19]
add rbx, r14
sar rsi, 4
mov qword [rax], rbx
mov rax, qword [rbp + 0x97]
add qword [rax], rsi
add rsp, 0xf0
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov r14, qword [rsp + 0x30]
inc r15
mov r12, qword [rsp + 0x60]
inc r14
mov qword [rsp + 0x30], r14
mov qword [rbp + 0x4f], r15
cmp r15, r12
jbe 0x140090aa4
mov rax, qword [rbp - 0x21]
mov rbx, qword [rbp - 0x61]
mov r13, qword [rbp + 0x5f]
add rbx, 0xfffffffffffffff9
lea rax, [r12 + rax*4]
cmp r15, rax
jbe 0x140090bf6
lea rax, [r15 + 0x10]
cmp rax, rbx
cmovb rbx, rax
cmp r15, rbx
jae 0x140090aa8
add r14, 4
mov rax, rbx
sub rax, r15
dec rax
and rax, 0xfffffffffffffffc
add r14, rax
mov qword [rsp + 0x30], r14
movabs r14, 0x1fe35a7bd3579bd3
nop dword [rax + rax]
mov rdx, qword [rsi + 0x68]
mov rax, r15
mov rcx, qword [rbp + 0x57]
and rax, r13
mov r11, qword [rsi + 0x70]
mov r10, qword [rax + rcx]
and r10, qword [rsi + 0x48]
mov ecx, dword [rsi + 0x40]
imul r10, r14
shr r10, cl
mov ecx, dword [rsi + 0x54]
mov eax, r10d
lea r9, [rdx + rax*2]
shl r10d, cl
movzx edx, word [r9]
mov eax, dword [rsi + 0x50]
mov r8d, edx
and r8, rax
inc dx
mov eax, r10d
add r8, rax
mov word [r9], dx
mov dword [r11 + r8*4], r15d
add r15, 4
cmp r15, rbx
jb 0x140090b90
mov r14, qword [rsp + 0x30]
mov qword [rbp + 0x4f], r15
jmp 0x140090aa8
lea rax, [r15 + 8]
cmp rax, rbx
cmovb rbx, rax
cmp r15, rbx
jae 0x140090aa8
add r14, 2
mov rax, rbx
sub rax, r15
dec rax
and rax, 0xfffffffffffffffe
add r14, rax
mov qword [rsp + 0x30], r14
movabs r14, 0x1fe35a7bd3579bd3
nop dword [rax]
mov rdx, qword [rsi + 0x68]
mov rax, r15
mov rcx, qword [rbp + 0x57]
and rax, r13
mov r11, qword [rsi + 0x70]
mov r10, qword [rax + rcx]
and r10, qword [rsi + 0x48]
mov ecx, dword [rsi + 0x40]
imul r10, r14
shr r10, cl
mov ecx, dword [rsi + 0x54]
mov eax, r10d
lea r9, [rdx + rax*2]
shl r10d, cl
movzx edx, word [r9]
mov eax, dword [rsi + 0x50]
mov r8d, edx
and r8, rax
inc dx
mov eax, r10d
add r8, rax
mov word [r9], dx
mov dword [r11 + r8*4], r15d
add r15, 2
cmp r15, rbx
jb 0x140090c30
mov r14, qword [rsp + 0x30]
mov qword [rbp + 0x4f], r15
jmp 0x140090aa8
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push r13
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0x100
mov r15, qword [rbp + 0x5f]
mov rax, rcx
mov r10, qword [rbp + 0x77]
mov r9, r8
mov r14, rdx
mov r8d, 1
mov rdx, qword [rbp + 0x7f]
mov ecx, dword [r15 + 8]
mov r10, qword [r10]
shl r8, cl
lea rbx, [rax + r14]
mov rcx, qword [r15 + 0x10]
sub r8, 0x10
mov qword [rsp + 0x78], r8
mov qword [rbp - 0x79], rcx
mov qword [rbp - 0x29], rdx
mov qword [rsp + 0x28], r10
mov qword [rbp - 0x49], rbx
cmp rax, 8
jb 0x140090d1a
lea rax, [rbx - 7]
mov qword [rbp - 0x41], rax
jmp 0x140090d1e
mov qword [rbp - 0x41], r14
cmp dword [r15 + 4], 9
mov edx, 0x40
mov r13, qword [rbp + 0x67]
mov eax, 0x200
cmovl eax, edx
mov qword [rbp - 0x39], rax
add rax, r14
mov qword [rbp - 0x71], rax
mov edx, dword [r13 + 0x58]
cmp edx, 4
jle 0x140090db5
mov r8, qword [rbp + 0x6f]
mov ecx, dword [r8]
lea eax, [rcx - 1]
mov dword [r8 + 0x10], eax
lea eax, [rcx + 1]
mov dword [r8 + 0x14], eax
lea eax, [rcx - 2]
mov dword [r8 + 0x18], eax
lea eax, [rcx + 2]
mov dword [r8 + 0x1c], eax
lea eax, [rcx - 3]
mov dword [r8 + 0x20], eax
lea eax, [rcx + 3]
mov dword [r8 + 0x24], eax
cmp edx, 0xa
jle 0x140090dac
mov ecx, dword [r8 + 4]
lea eax, [rcx - 1]
mov dword [r8 + 0x28], eax
lea eax, [rcx + 1]
mov dword [r8 + 0x2c], eax
lea eax, [rcx - 2]
mov dword [r8 + 0x30], eax
lea eax, [rcx + 2]
mov dword [r8 + 0x34], eax
lea eax, [rcx - 3]
mov dword [r8 + 0x38], eax
lea eax, [rcx + 3]
mov dword [r8 + 0x3c], eax
mov rcx, qword [rbp - 0x79]
mov r8, qword [rsp + 0x78]
lea rax, [r14 + 8]
cmp rax, rbx
jae 0x14009256b
mov qword [rsp + 0xf8], rsi
mov qword [rsp + 0xf0], rdi
xor edi, edi
mov qword [rsp + 0xe8], r12
nop dword [rax]
mov rdx, qword [rbp + 0x3f]
lea rax, [rcx + r14]
movsxd rsi, dword [r13 + 0x58]
mov r11, r8
mov rcx, r8
mov qword [rbp - 0x61], rdi
mov r12, rbx
mov qword [rsp + 0x30], rdi
sub r12, r14
mov dword [rbp - 0x51], edi
cmp r14, r8
mov qword [rsp], r12
mov rbx, rdi
mov qword [rsp + 0x18], rdi
cmovb r11, r14
mov r10, rdi
mov r14, qword [r13 + 0x68]
cmp rax, r8
mov r8, rdx
mov qword [rsp + 8], r11
cmovb rcx, rax
mov qword [rbp + 0x37], r14
mov rax, qword [r15 + 0x50]
mov r15, qword [r13 + 0x70]
mov qword [rsp + 0x68], rax
mov rax, qword [rbp + 0x4f]
and r8, rax
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], r8
mov ecx, 0x7e4
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x20], rcx
test rsi, rsi
je 0x140090fe6
mov r15, qword [rbp + 0x6f]
mov r14, r8
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x18], rdi
nop dword [rax + rax]
movsxd rdi, dword [r15 + rbx*4]
mov rcx, rdx
sub rcx, rdi
cmp rcx, rdx
jae 0x140090fcb
cmp rdi, r11
ja 0x140090fcb
and rcx, rax
lea rdx, [r10 + r14]
cmp rdx, rax
ja 0x140090fc7
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x4f]
ja 0x140090fc3
movzx eax, byte [rax + r9]
cmp byte [rdx + r9], al
jne 0x140090fc3
mov r8, r12
lea r11, [rcx + r9]
shr r8, 3
lea rdx, [r14 + r9]
xor ecx, ecx
test r8, r8
je 0x140090f0e
mov r10, r11
sub r10, rdx
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x140090fa4
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140090ef0
mov r8, r12
and r8d, 7
je 0x140090f33
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x140090f33
inc rcx
sub r8, 1
jne 0x140090f20
mov r8, rcx
cmp r8, 3
jae 0x140090f47
cmp r8, 2
jne 0x140090fb5
cmp rbx, r8
jae 0x140090fb5
mov r11, qword [rsp + 0x20]
imul r9, r8, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x140090fb5
test rbx, rbx
je 0x140090f87
movzx ecx, bl
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r11, r9
jae 0x140090fb5
mov qword [rsp + 0x20], r9
mov r10, r8
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x30], r8
mov qword [rbp - 0x61], rdi
mov qword [rsp + 0x10], r9
jmp 0x140090fba
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x140090f36
mov r10, qword [rsp + 0x18]
mov r9, qword [rbp + 0x47]
mov r11, qword [rsp + 8]
mov rax, qword [rbp + 0x4f]
mov rdx, qword [rbp + 0x3f]
inc rbx
cmp rbx, rsi
jb 0x140090e80
mov r14, qword [rbp + 0x37]
xor edi, edi
mov r15, qword [r13 + 0x70]
mov r8, qword [rsp + 0x38]
mov ecx, dword [r13 + 0x40]
add r9, r8
mov rdx, qword [r13 + 0x48]
movabs rax, 0x1fe35a7bd3579bd3
mov qword [rbp + 0x37], r9
and rdx, qword [r9]
imul rdx, rax
shr rdx, cl
mov ecx, dword [r13 + 0x54]
mov eax, edx
shl eax, cl
lea r15, [r15 + rax*4]
mov eax, edx
movzx r13d, word [r14 + rax*2]
lea r12, [r14 + rax*2]
mov rdx, qword [rbp + 0x67]
mov esi, r13d
mov qword [rsp + 0x70], r12
sub rsi, qword [rdx + 0x38]
cmp r13, qword [rdx + 0x38]
cmovbe rsi, rdi
mov edi, r13d
cmp r13, rsi
jbe 0x140091177
mov r14d, dword [rdx + 0x50]
mov r13, qword [rbp + 0x47]
mov r12, qword [rsp]
mov rbx, qword [rbp + 0x3f]
dec rdi
mov rax, rdi
and rax, r14
mov ecx, dword [r15 + rax*4]
sub rbx, rcx
cmp rbx, r11
ja 0x140091169
and rcx, qword [rbp + 0x4f]
lea rdx, [r10 + r8]
cmp rdx, qword [rbp + 0x4f]
ja 0x140091160
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x4f]
ja 0x140091160
movzx eax, byte [rax + r13]
cmp byte [rdx + r13], al
jne 0x140091160
xor eax, eax
lea r11, [rcx + r13]
mov r8, r12
mov rdx, r9
shr r8, 3
mov ecx, eax
test r8, r8
je 0x1400910da
mov r10, r11
sub r10, r9
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14009114a
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400910c0
mov r8, r12
and r8d, 7
je 0x1400910f9
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x1400910f9
inc rcx
sub r8, 1
jne 0x1400910e6
mov rdx, rcx
mov r8, qword [rsp + 0x38]
mov r9, qword [rbp + 0x37]
mov r11, qword [rsp + 8]
cmp rdx, 4
jb 0x14009115b
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp qword [rsp + 0x20], rax
jae 0x14009115b
mov qword [rsp + 0x20], rax
mov r10, rdx
mov qword [rsp + 0x18], rdx
mov qword [rsp + 0x30], rdx
mov qword [rbp - 0x61], rbx
mov qword [rsp + 0x10], rax
jmp 0x140091160
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x1400910fc
mov r10, qword [rsp + 0x18]
cmp rdi, rsi
ja 0x140091050
mov r12, qword [rsp + 0x70]
mov rdx, qword [rbp + 0x67]
movzx r13d, word [r12]
mov eax, dword [rdx + 0x50]
mov r14, qword [rbp + 0x3f]
and rax, r13
mov rbx, qword [rsp + 0x10]
mov dword [r15 + rax*4], r14d
inc word [r12]
cmp rbx, 0x7e4
jne 0x140091499
mov r13, qword [rdx + 0x60]
mov rcx, qword [r13 + 8]
mov r14, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r14, rax
jb 0x140091493
imul ebx, dword [r9], 0x1e35a7bd
lea r15, [rcx + 1]
mov r12, qword [rbp + 0x5f]
mov rdx, qword [rsp]
mov qword [r13 + 8], r15
mov rax, qword [r12 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x140091331
mov rax, qword [r12 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x140091331
mov rdi, qword [r12 + 0x58]
mov eax, ecx
imul rax, rsi
mov edx, dword [rdi + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rdi + 0xa8]
xor eax, eax
mov ecx, eax
test r8, r8
je 0x140091252
mov r10, r9
sub r10, rdx
nop
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x140091315
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140091230
mov r9, qword [rbp + 0x37]
mov r8, r11
and r8d, 7
je 0x140091273
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r9], al
jne 0x140091273
inc rcx
sub r8, 1
jne 0x140091260
mov r9, rcx
mov eax, dword [r12 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140091329
test r9, r9
je 0x140091329
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r12 + 0x68]
mov r12, qword [rsp + 0x40]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [r11 + rdi]
and edx, 0x3f
lea rax, [rdx + r8*4]
shl rax, cl
lea rdx, [r12 + 1]
add rax, rsi
add rdx, rax
cmp rdx, qword [rsp + 0x68]
ja 0x14009130b
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x10]
jb 0x14009130b
mov qword [rsp + 0x10], rax
sub r11d, r9d
lea rax, [r14 + 1]
mov qword [rsp + 0x30], r9
mov qword [r13 + 0x10], rax
mov dword [rbp - 0x51], r11d
mov qword [rbp - 0x61], rdx
mov r9, qword [rbp + 0x37]
mov rdx, qword [rsp]
jmp 0x140091336
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140091276
mov rdx, qword [rsp]
mov r9, qword [rbp + 0x37]
mov r12, qword [rsp + 0x40]
mov r14, qword [rbp + 0x5f]
lea rax, [r15 + 1]
mov qword [r13 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rbx + rax + 1]
test cl, cl
je 0x14009149f
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x14009149f
mov rbx, qword [r14 + 0x58]
mov eax, ecx
imul rax, rdi
mov edx, dword [rbx + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rbx + 0xa8]
xor eax, eax
mov ecx, eax
test r8, r8
je 0x1400913be
mov r10, r9
sub r10, rdx
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14009147b
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400913a0
mov rsi, qword [rbp + 0x37]
mov r8, r11
and r8d, 7
je 0x1400913e4
nop dword [rax + rax]
movzx eax, byte [rdx]
cmp byte [rcx + rsi], al
jne 0x1400913e4
inc rdx
inc rcx
sub r8, 1
jne 0x1400913d0
mov r9, rcx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x1400914a3
test r9, r9
je 0x1400914a3
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r14 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [r11 + rbx]
and edx, 0x3f
mov rbx, qword [rsp + 0x10]
lea rdx, [rdx + r8*4]
shl rdx, cl
inc rdx
add rdx, rdi
add rdx, r12
cmp rdx, qword [rsp + 0x68]
ja 0x1400914a8
mov r14, qword [rbp + 0x3f]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, rbx
jb 0x1400914ac
sub r11d, r9d
mov qword [rsp + 0x30], r9
inc qword [r13 + 0x10]
mov rbx, rax
mov dword [rbp - 0x51], r11d
mov qword [rbp - 0x61], rdx
mov qword [rsp + 0x10], rax
jmp 0x1400914ac
mov rsi, qword [rbp + 0x37]
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x1400913e7
mov rsi, qword [rbp + 0x37]
jmp 0x1400914a8
mov rsi, qword [rbp + 0x37]
jmp 0x1400914ac
mov rsi, qword [rbp + 0x37]
mov rbx, qword [rsp + 0x10]
mov r14, qword [rbp + 0x3f]
mov r12, qword [rsp]
mov r13, qword [rbp + 0x67]
cmp r12, 0x20
jb 0x140091641
mov r11, qword [r13 + 0x88]
cmp r11, r14
ja 0x140091636
mov r14, qword [rsp + 8]
lea rdi, [r11 + 0x20]
mov r10, qword [rbp + 0x47]
mov r15, qword [rbp + 0x4f]
nop
mov r8d, dword [r13 + 0x78]
mov rax, r11
and rax, r15
mov r9d, r8d
imul r8d, dword [r13 + 0x94]
and r9d, 0x3fffffff
movzx edx, byte [rax + r10]
mov rax, rdi
and rax, r15
inc edx
imul edx, dword [r13 + 0x98]
movzx ecx, byte [rax + r10]
lea eax, [r8 + 1]
sub ecx, edx
add eax, ecx
mov dword [r13 + 0x78], eax
cmp r9d, 0x1000000
jae 0x140091622
mov rax, qword [r13 + 0x80]
mov ecx, r9d
mov r9d, dword [rax + r9*4]
mov dword [rax + rcx*4], r11d
mov rax, qword [rbp + 0x3f]
cmp r11, rax
jne 0x140091622
mov ecx, 0xffffffff
cmp r9, rcx
je 0x140091622
sub eax, r9d
mov ebx, eax
cmp rbx, r14
ja 0x14009161d
and r9, r15
xor eax, eax
mov r8, r12
add r9, r10
shr r8, 3
mov rdx, rsi
mov ecx, eax
test r8, r8
je 0x14009159d
mov r10, qword [rdx]
mov rax, qword [rcx + r9]
cmp r10, rax
jne 0x14009160c
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140091583
mov r8, r12
and r8d, 7
je 0x1400915c3
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r9], al
jne 0x1400915c3
inc rcx
sub r8, 1
jne 0x1400915b0
mov rdx, rcx
mov r10, qword [rbp + 0x47]
cmp rdx, 4
jb 0x14009161d
cmp rdx, qword [rsp + 0x30]
jbe 0x14009161d
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x10]
jbe 0x14009161d
mov qword [rbp - 0x61], rbx
mov rbx, rax
mov qword [rsp + 0x10], rax
xor eax, eax
mov dword [rbp - 0x51], eax
mov qword [rsp + 0x30], rdx
jmp 0x140091622
xor rax, r10
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x1400915c6
mov rbx, qword [rsp + 0x10]
inc r11
inc rdi
cmp r11, qword [rbp + 0x3f]
jbe 0x1400914e0
mov r14, qword [rbp + 0x3f]
lea rax, [r14 + 1]
mov qword [r13 + 0x88], rax
cmp rbx, 0x7e4
jbe 0x1400923ad
mov rax, qword [rsp + 0x30]
xor edi, edi
mov dword [rbp + 0x37], edi
dec r12
mov r8, qword [rbp + 0x5f]
mov qword [rsp], r12
cmp dword [r8 + 4], 5
jge 0x140091679
dec rax
mov r10, r12
cmp rax, r12
cmovb r10, rax
jmp 0x14009167c
mov r10, rdi
mov rbx, qword [rsp + 0x78]
lea r11, [r14 + 1]
mov rax, qword [rbp - 0x79]
cmp r11, rbx
movsxd rsi, dword [r13 + 0x58]
mov rdx, rbx
mov r15, qword [r13 + 0x70]
cmovb rdx, r11
inc rax
mov qword [rsp + 0x20], r10
add rax, r14
mov qword [rsp + 0x50], rdi
mov r14, qword [r13 + 0x68]
cmp rax, rbx
mov rcx, rbx
mov qword [rsp + 0x18], r11
cmovb rcx, rax
mov qword [rsp + 8], rdx
mov rax, qword [r8 + 0x50]
mov r9d, 0x7e4
mov qword [rbp - 0x71], rax
mov r8, r11
mov rax, qword [rbp + 0x4f]
mov rbx, rdi
and r8, rax
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x58], r9
mov ecx, r9d
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x48], rdi
mov dword [rsp + 0x60], edi
mov qword [rsp + 0x40], rcx
test rsi, rsi
je 0x14009188e
mov r15, qword [rbp + 0x47]
mov r14, r8
mov qword [rsp + 0x40], rcx
nop dword [rax + rax]
mov rcx, qword [rbp + 0x6f]
movsxd rdi, dword [rcx + rbx*4]
mov rcx, r11
sub rcx, rdi
cmp rcx, r11
jae 0x14009186e
cmp rdi, rdx
ja 0x14009186e
and rcx, rax
lea rdx, [r10 + r14]
cmp rdx, rax
ja 0x140091869
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x4f]
ja 0x140091865
movzx eax, byte [rax + r15]
cmp byte [rdx + r15], al
jne 0x140091865
xor eax, eax
lea r11, [rcx + r15]
mov r8, r12
lea rdx, [r14 + r15]
shr r8, 3
mov ecx, eax
test r8, r8
je 0x1400917ae
mov r10, r11
sub r10, rdx
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x140091845
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140091790
mov r8, r12
and r8d, 7
je 0x1400917d3
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x1400917d3
inc rcx
sub r8, 1
jne 0x1400917c0
mov r8, rcx
cmp r8, 3
jae 0x1400917e7
cmp r8, 2
jne 0x140091856
cmp rbx, r8
jae 0x140091856
mov r11, qword [rsp + 0x40]
imul r9, r8, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x140091856
test rbx, rbx
je 0x140091827
movzx ecx, bl
mov edx, 0x1ca10
and cl, 0xe
mov rax, 0xffffffffffffffd9
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
cmp r11, r9
jae 0x140091856
mov qword [rsp + 0x40], r9
mov r10, r8
mov qword [rsp + 0x20], r8
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], r9
jmp 0x140091860
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x1400917d6
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x20]
mov r11, qword [rsp + 0x18]
mov rax, qword [rbp + 0x4f]
mov rdx, qword [rsp + 8]
inc rbx
cmp rbx, rsi
jb 0x140091720
mov r13, qword [rbp + 0x67]
xor edi, edi
mov r14, qword [rsp + 0x68]
mov r8, qword [rsp + 0x38]
mov r15, qword [r13 + 0x70]
mov rcx, qword [rbp + 0x47]
mov rdx, qword [r8 + rcx]
lea rax, [r8 + rcx]
and rdx, qword [r13 + 0x48]
mov ecx, dword [r13 + 0x40]
mov qword [rsp + 0x68], rax
movabs rax, 0x1fe35a7bd3579bd3
imul rdx, rax
shr rdx, cl
mov ecx, dword [r13 + 0x54]
mov eax, edx
shl eax, cl
lea r15, [r15 + rax*4]
mov eax, edx
movzx r13d, word [r14 + rax*2]
lea r12, [r14 + rax*2]
mov rdx, qword [rbp + 0x67]
mov esi, r13d
mov qword [rbp - 0x31], r12
sub rsi, qword [rdx + 0x38]
cmp r13, qword [rdx + 0x38]
cmovbe rsi, rdi
mov edi, r13d
cmp r13, rsi
jbe 0x140091a45
mov r14d, dword [rdx + 0x50]
mov r13, qword [rsp + 0x68]
mov r12, qword [rsp + 8]
dec rdi
mov rax, r14
and rax, rdi
mov rbx, r11
mov ecx, dword [r15 + rax*4]
sub rbx, rcx
cmp rbx, r12
ja 0x140091a38
and rcx, qword [rbp + 0x4f]
lea rdx, [r10 + r8]
cmp rdx, qword [rbp + 0x4f]
ja 0x140091a2f
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x4f]
ja 0x140091a2f
mov r12, qword [rbp + 0x47]
movzx eax, byte [rax + r12]
cmp byte [rdx + r12], al
mov r12, qword [rsp + 8]
jne 0x140091a2f
mov r11, qword [rbp + 0x47]
xor eax, eax
add r11, rcx
mov rdx, r13
mov ecx, eax
mov rax, qword [rsp]
mov r9, rax
shr r9, 3
test r9, r9
je 0x1400919a2
mov r10, r11
sub r10, r13
nop dword [rax + rax]
mov rax, qword [rdx]
mov r8, qword [rdx + r10]
cmp rax, r8
jne 0x140091a14
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x140091980
mov rax, qword [rsp]
mov r8, rax
and r8d, 7
je 0x1400919c3
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x1400919c3
inc rcx
sub r8, 1
jne 0x1400919b0
mov rdx, rcx
mov r8, qword [rsp + 0x38]
mov r11, qword [rsp + 0x18]
cmp rdx, 4
jb 0x140091a25
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp qword [rsp + 0x40], rax
jae 0x140091a25
mov qword [rsp + 0x40], rax
mov r10, rdx
mov qword [rsp + 0x20], rdx
mov r9, rax
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rax
jmp 0x140091a2f
xor rax, r8
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x1400919c6
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x20]
cmp rdi, rsi
ja 0x140091900
mov r12, qword [rbp - 0x31]
mov rdx, qword [rbp + 0x67]
movzx r13d, word [r12]
mov eax, dword [rdx + 0x50]
and rax, r13
mov dword [r15 + rax*4], r11d
inc word [r12]
mov r12, qword [rsp + 0x68]
cmp r9, 0x7e4
jne 0x140091d57
mov r13, qword [rdx + 0x60]
mov rcx, qword [r13 + 8]
mov r14, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r14, rax
jb 0x140091d57
imul ebx, dword [r12], 0x1e35a7bd
lea r15, [rcx + 1]
mov r8, qword [rbp + 0x5f]
mov rdx, qword [rsp]
mov qword [r13 + 8], r15
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x140091bf4
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x140091bf4
mov rdi, qword [r8 + 0x58]
mov eax, ecx
imul rax, rsi
mov edx, dword [rdi + rcx*4 + 0x20]
mov r9d, r11d
add rdx, rax
shr r9, 3
add rdx, qword [rdi + 0xa8]
xor eax, eax
mov ecx, eax
test r9, r9
je 0x140091b1e
mov r10, r12
sub r10, rdx
nop word [rax + rax]
mov r8, qword [rdx]
mov rax, qword [rdx + r10]
cmp r8, rax
jne 0x140091be0
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x140091b00
mov r8, r11
and r8d, 7
je 0x140091b43
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r12], al
jne 0x140091b43
inc rcx
sub r8, 1
jne 0x140091b30
mov r9, rcx
mov rcx, qword [rbp + 0x5f]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140091bfb
test r9, r9
je 0x140091bfb
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [rcx + 0x68]
add al, al
movzx ecx, al
shr rdx, cl
movzx ecx, byte [r11 + rdi]
and edx, 0x3f
lea rax, [rdx + r8*4]
shl rax, cl
add rax, rsi
mov rsi, qword [rsp + 0x70]
lea rdx, [rsi + 1]
add rdx, rax
cmp rdx, qword [rbp - 0x71]
ja 0x140091c00
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x58]
jb 0x140091c00
mov qword [rsp + 0x58], rax
sub r11d, r9d
lea rax, [r14 + 1]
mov qword [rsp + 0x48], r9
mov qword [r13 + 0x10], rax
mov dword [rsp + 0x60], r11d
mov qword [rsp + 0x50], rdx
jmp 0x140091c00
xor rax, r8
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140091b46
mov rsi, qword [rsp + 0x70]
jmp 0x140091c04
mov rsi, qword [rsp + 0x70]
mov rdx, qword [rsp]
mov r14, qword [rbp + 0x5f]
lea rax, [r15 + 1]
mov qword [r13 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rax + rbx + 1]
test cl, cl
je 0x140091d57
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x140091d57
mov rbx, qword [r14 + 0x58]
mov eax, ecx
imul rax, rdi
mov edx, dword [rbx + rcx*4 + 0x20]
mov r8d, r11d
add rdx, rax
shr r8, 3
add rdx, qword [rbx + 0xa8]
xor eax, eax
mov ecx, eax
test r8, r8
je 0x140091c8e
mov r10, r12
sub r10, rdx
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x140091d43
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140091c70
mov r8, r11
and r8d, 7
je 0x140091cac
movzx eax, byte [rdx]
cmp byte [rcx + r12], al
jne 0x140091cac
inc rdx
inc rcx
sub r8, 1
jne 0x140091c97
mov r9, rcx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140091d57
test r9, r9
je 0x140091d57
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea eax, [rdx + r8]
mov rdx, qword [r14 + 0x68]
lea ecx, [rax + rax]
shr rdx, cl
movzx ecx, byte [r11 + rbx]
and edx, 0x3f
lea rdx, [rdx + r8*4]
shl rdx, cl
inc rdx
add rdx, rdi
add rdx, rsi
mov rsi, qword [rsp + 0x58]
cmp rdx, qword [rbp - 0x71]
ja 0x140091d5c
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, rsi
jb 0x140091d5c
sub r11d, r9d
mov qword [rsp + 0x48], r9
inc qword [r13 + 0x10]
mov r15, r9
mov dword [rsp + 0x60], r11d
mov rsi, rax
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], rax
jmp 0x140091d61
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140091caf
mov rsi, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
cmp qword [rsp], 0x20
mov r13, qword [rbp + 0x67]
mov r14, qword [rsp + 0x18]
jb 0x140091efc
mov r11, qword [r13 + 0x88]
cmp r11, r14
ja 0x140091ef1
mov r10, qword [rbp + 0x4f]
lea rdi, [r11 + 0x20]
nop dword [rax]
mov r8d, dword [r13 + 0x78]
mov rax, r11
mov rcx, qword [rbp + 0x47]
and rax, r10
mov r9d, r8d
imul r8d, dword [r13 + 0x94]
and r9d, 0x3fffffff
movzx edx, byte [rax + rcx]
mov rax, rdi
and rax, r10
inc edx
imul edx, dword [r13 + 0x98]
movzx ecx, byte [rax + rcx]
lea eax, [r8 + 1]
sub ecx, edx
add eax, ecx
mov dword [r13 + 0x78], eax
cmp r9d, 0x1000000
jae 0x140091ed8
mov rax, qword [r13 + 0x80]
mov r10d, dword [rax + r9*4]
mov dword [rax + r9*4], r11d
cmp r11, r14
jne 0x140091ed4
mov eax, 0xffffffff
cmp r10, rax
je 0x140091ed4
mov ebx, r14d
sub ebx, r10d
cmp rbx, qword [rsp + 8]
ja 0x140091ed4
and r10, qword [rbp + 0x4f]
xor eax, eax
mov rcx, qword [rsp]
mov rdx, r12
add r10, qword [rbp + 0x47]
mov r8, rcx
shr r8, 3
test r8, r8
je 0x140091e5e
nop word [rax + rax]
mov r9, qword [rdx]
mov rcx, qword [rax + r10]
cmp r9, rcx
jne 0x140091ec3
add rdx, 8
add rax, 8
sub r8, 1
jne 0x140091e40
mov rcx, qword [rsp]
mov r8, rcx
and r8d, 7
je 0x140091e83
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rax + rdx]
cmp byte [rax + r10], cl
jne 0x140091e83
inc rax
sub r8, 1
jne 0x140091e70
mov rdx, rax
cmp rdx, 4
jb 0x140091ed4
cmp rdx, r15
jbe 0x140091ed4
mov r10, qword [rbp + 0x4f]
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, rsi
jbe 0x140091ed8
mov rsi, rax
mov qword [rsp + 0x50], rbx
xor eax, eax
mov r15, rdx
mov dword [rsp + 0x60], eax
jmp 0x140091ed8
xor rcx, r9
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x140091e86
mov r10, qword [rbp + 0x4f]
inc r11
inc rdi
cmp r11, r14
jbe 0x140091d90
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x48], r15
lea rax, [r14 + 1]
mov qword [r13 + 0x88], rax
mov rax, qword [rsp + 0x10]
add rax, 0xaf
cmp rsi, rax
jb 0x140091f69
mov ecx, dword [rbp + 0x37]
movups xmm0, xmmword [rsp + 0x48]
inc qword [rsp + 0x28]
inc ecx
mov qword [rbp + 0x3f], r14
mov dword [rbp + 0x37], ecx
movups xmm1, xmmword [rsp + 0x58]
movups xmmword [rbp - 0x69], xmm0
movups xmmword [rbp - 0x59], xmm1
cmp ecx, 4
jge 0x140091f5e
lea rax, [r14 + 8]
cmp rax, qword [rbp - 0x49]
jae 0x140091f5e
mov rax, qword [rbp - 0x59]
mov r12, qword [rsp]
mov qword [rsp + 0x10], rax
dec r12
mov rax, qword [rbp - 0x69]
xor edi, edi
mov qword [rsp + 0x30], rax
jmp 0x14009165b
mov rcx, qword [rbp - 0x69]
mov qword [rsp + 0x30], rcx
jmp 0x140091f72
mov r14, qword [rbp + 0x3f]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rbp - 0x39]
mov r10, qword [rsp + 0x78]
mov r11, qword [rbp + 0x6f]
mov rdi, qword [rbp - 0x61]
lea r12, [rax + rcx*2]
mov rax, qword [rbp - 0x79]
add rax, r14
add r12, r14
cmp rax, r10
mov qword [rbp - 0x71], r12
lea rdx, [r11 + 4]
cmovb r10, rax
cmp rdi, r10
ja 0x14009202a
movsxd rax, dword [r11]
lea rcx, [rdi + 3]
movsxd r9, dword [rdx]
mov r8, rcx
sub r8, rax
sub rcx, r9
cmp rdi, rax
jne 0x140091fc9
xor r9d, r9d
mov r8d, r9d
jmp 0x140092031
cmp rdi, r9
jne 0x140091fd6
mov r8d, 1
jmp 0x14009202e
cmp r8, 7
jae 0x140091ff2
movzx ecx, r8b
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14009202e
cmp rcx, 7
jae 0x14009200a
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14009202e
movsxd rax, dword [r11 + 8]
cmp rdi, rax
jne 0x14009201b
mov r8d, 2
jmp 0x14009202e
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp rdi, rax
je 0x14009202e
lea r8, [rdi + 0xf]
xor r9d, r9d
cmp rdi, r10
ja 0x1400920b3
test r8, r8
je 0x1400920b3
mov eax, dword [r11 + 8]
mov ecx, dword [r11]
mov dword [r11 + 0xc], eax
mov eax, dword [rdx]
mov dword [r11 + 8], eax
mov dword [rdx], ecx
mov dword [r11], edi
mov edx, dword [r13 + 0x58]
cmp edx, 4
jle 0x1400920b3
lea eax, [rdi - 1]
mov dword [r11 + 0x10], eax
lea eax, [rdi + 1]
mov dword [r11 + 0x14], eax
lea eax, [rdi - 2]
mov dword [r11 + 0x18], eax
lea eax, [rdi + 2]
mov dword [r11 + 0x1c], eax
lea eax, [rdi - 3]
mov dword [r11 + 0x20], eax
lea eax, [rdi + 3]
mov dword [r11 + 0x24], eax
cmp edx, 0xa
jle 0x1400920b3
lea eax, [rcx - 1]
mov dword [r11 + 0x28], eax
lea eax, [rcx + 1]
mov dword [r11 + 0x2c], eax
lea eax, [rcx - 2]
mov dword [r11 + 0x30], eax
lea eax, [rcx + 2]
mov dword [r11 + 0x34], eax
lea eax, [rcx - 3]
mov dword [r11 + 0x38], eax
lea eax, [rcx + 3]
mov dword [r11 + 0x3c], eax
mov rcx, qword [rbp + 0x7f]
mov esi, dword [rbp - 0x51]
mov r12, qword [rsp + 0x30]
mov r15, qword [rbp + 0x5f]
mov r11, qword [rsp + 0x28]
movzx eax, sil
shl eax, 0x19
or eax, r12d
mov dword [rcx], r11d
mov dword [rcx + 4], eax
mov r14d, dword [r15 + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x1400920ea
mov ebx, r9d
jmp 0x140092163
mov r11d, dword [r15 + 0x40]
mov r10d, 1
lea ecx, [r11 + 2]
shl r10, cl
sub r10, r14
add r10, 0xfffffffffffffff0
add r10, r8
bsr eax, r10d
mov rdx, r10
mov rbx, r10
dec eax
mov ecx, eax
mov r9d, eax
shr rdx, cl
sub r9, r11
and edx, 1
lea r8, [r9 - 1]
shl r9, 0xa
lea r8, [rdx + r8*2]
lea rax, [rdx + 2]
shl rax, cl
mov ecx, r11d
mov r11, qword [rsp + 0x28]
sub rbx, rax
shl r8, cl
mov eax, 1
shl ax, cl
add r8w, 0x10
dec ax
shr rbx, cl
and ax, r10w
add r8w, ax
add r8w, r14w
or r8w, r9w
mov r14, qword [rbp + 0x7f]
lea edx, [r12 + rsi]
mov eax, 0x3ff
movsxd r9, edx
mov word [r14 + 0xe], r8w
and r8w, ax
mov dword [r14 + 8], ebx
cmp r11, 6
jae 0x140092191
movzx r10d, r11w
mov eax, 0x17
jmp 0x140092203
cmp r11, 0x82
jae 0x1400921bb
lea eax, [r11 - 2]
bsr ecx, eax
lea r10, [r11 - 2]
mov eax, 0x17
dec ecx
shr r10, cl
inc cx
add cx, cx
add r10w, cx
jmp 0x140092203
cmp r11, 0x842
jae 0x1400921d8
lea eax, [r11 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x140092203
mov eax, 0x17
cmp r11, 0x1842
jae 0x1400921ee
mov r10d, reloc.WS2_32.dll_setsockopt
jmp 0x140092203
cmp r11, 0x5842
jae 0x1400921ff
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x140092203
movzx r10d, ax
cmp r9, 0xa
jae 0x140092210
sub r9w, 2
jmp 0x140092250
cmp r9, 0x86
jae 0x140092235
add r9, 0xfffffffffffffffa
lea eax, [rdx - 6]
bsr ecx, eax
dec ecx
shr r9, cl
add cx, 2
add cx, cx
add r9w, cx
jmp 0x140092250
cmp r9, 0x846
jae 0x14009224c
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x140092250
movzx r9d, ax
movzx edx, r10w
movzx eax, r9w
and dx, 7
and ax, 7
shl dx, 3
or dx, ax
test r8w, r8w
jne 0x140092288
cmp r10w, 8
jae 0x140092288
cmp r9w, 0x10
jae 0x140092288
cmp r9w, 8
jb 0x1400922bc
or dx, 0x40
jmp 0x1400922bc
movzx eax, r10w
mov r8d, 0xc0
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, r9w
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, r8w
add ax, cx
or dx, ax
mov rax, qword [rbp + 0x8f]
mov rsi, qword [rbp - 0x41]
mov word [r14 + 0xc], dx
add r14, 0x10
mov qword [rbp + 0x7f], r14
add qword [rax], r11
xor eax, eax
mov r14, qword [rbp + 0x3f]
mov qword [rsp + 0x28], rax
lea rax, [r12 + r14]
cmp rax, rsi
lea rbx, [r14 + 2]
cmovb rsi, rax
mov rax, r12
shr rax, 2
cmp rdi, rax
jae 0x140092326
lea rax, [rdi*4]
mov rcx, r12
sub rcx, rax
lea rax, [rcx + r14]
cmp rbx, rax
mov eax, 2
cmova rcx, rax
lea rbx, [r14 + rcx]
cmp rsi, rbx
cmovb rbx, rsi
cmp rbx, rsi
jae 0x14009239c
movabs r15, 0x1fe35a7bd3579bd3
nop word [rax + rax]
mov rdx, qword [r13 + 0x68]
mov rax, rbx
and rax, qword [rbp + 0x4f]
mov r8d, dword [r13 + 0x50]
mov rcx, qword [rbp + 0x47]
mov r11, qword [r13 + 0x70]
mov r10, qword [rax + rcx]
and r10, qword [r13 + 0x48]
mov ecx, dword [r13 + 0x40]
imul r10, r15
shr r10, cl
mov ecx, dword [r13 + 0x54]
mov eax, r10d
lea r9, [rdx + rax*2]
shl r10d, cl
movzx edx, word [r9]
and r8, rdx
mov eax, r10d
add r8, rax
inc dx
mov word [r9], dx
mov dword [r11 + r8*4], ebx
inc rbx
cmp rbx, rsi
jb 0x140092340
mov r15, qword [rbp + 0x5f]
mov r10, qword [rsp + 0x28]
add r14, r12
mov qword [rbp + 0x3f], r14
jmp 0x140092530
mov r10, qword [rsp + 0x28]
inc r14
mov r12, qword [rbp - 0x71]
inc r10
mov qword [rsp + 0x28], r10
mov qword [rbp + 0x3f], r14
cmp r14, r12
jbe 0x14009252c
mov rax, qword [rbp - 0x39]
mov rbx, qword [rbp - 0x49]
add rbx, 0xfffffffffffffff9
lea rax, [r12 + rax*4]
cmp r14, rax
jbe 0x140092488
lea rax, [r14 + 0x10]
cmp rax, rbx
cmovb rbx, rax
cmp r14, rbx
jae 0x14009252c
mov rax, rbx
add r10, 4
sub rax, r14
dec rax
and rax, 0xfffffffffffffffc
add r10, rax
mov qword [rsp + 0x28], r10
nop dword [rax]
nop dword [rax + rax]
mov rdx, qword [r13 + 0x68]
mov rax, r14
and rax, qword [rbp + 0x4f]
mov r8d, dword [r13 + 0x50]
mov rcx, qword [rbp + 0x47]
mov r11, qword [r13 + 0x70]
mov r10, qword [rax + rcx]
movabs rax, 0x1fe35a7bd3579bd3
and r10, qword [r13 + 0x48]
mov ecx, dword [r13 + 0x40]
imul r10, rax
shr r10, cl
mov ecx, dword [r13 + 0x54]
mov eax, r10d
lea r9, [rdx + rax*2]
shl r10d, cl
movzx edx, word [r9]
and r8, rdx
mov eax, r10d
add r8, rax
inc dx
mov word [r9], dx
mov dword [r11 + r8*4], r14d
add r14, 4
cmp r14, rbx
jb 0x140092420
jmp 0x140092523
lea rax, [r14 + 8]
cmp rax, rbx
cmovb rbx, rax
cmp r14, rbx
jae 0x14009252c
mov rax, rbx
add r10, 2
sub rax, r14
dec rax
and rax, 0xfffffffffffffffe
add r10, rax
mov qword [rsp + 0x28], r10
nop word [rax + rax]
mov rdx, qword [r13 + 0x68]
mov rax, r14
and rax, qword [rbp + 0x4f]
mov r8d, dword [r13 + 0x50]
mov rcx, qword [rbp + 0x47]
mov r11, qword [r13 + 0x70]
mov r10, qword [rax + rcx]
movabs rax, 0x1fe35a7bd3579bd3
and r10, qword [r13 + 0x48]
mov ecx, dword [r13 + 0x40]
imul r10, rax
shr r10, cl
mov ecx, dword [r13 + 0x54]
mov eax, r10d
lea r9, [rdx + rax*2]
shl r10d, cl
movzx edx, word [r9]
and r8, rdx
mov eax, r10d
add r8, rax
inc dx
mov word [r9], dx
mov dword [r11 + r8*4], r14d
add r14, 2
cmp r14, rbx
jb 0x1400924c0
mov r10, qword [rsp + 0x28]
mov qword [rbp + 0x3f], r14
mov r15, qword [rbp + 0x5f]
mov rbx, qword [rbp - 0x49]
lea rax, [r14 + 8]
mov r9, qword [rbp + 0x47]
mov edi, 0
mov r8, qword [rsp + 0x78]
mov rcx, qword [rbp - 0x79]
cmp rax, rbx
jb 0x140090de0
mov r12, qword [rsp + 0xe8]
mov rdi, qword [rsp + 0xf0]
mov rsi, qword [rsp + 0xf8]
mov rax, qword [rbp + 0x77]
sub rbx, r14
mov rcx, qword [rbp + 0x7f]
add rbx, r10
sub rcx, qword [rbp - 0x29]
sar rcx, 4
mov qword [rax], rbx
mov rax, qword [rbp + 0x87]
add qword [rax], rcx
add rsp, 0x100
pop r15
pop r14
pop r13
pop rbx
pop rbp
ret