Function at 0x1400ec920
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x2f8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x260], xmm8
movdqa xmmword [rbp + 0x250], xmm7
movdqa xmmword [rbp + 0x240], xmm6
mov qword [rbp + 0x238], 0xfffffffffffffffe
mov byte [rbp + 0x108], dl
mov rsi, rcx
lea rdx, str.keep_aliveclose
lea rcx, [rbp - 0x50]
mov r8d, 0xa
call fcn.140170530
cmp qword [rbp - 0x50], 0
jne 0x1400edca3
movdqu xmm0, xmmword [rbp - 0x48]
movdqu xmm1, xmmword [rbp - 0x38]
movdqa xmmword [rbp + 0x150], xmm1
movdqa xmmword [rbp + 0x140], xmm0
lea rdx, str.proxy_connection8r
lea rcx, [rbp + 0x190]
mov r8d, 0x10
call fcn.140170530
cmp qword [rbp + 0x190], 0
jne 0x1400edccb
movups xmm0, xmmword [rbp + 0x198]
movups xmm1, xmmword [rbp + 0x1a8]
movaps xmmword [rbp - 0x20], xmm1
movaps xmmword [rbp - 0x30], xmm0
movaps xmm0, xmmword [rbp + 0x140]
movdqa xmm1, xmmword [rbp + 0x150]
movaps xmmword [rbp - 0x50], xmm0
movdqa xmmword [rbp - 0x40], xmm1
movups xmm0, xmmword [0x1401c72e8]
movaps xmmword [rbp - 0x10], xmm0
movups xmm0, xmmword [0x1401c72f8]
movaps xmmword [rbp], xmm0
movups xmm0, xmmword [0x1401c6cc0]
movaps xmmword [rbp + 0x10], xmm0
movups xmm0, xmmword [0x1401c6cd0]
movaps xmmword [rbp + 0x20], xmm0
movups xmm0, xmmword [0x1401c7318]
movaps xmmword [rbp + 0x40], xmm0
movdqu xmm0, xmmword [0x1401c7308]
movdqa xmmword [rbp + 0x30], xmm0
xor ecx, ecx
mov qword [rbp + 0x210], rsi
jmp 0x1400eca5e
mov rcx, qword [rbp + 0x220]
mov rsi, qword [rbp + 0x210]
cmp rcx, 0xa0
je 0x1400ecdf2
lea rax, [rcx + 0x20]
mov qword [rbp + 0x220], rax
mov rax, qword [rsi + 0x28]
mov qword [rbp + 0x188], rax
test rax, rax
je 0x1400eca50
lea rdx, [rcx + rbp]
add rdx, 0xffffffffffffffb0
mov rsi, qword [rbp + 0x210]
mov rcx, rsi
mov qword [rbp + 0x200], rdx
call fcn.1400619c0
movzx ebx, word [rsi + 0x58]
mov dword [rbp + 0x208], eax
mov r15d, eax
and r15d, ebx
mov r13, qword [rsi + 0x50]
mov rax, qword [rsi + 0x20]
mov qword [rbp + 0x228], rax
mov r12, qword [rsi + 0x48]
xor esi, esi
jmp 0x1400ecae6
movzx eax, byte [rcx + 8]
mov rcx, qword [rbp + 0x200]
cmp al, byte [rcx + 8]
je 0x1400ecb96
nop
inc rsi
inc r15
cmp r15, r13
mov eax, 0
cmovae r15, rax
jb 0x1400ecafd
test r13, r13
je 0x1400ecdf0
movzx edi, word [r12 + r15*4]
cmp rdi, 0xffff
je 0x1400eca50
movzx eax, word [r12 + r15*4 + 2]
mov ecx, eax
and ecx, ebx
mov edx, r15d
sub edx, ecx
and edx, ebx
cmp rsi, rdx
ja 0x1400eca50
cmp ax, word [rbp + 0x208]
jne 0x1400ecae0
cmp qword [rbp + 0x188], rdi
jbe 0x1400ed06d
imul r14, rdi, 0x68
mov rax, qword [rbp + 0x228]
mov rax, qword [rax + r14 + 0x40]
test rax, rax
setne cl
mov rdx, qword [rbp + 0x200]
cmp qword [rdx], 0
sete dl
cmp cl, dl
je 0x1400ecae0
mov rcx, qword [rbp + 0x228]
add rcx, r14
add rcx, 0x40
test rax, rax
je 0x1400ecacb
mov rdx, qword [rbp + 0x200]
call fcn.1401771a0
test al, al
je 0x1400ecae0
mov rax, qword [rbp + 0x228]
cmp qword [rax + r14], 0
je 0x1400ecbbe
mov rax, qword [rbp + 0x228]
add rax, r14
mov rdx, qword [rax + 8]
mov rcx, qword [rbp + 0x210]
call fcn.1400e2850
lea rcx, [rbp + 0x190]
mov rdx, qword [rbp + 0x210]
mov r8, r15
mov r9, rdi
call fcn.1400e21e0
lea rcx, [rbp + 0x1a8]
mov rax, qword [rcx + 0x20]
mov qword [rbp + 0x160], rax
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rbp + 0x150], xmm1
movdqa xmmword [rbp + 0x140], xmm0
mov rax, qword [rbp + 0x1d0]
test rax, rax
je 0x1400ecc26
mov rdx, qword [rbp + 0x1d8]
mov r8, qword [rbp + 0x1e0]
lea rcx, [rbp + 0x1e8]
call qword [rax + 0x10]
cmp byte [rbp + 0x160], 2
je 0x1400eca50
mov rax, qword [rbp + 0x140]
mov rdx, qword [rbp + 0x148]
mov r8, qword [rbp + 0x150]
lea rcx, [rbp + 0x158]
call qword [rax + 0x10]
mov rax, qword [0x140296ec0]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x220]
cmp rax, 3
mov rsi, qword [rbp + 0x210]
ja 0x1400eca5e
movzx eax, byte [0x140294548]
mov rcx, qword [rbp + 0x220]
test al, al
je 0x1400eca5e
movzx ecx, al
cmp ecx, 1
je 0x1400eccbd
cmp ecx, 2
jne 0x1400ecc9b
mov al, 2
jmp 0x1400eccbd
lea rcx, [0x140294538]
call fcn.1401a6d50
mov rcx, qword [rbp + 0x220]
test al, al
mov rsi, qword [rbp + 0x210]
je 0x1400eca5e
mov rcx, qword [0x140294538]
mov edx, eax
call fcn.1401345e0
mov rcx, qword [rbp + 0x220]
test al, al
mov rsi, qword [rbp + 0x210]
je 0x1400eca5e
mov rdi, qword [0x140294538]
mov rax, qword [rdi + 0x38]
test rax, rax
je 0x1400edd22
lea rsi, [rdi + 0x30]
mov rcx, qword [rdi + 0x30]
movdqu xmm0, xmmword [rdi + 0x40]
mov qword [rbp + 0x140], rcx
mov qword [rbp + 0x148], rax
movdqu xmmword [rbp + 0x150], xmm0
mov qword [rbp + 0x160], 0
mov rcx, qword [rbp + 0x200]
call fcn.1400e3910
mov qword [rbp + 0xa0], rax
mov qword [rbp + 0xa8], rdx
lea rax, [rbp + 0xa0]
mov qword [rbp + 0xe0], rax
lea rax, [0x1400464e0]
mov qword [rbp + 0xe8], rax
lea rax, str.Connection_header_illegal_in_HTTP_2:
mov qword [rbp + 0x190], rax
mov qword [rbp + 0x198], 1
mov qword [rbp + 0x1b0], 0
lea rax, [rbp + 0xe0]
mov qword [rbp + 0x1a0], rax
mov qword [rbp + 0x1a8], 1
lea rax, [rbp + 0x140]
mov qword [rbp + 0x110], rax
lea rax, [rbp + 0x190]
mov qword [rbp + 0x118], rax
lea rax, method..virtual_0
mov qword [rbp + 0x120], rax
lea rax, [rbp + 0x110]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], 1
mov qword [rbp + 0x70], rsi
mov rcx, rdi
lea rdx, [rbp + 0x60]
call fcn.1401355c0
jmp 0x1400eca50
jmp 0x1400ecdf0
cmp byte [rbp + 0x108], 0
je 0x1400ece6a
movdqu xmm6, xmmword [0x1401c7338]
movdqa xmmword [rbp + 0x1a0], xmm6
movdqu xmm7, xmmword [0x1401c7328]
movdqa xmmword [rbp + 0x190], xmm7
mov rax, qword [rsi + 0x28]
mov qword [rbp + 0x228], rax
test rax, rax
je 0x1400ecfe2
lea rdx, [rbp + 0x190]
mov rcx, rsi
call fcn.1400619c0
mov rcx, rsi
mov r12d, eax
movzx esi, word [rsi + 0x58]
mov edi, r12d
and edi, esi
mov r15, qword [rcx + 0x50]
mov rax, qword [rcx + 0x20]
mov qword [rbp + 0x208], rax
mov r14, qword [rcx + 0x48]
xor ebx, ebx
xor r13d, r13d
jmp 0x1400ecf28
movups xmm0, xmmword [0x1401c7338]
movaps xmmword [rbp + 0x150], xmm0
movdqu xmm0, xmmword [0x1401c7328]
movdqa xmmword [rbp + 0x140], xmm0
lea rdi, [rbp + 0x190]
lea rbx, [rbp + 0x140]
mov rcx, rdi
mov rdx, rsi
mov r8, rbx
call fcn.1400e2d00
cmp byte [rbp + 0x1b0], 2
je 0x1400ed2a3
mov rax, qword [rbp + 0x190]
mov rdx, qword [rbp + 0x198]
lea rcx, [rbp + 0x1a8]
mov r8, qword [rbp + 0x1a0]
call qword [rax + 0x10]
mov rax, qword [0x140296ec0]
mov rax, qword [rax]
cmp rax, 3
ja 0x1400ed2a3
movzx edx, byte [0x140294518]
test dl, dl
je 0x1400ed2a3
movzx eax, dl
cmp eax, 1
je 0x1400ed09e
cmp eax, 2
jne 0x1400ed088
mov dl, 2
jmp 0x1400ed09e
movzx eax, byte [rcx + 8]
cmp al, byte [rbp + 0x198]
je 0x1400ecfcb
nop
inc r13
inc rdi
xor ebx, ebx
cmp rdi, r15
cmovae rdi, rbx
jb 0x1400ecf3a
test r15, r15
je 0x1400ecfe0
movzx ecx, word [r14 + rdi*4]
cmp rcx, 0xffff
je 0x1400ecfe4
movzx eax, word [r14 + rdi*4 + 2]
mov edx, eax
and edx, esi
mov r8d, edi
sub r8d, edx
and r8d, esi
cmp r13, r8
ja 0x1400ecfe4
cmp ax, r12w
jne 0x1400ecf20
cmp qword [rbp + 0x228], rcx
jbe 0x1400edc8b
imul rbx, rcx, 0x68
mov rax, qword [rbp + 0x208]
mov rax, qword [rax + rbx + 0x40]
test rax, rax
setne cl
cmp qword [rbp + 0x190], 0
sete dl
cmp cl, dl
je 0x1400ecf20
mov rcx, qword [rbp + 0x208]
add rcx, rbx
add rcx, 0x40
test rax, rax
je 0x1400ecf0f
lea rdx, [rbp + 0x190]
call fcn.1401771a0
test al, al
je 0x1400ecf20
mov rax, qword [rbp + 0x208]
add rbx, rax
add rbx, 0x18
jmp 0x1400ecfe4
jmp 0x1400ecfe0
xor ebx, ebx
mov rax, qword [rbp + 0x190]
test rax, rax
je 0x1400ed008
lea rcx, [rbp + 0x1a8]
mov rdx, qword [rbp + 0x198]
mov r8, qword [rbp + 0x1a0]
call qword [rax + 0x10]
test rbx, rbx
je 0x1400ed2a3
lea rdx, str.trailers8r
mov r8d, 8
mov rcx, rbx
call fcn.1401771d0
test al, al
jne 0x1400ed2a3
mov rax, qword [0x140296ec0]
mov rax, qword [rax]
cmp rax, 3
ja 0x1400ed251
movzx edx, byte [0x140294530]
test dl, dl
je 0x1400ed251
movzx eax, dl
cmp eax, 1
je 0x1400ed17e
cmp eax, 2
jne 0x1400ed168
mov dl, 2
jmp 0x1400ed17e
lea r8, [0x1401c4c18]
mov rcx, rdi
mov rdx, qword [rbp + 0x188]
call fcn.1401abdd0
jmp 0x1400edd88
lea rcx, [0x140294508]
call fcn.1401a6d50
mov edx, eax
test al, al
je 0x1400ed2a3
mov rcx, qword [0x140294508]
call fcn.1401345e0
test al, al
je 0x1400ed2a3
mov rcx, qword [0x140294508]
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x1400edd56
lea rdx, [rcx + 0x30]
mov r8, qword [rcx + 0x30]
movdqu xmm0, xmmword [rcx + 0x40]
mov qword [rbp + 0x140], r8
mov qword [rbp + 0x148], rax
movdqu xmmword [rbp + 0x150], xmm0
mov qword [rbp + 0x160], 0
lea rax, str.TE_headers_illegal_in_HTTP_2_responses
mov qword [rbp + 0x190], rax
mov qword [rbp + 0x198], 1
lea rax, [0x1401c40a0]
mov qword [rbp + 0x1a0], rax
pxor xmm0, xmm0
movdqu xmmword [rbp + 0x1a8], xmm0
mov qword [rbp + 0x110], rbx
mov qword [rbp + 0x118], rdi
lea rax, method..virtual_0
mov qword [rbp + 0x120], rax
lea rax, [rbp + 0x110]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], 1
mov qword [rbp + 0x70], rdx
lea rdx, [rbp + 0x60]
call fcn.1401355c0
jmp 0x1400ed2a3
lea rcx, [0x140294520]
call fcn.1401a6d50
mov edx, eax
test al, al
je 0x1400ed251
mov rcx, qword [0x140294520]
call fcn.1401345e0
test al, al
je 0x1400ed251
mov rcx, qword [0x140294520]
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x1400edd70
lea rdx, [rcx + 0x30]
mov r8, qword [rcx + 0x30]
movdqu xmm0, xmmword [rcx + 0x40]
mov qword [rbp + 0x140], r8
mov qword [rbp + 0x148], rax
movdqu xmmword [rbp + 0x150], xmm0
mov qword [rbp + 0x160], 0
lea rax, str.TE_headers_not_set_to__trailers__are_illegal_in_HTTP_2_requests
mov qword [rbp + 0x190], rax
mov qword [rbp + 0x198], 1
lea rax, [0x1401c40a0]
mov qword [rbp + 0x1a0], rax
pxor xmm0, xmm0
movdqu xmmword [rbp + 0x1a8], xmm0
lea rax, [rbp + 0x140]
mov qword [rbp + 0x110], rax
lea rax, [rbp + 0x190]
mov qword [rbp + 0x118], rax
lea rax, method..virtual_0
mov qword [rbp + 0x120], rax
lea rax, [rbp + 0x110]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], 1
mov qword [rbp + 0x70], rdx
lea rdx, [rbp + 0x60]
call fcn.1401355c0
movdqa xmmword [rbp + 0x150], xmm6
movdqa xmmword [rbp + 0x140], xmm7
lea rcx, [rbp + 0x190]
lea r8, [rbp + 0x140]
mov rdx, qword [rbp + 0x210]
call fcn.1400e2d00
cmp byte [rbp + 0x1b0], 2
je 0x1400ed2a3
mov rax, qword [rbp + 0x190]
mov rdx, qword [rbp + 0x198]
lea rcx, [rbp + 0x1a8]
mov r8, qword [rbp + 0x1a0]
call qword [rax + 0x10]
movups xmm0, xmmword [0x1401c7418]
movaps xmmword [rbp + 0x1a0], xmm0
movdqu xmm0, xmmword [0x1401c7408]
movdqa xmmword [rbp + 0x190], xmm0
lea rcx, [rbp + 0xe0]
lea rdi, [rbp + 0x190]
mov rdx, qword [rbp + 0x210]
mov r8, rdi
call fcn.1400e2d00
movzx ebx, byte [rbp + 0x100]
mov al, 1
cmp bl, 2
je 0x1400edc0a
mov byte [rbp + 0x21f], bl
mov rax, qword [rbp + 0x100]
mov qword [rbp + 0xc0], rax
movdqu xmm0, xmmword [rbp + 0xe0]
movdqu xmm1, xmmword [rbp + 0xf0]
movdqa xmmword [rbp + 0xb0], xmm1
movdqa xmmword [rbp + 0xa0], xmm0
mov rax, qword [0x140296ec0]
mov rax, qword [rax]
cmp rax, 3
ja 0x1400ed474
movzx edx, byte [0x140294500]
test dl, dl
je 0x1400ed474
movzx eax, dl
cmp eax, 1
je 0x1400ed36e
cmp eax, 2
jne 0x1400ed358
mov dl, 2
jmp 0x1400ed36e
lea rcx, [0x1402944f0]
call fcn.1401a6d50
mov edx, eax
test al, al
je 0x1400ed474
mov rcx, qword [0x1402944f0]
call fcn.1401345e0
test al, al
je 0x1400ed474
mov rbx, qword [0x1402944f0]
mov rax, qword [rbx + 0x38]
test rax, rax
je 0x1400edd3c
lea rsi, [rbx + 0x30]
mov rcx, qword [rbx + 0x30]
movdqu xmm0, xmmword [rbx + 0x40]
mov qword [rbp + 0x140], rcx
mov qword [rbp + 0x148], rax
movdqu xmmword [rbp + 0x150], xmm0
mov qword [rbp + 0x160], 0
lea rcx, [0x1401c7408]
call fcn.1400e3910
mov qword [rbp + 0xd0], rax
mov qword [rbp + 0xd8], rdx
lea rax, [rbp + 0xd0]
mov qword [rbp + 0x50], rax
lea rax, [0x1400464e0]
mov qword [rbp + 0x58], rax
lea rax, str.Connection_header_illegal_in_HTTP_2:
mov qword [rbp + 0x190], rax
mov qword [rbp + 0x198], 1
mov qword [rbp + 0x1b0], 0
lea rax, [rbp + 0x50]
mov qword [rbp + 0x1a0], rax
mov qword [rbp + 0x1a8], 1
lea rax, [rbp + 0x140]
mov qword [rbp + 0x110], rax
mov qword [rbp + 0x118], rdi
lea rax, method..virtual_0
mov qword [rbp + 0x120], rax
lea rax, [rbp + 0x110]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], 1
mov qword [rbp + 0x70], rsi
lea rdx, [rbp + 0x60]
mov rcx, rbx
call fcn.1401355c0
lea rcx, [rbp + 0xa0]
call fcn.140170850
test rax, rax
je 0x1400edcf8
mov qword [rbp + 0x140], 0
mov qword [rbp + 0x148], rdx
mov qword [rbp + 0x150], rax
mov qword [rbp + 0x158], rdx
mov qword [rbp + 0x160], 0
mov qword [rbp + 0x168], rdx
movabs rax, 0x2c0000002c
mov qword [rbp + 0x170], rax
mov byte [rbp + 0x178], 1
mov word [rbp + 0x180], 1
lea rsi, [rbp + 0x140]
lea rdi, [0x1401c5267]
lea rbx, [rbp + 0x190]
lea r15, [rbp + 0x60]
movdqa xmm6, xmmword [str.uespemosarenegylmodnarodsetybdet]
movdqa xmm7, xmmword [0x1401aea80]
xorps xmm8, xmm8
jmp 0x1400ed524
lea rsi, [rbp + 0x140]
lea rdi, [0x1401c5267]
lea rbx, [rbp + 0x190]
lea r15, [rbp + 0x60]
mov rcx, rsi
call fcn.1400e1710
test rax, rax
je 0x1400edbe2
mov rcx, rax
call fcn.140060280
mov r8, rdx
mov qword [rsp + 0x20], rdi
mov rcx, rbx
mov rdx, rax
mov r9, r15
call fcn.140170100
movzx eax, byte [rbp + 0x1a0]
cmp al, 3
je 0x1400ed524
mov dword [rbp + 0x228], eax
mov rax, qword [rbp + 0x210]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x200], rax
test rax, rax
je 0x1400ed50b
mov rdx, qword [rbp + 0x190]
mov r8, qword [rbp + 0x198]
mov rdi, qword [rbp + 0x210]
cmp dword [rdi], 2
mov qword [rbp + 0x220], rdx
mov qword [rbp + 0x208], r8
jne 0x1400ed64f
movdqu xmm0, xmmword [rdi + 8]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmm6
movdqa xmmword [rbp + 0x190], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmm7
movdqa xmmword [rbp + 0x1a0], xmm1
movdqa xmmword [rbp + 0x1b0], xmm0
lea rax, [rbp + 0x1c0]
movaps xmmword [rax], xmm8
mov qword [rax + 0x10], 0
xor eax, eax
mov esi, dword [rbp + 0x228]
cmp sil, 2
setne al
mov qword [rbp + 0xd0], rax
mov r8d, 8
lea r14, [rbp + 0x190]
mov rcx, r14
lea r15, [rbp + 0xd0]
mov rdx, r15
call fcn.14000ee60
mov eax, esi
cmp al, 2
lea rbx, [0x1401c5267]
jne 0x1400ed6a2
movzx eax, byte [rbp + 0x220]
mov qword [rbp + 0xd0], rax
mov r8d, 8
mov rcx, r14
mov rdx, r15
call fcn.14000ee60
jmp 0x1400ed759
xor esi, esi
mov r10d, dword [rbp + 0x228]
cmp r10b, 2
setne sil
movabs rax, 0xcbf29ce484222325
xor rsi, rax
movabs rcx, 0x1efac7090aef4a21
imul rsi, rcx
cmp r10b, 2
lea r9, [0x1401c5267]
jne 0x1400ed6c1
movzx eax, dl
xor rax, rsi
imul rax, rcx
mov cl, 2
mov dword [rbp + 0x228], ecx
mov rsi, rax
jmp 0x1400ed853
test al, al
mov rdx, qword [rbp + 0x220]
je 0x1400ed71a
mov rcx, r14
mov r8, qword [rbp + 0x208]
call fcn.14000ee60
jmp 0x1400ed759
lea rax, [rdx + r8]
test r10b, r10b
movabs r10, 0x100000001b3
je 0x1400eda84
test r8, r8
je 0x1400edabd
and r8, 7
je 0x1400edaca
mov rcx, qword [rbp + 0x220]
nop word cs:[rax + rax]
movzx edx, byte [rcx]
inc rcx
xor rdx, rsi
imul rdx, r10
mov rsi, rdx
dec r8
jne 0x1400ed700
jmp 0x1400edad4
mov r12, qword [rbp + 0x208]
test r12, r12
je 0x1400ed759
mov r13, rdx
xor esi, esi
nop dword [rax + rax]
movzx eax, byte [r13 + rsi]
movzx eax, byte [rax + rbx]
mov byte [rbp + 0xd0], al
mov r8d, 1
mov rcx, r14
mov rdx, r15
call fcn.14000ee60
inc rsi
cmp r12, rsi
jne 0x1400ed730
mov rax, qword [rbp + 0x1a0]
mov r9, qword [rbp + 0x1c0]
shl r9, 0x38
or r9, qword [rbp + 0x1c8]
mov rcx, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x190]
add r8, rax
rol rax, 0xd
xor rcx, r9
xor rax, r8
rol r8, 0x20
mov rdx, qword [rbp + 0x198]
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rcx, r8
xor rax, rdx
rol rdx, 0x20
xor r8, r9
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
xor rdx, 0xff
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rax, rdx
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rax, rdx
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
xor rax, r8
add rdx, rcx
shl rcx, 0x10
xor rcx, rdx
shr rcx, 0x2b
add rdx, rax
shr rax, 0x2f
xor rax, rcx
mov rsi, rdx
shr rsi, 0x20
xor rsi, rdx
xor rsi, rax
and esi, 0x7fff
movzx r15d, word [rdi + 0x58]
mov r12d, esi
and r12d, r15d
mov r10, qword [rdi + 0x50]
mov rax, qword [rdi + 0x20]
mov qword [rbp + 0x188], rax
mov rbx, qword [rdi + 0x48]
xor edi, edi
mov rdx, qword [rbp + 0x220]
mov r8, qword [rbp + 0x208]
jmp 0x1400ed896
inc rdi
inc r12
cmp r12, r10
mov eax, 0
cmovae r12, rax
jb 0x1400ed8ad
test r10, r10
je 0x1400edbe0
movzx r14d, word [rbx + r12*4]
cmp r14, 0xffff
je 0x1400ed50b
movzx eax, word [rbx + r12*4 + 2]
mov ecx, eax
and ecx, r15d
mov r9d, r12d
sub r9d, ecx
and r9d, r15d
cmp rdi, r9
ja 0x1400ed50b
cmp ax, si
jne 0x1400ed890
cmp qword [rbp + 0x200], r14
jbe 0x1400edc70
imul r13, r14, 0x68
mov rcx, qword [rbp + 0x188]
lea rax, [rcx + r13]
add rax, 0x40
cmp qword [rcx + r13 + 0x40], 0
je 0x1400ed958
mov ecx, dword [rbp + 0x228]
test cl, cl
je 0x1400ed970
movzx ecx, cl
cmp ecx, 2
je 0x1400ed890
cmp qword [rax + 0x10], r8
jne 0x1400ed890
mov rcx, qword [rax + 8]
mov qword [rbp + 0x108], r10
call sub.VCRUNTIME140.dll_memcmp
mov r10, qword [rbp + 0x108]
mov r8, qword [rbp + 0x208]
mov rdx, qword [rbp + 0x220]
test eax, eax
jne 0x1400ed890
jmp 0x1400ed9b5
cmp byte [rbp + 0x228], 2
jne 0x1400ed890
cmp byte [rax + 8], dl
jne 0x1400ed890
jmp 0x1400ed9b5
cmp qword [rax + 0x10], r8
jne 0x1400ed890
mov rax, qword [rax + 8]
xor ecx, ecx
cmp r8, rcx
je 0x1400ed9b5
mov r8, r10
movzx r10d, byte [rdx + rcx]
lea r11, [rcx + 1]
lea r9, [0x1401c5267]
movzx r9d, byte [r10 + r9]
mov r10, r8
mov r8, qword [rbp + 0x208]
cmp r9b, byte [rax + rcx]
mov rcx, r11
je 0x1400ed980
jmp 0x1400ed890
mov rax, qword [rbp + 0x188]
cmp qword [rax + r13], 0
lea rsi, [rbp + 0x140]
lea rdi, [0x1401c5267]
lea rbx, [rbp + 0x190]
lea r15, [rbp + 0x60]
je 0x1400ed9ef
add rax, r13
mov rdx, qword [rax + 8]
mov rcx, qword [rbp + 0x210]
call fcn.1400e2850
mov rcx, rbx
mov rdx, qword [rbp + 0x210]
mov r8, r12
mov r9, r14
call fcn.1400e21e0
lea rcx, [rbp + 0x1a8]
mov rax, qword [rcx + 0x20]
mov qword [rbp + 0x130], rax
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rbp + 0x120], xmm1
movdqa xmmword [rbp + 0x110], xmm0
mov rax, qword [rbp + 0x1d0]
test rax, rax
je 0x1400eda53
mov rdx, qword [rbp + 0x1d8]
mov r8, qword [rbp + 0x1e0]
lea rcx, [rbp + 0x1e8]
call qword [rax + 0x10]
cmp byte [rbp + 0x130], 2
je 0x1400ed524
mov rax, qword [rbp + 0x110]
mov rdx, qword [rbp + 0x118]
mov r8, qword [rbp + 0x120]
lea rcx, [rbp + 0x128]
call qword [rax + 0x10]
jmp 0x1400ed524
test r8, r8
je 0x1400edb4c
and r8, 3
je 0x1400edb5b
mov rcx, qword [rbp + 0x220]
movzx edx, byte [rcx]
movzx edx, byte [rdx + r9]
xor rdx, rsi
imul rdx, r10
inc rcx
mov rsi, rdx
dec r8
jne 0x1400eda9e
jmp 0x1400edb65
mov al, 1
mov dword [rbp + 0x228], eax
jmp 0x1400ed853
mov rdx, rsi
mov rcx, qword [rbp + 0x220]
cmp qword [rbp + 0x208], 8
jb 0x1400edb44
nop
movzx r8d, byte [rcx]
xor r8, rdx
imul r8, r10
movzx edx, byte [rcx + 1]
xor rdx, r8
imul rdx, r10
movzx r8d, byte [rcx + 2]
xor r8, rdx
imul r8, r10
movzx edx, byte [rcx + 3]
xor rdx, r8
imul rdx, r10
movzx r8d, byte [rcx + 4]
xor r8, rdx
imul r8, r10
movzx edx, byte [rcx + 5]
xor rdx, r8
imul rdx, r10
movzx r8d, byte [rcx + 6]
xor r8, rdx
imul r8, r10
movzx edx, byte [rcx + 7]
add rcx, 8
xor rdx, r8
imul rdx, r10
cmp rcx, rax
jne 0x1400edae0
mov rsi, rdx
jmp 0x1400ed853
mov dword [rbp + 0x228], 0
jmp 0x1400ed853
mov rcx, qword [rbp + 0x220]
mov rdx, rsi
mov rsi, rdx
cmp qword [rbp + 0x208], 4
jae 0x1400edb84
mov dword [rbp + 0x228], 0
mov rsi, rdx
jmp 0x1400ed853
movzx edx, byte [rcx]
movzx edx, byte [rdx + r9]
xor rdx, rsi
imul rdx, r10
movzx r8d, byte [rcx + 1]
movzx r8d, byte [r8 + r9]
xor r8, rdx
imul r8, r10
movzx edx, byte [rcx + 2]
movzx edx, byte [rdx + r9]
xor rdx, r8
imul rdx, r10
movzx r8d, byte [rcx + 3]
movzx esi, byte [r8 + r9]
xor rsi, rdx
imul rsi, r10
add rcx, 4
mov dword [rbp + 0x228], 0
cmp rcx, rax
jne 0x1400edb84
jmp 0x1400ed853
jmp 0x1400edbe0
mov rax, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0xa8]
lea rcx, [rbp + 0xb8]
mov r8, qword [rbp + 0xb0]
call qword [rax + 0x10]
xor eax, eax
movzx ebx, byte [rbp + 0x21f]
mov byte [rbp + 0x237], al
lea rcx, [rbp - 0x50]
call fcn.1400e0b20
cmp bl, 2
jne 0x1400edc46
cmp byte [rbp + 0x100], 2
je 0x1400edc46
lea rcx, [rbp + 0xf8]
mov rax, qword [rbp + 0xe0]
mov rdx, qword [rbp + 0xe8]
mov r8, qword [rbp + 0xf0]
call qword [rax + 0x10]
movaps xmm6, xmmword [rbp + 0x240]
movaps xmm7, xmmword [rbp + 0x250]
movaps xmm8, xmmword [rbp + 0x260]
add rsp, 0x2f8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea r8, [0x1401c4c18]
mov rcx, r14
mov rdx, qword [rbp + 0x200]
call fcn.1401abdd0
jmp 0x1400edd88
lea r8, [0x1401c4c18]
mov rdx, qword [rbp + 0x228]
call fcn.1401abdd0
jmp 0x1400edd88
lea rax, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_srcprotoh2mod.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x1401c4910]
lea r9, method..virtual_0
lea r8, [rbp + 0x60]
mov edx, 0x2b
call fcn.1401ac070
lea rax, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_srcprotoh2mod.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x1401c4910]
lea r9, method..virtual_0
lea r8, [rbp + 0x60]
mov edx, 0x2b
call fcn.1401ac070
jmp 0x1400edd88
lea rax, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_srcprotoh2mod.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x1401c4910]
lea r9, method..virtual_0
lea r8, [rbp + 0x60]
mov edx, 0x2b
call fcn.1401ac070
jmp 0x1400edd88
lea rcx, str.FieldSet_corrupted__this_is_a_bug_C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_src_bodylength.rs
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_srcprotoh2mod.rs
mov edx, 0x22
call fcn.1401abc20
jmp 0x1400edd88
lea rcx, str.FieldSet_corrupted__this_is_a_bug_C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_src_bodylength.rs
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_srcprotoh2mod.rs
mov edx, 0x22
call fcn.1401abc20
jmp 0x1400edd88
lea rcx, str.FieldSet_corrupted__this_is_a_bug_C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_src_bodylength.rs
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_srcprotoh2mod.rs
mov edx, 0x22
call fcn.1401abc20
jmp 0x1400edd88
lea rcx, str.FieldSet_corrupted__this_is_a_bug_C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_src_bodylength.rs
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_srcprotoh2mod.rs
mov edx, 0x22
call fcn.1401abc20
ud2