Function at 0x1400858e0
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.0x140076e92.14
mov qword [rsp + 0x60], rbx
lea rbx, [0x140000000]
cdqe
movzx eax, byte [rbx + rax + 0x76f9c]
mov r10d, dword [rbx + rax*4 + 0x76f68]
add r10, rbx
mov rbx, qword [rsp + 0x60]
jmp r10
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x140076fe0
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x140077ea0
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x140079e30
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x1400805c0
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x140084300
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x14007b3e0
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x14007d000
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x14007e7f0
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x140081b40
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x140078ce0
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x140082d90
mov qword [rsp + 0x98], r11
add rsp, 0x68
jmp 0x1400858e0
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 0x14007705e
lea rax, [r8 - 7]
mov qword [rbp - 0x49], rax
jmp 0x140077062
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 0x140077e71
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 0x140077213
mov r11d, dword [rbp + 0x37]
and r11, rcx
add r11, r9
cmp dil, byte [r11]
jne 0x140077213
mov rax, r8
xor ecx, ecx
shr rax, 3
mov rdx, r12
test rax, rax
je 0x140077192
mov r10, r11
sub r10, r12
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [r10 + rdx]
cmp r9, r8
jne 0x1400771f9
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140077170
mov r8, qword [rsp]
and r8d, 7
je 0x1400771b3
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x1400771b3
inc rcx
sub r8, 1
jne 0x1400771a0
mov rax, rcx
cmp rax, 4
jb 0x14007720a
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, 0x7e4
jbe 0x14007720a
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 0x14007749d
xor r8, r9
tzcnt rax, r8
shr rax, 3
add rax, rcx
jmp 0x1400771b6
mov r10, qword [rsp + 0x20]
mov r9, qword [rbp + 0x47]
mov edx, dword [rsi + rbx*4]
mov r15, qword [rbp + 0x3f]
mov r11d, dword [rbp + 0x37]
mov dword [rsi + rbx*4], r15d
and r11, rdx
add r11, r9
mov rbx, r15
sub rbx, rdx
cmp dil, byte [r11]
jne 0x140077d20
test rbx, rbx
je 0x140077d20
cmp rbx, r14
ja 0x140077d20
mov rdi, qword [rsp]
xor ecx, ecx
mov rax, rdi
mov rdx, r12
shr rax, 3
test rax, rax
je 0x14007727e
mov r10, r11
sub r10, r12
mov r9, qword [rdx]
mov r8, qword [r10 + rdx]
cmp r9, r8
jne 0x1400772e4
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140077264
mov r8, rdi
and r8d, 7
je 0x1400772a3
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x1400772a3
inc rcx
sub r8, 1
jne 0x140077290
mov rdx, rcx
cmp rdx, 4
jb 0x1400772f5
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, 0x7e4
jbe 0x1400772f5
mov r12, qword [rbp + 0x5f]
mov r8, rdx
mov qword [rsp + 0x18], rdx
mov qword [rbp - 0x61], rbx
mov qword [rsp + 0x10], rax
jmp 0x14007749d
xor r8, r9
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x1400772a6
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 0x140077d0c
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 0x140077495
mov rax, qword [r8 + 0x70]
mov r11d, edx
movzx esi, word [rax + rcx*2]
cmp rdx, rdi
ja 0x140077495
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 0x1400773ae
mov r10, r12
sub r10, rdx
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x140077474
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140077390
mov r8, r11
and r8d, 7
je 0x1400773d3
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r12], al
jne 0x1400773d3
inc rcx
sub r8, 1
jne 0x1400773c0
mov r9, rcx
mov r12, qword [rbp + 0x5f]
mov eax, dword [r12 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007748f
test r9, r9
je 0x14007748f
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 0x14007748f
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 0x140077488
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 0x14007749d
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x1400773d6
mov r8, qword [rsp + 0x18]
jmp 0x1400774a2
mov rdi, qword [rsp]
jmp 0x140077498
mov r12, r8
mov r8, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x10]
cmp rcx, 0x7e4
jbe 0x140077d17
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 0x1400774e6
lea rax, [r8 - 1]
mov r11, rdi
cmp rax, rdi
cmovb r11, rax
jmp 0x1400774e9
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, rdx
and rcx, qword [rbp + 0x4f]
mov rax, qword [r8 + 0x50]
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 0x1400776e1
mov eax, ebx
and rcx, rax
lea rax, [rcx + r11]
cmp r14b, byte [rax + r8]
jne 0x1400776e1
mov rax, qword [rsp]
lea rbx, [rcx + r8]
mov r8, rax
xor ecx, ecx
shr r8, 3
mov rdx, r13
test r8, r8
je 0x1400775e2
mov r10, rbx
sub r10, r13
nop word [rax + rax]
mov rax, qword [rdx]
mov r9, qword [r10 + rdx]
cmp rax, r9
jne 0x1400776cd
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400775c0
mov rax, qword [rsp]
mov r8, rax
and r8d, 7
je 0x140077602
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + rbx], al
jne 0x140077602
inc rcx
sub r8, 1
jne 0x1400775f0
mov rax, rcx
mov rdx, qword [rsp + 8]
cmp rax, 4
jb 0x1400776e1
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, 0x7e4
jbe 0x1400776e1
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 0x140077975
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 0x14007796a
lea rax, [rdx + 7]
cmp rax, qword [rsp + 0x58]
jae 0x14007796a
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 0x1400774c7
xor rax, r9
tzcnt rax, rax
shr rax, 3
add rax, rcx
jmp 0x140077605
mov ecx, dword [rsi + rdi*4]
mov rbx, rdx
mov r8d, dword [rbp + 0x37]
sub rbx, rcx
and r8, rcx
mov dword [rsi + rdi*4], edx
mov rcx, qword [rbp + 0x47]
lea rax, [r8 + r11]
cmp r14b, byte [rax + rcx]
jne 0x140077641
test rbx, rbx
je 0x140077641
mov rdi, qword [rsp]
cmp rbx, r12
ja 0x140077645
lea r11, [r8 + rcx]
xor eax, eax
mov r8, rdi
mov rdx, r13
shr r8, 3
test r8, r8
je 0x14007775a
mov r10, r11
sub r10, r13
nop word [rax + rax]
mov rcx, qword [rdx]
mov r9, qword [rdx + r10]
cmp rcx, r9
jne 0x1400777b9
add rdx, 8
add rax, 8
sub r8, 1
jne 0x140077740
mov r8, rdi
and r8d, 7
je 0x140077779
sub rdx, rax
movzx ecx, byte [rax + rdx]
cmp byte [rax + r11], cl
jne 0x140077779
inc rax
sub r8, 1
jne 0x140077766
mov rdx, rax
cmp rdx, 4
jb 0x1400777ca
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, 0x7e4
jbe 0x1400777ca
mov qword [rsp + 0x30], rdx
mov rdx, qword [rsp + 8]
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], rax
jmp 0x140077645
xor rcx, r9
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x14007777c
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 0x14007793e
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 0x14007793e
mov rax, qword [r12 + 0x70]
mov r11d, edx
movzx esi, word [rax + rcx*2]
cmp rdx, rdi
ja 0x14007793e
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 0x14007787e
mov r10, r13
sub r10, rdx
nop dword [rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x140077948
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140077860
mov r8, r11
and r8d, 7
je 0x1400778a3
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r13], al
jne 0x1400778a3
inc rcx
sub r8, 1
jne 0x140077890
mov r9, rcx
mov eax, dword [r12 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007795c
test r9, r9
je 0x14007795c
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 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 0x14007795c
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 0x14007793e
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 0x140077649
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x1400778a6
mov rdx, qword [rsp + 8]
mov rdi, qword [rsp]
jmp 0x140077649
mov rax, qword [rbp - 0x69]
mov qword [rsp + 0x18], rax
jmp 0x14007797a
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 0x140077a2b
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 0x1400779ca
xor r8d, r8d
jmp 0x140077a2f
cmp rbx, r9
jne 0x1400779d7
mov r8d, 1
jmp 0x140077a2f
cmp r8, 7
jae 0x1400779f3
movzx ecx, r8b
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x140077a2f
cmp rcx, 7
jae 0x140077a0b
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x140077a2f
movsxd rax, dword [r11 + 8]
cmp rbx, rax
jne 0x140077a1c
mov r8d, 2
jmp 0x140077a2f
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x140077a2f
lea r8, [rbx + 0xf]
cmp rbx, r10
ja 0x140077a4f
test r8, r8
je 0x140077a4f
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 0x140077a7d
xor edi, edi
jmp 0x140077af7
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 0x140077b25
movzx r10d, r13w
mov ecx, 0x17
jmp 0x140077b96
cmp r13, 0x82
jae 0x140077b4f
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 0x140077b96
mov ecx, 0x17
cmp r13, 0x842
jae 0x140077b6c
lea eax, [r13 - 0x42]
bsr r10d, eax
add r10w, 0xa
jmp 0x140077b96
cmp r13, 0x1842
jae 0x140077b7d
mov r10d, reloc.WS2_32.dll_setsockopt
jmp 0x140077b96
mov r10d, reloc.WS2_32.dll_shutdown
cmp r13, 0x5842
movzx eax, cx
cmovb ax, r10w
movzx r10d, ax
cmp r9, 0xa
jae 0x140077ba3
sub r9w, 2
jmp 0x140077be3
cmp r9, 0x86
jae 0x140077bc8
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 0x140077be3
cmp r9, 0x846
jae 0x140077bdf
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x140077be3
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 0x140077c1b
cmp r10w, 8
jae 0x140077c1b
cmp r9w, 0x10
jae 0x140077c1b
cmp r9w, 8
jb 0x140077c4f
or dx, 0x40
jmp 0x140077c4f
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 0x140077cb6
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 0x140077d00
mov r9, qword [rbp + 0x47]
movabs r14, 0xbd1e35a7bd000000
mov r12, qword [rbp + 0x67]
mov r10, qword [rbp + 0x4f]
mov rax, r10
and rax, rdx
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 0x140077cd1
mov r12, qword [rbp + 0x5f]
mov r10, qword [rsp + 0x20]
mov r14, qword [rbp + 0x7f]
add r15, r11
mov qword [rbp + 0x3f], r15
jmp 0x140077e37
mov r9, qword [rbp + 0x47]
mov r10, qword [rsp + 0x20]
jmp 0x140077d24
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 0x140077e2f
mov rax, qword [rbp - 0x41]
mov rdx, qword [rsp + 0x58]
add rdx, 0xfffffffffffffff9
lea rax, [r11 + rax*4]
cmp r15, rax
jbe 0x140077dc8
mov r11, qword [rbp + 0x4f]
lea rax, [r15 + 0x10]
cmp rax, rdx
cmovb rdx, rax
cmp r15, rdx
jae 0x140077e25
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
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 0x140077d92
mov r12, qword [rbp + 0x5f]
mov r10, qword [rsp + 0x20]
mov r14, qword [rbp + 0x7f]
mov qword [rbp + 0x3f], r15
jmp 0x140077e3b
lea rax, [r15 + 8]
cmp rax, rdx
cmovb rdx, rax
cmp r15, rdx
jae 0x140077e2f
mov r11, qword [rbp + 0x4f]
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
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 0x140077e00
jmp 0x140077db5
mov r12, qword [rbp + 0x5f]
mov r14, qword [rbp + 0x7f]
jmp 0x140077e3b
mov r14, qword [rbp + 0x7f]
mov r12, qword [rbp + 0x5f]
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 0x1400770b0
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 r12
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 r12, 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 0x140077f19
lea rax, [rdx - 7]
mov qword [rbp - 0x71], rax
jmp 0x140077f1d
mov qword [rbp - 0x71], r12
cmp dword [r11 + 4], 9
mov eax, 0x200
mov edi, 0x40
cmovl eax, edi
mov qword [rbp - 0x69], rax
add rax, r12
mov qword [rsp + 0x20], rax
lea rax, [r12 + 8]
cmp rax, rdx
jae 0x140078b79
movdqa xmm2, xmmword [0x140a1d2c0]
movabs rcx, 0xbd1e35a7bd000000
movdqa xmm3, xmmword [0x140a1d2d0]
mov qword [rsp + 0xe0], rsi
mov qword [rsp + 0xd8], r13
mov qword [rsp + 0xd0], r14
mov qword [rsp + 0xc8], r15
mov dword [rbp + 0x2f], ebx
mov dword [rsp + 0x58], ebx
psllq xmm2, 3
nop
mov rax, qword [rbp + 0x5f]
mov r10, rdx
sub r10, r12
mov r13, r8
cmp r12, r8
mov qword [rsp], r10
mov r15, rbx
mov edx, 0x7e4
mov rax, qword [rax + 0x38]
cmovb r13, r12
mov qword [rsp + 0x30], rax
and r15, r12
mov rax, qword [r15 + r9]
lea r8, [r15 + r9]
movzx r14d, byte [r8]
xor r11d, r11d
imul rax, rcx
mov rcx, qword [rbp + 0x37]
xor r12d, r12d
shr rax, 0x30
mov esi, edx
mov qword [rsp + 8], r11
mov qword [rbp - 0x49], r11
mov qword [rsp + 0x18], rdx
movq xmm0, rax
mov dword [rbp - 0x39], r11d
mov rax, qword [rbp + 0x67]
punpcklqdq xmm0, xmm0
movsxd rdi, dword [rax]
sub rcx, rdi
cmp rcx, qword [rbp + 0x37]
jae 0x1400780d5
mov ebx, dword [rbp + 0x2f]
and rbx, rcx
add rbx, r9
movzx eax, byte [rbx]
cmp r14d, eax
jne 0x1400780d5
mov rax, r10
xor ecx, ecx
shr rax, 3
mov rdx, r8
test rax, rax
je 0x14007805e
mov r11, rbx
sub r11, r8
nop word [rax + rax]
mov r10, qword [rdx]
mov r9, qword [r11 + rdx]
cmp r10, r9
jne 0x1400780c0
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140078040
mov r10, qword [rsp]
mov r9, r10
and r9d, 7
je 0x140078082
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + rbx], al
jne 0x140078082
inc rcx
sub r9, 1
jne 0x140078070
mov rax, rcx
mov r11, qword [rbp + 0x3f]
cmp rax, 4
jb 0x1400780d9
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rsi
jbe 0x1400780d9
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 0x1400780d9
xor r9, r10
mov r10, qword [rsp]
tzcnt rax, r9
shr rax, 3
add rax, rcx
jmp 0x140078085
mov r11, qword [rbp + 0x3f]
mov rdi, qword [rbp + 0x37]
paddq xmm0, xmm2
mov rcx, qword [rsp + 0x30]
mov rax, rdi
mov r9d, dword [rbp + 0x2f]
andps xmm0, xmm3
shr rax, 3
and eax, 1
movdqu xmmword [rbp - 0x61], xmm0
mov rax, qword [rbp + rax*8 - 0x61]
mov qword [rsp + 0x28], rax
movq rax, xmm0
mov ecx, dword [rcx + rax*4]
and r9, rcx
sub rdi, rcx
lea rax, [r9 + r12]
movzx ecx, byte [rax + r11]
cmp r14d, ecx
jne 0x140078202
test rdi, rdi
je 0x140078202
cmp rdi, r13
ja 0x140078202
mov rbx, qword [rbp + 0x3f]
xor ecx, ecx
add rbx, r9
mov rdx, r8
mov r9, r10
shr r9, 3
test r9, r9
je 0x140078182
mov r11, rbx
sub r11, r8
nop word [rax + rax]
mov r10, qword [rdx]
mov rax, qword [r11 + rdx]
cmp r10, rax
jne 0x1400781ed
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x140078160
mov r10, qword [rsp]
mov r9, r10
and r9d, 7
je 0x1400781a2
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + rbx], al
jne 0x1400781a2
inc rcx
sub r9, 1
jne 0x140078190
mov rdx, rcx
cmp rdx, 4
jb 0x140078202
bsr eax, edi
imul r9, rdx, 0x87
imul ecx, eax, 0x1e
sub r9, rcx
add r9, 0x780
cmp rsi, r9
jae 0x140078202
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 0x140078207
xor rax, r10
mov r10, qword [rsp]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x1400781a5
mov r15, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x30]
mov edx, dword [rbp + 0x2f]
mov r9, qword [rbp + 0x3f]
mov rbx, qword [rbp + 0x37]
psrldq xmm0, 8
movq rax, xmm0
mov ecx, dword [rdi + rax*4]
and rdx, rcx
sub rbx, rcx
lea rax, [rdx + r12]
movzx ecx, byte [rax + r9]
cmp r14d, ecx
jne 0x1400782ff
test rbx, rbx
je 0x1400782ff
cmp rbx, r13
ja 0x1400782ff
mov rax, r10
lea r11, [rdx + r9]
shr rax, 3
xor ecx, ecx
test rax, rax
je 0x14007828e
mov r10, r11
sub r10, r8
nop word [rax + rax]
mov r9, qword [r8]
mov rdx, qword [r10 + r8]
cmp r9, rdx
jne 0x1400782ea
add r8, 8
add rcx, 8
sub rax, 1
jne 0x140078270
mov r10, qword [rsp]
mov rdx, r10
and edx, 7
je 0x1400782ac
movzx eax, byte [r8]
cmp byte [rcx + r11], al
jne 0x1400782ac
inc r8
inc rcx
sub rdx, 1
jne 0x140078296
mov r8, rcx
mov r9, qword [rbp + 0x3f]
cmp r8, 4
jb 0x1400782ff
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, r8, 0x87
sub rax, rcx
add rax, 0x780
cmp rsi, rax
jae 0x1400782ff
mov rcx, r8
mov qword [rsp + 0x18], rax
mov qword [rsp + 8], rcx
mov r15, rax
mov qword [rbp - 0x49], rbx
jmp 0x140078304
mov r10, qword [rsp]
xor rdx, r9
tzcnt r8, rdx
shr r8, 3
add r8, rcx
jmp 0x1400782af
mov rcx, qword [rsp + 8]
mov rax, qword [rsp + 0x28]
mov r12, qword [rbp + 0x37]
mov dword [rdi + rax*4], r12d
cmp r15, 0x7e4
jbe 0x140078ba2
mov r11d, dword [rsp + 0x58]
lea rdi, [r12 + 1]
mov qword [rsp + 0x20], rdi
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 0x140078359
lea rax, [rcx - 1]
mov rsi, r10
cmp rax, r10
cmovb rsi, rax
jmp 0x14007835b
xor esi, esi
mov rax, qword [rbp + 0x5f]
mov edx, 0x7e4
mov qword [rsp + 0x48], rdx
mov r13, rdi
mov rdx, qword [rbp - 0x79]
movabs rcx, 0xbd1e35a7bd000000
cmp rdi, rdx
mov qword [rsp + 0x38], rsi
mov rax, qword [rax + 0x38]
mov r14d, 0x7e4
cmovb rdx, rdi
mov qword [rsp + 0x30], rax
and r13, qword [rbp + 0x47]
lea r8, [r9 + r13]
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x50], 0
lea rax, [rsi + r13]
movzx r15d, byte [rax + r9]
mov rax, qword [r8]
mov r9, qword [rsp + 0x20]
imul rax, rcx
shr rax, 0x30
movq xmm1, rax
mov rax, qword [rbp + 0x67]
punpcklqdq xmm1, xmm1
movsxd rdi, dword [rax]
sub r9, rdi
cmp r9, qword [rsp + 0x20]
jae 0x1400784bb
mov eax, r11d
mov r11, qword [rbp + 0x3f]
and r9, rax
lea rax, [rsi + r9]
movzx ecx, byte [rax + r11]
cmp r15d, ecx
jne 0x1400784bf
mov rbx, r11
xor eax, eax
add rbx, r9
mov rdx, r8
mov r9, r10
shr r9, 3
test r9, r9
je 0x140078441
mov r11, rbx
sub r11, r8
mov r10, qword [rdx]
mov rcx, qword [r11 + rdx]
cmp r10, rcx
jne 0x1400784a6
add rdx, 8
add rax, 8
sub r9, 1
jne 0x140078423
mov r10, qword [rsp]
mov r9, r10
and r9d, 7
je 0x140078462
sub rdx, rax
nop dword [rax]
movzx ecx, byte [rdx + rax]
cmp byte [rax + rbx], cl
jne 0x140078462
inc rax
sub r9, 1
jne 0x140078450
mov rcx, rax
mov rdx, qword [rsp + 0x28]
cmp rcx, 4
jb 0x1400784bb
mov r11, qword [rbp + 0x3f]
imul rax, rcx, 0x87
add rax, 0x78f
cmp rax, r14
jbe 0x1400784bf
mov qword [rsp + 0x48], rax
mov r14, rax
lea rax, [rcx + r13]
mov qword [rsp + 0x38], rcx
movzx r15d, byte [rax + r11]
mov rsi, rcx
mov qword [rsp + 0x40], rdi
jmp 0x1400784bf
xor rcx, r10
mov r10, qword [rsp]
tzcnt rcx, rcx
shr rcx, 3
add rcx, rax
jmp 0x140078465
mov r11, qword [rbp + 0x3f]
mov rax, qword [rsp + 0x20]
movdqa xmm0, xmm2
mov rcx, qword [rsp + 0x30]
paddq xmm0, xmm1
mov r9d, dword [rbp + 0x2f]
andps xmm0, xmm3
mov rdi, qword [rsp + 0x20]
shr rax, 3
and eax, 1
movdqu xmmword [rbp - 0x61], xmm0
mov rax, qword [rbp + rax*8 - 0x61]
mov qword [rbp - 0x61], rax
movq rax, xmm0
mov ecx, dword [rcx + rax*4]
and r9, rcx
sub rdi, rcx
lea rax, [r9 + rsi]
movzx ecx, byte [rax + r11]
cmp r15d, ecx
jne 0x1400785f3
test rdi, rdi
je 0x1400785f3
cmp rdi, rdx
ja 0x1400785f3
mov rbx, qword [rbp + 0x3f]
xor ecx, ecx
add rbx, r9
mov rdx, r8
mov r9, r10
shr r9, 3
test r9, r9
je 0x140078572
mov r11, rbx
sub r11, r8
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rdx]
mov rax, qword [r11 + rdx]
cmp r10, rax
jne 0x1400785de
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x140078550
mov r10, qword [rsp]
mov r9, r10
and r9d, 7
je 0x140078592
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + rbx], al
jne 0x140078592
inc rcx
sub r9, 1
jne 0x140078580
mov rdx, rcx
cmp rdx, 4
jb 0x1400785f3
bsr eax, edi
imul r9, rdx, 0x87
imul ecx, eax, 0x1e
sub r9, rcx
add r9, 0x780
cmp r14, r9
jae 0x1400785f3
mov r11, qword [rbp + 0x3f]
lea rax, [rdx + r13]
mov rsi, rdx
mov qword [rsp + 0x38], rdx
mov r14, r9
mov qword [rsp + 0x48], r9
mov r13, r9
mov qword [rsp + 0x40], rdi
movzx r15d, byte [rax + r11]
jmp 0x1400785f8
xor rax, r10
mov r10, qword [rsp]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140078595
mov r13, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
mov r11d, dword [rbp + 0x2f]
mov rdi, qword [rsp + 0x20]
mov edx, r11d
mov r9, qword [rbp + 0x3f]
mov rbx, rdi
psrldq xmm0, 8
movq rax, xmm0
mov ecx, dword [rcx + rax*4]
and rdx, rcx
sub rbx, rcx
lea rax, [rdx + rsi]
movzx ecx, byte [rax + r9]
cmp r15d, ecx
jne 0x1400786f4
test rbx, rbx
je 0x1400786f4
cmp rbx, qword [rsp + 0x28]
ja 0x1400786f4
lea r11, [rdx + r9]
xor ecx, ecx
mov rdx, r10
shr rdx, 3
test rdx, rdx
je 0x140078692
mov r10, r11
sub r10, r8
nop dword [rax]
nop word [rax + rax]
mov r9, qword [r8]
mov rax, qword [r10 + r8]
cmp r9, rax
jne 0x140078769
add r8, 8
add rcx, 8
sub rdx, 1
jne 0x140078670
mov r10, qword [rsp]
mov rdx, r10
and edx, 7
je 0x1400786b6
nop word [rax + rax]
movzx eax, byte [r8]
cmp byte [rcx + r11], al
jne 0x1400786b6
inc r8
inc rcx
sub rdx, 1
jne 0x1400786a0
mov rdx, rcx
mov r9, qword [rbp + 0x3f]
mov r11d, dword [rbp + 0x2f]
cmp rdx, 4
jb 0x1400786f4
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r14, rax
jae 0x1400786f4
mov qword [rsp + 0x38], rdx
mov r13, 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 r13, rax
jb 0x14007878c
mov ecx, dword [rbp + 0x37]
inc rdi
movups xmm0, xmmword [rsp + 0x38]
inc ecx
inc r15
movups xmm1, xmmword [rsp + 0x48]
inc r12
mov qword [rsp + 0x20], 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 0x140078781
lea rax, [rdi + 7]
cmp rax, qword [rsp + 0x60]
jae 0x140078781
mov r15, qword [rbp - 0x41]
mov rcx, qword [rbp - 0x51]
mov qword [rsp + 0x18], r15
mov qword [rsp + 8], rcx
jmp 0x140078338
mov r10, qword [rsp]
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x1400786b9
mov r13, qword [rbp - 0x51]
mov qword [rsp + 8], r13
jmp 0x140078791
mov r13, qword [rsp + 8]
mov rax, qword [rbp - 0x69]
mov r10, qword [rbp - 0x79]
mov rbx, qword [rbp - 0x49]
lea r11, [rax + r13*2]
mov rax, qword [rbp - 0x31]
add r11, r12
add rax, r12
cmp rax, r10
mov qword [rsp + 0x20], r11
mov r11, qword [rbp + 0x67]
cmovb r10, rax
lea rdx, [r11 + 4]
cmp rbx, r10
ja 0x140078842
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 0x1400787e1
xor r8d, r8d
jmp 0x140078846
cmp rbx, r9
jne 0x1400787ee
mov r8d, 1
jmp 0x140078846
cmp r8, 7
jae 0x14007880a
movzx ecx, r8b
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x140078846
cmp rcx, 7
jae 0x140078822
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x140078846
movsxd rax, dword [r11 + 8]
cmp rbx, rax
jne 0x140078833
mov r8d, 2
jmp 0x140078846
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x140078846
lea r8, [rbx + 0xf]
cmp rbx, r10
ja 0x140078866
test r8, r8
je 0x140078866
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, r13d
mov dword [r11], r15d
mov dword [r11 + 4], eax
mov r14d, dword [rcx + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x140078893
xor edi, edi
jmp 0x14007890b
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, [rsi + r13]
mov eax, 0x3ff
mov dword [r11 + 8], edi
and r8w, ax
movsxd r9, edx
cmp r15, 6
jae 0x140078935
movzx r10d, r15w
mov eax, 0x17
jmp 0x1400789a5
cmp r15, 0x82
jae 0x14007895f
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 0x1400789a5
cmp r15, 0x842
jae 0x14007897c
lea eax, [r15 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x1400789a5
mov eax, 0x17
cmp r15, 0x1842
jae 0x140078990
lea r10d, [rax - 2]
jmp 0x1400789a5
cmp r15, 0x5842
jae 0x1400789a1
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x1400789a5
movzx r10d, ax
cmp r9, 0xa
jae 0x1400789b2
sub r9w, 2
jmp 0x1400789f2
cmp r9, 0x86
jae 0x1400789d7
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 0x1400789f2
cmp r9, 0x846
jae 0x1400789ee
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x1400789f2
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 0x140078a2a
cmp r10w, 8
jae 0x140078a2a
cmp r9w, 0x10
jae 0x140078a2a
cmp r9w, 8
jb 0x140078a5e
or dx, 0x40
jmp 0x140078a5e
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, [r12 + 2]
add qword [rax], r15
lea rax, [r12 + r13]
cmp rax, r8
mov qword [rsp + 0x10], r10
cmovb r8, rax
mov rax, r13
shr rax, 2
cmp rbx, rax
jae 0x140078ac6
lea rax, [rbx*4]
mov rcx, r13
sub rcx, rax
lea rax, [rcx + r12]
cmp rdx, rax
mov eax, 2
cmova rcx, rax
lea rdx, [r12 + rcx]
cmp r8, rdx
cmovb rdx, r8
cmp rdx, r8
jae 0x140078b25
mov r11, qword [rbp + 0x3f]
movabs r13, 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, r13
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 0x140078af0
mov r10, qword [rsp + 0x10]
mov r13, qword [rsp + 8]
add r12, r13
mov qword [rbp + 0x37], r12
mov rbx, qword [rbp + 0x47]
mov rdx, qword [rsp + 0x60]
lea rax, [r12 + 8]
mov r9, qword [rbp + 0x3f]
movabs rcx, 0xbd1e35a7bd000000
mov r8, qword [rbp - 0x79]
cmp rax, rdx
jb 0x140077f90
mov r15, qword [rsp + 0xc8]
mov r14, qword [rsp + 0xd0]
mov r13, qword [rsp + 0xd8]
mov rsi, qword [rsp + 0xe0]
mov rcx, qword [rbp + 0x77]
mov rax, qword [rbp + 0x6f]
sub rdx, r12
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 r12
pop rdi
pop rbx
pop rbp
ret
mov r10, qword [rsp + 0x10]
inc r12
mov r11, qword [rsp + 0x20]
inc r10
mov qword [rsp + 0x10], r10
mov qword [rbp + 0x37], r12
cmp r12, r11
jbe 0x140078b2c
mov rax, qword [rbp - 0x69]
mov rdx, qword [rsp + 0x60]
add rdx, 0xfffffffffffffff9
lea rax, [r11 + rax*4]
cmp r12, rax
jbe 0x140078c56
mov rbx, qword [rbp + 0x47]
lea rax, [r12 + 0x10]
cmp rax, rdx
cmovb rdx, rax
cmp r12, rdx
jae 0x140078b30
add r10, 4
mov rax, rdx
sub rax, r12
dec rax
and rax, 0xfffffffffffffffc
add r10, rax
mov qword [rsp + 0x10], r10
mov r10, qword [rbp + 0x5f]
mov rax, rbx
and rax, r12
mov rcx, qword [rax + r9]
movabs rax, 0xbd1e35a7bd000000
imul rcx, rax
mov eax, r12d
shr rcx, 0x30
and eax, 8
add ecx, eax
mov rax, qword [r10 + 0x38]
movzx ecx, cx
mov dword [rax + rcx*4], r12d
add r12, 4
cmp r12, rdx
jb 0x140078c10
mov r10, qword [rsp + 0x10]
mov qword [rbp + 0x37], r12
jmp 0x140078b30
lea rax, [r12 + 8]
cmp rax, rdx
cmovb rdx, rax
cmp r12, rdx
jae 0x140078b2c
mov rbx, qword [rbp + 0x47]
add r10, 2
mov rax, rdx
sub rax, r12
dec rax
and rax, 0xfffffffffffffffe
add r10, rax
mov qword [rsp + 0x10], r10
mov r10, qword [rbp + 0x5f]
nop dword [rax]
mov rax, rbx
and rax, r12
mov rcx, qword [rax + r9]
movabs rax, 0xbd1e35a7bd000000
imul rcx, rax
mov eax, r12d
shr rcx, 0x30
and eax, 8
add ecx, eax
mov rax, qword [r10 + 0x38]
movzx ecx, cx
mov dword [rax + rcx*4], r12d
add r12, 2
cmp r12, rdx
jb 0x140078c90
mov r10, qword [rsp + 0x10]
mov qword [rbp + 0x37], r12
jmp 0x140078b30
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, 0xf8
mov rbx, qword [rbp + 0x57]
mov rax, rcx
mov r10, qword [rbp + 0x6f]
mov r11, r8
mov r8d, 1
mov r13, 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 [rbp - 0x79], r8
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x70], rdx
cmp rax, 8
jb 0x140078d55
lea rax, [rdx - 7]
mov qword [rbp - 0x51], rax
jmp 0x140078d59
mov qword [rbp - 0x51], r13
cmp dword [rbx + 4], 9
mov eax, 0x200
mov edi, 0x40
cmovl eax, edi
mov qword [rbp - 0x49], rax
add rax, r13
mov qword [rsp + 0x30], rax
lea rax, [r13 + 8]
cmp rax, rdx
jae 0x140079e03
movdqa xmm2, xmmword [0x140a1d2c0]
mov eax, r9d
movdqa xmm3, xmmword [0x140a1d2d0]
movabs rcx, 0xbd1e35a7bd000000
mov rbx, qword [rbp + 0x5f]
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xe8], r12
mov qword [rsp + 0xe0], r14
mov qword [rsp + 0xd8], r15
mov dword [rbp + 0x2f], eax
mov dword [rsp + 0x5c], eax
psllq xmm2, 3
mov r12, qword [rbp + 0x37]
mov r10, rdx
sub r10, r13
mov rdx, r8
cmp r13, r8
mov qword [rsp + 0x10], r10
mov r14, r9
mov r8d, 0x7e4
cmovb rdx, r13
mov qword [rsp], r8
mov r13, qword [rbx + 0x38]
xor edi, edi
and r14, r12
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 + 0x18], rdx
mov qword [rsp + 8], r9
movq xmm1, rax
mov rax, qword [rbp + 0x67]
punpcklqdq xmm1, xmm1
movsxd rbx, dword [rax]
sub rcx, rbx
cmp rcx, r12
jae 0x140078f24
mov eax, dword [rbp + 0x2f]
and rax, rcx
add r11, rax
movzx eax, byte [r11]
cmp esi, eax
jne 0x140078f20
mov r8, r10
xor ecx, ecx
shr r8, 3
mov rdx, r9
test r8, r8
je 0x140078e9f
mov r10, r11
sub r10, r9
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x140078f0a
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140078e80
mov r10, qword [rsp + 0x10]
mov r8, r10
and r8d, 7
je 0x140078ec3
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x140078ec3
inc rcx
sub r8, 1
jne 0x140078eb0
mov rax, rcx
mov r9, qword [rsp + 8]
mov rdx, qword [rsp + 0x18]
cmp rax, 4
jb 0x140078f20
mov r11, qword [rbp + 0x3f]
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rdi
jbe 0x140078f24
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 0x140078f24
mov r10, qword [rsp + 0x10]
xor rax, r9
tzcnt rax, rax
shr rax, 3
add rax, rcx
jmp 0x140078ec6
mov r11, qword [rbp + 0x3f]
mov rbx, qword [rbp + 0x37]
mov rax, r12
shr rax, 3
movdqa xmm0, xmm2
and eax, 1
paddq xmm0, xmm1
andps xmm0, xmm3
movdqu xmmword [rsp + 0x60], xmm0
mov r12, qword [rsp + rax*8 + 0x60]
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 0x140079028
test rbx, rbx
je 0x140079028
cmp rbx, rdx
ja 0x140079028
add r11, r8
xor ecx, ecx
mov r8, r10
mov rdx, r9
shr r8, 3
test r8, r8
je 0x140078fc3
mov r10, r11
sub r10, r9
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x14007910f
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140078fa0
mov r10, qword [rsp + 0x10]
mov r8, r10
and r8d, 7
je 0x140078fe3
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x140078fe3
inc rcx
sub r8, 1
jne 0x140078fd0
mov rdx, rcx
mov r11, qword [rbp + 0x3f]
cmp rdx, 4
jb 0x140079028
bsr eax, ebx
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x140079028
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 rbx, qword [rbp + 0x37]
mov r14, qword [rsp + 8]
psrldq xmm0, 8
movq rax, xmm0
mov edx, dword [r13 + rax*4]
mov eax, dword [rbp + 0x2f]
sub rbx, rdx
and rdx, rax
lea rax, [rdx + r15]
mov r15, qword [rsp + 0x18]
movzx ecx, byte [rax + r11]
cmp esi, ecx
jne 0x140079139
test rbx, rbx
je 0x140079139
cmp rbx, r15
ja 0x140079139
add r11, rdx
mov r8, r10
shr r8, 3
xor edx, edx
mov rcx, r14
test r8, r8
je 0x1400790b3
mov r10, r11
sub r10, r14
nop dword [rax + rax]
mov r9, qword [rcx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x140079128
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x140079090
mov r10, qword [rsp + 0x10]
mov r8, r10
and r8d, 7
je 0x1400790d5
nop dword [rax]
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x1400790d5
inc rcx
inc rdx
sub r8, 1
jne 0x1400790c0
mov r8, rdx
mov r11, qword [rbp + 0x3f]
cmp r8, 4
jb 0x140079139
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, r8, 0x87
sub rax, rcx
add rax, 0x780
cmp rdi, rax
jae 0x140079139
mov qword [rsp + 0x28], r8
mov r10, rax
mov qword [rsp], rax
mov qword [rbp - 0x69], rbx
jmp 0x14007913d
mov r10, qword [rsp + 0x10]
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140078fe6
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x1400790d8
mov r10, qword [rsp]
mov rax, qword [rbp + 0x37]
mov rdi, qword [rbp + 0x5f]
mov dword [r13 + r12*4], eax
mov r13, rax
test r13b, 3
jne 0x1400792db
mov r12, qword [rsp + 0x10]
cmp r12, 0x20
jb 0x1400792db
mov rbx, qword [rdi + 0x50]
cmp rbx, rax
ja 0x1400792d3
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 0x1400792c2
mov rax, qword [rdi + 0x48]
mov r10d, dword [rax + r9*4]
mov dword [rax + r9*4], ebx
cmp rbx, r13
jne 0x1400792be
mov eax, 0xffffffff
cmp r10, rax
je 0x1400792be
mov edi, r13d
sub edi, r10d
cmp rdi, r15
ja 0x1400792ba
and r10, qword [rbp + 0x47]
mov r8, r12
add r10, r11
shr r8, 3
xor ecx, ecx
mov rdx, r14
test r8, r8
je 0x14007923a
mov r11, r10
sub r11, r14
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r11]
cmp r9, rax
jne 0x1400792a9
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140079220
mov r8, r12
and r8d, 7
je 0x140079259
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r10], al
jne 0x140079259
inc rcx
sub r8, 1
jne 0x140079246
mov rdx, rcx
mov r11, qword [rbp + 0x3f]
cmp rdx, 4
jb 0x1400792ba
mov r10, qword [rsp]
cmp rdx, qword [rsp + 0x28]
jbe 0x1400792a3
bsr eax, edi
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r10
jbe 0x1400792a3
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 0x1400792c2
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14007925c
mov rdi, qword [rbp + 0x5f]
mov r10, qword [rsp]
add rbx, 4
add rsi, 4
cmp rbx, r13
jbe 0x140079180
lea rax, [r13 + 4]
mov qword [rdi + 0x50], rax
cmp r10, 0x7e4
jbe 0x140079c70
mov eax, dword [rsp + 0x5c]
lea r12, [r13 + 1]
mov r15, qword [rsp + 0x10]
mov dword [rbp + 0x2f], eax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x58], 0
mov rcx, qword [rbp + 0x57]
dec r15
mov qword [rsp + 0x10], r15
cmp dword [rcx + 4], 5
jge 0x14007932b
dec rax
mov r9, r15
cmp rax, r15
cmovb r9, rax
jmp 0x14007932e
xor r9d, r9d
mov r10, qword [rbp - 0x79]
mov r8d, 0x7e4
mov r15, qword [rbp + 0x47]
cmp r12, r10
mov r13, qword [rdi + 0x38]
movabs rcx, 0xbd1e35a7bd000000
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
mov r8, r12
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x60], r10
mov r14, r9
lea rax, [r15 + r9]
mov qword [rsp + 0x18], rdx
movzx esi, byte [rax + r11]
mov edi, 0x7e4
mov rax, qword [rdx]
imul rax, rcx
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 0x140079484
mov eax, dword [rbp + 0x2f]
and r8, rax
lea rax, [r9 + r8]
movzx ecx, byte [rax + r11]
cmp esi, ecx
jne 0x140079484
mov rdi, qword [rsp + 0x10]
add r11, r8
mov r8, rdi
xor ecx, ecx
shr r8, 3
test r8, r8
je 0x14007940e
mov r10, r11
sub r10, rdx
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14007967b
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400793f0
mov r8, rdi
and r8d, 7
je 0x140079433
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x140079433
inc rcx
sub r8, 1
jne 0x140079420
mov rax, rcx
mov r11, qword [rbp + 0x3f]
mov edi, 0x7e4
mov rdx, qword [rsp + 0x18]
mov r10, qword [rsp + 0x60]
cmp rax, 4
jb 0x140079484
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rdi
jbe 0x140079484
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]
mov rbx, qword [rsp + 0x30]
mov rax, r12
shr rax, 3
paddq xmm0, xmm2
and eax, 1
andps xmm0, xmm3
movdqu xmmword [rbp - 0x31], xmm0
mov r12, qword [rbp + rax*8 - 0x31]
movq rax, xmm0
mov r8d, dword [r13 + rax*4]
mov eax, dword [rbp + 0x2f]
sub rbx, r8
and r8, rax
lea rax, [r8 + r14]
movzx ecx, byte [rax + r11]
cmp esi, ecx
jne 0x14007958f
test rbx, rbx
je 0x14007958f
cmp rbx, r10
ja 0x14007958f
mov rax, qword [rsp + 0x10]
add r11, r8
mov r8, rax
xor ecx, ecx
shr r8, 3
test r8, r8
je 0x140079523
mov r10, r11
sub r10, qword [rsp + 0x18]
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14007968f
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140079500
mov rax, qword [rsp + 0x10]
mov r8, rax
and r8d, 7
je 0x140079543
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x140079543
inc rcx
sub r8, 1
jne 0x140079530
mov rdx, rcx
mov r11, qword [rbp + 0x3f]
cmp rdx, 4
jb 0x14007958f
bsr eax, ebx
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x14007958f
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 + 0x30]
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 0x1400796b4
test rbx, rbx
je 0x1400796b4
cmp rbx, qword [rsp + 0x60]
ja 0x1400796b4
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 0x14007961e
mov r10, r11
sub r10, rax
nop dword [rax + rax]
mov r9, qword [rcx]
mov rax, qword [r10 + rcx]
cmp r9, rax
jne 0x1400796a3
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x140079600
mov r8, rsi
and r8d, 7
je 0x14007963c
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x14007963c
inc rcx
inc rdx
sub r8, 1
jne 0x140079627
mov r8, rdx
mov r11, qword [rbp + 0x3f]
cmp r8, 4
jb 0x1400796b4
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, r8, 0x87
sub rax, rcx
add rax, 0x780
cmp rdi, rax
jae 0x1400796b4
mov r14, r8
mov qword [rsp + 0x38], r8
mov r10, rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rbx
jmp 0x1400796be
xor rax, r9
tzcnt rax, rax
shr rax, 3
add rax, rcx
jmp 0x140079436
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140079546
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14007963f
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 + 0x30]
mov r15, qword [rsp + 0x10]
test r12b, 3
jne 0x140079863
cmp r15, 0x20
jb 0x140079863
mov rbx, qword [rdi + 0x50]
cmp rbx, r12
ja 0x14007985a
mov r13, qword [rbp + 0x47]
lea rsi, [rbx + 0x20]
nop word [rax + rax]
mov r8d, dword [rdi + 0x40]
mov rax, r13
and rax, rbx
mov r9d, r8d
imul r8d, dword [rdi + 0x5c]
and r9d, 0x3fffffff
movzx edx, byte [rax + r11]
mov rax, r13
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 0x140079849
mov rax, qword [rdi + 0x48]
mov r11d, dword [rax + r9*4]
mov dword [rax + r9*4], ebx
cmp rbx, r12
jne 0x14007983b
mov eax, 0xffffffff
cmp r11, rax
je 0x14007983b
mov edi, r12d
sub edi, r11d
cmp rdi, qword [rsp + 0x60]
ja 0x140079841
mov rcx, qword [rsp + 0x18]
and r11, r13
add r11, qword [rbp + 0x3f]
mov r8, r15
shr r8, 3
xor eax, eax
mov rdx, rcx
test r8, r8
je 0x1400797ba
mov r10, r11
sub r10, rcx
nop
mov r9, qword [rdx]
mov rcx, qword [r10 + rdx]
cmp r9, rcx
jne 0x14007982a
add rdx, 8
add rax, 8
sub r8, 1
jne 0x1400797a0
mov r8, r15
and r8d, 7
je 0x1400797d9
sub rdx, rax
movzx ecx, byte [rdx + rax]
cmp byte [rax + r11], cl
jne 0x1400797d9
inc rax
sub r8, 1
jne 0x1400797c6
mov rdx, rax
mov r10, qword [rsp + 0x48]
cmp rdx, 4
jb 0x140079841
cmp rdx, r14
jbe 0x140079841
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 0x140079845
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 0x140079845
xor rcx, r9
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x1400797dc
mov r11, qword [rbp + 0x3f]
jmp 0x140079849
mov r11, qword [rbp + 0x3f]
mov rdi, qword [rbp + 0x5f]
add rbx, 4
add rsi, 4
cmp rbx, r12
jbe 0x140079700
lea rax, [r12 + 4]
mov qword [rdi + 0x50], rax
mov rax, qword [rsp]
mov r13, qword [rbp + 0x37]
add rax, 0xaf
cmp r10, rax
jb 0x1400798d3
mov ecx, dword [rsp + 0x58]
inc r13
movups xmm0, xmmword [rsp + 0x38]
inc qword [rsp + 0x20]
inc ecx
movups xmm1, xmmword [rsp + 0x48]
inc r12
mov qword [rbp + 0x37], r13
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x58], ecx
movups xmmword [rbp - 0x71], xmm0
movups xmmword [rbp - 0x61], xmm1
cmp ecx, 4
jge 0x1400798cd
lea rax, [r12 + 7]
cmp rax, qword [rsp + 0x70]
jae 0x1400798cd
mov rax, qword [rbp - 0x61]
mov qword [rsp], rax
mov rax, qword [rbp - 0x71]
mov qword [rsp + 0x28], rax
jmp 0x14007930a
mov r15, qword [rbp - 0x71]
jmp 0x1400798d8
mov r15, qword [rsp + 0x28]
mov rax, qword [rbp - 0x49]
mov r10, qword [rbp - 0x79]
mov rbx, qword [rbp - 0x69]
lea r11, [rax + r15*2]
mov rax, qword [rbp - 0x41]
add r11, r13
add rax, r13
cmp rax, r10
mov qword [rsp + 0x30], r11
mov r11, qword [rbp + 0x67]
cmovb r10, rax
lea rdx, [r11 + 4]
cmp rbx, r10
ja 0x140079989
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 0x140079928
xor r8d, r8d
jmp 0x14007998d
cmp rbx, r9
jne 0x140079935
mov r8d, 1
jmp 0x14007998d
cmp r8, 7
jae 0x140079951
movzx ecx, r8b
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14007998d
cmp rcx, 7
jae 0x140079969
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14007998d
movsxd rax, dword [r11 + 8]
cmp rbx, rax
jne 0x14007997a
mov r8d, 2
jmp 0x14007998d
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x14007998d
lea r8, [rbx + 0xf]
cmp rbx, r10
ja 0x1400799ad
test r8, r8
je 0x1400799ad
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 r12, qword [rsp + 0x20]
movzx eax, sil
shl eax, 0x19
or eax, r15d
mov dword [r11], r12d
mov dword [r11 + 4], eax
mov r14d, dword [rcx + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x1400799df
xor edi, edi
jmp 0x140079a57
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, [r15 + rsi]
mov eax, 0x3ff
mov dword [r11 + 8], edi
and r8w, ax
movsxd r9, edx
cmp r12, 6
jae 0x140079a81
movzx r10d, r12w
mov eax, 0x17
jmp 0x140079af4
cmp r12, 0x82
jae 0x140079aad
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 0x140079af4
cmp r12, 0x842
jae 0x140079acb
lea eax, [r12 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x140079af4
mov eax, 0x17
cmp r12, 0x1842
jae 0x140079adf
lea r10d, [rax - 2]
jmp 0x140079af4
cmp r12, 0x5842
jae 0x140079af0
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x140079af4
movzx r10d, ax
cmp r9, 0xa
jae 0x140079b01
sub r9w, 2
jmp 0x140079b41
cmp r9, 0x86
jae 0x140079b26
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 0x140079b41
cmp r9, 0x846
jae 0x140079b3d
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x140079b41
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 0x140079b79
cmp r10w, 8
jae 0x140079b79
cmp r9w, 0x10
jae 0x140079b79
cmp r9w, 8
jb 0x140079bad
or dx, 0x40
jmp 0x140079bad
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, [r13 + 2]
add qword [rax], r12
lea rax, [r15 + r13]
cmp rax, r8
mov qword [rsp + 0x20], r10
cmovb r8, rax
mov rax, r15
shr rax, 2
cmp rbx, rax
jae 0x140079c14
lea rax, [rbx*4]
mov rcx, r15
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
mov rbx, qword [rbp + 0x5f]
cmp rdx, r8
jae 0x140079c64
mov r9, qword [rbp + 0x3f]
movabs r10, 0xbd1e35a7bd000000
mov r13, qword [rbp + 0x47]
nop
mov rax, r13
and rax, rdx
mov rcx, qword [rax + r9]
mov eax, edx
imul rcx, r10
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 0x140079c30
mov r13, qword [rbp + 0x37]
mov r10, qword [rsp + 0x20]
add r13, r15
mov qword [rbp + 0x37], r13
jmp 0x140079db7
mov r10, qword [rsp + 0x20]
inc r13
mov r11, qword [rsp + 0x30]
inc r10
mov qword [rsp + 0x20], r10
mov qword [rbp + 0x37], r13
cmp r13, r11
jbe 0x140079db3
mov rax, qword [rbp - 0x49]
mov rdx, qword [rsp + 0x70]
add rdx, 0xfffffffffffffff9
lea rax, [r11 + rax*4]
cmp r13, rax
jbe 0x140079d30
mov r11, qword [rbp + 0x3f]
lea rax, [r13 + 0x10]
mov r9, qword [rbp + 0x47]
cmp rax, rdx
cmovb rdx, rax
cmp r13, rdx
jae 0x140079dad
add r10, 4
mov rax, rdx
sub rax, r13
dec rax
and rax, 0xfffffffffffffffc
add r10, rax
mov qword [rsp + 0x20], r10
movabs r10, 0xbd1e35a7bd000000
nop dword [rax + rax]
mov rax, r9
and rax, r13
mov rcx, qword [rax + r11]
mov eax, r13d
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], r13d
add r13, 4
cmp r13, rdx
jb 0x140079cf0
mov rbx, qword [rbp + 0x5f]
mov r10, qword [rsp + 0x20]
mov qword [rbp + 0x37], r13
jmp 0x140079dbf
lea rax, [r13 + 8]
cmp rax, rdx
cmovb rdx, rax
cmp r13, rdx
jae 0x140079db3
mov r11, qword [rbp + 0x3f]
add r10, 2
mov r9, qword [rbp + 0x47]
mov rax, rdx
sub rax, r13
dec rax
and rax, 0xfffffffffffffffe
add r10, rax
mov qword [rsp + 0x20], r10
movabs r10, 0xbd1e35a7bd000000
nop dword [rax + rax]
mov rax, r9
and rax, r13
mov rcx, qword [rax + r11]
mov eax, r13d
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], r13d
add r13, 2
cmp r13, rdx
jb 0x140079d70
mov rbx, qword [rbp + 0x5f]
mov r10, qword [rsp + 0x20]
mov qword [rbp + 0x37], r13
jmp 0x140079dbf
mov rbx, qword [rbp + 0x5f]
jmp 0x140079dbf
mov rbx, qword [rbp + 0x5f]
mov r11, qword [rbp + 0x3f]
mov r9, qword [rbp + 0x47]
mov rdx, qword [rsp + 0x70]
lea rax, [r13 + 8]
mov r8, qword [rbp - 0x79]
movabs rcx, 0xbd1e35a7bd000000
cmp rax, rdx
jb 0x140078dd0
mov r15, qword [rsp + 0xd8]
mov r14, 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, r13
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 r13
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 [0x140af1b40]
xor rax, rsp
mov qword [rbp + 0x30], rax
mov r13, 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 r10d, 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 r10, cl
mov rcx, qword [rdx + 0x10]
sub r10, 0x10
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x58], r13
mov qword [rbp - 0x28], r15
mov qword [rsp + 0x78], r10
mov qword [rbp - 0x80], rcx
mov qword [rbp - 0x18], r13
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x70], r14
cmp rax, 8
jb 0x140079f04
lea rax, [r14 - 7]
mov qword [rbp - 0x50], rax
jmp 0x140079f08
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 0x14007b3a4
movdqa xmm2, xmmword [0x140a1d2c0]
movdqa xmm3, xmmword [0x140a1d2e0]
mov r13, qword [rsp + 0x30]
lea rax, [r11 + rcx]
mov r9, r14
mov qword [rsp + 0x28], 0x7e4
sub r9, r11
mov r15, r10
cmp r11, r10
mov qword [rsp + 8], r9
mov rcx, r10
mov r14, rdi
cmovb r15, r11
cmp rax, r10
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 0x14007a0b6
mov r10d, r8d
and r10, rcx
add r10, rdx
movzx eax, byte [r10]
cmp edi, eax
jne 0x14007a0b1
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r12
test rax, rax
je 0x14007a02f
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14007a09b
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14007a010
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x14007a053
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r10], al
jne 0x14007a053
inc rcx
sub r8, 1
jne 0x14007a040
mov rax, rcx
mov rdx, qword [rsp]
mov r10, qword [rsp + 0x40]
mov r8, qword [rsp + 0x18]
cmp rax, 4
jb 0x14007a0b6
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rbx
jbe 0x14007a0b6
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 0x14007a0b6
xor r8, r9
mov r9, qword [rsp + 8]
tzcnt rax, r8
shr rax, 3
add rax, rcx
jmp 0x14007a056
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 0x14007a0c0
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 [r10 + rsi]
cmp edi, eax
jne 0x14007a1d9
test r11, r11
je 0x14007a1d9
cmp r11, r15
ja 0x14007a1d9
mov r8, r9
xor ecx, ecx
shr r8, 3
mov rdx, r12
test r8, r8
je 0x14007a173
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x14007a471
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007a150
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x14007a193
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r10], al
jne 0x14007a193
inc rcx
sub r8, 1
jne 0x14007a180
mov rdx, rcx
cmp rdx, 4
jb 0x14007a1d9
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x14007a1d9
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 [r10 + rsi]
cmp edi, eax
jne 0x14007a2bb
test r11, r11
je 0x14007a2bb
cmp r11, r15
ja 0x14007a2bb
mov r8, r9
xor ecx, ecx
shr r8, 3
mov rdx, r12
test r8, r8
je 0x14007a253
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x14007a48a
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007a230
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x14007a275
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14007a275
inc rdx
inc rcx
sub r8, 1
jne 0x14007a260
mov rdx, rcx
cmp rdx, 4
jb 0x14007a2bb
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x14007a2bb
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 r10, qword [rsp]
mov r11, qword [rsp + 0x30]
mov ecx, dword [rcx + rax*4]
mov eax, dword [rsp + 0x18]
sub r11, rcx
and rax, rcx
add r10, rax
movzx eax, byte [r10 + rsi]
cmp edi, eax
jne 0x14007a39b
test r11, r11
je 0x14007a39b
cmp r11, r15
ja 0x14007a39b
mov r8, r9
xor ecx, ecx
shr r8, 3
mov rdx, r12
test r8, r8
je 0x14007a333
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x14007a4a3
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007a310
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x14007a355
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14007a355
inc rdx
inc rcx
sub r8, 1
jne 0x14007a340
mov rdx, rcx
cmp rdx, 4
jb 0x14007a39b
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x14007a39b
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 [r10 + rsi]
cmp edi, eax
jne 0x14007a4d5
test r11, r11
je 0x14007a4d5
cmp r11, r15
ja 0x14007a4d5
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r12
test rax, rax
je 0x14007a413
nop
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14007a4bc
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x14007a3f0
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x14007a435
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14007a435
inc rdx
inc rcx
sub r8, 1
jne 0x14007a420
mov rdx, rcx
cmp rdx, 4
jb 0x14007a4d5
bsr eax, r11d
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rbx, rax
jae 0x14007a4d5
mov qword [rsp + 0x20], rdx
mov r15, rax
mov qword [rsp + 0x28], rax
mov qword [rbp - 0x68], r11
jmp 0x14007a4da
xor rax, r9
mov r9, qword [rsp + 8]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14007a196
xor rax, r9
mov r9, qword [rsp + 8]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14007a278
xor rax, r9
mov r9, qword [rsp + 8]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14007a358
xor r8, r9
mov r9, qword [rsp + 8]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x14007a438
mov r15, qword [rsp + 0x28]
mov r8, qword [rsp + 0x10]
mov r10, qword [rsp + 0x38]
cmp r15, 0x7e4
jne 0x14007a689
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 0x14007a685
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 0x14007a685
mov rax, qword [r10 + 0x70]
mov r11d, edx
movzx esi, word [rax + rcx*2]
cmp rdx, r9
ja 0x14007a685
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 0x14007a5a3
mov r10, r12
sub r10, rdx
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x14007a667
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007a580
mov r10, qword [rsp + 0x38]
mov r8, r11
and r8d, 7
je 0x14007a5c3
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r12], al
jne 0x14007a5c3
inc rcx
sub r8, 1
jne 0x14007a5b0
mov r9, rcx
mov eax, dword [r10 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007a680
test r9, r9
je 0x14007a680
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 0x14007a680
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 0x14007a685
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 0x14007a68e
mov r10, qword [rsp + 0x38]
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14007a5c6
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 0x14007b237
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 0x14007a6d3
lea rax, [rcx - 1]
mov rbx, r9
cmp rax, r9
cmovb rbx, rax
jmp 0x14007a6d6
mov rbx, rdi
mov rdx, qword [rsp + 0x78]
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 0x14007a852
mov r10d, r8d
and r10, rcx
add r10, rdx
movzx eax, byte [r10 + rbx]
cmp esi, eax
jne 0x14007a84d
mov r8, r9
xor ecx, ecx
shr r8, 3
mov rdx, r13
test r8, r8
je 0x14007a7cf
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x14007a837
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007a7b0
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x14007a7f3
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x14007a7f3
inc rcx
sub r8, 1
jne 0x14007a7e0
mov rax, rcx
mov r8, qword [rsp]
mov r10, qword [rsp + 0x50]
cmp rax, 4
jb 0x14007a855
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rdi
jbe 0x14007a855
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 0x14007a855
xor rax, r9
mov r9, qword [rsp + 8]
tzcnt rax, rax
shr rax, 3
add rax, rcx
jmp 0x14007a7f6
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 0x14007a860
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 0x14007a97a
test r11, r11
je 0x14007a97a
cmp r11, r15
ja 0x14007a97a
mov r8, r9
xor ecx, ecx
shr r8, 3
mov rdx, r13
test r8, r8
je 0x14007a913
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x14007ad96
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007a8f0
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x14007a933
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x14007a933
inc rcx
sub r8, 1
jne 0x14007a920
mov rdx, rcx
cmp rdx, 4
jb 0x14007a97a
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x14007a97a
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 0x14007aa5c
test r11, r11
je 0x14007aa5c
cmp r11, r15
ja 0x14007aa5c
mov r8, r9
xor ecx, ecx
shr r8, 3
mov rdx, r13
test r8, r8
je 0x14007a9f3
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x14007adaf
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007a9d0
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x14007aa15
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14007aa15
inc rdx
inc rcx
sub r8, 1
jne 0x14007aa00
mov rdx, rcx
cmp rdx, 4
jb 0x14007aa5c
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x14007aa5c
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 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 0x14007ab3c
test r11, r11
je 0x14007ab3c
cmp r11, r15
ja 0x14007ab3c
mov r8, r9
xor ecx, ecx
shr r8, 3
mov rdx, r13
test r8, r8
je 0x14007aad3
nop
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x14007adc8
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007aab0
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x14007aaf5
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x14007aaf5
inc rdx
inc rcx
sub r8, 1
jne 0x14007aae0
mov rdx, rcx
cmp rdx, 4
jb 0x14007ab3c
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x14007ab3c
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 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 0x14007ac09
test r11, r11
je 0x14007ac09
cmp r11, r15
ja 0x14007ac09
mov r8, r9
xor eax, eax
shr r8, 3
mov rdx, r13
test r8, r8
je 0x14007abb3
nop
mov r9, qword [rdx]
mov rcx, qword [rax + r10]
cmp r9, rcx
jne 0x14007ade1
add rdx, 8
add rax, 8
sub r8, 1
jne 0x14007ab90
mov r9, qword [rsp + 8]
mov r8, r9
and r8d, 7
je 0x14007abd5
nop dword [rax]
movzx ecx, byte [rdx]
cmp byte [rax + r10], cl
jne 0x14007abd5
inc rdx
inc rax
sub r8, 1
jne 0x14007abc0
mov rdx, rax
cmp rdx, 4
jb 0x14007ac09
bsr eax, r11d
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rdi, rax
jae 0x14007ac09
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 0x14007ae18
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 0x14007ae18
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 0x14007ae18
mov rax, qword [r10 + 0x70]
mov r11d, edx
movzx esi, word [rax + rcx*2]
cmp rdx, r9
ja 0x14007ae18
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 0x14007acd3
mov r10, r13
sub r10, rdx
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14007adfa
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007acb0
mov r10, qword [rsp + 0x38]
mov r8, r11
and r8d, 7
je 0x14007acf3
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r13], al
jne 0x14007acf3
inc rcx
sub r8, 1
jne 0x14007ace0
mov r9, rcx
mov eax, dword [r10 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007ae13
test r9, r9
je 0x14007ae13
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 0x14007ae13
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 0x14007ae18
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 0x14007ae18
xor rax, r9
mov r9, qword [rsp + 8]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14007a936
xor rax, r9
mov r9, qword [rsp + 8]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14007aa18
xor rax, r9
mov r9, qword [rsp + 8]
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14007aaf8
xor rcx, r9
mov r9, qword [rsp + 8]
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x14007abd8
mov r10, qword [rsp + 0x38]
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14007acf6
mov r8, qword [rsp + 0x10]
mov rax, qword [rbp - 0x38]
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
mov dword [rdx + rax*4], ecx
mov rax, qword [rsp + 0x28]
add rax, 0xaf
cmp r12, rax
jb 0x14007ae9f
movups xmm0, xmmword [rbp - 0x10]
mov r11, rcx
mov qword [rsp + 0x30], rcx
mov ecx, dword [rsp + 0x40]
inc r15
movups xmm1, xmmword [rbp]
inc ecx
mov qword [rsp + 0x48], r15
mov dword [rsp + 0x40], ecx
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp - 0x60], xmm1
cmp ecx, 4
jge 0x14007ae99
lea rax, [r11 + 8]
cmp rax, qword [rsp + 0x70]
jae 0x14007ae99
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 0x14007a6b7
mov r12, qword [rbp - 0x70]
jmp 0x14007aea9
mov r11, qword [rsp + 0x30]
mov r12, qword [rsp + 0x20]
mov r9, qword [rsp + 0x78]
lea r13, [r11 + r12*2]
add r13, qword [rbp - 0x48]
mov rax, qword [rbp - 0x80]
mov rbx, qword [rbp - 0x68]
add rax, r11
mov rdi, qword [rsp + 0x68]
cmp rax, r9
mov qword [rsp + 0x60], r13
cmovb r9, rax
cmp rbx, r9
ja 0x14007af55
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 0x14007aef5
xor r8d, r8d
jmp 0x14007af59
cmp rbx, r8
jne 0x14007af02
mov r8d, 1
jmp 0x14007af59
cmp rdx, 7
jae 0x14007af1d
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14007af59
cmp rcx, 7
jae 0x14007af35
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14007af59
movsxd rax, dword [rdi + 8]
cmp rbx, rax
jne 0x14007af46
mov r8d, 2
jmp 0x14007af59
movsxd rax, dword [rdi + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x14007af59
lea r8, [rbx + 0xf]
cmp rbx, r9
ja 0x14007af76
test r8, r8
je 0x14007af76
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 r13, qword [rsp + 0x58]
mov esi, dword [rbp - 0x58]
movzx eax, sil
shl eax, 0x19
or eax, r12d
mov dword [r13], r15d
mov dword [r13 + 4], eax
mov r14d, dword [r10 + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x14007afa1
xor edi, edi
jmp 0x14007b01a
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 word [r13 + 0xe], r8w
lea edx, [r12 + rsi]
mov eax, 0x3ff
mov dword [r13 + 8], edi
and r8w, ax
movsxd r9, edx
cmp r15, 6
jae 0x14007b044
movzx r10d, r15w
mov eax, 0x17
jmp 0x14007b0b4
cmp r15, 0x82
jae 0x14007b06e
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 0x14007b0b4
cmp r15, 0x842
jae 0x14007b08b
lea eax, [r15 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x14007b0b4
mov eax, 0x17
cmp r15, 0x1842
jae 0x14007b09f
lea r10d, [rax - 2]
jmp 0x14007b0b4
cmp r15, 0x5842
jae 0x14007b0b0
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x14007b0b4
movzx r10d, ax
cmp r9, 0xa
jae 0x14007b0c1
sub r9w, 2
jmp 0x14007b101
cmp r9, 0x86
jae 0x14007b0e6
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 0x14007b101
cmp r9, 0x846
jae 0x14007b0fd
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x14007b101
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 0x14007b139
cmp r10w, 8
jae 0x14007b139
cmp r9w, 0x10
jae 0x14007b139
cmp r9w, 8
jb 0x14007b16d
or dx, 0x40
jmp 0x14007b16d
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 [r13 + 0xc], dx
add r13, 0x10
mov qword [rsp + 0x58], r13
lea rdx, [r11 + 2]
add qword [rax], r15
lea rax, [r11 + r12]
cmp rax, r8
mov qword [rsp + 0x48], r9
cmovb r8, rax
mov rax, r12
shr rax, 2
cmp rbx, rax
jae 0x14007b1cb
lea rax, [rbx*4]
mov rcx, r11
sub rcx, rax
add rcx, r12
cmp rdx, rcx
cmova rcx, rdx
cmp r8, rcx
mov rdx, rcx
cmovb rdx, r8
mov rsi, qword [rsp + 0x10]
cmp rdx, r8
jae 0x14007b22a
mov r11, qword [rsp]
movabs r13, 0xbd1e35a7bd000000
nop dword [rax]
nop word [rax + rax]
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 0x14007b1f0
mov r11, qword [rsp + 0x30]
mov r13, qword [rsp + 0x58]
add r11, r12
mov qword [rsp + 0x30], r11
jmp 0x14007b372
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 0x14007b368
mov rax, qword [rbp - 0x48]
mov rdx, qword [rsp + 0x70]
add rdx, 0xfffffffffffffff9
lea rax, [rax*4]
add rax, r13
cmp r11, rax
jbe 0x14007b2fa
mov rdi, qword [rsp + 0x18]
lea rax, [r11 + 0x10]
cmp rax, rdx
cmovb rdx, rax
cmp r11, rdx
jae 0x14007b2ee
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
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 0x14007b2b3
mov r9, qword [rsp + 0x48]
mov qword [rsp + 0x30], r11
mov rsi, qword [rsp + 0x10]
mov r13, qword [rsp + 0x58]
jmp 0x14007b377
lea rax, [r11 + 8]
cmp rax, rdx
cmovb rdx, rax
cmp r11, rdx
jae 0x14007b368
mov rdi, qword [rsp + 0x18]
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
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 0x14007b332
jmp 0x14007b2e4
mov r13, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x10]
mov rdi, qword [rsp + 0x18]
mov r14, qword [rsp + 0x70]
lea rax, [r11 + 8]
mov rbx, qword [rsp]
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x68]
mov r10, qword [rsp + 0x78]
mov rcx, qword [rbp - 0x80]
cmp rax, r14
jb 0x140079f44
mov r15, qword [rbp - 0x28]
sub r13, qword [rbp - 0x18]
sub r14, r11
mov rax, qword [rbp - 0x20]
add r14, r9
sar r13, 4
mov qword [rax], r14
add qword [r15], r13
mov rcx, qword [rbp + 0x30]
xor rcx, rsp
call fcn.1400af2d0
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 rsi
push r13
push r14
lea rbp, [rsp - 7]
sub rsp, 0x100
mov rsi, qword [rbp + 0x77]
mov rax, rcx
mov r14, qword [rbp + 0x7f]
mov r13, rdx
mov rdx, qword [rbp + 0x5f]
mov r11d, 1
mov qword [rbp - 0x21], r14
mov rsi, qword [rsi]
lea r10, [rax + r13]
mov qword [rsp + 0x70], rsi
mov ecx, dword [rdx + 8]
shl r11, cl
mov rcx, qword [rdx + 0x10]
sub r11, 0x10
mov qword [rbp - 0x49], r11
mov qword [rbp - 0x41], rcx
mov qword [rbp - 0x71], r10
cmp rax, 4
jb 0x14007b454
lea rax, [r10 - 3]
mov qword [rbp - 0x31], rax
jmp 0x14007b458
mov qword [rbp - 0x31], r13
cmp dword [rdx + 4], 9
mov eax, 0x200
mov ebx, 0x40
cmovl eax, ebx
mov qword [rbp - 0x29], rax
add rax, r13
mov qword [rbp - 0x79], rax
lea rax, [r13 + 4]
cmp rax, r10
jae 0x14007cfce
mov qword [rsp + 0xf8], rdi
mov qword [rsp + 0xf0], r12
mov r12, qword [rbp + 0x67]
mov qword [rsp + 0xe8], r15
nop dword [rax]
mov rsi, qword [rbp + 0x6f]
lea rax, [rcx + r13]
mov rbx, r10
mov qword [rsp + 0x20], 0x7e4
mov r10, qword [rbp + 0x3f]
sub rbx, r13
cmp r13, r11
mov qword [rsp + 0x18], rbx
mov rdi, r11
mov rcx, r11
cmovb rdi, r13
cmp rax, r11
movsxd r11, dword [rsi]
cmovb rcx, rax
mov qword [rbp + 0x37], rdi
mov rax, qword [rdx + 0x50]
sub r10, r11
mov qword [rsp + 0x30], rax
mov rax, qword [r12 + 0x40]
mov r12d, 0x7e4
mov qword [rsp + 0x38], rax
mov rax, r13
and rax, r9
mov qword [rsp + 0x40], rcx
imul r14d, dword [rax + r8], 0x1e35a7bd
lea r15, [rax + r8]
xor ecx, ecx
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x61], rcx
mov r13d, ecx
mov qword [rsp + 0x28], rcx
mov dword [rbp - 0x51], ecx
shr r14, 0x11
mov qword [rsp + 0x68], r14
cmp r10, qword [rbp + 0x3f]
jae 0x14007b5d3
cmp r11, rdi
ja 0x14007b5d3
and r10, r9
mov rdx, r15
add r10, r8
mov r8, rbx
shr r8, 3
test r8, r8
je 0x14007b57e
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x14007b7e5
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007b560
mov r8, rbx
and r8d, 7
je 0x14007b5a3
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x14007b5a3
inc rcx
sub r8, 1
jne 0x14007b590
mov rax, rcx
cmp rax, 2
jb 0x14007b5d3
imul rcx, rax, 0x87
add rcx, 0x78f
cmp r12, rcx
jae 0x14007b5d3
mov r12, rcx
mov qword [rsp + 0x28], rax
mov r13, rax
mov qword [rbp - 0x61], r11
mov qword [rsp + 0x20], rcx
mov r10, qword [rbp + 0x3f]
lea rdx, [rsi + 4]
movsxd rsi, dword [rsi + 4]
mov r9, r10
mov rcx, qword [rsp + 0x38]
sub r9, rsi
movzx eax, r9w
mov r8, rdx
mov qword [rsp + 8], rdx
cmp byte [rax + rcx + 0x30000], r14b
jne 0x14007b6c4
mov qword [rsp + 8], rdx
cmp r9, r10
jae 0x14007b6c4
mov qword [rsp + 8], rdx
cmp rsi, rdi
ja 0x14007b6c4
and r9, qword [rbp + 0x4f]
mov r10, rbx
add r9, qword [rbp + 0x47]
xor edx, edx
shr r10, 3
mov rcx, r15
mov qword [rsp + 8], r8
mov r14, rbx
test r10, r10
je 0x14007b66e
mov rdi, r9
mov qword [rsp + 8], r8
sub rdi, r15
nop dword [rax]
mov rax, qword [rcx]
mov r8, qword [rdi + rcx]
cmp rax, r8
jne 0x14007b7f9
add rcx, 8
add rdx, 8
sub r10, 1
jne 0x14007b650
mov r8, r14
and r8d, 7
je 0x14007b68c
movzx eax, byte [rcx]
cmp byte [rdx + r9], al
jne 0x14007b68c
inc rcx
inc rdx
sub r8, 1
jne 0x14007b677
mov rcx, rdx
cmp rcx, 2
jb 0x14007b6c4
imul rax, rcx, 0x87
add rax, 0x78f
cmp r12, rax
jae 0x14007b6c4
add rax, 0xffffffffffffffd9
cmp r12, rax
jae 0x14007b6c4
mov r12, rax
mov qword [rsp + 0x28], rcx
mov r13, rcx
mov qword [rbp - 0x61], rsi
mov qword [rsp + 0x20], rax
mov r9, qword [rbp + 0x6f]
mov r10, qword [rbp + 0x3f]
add r9, 8
mov rdx, qword [rsp + 0x38]
mov r11, r9
mov rcx, qword [rsp + 0x68]
mov rsi, qword [rsp + 8]
movsxd r14, dword [r9]
mov r8, rsi
sub r10, r14
mov qword [rsp], r9
movzx eax, r10w
cmp byte [rax + rdx + 0x30000], cl
jne 0x14007b825
mov qword [rsp], r9
mov qword [rsp + 8], rsi
cmp r10, qword [rbp + 0x3f]
jae 0x14007b825
mov qword [rsp], r9
mov qword [rsp + 8], rsi
cmp r14, qword [rbp + 0x37]
ja 0x14007b825
and r10, qword [rbp + 0x4f]
mov r9, rbx
add r10, qword [rbp + 0x47]
xor edx, edx
shr r9, 3
mov rcx, r15
mov qword [rsp], r11
mov rax, rbx
mov qword [rsp + 8], rsi
test r9, r9
je 0x14007b781
mov rsi, r10
mov qword [rsp], r11
sub rsi, r15
mov qword [rsp + 8], r8
nop word [rax + rax]
mov rax, qword [rcx]
mov r8, qword [rsi + rcx]
cmp rax, r8
jne 0x14007b80d
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14007b760
mov rax, rbx
mov r8, rax
and r8d, 7
je 0x14007b7a5
nop word [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14007b7a5
inc rcx
inc rdx
sub r8, 1
jne 0x14007b790
mov rax, rdx
cmp rax, 2
jb 0x14007b81e
imul rcx, rax, 0x87
add rcx, 0x78f
cmp r12, rcx
jae 0x14007b81e
mov rsi, qword [rsp + 8]
add rcx, 0xffffffffffffffd5
cmp r12, rcx
jae 0x14007b825
mov r12, rcx
mov qword [rsp + 0x28], rax
mov r13, rax
mov qword [rbp - 0x61], r14
mov qword [rsp + 0x20], rcx
jmp 0x14007b825
xor rax, r9
tzcnt rax, rax
shr rax, 3
add rax, rcx
jmp 0x14007b5a6
xor rax, r8
tzcnt rcx, rax
shr rcx, 3
add rcx, rdx
jmp 0x14007b68f
xor rax, r8
tzcnt rax, rax
shr rax, 3
add rax, rdx
jmp 0x14007b7a8
mov rsi, qword [rsp + 8]
jmp 0x14007b825
mov rcx, qword [rsp + 0x68]
mov r8, rsi
mov r9, qword [rbp + 0x6f]
mov r14, qword [rbp + 0x3f]
add r9, 0xc
mov rdx, qword [rsp + 0x38]
mov r10, r14
mov r11, qword [rsp]
mov rbx, r9
mov qword [rsp + 0x10], r9
movsxd r15, dword [r9]
sub r10, r15
movzx eax, r10w
cmp byte [rax + rdx + 0x30000], cl
mov rcx, qword [rbp + 0x37]
jne 0x14007b971
mov qword [rsp + 0x10], rbx
mov qword [rsp], r11
mov qword [rsp + 8], rsi
cmp r10, r14
jae 0x14007b971
mov qword [rsp + 0x10], rbx
mov qword [rsp], r11
mov qword [rsp + 8], rsi
cmp r15, rcx
ja 0x14007b971
and r10, qword [rbp + 0x4f]
xor edx, edx
mov rax, qword [rsp + 0x78]
add rax, qword [rbp + 0x47]
mov r9, qword [rsp + 0x18]
mov rcx, rax
add r10, qword [rbp + 0x47]
shr r9, 3
mov qword [rsp + 0x10], rbx
mov qword [rsp], r11
mov qword [rsp + 8], rsi
test r9, r9
je 0x14007b8fa
mov r14, r10
mov qword [rsp + 0x10], rbx
sub r14, rax
mov qword [rsp], r11
mov qword [rsp + 8], rsi
nop dword [rax]
mov rax, qword [rcx]
mov r8, qword [r14 + rcx]
cmp rax, r8
jne 0x14007b95c
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14007b8e0
mov r8, qword [rsp + 0x18]
and r8d, 7
je 0x14007b91a
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14007b91a
inc rcx
inc rdx
sub r8, 1
jne 0x14007b905
mov rax, rdx
cmp rax, 2
jb 0x14007b96d
imul rcx, rax, 0x87
add rcx, 0x78f
cmp r12, rcx
jae 0x14007b96d
add rcx, 0xffffffffffffffd5
cmp r12, rcx
jae 0x14007b96d
mov r12, rcx
mov qword [rsp + 0x20], rcx
mov r9, rcx
mov qword [rsp + 0x28], rax
mov rcx, qword [rbp + 0x37]
mov r13, rax
mov qword [rbp - 0x61], r15
jmp 0x14007b976
xor rax, r8
tzcnt rax, rax
shr rax, 3
add rax, rdx
jmp 0x14007b91d
mov rcx, qword [rbp + 0x37]
mov r9, qword [rsp + 0x20]
mov rax, qword [rbp + 0x67]
xor ebx, ebx
mov r8, qword [rsp + 0x68]
mov r10, qword [rsp + 0x38]
mov r11, qword [rbp + 0x3f]
mov rdi, qword [rax + 0x38]
mov rsi, r11
mov eax, dword [r10 + r8*4]
movzx r14d, word [r10 + r8*2 + 0x20000]
sub rsi, rax
test rdi, rdi
je 0x14007bae7
nop word [rax + rax]
dec rdi
add rbx, rsi
cmp rbx, rcx
ja 0x14007bae2
mov r9, qword [rbp + 0x4f]
lea rax, [r10 + r14*4]
mov r8, qword [rsp + 0x78]
mov rcx, r11
movzx r14d, word [rax + 0x40002]
sub rcx, rbx
movzx esi, word [rax + 0x40000]
and rcx, r9
lea rdx, [r8 + r13]
cmp rdx, r9
ja 0x14007bad0
lea rax, [rcx + r13]
cmp rax, r9
ja 0x14007bad0
mov r9, qword [rbp + 0x47]
movzx eax, byte [rax + r9]
cmp byte [rdx + r9], al
jne 0x14007bad0
mov r15, qword [rsp + 0x18]
lea rax, [r8 + r9]
mov r8, r15
lea r11, [rcx + r9]
shr r8, 3
xor ecx, ecx
mov rdx, rax
test r8, r8
je 0x14007ba5a
mov r10, r11
sub r10, rax
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14007babf
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007ba40
mov r8, r15
and r8d, 7
je 0x14007ba79
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x14007ba79
inc rcx
sub r8, 1
jne 0x14007ba66
mov rdx, rcx
mov r10, qword [rsp + 0x38]
mov r11, qword [rbp + 0x3f]
cmp rdx, 4
jb 0x14007bad0
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r12, rax
jae 0x14007bad0
mov r12, rax
mov qword [rsp + 0x28], rdx
mov r13, rdx
mov qword [rbp - 0x61], rbx
mov r9, rax
mov qword [rsp + 0x20], rax
jmp 0x14007bad5
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14007ba7c
mov r9, qword [rsp + 0x20]
mov rcx, qword [rbp + 0x37]
test rdi, rdi
jne 0x14007b9b0
mov r8, qword [rsp + 0x68]
mov r13, qword [rbp + 0x3f]
mov ebx, 0xffff
mov r12, qword [rbp + 0x67]
mov rcx, r13
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
cmp rcx, rbx
cmova rcx, rbx
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], r13d
mov word [r10 + r8*2 + 0x20000], dx
cmp r9, 0x7e4
jne 0x14007be86
mov r13, qword [r12 + 0x48]
mov rcx, qword [r13 + 8]
mov r15, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r15, rax
jb 0x14007be80
mov r12, qword [rsp + 0x78]
lea r14, [rcx + 1]
add r12, qword [rbp + 0x47]
mov r8, qword [rbp + 0x5f]
mov rdx, qword [rsp + 0x18]
imul ebx, dword [r12], 0x1e35a7bd
mov qword [r13 + 8], r14
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x14007bcff
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x14007bcff
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 0x14007bc0e
mov r10, r12
sub r10, rdx
nop
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14007bceb
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007bbf0
mov r8, r11
and r8d, 7
je 0x14007bc33
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r12], al
jne 0x14007bc33
inc rcx
sub r8, 1
jne 0x14007bc20
mov r9, rcx
mov rcx, qword [rbp + 0x5f]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007bd0b
test r9, r9
je 0x14007bd0b
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 + 0x40]
lea rdx, [rsi + 1]
add rdx, rax
cmp rdx, qword [rsp + 0x30]
ja 0x14007bd10
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x20]
jb 0x14007bd10
mov qword [rsp + 0x20], rax
sub r11d, r9d
lea rax, [r15 + 1]
mov qword [rsp + 0x28], r9
mov r15, qword [rsp + 0x10]
mov qword [r13 + 0x10], rax
mov rax, qword [rsp]
mov qword [rsp], rax
mov rax, qword [rsp + 8]
mov qword [rsp + 8], rax
mov dword [rbp - 0x51], r11d
mov qword [rbp - 0x61], rdx
mov qword [rsp + 0x10], r15
jmp 0x14007bd15
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14007bc36
mov rsi, qword [rsp + 0x40]
mov r15, qword [rsp + 0x10]
jmp 0x14007bd1a
mov rsi, qword [rsp + 0x40]
mov r15, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x18]
lea rax, [r14 + 1]
mov r14, qword [rbp + 0x5f]
mov qword [r13 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rbx + rax + 1]
test cl, cl
je 0x14007bead
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x14007bead
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 ecx, ecx
test r8, r8
je 0x14007bd9e
mov r10, r12
sub r10, rdx
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14007be6c
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007bd80
mov r8, r11
and r8d, 7
je 0x14007bdbc
movzx eax, byte [rdx]
cmp byte [rcx + r12], al
jne 0x14007bdbc
inc rdx
inc rcx
sub r8, 1
jne 0x14007bda7
mov r9, rcx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007be95
test r9, r9
je 0x14007bead
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 + 0x30]
ja 0x14007bead
mov r10, qword [rsp]
mov ebx, 0xffff
mov r12, qword [rbp + 0x67]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x20]
jb 0x14007beba
sub r11d, r9d
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 8]
mov rcx, r9
inc qword [r13 + 0x10]
mov qword [rsp + 8], rax
mov qword [rsp + 0x28], rcx
mov dword [rbp - 0x51], r11d
mov qword [rbp - 0x61], rdx
mov qword [rsp + 0x10], r15
jmp 0x14007bebf
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14007bdbf
mov r14, qword [rbp + 0x5f]
jmp 0x14007beb6
mov r14, qword [rbp + 0x5f]
mov rcx, qword [rsp + 0x28]
mov r10, qword [rsp]
jmp 0x14007bec3
mov r13, qword [rbp + 0x3f]
mov ebx, 0xffff
mov r12, qword [rbp + 0x67]
mov rcx, qword [rsp + 0x28]
mov r10, qword [rsp]
jmp 0x14007bec3
mov r12, qword [rbp + 0x67]
mov ebx, 0xffff
mov r10, qword [rsp]
mov rcx, qword [rsp + 0x28]
mov r13, qword [rbp + 0x3f]
cmp qword [rsp + 0x20], 0x7e4
jbe 0x14007cdf4
mov r15, qword [rsp + 0x18]
xor r11d, r11d
mov dword [rbp + 0x37], r11d
dec r15
cmp dword [r14 + 4], 5
mov qword [rsp + 0x18], r15
jge 0x14007befd
lea rax, [rcx - 1]
mov r12, r15
cmp rax, r15
cmovb r12, rax
jmp 0x14007bf00
mov r12, r11
mov rdx, qword [rbp - 0x49]
lea rsi, [r13 + 1]
mov rax, qword [rbp - 0x41]
cmp rsi, rdx
mov r8, r10
mov qword [rsp + 0x50], r11
mov r10, qword [rbp + 0x4f]
mov r14, rdx
cmovb r14, rsi
mov qword [rsp + 0x48], r11
inc rax
mov dword [rsp + 0x60], r11d
add rax, r13
mov qword [rsp + 0x30], rsi
cmp rax, rdx
mov qword [rsp + 0x38], r14
mov rcx, rdx
mov qword [rsp], r8
cmovb rcx, rax
mov r9d, 0x7e4
mov qword [rbp - 0x39], rcx
mov r11, rsi
mov rcx, qword [rbp + 0x5f]
mov r13d, r9d
mov qword [rsp + 0x58], r9
mov rax, qword [rcx + 0x50]
mov rcx, qword [rbp + 0x47]
mov qword [rbp - 0x79], rax
mov rax, qword [rbp + 0x67]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x40], rax
mov rax, rsi
and rax, r10
mov qword [rsp + 0x68], rax
lea rdi, [rax + rcx]
imul eax, dword [rax + rcx], 0x1e35a7bd
shr rax, 0x11
mov qword [rsp + 0x78], rax
mov rax, qword [rbp + 0x6f]
movsxd rbx, dword [rax]
sub r11, rbx
cmp r11, rsi
jae 0x14007c065
mov qword [rsp], r8
cmp rbx, r14
ja 0x14007c065
and r11, r10
mov qword [rsp], r8
add r11, rcx
mov r9, r15
xor ecx, ecx
shr r9, 3
mov rdx, rdi
test r9, r9
je 0x14007bffa
mov r10, r11
mov qword [rsp], r8
sub r10, rdi
mov rax, qword [rdx]
mov r8, qword [rdx + r10]
cmp rax, r8
jne 0x14007c04f
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x14007bfe0
mov r8, r15
and r8d, 7
je 0x14007c019
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x14007c019
inc rcx
sub r8, 1
jne 0x14007c006
mov rax, rcx
cmp rax, 2
jb 0x14007c060
imul rcx, rax, 0x87
add rcx, 0x78f
cmp r13, rcx
jae 0x14007c060
mov r13, rcx
mov qword [rsp + 0x48], rax
mov r12, rax
mov qword [rsp + 0x50], rbx
mov r9, rcx
mov qword [rsp + 0x58], rcx
jmp 0x14007c065
xor rax, r8
tzcnt rax, rax
shr rax, 3
add rax, rcx
jmp 0x14007c01c
mov r9, qword [rsp + 0x58]
mov rax, qword [rsp + 8]
mov r10, rsi
mov rdx, qword [rsp + 0x40]
mov r8, rax
mov rcx, qword [rsp + 0x78]
mov r11, qword [rsp]
movsxd r15, dword [rax]
mov rbx, qword [rsp + 0x10]
sub r10, r15
movzx eax, r10w
cmp byte [rax + rdx + 0x30000], cl
jne 0x14007c1aa
mov qword [rsp + 0x10], rbx
mov qword [rsp], r11
mov qword [rsp + 8], r8
cmp r10, qword [rsp + 0x30]
jae 0x14007c1aa
mov qword [rsp + 0x10], rbx
mov qword [rsp], r11
mov qword [rsp + 8], r8
cmp r15, r14
ja 0x14007c1aa
and r10, qword [rbp + 0x4f]
xor edx, edx
mov rax, qword [rsp + 0x68]
add rax, qword [rbp + 0x47]
mov r9, qword [rsp + 0x18]
mov rcx, rax
add r10, qword [rbp + 0x47]
shr r9, 3
mov qword [rsp + 0x10], rbx
mov qword [rsp], r11
mov qword [rsp + 8], r8
test r9, r9
je 0x14007c13d
mov r14, r10
mov qword [rsp + 0x10], rbx
sub r14, rax
mov qword [rsp], r11
mov qword [rsp + 8], r8
mov rax, qword [rcx]
mov r8, qword [rcx + r14]
cmp rax, r8
jne 0x14007c12c
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14007c110
jmp 0x14007c13d
xor rax, r8
tzcnt rcx, rax
shr rcx, 3
add rcx, rdx
jmp 0x14007c168
mov r8, qword [rsp + 0x18]
and r8d, 7
je 0x14007c165
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14007c165
inc rcx
inc rdx
sub r8, 1
jne 0x14007c150
mov rcx, rdx
cmp rcx, 2
jb 0x14007c1a3
imul rax, rcx, 0x87
add rax, 0x78f
cmp r13, rax
jae 0x14007c1a3
add rax, 0xffffffffffffffd9
cmp r13, rax
jae 0x14007c1a3
mov r13, rax
mov qword [rsp + 0x48], rcx
mov r12, rcx
mov qword [rsp + 0x50], r15
mov r9, rax
mov qword [rsp + 0x58], rax
jmp 0x14007c1aa
mov r9, qword [rsp + 0x58]
jmp 0x14007c1aa
mov r14, qword [rsp + 0x30]
movsxd r15, dword [r11]
mov r10, r14
mov rdx, qword [rsp + 0x40]
sub r10, r15
mov rcx, qword [rsp + 0x78]
mov r8, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
movzx eax, r10w
cmp byte [rax + rdx + 0x30000], cl
jne 0x14007c2eb
mov qword [rsp + 0x10], rbx
mov qword [rsp], r11
mov qword [rsp + 8], r8
cmp r10, r14
jae 0x14007c2eb
mov qword [rsp + 0x10], rbx
mov qword [rsp], r11
mov qword [rsp + 8], r8
cmp r15, qword [rsp + 0x38]
ja 0x14007c2eb
and r10, qword [rbp + 0x4f]
xor edx, edx
mov rax, qword [rsp + 0x68]
add rax, qword [rbp + 0x47]
mov r9, qword [rsp + 0x18]
mov rcx, rax
add r10, qword [rbp + 0x47]
shr r9, 3
mov qword [rsp + 0x10], rbx
mov qword [rsp], r11
mov qword [rsp + 8], r8
test r9, r9
je 0x14007c280
mov r14, r10
mov qword [rsp + 0x10], rbx
sub r14, rax
mov qword [rsp], r11
mov qword [rsp + 8], r8
mov rax, qword [rcx]
mov r8, qword [rcx + r14]
cmp rax, r8
jne 0x14007c26f
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14007c253
jmp 0x14007c280
xor rax, r8
tzcnt rax, rax
shr rax, 3
add rax, rdx
jmp 0x14007c2a8
mov r8, qword [rsp + 0x18]
and r8d, 7
je 0x14007c2a5
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14007c2a5
inc rcx
inc rdx
sub r8, 1
jne 0x14007c290
mov rax, rdx
cmp rax, 2
jb 0x14007c2e4
imul rcx, rax, 0x87
add rcx, 0x78f
cmp r13, rcx
jae 0x14007c2e4
add rcx, 0xffffffffffffffd5
cmp r13, rcx
jae 0x14007c2e4
mov r13, rcx
mov qword [rsp + 0x48], rax
mov r12, rax
mov qword [rsp + 0x50], r15
mov r9, rcx
mov qword [rsp + 0x58], rcx
jmp 0x14007c2eb
mov r9, qword [rsp + 0x58]
jmp 0x14007c2eb
mov r14, qword [rsp + 0x30]
movsxd r15, dword [rbx]
mov r10, r14
mov rdx, qword [rsp + 0x40]
sub r10, r15
mov rcx, qword [rsp + 0x78]
mov r8, qword [rsp + 8]
mov r11, qword [rsp]
movzx eax, r10w
cmp byte [rax + rdx + 0x30000], cl
jne 0x14007c42f
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x10], rbx
mov qword [rsp], r11
mov qword [rsp + 8], r8
cmp r10, r14
jae 0x14007c434
mov qword [rsp + 0x10], rbx
mov qword [rsp], r11
mov qword [rsp + 8], r8
cmp r15, rcx
ja 0x14007c434
and r10, qword [rbp + 0x4f]
xor edx, edx
mov rax, qword [rsp + 0x68]
add rax, qword [rbp + 0x47]
mov r9, qword [rsp + 0x18]
mov rcx, rax
add r10, qword [rbp + 0x47]
shr r9, 3
mov qword [rsp + 0x10], rbx
mov qword [rsp], r11
mov qword [rsp + 8], r8
test r9, r9
je 0x14007c3ba
mov r14, r10
mov qword [rsp + 0x10], rbx
sub r14, rax
mov qword [rsp], r11
mov qword [rsp + 8], r8
nop word [rax + rax]
mov rax, qword [rcx]
mov r8, qword [rcx + r14]
cmp rax, r8
jne 0x14007c419
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14007c3a0
mov r8, qword [rsp + 0x18]
and r8d, 7
je 0x14007c3da
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14007c3da
inc rcx
inc rdx
sub r8, 1
jne 0x14007c3c5
mov rax, rdx
cmp rax, 2
jb 0x14007c42a
imul rcx, rax, 0x87
add rcx, 0x78f
cmp r13, rcx
jae 0x14007c42a
add rcx, 0xffffffffffffffd5
cmp r13, rcx
jae 0x14007c42a
mov r13, rcx
mov qword [rsp + 0x48], rax
mov r12, rax
mov qword [rsp + 0x50], r15
mov r9, rcx
mov qword [rsp + 0x58], rcx
jmp 0x14007c42f
xor rax, r8
tzcnt rax, rax
shr rax, 3
add rax, rdx
jmp 0x14007c3dd
mov r9, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rbp + 0x67]
xor ebx, ebx
mov r8, qword [rsp + 0x78]
mov r10, qword [rsp + 0x40]
mov r15, qword [rsp + 0x30]
mov rdi, qword [rax + 0x38]
mov rsi, r15
mov eax, dword [r10 + r8*4]
movzx r14d, word [r10 + r8*2 + 0x20000]
sub rsi, rax
test rdi, rdi
je 0x14007c59f
nop dword [rax]
dec rdi
add rbx, rsi
cmp rbx, rcx
ja 0x14007c59a
mov r11, qword [rbp + 0x4f]
lea rax, [r10 + r14*4]
mov r8, qword [rsp + 0x68]
mov rcx, r15
movzx r14d, word [rax + 0x40002]
sub rcx, rbx
movzx esi, word [rax + 0x40000]
and rcx, r11
lea rdx, [r12 + r8]
cmp rdx, r11
ja 0x14007c58c
lea rax, [rcx + r12]
cmp rax, r11
ja 0x14007c58c
mov r11, qword [rbp + 0x47]
movzx eax, byte [rax + r11]
cmp byte [rdx + r11], al
jne 0x14007c58c
lea r9, [r8 + r11]
xor eax, eax
add r11, rcx
mov rdx, r9
mov rcx, qword [rsp + 0x18]
mov r8, rcx
shr r8, 3
test r8, r8
je 0x14007c513
mov r10, r11
sub r10, r9
mov rcx, qword [rdx]
mov r9, qword [rdx + r10]
cmp rcx, r9
jne 0x14007c576
add rdx, 8
add rax, 8
sub r8, 1
jne 0x14007c4f4
mov rcx, qword [rsp + 0x18]
mov r8, rcx
and r8d, 7
je 0x14007c533
sub rdx, rax
nop
movzx ecx, byte [rax + rdx]
cmp byte [rax + r11], cl
jne 0x14007c533
inc rax
sub r8, 1
jne 0x14007c520
mov rdx, rax
mov r10, qword [rsp + 0x40]
cmp rdx, 4
jb 0x14007c587
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r13, rax
jae 0x14007c587
mov r13, rax
mov qword [rsp + 0x48], rdx
mov r12, rdx
mov qword [rsp + 0x50], rbx
mov r9, rax
mov qword [rsp + 0x58], rax
jmp 0x14007c58c
xor rcx, r9
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x14007c536
mov r9, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x38]
test rdi, rdi
jne 0x14007c470
mov r8, qword [rsp + 0x78]
mov r12, qword [rbp + 0x67]
mov ebx, 0xffff
mov rcx, r15
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, r15w
cmp rcx, rbx
cmova rcx, rbx
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], r15d
mov word [r10 + r8*2 + 0x20000], dx
cmp r9, 0x7e4
jne 0x14007c959
mov r13, qword [r12 + 0x48]
mov rcx, qword [r13 + 8]
mov r15, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r15, rax
jb 0x14007c94e
mov r12, qword [rsp + 0x68]
lea r14, [rcx + 1]
add r12, qword [rbp + 0x47]
mov r8, qword [rbp + 0x5f]
mov rdx, qword [rsp + 0x18]
imul ebx, dword [r12], 0x1e35a7bd
mov qword [r13 + 8], r14
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x14007c7c8
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x14007c7c8
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 0x14007c6ce
mov r10, r12
sub r10, rdx
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x14007c7b4
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007c6b0
mov r8, r11
and r8d, 7
je 0x14007c6f3
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r12], al
jne 0x14007c6f3
inc rcx
sub r8, 1
jne 0x14007c6e0
mov r9, rcx
mov rcx, qword [rbp + 0x5f]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007c7d4
test r9, r9
je 0x14007c7d4
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]
mov rdx, qword [rbp - 0x39]
shl rax, cl
inc rdx
add rax, rsi
mov rsi, qword [rsp + 0x58]
add rdx, rax
cmp rdx, qword [rbp - 0x79]
ja 0x14007c7d9
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, rsi
jb 0x14007c7d9
mov rsi, rax
mov qword [rsp + 0x58], rax
lea rax, [r15 + 1]
mov qword [rsp + 0x48], r9
mov r15, qword [rsp + 0x10]
sub r11d, r9d
mov qword [r13 + 0x10], rax
mov rax, qword [rsp]
mov qword [rsp], rax
mov rax, qword [rsp + 8]
mov qword [rsp + 8], rax
mov dword [rsp + 0x60], r11d
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x10], r15
jmp 0x14007c7de
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14007c6f6
mov rsi, qword [rsp + 0x58]
mov r15, qword [rsp + 0x10]
jmp 0x14007c7e3
mov rsi, qword [rsp + 0x58]
mov r15, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x18]
lea rax, [r14 + 1]
mov r14, qword [rbp + 0x5f]
mov qword [r13 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rax + rbx + 1]
test cl, cl
je 0x14007c981
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x14007c981
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 ecx, ecx
test r8, r8
je 0x14007c86e
mov r10, r12
sub r10, rdx
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x14007c93a
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007c850
mov r8, r11
and r8d, 7
je 0x14007c88c
movzx eax, byte [rdx]
cmp byte [rcx + r12], al
jne 0x14007c88c
inc rdx
inc rcx
sub r8, 1
jne 0x14007c877
mov r9, rcx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007c96d
test r9, r9
je 0x14007c981
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 rax, [rdx + r8*4]
mov rdx, qword [rbp - 0x39]
shl rax, cl
inc rdx
add rax, rdi
add rdx, rax
cmp rdx, qword [rbp - 0x79]
ja 0x14007c981
mov r10, qword [rsp]
mov r12, qword [rbp + 0x67]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, rsi
jb 0x14007c989
sub r11d, r9d
mov qword [rsp + 0x48], r9
inc qword [r13 + 0x10]
mov rsi, rax
mov dword [rsp + 0x60], r11d
mov r11, qword [rsp + 8]
mov qword [rsp + 8], r11
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x10], r15
jmp 0x14007c98e
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14007c88f
mov rsi, qword [rsp + 0x58]
mov r14, qword [rbp + 0x5f]
jmp 0x14007c985
mov rsi, qword [rsp + 0x58]
mov r14, qword [rbp + 0x5f]
mov r11, qword [rsp + 8]
mov r10, qword [rsp]
jmp 0x14007c993
mov r15, qword [rsp + 0x30]
mov r12, qword [rbp + 0x67]
mov r11, qword [rsp + 8]
mov r10, qword [rsp]
jmp 0x14007c993
mov r12, qword [rbp + 0x67]
mov r10, qword [rsp]
mov r11, qword [rsp + 8]
mov r15, qword [rsp + 0x30]
mov rax, qword [rsp + 0x20]
add rax, 0xaf
cmp rsi, rax
jb 0x14007ca05
mov ecx, dword [rbp + 0x37]
mov r13, r15
movups xmm0, xmmword [rsp + 0x48]
inc qword [rsp + 0x70]
inc ecx
mov qword [rbp + 0x3f], r15
mov dword [rbp + 0x37], ecx
movups xmm1, xmmword [rsp + 0x58]
movups xmmword [rbp - 0x69], xmm0
movups xmmword [rbp - 0x59], xmm1
cmp ecx, 4
jge 0x14007c9fa
lea rax, [r15 + 4]
cmp rax, qword [rbp - 0x71]
jae 0x14007c9fa
mov r15, qword [rsp + 0x18]
mov rax, qword [rbp - 0x59]
dec r15
mov rcx, qword [rbp - 0x69]
xor r11d, r11d
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rcx
jmp 0x14007bee1
mov rax, qword [rbp - 0x69]
mov qword [rsp + 0x28], rax
jmp 0x14007ca0e
mov r13, qword [rbp + 0x3f]
mov rax, qword [rsp + 0x28]
mov r9, qword [rbp - 0x49]
mov rcx, qword [rbp - 0x29]
mov rbx, qword [rbp - 0x61]
mov rdi, qword [rbp + 0x6f]
lea r15, [rcx + rax*2]
mov rax, qword [rbp - 0x41]
add rax, r13
add r15, r13
cmp rax, r9
mov qword [rbp - 0x79], r15
cmovb r9, rax
cmp rbx, r9
ja 0x14007cac0
movsxd rax, dword [rdi]
lea rcx, [rbx + 3]
movsxd r8, dword [r11]
mov rdx, rcx
sub rdx, rax
sub rcx, r8
cmp rbx, rax
jne 0x14007ca5d
xor r8d, r8d
jmp 0x14007cac4
cmp rbx, r8
jne 0x14007ca6a
mov r8d, 1
jmp 0x14007cac4
cmp rdx, 7
jae 0x14007ca85
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14007cac4
cmp rcx, 7
jae 0x14007ca9d
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14007cac4
movsxd rax, dword [r10]
cmp rbx, rax
jne 0x14007caad
mov r8d, 2
jmp 0x14007cac4
mov rax, qword [rsp + 0x10]
mov r8d, 3
movsxd rax, dword [rax]
cmp rbx, rax
je 0x14007cac4
lea r8, [rbx + 0xf]
cmp rbx, r9
ja 0x14007cae5
test r8, r8
je 0x14007cae5
mov eax, dword [r10]
mov rcx, qword [rsp + 0x10]
mov dword [rcx], eax
mov eax, dword [r11]
mov dword [r10], eax
mov eax, dword [rdi]
mov dword [r11], eax
mov dword [rdi], ebx
mov rcx, qword [rbp + 0x7f]
mov esi, dword [rbp - 0x51]
mov r15, qword [rsp + 0x28]
mov r11, qword [rsp + 0x70]
movzx eax, sil
shl eax, 0x19
or eax, r15d
mov dword [rcx], r11d
mov dword [rcx + 4], eax
mov r14d, dword [r14 + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x14007cb17
xor edi, edi
jmp 0x14007cb94
mov rcx, qword [rbp + 0x5f]
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 [rsp + 0x70]
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, [rsi + r15]
mov eax, 0x3ff
movsxd r9, edx
mov word [r14 + 0xe], r8w
and r8w, ax
mov dword [r14 + 8], edi
cmp r11, 6
jae 0x14007cbc2
movzx r10d, r11w
mov eax, 0x17
jmp 0x14007cc32
cmp r11, 0x82
jae 0x14007cbec
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 0x14007cc32
cmp r11, 0x842
jae 0x14007cc09
lea eax, [r11 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x14007cc32
mov eax, 0x17
cmp r11, 0x1842
jae 0x14007cc1d
lea r10d, [rax - 2]
jmp 0x14007cc32
cmp r11, 0x5842
jae 0x14007cc2e
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x14007cc32
movzx r10d, ax
cmp r9, 0xa
jae 0x14007cc3f
sub r9w, 2
jmp 0x14007cc7f
cmp r9, 0x86
jae 0x14007cc64
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 0x14007cc7f
cmp r9, 0x846
jae 0x14007cc7b
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x14007cc7f
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 0x14007ccb7
cmp r10w, 8
jae 0x14007ccb7
cmp r9w, 0x10
jae 0x14007ccb7
cmp r9w, 8
jb 0x14007cceb
or dx, 0x40
jmp 0x14007cceb
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]
lea rdi, [r15 + r13]
xor esi, esi
mov word [r14 + 0xc], dx
add r14, 0x10
mov qword [rsp + 0x70], rsi
mov qword [rbp + 0x7f], r14
lea r10, [r13 + 2]
add qword [rax], r11
mov rax, r15
mov r11, qword [rbp - 0x31]
cmp rdi, r11
mov qword [rbp + 0x3f], rdi
cmovb r11, rdi
shr rax, 2
cmp rbx, rax
jae 0x14007cd52
lea rax, [rbx*4]
sub r15, rax
lea rax, [r15 + r13]
cmp r10, rax
mov eax, 2
cmova r15, rax
lea r10, [r15 + r13]
cmp r11, r10
cmovb r10, r11
cmp r10, r11
jae 0x14007cde8
mov rdi, qword [rbp + 0x47]
mov ebx, 0xffff
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [r12 + 0x40]
mov rax, r10
and rax, qword [rbp + 0x4f]
mov rcx, r10
movzx r8d, word [r12 + 0x30]
imul edx, dword [rax + rdi], 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, rbx
cmova rcx, rbx
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 0x14007cd70
mov rdi, qword [rbp + 0x3f]
mov r13, rdi
mov qword [rbp + 0x3f], rdi
jmp 0x14007cf91
mov rsi, qword [rsp + 0x70]
inc r13
mov r15, qword [rbp - 0x79]
inc rsi
mov qword [rsp + 0x70], rsi
mov qword [rbp + 0x3f], r13
cmp r13, r15
jbe 0x14007cf8d
mov rax, qword [rbp - 0x29]
mov r10, qword [rbp - 0x71]
lea rax, [r15 + rax*4]
cmp r13, rax
jbe 0x14007cede
add r10, 0xfffffffffffffffc
lea rax, [r13 + 0x10]
cmp rax, r10
cmovb r10, rax
cmp r13, r10
jae 0x14007cf8d
mov rax, r10
add rsi, 4
sub rax, r13
dec rax
and rax, 0xfffffffffffffffc
add rsi, rax
mov qword [rsp + 0x70], rsi
nop dword [rax + rax]
mov r9, qword [r12 + 0x40]
mov rax, r13
and rax, qword [rbp + 0x4f]
movzx r8d, word [r12 + 0x30]
mov rcx, qword [rbp + 0x47]
imul edx, dword [rax + rcx], 0x1e35a7bd
lea eax, [r8 + 1]
mov word [r12 + 0x30], ax
mov rcx, r13
shr rdx, 0x11
mov eax, dword [r9 + rdx*4]
sub rcx, rax
movzx eax, r13w
cmp rcx, rbx
cmova rcx, rbx
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], r13d
add r13, 4
mov word [r9 + rdx*2 + 0x20000], r8w
cmp r13, r10
jb 0x14007ce60
jmp 0x14007cf89
add r10, 0xfffffffffffffffd
lea rax, [r13 + 8]
cmp rax, r10
cmovb r10, rax
cmp r13, r10
jae 0x14007cf8d
mov rax, r10
add rsi, 2
sub rax, r13
dec rax
and rax, 0xfffffffffffffffe
add rsi, rax
mov qword [rsp + 0x70], rsi
nop
mov r9, qword [r12 + 0x40]
mov rax, r13
and rax, qword [rbp + 0x4f]
movzx r8d, word [r12 + 0x30]
mov rcx, qword [rbp + 0x47]
imul edx, dword [rax + rcx], 0x1e35a7bd
lea eax, [r8 + 1]
mov word [r12 + 0x30], ax
mov rcx, r13
shr rdx, 0x11
mov eax, dword [r9 + rdx*4]
sub rcx, rax
movzx eax, r13w
cmp rcx, rbx
cmova rcx, rbx
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], r13d
add r13, 2
mov word [r9 + rdx*2 + 0x20000], r8w
cmp r13, r10
jb 0x14007cf10
mov qword [rbp + 0x3f], r13
mov r14, qword [rbp + 0x7f]
mov r10, qword [rbp - 0x71]
lea rax, [r13 + 4]
mov r8, qword [rbp + 0x47]
mov r9, qword [rbp + 0x4f]
mov rdx, qword [rbp + 0x5f]
mov r11, qword [rbp - 0x49]
mov rcx, qword [rbp - 0x41]
cmp rax, r10
jb 0x14007b4a0
mov r15, qword [rsp + 0xe8]
mov r12, qword [rsp + 0xf0]
mov rdi, qword [rsp + 0xf8]
mov rax, qword [rbp + 0x77]
sub r10, r13
sub r14, qword [rbp - 0x21]
add r10, rsi
sar r14, 4
mov qword [rax], r10
mov rax, qword [rbp + 0x87]
add qword [rax], r14
add rsp, 0x100
pop r14
pop r13
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 r12
push r13
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xe0
mov r15, qword [rbp + 0x6f]
mov rax, rcx
mov rsi, qword [rbp + 0x87]
mov r12, rdx
mov r14, qword [rbp + 0x8f]
mov r11d, 1
mov r13, r8
mov qword [rbp - 0x19], r14
mov ecx, dword [r15 + 8]
mov rdx, qword [r15 + 0x10]
lea r10, [rax + r12]
mov rsi, qword [rsi]
shl r11, cl
sub r11, 0x10
mov qword [rbp - 0x59], rdx
mov qword [rbp - 0x61], r11
mov qword [rsp + 0x28], rsi
mov qword [rbp - 0x71], r10
cmp rax, 4
jb 0x14007d082
lea rax, [r10 - 3]
mov qword [rbp - 0x31], rax
jmp 0x14007d086
mov qword [rbp - 0x31], r12
cmp dword [r15 + 4], 9
mov ecx, 0x40
mov rbx, qword [rbp + 0x7f]
mov eax, 0x200
cmovl eax, ecx
mov qword [rbp - 0x29], rax
add rax, r12
mov qword [rbp - 0x79], 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, [r12 + 4]
cmp rax, r10
jae 0x14007e7af
lea rax, [rbx + 4]
mov qword [rsp + 0xd8], rdi
mov qword [rbp - 0x69], rax
nop dword [rax + rax]
lea rax, [rdx + r12]
mov qword [rbp - 0x49], 0
mov r8, r10
mov rcx, r11
sub r8, r12
mov rdx, r11
cmp r12, r11
mov qword [rsp], r8
cmovb rcx, r12
cmp rax, r11
mov r11d, 0x7e4
mov qword [rbp + 0x47], rcx
cmovb rdx, rax
mov qword [rsp + 8], r11
mov rax, qword [r15 + 0x50]
xor r10d, r10d
mov r15, qword [rbp + 0x77]
xor edi, edi
mov qword [rsp + 0x18], rax
mov qword [rsp + 0x20], rdx
mov rdx, qword [rbp + 0x4f]
mov r15, qword [r15 + 0x40]
mov qword [rsp + 0x10], r10
mov dword [rbp - 0x39], r10d
lea rax, [r15 + 0x40000]
mov qword [rsp + 0x58], rax
mov rax, r12
and rax, r9
mov r12d, r11d
imul r14d, dword [rax + r13], 0x1e35a7bd
lea rsi, [rax + r13]
mov qword [rsp + 0x30], rax
shr r14, 0x11
xor r13d, r13d
jmp 0x14007d184
mov r8, qword [rsp]
movsxd rbx, dword [rbx + rdi*4]
mov r10, rdx
sub r10, rbx
test rdi, rdi
je 0x14007d1a5
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r14b
jne 0x14007d2a3
cmp r10, rdx
jae 0x14007d2a3
cmp rbx, rcx
ja 0x14007d2a3
and r10, r9
shr r8, 3
add r10, qword [rbp + 0x57]
xor ecx, ecx
mov rdx, rsi
test r8, r8
je 0x14007d1fe
mov r11, r10
sub r11, rsi
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r11]
cmp rax, r9
jne 0x14007d281
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007d1e0
mov r8, qword [rsp]
and r8d, 7
je 0x14007d223
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r10], al
jne 0x14007d223
inc rcx
sub r8, 1
jne 0x14007d210
mov r8, rcx
cmp r8, 2
jb 0x14007d292
imul r9, r8, 0x87
add r9, 0x78f
cmp r12, r9
jae 0x14007d292
test rdi, rdi
je 0x14007d268
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 r12, r9
jae 0x14007d292
mov r12, r9
mov qword [rsp + 0x10], r8
mov r13, r8
mov qword [rbp - 0x49], rbx
mov r11, r9
mov qword [rsp + 8], r9
jmp 0x14007d297
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x14007d226
mov r11, qword [rsp + 8]
mov r9, qword [rbp + 0x5f]
mov r8, qword [rsp]
mov rcx, qword [rbp + 0x47]
mov rax, qword [rbp - 0x69]
mov r10, qword [rbp + 0x4f]
movsxd rbx, dword [rax + rdi*4]
lea rax, [rdi + 1]
sub r10, rbx
test rax, rax
je 0x14007d2cd
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r14b
jne 0x14007d3bc
mov rdx, qword [rbp + 0x4f]
cmp r10, rdx
jae 0x14007d3c0
cmp rbx, rcx
ja 0x14007d3c0
and r10, r9
shr r8, 3
add r10, qword [rbp + 0x57]
xor edx, edx
mov rcx, rsi
test r8, r8
je 0x14007d31e
mov r11, r10
sub r11, rsi
nop
mov rax, qword [rcx]
mov r9, qword [rcx + r11]
cmp rax, r9
jne 0x14007d3a6
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x14007d300
mov r8, qword [rsp]
and r8d, 7
je 0x14007d345
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14007d345
inc rcx
inc rdx
sub r8, 1
jne 0x14007d330
mov r8, rdx
cmp r8, 2
jb 0x14007d3b7
imul r9, r8, 0x87
add r9, 0x78f
cmp r12, r9
jae 0x14007d3b7
lea rax, [rdi + 1]
test rax, rax
je 0x14007d38d
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 r12, r9
jae 0x14007d3b7
mov r12, r9
mov qword [rsp + 0x10], r8
mov r13, r8
mov qword [rbp - 0x49], rbx
mov r11, r9
mov qword [rsp + 8], r9
jmp 0x14007d3bc
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14007d348
mov r11, qword [rsp + 8]
mov rdx, qword [rbp + 0x4f]
mov rcx, qword [rbp + 0x47]
add rdi, 2
mov r9, qword [rbp + 0x5f]
mov rbx, qword [rbp + 0x7f]
cmp rdi, 0xa
jb 0x14007d180
mov rax, qword [rbp + 0x77]
xor ebx, ebx
mov rcx, qword [rbp + 0x4f]
mov rsi, rcx
mov rdi, qword [rax + 0x38]
mov eax, dword [r15 + r14*4]
movzx r15d, word [r15 + r14*2 + 0x20000]
sub rsi, rax
test rdi, rdi
je 0x14007d53c
mov rdx, qword [rsp + 0x30]
mov r8, qword [rbp + 0x57]
lea r14, [rdx + r8]
nop dword [rax]
nop word [rax + rax]
dec rdi
add rbx, rsi
cmp rbx, qword [rbp + 0x47]
ja 0x14007d53c
mov r9, qword [rbp + 0x5f]
sub rcx, rbx
mov rax, qword [rsp + 0x58]
and rcx, r9
movzx esi, word [rax + r15*4]
lea rax, [rax + r15*4]
movzx r15d, word [rax + 2]
add rdx, r13
cmp rdx, r9
ja 0x14007d52a
lea rax, [rcx + r13]
cmp rax, r9
ja 0x14007d52a
movzx eax, byte [rax + r8]
cmp byte [rdx + r8], al
jne 0x14007d52a
mov rax, qword [rsp]
lea r11, [rcx + r8]
mov r8, rax
xor ecx, ecx
shr r8, 3
mov rdx, r14
test r8, r8
je 0x14007d4b2
mov r10, r11
sub r10, r14
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x14007d514
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007d494
mov rax, qword [rsp]
mov r8, rax
and r8d, 7
je 0x14007d4d3
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x14007d4d3
inc rcx
sub r8, 1
jne 0x14007d4c0
mov rdx, rcx
mov r8, qword [rbp + 0x57]
cmp rdx, 4
jb 0x14007d525
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r12, rax
jae 0x14007d525
mov r12, rax
mov qword [rsp + 0x10], rdx
mov r13, rdx
mov qword [rbp - 0x49], rbx
mov r11, rax
mov qword [rsp + 8], rax
jmp 0x14007d52a
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14007d4d6
mov r11, qword [rsp + 8]
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rbp + 0x4f]
test rdi, rdi
jne 0x14007d420
mov r12, qword [rbp + 0x4f]
mov rdi, qword [rbp + 0x77]
mov rax, r12
mov rbx, qword [rbp + 0x5f]
mov rcx, r12
mov r13, qword [rbp + 0x57]
and rax, rbx
mov r9, qword [rdi + 0x40]
movzx edx, word [rdi + 0x30]
imul r8d, dword [rax + r13], 0x1e35a7bd
lea eax, [rdx + 1]
mov word [rdi + 0x30], ax
shr r8, 0x11
mov eax, dword [r9 + r8*4]
sub rcx, rax
movzx eax, r12w
mov byte [rax + r9 + 0x30000], r8b
mov eax, 0xffff
cmp rcx, rax
cmova rcx, rax
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], r12d
mov word [r9 + r8*2 + 0x20000], dx
cmp r11, 0x7e4
jne 0x14007d8df
mov rax, qword [rbp + 0x77]
mov rdi, qword [rsp + 0x30]
add rdi, r13
mov r15, qword [rax + 0x48]
mov rcx, qword [r15 + 8]
mov rax, rcx
shr rax, 7
cmp qword [r15 + 0x10], rax
jb 0x14007d8db
imul ebx, dword [rdi], 0x1e35a7bd
lea r14, [rcx + 1]
mov r12, qword [rbp + 0x6f]
mov rdx, qword [rsp]
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 0x14007d754
mov rax, qword [r12 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x14007d754
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 0x14007d67e
mov r10, rdi
sub r10, r8
nop
mov rax, qword [r8]
mov r9, qword [r8 + r10]
cmp rax, r9
jne 0x14007d740
add r8, 8
add rcx, 8
sub rdx, 1
jne 0x14007d660
mov rdx, r11
and edx, 7
je 0x14007d6a3
sub r8, rcx
nop dword [rax]
movzx eax, byte [rcx + r8]
cmp byte [rcx + rdi], al
jne 0x14007d6a3
inc rcx
sub rdx, 1
jne 0x14007d690
mov r9, rcx
mov eax, dword [r12 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007d760
test r9, r9
je 0x14007d760
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 0x14007d76a
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 8]
jb 0x14007d76a
sub r11d, r9d
mov qword [rsp + 0x10], r9
inc qword [r15 + 0x10]
mov dword [rbp - 0x39], r11d
mov qword [rbp - 0x49], rdx
mov qword [rsp + 8], rax
jmp 0x14007d76a
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14007d6a6
mov rsi, qword [rsp + 0x20]
mov r12, qword [rsp + 0x18]
jmp 0x14007d76e
mov rsi, qword [rsp + 0x20]
mov r12, qword [rsp + 0x18]
mov rdx, qword [rsp]
lea rax, [r14 + 1]
mov r14, qword [rbp + 0x6f]
mov qword [r15 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rbx + rax + 1]
test cl, cl
je 0x14007d8cd
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx ebx, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x14007d8cd
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 0x14007d7fe
mov r10, rdi
sub r10, rcx
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rcx]
mov r9, qword [rcx + r10]
cmp rax, r9
jne 0x14007d8b9
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x14007d7e0
mov r8, r11
and r8d, 7
je 0x14007d81b
movzx eax, byte [rcx]
cmp byte [rdx + rdi], al
jne 0x14007d81b
inc rcx
inc rdx
sub r8, 1
jne 0x14007d807
mov r9, rdx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007d8cd
test r9, r9
je 0x14007d8cd
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 0x14007d8cd
mov r12, qword [rbp + 0x4f]
mov rbx, qword [rbp + 0x5f]
mov rdi, qword [rbp + 0x77]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 8]
jb 0x14007d8e3
sub r11d, r9d
mov qword [rbp - 0x49], rdx
inc qword [r15 + 0x10]
mov rcx, r9
mov qword [rsp + 0x10], rcx
mov dword [rbp - 0x39], r11d
mov qword [rsp + 8], rax
jmp 0x14007d8e8
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rdx
jmp 0x14007d81e
mov r12, qword [rbp + 0x4f]
mov rbx, qword [rbp + 0x5f]
mov rdi, qword [rbp + 0x77]
jmp 0x14007d8e3
mov rdi, qword [rbp + 0x77]
mov r14, qword [rbp + 0x6f]
mov rcx, qword [rsp + 0x10]
cmp qword [rsp + 8], 0x7e4
jbe 0x14007e5dc
mov r8, qword [rsp]
xor r10d, r10d
mov dword [rbp + 0x47], r10d
dec r8
cmp dword [r14 + 4], 5
mov qword [rsp], r8
jge 0x14007d920
lea rax, [rcx - 1]
mov r13, r8
cmp rax, r8
cmovb r13, rax
jmp 0x14007d923
mov r13, r10
mov r9, qword [rbp - 0x61]
lea r11, [r12 + 1]
mov r15, qword [rdi + 0x40]
cmp r11, r9
mov rax, qword [rbp - 0x59]
mov rcx, r9
cmovb rcx, r11
mov qword [rsp + 0x40], r10
inc rax
mov qword [rsp + 0x18], r11
add rax, r12
mov qword [rsp + 0x20], rcx
cmp rax, r9
mov qword [rsp + 0x38], r10
mov rdx, r9
mov dword [rsp + 0x50], r10d
mov r9, qword [rbp + 0x57]
cmovb rdx, rax
mov rax, qword [r14 + 0x50]
mov esi, 0x7e4
mov qword [rsp + 0x30], rax
mov rdi, r10
lea rax, [r15 + 0x40000]
mov qword [rsp + 0x58], rdx
mov rdx, qword [rbp + 0x5f]
mov r12d, 0x7e4
mov qword [rbp - 0x21], rax
mov rax, r11
and rax, rdx
mov qword [rsp + 0x48], rsi
imul r14d, dword [rax + r9], 0x1e35a7bd
lea rsi, [rax + r9]
mov qword [rbp - 0x79], rax
shr r14, 0x11
nop word [rax + rax]
mov rax, qword [rbp + 0x7f]
mov r10, r11
movsxd rbx, dword [rax + rdi*4]
sub r10, rbx
test rdi, rdi
je 0x14007d9e5
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r14b
jne 0x14007dad3
cmp r10, r11
jae 0x14007dad3
cmp rbx, rcx
ja 0x14007dad3
and r10, qword [rbp + 0x5f]
xor ecx, ecx
add r10, r9
mov rdx, rsi
mov r9, r8
shr r9, 3
test r9, r9
je 0x14007da42
mov r11, r10
sub r11, rsi
nop word [rax + rax]
mov rax, qword [rdx]
mov r8, qword [r11 + rdx]
cmp rax, r8
jne 0x14007dbe0
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x14007da20
mov r8, qword [rsp]
and r8d, 7
je 0x14007da63
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x14007da63
inc rcx
sub r8, 1
jne 0x14007da50
mov r8, rcx
cmp r8, 2
jb 0x14007dabd
imul r9, r8, 0x87
add r9, 0x78f
cmp r12, r9
jae 0x14007dabd
test rdi, rdi
je 0x14007daa8
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 r12, r9
jae 0x14007dabd
mov r12, r9
mov qword [rsp + 0x38], r8
mov r13, r8
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], r9
mov rdx, qword [rbp + 0x5f]
mov r9, qword [rbp + 0x57]
mov r8, qword [rsp]
mov rcx, qword [rsp + 0x20]
mov r11, qword [rsp + 0x18]
mov rax, qword [rbp - 0x69]
mov r10, r11
movsxd rbx, dword [rax + rdi*4]
lea rax, [rdi + 1]
sub r10, rbx
test rax, rax
je 0x14007dafc
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r14b
jne 0x14007dc0d
cmp r10, r11
jae 0x14007dc0d
cmp rbx, rcx
ja 0x14007dc0d
and r10, rdx
mov rcx, rsi
add r10, r9
xor edx, edx
mov r9, r8
shr r9, 3
test r9, r9
je 0x14007db52
mov r11, r10
sub r11, rsi
nop dword [rax + rax]
mov rax, qword [rcx]
mov r8, qword [r11 + rcx]
cmp rax, r8
jne 0x14007dbf4
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14007db30
mov r8, qword [rsp]
and r8d, 7
je 0x14007db75
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14007db75
inc rcx
inc rdx
sub r8, 1
jne 0x14007db60
mov r8, rdx
cmp r8, 2
jb 0x14007dc08
imul r9, r8, 0x87
add r9, 0x78f
cmp r12, r9
jae 0x14007dc08
lea rax, [rdi + 1]
test rax, rax
je 0x14007dbc1
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 r12, r9
jae 0x14007dc08
mov r11, qword [rsp + 0x18]
mov r12, r9
mov r13, r8
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], rbx
mov r10, r9
mov qword [rsp + 0x48], r9
jmp 0x14007dc12
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x14007da66
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14007db78
mov r11, qword [rsp + 0x18]
mov r10, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x20]
add rdi, 2
mov r8, qword [rsp]
mov r9, qword [rbp + 0x57]
mov rdx, qword [rbp + 0x5f]
cmp rdi, 0xa
jb 0x14007d9c0
mov rax, qword [rbp + 0x77]
mov rsi, r11
xor ebx, ebx
mov rdi, qword [rax + 0x38]
mov eax, dword [r15 + r14*4]
movzx r15d, word [r15 + r14*2 + 0x20000]
sub rsi, rax
test rdi, rdi
je 0x14007dd8d
mov rdx, qword [rbp - 0x79]
mov r8, r9
lea r14, [rdx + r9]
dec rdi
add rbx, rsi
cmp rbx, qword [rsp + 0x20]
ja 0x14007dd8d
mov r9, qword [rbp + 0x5f]
mov rcx, r11
mov rax, qword [rbp - 0x21]
sub rcx, rbx
movzx esi, word [rax + r15*4]
lea rax, [rax + r15*4]
movzx r15d, word [rax + 2]
and rcx, r9
add rdx, r13
cmp rdx, r9
ja 0x14007dd80
lea rax, [rcx + r13]
cmp rax, r9
ja 0x14007dd80
movzx eax, byte [rax + r8]
cmp byte [rdx + r8], al
jne 0x14007dd80
lea r11, [rcx + r8]
xor eax, eax
mov rcx, qword [rsp]
mov rdx, r14
mov r8, rcx
shr r8, 3
test r8, r8
je 0x14007dcfe
mov r10, r11
sub r10, r14
nop dword [rax]
mov rcx, qword [rdx]
mov r9, qword [r10 + rdx]
cmp rcx, r9
jne 0x14007dd6a
add rdx, 8
add rax, 8
sub r8, 1
jne 0x14007dce0
mov rcx, qword [rsp]
mov r8, rcx
and r8d, 7
je 0x14007dd23
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
cmp byte [rax + r11], cl
jne 0x14007dd23
inc rax
sub r8, 1
jne 0x14007dd10
mov rdx, rax
mov r11, qword [rsp + 0x18]
mov r8, qword [rbp + 0x57]
cmp rdx, 4
jb 0x14007dd7b
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r12, rax
jae 0x14007dd7b
mov r12, rax
mov qword [rsp + 0x38], rdx
mov r13, rdx
mov qword [rsp + 0x40], rbx
mov r10, rax
mov qword [rsp + 0x48], rax
jmp 0x14007dd80
xor rcx, r9
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x14007dd26
mov r10, qword [rsp + 0x48]
mov rdx, qword [rbp - 0x79]
test rdi, rdi
jne 0x14007dc62
mov rdi, qword [rbp + 0x77]
mov r15d, 0xffff
mov r13, qword [rbp + 0x57]
mov rax, r11
and rax, qword [rbp + 0x5f]
mov rcx, r11
mov r9, qword [rdi + 0x40]
movzx edx, word [rdi + 0x30]
imul r8d, dword [rax + r13], 0x1e35a7bd
lea eax, [rdx + 1]
mov word [rdi + 0x30], ax
shr r8, 0x11
mov eax, dword [r9 + r8*4]
sub rcx, rax
movzx eax, r11w
cmp rcx, r15
cmova rcx, r15
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], r11d
mov word [r9 + r8*2 + 0x20000], dx
cmp r10, 0x7e4
jne 0x14007e124
mov rax, qword [rbp + 0x77]
mov rdi, qword [rbp - 0x79]
add rdi, r13
mov r15, qword [rax + 0x48]
mov rcx, qword [r15 + 8]
mov rax, rcx
shr rax, 7
cmp qword [r15 + 0x10], rax
jb 0x14007e119
imul ebx, dword [rdi], 0x1e35a7bd
lea r14, [rcx + 1]
mov r13, qword [rbp + 0x6f]
mov rdx, qword [rsp]
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 0x14007dfaa
mov rax, qword [r13 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x14007dfaa
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 0x14007dece
mov r10, rdi
sub r10, r8
nop word [rax + rax]
mov r9, qword [r8]
mov rax, qword [r10 + r8]
cmp r9, rax
jne 0x14007df96
add r8, 8
add rcx, 8
sub rdx, 1
jne 0x14007deb0
mov rdx, r11
and edx, 7
je 0x14007def3
sub r8, rcx
nop dword [rax]
movzx eax, byte [r8 + rcx]
cmp byte [rcx + rdi], al
jne 0x14007def3
inc rcx
sub rdx, 1
jne 0x14007dee0
mov r9, rcx
mov eax, dword [r13 + 0x64]
mov r12, qword [rsp + 0x58]
add rax, r9
cmp rax, r11
jbe 0x14007dfbb
test r9, r9
je 0x14007dfbb
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 + 0x30]
movzx ecx, byte [r11 + rcx]
lea rax, [rdx + r8*4]
shl rax, cl
lea rdx, [r12 + 1]
add rax, rsi
mov rsi, qword [rsp + 0x48]
add rdx, rax
cmp rdx, r13
ja 0x14007dfc5
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, rsi
jb 0x14007dfc5
sub r11d, r9d
mov qword [rsp + 0x38], r9
inc qword [r15 + 0x10]
mov rsi, rax
mov dword [rsp + 0x50], r11d
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rax
jmp 0x14007dfc5
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14007def6
mov rsi, qword [rsp + 0x48]
mov r12, qword [rsp + 0x58]
mov r13, qword [rsp + 0x30]
jmp 0x14007dfc9
mov rsi, qword [rsp + 0x48]
mov r13, qword [rsp + 0x30]
mov rdx, qword [rsp]
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 0x14007e12f
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx ebx, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x14007e12f
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 0x14007e04e
mov r10, rdi
sub r10, rcx
nop dword [rax]
mov r9, qword [rcx]
mov rax, qword [r10 + rcx]
cmp r9, rax
jne 0x14007e105
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x14007e030
mov r8, r11
and r8d, 7
je 0x14007e06b
movzx eax, byte [rcx]
cmp byte [rdx + rdi], al
jne 0x14007e06b
inc rcx
inc rdx
sub r8, 1
jne 0x14007e057
mov r9, rdx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007e12f
test r9, r9
je 0x14007e12f
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, r12
cmp rdx, r13
ja 0x14007e12f
mov r13, qword [rbp + 0x57]
mov rdi, qword [rbp + 0x77]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, rsi
jb 0x14007e137
sub r11d, r9d
mov qword [rsp + 0x38], r9
inc qword [r15 + 0x10]
mov rsi, rax
mov dword [rsp + 0x50], r11d
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rax
jmp 0x14007e137
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rdx
jmp 0x14007e06e
mov rsi, qword [rsp + 0x48]
mov r14, qword [rbp + 0x6f]
jmp 0x14007e133
mov rsi, qword [rsp + 0x48]
mov r14, qword [rbp + 0x6f]
jmp 0x14007e137
mov r13, qword [rbp + 0x57]
mov rdi, qword [rbp + 0x77]
mov rax, qword [rsp + 8]
mov r12, qword [rbp + 0x4f]
add rax, 0xaf
cmp rsi, rax
jb 0x14007e1ad
mov ecx, dword [rbp + 0x47]
inc r12
movups xmm0, xmmword [rsp + 0x38]
inc qword [rsp + 0x28]
inc ecx
mov qword [rbp + 0x4f], r12
mov dword [rbp + 0x47], ecx
movups xmm1, xmmword [rsp + 0x48]
movups xmmword [rbp - 0x51], xmm0
movups xmmword [rbp - 0x41], xmm1
cmp ecx, 4
jge 0x14007e1a2
lea rax, [r12 + 4]
cmp rax, qword [rbp - 0x71]
jae 0x14007e1a2
mov r8, qword [rsp]
mov rbx, qword [rbp - 0x41]
dec r8
mov rcx, qword [rbp - 0x51]
xor r10d, r10d
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rcx
jmp 0x14007d905
mov r10, qword [rbp - 0x51]
mov qword [rsp + 0x10], r10
jmp 0x14007e1b2
mov r10, qword [rsp + 0x10]
mov rax, qword [rbp - 0x29]
mov r9, qword [rbp - 0x61]
mov rbx, qword [rbp - 0x49]
mov r11, qword [rbp + 0x7f]
lea r15, [rax + r10*2]
mov rax, qword [rbp - 0x59]
add rax, r12
add r15, r12
cmp rax, r9
mov qword [rbp - 0x79], r15
cmovb r9, rax
cmp rbx, r9
ja 0x14007e268
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 0x14007e206
xor r8d, r8d
jmp 0x14007e270
cmp rbx, r8
jne 0x14007e213
mov r8d, 1
jmp 0x14007e270
cmp rdx, 7
jae 0x14007e22e
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14007e270
cmp rcx, 7
jae 0x14007e246
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14007e270
movsxd rax, dword [r11 + 8]
cmp rbx, rax
jne 0x14007e257
mov r8d, 2
jmp 0x14007e270
movsxd rax, dword [r11 + 0xc]
cmp rbx, rax
jne 0x14007e26c
mov r8d, 3
jmp 0x14007e270
mov rdi, qword [rbp - 0x69]
lea r8, [rbx + 0xf]
cmp rbx, r9
ja 0x14007e2ba
test r8, r8
je 0x14007e2ba
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 + 0x8f]
mov esi, dword [rbp - 0x39]
mov r11, qword [rsp + 0x28]
mov r15, qword [rbp + 0x6f]
movzx eax, sil
shl eax, 0x19
or eax, r10d
mov dword [rcx], r11d
mov dword [rcx + 4], eax
mov r14d, dword [r14 + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x14007e2ee
xor edi, edi
jmp 0x14007e367
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 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 + 0x28]
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 + 0x8f]
mov eax, 0x3ff
mov word [r14 + 0xe], r8w
and r8w, ax
mov dword [r14 + 8], edi
mov rdi, qword [rsp + 0x10]
lea edx, [rdi + rsi]
movsxd r9, edx
cmp r11, 6
jae 0x14007e39c
movzx r10d, r11w
mov eax, 0x17
jmp 0x14007e40c
cmp r11, 0x82
jae 0x14007e3c6
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 0x14007e40c
cmp r11, 0x842
jae 0x14007e3e3
lea eax, [r11 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x14007e40c
mov eax, 0x17
cmp r11, 0x1842
jae 0x14007e3f7
lea r10d, [rax - 2]
jmp 0x14007e40c
cmp r11, 0x5842
jae 0x14007e408
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x14007e40c
movzx r10d, ax
cmp r9, 0xa
jae 0x14007e419
sub r9w, 2
jmp 0x14007e459
cmp r9, 0x86
jae 0x14007e43e
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 0x14007e459
cmp r9, 0x846
jae 0x14007e455
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x14007e459
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 0x14007e491
cmp r10w, 8
jae 0x14007e491
cmp r9w, 0x10
jae 0x14007e491
cmp r9w, 8
jb 0x14007e4c5
or dx, 0x40
jmp 0x14007e4c5
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 r10, [r12 + 2]
xor esi, esi
mov word [r14 + 0xc], dx
add r14, 0x10
mov qword [rsp + 0x28], rsi
mov qword [rbp + 0x8f], r14
add qword [rax], r11
lea rax, [rdi + r12]
mov r11, qword [rbp - 0x31]
cmp rax, r11
cmovb r11, rax
mov rax, rdi
shr rax, 2
cmp rbx, rax
jae 0x14007e52f
lea rax, [rbx*4]
mov rcx, rdi
sub rcx, rax
lea rax, [rcx + r12]
cmp r10, rax
mov eax, 2
cmova rcx, rax
lea r10, [r12 + rcx]
cmp r11, r10
cmovb r10, r11
cmp r10, r11
jae 0x14007e5d0
mov r12, qword [rbp + 0x5f]
mov r14d, 0xffff
mov r15, qword [rbp + 0x77]
nop word [rax + rax]
mov r9, qword [r15 + 0x40]
mov rax, r10
movzx r8d, word [r15 + 0x30]
and rax, r12
mov rcx, r10
imul edx, dword [rax + r13], 0x1e35a7bd
lea eax, [r8 + 1]
mov word [r15 + 0x30], ax
shr rdx, 0x11
mov eax, dword [r9 + rdx*4]
sub rcx, rax
movzx eax, r10w
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], r10d
inc r10
mov word [r9 + rdx*2 + 0x20000], r8w
cmp r10, r11
jb 0x14007e550
mov r12, qword [rbp + 0x4f]
mov r15, qword [rbp + 0x6f]
mov r14, qword [rbp + 0x8f]
add r12, rdi
mov qword [rbp + 0x4f], r12
jmp 0x14007e785
mov rsi, qword [rsp + 0x28]
inc r12
mov r15, qword [rbp - 0x79]
inc rsi
mov qword [rsp + 0x28], rsi
mov qword [rbp + 0x4f], r12
cmp r12, r15
jbe 0x14007e77a
mov rax, qword [rbp - 0x29]
mov r10, qword [rbp - 0x71]
lea rax, [r15 + rax*4]
cmp r12, rax
jbe 0x14007e6c6
add r10, 0xfffffffffffffffc
lea rax, [r12 + 0x10]
cmp rax, r10
cmovb r10, rax
cmp r12, r10
jae 0x14007e77a
add rsi, 4
mov rax, r10
sub rax, r12
dec rax
and rax, 0xfffffffffffffffc
add rsi, rax
mov qword [rsp + 0x28], rsi
mov esi, 0xffff
nop dword [rax]
mov r9, qword [rdi + 0x40]
mov rax, r12
movzx r8d, word [rdi + 0x30]
and rax, rbx
mov rcx, r12
imul edx, dword [rax + r13], 0x1e35a7bd
lea eax, [r8 + 1]
mov word [rdi + 0x30], ax
shr rdx, 0x11
mov eax, dword [r9 + rdx*4]
sub rcx, rax
movzx eax, r12w
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], r12d
add r12, 4
mov word [r9 + rdx*2 + 0x20000], r8w
cmp r12, r10
jb 0x14007e650
jmp 0x14007e771
add r10, 0xfffffffffffffffd
lea rax, [r12 + 8]
cmp rax, r10
cmovb r10, rax
cmp r12, r10
jae 0x14007e77a
add rsi, 2
mov rax, r10
sub rax, r12
dec rax
and rax, 0xfffffffffffffffe
add rsi, rax
mov qword [rsp + 0x28], rsi
mov esi, 0xffff
nop dword [rax]
mov r9, qword [rdi + 0x40]
mov rax, r12
movzx r8d, word [rdi + 0x30]
and rax, rbx
mov rcx, r12
imul edx, dword [rax + r13], 0x1e35a7bd
lea eax, [r8 + 1]
mov word [rdi + 0x30], ax
shr rdx, 0x11
mov eax, dword [r9 + rdx*4]
sub rcx, rax
movzx eax, r12w
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], r12d
add r12, 2
mov word [r9 + rdx*2 + 0x20000], r8w
cmp r12, r10
jb 0x14007e700
mov rsi, qword [rsp + 0x28]
mov qword [rbp + 0x4f], r12
mov r15, qword [rbp + 0x6f]
mov r14, qword [rbp + 0x8f]
mov r10, qword [rbp - 0x71]
lea rax, [r12 + 4]
mov r9, qword [rbp + 0x5f]
mov rbx, qword [rbp + 0x7f]
mov r11, qword [rbp - 0x61]
mov rdx, qword [rbp - 0x59]
cmp rax, r10
jb 0x14007d0f0
mov rdi, qword [rsp + 0xd8]
mov rax, qword [rbp + 0x87]
sub r10, r12
sub r14, qword [rbp - 0x19]
add r10, rsi
sar r14, 4
mov qword [rax], r10
mov rax, qword [rbp + 0x97]
add qword [rax], r14
add rsp, 0xe0
pop r15
pop r14
pop r13
pop r12
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 0x14007e87d
lea rax, [r11 - 3]
mov qword [rbp - 0x29], rax
jmp 0x14007e881
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 0x140080580
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 rcx, rbx
mov qword [rbp + 0x47], r8
cmovb rcx, rsi
lea edi, [r14 + 2]
mov r14, qword [rbp - 0x31]
cmp rax, rbx
mov rdx, rbx
mov qword [rbp + 0x77], rcx
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 0x14007e9b8
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 0x14007e9e1
movzx eax, r9w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14007ead4
cmp r9, r10
jae 0x14007ead4
cmp rbx, rcx
ja 0x14007ead4
and r9, qword [rbp + 0x5f]
xor ecx, ecx
add r9, qword [rbp + 0x57]
mov rdx, rsi
shr r8, 3
test r8, r8
je 0x14007ea2e
nop dword [rax]
mov r10, qword [rdx]
mov rax, qword [rcx + r9]
cmp r10, rax
jne 0x14007eab7
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007ea10
mov r8, qword [rbp + 0x47]
and r8d, 7
je 0x14007ea53
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r9], al
jne 0x14007ea53
inc rcx
sub r8, 1
jne 0x14007ea40
mov r8, rcx
cmp r8, 2
jb 0x14007eac8
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14007eac8
test r11, r11
je 0x14007ea93
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 0x14007ead0
mov r13, r9
mov qword [rsp], r8
mov qword [rsp + 0x28], r8
mov qword [rbp - 0x59], rbx
mov qword [rsp + 0x10], r9
jmp 0x14007ead0
xor rax, r10
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x14007ea56
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 0x14007eafd
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14007ebd2
cmp r10, r9
jae 0x14007ebd2
cmp rbx, rcx
ja 0x14007ebd2
and r10, rdx
mov r9, r8
add r10, qword [rbp + 0x57]
xor edx, edx
shr r9, 3
mov rcx, rsi
test r9, r9
je 0x14007eb52
mov r11, r10
sub r11, rsi
nop dword [rax]
mov rax, qword [rcx]
mov r8, qword [rcx + r11]
cmp rax, r8
jne 0x14007edf6
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14007eb30
mov r8, qword [rbp + 0x47]
and r8d, 7
je 0x14007eb75
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14007eb75
inc rcx
inc rdx
sub r8, 1
jne 0x14007eb60
mov r8, rdx
cmp r8, 2
jb 0x14007ebd2
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14007ebd2
lea rax, [rdi - 1]
test rax, rax
je 0x14007ebbd
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 0x14007ebd2
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 0x14007ebf6
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14007eccf
cmp r10, rcx
mov rcx, qword [rbp + 0x77]
jae 0x14007ecd3
cmp rbx, rcx
ja 0x14007ecd3
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 0x14007ec52
mov r11, r10
sub r11, rsi
nop
mov rax, qword [rcx]
mov r8, qword [rcx + r11]
cmp rax, r8
jne 0x14007ee0a
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14007ec30
mov rax, qword [rbp + 0x47]
mov r8, rax
and r8d, 7
je 0x14007ec75
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14007ec75
inc rcx
inc rdx
sub r8, 1
jne 0x14007ec60
mov r8, rdx
cmp r8, 2
jb 0x14007eccf
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14007eccf
test rdi, rdi
je 0x14007ecba
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 0x14007eccf
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 0x14007ecfc
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14007ee36
cmp r10, r8
jae 0x14007ee36
cmp rbx, rcx
ja 0x14007ee36
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 0x14007ed62
mov r11, r10
sub r11, rsi
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rcx]
mov r9, qword [rcx + r11]
cmp rax, r9
jne 0x14007ee1e
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x14007ed40
mov rax, qword [rbp + 0x47]
mov r8, rax
and r8d, 7
je 0x14007ed85
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14007ed85
inc rcx
inc rdx
sub r8, 1
jne 0x14007ed70
mov r8, rdx
cmp r8, 2
jb 0x14007ee32
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14007ee32
lea rax, [rdi + 1]
test rax, rax
je 0x14007edd5
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 0x14007ee32
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 0x14007ee3f
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14007eb78
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14007ec78
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14007ed88
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 0x14007e9b0
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 0x14007efe4
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 0x14007efe4
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 0x14007efcd
lea rax, [rcx + r10]
cmp rax, r11
ja 0x14007efcd
movzx eax, byte [rax + r9]
cmp byte [rdx + r9], al
jne 0x14007efcd
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 0x14007ef4e
mov r10, r11
sub r10, r14
nop
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x14007efb8
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x14007ef30
mov rax, qword [rbp + 0x47]
mov r8, rax
and r8d, 7
je 0x14007ef73
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x14007ef73
inc rcx
sub r8, 1
jne 0x14007ef60
mov rdx, rcx
mov r9, qword [rbp + 0x57]
cmp rdx, 4
jb 0x14007efc9
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r13, rax
jae 0x14007efc9
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 0x14007efd2
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14007ef76
mov r10, qword [rsp]
mov r11, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x38]
mov r8, qword [rbp + 0x4f]
test rdi, rdi
jne 0x14007eeb0
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 0x14007f3bc
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 0x14007f3b9
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 0x14007f224
mov rax, qword [r12 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x14007f224
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 0x14007f14e
mov r10, rdi
sub r10, r8
nop dword [rax]
mov r9, qword [r8]
mov rax, qword [r8 + r10]
cmp r9, rax
jne 0x14007f210
add r8, 8
add rcx, 8
sub rdx, 1
jne 0x14007f130
mov rdx, r11
and edx, 7
je 0x14007f173
sub r8, rcx
nop dword [rax]
movzx eax, byte [rcx + r8]
cmp byte [rcx + rdi], al
jne 0x14007f173
inc rcx
sub rdx, 1
jne 0x14007f160
mov r9, rcx
mov eax, dword [r12 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007f230
test r9, r9
je 0x14007f230
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 0x14007f23a
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x10]
jb 0x14007f23a
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 0x14007f23a
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14007f176
mov rsi, qword [rsp + 0x20]
mov r12, qword [rsp + 0x18]
jmp 0x14007f23e
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 0x14007f3a4
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx ebx, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x14007f3a4
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 0x14007f2ce
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 0x14007f390
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x14007f2b0
mov r8, r11
and r8d, 7
je 0x14007f2eb
movzx eax, byte [rcx]
cmp byte [rdx + rdi], al
jne 0x14007f2eb
inc rcx
inc rdx
sub r8, 1
jne 0x14007f2d7
mov r9, rdx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007f3a4
test r9, r9
je 0x14007f3a4
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 0x14007f3a4
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 0x14007f3c0
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 0x14007f3c5
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rdx
jmp 0x14007f2ee
mov rbx, qword [rbp + 0x5f]
mov r12d, 0xffff
mov rsi, qword [rbp + 0x4f]
mov rdi, qword [rsp + 8]
jmp 0x14007f3c0
mov rdi, r9
mov r14, qword [rbp + 0x6f]
mov rcx, qword [rsp + 0x28]
cmp qword [rsp + 0x10], 0x7e4
jbe 0x14008037a
mov dword [rbp + 0x77], 0
mov r8, qword [rbp + 0x47]
dec r8
cmp dword [r14 + 4], 5
mov qword [rbp + 0x47], r8
jge 0x14007f401
lea rax, [rcx - 1]
mov r10, r8
cmp rax, r8
cmovb r10, rax
mov qword [rsp], r10
jmp 0x14007f407
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 0x14007f4c1
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 0x14007f4e3
movzx eax, r11w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14007f5ee
cmp r11, qword [rsp + 0x18]
jae 0x14007f5ee
cmp rbx, rcx
ja 0x14007f5ee
and r11, qword [rbp + 0x5f]
xor ecx, ecx
add r11, r9
mov rdx, rsi
mov r9, r8
shr r9, 3
test r9, r9
je 0x14007f542
mov r10, r11
sub r10, rsi
nop word [rax + rax]
mov r8, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r8, rax
jne 0x14007f5cc
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x14007f520
mov r8, qword [rbp + 0x47]
and r8d, 7
je 0x14007f563
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x14007f563
inc rcx
sub r8, 1
jne 0x14007f550
mov r8, rcx
cmp r8, 2
jb 0x14007f5dd
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14007f5dd
lea rax, [rdi - 2]
test rax, rax
je 0x14007f5a6
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 0x14007f5e6
mov r13, r9
mov qword [rsp], r8
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], r9
jmp 0x14007f5e6
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x14007f566
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 0x14007f615
movzx eax, r11w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14007f6f3
cmp r11, qword [rsp + 0x18]
jae 0x14007f6f3
cmp rbx, rcx
ja 0x14007f6f3
and r11, rdx
mov rcx, rsi
add r11, r9
xor edx, edx
mov r9, r8
shr r9, 3
test r9, r9
je 0x14007f672
mov r10, r11
sub r10, rsi
nop word [rax + rax]
mov r8, qword [rcx]
mov rax, qword [r10 + rcx]
cmp r8, rax
jne 0x14007f925
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14007f650
mov r8, qword [rbp + 0x47]
and r8d, 7
je 0x14007f695
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x14007f695
inc rcx
inc rdx
sub r8, 1
jne 0x14007f680
mov r8, rdx
cmp r8, 2
jb 0x14007f6f3
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14007f6f3
lea rax, [rdi - 1]
test rax, rax
je 0x14007f6dd
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 0x14007f6f3
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 0x14007f718
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14007f805
mov rcx, qword [rsp + 0x20]
cmp r10, r11
jae 0x14007f80a
cmp rbx, rcx
ja 0x14007f80a
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 0x14007f782
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 0x14007f939
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14007f760
mov rax, qword [rbp + 0x47]
mov r8, rax
and r8d, 7
je 0x14007f7a5
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14007f7a5
inc rcx
inc rdx
sub r8, 1
jne 0x14007f790
mov r8, rdx
cmp r8, 2
jb 0x14007f800
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14007f800
test rdi, rdi
je 0x14007f7ea
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 0x14007f800
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 0x14007f82f
movzx eax, r10w
cmp byte [rax + r15 + 0x30000], r12b
jne 0x14007f966
cmp r10, r11
jae 0x14007f966
cmp rbx, rcx
ja 0x14007f966
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 0x14007f892
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 0x14007f94d
add rcx, 8
add rdx, 8
sub r9, 1
jne 0x14007f870
mov rax, qword [rbp + 0x47]
mov r8, rax
and r8d, 7
je 0x14007f8b5
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r10], al
jne 0x14007f8b5
inc rcx
inc rdx
sub r8, 1
jne 0x14007f8a0
mov r8, rdx
cmp r8, 2
jb 0x14007f961
imul r9, r8, 0x87
add r9, 0x78f
cmp r13, r9
jae 0x14007f961
lea rax, [rdi + 1]
test rax, rax
je 0x14007f905
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 0x14007f961
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 0x14007f96a
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14007f698
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14007f7a8
xor rax, r8
tzcnt r8, rax
shr r8, 3
add r8, rdx
jmp 0x14007f8b8
mov r11, qword [rsp + 0x18]
mov r10, qword [rsp]
add rdi, 4
add r14, 0x10
lea rax, [rdi - 2]
cmp rax, 0x10
jb 0x14007f4b0
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 0x14007fafd
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 0x14007fafd
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 0x14007faf0
lea rax, [rcx + r10]
cmp rax, r8
ja 0x14007faf0
movzx eax, byte [rax + r9]
cmp byte [rdx + r9], al
jne 0x14007faf0
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 0x14007fa6e
mov r10, r11
sub r10, r14
nop
mov r9, qword [rdx]
mov rcx, qword [r10 + rdx]
cmp r9, rcx
jne 0x14007fadb
add rdx, 8
add rax, 8
sub r8, 1
jne 0x14007fa50
mov rcx, qword [rbp + 0x47]
mov r8, rcx
and r8d, 7
je 0x14007fa93
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
cmp byte [rax + r11], cl
jne 0x14007fa93
inc rax
sub r8, 1
jne 0x14007fa80
mov rdx, rax
mov r11, qword [rsp + 0x18]
mov r9, qword [rbp + 0x57]
cmp rdx, 4
jb 0x14007faec
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp r13, rax
jae 0x14007faec
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 0x14007faf0
xor rcx, r9
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x14007fa96
mov r10, qword [rsp]
mov rdx, qword [rbp - 0x71]
test rdi, rdi
jne 0x14007f9d0
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 0x14007fea7
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 0x14007fea4
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 0x14007fd33
mov rax, qword [r13 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x14007fd33
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 0x14007fc5e
mov r10, rdi
sub r10, r8
mov r9, qword [r8]
mov rax, qword [r10 + r8]
cmp r9, rax
jne 0x14007fd1f
add r8, 8
add rcx, 8
sub rdx, 1
jne 0x14007fc40
mov rdx, r11
and edx, 7
je 0x14007fc83
sub r8, rcx
nop dword [rax]
movzx eax, byte [r8 + rcx]
cmp byte [rcx + rdi], al
jne 0x14007fc83
inc rcx
sub rdx, 1
jne 0x14007fc70
mov r9, rcx
mov eax, dword [r13 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007fd3f
test r9, r9
je 0x14007fd3f
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 0x14007fd49
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r12
jb 0x14007fd49
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 0x14007fd49
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x14007fc86
mov rsi, qword [rsp + 0x40]
mov r13, qword [rsp + 0x38]
jmp 0x14007fd4d
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 [rbx + rax + 1]
test cl, cl
je 0x14007fe99
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx ebx, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x14007fe99
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 0x14007fdce
mov r10, rdi
sub r10, rcx
mov r9, qword [rcx]
mov rax, qword [r10 + rcx]
cmp r9, rax
jne 0x14007fe85
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x14007fdb0
mov r8, r11
and r8d, 7
je 0x14007fdeb
movzx eax, byte [rcx]
cmp byte [rdx + rdi], al
jne 0x14007fdeb
inc rcx
inc rdx
sub r8, 1
jne 0x14007fdd7
mov r9, rdx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14007fe99
test r9, r9
je 0x14007fe99
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 0x14007fe99
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 0x14007feab
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 0x14007feab
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rdx
jmp 0x14007fdee
mov r13, qword [rbp + 0x57]
mov rdi, qword [rsp + 8]
jmp 0x14007feab
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 0x14007ff19
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 0x14007ff13
lea rax, [rsi + 4]
cmp rax, qword [rbp - 0x69]
jae 0x14007ff13
mov rbx, qword [rbp - 0x51]
mov rcx, qword [rbp - 0x61]
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x28], rcx
jmp 0x14007f3db
mov r12, qword [rbp - 0x61]
jmp 0x14007ff1e
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 0x14007ffca
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 0x14007ff6a
xor r8d, r8d
jmp 0x14007ffce
cmp rdi, r8
jne 0x14007ff77
mov r8d, 1
jmp 0x14007ffce
cmp rdx, 7
jae 0x14007ff92
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14007ffce
cmp rcx, 7
jae 0x14007ffaa
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14007ffce
movsxd rax, dword [r10 + 8]
cmp rdi, rax
jne 0x14007ffbb
mov r8d, 2
jmp 0x14007ffce
movsxd rax, dword [r10 + 0xc]
mov r8d, 3
cmp rdi, rax
je 0x14007ffce
lea r8, [rdi + 0xf]
cmp rdi, r9
ja 0x140080046
test r8, r8
je 0x140080046
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 0x140080075
xor ebx, ebx
jmp 0x1400800ee
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 0x14008011f
movzx r10d, r11w
mov eax, 0x17
jmp 0x14008018f
cmp r11, 0x82
jae 0x140080149
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 0x14008018f
cmp r11, 0x842
jae 0x140080166
lea eax, [r11 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x14008018f
mov eax, 0x17
cmp r11, 0x1842
jae 0x14008017a
lea r10d, [rax - 2]
jmp 0x14008018f
cmp r11, 0x5842
jae 0x14008018b
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x14008018f
movzx r10d, ax
cmp r9, 0xa
jae 0x14008019c
sub r9w, 2
jmp 0x1400801dc
cmp r9, 0x86
jae 0x1400801c1
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 0x1400801dc
cmp r9, 0x846
jae 0x1400801d8
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x1400801dc
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 0x140080214
cmp r10w, 8
jae 0x140080214
cmp r9w, 0x10
jae 0x140080214
cmp r9w, 8
jb 0x140080248
or dx, 0x40
jmp 0x140080248
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 0x1400802b6
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 0x14008036e
mov r15, qword [rsp + 8]
mov r14d, 0xffff
nop word [rax + 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 0x1400802d0
mov r15, qword [rbp + 0x6f]
mov r14, qword [rsp + 0x30]
add rsi, r12
mov qword [rbp + 0x4f], rsi
jmp 0x14008055a
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 0x140080556
mov rax, qword [rbp - 0x21]
mov r11, qword [rbp - 0x69]
lea rax, [r15 + rax*4]
cmp rsi, rax
jbe 0x140080487
add r11, 0xfffffffffffffffc
lea rax, [rsi + 0x10]
cmp rax, r11
cmovb r11, rax
cmp rsi, r11
jae 0x140080556
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 0x1400803f0
jmp 0x140080552
add r11, 0xfffffffffffffffd
lea rax, [rsi + 8]
cmp rax, r11
cmovb r11, rax
cmp rsi, r11
jae 0x140080556
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 0x1400804c0
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 0x14007e910
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 rsi
push rdi
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0x100
mov r15, qword [rbp + 0x5f]
mov rax, rcx
mov r8, qword [rbp + 0x77]
mov r10d, 1
mov r11, r9
mov rsi, rdx
mov r9, qword [rbp + 0x7f]
mov ecx, dword [r15 + 8]
lea r14, [rax + rdx]
mov r8, qword [r8]
shl r10, cl
mov rcx, qword [r15 + 0x10]
sub r10, 0x10
mov qword [rbp - 0x69], r10
mov qword [rsp + 0x58], rcx
mov qword [rbp - 0x29], r9
mov qword [rsp + 0x30], r8
mov qword [rbp - 0x71], r14
cmp rax, 4
jb 0x140080639
lea rax, [r14 - 3]
mov qword [rbp - 0x39], rax
jmp 0x14008063d
mov qword [rbp - 0x39], rsi
cmp dword [r15 + 4], 9
mov edx, 0x40
mov rdi, qword [rbp + 0x67]
mov eax, 0x200
cmovl eax, edx
mov qword [rsp + 0xe8], r13
mov r13, qword [rbp + 0x6f]
mov qword [rbp - 0x31], rax
add rax, rsi
mov edx, dword [rdi + 0x4c]
mov qword [rsp + 0x60], rax
cmp edx, 4
jle 0x1400806d9
mov ecx, dword [r13]
lea eax, [rcx - 1]
mov dword [r13 + 0x10], eax
lea eax, [rcx + 1]
mov dword [r13 + 0x14], eax
lea eax, [rcx - 2]
mov dword [r13 + 0x18], eax
lea eax, [rcx + 2]
mov dword [r13 + 0x1c], eax
lea eax, [rcx - 3]
mov dword [r13 + 0x20], eax
lea eax, [rcx + 3]
mov dword [r13 + 0x24], eax
cmp edx, 0xa
jle 0x1400806d4
mov ecx, dword [r13 + 4]
lea eax, [rcx - 1]
mov dword [r13 + 0x28], eax
lea eax, [rcx + 1]
mov dword [r13 + 0x2c], eax
lea eax, [rcx - 2]
mov dword [r13 + 0x30], eax
lea eax, [rcx + 2]
mov dword [r13 + 0x34], eax
lea eax, [rcx - 3]
mov dword [r13 + 0x38], eax
lea eax, [rcx + 3]
mov dword [r13 + 0x3c], eax
mov rcx, qword [rsp + 0x58]
lea rax, [rsi + 4]
cmp rax, r14
jae 0x140081998
mov qword [rsp + 0xf8], rbx
xor edx, edx
mov qword [rsp + 0xf0], r12
nop dword [rax + rax]
lea rax, [rcx + rsi]
mov qword [rbp - 0x51], rdx
mov r12, r14
mov qword [rsp + 0x38], 0x7e4
mov r14, qword [rdi + 0x60]
sub r12, rsi
cmp rsi, r10
mov qword [rsp + 8], r12
mov r9, r10
mov qword [rsp + 0x50], r14
cmovb r9, rsi
mov qword [rsp + 0x20], rdx
cmp rax, r10
mov qword [rsp + 0x18], r9
mov rcx, r10
mov dword [rbp - 0x41], edx
cmovb rcx, rax
mov qword [rbp + 0x37], rdx
mov rax, qword [r15 + 0x50]
mov r8, rsi
movsxd rsi, dword [rdi + 0x4c]
and r8, r11
mov r15, qword [rdi + 0x58]
mov rbx, rdx
mov qword [rsp], rcx
mov ecx, 0x7e4
mov qword [rsp + 0x28], rcx
mov r10, rdx
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x10], r8
test rsi, rsi
je 0x140080904
mov r14, qword [rbp + 0x47]
mov r15, r8
mov rax, qword [rbp + 0x3f]
mov qword [rsp + 0x28], rcx
mov qword [rbp + 0x37], rdx
nop dword [rax]
movsxd rdi, dword [r13 + rbx*4]
mov rcx, rax
sub rcx, rdi
cmp rcx, rax
jae 0x1400808e5
cmp rdi, r9
ja 0x1400808e5
and rcx, r11
lea rdx, [r10 + r15]
cmp rdx, r11
ja 0x1400808e5
lea rax, [rcx + r10]
cmp rax, r11
ja 0x1400808e1
movzx eax, byte [rax + r14]
cmp byte [rdx + r14], al
jne 0x1400808e1
mov r8, r12
lea r11, [rcx + r14]
shr r8, 3
lea rdx, [r15 + r14]
xor ecx, ecx
test r8, r8
je 0x14008082e
mov r10, r11
sub r10, rdx
nop word [rax + rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x1400808c3
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140080810
mov r8, r12
and r8d, 7
je 0x140080853
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x140080853
inc rcx
sub r8, 1
jne 0x140080840
mov r8, rcx
cmp r8, 3
jae 0x140080867
cmp r8, 2
jne 0x1400808d4
cmp rbx, r8
jae 0x1400808d4
mov r11, qword [rsp + 0x28]
imul r9, r8, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x1400808d4
test rbx, rbx
je 0x1400808a7
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 0x1400808d4
mov qword [rsp + 0x28], r9
mov r10, r8
mov qword [rbp + 0x37], r8
mov qword [rsp + 0x20], r8
mov qword [rbp - 0x51], rdi
mov qword [rsp + 0x38], r9
jmp 0x1400808d8
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x140080856
mov r10, qword [rbp + 0x37]
mov r9, qword [rsp + 0x18]
mov r11, qword [rbp + 0x4f]
mov rax, qword [rbp + 0x3f]
inc rbx
cmp rbx, rsi
jb 0x1400807a0
mov r15, qword [rsp + 0x40]
mov r14, qword [rsp + 0x50]
mov r8, qword [rsp + 0x10]
mov rdi, qword [rbp + 0x67]
mov ecx, dword [rdi + 0x40]
mov r12, qword [rbp + 0x47]
add r12, r8
imul edx, dword [r12], 0x1e35a7bd
shr edx, cl
mov ecx, dword [rdi + 0x48]
mov eax, edx
shl eax, cl
lea r13, [r15 + rdx*2]
movzx edx, word [r15 + rdx*2]
mov esi, edx
mov qword [rsp + 0x40], r13
sub rsi, qword [rdi + 0x38]
lea r14, [r14 + rax*4]
cmp rdx, qword [rdi + 0x38]
mov eax, 0
mov edi, edx
cmovbe rsi, rax
cmp rdx, rsi
jbe 0x140080a8b
mov rax, qword [rbp + 0x67]
mov r13, qword [rbp + 0x47]
mov r15d, dword [rax + 0x44]
nop dword [rax + rax]
mov rbx, qword [rbp + 0x3f]
dec rdi
mov rax, rdi
and rax, r15
mov ecx, dword [r14 + rax*4]
sub rbx, rcx
cmp rbx, r9
ja 0x140080a81
and rcx, r11
lea rdx, [r10 + r8]
cmp rdx, r11
ja 0x140080a78
lea rax, [rcx + r10]
cmp rax, r11
ja 0x140080a78
movzx eax, byte [rax + r13]
cmp byte [rdx + r13], al
jne 0x140080a78
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 0x1400809f3
mov r10, r11
sub r10, r12
nop dword [rax + rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x140080a63
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400809d0
mov rax, qword [rsp + 8]
mov r8, rax
and r8d, 7
je 0x140080a13
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x140080a13
inc rcx
sub r8, 1
jne 0x140080a00
mov rdx, rcx
mov r8, qword [rsp + 0x10]
mov r9, qword [rsp + 0x18]
mov r11, qword [rbp + 0x4f]
cmp rdx, 4
jb 0x140080a74
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp qword [rsp + 0x28], rax
jae 0x140080a74
mov qword [rsp + 0x28], rax
mov r10, rdx
mov qword [rbp + 0x37], rdx
mov qword [rsp + 0x20], rdx
mov qword [rbp - 0x51], rbx
mov qword [rsp + 0x38], rax
jmp 0x140080a78
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140080a16
mov r10, qword [rbp + 0x37]
cmp rdi, rsi
ja 0x140080960
mov r13, qword [rsp + 0x40]
movzx edx, word [r13]
mov rax, qword [rbp + 0x67]
mov rsi, qword [rbp + 0x3f]
mov eax, dword [rax + 0x44]
and rax, rdx
mov dword [r14 + rax*4], esi
inc word [r13]
cmp qword [rsp + 0x38], 0x7e4
mov r14, qword [rbp + 0x67]
jne 0x140080db2
mov r13, qword [r14 + 0x50]
mov rcx, qword [r13 + 8]
mov r15, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r15, rax
jb 0x140080db2
imul ebx, dword [r12], 0x1e35a7bd
lea r14, [rcx + 1]
mov r8, qword [rbp + 0x5f]
mov rdx, qword [rsp + 8]
mov qword [r13 + 8], r14
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x140080c42
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x140080c42
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 0x140080b6e
mov r10, r12
sub r10, rdx
nop word [rax + rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x140080c2e
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140080b50
mov r8, r11
and r8d, 7
je 0x140080b93
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r12], al
jne 0x140080b93
inc rcx
sub r8, 1
jne 0x140080b80
mov r9, rcx
mov rcx, qword [rbp + 0x5f]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140080c48
test r9, r9
je 0x140080c48
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]
lea rdx, [rsi + 1]
add rdx, rax
cmp rdx, qword [rsp + 0x48]
ja 0x140080c4c
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x38]
jb 0x140080c4c
mov qword [rsp + 0x38], rax
sub r11d, r9d
lea rax, [r15 + 1]
mov qword [rsp + 0x20], r9
mov qword [r13 + 0x10], rax
mov dword [rbp - 0x41], r11d
mov qword [rbp - 0x51], rdx
jmp 0x140080c4c
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140080b96
mov rsi, qword [rsp]
jmp 0x140080c51
mov rsi, qword [rsp]
mov rdx, qword [rsp + 8]
mov r15, qword [rbp + 0x5f]
lea rax, [r14 + 1]
mov qword [r13 + 8], rax
mov rax, qword [r15 + 0x78]
movzx ecx, byte [rbx + rax + 1]
test cl, cl
je 0x140080da8
mov rax, qword [r15 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x140080da8
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 eax, eax
mov ecx, eax
test r8, r8
je 0x140080cde
mov r10, r12
sub r10, rdx
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x140080d94
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140080cc0
mov r8, r11
and r8d, 7
je 0x140080cfc
movzx eax, byte [rdx]
cmp byte [rcx + r12], al
jne 0x140080cfc
inc rdx
inc rcx
sub r8, 1
jne 0x140080ce7
mov r9, rcx
mov eax, dword [r15 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140080da8
test r9, r9
je 0x140080da8
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, rdi
add rdx, rsi
cmp rdx, qword [rsp + 0x48]
ja 0x140080da8
mov rsi, qword [rbp + 0x3f]
mov r14, qword [rbp + 0x67]
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x38]
jb 0x140080db6
sub r11d, r9d
mov qword [rbp - 0x51], rdx
inc qword [r13 + 0x10]
mov rcx, r9
mov qword [rsp + 0x20], rcx
mov dword [rbp - 0x41], r11d
mov qword [rsp + 0x38], rax
jmp 0x140080dbb
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140080cff
mov rsi, qword [rbp + 0x3f]
mov r14, qword [rbp + 0x67]
jmp 0x140080db6
mov r15, qword [rbp + 0x5f]
mov rcx, qword [rsp + 0x20]
cmp qword [rsp + 0x38], 0x7e4
jbe 0x1400819ce
mov r12, qword [rsp + 8]
xor ebx, ebx
mov dword [rbp + 0x37], ebx
dec r12
cmp dword [r15 + 4], 5
mov qword [rsp + 8], r12
jge 0x140080df3
lea rax, [rcx - 1]
mov r10, r12
cmp rax, r12
cmovb r10, rax
jmp 0x140080df6
mov r10, rbx
mov r8, qword [rbp - 0x69]
lea rdx, [rsi + 1]
mov r13, qword [rbp + 0x67]
cmp rdx, r8
mov rax, qword [rsp + 0x58]
mov r11, r8
mov r9, qword [rbp + 0x4f]
cmovb r11, rdx
mov r14, qword [r14 + 0x58]
inc rax
add rax, rsi
mov qword [rsp + 0x18], r10
movsxd rsi, dword [r13 + 0x4c]
cmp rax, r8
mov rcx, r8
mov qword [rsp + 0x70], rbx
cmovb rcx, rax
mov qword [rsp + 0x78], 0x7e4
mov rax, qword [r15 + 0x50]
mov r8, rdx
mov r15, qword [r13 + 0x60]
and r8, r9
mov qword [rsp + 0x48], rcx
mov ecx, 0x7e4
mov qword [rsp + 0x50], rcx
mov qword [rsp], rdx
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x10], r14
mov qword [rbp - 0x61], r15
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x68], rbx
mov dword [rbp - 0x79], ebx
test rsi, rsi
je 0x14008100a
mov r15, qword [rbp + 0x47]
mov r14, r8
mov rax, qword [rbp + 0x6f]
xor r13d, r13d
mov qword [rsp + 0x50], rcx
nop dword [rax]
movsxd rdi, dword [rax + rbx*4]
mov rcx, rdx
sub rcx, rdi
cmp rcx, rdx
jae 0x140080fec
cmp rdi, r11
ja 0x140080fec
and rcx, r9
lea rdx, [r10 + r14]
cmp rdx, r9
ja 0x140080fe8
lea rax, [rcx + r10]
cmp rax, r9
ja 0x140080fe4
movzx eax, byte [rax + r15]
cmp byte [rdx + r15], al
jne 0x140080fe4
mov r8, r12
lea rdx, [r14 + r15]
shr r8, 3
lea r11, [rcx + r15]
mov rax, r13
test r8, r8
je 0x140080f2e
mov r10, r11
sub r10, rdx
nop word [rax + rax]
mov r9, qword [rdx]
mov rcx, qword [r10 + rdx]
cmp r9, rcx
jne 0x140080fc5
add rdx, 8
add rax, 8
sub r8, 1
jne 0x140080f10
mov r8, r12
and r8d, 7
je 0x140080f53
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
cmp byte [rax + r11], cl
jne 0x140080f53
inc rax
sub r8, 1
jne 0x140080f40
mov r8, rax
cmp r8, 3
jae 0x140080f67
cmp r8, 2
jne 0x140080fd6
cmp rbx, r8
jae 0x140080fd6
mov r11, qword [rsp + 0x50]
imul r9, r8, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x140080fd6
test rbx, rbx
je 0x140080fa7
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 0x140080fd6
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 [rsp + 0x78], r9
jmp 0x140080fdb
xor rcx, r9
tzcnt r8, rcx
shr r8, 3
add r8, rax
jmp 0x140080f56
mov r10, qword [rsp + 0x18]
mov r11, qword [rsp + 0x28]
mov r9, qword [rbp + 0x4f]
mov rax, qword [rbp + 0x6f]
mov rdx, qword [rsp]
inc rbx
cmp rbx, rsi
jb 0x140080ea0
mov r14, qword [rsp + 0x10]
mov r15, qword [rbp - 0x61]
mov r8, qword [rsp + 0x40]
mov r13, qword [rbp + 0x67]
mov ecx, dword [r13 + 0x40]
mov r9, qword [rbp + 0x47]
add r9, r8
mov qword [rsp + 0x10], r9
imul edx, dword [r9], 0x1e35a7bd
shr edx, cl
mov ecx, dword [r13 + 0x48]
lea r12, [r14 + rdx*2]
movzx r13d, word [r12]
mov eax, edx
mov r14, qword [rbp + 0x67]
mov esi, r13d
shl eax, cl
mov edi, r13d
mov qword [rbp - 0x61], r12
sub rsi, qword [r14 + 0x38]
cmp r13, qword [r14 + 0x38]
lea r15, [r15 + rax*4]
mov eax, 0
cmovbe rsi, rax
cmp r13, rsi
jbe 0x1400811a2
mov r14d, dword [r14 + 0x44]
mov r13, qword [rsp]
mov r12, qword [rbp + 0x47]
nop dword [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 0x140081195
and rcx, qword [rbp + 0x4f]
lea rdx, [r10 + r8]
cmp rdx, qword [rbp + 0x4f]
ja 0x14008118c
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x4f]
ja 0x14008118c
movzx eax, byte [rax + r12]
cmp byte [rdx + r12], al
jne 0x14008118c
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 0x140081103
mov r10, r11
sub r10, r9
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x140081176
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400810e0
mov rax, qword [rsp + 8]
mov r8, rax
and r8d, 7
je 0x140081123
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x140081123
inc rcx
sub r8, 1
jne 0x140081110
mov rdx, rcx
mov r9, qword [rsp + 0x10]
mov r8, qword [rsp + 0x40]
mov r11, qword [rsp + 0x28]
cmp rdx, 4
jb 0x140081187
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp qword [rsp + 0x50], rax
jae 0x140081187
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 [rsp + 0x78], rax
jmp 0x14008118c
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140081126
mov r10, qword [rsp + 0x18]
cmp rdi, rsi
ja 0x140081070
mov r12, qword [rbp - 0x61]
mov r14, qword [rbp + 0x67]
movzx r13d, word [r12]
mov eax, dword [r14 + 0x44]
mov rcx, qword [rsp]
and rax, r13
mov dword [r15 + rax*4], ecx
inc word [r12]
mov r12, qword [rsp + 0x78]
cmp r12, 0x7e4
jne 0x1400814ce
mov r13, qword [r14 + 0x50]
mov rcx, qword [r13 + 8]
mov r15, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r15, rax
jb 0x1400814ca
imul ebx, dword [r9], 0x1e35a7bd
lea r14, [rcx + 1]
mov r8, qword [rbp + 0x5f]
mov rdx, qword [rsp + 8]
mov qword [r13 + 8], r14
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x140081369
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x140081369
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 0x140081283
mov r10, r9
sub r10, rdx
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14008134b
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140081260
mov r9, qword [rsp + 0x10]
mov r8, r11
and r8d, 7
je 0x1400812a3
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r9], al
jne 0x1400812a3
inc rcx
sub r8, 1
jne 0x140081290
mov r9, rcx
mov rcx, qword [rbp + 0x5f]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008135f
test r9, r9
je 0x14008135f
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 + 0x48]
lea rdx, [rsi + 1]
add rdx, rax
cmp rdx, qword [rsp + 0x60]
ja 0x14008133f
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r12
jb 0x14008133f
mov r12, rax
mov qword [rsp + 0x78], rax
lea rax, [r15 + 1]
mov qword [rsp + 0x68], r9
sub r11d, r9d
mov qword [r13 + 0x10], rax
mov dword [rbp - 0x79], r11d
mov qword [rsp + 0x70], rdx
mov r9, qword [rsp + 0x10]
mov rdx, qword [rsp + 8]
jmp 0x14008136e
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x1400812a6
mov rdx, qword [rsp + 8]
mov r9, qword [rsp + 0x10]
mov rsi, qword [rsp + 0x48]
mov r15, qword [rbp + 0x5f]
lea rax, [r14 + 1]
mov qword [r13 + 8], rax
mov rax, qword [r15 + 0x78]
movzx ecx, byte [rax + rbx + 1]
test cl, cl
je 0x1400814c0
mov rax, qword [r15 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x1400814c0
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 eax, eax
mov ecx, eax
test r8, r8
je 0x1400813ee
mov r10, r9
sub r10, rdx
nop
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x1400814ac
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400813d0
mov r8, r11
and r8d, 7
je 0x140081415
mov r9, qword [rsp + 0x10]
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r9], al
jne 0x140081415
inc rdx
inc rcx
sub r8, 1
jne 0x140081400
mov r9, rcx
mov eax, dword [r15 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x1400814c0
test r9, r9
je 0x1400814c0
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 [rsp + 0x60]
ja 0x1400814c0
mov r14, qword [rbp + 0x67]
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 0x1400814d2
sub r11d, r9d
mov qword [rsp + 0x68], r9
inc qword [r13 + 0x10]
mov r12, rax
mov dword [rbp - 0x79], r11d
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], rax
jmp 0x1400814d2
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140081418
mov rcx, qword [rsp]
mov r14, qword [rbp + 0x67]
jmp 0x1400814d2
mov rcx, qword [rsp]
mov r15, qword [rbp + 0x5f]
mov rax, qword [rsp + 0x38]
add rax, 0xaf
cmp r12, rax
jb 0x14008153e
movups xmm0, xmmword [rsp + 0x68]
inc qword [rsp + 0x30]
mov rsi, rcx
movups xmm1, xmmword [rsp + 0x78]
mov qword [rbp + 0x3f], rcx
mov ecx, dword [rbp + 0x37]
inc ecx
mov dword [rbp + 0x37], ecx
movups xmmword [rbp - 0x59], xmm0
movups xmmword [rbp - 0x49], xmm1
cmp ecx, 4
jge 0x140081538
lea rax, [rsi + 4]
cmp rax, qword [rbp - 0x71]
jae 0x140081538
mov r12, qword [rsp + 8]
mov r9, qword [rbp - 0x49]
dec r12
mov rcx, qword [rbp - 0x59]
xor ebx, ebx
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x20], rcx
jmp 0x140080dd7
mov r13, qword [rbp - 0x59]
jmp 0x140081547
mov rsi, qword [rbp + 0x3f]
mov r13, qword [rsp + 0x20]
mov rax, qword [rbp - 0x31]
mov r10, qword [rbp - 0x69]
mov r11, qword [rbp + 0x6f]
mov rbx, qword [rbp - 0x51]
lea r12, [rax + r13*2]
mov rax, qword [rsp + 0x58]
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 0x140081600
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 0x14008159f
xor r9d, r9d
mov r8d, r9d
jmp 0x140081607
cmp rbx, r9
jne 0x1400815ac
mov r8d, 1
jmp 0x140081604
cmp r8, 7
jae 0x1400815c8
movzx ecx, r8b
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x140081604
cmp rcx, 7
jae 0x1400815e0
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x140081604
movsxd rax, dword [r11 + 8]
cmp rbx, rax
jne 0x1400815f1
mov r8d, 2
jmp 0x140081604
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x140081604
lea r8, [rbx + 0xf]
xor r9d, r9d
cmp rbx, r10
ja 0x140081689
test r8, r8
je 0x140081689
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 [r14 + 0x4c]
cmp edx, 4
jle 0x140081689
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 0x140081689
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 + 0x7f]
mov esi, dword [rbp - 0x41]
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 [r15 + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x1400816b8
mov edi, r9d
jmp 0x140081730
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 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 + 0x7f]
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 0x14008175a
movzx r10d, r12w
mov eax, 0x17
jmp 0x1400817cd
cmp r12, 0x82
jae 0x140081786
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 0x1400817cd
cmp r12, 0x842
jae 0x1400817a4
lea eax, [r12 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x1400817cd
mov eax, 0x17
cmp r12, 0x1842
jae 0x1400817b8
lea r10d, [rax - 2]
jmp 0x1400817cd
cmp r12, 0x5842
jae 0x1400817c9
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x1400817cd
movzx r10d, ax
cmp r9, 0xa
jae 0x1400817da
sub r9w, 2
jmp 0x14008181a
cmp r9, 0x86
jae 0x1400817ff
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 0x14008181a
cmp r9, 0x846
jae 0x140081816
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x14008181a
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 0x140081852
cmp r10w, 8
jae 0x140081852
cmp r9w, 0x10
jae 0x140081852
cmp r9w, 8
jb 0x140081886
or dx, 0x40
jmp 0x140081886
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 + 0x3f]
mov word [r11 + 0xc], dx
add r11, 0x10
mov qword [rbp + 0x7f], r11
add qword [rax], r12
xor eax, eax
mov r11, qword [rbp - 0x39]
lea r10, [rsi + 2]
mov qword [rsp + 0x30], rax
lea rax, [rsi + r13]
cmp rax, r11
cmovb r11, rax
mov rax, r13
shr rax, 2
cmp rbx, rax
jae 0x1400818f0
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 0x14008194d
mov rbx, qword [rbp + 0x47]
mov rdi, qword [rbp + 0x67]
nop dword [rax]
mov ecx, dword [rdi + 0x40]
mov rax, r10
and rax, qword [rbp + 0x4f]
imul r8d, dword [rax + rbx], 0x1e35a7bd
mov rax, qword [rdi + 0x58]
shr r8d, cl
mov ecx, dword [rdi + 0x48]
lea r9, [r8 + r8]
shl r8d, cl
movzx edx, word [r9 + rax]
mov eax, dword [rdi + 0x44]
and rdx, rax
mov eax, r8d
add rdx, rax
mov rax, qword [rdi + 0x60]
mov dword [rax + rdx*4], r10d
inc r10
mov rax, qword [rdi + 0x58]
inc word [r9 + rax]
cmp r10, r11
jb 0x140081900
mov r8, qword [rsp + 0x30]
add rsi, r13
mov qword [rbp + 0x3f], rsi
mov r11, qword [rbp + 0x4f]
mov r14, qword [rbp - 0x71]
lea rax, [rsi + 4]
mov rdi, qword [rbp + 0x67]
mov edx, 0
mov r13, qword [rbp + 0x6f]
mov r10, qword [rbp - 0x69]
mov rcx, qword [rsp + 0x58]
cmp rax, r14
jb 0x140080700
mov r12, qword [rsp + 0xf0]
mov rbx, qword [rsp + 0xf8]
mov r9, qword [rbp + 0x7f]
mov rax, qword [rbp + 0x77]
sub r14, rsi
sub r9, qword [rbp - 0x29]
add r14, r8
mov r13, qword [rsp + 0xe8]
sar r9, 4
mov qword [rax], r14
mov rax, qword [rbp + 0x87]
add qword [rax], r9
add rsp, 0x100
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
mov r8, qword [rsp + 0x30]
inc rsi
mov r12, qword [rsp + 0x60]
inc r8
mov qword [rsp + 0x30], r8
mov qword [rbp + 0x3f], rsi
cmp rsi, r12
jbe 0x140081959
mov rax, qword [rbp - 0x31]
mov r10, qword [rbp - 0x71]
lea rax, [r12 + rax*4]
cmp rsi, rax
jbe 0x140081a9d
mov r11, qword [rbp + 0x4f]
lea rax, [rsi + 0x10]
add r10, 0xfffffffffffffffc
cmp rax, r10
cmovb r10, rax
cmp rsi, r10
jae 0x14008195d
mov rbx, qword [rbp + 0x47]
mov rax, r10
sub rax, rsi
add r8, 4
dec rax
and rax, 0xfffffffffffffffc
add r8, rax
mov qword [rsp + 0x30], r8
nop
mov ecx, dword [r14 + 0x40]
mov rax, rsi
and rax, r11
imul r8d, dword [rax + rbx], 0x1e35a7bd
mov rax, qword [r14 + 0x58]
shr r8d, cl
mov ecx, dword [r14 + 0x48]
lea r9, [r8 + r8]
shl r8d, cl
movzx edx, word [r9 + rax]
mov eax, dword [r14 + 0x44]
and rdx, rax
mov eax, r8d
add rdx, rax
mov rax, qword [r14 + 0x60]
mov dword [rax + rdx*4], esi
add rsi, 4
mov rax, qword [r14 + 0x58]
inc word [r9 + rax]
cmp rsi, r10
jb 0x140081a40
mov r8, qword [rsp + 0x30]
mov qword [rbp + 0x3f], rsi
jmp 0x14008195d
add r10, 0xfffffffffffffffd
lea rax, [rsi + 8]
cmp rax, r10
cmovb r10, rax
cmp rsi, r10
jae 0x140081959
mov rbx, qword [rbp + 0x47]
mov rax, r10
mov r11, qword [rbp + 0x4f]
sub rax, rsi
dec rax
add r8, 2
and rax, 0xfffffffffffffffe
add r8, rax
mov qword [rsp + 0x30], r8
mov ecx, dword [r14 + 0x40]
mov rax, rsi
and rax, r11
imul r8d, dword [rax + rbx], 0x1e35a7bd
mov rax, qword [r14 + 0x58]
shr r8d, cl
mov ecx, dword [r14 + 0x48]
lea r9, [r8 + r8]
shl r8d, cl
movzx edx, word [r9 + rax]
mov eax, dword [r14 + 0x44]
and rdx, rax
mov eax, r8d
add rdx, rax
mov rax, qword [r14 + 0x60]
mov dword [rax + rdx*4], esi
add rsi, 2
mov rax, qword [r14 + 0x58]
inc word [r9 + rax]
cmp rsi, r10
jb 0x140081ad6
mov r8, qword [rsp + 0x30]
mov qword [rbp + 0x3f], rsi
jmp 0x14008195d
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 [0x140af1b40]
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 + 0x20], 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 + 0x28], r9
mov qword [rsp + 0x60], r13
cmp rax, 8
jb 0x140081c15
lea rax, [r13 - 7]
mov qword [rbp - 0x60], rax
jmp 0x140081c19
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 0x140082c06
movdqa xmm2, xmmword [0x140a1d2c0]
xor esi, esi
movdqa xmm3, xmmword [0x140a1d2f0]
movabs rcx, 0x35a7bd1e35a7bd00
mov r10, qword [rdx + 0x38]
mov r9, r13
mov r13, qword [rsp + 0x20]
sub r9, r15
mov rdx, qword [rsp]
cmp r15, rdi
mov r12, rdi
mov qword [rsp + 0x18], rsi
cmovb r12, r15
mov qword [rbp - 0x80], rsi
mov r15, rbx
mov qword [rsp + 0x10], r9
and r15, r13
mov qword [rsp + 0x38], 0x7e4
mov rax, qword [r11 + r15]
lea rbx, [r11 + r15]
movsxd r11, dword [r8]
xor r14d, r14d
movzx esi, byte [rbx]
mov edi, 0x7e4
mov r8, qword [rsp + 8]
imul rax, rcx
mov rcx, r13
mov qword [rsp + 0x30], r10
shr rax, 0x2c
sub rcx, r11
mov dword [rbp - 0x70], r14d
movq xmm1, rax
punpcklqdq xmm1, xmm1
cmp rcx, r13
jae 0x140081db6
mov r10d, r8d
and r10, rcx
add r10, rdx
movzx eax, byte [r10]
cmp esi, eax
jne 0x140081db1
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x140081d2f
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x140081d9b
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140081d10
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x140081d53
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r10], al
jne 0x140081d53
inc rcx
sub r8, 1
jne 0x140081d40
mov rax, rcx
mov rdx, qword [rsp]
mov r10, qword [rsp + 0x30]
mov r8, qword [rsp + 8]
cmp rax, 4
jb 0x140081db6
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rdi
jbe 0x140081db6
mov qword [rsp + 0x18], rax
mov r14, rax
add rax, rdx
mov qword [rbp - 0x80], r11
mov qword [rsp + 0x38], rcx
mov rdi, rcx
movzx esi, byte [rax + r15]
jmp 0x140081db6
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rax, r8
shr rax, 3
add rax, rcx
jmp 0x140081d56
mov r10, qword [rsp + 0x30]
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 0x140081dc0
mov r11, qword [rsp + 0x20]
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 [r14 + r10]
cmp esi, eax
jne 0x140081edd
test r11, r11
je 0x140081edd
cmp r11, r12
ja 0x140081edd
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x140081e73
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008217b
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140081e50
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x140081e93
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r10], al
jne 0x140081e93
inc rcx
sub r8, 1
jne 0x140081e80
mov rdx, rcx
cmp rdx, 4
jb 0x140081ed9
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x140081ed9
mov rax, qword [rsp]
mov r14, rdx
add rax, rdx
mov qword [rsp + 0x18], rdx
mov rdi, r8
mov qword [rsp + 0x38], r8
mov qword [rbp - 0x80], r11
movzx esi, byte [rax + r15]
mov rdx, qword [rsp]
mov rax, qword [rbp - 0x18]
mov rcx, qword [rsp + 0x30]
mov r10d, dword [rsp + 8]
mov r11, qword [rsp + 0x20]
mov ecx, dword [rcx + rax*4]
and r10, rcx
sub r11, rcx
add r10, rdx
movzx eax, byte [r14 + r10]
cmp esi, eax
jne 0x140081fbf
test r11, r11
je 0x140081fbf
cmp r11, r12
ja 0x140081fbf
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x140081f53
nop dword [rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x140082194
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140081f30
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x140081f75
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x140081f75
inc rdx
inc rcx
sub r8, 1
jne 0x140081f60
mov rdx, rcx
cmp rdx, 4
jb 0x140081fbb
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x140081fbb
mov rax, qword [rsp]
mov r14, rdx
add rax, rdx
mov qword [rsp + 0x18], rdx
mov rdi, r8
mov qword [rsp + 0x38], r8
mov qword [rbp - 0x80], r11
movzx esi, byte [rax + r15]
mov rdx, qword [rsp]
mov rax, qword [rbp - 0x10]
mov rcx, qword [rsp + 0x30]
mov r10d, dword [rsp + 8]
mov r11, qword [rsp + 0x20]
mov ecx, dword [rcx + rax*4]
and r10, rcx
sub r11, rcx
add r10, rdx
movzx eax, byte [r14 + r10]
cmp esi, eax
jne 0x14008209f
test r11, r11
je 0x14008209f
cmp r11, r12
ja 0x14008209f
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x140082033
nop
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x1400821ad
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140082010
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x140082055
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x140082055
inc rdx
inc rcx
sub r8, 1
jne 0x140082040
mov rdx, rcx
cmp rdx, 4
jb 0x14008209b
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rdi, r8
jae 0x14008209b
mov rax, qword [rsp]
mov r14, rdx
add rax, rdx
mov qword [rsp + 0x18], rdx
mov rdi, r8
mov qword [rsp + 0x38], r8
mov qword [rbp - 0x80], r11
movzx esi, byte [rax + r15]
mov rdx, qword [rsp]
mov rax, qword [rbp - 8]
mov r11, qword [rsp + 0x30]
mov r9d, dword [rsp + 8]
mov r15, qword [rsp + 0x20]
mov r10, r15
mov ecx, dword [r11 + rax*4]
and r9, rcx
sub r10, rcx
add r9, rdx
movzx eax, byte [r14 + r9]
cmp esi, eax
jne 0x1400821d5
xor esi, esi
test r10, r10
je 0x1400821d7
cmp r10, r12
ja 0x1400821d7
mov r14, qword [rsp + 0x10]
mov ecx, esi
mov rax, r14
shr rax, 3
test rax, rax
je 0x14008211e
nop word [rax + rax]
mov r8, qword [rbx]
mov rdx, qword [rcx + r9]
cmp r8, rdx
jne 0x1400821c1
add rbx, 8
add rcx, 8
sub rax, 1
jne 0x140082100
mov rdx, r14
and edx, 7
je 0x14008213b
movzx eax, byte [rbx]
cmp byte [rcx + r9], al
jne 0x14008213b
inc rbx
inc rcx
sub rdx, 1
jne 0x140082126
mov r8, rcx
mov rdx, qword [rsp]
cmp r8, 4
jb 0x1400821d7
bsr eax, r10d
imul ecx, eax, 0x1e
imul rax, r8, 0x87
sub rax, rcx
add rax, 0x780
cmp rdi, rax
jae 0x1400821d7
mov rcx, r8
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x18], rcx
mov qword [rbp - 0x80], r10
jmp 0x1400821dc
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x140081e96
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x140081f78
xor r8, r9
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x140082058
xor rdx, r8
tzcnt r8, rdx
shr r8, 3
add r8, rcx
jmp 0x14008213e
xor esi, esi
mov rcx, qword [rsp + 0x18]
cmp qword [rsp + 0x38], 0x7e4
mov dword [r11 + r13*4], r15d
jbe 0x140082c3d
mov r9, qword [rsp + 0x10]
dec r9
mov dword [rsp + 0x30], esi
mov rax, qword [rbp - 0x68]
mov qword [rsp + 0x10], r9
cmp dword [rax + 4], 5
jge 0x14008221e
lea rax, [rcx - 1]
mov rdi, r9
cmp rax, r9
cmovb rdi, rax
mov qword [rbp - 0x20], rdi
jmp 0x140082225
mov rdi, rsi
mov qword [rbp - 0x20], rsi
mov r12, qword [rsp + 0x68]
lea r10, [r15 + 1]
mov r8, qword [rsp + 8]
cmp r10, r12
mov rax, qword [rsp + 0x50]
movabs rcx, 0x35a7bd1e35a7bd00
cmovb r12, r10
mov qword [rbp - 0x18], rsi
mov r15, r8
mov dword [rbp - 8], esi
and r15, r10
mov qword [rsp + 0x40], r10
mov rax, qword [rax + 0x38]
lea rbx, [rdx + r15]
movzx r14d, byte [rbx + rdi]
mov r13d, 0x7e4
mov qword [rsp + 0x48], rax
mov esi, r13d
mov rax, qword [rbx]
imul rax, rcx
mov rcx, r10
mov qword [rbp - 0x10], r13
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 0x140082377
mov r10d, r8d
and r10, rcx
add r10, rdx
movzx eax, byte [rdi + r10]
cmp r14d, eax
jne 0x140082372
mov rcx, r9
xor eax, eax
shr rcx, 3
mov rdx, rbx
test rcx, rcx
je 0x1400822f3
nop dword [rax]
mov r9, qword [rdx]
mov r8, qword [rax + r10]
cmp r9, r8
jne 0x14008235c
add rdx, 8
add rax, 8
sub rcx, 1
jne 0x1400822d0
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x140082313
sub rdx, rax
nop
movzx ecx, byte [rdx + rax]
cmp byte [rax + r10], cl
jne 0x140082313
inc rax
sub r8, 1
jne 0x140082300
mov rcx, rax
mov rdx, qword [rsp]
mov r10, qword [rsp + 0x40]
mov r8, qword [rsp + 8]
cmp rcx, 4
jb 0x140082377
imul rax, rcx, 0x87
add rax, 0x78f
cmp rax, rsi
jbe 0x140082377
mov r13, rax
mov qword [rbp - 0x10], rax
mov rsi, rax
mov qword [rbp - 0x20], rcx
lea rax, [rdx + rcx]
mov qword [rbp - 0x18], r11
movzx r14d, byte [rax + r15]
mov rdi, rcx
jmp 0x140082377
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rcx, r8
shr rcx, 3
add rcx, rax
jmp 0x140082316
mov r10, qword [rsp + 0x40]
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 0x140082380
mov rax, r10
mov r11, r10
shr rax, 3
and eax, 3
mov r10d, r8d
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]
and r10, rcx
sub r11, rcx
add r10, rdx
movzx eax, byte [r10 + rdi]
cmp r14d, eax
jne 0x14008249a
test r11, r11
je 0x14008249a
cmp r11, r12
ja 0x14008249a
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x140082433
nop dword [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x1400827b9
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140082410
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x140082453
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x140082453
inc rcx
sub r8, 1
jne 0x140082440
mov rdx, rcx
cmp rdx, 4
jb 0x14008249a
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rsi, r8
jae 0x14008249a
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 r11, qword [rsp + 0x40]
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 + rdi]
cmp r14d, eax
jne 0x14008257c
test r11, r11
je 0x14008257c
cmp r11, r12
ja 0x14008257c
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x140082513
nop dword [rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x1400827d2
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x1400824f0
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x140082535
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x140082535
inc rdx
inc rcx
sub r8, 1
jne 0x140082520
mov rdx, rcx
cmp rdx, 4
jb 0x14008257c
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rsi, r8
jae 0x14008257c
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 r11, qword [rsp + 0x40]
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 + rdi]
cmp r14d, eax
jne 0x14008265c
test r11, r11
je 0x14008265c
cmp r11, r12
ja 0x14008265c
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, rbx
test rax, rax
je 0x1400825f3
nop
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x1400827eb
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x1400825d0
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x140082615
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x140082615
inc rdx
inc rcx
sub r8, 1
jne 0x140082600
mov rdx, rcx
cmp rdx, 4
jb 0x14008265c
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rsi, r8
jae 0x14008265c
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 r11, qword [rsp + 0x40]
mov r9, qword [rsp]
mov r10, r11
mov ecx, dword [r15 + rax*4]
mov eax, dword [rsp + 8]
sub r10, rcx
and rcx, rax
add r9, rcx
movzx eax, byte [r9 + rdi]
cmp r14d, eax
jne 0x14008272f
test r10, r10
je 0x14008272f
cmp r10, r12
ja 0x14008272f
mov r14, qword [rsp + 0x10]
xor ecx, ecx
mov rax, r14
shr rax, 3
test rax, rax
je 0x1400826de
nop word [rax + rax]
mov r8, qword [rbx]
mov rdx, qword [rcx + r9]
cmp r8, rdx
jne 0x1400827ff
add rbx, 8
add rcx, 8
sub rax, 1
jne 0x1400826c0
mov rdx, r14
and edx, 7
je 0x1400826fb
movzx eax, byte [rbx]
cmp byte [rcx + r9], al
jne 0x1400826fb
inc rbx
inc rcx
sub rdx, 1
jne 0x1400826e6
mov r8, rcx
cmp r8, 4
jb 0x14008272f
bsr eax, r10d
imul ecx, eax, 0x1e
imul rax, r8, 0x87
sub rax, rcx
add rax, 0x780
cmp rsi, rax
jae 0x14008272f
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 + 0x28]
mov dword [r15 + rax*4], r11d
mov rax, qword [rsp + 0x38]
add rax, 0xaf
cmp r13, rax
jb 0x14008281f
mov ecx, dword [rsp + 0x30]
inc r12
movups xmm0, xmmword [rbp - 0x20]
inc ecx
mov r15, r11
mov qword [rsp + 0x20], r11
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x30], ecx
movups xmm1, xmmword [rbp - 0x10]
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rbp - 0x78], xmm1
cmp ecx, 4
jge 0x140082813
lea rax, [r11 + 8]
cmp rax, qword [rsp + 0x60]
jae 0x140082813
mov rdx, qword [rbp - 0x78]
mov r9, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x78]
dec r9
mov qword [rsp + 0x38], rdx
xor esi, esi
mov rdx, qword [rsp]
mov qword [rsp + 0x18], rcx
jmp 0x1400821fb
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x140082456
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x140082538
xor r8, r9
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x140082618
xor rdx, r8
tzcnt r8, rdx
shr r8, 3
add r8, rcx
jmp 0x1400826fe
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x18], r11
jmp 0x140082829
mov r15, qword [rsp + 0x20]
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 0x1400828d5
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 0x140082875
xor r8d, r8d
jmp 0x1400828d9
cmp rbx, r8
jne 0x140082882
mov r8d, 1
jmp 0x1400828d9
cmp rdx, 7
jae 0x14008289d
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x1400828d9
cmp rcx, 7
jae 0x1400828b5
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x1400828d9
movsxd rax, dword [r10 + 8]
cmp rbx, rax
jne 0x1400828c6
mov r8d, 2
jmp 0x1400828d9
movsxd rax, dword [r10 + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x1400828d9
lea r8, [rbx + 0xf]
cmp rbx, r9
ja 0x1400828fd
test r8, r8
je 0x1400828fd
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 0x14008292c
xor edi, edi
jmp 0x1400829a5
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, [r11 + rsi]
mov eax, 0x3ff
mov dword [r13 + 8], edi
and r8w, ax
movsxd r9, edx
cmp r12, 6
jae 0x1400829cf
movzx r10d, r12w
mov eax, 0x17
jmp 0x140082a42
cmp r12, 0x82
jae 0x1400829fb
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 0x140082a42
cmp r12, 0x842
jae 0x140082a19
lea eax, [r12 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x140082a42
mov eax, 0x17
cmp r12, 0x1842
jae 0x140082a2d
lea r10d, [rax - 2]
jmp 0x140082a42
cmp r12, 0x5842
jae 0x140082a3e
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x140082a42
movzx r10d, ax
cmp r9, 0xa
jae 0x140082a4f
sub r9w, 2
jmp 0x140082a8f
cmp r9, 0x86
jae 0x140082a74
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 0x140082a8f
cmp r9, 0x846
jae 0x140082a8b
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x140082a8f
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 0x140082ac7
cmp r10w, 8
jae 0x140082ac7
cmp r9w, 0x10
jae 0x140082ac7
cmp r9w, 8
jb 0x140082afb
or dx, 0x40
jmp 0x140082afb
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 esi, esi
mov r8, qword [rbp - 0x60]
mov r9d, esi
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 + 0x28], rsi
cmovb r8, rax
mov rax, r11
shr rax, 2
cmp rbx, rax
jae 0x140082b5b
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 0x140082bbd
mov r10, qword [rsp]
movabs r11, 0x35a7bd1e35a7bd00
mov r15, qword [rsp + 8]
mov r9, qword [rsp + 0x50]
nop dword [rax + rax]
mov rax, r15
and rax, rdx
mov rcx, qword [rax + r10]
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 0x140082b80
mov r15, qword [rsp + 0x20]
mov r9, qword [rsp + 0x28]
mov r11, qword [rsp + 0x18]
add r15, r11
mov qword [rsp + 0x20], r15
mov r11, qword [rsp]
mov rbx, qword [rsp + 8]
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 0x140081c61
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.1400af2d0
add rsp, 0x138
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov r9, qword [rsp + 0x28]
inc r15
mov r13, qword [rsp + 0x48]
inc r9
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], r15
cmp r15, r13
jbe 0x140082bc5
mov rax, qword [rbp - 0x58]
mov rdx, qword [rsp + 0x60]
add rdx, 0xfffffffffffffff9
lea rax, [rax*4]
add rax, r13
cmp r15, rax
jbe 0x140082d0a
mov r11, qword [rsp]
lea rax, [r15 + 0x10]
mov rbx, qword [rsp + 8]
cmp rax, rdx
cmovb rdx, rax
cmp r15, rdx
jae 0x140082bce
add r9, 4
mov rax, rdx
sub rax, r15
dec rax
and rax, 0xfffffffffffffffc
add r9, rax
mov qword [rsp + 0x28], 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, 4
cmp r15, rdx
jb 0x140082cc0
mov r9, qword [rsp + 0x28]
mov qword [rsp + 0x20], r15
jmp 0x140082bce
lea rax, [r15 + 8]
cmp rax, rdx
cmovb rdx, rax
cmp r15, rdx
jae 0x140082bc5
mov r11, qword [rsp]
add r9, 2
mov rbx, qword [rsp + 8]
mov rax, rdx
sub rax, r15
dec rax
and rax, 0xfffffffffffffffe
add r9, rax
mov qword [rsp + 0x28], r9
mov r9, qword [rsp + 0x50]
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 0x140082d45
mov r9, qword [rsp + 0x28]
mov qword [rsp + 0x20], r15
jmp 0x140082bce
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 [0x140af1b40]
xor rax, rsp
mov qword [rbp + 0x20], rax
mov rdi, qword [rbp + 0xa8]
mov rax, rcx
mov rcx, qword [rbp + 0xd8]
mov r14, rdx
mov r12, qword [rbp + 0xb0]
mov ebx, 1
mov r11, qword [rbp + 0xb8]
mov r15, r8
mov rsi, qword [rbp + 0xd0]
mov r10, r9
mov qword [rbp - 0x40], rcx
mov ecx, dword [rdi + 8]
shl rbx, cl
mov rcx, qword [rdi + 0x10]
sub rbx, 0x10
mov qword [rsp + 0x20], rdx
mov rdx, qword [rbp + 0xc0]
mov qword [rsp], r8
mov r8, qword [rbp + 0xc8]
mov qword [rsp + 8], r9
mov r9, qword [rdx]
mov qword [rbp - 0x48], rcx
mov rcx, r8
mov qword [rbp - 0x28], rdx
lea rdx, [r14 + rax]
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x60], rdi
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x78], r8
mov qword [rbp - 0x38], rsi
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x68], rdx
cmp rax, 8
jb 0x140082e65
lea rax, [rdx - 7]
mov qword [rbp - 0x58], rax
jmp 0x140082e69
mov qword [rbp - 0x58], r14
cmp dword [rdi + 4], 9
mov eax, 0x200
mov r13d, 0x40
cmovl eax, r13d
mov qword [rbp - 0x50], rax
add rax, r14
mov qword [rsp + 0x48], rax
lea rax, [r14 + 8]
cmp rax, rdx
jae 0x14008416f
movdqa xmm2, xmmword [0x140a1d2c0]
movabs rcx, 0x35a7bd1e35a7bd00
movdqa xmm3, xmmword [0x140a1d2f0]
nop
movsxd r11, dword [r11]
mov r9, rdx
mov r12, qword [r12 + 0x38]
sub r9, r14
cmp r14, rbx
mov qword [rsp + 0x10], r9
mov rdx, rbx
mov r8d, 0x7e4
cmovb rdx, r14
mov qword [rsp + 0x18], r8
xor ebx, ebx
mov qword [rsp + 0x28], rdx
mov r14, r10
mov qword [rsp + 0x40], rbx
mov r10, qword [rsp + 0x20]
xor esi, esi
and r14, r10
mov qword [rbp - 0x78], rbx
mov rax, qword [r15 + r14]
lea r13, [r15 + r14]
movzx edi, byte [r13]
imul rax, rcx
mov rcx, r10
mov dword [rbp - 0x68], ebx
shr rax, 0x2c
sub rcx, r11
mov ebx, r8d
mov r8, qword [rsp + 8]
movq xmm1, rax
punpcklqdq xmm1, xmm1
cmp rcx, r10
jae 0x140083007
mov r10d, r8d
and r10, rcx
add r10, r15
movzx eax, byte [r10]
cmp edi, eax
jne 0x140083002
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r13
test rax, rax
je 0x140082f83
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x140082fec
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140082f60
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x140082fa3
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r10], al
jne 0x140082fa3
inc rcx
sub r8, 1
jne 0x140082f90
mov rax, rcx
mov rdx, qword [rsp + 0x28]
mov r10, qword [rsp + 0x20]
mov r8, qword [rsp + 8]
cmp rax, 4
jb 0x140083007
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rbx
jbe 0x140083007
mov qword [rsp + 0x40], rax
mov rsi, rax
add rax, r15
mov qword [rbp - 0x78], r11
mov qword [rsp + 0x18], rcx
mov rbx, rcx
movzx edi, byte [rax + r14]
jmp 0x140083007
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rax, r8
shr rax, 3
add rax, rcx
jmp 0x140082fa6
mov r10, qword [rsp + 0x20]
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 - 0x20], xmm0
add rax, 2
cmp rax, 4
jb 0x140083010
mov rax, r10
mov r11, r10
mov r10, qword [rsp]
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 rax, rcx
add r10, rax
movzx eax, byte [r10 + rsi]
cmp edi, eax
jne 0x140083129
test r11, r11
je 0x140083129
cmp r11, rdx
ja 0x140083129
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r13
test rax, rax
je 0x1400830c3
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x1400833d1
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x1400830a0
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x1400830e3
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r10], al
jne 0x1400830e3
inc rcx
sub r8, 1
jne 0x1400830d0
mov rdx, rcx
cmp rdx, 4
jb 0x140083129
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x140083129
mov rax, qword [rsp]
mov rsi, rdx
add rax, rdx
mov qword [rsp + 0x40], rdx
mov rbx, r8
mov qword [rsp + 0x18], 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]
mov rdx, qword [rsp + 0x28]
mov ecx, dword [r12 + rax*4]
mov eax, dword [rsp + 8]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [r10 + rsi]
cmp edi, eax
jne 0x140083210
test r11, r11
je 0x140083210
cmp r11, rdx
ja 0x140083210
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r13
test rax, rax
je 0x1400831a3
nop dword [rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x1400833ea
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140083180
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x1400831c5
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x1400831c5
inc rdx
inc rcx
sub r8, 1
jne 0x1400831b0
mov rdx, rcx
cmp rdx, 4
jb 0x14008320b
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x14008320b
mov rax, qword [rsp]
mov rsi, rdx
add rax, rdx
mov qword [rsp + 0x40], rdx
mov rbx, r8
mov qword [rsp + 0x18], 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]
mov ecx, dword [r12 + rax*4]
mov eax, dword [rsp + 8]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [r10 + rsi]
cmp edi, eax
jne 0x1400832eb
test r11, r11
je 0x1400832eb
cmp r11, rdx
ja 0x1400832eb
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r13
test rax, rax
je 0x140083283
nop
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x140083403
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140083260
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x1400832a5
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x1400832a5
inc rdx
inc rcx
sub r8, 1
jne 0x140083290
mov rdx, rcx
cmp rdx, 4
jb 0x1400832eb
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x1400832eb
mov rax, qword [rsp]
mov rsi, rdx
add rax, rdx
mov qword [rsp + 0x40], rdx
mov rbx, r8
mov qword [rsp + 0x18], 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]
mov r11, r14
mov ecx, dword [r12 + rax*4]
mov eax, dword [rsp + 8]
sub r11, rcx
and rcx, rax
add r10, rcx
movzx eax, byte [r10 + rsi]
mov rsi, qword [rsp + 0x28]
cmp edi, eax
jne 0x140083430
test r11, r11
je 0x140083430
cmp r11, rsi
ja 0x140083430
mov rax, r9
xor ecx, ecx
shr rax, 3
mov rdx, r13
test rax, rax
je 0x140083373
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x14008341c
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140083350
mov r9, qword [rsp + 0x10]
mov r8, r9
and r8d, 7
je 0x140083395
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x140083395
inc rdx
inc rcx
sub r8, 1
jne 0x140083380
mov rdx, rcx
cmp rdx, 4
jb 0x140083430
bsr eax, r11d
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rbx, rax
jae 0x140083430
mov qword [rsp + 0x40], rdx
mov rbx, rax
mov qword [rsp + 0x18], rax
mov qword [rbp - 0x78], r11
jmp 0x140083435
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x1400830e6
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x1400831c8
xor r8, r9
mov r9, qword [rsp + 0x10]
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x1400832a8
xor r8, r9
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x140083398
mov rbx, qword [rsp + 0x18]
mov dword [r12 + r15*4], r14d
mov r15, qword [rsp + 0x10]
mov r12, qword [rsp + 0x58]
test r14b, 3
jne 0x1400835c4
cmp r15, 0x20
jb 0x1400835c4
mov r11, qword [r12 + 0x50]
cmp r11, r14
ja 0x1400835bb
mov r10, qword [rsp]
lea rdi, [r11 + 0x20]
nop dword [rax]
mov r8d, dword [r12 + 0x40]
mov rax, r11
and rax, qword [rsp + 8]
mov r9d, r8d
imul r8d, dword [r12 + 0x5c]
and r9d, 0x3fffffff
movzx edx, byte [rax + r10]
mov rax, qword [rsp + 8]
inc edx
imul edx, dword [r12 + 0x60]
and rax, rdi
movzx ecx, byte [rax + r10]
lea eax, [r8 + 1]
sub ecx, edx
add eax, ecx
mov dword [r12 + 0x40], eax
cmp r9d, 0x1000000
jae 0x1400835aa
mov rax, qword [r12 + 0x48]
mov r8d, dword [rax + r9*4]
mov dword [rax + r9*4], r11d
cmp r11, r14
jne 0x1400835aa
mov eax, 0xffffffff
cmp r8, rax
je 0x1400835aa
mov ebx, r14d
sub ebx, r8d
cmp rbx, rsi
ja 0x1400835a5
and r8, qword [rsp + 8]
mov r9, r15
add r8, r10
shr r9, 3
xor ecx, ecx
mov rdx, r13
test r9, r9
je 0x14008352a
nop dword [rax]
mov r10, qword [rdx]
mov rax, qword [rcx + r8]
cmp r10, rax
jne 0x140083594
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x140083510
mov r9, r15
and r9d, 7
je 0x140083549
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r8], al
jne 0x140083549
inc rcx
sub r9, 1
jne 0x140083536
mov rdx, rcx
mov r10, qword [rsp]
cmp rdx, 4
jb 0x1400835a5
cmp rdx, qword [rsp + 0x40]
jbe 0x1400835a5
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x18]
jbe 0x1400835a5
mov qword [rbp - 0x78], rbx
mov rbx, rax
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x18], rax
mov dword [rbp - 0x68], 0
jmp 0x1400835aa
xor rax, r10
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14008354c
mov rbx, qword [rsp + 0x18]
add r11, 4
add rdi, 4
cmp r11, r14
jbe 0x140083470
lea rax, [r14 + 4]
mov qword [r12 + 0x50], rax
cmp rbx, 0x7e4
jbe 0x1400841a6
mov rax, qword [rsp + 0x40]
xor ebx, ebx
mov dword [rsp + 0x28], ebx
dec r15
mov rcx, qword [rbp - 0x60]
mov qword [rsp + 0x10], r15
cmp dword [rcx + 4], 5
jge 0x140083601
dec rax
mov r13, r15
cmp rax, r15
cmovb r13, rax
mov qword [rbp - 0x20], r13
jmp 0x140083608
mov r13, rbx
mov qword [rbp - 0x20], rbx
mov rdx, qword [rsp + 0x70]
lea r10, [r14 + 1]
mov r9, qword [rsp + 8]
cmp r10, rdx
mov r12, qword [r12 + 0x38]
mov r8d, 0x7e4
cmovb rdx, r10
mov qword [rbp - 0x10], r8
mov r8, qword [rsp]
movabs rcx, 0x35a7bd1e35a7bd00
mov r14, r9
mov qword [rbp - 0x18], rbx
and r14, r10
mov dword [rbp - 8], ebx
add r8, r14
mov qword [rsp + 0x50], r10
mov qword [rsp + 0x38], rdx
mov rsi, r13
mov qword [rsp + 0x48], r8
mov ebx, 0x7e4
mov rax, qword [r8]
movzx edi, byte [r8 + r13]
imul rax, rcx
mov rcx, r10
shr rax, 0x2c
movq xmm1, rax
mov rax, qword [rsp + 0x60]
punpcklqdq xmm1, xmm1
movsxd r11, dword [rax]
sub rcx, r11
cmp rcx, r10
jae 0x14008375d
mov r10, qword [rsp]
mov eax, r9d
and rcx, rax
add r10, rcx
movzx eax, byte [r13 + r10]
cmp edi, eax
jne 0x140083758
mov rax, r15
xor ecx, ecx
shr rax, 3
mov rdx, r8
test rax, rax
je 0x1400836da
nop dword [rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x140083747
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x1400836c0
mov r8, r15
and r8d, 7
je 0x1400836f9
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x1400836f9
inc rcx
sub r8, 1
jne 0x1400836e6
mov rax, rcx
mov r10, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x48]
cmp rax, 4
jb 0x14008375d
mov r9, qword [rsp]
imul rcx, rax, 0x87
add rcx, 0x78f
cmp rcx, rbx
jbe 0x140083761
mov r13, rax
mov qword [rbp - 0x20], rax
mov rsi, rax
mov qword [rbp - 0x18], r11
add rax, r9
mov qword [rbp - 0x10], rcx
mov rbx, rcx
movzx edi, byte [rax + r14]
jmp 0x140083761
xor r8, r9
tzcnt rax, r8
shr rax, 3
add rax, rcx
jmp 0x1400836fc
mov r10, qword [rsp + 0x50]
mov r9, qword [rsp]
xor eax, eax
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 0x140083763
mov rax, r10
mov r11, r10
mov r10d, dword [rsp + 8]
shr rax, 3
and eax, 3
mov r15, qword [rbp + rax*8]
mov rax, qword [rbp]
mov ecx, dword [r12 + rax*4]
and r10, rcx
sub r11, rcx
add r10, r9
movzx eax, byte [rsi + r10]
cmp edi, eax
jne 0x14008387a
test r11, r11
je 0x14008387a
cmp r11, rdx
ja 0x14008387a
mov rax, qword [rsp + 0x10]
mov rdx, r8
mov r8, rax
xor ecx, ecx
shr r8, 3
test r8, r8
je 0x140083813
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x140083b3d
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400837f0
mov rax, qword [rsp + 0x10]
mov r8, rax
and r8d, 7
je 0x140083833
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r10], al
jne 0x140083833
inc rcx
sub r8, 1
jne 0x140083820
mov rdx, rcx
cmp rdx, 4
jb 0x14008387a
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x14008387a
mov rax, qword [rsp]
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]
mov r11, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x38]
mov ecx, dword [r12 + rax*4]
mov eax, dword [rsp + 8]
sub r11, rcx
and rax, rcx
add r10, rax
movzx eax, byte [rsi + r10]
cmp edi, eax
jne 0x140083971
test r11, r11
je 0x140083971
cmp r11, rdx
ja 0x140083971
mov rax, qword [rsp + 0x10]
xor ecx, ecx
mov rdx, qword [rsp + 0x48]
mov r8, rax
shr r8, 3
test r8, r8
je 0x140083903
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x140083b51
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400838e0
mov rax, qword [rsp + 0x10]
mov r8, rax
and r8d, 7
je 0x140083925
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x140083925
inc rdx
inc rcx
sub r8, 1
jne 0x140083910
mov rdx, rcx
cmp rdx, 4
jb 0x14008396c
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x14008396c
mov rax, qword [rsp]
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 + 0x38]
mov rax, qword [rbp + 0x10]
mov r10, qword [rsp]
mov r11, qword [rsp + 0x50]
mov ecx, dword [r12 + rax*4]
mov eax, dword [rsp + 8]
sub r11, rcx
and rax, rcx
add r10, rax
movzx eax, byte [rsi + r10]
cmp edi, eax
jne 0x140083a5c
test r11, r11
je 0x140083a5c
cmp r11, rdx
ja 0x140083a5c
mov rax, qword [rsp + 0x10]
xor ecx, ecx
mov rdx, qword [rsp + 0x48]
mov r8, rax
shr r8, 3
test r8, r8
je 0x1400839f3
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rcx + r10]
cmp r9, rax
jne 0x140083b65
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400839d0
mov rax, qword [rsp + 0x10]
mov r8, rax
and r8d, 7
je 0x140083a15
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x140083a15
inc rdx
inc rcx
sub r8, 1
jne 0x140083a00
mov rdx, rcx
cmp rdx, 4
jb 0x140083a5c
bsr eax, r11d
imul r8, rdx, 0x87
imul ecx, eax, 0x1e
sub r8, rcx
add r8, 0x780
cmp rbx, r8
jae 0x140083a5c
mov rax, qword [rsp]
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 + 0x50]
mov r10d, dword [rsp + 8]
mov r11, r14
mov ecx, dword [r12 + rax*4]
and r10, rcx
sub r11, rcx
mov rcx, qword [rsp]
add r10, rcx
movzx eax, byte [rsi + r10]
cmp edi, eax
jne 0x140083b91
test r11, r11
je 0x140083b91
cmp r11, qword [rsp + 0x38]
ja 0x140083b91
mov rdi, qword [rsp + 0x10]
xor ecx, ecx
mov rdx, qword [rsp + 0x48]
mov rax, rdi
shr rax, 3
test rax, rax
je 0x140083ade
nop word [rax + rax]
mov r9, qword [rdx]
mov r8, qword [rcx + r10]
cmp r9, r8
jne 0x140083b79
add rdx, 8
add rcx, 8
sub rax, 1
jne 0x140083ac0
mov r8, rdi
and r8d, 7
je 0x140083afc
movzx eax, byte [rdx]
cmp byte [rcx + r10], al
jne 0x140083afc
inc rdx
inc rcx
sub r8, 1
jne 0x140083ae7
mov rdx, rcx
cmp rdx, 4
jb 0x140083b8d
bsr eax, r11d
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
mov rcx, qword [rsp]
add rax, 0x780
cmp rbx, rax
jae 0x140083b91
mov r13, rdx
mov qword [rbp - 0x20], rdx
mov rsi, rax
mov qword [rbp - 0x10], rax
mov qword [rbp - 0x18], r11
jmp 0x140083b95
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140083836
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140083928
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140083a18
xor r8, r9
tzcnt rdx, r8
shr rdx, 3
add rdx, rcx
jmp 0x140083aff
mov rcx, qword [rsp]
mov rsi, qword [rbp - 0x10]
mov dword [r12 + r15*4], r14d
mov r15, qword [rsp + 0x10]
mov r12, qword [rsp + 0x58]
test r14b, 3
jne 0x140083d14
cmp r15, 0x20
jb 0x140083d14
mov r11, qword [r12 + 0x50]
cmp r11, r14
ja 0x140083d0b
mov r10, qword [rsp + 8]
lea rdi, [r11 + 0x20]
jmp 0x140083bd4
mov rcx, qword [rsp]
mov r8d, dword [r12 + 0x40]
mov rax, r10
and rax, r11
mov r9d, r8d
imul r8d, dword [r12 + 0x5c]
and r9d, 0x3fffffff
movzx edx, byte [rax + rcx]
mov rax, r10
and rax, rdi
inc edx
imul edx, dword [r12 + 0x60]
movzx ecx, byte [rax + rcx]
lea eax, [r8 + 1]
sub ecx, edx
add eax, ecx
mov dword [r12 + 0x40], eax
cmp r9d, 0x1000000
jae 0x140083cf6
mov rax, qword [r12 + 0x48]
mov r8d, dword [rax + r9*4]
mov dword [rax + r9*4], r11d
cmp r11, r14
jne 0x140083cf6
mov eax, 0xffffffff
cmp r8, rax
je 0x140083cf6
mov ebx, r14d
sub ebx, r8d
cmp rbx, qword [rsp + 0x38]
ja 0x140083cf6
mov rdx, qword [rsp + 0x48]
and r10, r8
add r10, qword [rsp]
mov r8, r15
shr r8, 3
xor eax, eax
test r8, r8
je 0x140083c8e
nop
mov r9, qword [rdx]
mov rcx, qword [rax + r10]
cmp r9, rcx
jne 0x140083d7c
add rdx, 8
add rax, 8
sub r8, 1
jne 0x140083c70
mov r8, r15
and r8d, 7
je 0x140083cb3
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
cmp byte [rax + r10], cl
jne 0x140083cb3
inc rax
sub r8, 1
jne 0x140083ca0
mov rdx, rax
mov r10, qword [rsp + 8]
cmp rdx, 4
jb 0x140083cf6
cmp rdx, r13
jbe 0x140083cf6
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, rsi
jbe 0x140083cf6
mov r13, rdx
mov qword [rbp - 0x20], rdx
mov qword [rbp - 0x18], rbx
mov rsi, rax
mov dword [rbp - 8], 0
add r11, 4
add rdi, 4
cmp r11, r14
jbe 0x140083bd0
mov qword [rbp - 0x10], rsi
lea rax, [r14 + 4]
mov qword [r12 + 0x50], rax
mov rax, qword [rsp + 0x18]
mov r11, qword [rsp + 0x30]
add rax, 0xaf
cmp rsi, rax
jb 0x140083d96
mov ecx, dword [rsp + 0x28]
inc r11
movups xmm0, xmmword [rbp - 0x20]
inc ecx
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x30], r11
mov dword [rsp + 0x28], ecx
movups xmm1, xmmword [rbp - 0x10]
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm1
cmp ecx, 4
jge 0x140083d90
lea rax, [r14 + 8]
cmp rax, qword [rsp + 0x68]
jae 0x140083d90
mov rax, qword [rbp - 0x70]
dec r15
mov qword [rsp + 0x18], rax
xor ebx, ebx
mov rax, qword [rbp - 0x80]
mov qword [rsp + 0x40], rax
jmp 0x1400835df
xor rcx, r9
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x140083cb6
mov r13, qword [rbp - 0x80]
jmp 0x140083da0
mov r14, qword [rsp + 0x20]
mov r13, qword [rsp + 0x40]
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 + 0x48], r15
cmovb r9, rax
cmp rbx, r9
ja 0x140083e4c
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 0x140083dec
xor r8d, r8d
jmp 0x140083e50
cmp rbx, r8
jne 0x140083df9
mov r8d, 1
jmp 0x140083e50
cmp rdx, 7
jae 0x140083e14
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x140083e50
cmp rcx, 7
jae 0x140083e2c
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x140083e50
movsxd rax, dword [r10 + 8]
cmp rbx, rax
jne 0x140083e3d
mov r8d, 2
jmp 0x140083e50
movsxd rax, dword [r10 + 0xc]
mov r8d, 3
cmp rbx, rax
je 0x140083e50
lea r8, [rbx + 0xf]
cmp rbx, r9
ja 0x140083e74
test r8, r8
je 0x140083e74
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], r11d
mov dword [r15 + 4], eax
mov r14d, dword [rcx + 0x44]
lea rax, [r14 + 0x10]
cmp r8, rax
jae 0x140083ea2
xor edi, edi
jmp 0x140083f1b
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 + 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 word [r15 + 0xe], r8w
lea edx, [rsi + r13]
mov eax, 0x3ff
mov dword [r15 + 8], edi
and r8w, ax
movsxd r9, edx
cmp r11, 6
jae 0x140083f45
movzx r10d, r11w
mov eax, 0x17
jmp 0x140083fb5
cmp r11, 0x82
jae 0x140083f6f
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 0x140083fb5
cmp r11, 0x842
jae 0x140083f8c
lea eax, [r11 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x140083fb5
mov eax, 0x17
cmp r11, 0x1842
jae 0x140083fa0
lea r10d, [rax - 2]
jmp 0x140083fb5
cmp r11, 0x5842
jae 0x140083fb1
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x140083fb5
movzx r10d, ax
cmp r9, 0xa
jae 0x140083fc2
sub r9w, 2
jmp 0x140084002
cmp r9, 0x86
jae 0x140083fe7
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 0x140084002
cmp r9, 0x846
jae 0x140083ffe
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x140084002
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 0x14008403a
cmp r10w, 8
jae 0x14008403a
cmp r9w, 0x10
jae 0x14008403a
cmp r9w, 8
jb 0x14008406e
or dx, 0x40
jmp 0x14008406e
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], r11
lea rax, [r14 + r13]
mov qword [rsp + 0x78], r15
cmp rax, r8
mov qword [rsp + 0x30], r9
lea rdx, [r14 + 2]
cmovb r8, rax
mov rax, r13
shr rax, 2
cmp rbx, rax
jae 0x1400840d1
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
cmp rdx, r8
jae 0x14008412b
mov r14, qword [rsp]
movabs r9, 0x35a7bd1e35a7bd00
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rsp + 8]
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 [r12 + 0x38]
and ecx, 0xfffff
mov dword [rax + rcx*4], edx
inc rdx
cmp rdx, r8
jb 0x1400840f0
mov r14, qword [rsp + 0x20]
mov r9, qword [rsp + 0x30]
add r14, r13
mov qword [rsp + 0x20], r14
mov r15, qword [rsp]
mov r10, qword [rsp + 8]
mov rdx, qword [rsp + 0x68]
lea rax, [r14 + 8]
mov r11, qword [rsp + 0x60]
movabs rcx, 0x35a7bd1e35a7bd00
mov rbx, qword [rsp + 0x70]
cmp rax, rdx
jb 0x140082eb0
mov r8, qword [rsp + 0x78]
mov rsi, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x28]
sub rdx, r14
sub r8, rcx
add rdx, r9
sar r8, 4
mov qword [rax], rdx
add qword [rsi], r8
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.1400af2d0
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 r14
mov r15, qword [rsp + 0x48]
inc r9
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x20], r14
cmp r14, r15
jbe 0x140084133
mov rax, qword [rbp - 0x50]
mov rdx, qword [rsp + 0x68]
add rdx, 0xfffffffffffffff9
lea rax, [r15 + rax*4]
cmp r14, rax
jbe 0x140084264
mov r15, qword [rsp]
lea rax, [r14 + 0x10]
mov r10, qword [rsp + 8]
cmp rax, rdx
cmovb rdx, rax
cmp r14, rdx
jae 0x14008413c
add r9, 4
mov rax, rdx
sub rax, r14
dec rax
and rax, 0xfffffffffffffffc
add r9, rax
mov qword [rsp + 0x30], r9
movabs r9, 0x35a7bd1e35a7bd00
mov rax, r10
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 [r12 + 0x38]
and ecx, 0xfffff
mov dword [rax + rcx*4], r14d
add r14, 4
cmp r14, rdx
jb 0x140084223
mov r9, qword [rsp + 0x30]
mov qword [rsp + 0x20], r14
jmp 0x14008413c
lea rax, [r14 + 8]
cmp rax, rdx
cmovb rdx, rax
cmp r14, rdx
jae 0x140084133
mov r15, qword [rsp]
add r9, 2
mov r10, qword [rsp + 8]
mov rax, rdx
sub rax, r14
dec rax
and rax, 0xfffffffffffffffe
add r9, rax
mov qword [rsp + 0x30], r9
movabs r9, 0x35a7bd1e35a7bd00
nop dword [rax]
nop dword [rax + rax]
mov rax, r10
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 [r12 + 0x38]
and ecx, 0xfffff
mov dword [rax + rcx*4], r14d
add r14, 2
cmp r14, rdx
jb 0x1400842b0
mov r9, qword [rsp + 0x30]
mov qword [rsp + 0x20], r14
jmp 0x14008413c
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 0x140084385
lea rax, [rbx - 7]
mov qword [rbp - 0x29], rax
jmp 0x140084389
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 0x1400845fb
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 0x140084417
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 0x140085721
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 0x14008464f
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 0x14008462c
cmp rdi, r9
ja 0x14008462c
and rcx, r13
lea rdx, [r10 + r15]
cmp rdx, r13
ja 0x140084628
lea rax, [rcx + r10]
cmp rax, r13
ja 0x140084624
movzx eax, byte [rax + r14]
cmp byte [rdx + r14], al
jne 0x140084624
lea r11, [rcx + r14]
mov rcx, r8
mov r8, r12
lea rdx, [r15 + r14]
shr r8, 3
test r8, r8
je 0x14008455e
mov r10, r11
sub r10, rdx
nop dword [rax + rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x140084604
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140084540
mov r8, r12
and r8d, 7
je 0x140084583
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x140084583
inc rcx
sub r8, 1
jne 0x140084570
mov r8, rcx
cmp r8, 3
jae 0x14008459f
cmp r8, 2
jne 0x140084618
cmp rbx, r8
jae 0x140084618
mov r11, qword [rsp + 0x28]
imul r9, r8, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x140084618
test rbx, rbx
je 0x1400845df
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 0x140084618
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 0x14008461c
mov rdx, qword [rbp + 0x7f]
jmp 0x14008441c
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x140084586
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 0x1400844d3
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 [rdi + 0x48]
movabs rax, 0x1fe35a7bd3579bd3
and rdx, qword [r12]
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 0x1400847e1
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, rdi
and rax, r15
mov ecx, dword [r14 + rax*4]
sub rbx, rcx
cmp rbx, r9
ja 0x1400847d7
and rcx, qword [rbp + 0x5f]
lea rdx, [r10 + r8]
cmp rdx, qword [rbp + 0x5f]
ja 0x1400847ce
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x5f]
ja 0x1400847ce
movzx eax, byte [rax + r11]
cmp byte [rdx + r11], al
jne 0x1400847ce
add r11, rcx
xor eax, eax
mov r8, r13
mov rdx, r12
shr r8, 3
mov ecx, eax
test r8, r8
je 0x14008474a
mov r10, r11
sub r10, r12
nop dword [rax + rax]
mov rax, qword [rdx]
mov r9, qword [rdx + r10]
cmp rax, r9
jne 0x1400847b9
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140084730
mov r8, r13
and r8d, 7
je 0x140084769
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x140084769
inc rcx
sub r8, 1
jne 0x140084756
mov rdx, rcx
mov r8, qword [rsp + 0x10]
mov r9, qword [rsp + 0x18]
mov r11, qword [rbp + 0x57]
cmp rdx, 4
jb 0x1400847ca
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp qword [rsp + 0x28], rax
jae 0x1400847ca
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 0x1400847ce
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x14008476c
mov r10, qword [rbp + 0x47]
cmp rdi, rsi
ja 0x1400846c0
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 0x140084b06
mov r13, qword [rsi + 0x60]
mov rcx, qword [r13 + 8]
mov r15, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r15, rax
jb 0x140084b02
imul ebx, dword [r12], 0x1e35a7bd
lea r14, [rcx + 1]
mov r8, qword [rbp + 0x6f]
mov rdx, qword [rsp + 8]
mov qword [r13 + 8], r14
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x140084992
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x140084992
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 0x1400848be
mov r10, r12
sub r10, rdx
nop dword [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x14008497e
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400848a0
mov r8, r11
and r8d, 7
je 0x1400848e3
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r12], al
jne 0x1400848e3
inc rcx
sub r8, 1
jne 0x1400848d0
mov r9, rcx
mov rcx, qword [rbp + 0x6f]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140084998
test r9, r9
je 0x140084998
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 0x14008499c
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x38]
jb 0x14008499c
mov qword [rsp + 0x38], rax
sub r11d, r9d
lea rax, [r15 + 1]
mov qword [rsp + 0x20], r9
mov qword [r13 + 0x10], rax
mov dword [rbp - 0x31], r11d
mov qword [rbp - 0x41], rdx
jmp 0x14008499c
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x1400848e6
mov rsi, qword [rsp]
jmp 0x1400849a1
mov rsi, qword [rsp]
mov rdx, qword [rsp + 8]
lea rax, [r14 + 1]
mov r14, qword [rbp + 0x6f]
mov qword [r13 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rax + rbx + 1]
test cl, cl
je 0x140084af8
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x140084af8
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 0x140084a2e
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 0x140084ae4
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140084a10
mov r8, r11
and r8d, 7
je 0x140084a4c
movzx eax, byte [rdx]
cmp byte [rcx + r12], al
jne 0x140084a4c
inc rdx
inc rcx
sub r8, 1
jne 0x140084a37
mov r9, rcx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140084af8
test r9, r9
je 0x140084af8
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 0x140084af8
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 0x140084b0a
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 0x140084b0f
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140084a4f
mov r15, qword [rbp + 0x4f]
mov rsi, qword [rbp + 0x77]
jmp 0x140084b0a
mov r15, qword [rbp + 0x4f]
mov r14, qword [rbp + 0x6f]
mov rcx, qword [rsp + 0x20]
cmp qword [rsp + 0x38], 0x7e4
jbe 0x140085755
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 0x140084b49
lea rax, [rcx - 1]
mov r10, r12
cmp rax, r12
cmovb r10, rax
jmp 0x140084b4c
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 0x140084d54
mov r15, qword [rbp + 0x57]
mov r14, r8
mov rax, qword [rbp + 0x7f]
mov qword [rsp + 0x50], rcx
nop
movsxd rdi, dword [rax + rbx*4]
mov rcx, rdx
sub rcx, rdi
cmp rcx, rdx
jae 0x140084d3a
cmp rdi, r11
ja 0x140084d3a
and rcx, r9
lea rdx, [r10 + r14]
cmp rdx, r9
ja 0x140084d36
lea rax, [rcx + r10]
cmp rax, r9
ja 0x140084d32
movzx eax, byte [rax + r15]
cmp byte [rdx + r15], al
jne 0x140084d32
mov r8, r12
lea rdx, [r14 + r15]
shr r8, 3
lea r11, [rcx + r15]
mov rax, r13
test r8, r8
je 0x140084c7e
mov r10, r11
sub r10, rdx
nop word [rax + rax]
mov r9, qword [rdx]
mov rcx, qword [r10 + rdx]
cmp r9, rcx
jne 0x140084d13
add rdx, 8
add rax, 8
sub r8, 1
jne 0x140084c60
mov r8, r12
and r8d, 7
je 0x140084ca3
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
cmp byte [rax + r11], cl
jne 0x140084ca3
inc rax
sub r8, 1
jne 0x140084c90
mov r8, rax
cmp r8, 3
jae 0x140084cb7
cmp r8, 2
jne 0x140084d24
cmp rbx, r8
jae 0x140084d24
mov r11, qword [rsp + 0x50]
imul r9, r8, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x140084d24
test rbx, rbx
je 0x140084cf7
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 0x140084d24
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 0x140084d29
xor rcx, r9
tzcnt r8, rcx
shr r8, 3
add r8, rax
jmp 0x140084ca6
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 0x140084bf0
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 [rbx + 0x48]
and rdx, qword [r9]
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 0x140084f0c
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 0x140084f03
and rcx, qword [rbp + 0x5f]
lea rdx, [r10 + r8]
cmp rdx, qword [rbp + 0x5f]
ja 0x140084efa
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x5f]
ja 0x140084efa
mov r13, qword [rbp + 0x57]
movzx eax, byte [rax + r13]
cmp byte [rdx + r13], al
mov r13, qword [rsp]
jne 0x140084efa
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 0x140084e6e
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 0x140084ee4
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140084e50
mov r8, r12
and r8d, 7
je 0x140084e93
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x140084e93
inc rcx
sub r8, 1
jne 0x140084e80
mov rdx, rcx
mov r9, qword [rsp + 0x10]
mov r8, qword [rsp + 0x40]
mov r11, qword [rsp + 0x28]
cmp rdx, 4
jb 0x140084ef5
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp qword [rsp + 0x50], rax
jae 0x140084ef5
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 0x140084efa
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140084e96
mov r10, qword [rsp + 0x18]
cmp rdi, rsi
ja 0x140084dd0
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 0x14008523c
mov r13, qword [rsi + 0x60]
mov rcx, qword [r13 + 8]
mov r15, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r15, rax
jb 0x140085238
imul ebx, dword [r9], 0x1e35a7bd
lea r14, [rcx + 1]
mov r8, qword [rbp + 0x6f]
mov rdx, qword [rsp + 8]
mov qword [r13 + 8], r14
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x1400850d7
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x1400850d7
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 0x140084ff3
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 0x1400850b9
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140084fd0
mov r9, qword [rsp + 0x10]
mov r8, r11
and r8d, 7
je 0x140085013
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r9], al
jne 0x140085013
inc rcx
sub r8, 1
jne 0x140085000
mov r9, rcx
mov rcx, qword [rbp + 0x6f]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x1400850cd
test r9, r9
je 0x1400850cd
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 0x1400850ad
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, r12
jb 0x1400850ad
mov r12, rax
mov qword [rbp - 0x71], rax
lea rax, [r15 + 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 0x1400850dc
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140085016
mov rdx, qword [rsp + 8]
mov r9, qword [rsp + 0x10]
mov rsi, qword [rsp + 0x48]
lea rax, [r14 + 1]
mov r14, qword [rbp + 0x6f]
mov qword [r13 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rbx + rax + 1]
test cl, cl
je 0x14008522e
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x14008522e
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 0x14008515e
mov r10, r9
sub r10, rdx
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [r10 + rdx]
cmp r9, rax
jne 0x14008521a
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140085140
mov r8, r11
and r8d, 7
je 0x140085185
mov r9, qword [rsp + 0x10]
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [rcx + r9], al
jne 0x140085185
inc rdx
inc rcx
sub r8, 1
jne 0x140085170
mov r9, rcx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008522e
test r9, r9
je 0x14008522e
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 0x14008522e
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 0x140085240
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 0x140085240
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140085188
mov rcx, qword [rsp]
mov rsi, qword [rbp + 0x77]
jmp 0x140085240
mov rcx, qword [rsp]
mov r14, qword [rbp + 0x6f]
mov rax, qword [rsp + 0x38]
add rax, 0xaf
cmp r12, rax
jb 0x1400852ac
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 0x1400852a6
lea rax, [r15 + 8]
cmp rax, qword [rbp - 0x61]
jae 0x1400852a6
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 0x140084b2d
mov r13, qword [rbp - 0x49]
jmp 0x1400852b5
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 0x14008536e
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 0x14008530d
xor r9d, r9d
mov r8d, r9d
jmp 0x140085375
cmp rdi, r9
jne 0x14008531a
mov r8d, 1
jmp 0x140085372
cmp r8, 7
jae 0x140085336
movzx ecx, r8b
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x140085372
cmp rcx, 7
jae 0x14008534e
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x140085372
movsxd rax, dword [r11 + 8]
cmp rdi, rax
jne 0x14008535f
mov r8d, 2
jmp 0x140085372
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp rdi, rax
je 0x140085372
lea r8, [rdi + 0xf]
xor r9d, r9d
cmp rdi, r10
ja 0x1400853f6
test r8, r8
je 0x1400853f6
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 0x1400853f6
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 0x1400853f6
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 0x140085428
mov ebx, r9d
jmp 0x1400854a7
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 0x1400854d1
movzx r10d, r12w
mov eax, 0x17
jmp 0x140085544
cmp r12, 0x82
jae 0x1400854fd
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 0x140085544
cmp r12, 0x842
jae 0x14008551b
lea eax, [r12 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x140085544
mov eax, 0x17
cmp r12, 0x1842
jae 0x14008552f
lea r10d, [rax - 2]
jmp 0x140085544
cmp r12, 0x5842
jae 0x140085540
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x140085544
movzx r10d, ax
cmp r9, 0xa
jae 0x140085551
sub r9w, 2
jmp 0x140085591
cmp r9, 0x86
jae 0x140085576
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 0x140085591
cmp r9, 0x846
jae 0x14008558d
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x140085591
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 0x1400855c9
cmp r10w, 8
jae 0x1400855c9
cmp r9w, 0x10
jae 0x1400855c9
cmp r9w, 8
jb 0x1400855fd
or dx, 0x40
jmp 0x1400855fd
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 0x140085669
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 0x1400856dd
mov rdi, qword [rbp + 0x77]
movabs r14, 0x1fe35a7bd3579bd3
nop dword [rax]
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 0x140085680
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 0x140084431
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 0x1400856e4
mov rax, qword [rbp - 0x21]
mov rbx, qword [rbp - 0x61]
add rbx, 0xfffffffffffffff9
lea rax, [r12 + rax*4]
cmp r15, rax
jbe 0x140085836
mov r13, qword [rbp + 0x5f]
lea rax, [r15 + 0x10]
cmp rax, rbx
cmovb rbx, rax
cmp r15, rbx
jae 0x1400856e8
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 0x1400857d0
mov r14, qword [rsp + 0x30]
mov qword [rbp + 0x4f], r15
jmp 0x1400856e8
lea rax, [r15 + 8]
cmp rax, rbx
cmovb rbx, rax
cmp r15, rbx
jae 0x1400856e4
mov r13, qword [rbp + 0x5f]
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
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 0x140085871
mov r14, qword [rsp + 0x30]
mov qword [rbp + 0x4f], r15
jmp 0x1400856e8
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 0x14008595a
lea rax, [rbx - 7]
mov qword [rbp - 0x41], rax
jmp 0x14008595e
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 0x1400859f5
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 0x1400859ec
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 0x1400871ae
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 0x140085c26
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 0x140085c0b
cmp rdi, r11
ja 0x140085c0b
and rcx, rax
lea rdx, [r10 + r14]
cmp rdx, rax
ja 0x140085c07
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x4f]
ja 0x140085c03
movzx eax, byte [rax + r9]
cmp byte [rdx + r9], al
jne 0x140085c03
mov r8, r12
lea r11, [rcx + r9]
shr r8, 3
lea rdx, [r14 + r9]
xor ecx, ecx
test r8, r8
je 0x140085b4e
mov r10, r11
sub r10, rdx
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x140085be4
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140085b30
mov r8, r12
and r8d, 7
je 0x140085b73
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x140085b73
inc rcx
sub r8, 1
jne 0x140085b60
mov r8, rcx
cmp r8, 3
jae 0x140085b87
cmp r8, 2
jne 0x140085bf5
cmp rbx, r8
jae 0x140085bf5
mov r11, qword [rsp + 0x20]
imul r9, r8, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x140085bf5
test rbx, rbx
je 0x140085bc7
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 0x140085bf5
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 0x140085bfa
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x140085b76
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 0x140085ac0
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 0x140085db7
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 0x140085da9
and rcx, qword [rbp + 0x4f]
lea rdx, [r10 + r8]
cmp rdx, qword [rbp + 0x4f]
ja 0x140085da0
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x4f]
ja 0x140085da0
movzx eax, byte [rax + r13]
cmp byte [rdx + r13], al
jne 0x140085da0
xor eax, eax
lea r11, [rcx + r13]
mov r8, r12
mov rdx, r9
shr r8, 3
mov ecx, eax
test r8, r8
je 0x140085d1a
mov r10, r11
sub r10, r9
nop dword [rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x140085d8a
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140085d00
mov r8, r12
and r8d, 7
je 0x140085d39
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r11], al
jne 0x140085d39
inc rcx
sub r8, 1
jne 0x140085d26
mov rdx, rcx
mov r8, qword [rsp + 0x38]
mov r9, qword [rbp + 0x37]
mov r11, qword [rsp + 8]
cmp rdx, 4
jb 0x140085d9b
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp qword [rsp + 0x20], rax
jae 0x140085d9b
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 0x140085da0
xor rax, r9
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140085d3c
mov r10, qword [rsp + 0x18]
cmp rdi, rsi
ja 0x140085c90
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 0x1400860d3
mov r13, qword [rdx + 0x60]
mov rcx, qword [r13 + 8]
mov r15, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r15, rax
jb 0x1400860d3
imul ebx, dword [r9], 0x1e35a7bd
lea r14, [rcx + 1]
mov r12, qword [rbp + 0x5f]
mov rdx, qword [rsp]
mov qword [r13 + 8], r14
mov rax, qword [r12 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x140085f71
mov rax, qword [r12 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x140085f71
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 0x140085e92
mov r10, r9
sub r10, rdx
nop
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x140085f55
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140085e70
mov r9, qword [rbp + 0x37]
mov r8, r11
and r8d, 7
je 0x140085eb3
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r9], al
jne 0x140085eb3
inc rcx
sub r8, 1
jne 0x140085ea0
mov r9, rcx
mov eax, dword [r12 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140085f69
test r9, r9
je 0x140085f69
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 0x140085f4b
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x10]
jb 0x140085f4b
mov qword [rsp + 0x10], rax
sub r11d, r9d
lea rax, [r15 + 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 0x140085f76
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140085eb6
mov rdx, qword [rsp]
mov r9, qword [rbp + 0x37]
mov r12, qword [rsp + 0x40]
lea rax, [r14 + 1]
mov r14, qword [rbp + 0x5f]
mov qword [r13 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rbx + rax + 1]
test cl, cl
je 0x1400860d9
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x1400860d9
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 0x140085ffe
mov r10, r9
sub r10, rdx
nop word [rax + rax]
mov r9, qword [rdx]
mov rax, qword [rdx + r10]
cmp r9, rax
jne 0x1400860bb
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x140085fe0
mov rsi, qword [rbp + 0x37]
mov r8, r11
and r8d, 7
je 0x140086024
nop dword [rax + rax]
movzx eax, byte [rdx]
cmp byte [rcx + rsi], al
jne 0x140086024
inc rdx
inc rcx
sub r8, 1
jne 0x140086010
mov r9, rcx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x1400860dd
test r9, r9
je 0x1400860dd
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 0x1400860e2
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 0x1400860e6
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 0x1400860e6
mov rsi, qword [rbp + 0x37]
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140086027
mov rsi, qword [rbp + 0x37]
jmp 0x1400860e6
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 0x140086281
mov r11, qword [r13 + 0x88]
cmp r11, r14
ja 0x140086276
mov r14, qword [rsp + 8]
lea rdi, [r11 + 0x20]
mov r10, qword [rbp + 0x47]
mov r15, qword [rbp + 0x4f]
nop dword [rax]
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 0x140086262
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 0x140086262
mov ecx, 0xffffffff
cmp r9, rcx
je 0x140086262
sub eax, r9d
mov ebx, eax
cmp rbx, r14
ja 0x14008625d
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 0x1400861dd
mov r10, qword [rdx]
mov rax, qword [rcx + r9]
cmp r10, rax
jne 0x14008624c
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400861c3
mov r8, r12
and r8d, 7
je 0x140086203
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx + r9], al
jne 0x140086203
inc rcx
sub r8, 1
jne 0x1400861f0
mov rdx, rcx
mov r10, qword [rbp + 0x47]
cmp rdx, 4
jb 0x14008625d
cmp rdx, qword [rsp + 0x30]
jbe 0x14008625d
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x10]
jbe 0x14008625d
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 0x140086262
xor rax, r10
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140086206
mov rbx, qword [rsp + 0x10]
inc r11
inc rdi
cmp r11, qword [rbp + 0x3f]
jbe 0x140086120
mov r14, qword [rbp + 0x3f]
lea rax, [r14 + 1]
mov qword [r13 + 0x88], rax
cmp rbx, 0x7e4
jbe 0x140086ff0
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 0x1400862b9
dec rax
mov r10, r12
cmp rax, r12
cmovb r10, rax
jmp 0x1400862bc
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 0x1400864ce
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 0x1400864ae
cmp rdi, rdx
ja 0x1400864ae
and rcx, rax
lea rdx, [r10 + r14]
cmp rdx, rax
ja 0x1400864a9
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x4f]
ja 0x1400864a5
movzx eax, byte [rax + r15]
cmp byte [rdx + r15], al
jne 0x1400864a5
xor eax, eax
lea r11, [rcx + r15]
mov r8, r12
lea rdx, [r14 + r15]
shr r8, 3
mov ecx, eax
test r8, r8
je 0x1400863ee
mov r10, r11
sub r10, rdx
nop dword [rax + rax]
mov rax, qword [rdx]
mov r9, qword [r10 + rdx]
cmp rax, r9
jne 0x140086485
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400863d0
mov r8, r12
and r8d, 7
je 0x140086413
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x140086413
inc rcx
sub r8, 1
jne 0x140086400
mov r8, rcx
cmp r8, 3
jae 0x140086427
cmp r8, 2
jne 0x140086496
cmp rbx, r8
jae 0x140086496
mov r11, qword [rsp + 0x40]
imul r9, r8, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x140086496
test rbx, rbx
je 0x140086467
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 0x140086496
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 0x1400864a0
xor rax, r9
tzcnt r8, rax
shr r8, 3
add r8, rcx
jmp 0x140086416
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 0x140086360
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 [r13 + 0x48]
and rdx, qword [r8 + rcx]
lea rax, [r8 + rcx]
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 0x140086685
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 0x140086678
and rcx, qword [rbp + 0x4f]
lea rdx, [r10 + r8]
cmp rdx, qword [rbp + 0x4f]
ja 0x14008666f
lea rax, [rcx + r10]
cmp rax, qword [rbp + 0x4f]
ja 0x14008666f
mov r12, qword [rbp + 0x47]
movzx eax, byte [rax + r12]
cmp byte [rdx + r12], al
mov r12, qword [rsp + 8]
jne 0x14008666f
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 0x1400865e2
mov r10, r11
sub r10, r13
nop dword [rax + rax]
mov rax, qword [rdx]
mov r8, qword [r10 + rdx]
cmp rax, r8
jne 0x140086654
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x1400865c0
mov rax, qword [rsp]
mov r8, rax
and r8d, 7
je 0x140086603
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r11], al
jne 0x140086603
inc rcx
sub r8, 1
jne 0x1400865f0
mov rdx, rcx
mov r8, qword [rsp + 0x38]
mov r11, qword [rsp + 0x18]
cmp rdx, 4
jb 0x140086665
bsr eax, ebx
imul ecx, eax, 0x1e
imul rax, rdx, 0x87
sub rax, rcx
add rax, 0x780
cmp qword [rsp + 0x40], rax
jae 0x140086665
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 0x14008666f
xor rax, r8
tzcnt rdx, rax
shr rdx, 3
add rdx, rcx
jmp 0x140086606
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x20]
cmp rdi, rsi
ja 0x140086540
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 0x140086997
mov r13, qword [rdx + 0x60]
mov rcx, qword [r13 + 8]
mov r15, qword [r13 + 0x10]
mov rax, rcx
shr rax, 7
cmp r15, rax
jb 0x140086997
imul ebx, dword [r12], 0x1e35a7bd
lea r14, [rcx + 1]
mov r8, qword [rbp + 0x5f]
mov rdx, qword [rsp]
mov qword [r13 + 8], r14
mov rax, qword [r8 + 0x78]
shr rbx, 0x11
and ebx, 0x7ffe
movzx ecx, byte [rbx + rax]
test cl, cl
je 0x140086834
mov rax, qword [r8 + 0x70]
mov r11d, ecx
movzx esi, word [rax + rbx*2]
cmp rcx, rdx
ja 0x140086834
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 0x14008675e
mov r10, r12
sub r10, rdx
nop word [rax + rax]
mov rax, qword [rdx]
mov r8, qword [r10 + rdx]
cmp rax, r8
jne 0x140086820
add rdx, 8
add rcx, 8
sub r9, 1
jne 0x140086740
mov r8, r11
and r8d, 7
je 0x140086783
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx + r12], al
jne 0x140086783
inc rcx
sub r8, 1
jne 0x140086770
mov r9, rcx
mov rcx, qword [rbp + 0x5f]
mov eax, dword [rcx + 0x64]
add rax, r9
cmp rax, r11
jbe 0x14008683b
test r9, r9
je 0x14008683b
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 + 0x70]
lea rdx, [rsi + 1]
add rdx, rax
cmp rdx, qword [rbp - 0x71]
ja 0x140086840
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, qword [rsp + 0x58]
jb 0x140086840
mov qword [rsp + 0x58], rax
sub r11d, r9d
lea rax, [r15 + 1]
mov qword [rsp + 0x48], r9
mov qword [r13 + 0x10], rax
mov dword [rsp + 0x60], r11d
mov qword [rsp + 0x50], rdx
jmp 0x140086840
xor rax, r8
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x140086786
mov rsi, qword [rsp + 0x70]
jmp 0x140086844
mov rsi, qword [rsp + 0x70]
mov rdx, qword [rsp]
lea rax, [r14 + 1]
mov r14, qword [rbp + 0x5f]
mov qword [r13 + 8], rax
mov rax, qword [r14 + 0x78]
movzx ecx, byte [rbx + rax + 1]
test cl, cl
je 0x140086997
mov rax, qword [r14 + 0x70]
mov r11d, ecx
movzx edi, word [rax + rbx*2 + 2]
cmp rcx, rdx
ja 0x140086997
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 0x1400868ce
mov r10, r12
sub r10, rdx
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rdx]
mov r9, qword [r10 + rdx]
cmp rax, r9
jne 0x140086983
add rdx, 8
add rcx, 8
sub r8, 1
jne 0x1400868b0
mov r8, r11
and r8d, 7
je 0x1400868ec
movzx eax, byte [rdx]
cmp byte [rcx + r12], al
jne 0x1400868ec
inc rdx
inc rcx
sub r8, 1
jne 0x1400868d7
mov r9, rcx
mov eax, dword [r14 + 0x64]
add rax, r9
cmp rax, r11
jbe 0x140086997
test r9, r9
je 0x140086997
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
mov rsi, qword [rsp + 0x58]
cmp rdx, qword [rbp - 0x71]
ja 0x14008699c
bsr eax, edx
imul ecx, eax, 0x1e
imul rax, r9, 0x87
sub rax, rcx
add rax, 0x780
cmp rax, rsi
jb 0x14008699c
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 0x1400869a1
xor rax, r9
tzcnt r9, rax
shr r9, 3
add r9, rcx
jmp 0x1400868ef
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 0x140086b3c
mov r11, qword [r13 + 0x88]
cmp r11, r14
ja 0x140086b31
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 0x140086b18
mov rax, qword [r13 + 0x80]
mov r10d, dword [rax + r9*4]
mov dword [rax + r9*4], r11d
cmp r11, r14
jne 0x140086b14
mov eax, 0xffffffff
cmp r10, rax
je 0x140086b14
mov ebx, r14d
sub ebx, r10d
cmp rbx, qword [rsp + 8]
ja 0x140086b14
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 0x140086a9e
nop word [rax + rax]
mov r9, qword [rdx]
mov rcx, qword [rax + r10]
cmp r9, rcx
jne 0x140086b03
add rdx, 8
add rax, 8
sub r8, 1
jne 0x140086a80
mov rcx, qword [rsp]
mov r8, rcx
and r8d, 7
je 0x140086ac3
sub rdx, rax
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
cmp byte [rax + r10], cl
jne 0x140086ac3
inc rax
sub r8, 1
jne 0x140086ab0
mov rdx, rax
cmp rdx, 4
jb 0x140086b14
cmp rdx, r15
jbe 0x140086b14
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 0x140086b18
mov rsi, rax
mov qword [rsp + 0x50], rbx
xor eax, eax
mov r15, rdx
mov dword [rsp + 0x60], eax
jmp 0x140086b18
xor rcx, r9
tzcnt rdx, rcx
shr rdx, 3
add rdx, rax
jmp 0x140086ac6
mov r10, qword [rbp + 0x4f]
inc r11
inc rdi
cmp r11, r14
jbe 0x1400869d0
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 0x140086ba9
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 0x140086b9e
lea rax, [r14 + 8]
cmp rax, qword [rbp - 0x49]
jae 0x140086b9e
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 0x14008629b
mov rcx, qword [rbp - 0x69]
mov qword [rsp + 0x30], rcx
jmp 0x140086bb2
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 0x140086c6a
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 0x140086c09
xor r9d, r9d
mov r8d, r9d
jmp 0x140086c71
cmp rdi, r9
jne 0x140086c16
mov r8d, 1
jmp 0x140086c6e
cmp r8, 7
jae 0x140086c32
movzx ecx, r8b
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x140086c6e
cmp rcx, 7
jae 0x140086c4a
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x140086c6e
movsxd rax, dword [r11 + 8]
cmp rdi, rax
jne 0x140086c5b
mov r8d, 2
jmp 0x140086c6e
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp rdi, rax
je 0x140086c6e
lea r8, [rdi + 0xf]
xor r9d, r9d
cmp rdi, r10
ja 0x140086cf3
test r8, r8
je 0x140086cf3
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 0x140086cf3
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 0x140086cf3
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 0x140086d2a
mov ebx, r9d
jmp 0x140086da3
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 0x140086dd1
movzx r10d, r11w
mov eax, 0x17
jmp 0x140086e41
cmp r11, 0x82
jae 0x140086dfb
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 0x140086e41
cmp r11, 0x842
jae 0x140086e18
lea eax, [r11 - 0x42]
bsr r10d, eax
mov eax, 0x17
add r10w, 0xa
jmp 0x140086e41
mov eax, 0x17
cmp r11, 0x1842
jae 0x140086e2c
lea r10d, [rax - 2]
jmp 0x140086e41
cmp r11, 0x5842
jae 0x140086e3d
mov r10d, reloc.WS2_32.dll_shutdown
jmp 0x140086e41
movzx r10d, ax
cmp r9, 0xa
jae 0x140086e4e
sub r9w, 2
jmp 0x140086e8e
cmp r9, 0x86
jae 0x140086e73
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 0x140086e8e
cmp r9, 0x846
jae 0x140086e8a
lea eax, [rdx - 0x46]
bsr r9d, eax
add r9w, 0xc
jmp 0x140086e8e
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 0x140086ec6
cmp r10w, 8
jae 0x140086ec6
cmp r9w, 0x10
jae 0x140086ec6
cmp r9w, 8
jb 0x140086efa
or dx, 0x40
jmp 0x140086efa
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 0x140086f64
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 0x140086fdf
movabs r15, 0x1fe35a7bd3579bd3
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [r13 + 0x68]
mov rax, rbx
and rax, qword [rbp + 0x4f]
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]
mov eax, dword [r13 + 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 0x140086f80
mov r15, qword [rbp + 0x5f]
mov r10, qword [rsp + 0x28]
add r14, r12
mov qword [rbp + 0x3f], r14
jmp 0x140087173
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 0x14008716f
mov rax, qword [rbp - 0x39]
mov rbx, qword [rbp - 0x49]
add rbx, 0xfffffffffffffff9
lea rax, [r12 + rax*4]
cmp r14, rax
jbe 0x1400870cb
lea rax, [r14 + 0x10]
cmp rax, rbx
cmovb rbx, rax
cmp r14, rbx
jae 0x14008716f
mov rax, rbx
add r10, 4
sub rax, r14
dec rax
and rax, 0xfffffffffffffffc
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 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]
mov eax, dword [r13 + 0x50]
mov r8d, edx
and r8, rax
inc dx
mov eax, r10d
add r8, rax
mov word [r9], dx
mov dword [r11 + r8*4], r14d
add r14, 4
cmp r14, rbx
jb 0x140087060
jmp 0x140087166
lea rax, [r14 + 8]
cmp rax, rbx
cmovb rbx, rax
cmp r14, rbx
jae 0x14008716f
mov rax, rbx
add r10, 2
sub rax, r14
dec rax
and rax, 0xfffffffffffffffe
add r10, rax
mov qword [rsp + 0x28], r10
nop dword [rax + rax]
mov rdx, qword [r13 + 0x68]
mov rax, r14
and rax, qword [rbp + 0x4f]
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]
mov eax, dword [r13 + 0x50]
mov r8d, edx
and r8, rax
inc dx
mov eax, r10d
add r8, rax
mov word [r9], dx
mov dword [r11 + r8*4], r14d
add r14, 2
cmp r14, rbx
jb 0x140087100
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 0x140085a20
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