Function at 0x140055530
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x268
mov rbp, r8
mov rdi, rdx
mov r13, rcx
mov r14, qword [rdx + 0x38]
mov qword [rdx + 0x38], 0
test r14, r14
mov qword [rsp + 0x48], rdx
je 0x140055716
movzx eax, byte [r14 + 0x80]
test al, al
jne 0x1400555c6
mov rax, qword [rbp]
mov rdx, qword [rax]
mov rcx, qword [rax + 8]
call qword [rdx]
mov r15, rax
mov r12, rdx
mov al, 1
xchg byte [r14 + 0x60], al
test al, al
je 0x140055598
mov rcx, r12
call qword [r15 + 0x18]
jmp 0x1400555c6
mov rax, qword [r14 + 0x50]
test rax, rax
je 0x1400555a8
mov rcx, qword [r14 + 0x58]
call qword [rax + 0x18]
mov qword [r14 + 0x50], r15
mov qword [r14 + 0x58], r12
xor eax, eax
xchg byte [r14 + 0x60], al
movzx eax, byte [r14 + 0x80]
test al, al
je 0x140056253
mov al, 1
xchg byte [r14 + 0x48], al
test al, al
je 0x1400555fd
movzx eax, byte [0x1401891c0]
mov rcx, qword [0x140189110]
test rcx, rcx
jne 0x140055628
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x140057354
mov rcx, rax
mov qword [0x140189110], rax
jmp 0x140055628
movzx eax, byte [r14 + 0x41]
mov byte [r14 + 0x41], 2
cmp al, 2
jne 0x1400561fb
xor eax, eax
xchg byte [r14 + 0x48], al
movzx eax, byte [0x1401891c0]
mov rcx, qword [0x140189110]
test rcx, rcx
je 0x1400555e3
mov r8d, 0x38
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x140057354
mov r15, rax
mov qword [rax], 0
mov byte [rax + 0x29], 2
mov byte [rax + 0x30], 4
lea rdx, str.request_has_been_canceled
mov r8d, 0x19
mov rcx, rax
call fcn.14002ad60
mov qword [rsp + 0x148], r15
mov byte [rsp + 0x1b8], 2
mov bl, 1
mov al, 1
xchg byte [r14 + 0x80], al
mov al, 1
xchg byte [r14 + 0x60], al
test al, al
jne 0x1400556a8
mov rax, qword [r14 + 0x50]
mov rcx, qword [r14 + 0x58]
mov qword [r14 + 0x50], 0
xor edx, edx
xchg byte [r14 + 0x60], dl
test rax, rax
je 0x1400556a8
call qword [rax + 0x18]
xchg byte [r14 + 0x78], bl
test bl, bl
jne 0x1400556ce
mov rax, qword [r14 + 0x68]
mov rcx, qword [r14 + 0x70]
mov qword [r14 + 0x68], 0
xor edx, edx
xchg byte [r14 + 0x78], dl
test rax, rax
je 0x1400556ce
call qword [rax + 8]
lock dec qword [r14]
mov rdi, qword [rsp + 0x48]
jne 0x1400556e1
mov rcx, r14
call fcn.140029380
movzx eax, byte [rsp + 0x1b8]
cmp eax, 4
je 0x140056c46
cmp eax, 3
je 0x140055716
cmp eax, 2
jne 0x140055f15
mov rax, qword [rsp + 0x148]
mov qword [r13], rax
mov byte [r13 + 0x70], 2
jmp 0x140056c4b
mov rbx, qword [rdi + 0x30]
test rbx, rbx
je 0x140056c37
lea rcx, [rbx + 0x10]
mov qword [rsp + 0x250], rcx
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [0x1401891b8]
shl rax, 1
test rax, rax
jne 0x140056957
mov dword [rsp + 0x3c], 0
mov qword [rsp + 0x248], rbp
mov qword [rsp + 0xe8], r13
movzx eax, byte [rbx + 0x18]
test al, al
jne 0x140057365
cmp qword [rbx + 0x78], 0
mov qword [rsp + 0x30], rbx
je 0x140055c27
mov rax, qword [rbx + 0xd0]
mov qword [rsp + 0xf8], rax
mov eax, dword [rbx + 0xd8]
mov dword [rsp + 0x2c], eax
mov rcx, qword [rbx + 0x80]
mov rdx, qword [rbx + 0x88]
mov r8, rdi
call fcn.140026840
mov rcx, qword [rbx + 0x60]
mov rdx, qword [rbx + 0x68]
mov r8, rax
shr r8, 0x39
movd xmm0, r8d
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
movzx r9d, byte [rdi]
mov r8, qword [rdi + 8]
mov qword [rsp + 0x68], r8
movzx r8d, byte [rdi + 1]
mov byte [rsp + 0xf0], r8b
mov r8, qword [rdi + 0x18]
mov qword [rsp + 0x78], r8
mov r8, qword [rdi + 0x20]
mov qword [rsp + 0x60], r8
neg r8
mov qword [rsp + 0x50], r8
xor r8d, r8d
mov qword [rsp + 0x58], r8
pcmpeqd xmm1, xmm1
mov qword [rsp + 0x70], r9
and rax, rdx
movdqu xmm2, xmmword [rcx + rax]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb r10d, xmm3
test r10d, r10d
jne 0x140055884
pcmpeqb xmm2, xmm1
pmovmskb r10d, xmm2
test r10d, r10d
mov rdi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x30]
jne 0x140055c27
mov r8, qword [rsp + 0x58]
add rax, r8
add rax, 0x10
add r8, 0x10
mov qword [rsp + 0x58], r8
jmp 0x140055811
test r10b, r10b
je 0x14005733a
lea r10d, [rbx - 1]
and r10d, ebx
test r10w, r10w
mov rcx, r13
mov rdx, r11
mov rax, r12
mov r9, qword [rsp + 0x70]
je 0x14005582b
mov ebx, r10d
tzcnt r10d, ebx
mov r12, rax
add r10, rax
mov r11, rdx
and r10, rdx
neg r10
lea r10, [r10 + r10*8]
mov r13, rcx
lea rcx, [rcx + r10*8]
cmp r9d, 1
je 0x140055950
cmp r9d, 2
jne 0x14005733a
mov r8, rcx
movzx r10d, byte [r8 - 0x48]
cmp r10b, 2
jne 0x140055860
mov rcx, r8
mov rax, qword [rsp + 0x68]
mov rbp, qword [rax + 0x10]
mov r10, qword [r8 - 0x40]
cmp rbp, qword [r10 + 0x10]
jne 0x140055869
mov rax, qword [rsp + 0x68]
mov r14, qword [rax + 8]
mov rdi, qword [r10 + 8]
mov rsi, rbp
neg rsi
mov r10, 0xffffffffffffffff
nop dword [rax + rax]
lea r15, [rsi + r10]
cmp r15, 0xffffffffffffffff
je 0x140055990
movzx r15d, byte [r14 + r10 + 1]
movzx r9d, byte [rdi + r10 + 1]
lea ecx, [r15 - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
lea edx, [r9 - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or cl, r15b
or dl, r9b
inc r10
cmp cl, dl
je 0x140055900
cmp r10, rbp
jb 0x140055869
jmp 0x140055990
movzx r10d, byte [rcx - 0x48]
cmp r10b, 1
jne 0x140055860
mov r8, rcx
movzx r10d, byte [rcx - 0x47]
cmp byte [rsp + 0xf0], 0
je 0x14005597b
test r10b, r10b
jne 0x140055990
jmp 0x140055869
test r10b, r10b
jne 0x140055869
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x60]
cmp rax, qword [r8 - 0x28]
jne 0x140055869
mov rsi, qword [r8 - 0x30]
mov r10, 0xffffffffffffffff
nop word [rax + rax]
mov rax, qword [rsp + 0x50]
lea rcx, [rax + r10]
cmp rcx, 0xffffffffffffffff
je 0x140055a08
mov rax, qword [rsp + 0x78]
movzx ecx, byte [rax + r10 + 1]
movzx edx, byte [rsi + r10 + 1]
lea r9d, [rcx - 0x41]
cmp r9b, 0x1a
setb r9b
shl r9b, 5
lea edi, [rdx - 0x41]
cmp dil, 0x1a
setb dil
shl dil, 5
or r9b, cl
or dil, dl
inc r10
cmp r9b, dil
je 0x1400559b0
cmp r10, qword [rsp + 0x60]
jb 0x140055869
mov rax, qword [r8 - 8]
test rax, rax
mov rdi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x30]
je 0x140055c27
mov r14, r8
dec rax
mov qword [r8 - 8], rax
mov rcx, qword [r8 - 0x18]
lea rdx, [rax + rax*8]
mov eax, dword [rcx + rdx*8 + 0x40]
cmp eax, 0x3b9aca00
je 0x140055c27
lea rcx, [rcx + rdx*8]
mov edx, dword [rcx + 0x44]
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqu xmm2, xmmword [rcx + 0x20]
movdqu xmm3, xmmword [rcx + 0x30]
movdqa xmmword [rsp + 0xa0], xmm2
movdqa xmmword [rsp + 0xb0], xmm3
movdqa xmmword [rsp + 0x90], xmm1
movdqa xmmword [rsp + 0x80], xmm0
mov dword [rsp + 0xc0], eax
mov dword [rsp + 0xc4], edx
mov rax, qword [rsp + 0xa8]
movzx eax, byte [rax + 0x10]
test al, al
je 0x14005648c
lea rcx, [rsp + 0x80]
call fcn.1400260f0
mov rax, qword [r14 - 8]
test rax, rax
je 0x140055c27
lea r13, [rsp + 0x148]
xor esi, esi
lea rbp, [rsp + 0x80]
jmp 0x140055ae5
mov rcx, rbp
call fcn.1400260f0
mov rax, qword [r14 - 8]
test rax, rax
je 0x140055c27
dec rax
mov qword [r14 - 8], rax
mov rcx, qword [r14 - 0x18]
lea rdx, [rax + rax*8]
mov eax, dword [rcx + rdx*8 + 0x40]
cmp eax, 0x3b9aca00
je 0x140055c27
lea rcx, [rcx + rdx*8]
mov edx, dword [rcx + 0x44]
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqu xmm2, xmmword [rcx + 0x20]
movdqu xmm3, xmmword [rcx + 0x30]
movdqa xmmword [rsp + 0xa0], xmm2
movdqa xmmword [rsp + 0xb0], xmm3
movdqa xmmword [rsp + 0x90], xmm1
movdqa xmmword [rsp + 0x80], xmm0
mov dword [rsp + 0xc0], eax
mov dword [rsp + 0xc4], edx
mov rax, qword [rsp + 0xa8]
movzx eax, byte [rax + 0x10]
test al, al
jne 0x140055ad0
cmp byte [rsp + 0x90], 2
jne 0x140055b85
mov rax, qword [rsp + 0x80]
mov rax, qword [rax + 0x10]
cmp rax, 3
je 0x140055ad0
jmp 0x140055b9b
mov rax, qword [rsp + 0x80]
mov rax, qword [rax + 0x10]
cmp rax, 1
jne 0x140055ad0
mov r15, r14
mov r12, qword [rsp + 0xb8]
mov r14d, dword [rsp + 0xc0]
cmp dword [rsp + 0x2c], 0x3b9aca00
mov dword [rsp + 0x28], r14d
je 0x140056de3
call fcn.1400d59b0
mov qword [rsp + 0x148], rax
mov dword [rsp + 0x150], edx
mov rcx, r13
mov rdx, r12
mov r8d, r14d
call fcn.1400d5b50
cmp edx, 0x3b9aca00
cmove rax, rsi
mov r8, qword [rsp + 0xf8]
cmp rax, r8
jb 0x140056de3
cmp edx, 0x3b9aca00
setne cl
cmp edx, dword [rsp + 0x2c]
seta dl
cmp rax, r8
mov r14, r15
jne 0x140055ad0
and cl, dl
jne 0x140055ad0
jmp 0x140056de6
mov dword [rsp + 0x188], 0x3b9aca00
mov dword [rsp + 0x28], 0x3b9aca00
mov dword [rsp + 0x2c], 0
mov rcx, qword [rbx + 0x80]
mov rdx, qword [rbx + 0x88]
mov r8, rdi
call fcn.140026840
mov rcx, qword [rbx + 0x60]
mov rdx, qword [rbx + 0x68]
mov r8, rax
shr r8, 0x39
movd xmm0, r8d
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
movzx r8d, byte [rdi]
mov r9, qword [rdi + 8]
mov qword [rsp + 0x68], r9
movzx r9d, byte [rdi + 1]
mov byte [rsp + 0xf0], r9b
mov r9, qword [rdi + 0x18]
mov qword [rsp + 0x78], r9
mov r9, qword [rdi + 0x20]
mov qword [rsp + 0x60], r9
neg r9
mov qword [rsp + 0x50], r9
xor r9d, r9d
mov qword [rsp + 0x58], r9
pcmpeqd xmm1, xmm1
mov qword [rsp + 0x70], r8
and rax, rdx
movdqu xmm2, xmmword [rcx + rax]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb r9d, xmm3
test r9d, r9d
jne 0x140055d34
pcmpeqb xmm2, xmm1
pmovmskb r9d, xmm2
test r9d, r9d
jne 0x140056167
mov r9, qword [rsp + 0x58]
add rax, r9
add rax, 0x10
add r9, 0x10
mov qword [rsp + 0x58], r9
jmp 0x140055cbf
test r11b, r11b
je 0x14005733a
lea r9d, [rbp - 1]
and r9d, ebp
test r9w, r9w
mov rcx, rbx
mov rdx, rax
mov rax, r13
mov r8, qword [rsp + 0x70]
je 0x140055cd9
mov ebp, r9d
tzcnt esi, ebp
mov r13, rax
add rsi, rax
mov rax, rdx
and rsi, rdx
mov r9, rsi
neg r9
lea r9, [r9 + r9*8]
mov rbx, rcx
lea r9, [rcx + r9*8]
cmp r8d, 1
je 0x140055e00
cmp r8d, 2
jne 0x14005733a
movzx r11d, byte [r9 - 0x48]
cmp r11b, 2
jne 0x140055d10
mov rcx, qword [rsp + 0x68]
mov r11, qword [rcx + 0x10]
mov r14, qword [r9 - 0x40]
cmp r11, qword [r14 + 0x10]
jne 0x140055d19
mov rcx, qword [rsp + 0x68]
mov rdi, qword [rcx + 8]
mov r15, qword [r14 + 8]
mov r14, r11
neg r14
mov r12, 0xffffffffffffffff
nop word cs:[rax + rax]
lea r10, [r14 + r12]
cmp r10, 0xffffffffffffffff
je 0x140055e40
movzx r10d, byte [rdi + r12 + 1]
movzx ecx, byte [r15 + r12 + 1]
lea edx, [r10 - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
lea r8d, [rcx - 0x41]
cmp r8b, 0x1a
setb r8b
shl r8b, 5
or dl, r10b
or r8b, cl
inc r12
cmp dl, r8b
je 0x140055db0
cmp r12, r11
jb 0x140055d19
jmp 0x140055e40
movzx r11d, byte [r9 - 0x48]
cmp r11b, 1
jne 0x140055d10
movzx r11d, byte [r9 - 0x47]
cmp byte [rsp + 0xf0], 0
je 0x140055e28
test r11b, r11b
jne 0x140055e40
jmp 0x140055d19
test r11b, r11b
jne 0x140055d19
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x60]
cmp rcx, qword [r9 - 0x28]
jne 0x140055d19
mov rdi, qword [r9 - 0x30]
mov r11, 0xffffffffffffffff
nop word [rax + rax]
mov rcx, qword [rsp + 0x50]
add rcx, r11
cmp rcx, 0xffffffffffffffff
je 0x140055eb8
mov rcx, qword [rsp + 0x78]
movzx ecx, byte [rcx + r11 + 1]
movzx edx, byte [rdi + r11 + 1]
lea r8d, [rcx - 0x41]
cmp r8b, 0x1a
setb r8b
shl r8b, 5
lea r10d, [rdx - 0x41]
cmp r10b, 0x1a
setb r10b
shl r10b, 5
or r8b, cl
or r10b, dl
inc r11
cmp r8b, r10b
je 0x140055e60
cmp r11, qword [rsp + 0x60]
jb 0x140055d19
shl rsi, 3
lea rcx, [rsi + rsi*8]
sar rcx, 3
movabs rsi, 0x8e38e38e38e38e39
imul rsi, rcx
lea r8, [rsi - 0x10]
and r8, rax
movdqu xmm0, xmmword [rbx + r8]
pcmpeqd xmm1, xmm1
pcmpeqb xmm0, xmm1
psllw xmm0, 7
pmovmskb r10d, xmm0
movdqu xmm0, xmmword [rbx + rsi]
pcmpeqb xmm0, xmm1
pmovmskb edx, xmm0
test r10d, r10d
je 0x14005602f
bsr r10w, r10w
xor r10d, 0xf
jmp 0x140056034
mov rcx, qword [rsp + 0x148]
movups xmm0, xmmword [rsp + 0x150]
movaps xmmword [rsp + 0x80], xmm0
movups xmm0, xmmword [rsp + 0x160]
movaps xmmword [rsp + 0x90], xmm0
movups xmm0, xmmword [rsp + 0x170]
movaps xmmword [rsp + 0xa0], xmm0
movups xmm0, xmmword [rsp + 0x180]
movaps xmmword [rsp + 0xb0], xmm0
movups xmm0, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0xc0], xmm0
movups xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0xd0], xmm0
mov rdx, qword [rsp + 0x1b0]
mov qword [rsp + 0xe0], rdx
mov edx, dword [rsp + 0x1b9]
mov dword [rsp + 0x200], edx
mov edx, dword [rsp + 0x1bc]
mov dword [rsp + 0x203], edx
mov rdx, qword [rsp + 0xe0]
mov qword [r13 + 0x68], rdx
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [r13 + 0x58], xmm0
movaps xmm0, xmmword [rsp + 0xc0]
movups xmmword [r13 + 0x48], xmm0
movdqa xmm0, xmmword [rsp + 0x80]
movdqa xmm1, xmmword [rsp + 0x90]
movdqa xmm2, xmmword [rsp + 0xa0]
movdqa xmm3, xmmword [rsp + 0xb0]
movdqu xmmword [r13 + 0x38], xmm3
movdqu xmmword [r13 + 0x28], xmm2
movdqu xmmword [r13 + 0x18], xmm1
movdqu xmmword [r13 + 8], xmm0
mov edx, dword [rsp + 0x200]
mov r8d, dword [rsp + 0x203]
mov dword [r13 + 0x71], edx
mov dword [r13 + 0x74], r8d
mov qword [r13], rcx
mov byte [r13 + 0x70], al
jmp 0x140056c4b
mov r10w, 0x10
mov r11, qword [rsp + 0x30]
or edx, 0x10000
tzcnt ecx, edx
add r10d, ecx
mov dl, pe_nt_image_headers64
cmp r10w, 0xf
ja 0x140056055
inc qword [r11 + 0x70]
mov dl, 0xff
mov byte [rbx + rsi], dl
mov byte [r8 + rbx + 0x10], dl
dec qword [r11 + 0x78]
movdqu xmm0, xmmword [r9 - 0x48]
movdqu xmm1, xmmword [r9 - 0x38]
movdqu xmm2, xmmword [r9 - 0x28]
movdqu xmm3, xmmword [r9 - 0x18]
movdqa xmmword [rsp + 0x80], xmm0
mov rax, qword [r9 - 8]
mov qword [rsp + 0xc0], rax
movdqa xmmword [rsp + 0xb0], xmm3
movdqa xmmword [rsp + 0xa0], xmm2
movdqa xmmword [rsp + 0x90], xmm1
movzx eax, byte [rsp + 0x80]
cmp al, 3
je 0x140056167
mov r12, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0xc0]
cmp al, 2
jb 0x140056101
mov r13, qword [rsp + 0x88]
lea rcx, [r13 + 0x18]
mov rax, qword [r13]
mov rdx, qword [r13 + 8]
mov r8, qword [r13 + 0x10]
call qword [rax + 0x10]
mov rcx, qword [0x140189110]
xor edx, edx
mov r8, r13
call fcn.14011631c
lea rcx, [rsp + 0xa8]
mov rax, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x98]
mov r8, qword [rsp + 0xa0]
call qword [rax + 0x10]
test r12, r12
je 0x140056167
test rbx, rbx
je 0x140056151
mov r13, r12
nop word cs:[rax + rax]
mov rcx, r13
call fcn.1400260f0
add r13, 0x48
dec rbx
jne 0x140056140
test rsi, rsi
je 0x140056167
mov rcx, qword [0x140189110]
xor edx, edx
mov r8, r12
call fcn.14011631c
mov esi, dword [rsp + 0x28]
mov eax, esi
cmp esi, 0x3b9aca00
sete bpl
mov r13, qword [rsp + 0xe8]
mov rdi, qword [rsp + 0x48]
jne 0x140056b86
cmp qword [rdi + 0x38], 0
je 0x1400562ea
movdqa xmm0, xmmword [rsp + 0x100]
movdqa xmm1, xmmword [rsp + 0x110]
movdqa xmm2, xmmword [rsp + 0x120]
movdqa xmm3, xmmword [rsp + 0x130]
movdqa xmmword [rsp + 0x1f0], xmm3
movdqa xmmword [rsp + 0x1e0], xmm2
movdqa xmmword [rsp + 0x1d0], xmm1
movdqa xmmword [rsp + 0x1c0], xmm0
mov bpl, 1
mov esi, 0x3b9aca00
mov rbx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
test al, al
jne 0x140056c21
jmp 0x140056c07
lea rcx, [r14 + 0x10]
movzx edx, byte [rcx + 0x30]
mov byte [rsp + 0x1f0], dl
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqu xmm2, xmmword [rcx + 0x20]
movdqa xmmword [rsp + 0x1e0], xmm2
movdqa xmmword [rsp + 0x1d0], xmm1
movdqa xmmword [rsp + 0x1c0], xmm0
mov ecx, dword [r14 + 0x42]
mov dword [rsp + 0x40], ecx
movzx ecx, word [r14 + 0x46]
mov word [rsp + 0x44], cx
xor ecx, ecx
xchg byte [r14 + 0x48], cl
cmp al, 3
jne 0x140056397
mov rsi, qword [rdi + 0x38]
test rsi, rsi
je 0x1400562c8
mov bl, 1
mov al, 1
xchg byte [rsi + 0x80], al
mov al, 1
xchg byte [rsi + 0x60], al
test al, al
jne 0x14005628c
mov rax, qword [rsi + 0x50]
mov rcx, qword [rsi + 0x58]
mov qword [rsi + 0x50], 0
xor edx, edx
xchg byte [rsi + 0x60], dl
test rax, rax
je 0x14005628c
call qword [rax + 0x18]
xchg byte [rsi + 0x78], bl
test bl, bl
jne 0x1400562b0
mov rax, qword [rsi + 0x68]
mov rcx, qword [rsi + 0x70]
mov qword [rsi + 0x68], 0
xor edx, edx
xchg byte [rsi + 0x78], dl
test rax, rax
je 0x1400562b0
call qword [rax + 8]
mov rdi, qword [rsp + 0x48]
mov rax, qword [rdi + 0x38]
lock dec qword [rax]
jne 0x1400562c8
mov rcx, qword [rdi + 0x38]
call fcn.140029380
mov qword [rdi + 0x38], r14
mov byte [rsp + 0x1b8], 4
movzx eax, byte [rsp + 0x1b8]
cmp eax, 4
jne 0x1400556f2
jmp 0x140056c46
movzx eax, byte [0x1401891c0]
mov rcx, qword [0x140189110]
test rcx, rcx
mov rsi, qword [rsp + 0x30]
jne 0x14005631a
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x1400573b2
mov rcx, rax
mov qword [0x140189110], rax
mov r8d, 0x88
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x1400573b2
mov rbx, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov byte [rax + 0x41], 2
mov byte [rax + 0x48], 0
mov qword [rax + 0x50], 0
mov byte [rax + 0x60], 0
mov qword [rax + 0x68], 0
mov byte [rax + 0x78], 0
mov byte [rax + 0x80], 0
lock inc qword [rax]
jle 0x1400573ae
movzx eax, byte [rdi]
test rax, rax
mov dword [rsp + 0x58], ebp
je 0x1400564de
cmp eax, 1
jne 0x1400564e2
movzx ecx, byte [rdi + 1]
mov al, 1
jmp 0x14005651f
movdqa xmm0, xmmword [rsp + 0x1c0]
movdqa xmm1, xmmword [rsp + 0x1d0]
movdqa xmm2, xmmword [rsp + 0x1e0]
movdqa xmmword [rsp + 0x120], xmm2
movzx ecx, byte [rsp + 0x1f0]
mov byte [rsp + 0x130], cl
movdqa xmmword [rsp + 0x110], xmm1
movdqa xmmword [rsp + 0x100], xmm0
mov byte [rsp + 0x131], al
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x132], eax
movzx eax, word [rsp + 0x44]
mov word [rsp + 0x136], ax
mov rax, qword [rsp + 0x128]
movzx eax, byte [rax + 0x10]
test al, al
je 0x1400564b5
movzx eax, byte [0x1401891c0]
mov rcx, qword [0x140189110]
test rcx, rcx
jne 0x14005643a
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x140057354
mov rcx, rax
mov qword [0x140189110], rax
mov r8d, 0x38
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x140057354
mov byte [rax + 0x29], 2
mov byte [rax + 0x30], 4
mov qword [rax], 1
lea rcx, [0x14011ef18]
mov qword [rax + 8], rcx
mov qword [rsp + 0x148], rax
mov byte [rsp + 0x1b8], 2
lea rcx, [rsp + 0x100]
call fcn.1400260f0
jmp 0x140055675
cmp byte [rsp + 0x90], 2
jne 0x140056967
mov rax, qword [rsp + 0x80]
mov rax, qword [rax + 0x10]
cmp rax, 3
je 0x140055aa0
jmp 0x14005697d
cmp byte [rsp + 0x110], 2
jne 0x140056a08
mov rax, qword [rsp + 0x100]
mov rax, qword [rax + 0x10]
cmp rax, 3
je 0x14005640f
jmp 0x140056a1e
xor eax, eax
jmp 0x14005651f
movzx eax, byte [0x1401891c0]
mov ecx, 0x20
mov edx, 8
call fcn.140082d50
test rax, rax
je 0x1400573f8
mov r13, rax
mov rax, qword [rdi + 8]
lea rdx, [rax + 0x18]
mov r10, qword [rax]
mov r8, qword [rax + 8]
mov r9, qword [rax + 0x10]
mov rcx, r13
call qword [r10]
mov al, 2
mov qword [rsp + 0xf8], rbx
mov byte [rsp + 0x80], al
mov byte [rsp + 0x81], cl
mov qword [rsp + 0x88], r13
lea rcx, [rsp + 0x90]
lea rdx, [rdi + 0x28]
mov rax, qword [rdi + 0x10]
mov r8, qword [rdi + 0x18]
mov r9, qword [rdi + 0x20]
call qword [rax]
lea rax, [rsi + 0x90]
mov qword [rsp + 0x240], rax
mov rcx, qword [rsi + 0xb0]
mov rdx, qword [rsi + 0xb8]
lea r8, [rsp + 0x80]
call fcn.140026840
mov r13, rax
mov rdi, qword [rsi + 0x90]
mov rbx, qword [rsi + 0x98]
shr rax, 0x39
mov qword [rsp + 0x238], rax
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
movzx eax, byte [rsp + 0x80]
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x70], rax
movzx eax, byte [rsp + 0x81]
mov byte [rsp + 0x60], al
mov r10, qword [rsp + 0x98]
mov r11, qword [rsp + 0xa0]
mov qword [rsp + 0x68], r11
neg r11
xor eax, eax
mov qword [rsp + 0xf0], rax
pcmpeqd xmm1, xmm1
mov qword [rsp + 0x258], r13
mov qword [rsp + 0x78], rdi
and r13, rbx
movdqu xmm2, xmmword [rdi + r13]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb r8d, xmm3
test r8d, r8d
jne 0x14005668a
pcmpeqb xmm2, xmm1
pmovmskb r8d, xmm2
test r8d, r8d
jne 0x1400571ad
mov rax, qword [rsp + 0xf0]
add r13, rax
add r13, 0x10
add rax, 0x10
mov qword [rsp + 0xf0], rax
jmp 0x140056608
mov eax, dword [rsp + 0x50]
cmp eax, 1
je 0x140056750
test eax, eax
je 0x14005733a
lea r8d, [r9 - 1]
and r8d, r9d
test r8w, r8w
mov rdi, qword [rsp + 0x78]
mov rbx, rdx
je 0x140056623
mov r9d, r8d
tzcnt r8d, r9d
add r8, r13
mov rdx, rbx
and r8, rbx
neg r8
lea r8, [r8 + r8*4]
shl r8, 4
lea rbx, [rdi + r8]
movzx r8d, byte [rdi + r8 - 0x50]
cmp r8, 1
je 0x140056660
cmp r8d, 2
jne 0x14005733a
mov eax, dword [rsp + 0x50]
cmp eax, 2
jne 0x14005666d
mov r8, qword [rbx - 0x48]
mov rbp, qword [r8 + 0x10]
mov rax, qword [rsp + 0x70]
cmp rbp, qword [rax + 0x10]
jne 0x140056675
mov rdi, qword [r8 + 8]
mov rax, qword [rsp + 0x70]
mov r14, qword [rax + 8]
mov rsi, rbp
neg rsi
mov r8, 0xffffffffffffffff
nop word cs:[rax + rax]
lea r15, [rsi + r8]
cmp r15, 0xffffffffffffffff
je 0x140056770
movzx r15d, byte [rdi + r8 + 1]
movzx r12d, byte [r14 + r8 + 1]
lea ecx, [r15 - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
lea eax, [r12 - 0x41]
cmp al, 0x1a
setb al
shl al, 5
or cl, r15b
or al, r12b
inc r8
cmp cl, al
je 0x140056700
cmp r8, rbp
jb 0x140056675
jmp 0x140056770
cmp byte [rbx - 0x4f], 0
je 0x140056762
cmp byte [rsp + 0x60], 0
jne 0x140056770
jmp 0x140056675
cmp byte [rsp + 0x60], 0
jne 0x140056675
nop dword [rax]
mov rax, qword [rsp + 0x68]
cmp qword [rbx - 0x30], rax
jne 0x140056675
mov rsi, qword [rbx - 0x38]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
lea rax, [r11 + r8]
cmp rax, 0xffffffffffffffff
je 0x1400567dd
movzx eax, byte [rsi + r8 + 1]
movzx ecx, byte [r10 + r8 + 1]
lea edi, [rax - 0x41]
cmp dil, 0x1a
setb dil
shl dil, 5
lea ebp, [rcx - 0x41]
cmp bpl, 0x1a
setb bpl
shl bpl, 5
or dil, al
or bpl, cl
inc r8
cmp dil, bpl
je 0x140056790
cmp r8, qword [rsp + 0x68]
jb 0x140056675
movdqu xmm0, xmmword [rsp + 0x80]
movdqu xmm1, xmmword [rsp + 0x90]
movdqu xmm2, xmmword [rsp + 0xa0]
movdqa xmmword [rsp + 0x220], xmm2
movdqa xmmword [rsp + 0x210], xmm1
movdqa xmmword [rsp + 0x200], xmm0
movdqa xmmword [rsp + 0x80], xmm0
movdqa xmmword [rsp + 0xa0], xmm2
movdqa xmmword [rsp + 0x90], xmm1
mov qword [rsp + 0xb0], rbx
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0xb8], rax
movzx eax, byte [rsp + 0x80]
cmp al, 3
mov r13, qword [rsp + 0xe8]
mov rsi, qword [rsp + 0x248]
mov ebp, dword [rsp + 0x58]
mov r14, qword [rsp + 0xf8]
je 0x1400568c9
cmp al, 2
jb 0x1400568a6
mov r13, qword [rsp + 0x88]
lea rcx, [r13 + 0x18]
mov rax, qword [r13]
mov rdx, qword [r13 + 8]
mov r8, qword [r13 + 0x10]
call qword [rax + 0x10]
mov rcx, qword [0x140189110]
xor edx, edx
mov r8, r13
mov r13, qword [rsp + 0xe8]
call fcn.14011631c
lea rcx, [rsp + 0xa8]
mov rax, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x98]
mov r8, qword [rsp + 0xa0]
call qword [rax + 0x10]
mov rcx, qword [rbx - 0x18]
mov rax, qword [rbx - 8]
cmp rax, rcx
jne 0x1400568e7
lea rcx, [rbx - 0x20]
call fcn.140028d20
mov rcx, qword [rbx - 0x18]
mov rax, qword [rbx - 8]
mov rdx, qword [rbx - 0x10]
add rdx, rax
xor r8d, r8d
cmp rdx, rcx
cmovae r8, rcx
sub rdx, r8
mov rcx, qword [rbx - 0x20]
mov qword [rcx + rdx*8], r14
inc rax
mov qword [rbx - 8], rax
movzx eax, byte [r14 + 0x80]
test al, al
mov rdi, qword [rsp + 0x48]
jne 0x140056a7a
mov rax, qword [rsi]
mov rdx, qword [rax]
mov rcx, qword [rax + 8]
call qword [rdx]
mov rbx, rax
mov r13, rdx
mov al, 1
xchg byte [r14 + 0x60], al
test al, al
je 0x140056a3f
mov rcx, r13
call qword [rbx + 0x18]
mov r13, qword [rsp + 0xe8]
mov rdi, qword [rsp + 0x48]
jmp 0x140056a7a
call fcn.1400d9020
xor al, 1
mov dword [rsp + 0x3c], eax
jmp 0x14005574f
mov rax, qword [rsp + 0x80]
mov rax, qword [rax + 0x10]
cmp rax, 1
jne 0x140055aa0
mov r12, qword [rsp + 0xb8]
mov esi, dword [rsp + 0xc0]
cmp dword [rsp + 0x2c], 0x3b9aca00
mov dword [rsp + 0x28], esi
je 0x140056de6
call fcn.1400d59b0
mov qword [rsp + 0x148], rax
mov dword [rsp + 0x150], edx
lea rcx, [rsp + 0x148]
mov rdx, r12
mov r8d, esi
call fcn.1400d5b50
xor ecx, ecx
cmp edx, 0x3b9aca00
cmovne rcx, rax
mov r8, qword [rsp + 0xf8]
cmp rcx, r8
jb 0x140056de6
cmp edx, 0x3b9aca00
setne al
cmp edx, dword [rsp + 0x2c]
seta dl
cmp rcx, r8
jne 0x140055aa0
and al, dl
je 0x140056de6
jmp 0x140055aa0
mov rax, qword [rsp + 0x100]
mov rax, qword [rax + 0x10]
cmp rax, 1
jne 0x14005640f
mov rdx, qword [rdi + 0x30]
lea rcx, [rsp + 0x148]
lea r9, [rsp + 0x100]
mov r8, rdi
call fcn.140033a10
jmp 0x140055675
mov rax, qword [r14 + 0x50]
test rax, rax
je 0x140056a4f
mov rcx, qword [r14 + 0x58]
call qword [rax + 0x18]
mov qword [r14 + 0x50], rbx
mov qword [r14 + 0x58], r13
xor eax, eax
xchg byte [r14 + 0x60], al
movzx eax, byte [r14 + 0x80]
test al, al
mov r13, qword [rsp + 0xe8]
mov rdi, qword [rsp + 0x48]
je 0x140056b02
mov al, 1
xchg byte [r14 + 0x48], al
test al, al
jne 0x1400573c9
movzx eax, byte [r14 + 0x41]
mov byte [r14 + 0x41], 2
cmp al, 2
je 0x1400573c3
mov rcx, r14
add rcx, 0x10
movzx edx, byte [rcx + 0x30]
mov byte [rsp + 0xb0], dl
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqu xmm2, xmmword [rcx + 0x20]
movdqa xmmword [rsp + 0xa0], xmm2
movdqa xmmword [rsp + 0x90], xmm1
movdqa xmmword [rsp + 0x80], xmm0
mov ecx, dword [r14 + 0x42]
mov dword [rsp + 0xb2], ecx
movzx ecx, word [r14 + 0x46]
mov word [rsp + 0xb6], cx
mov byte [rsp + 0xb1], al
xor ecx, ecx
xchg byte [r14 + 0x48], cl
cmp al, 3
jne 0x1400573d1
mov rsi, qword [rdi + 0x38]
test rsi, rsi
je 0x140056b77
mov bl, 1
mov al, 1
xchg byte [rsi + 0x80], al
mov al, 1
xchg byte [rsi + 0x60], al
test al, al
jne 0x140056b3b
mov rax, qword [rsi + 0x50]
mov rcx, qword [rsi + 0x58]
mov qword [rsi + 0x50], 0
xor edx, edx
xchg byte [rsi + 0x60], dl
test rax, rax
je 0x140056b3b
call qword [rax + 0x18]
xchg byte [rsi + 0x78], bl
test bl, bl
jne 0x140056b5f
mov rax, qword [rsi + 0x68]
mov rcx, qword [rsi + 0x70]
mov qword [rsi + 0x68], 0
xor edx, edx
xchg byte [rsi + 0x78], dl
test rax, rax
je 0x140056b5f
call qword [rax + 8]
mov rdi, qword [rsp + 0x48]
mov rax, qword [rdi + 0x38]
lock dec qword [rax]
jne 0x140056b77
mov rcx, qword [rdi + 0x38]
call fcn.140029380
mov qword [rdi + 0x38], r14
mov eax, dword [rsp + 0x188]
mov esi, dword [rsp + 0x28]
movdqa xmm0, xmmword [rsp + 0x100]
movdqa xmm1, xmmword [rsp + 0x110]
movdqa xmm2, xmmword [rsp + 0x120]
movdqa xmm3, xmmword [rsp + 0x130]
movdqa xmmword [rsp + 0x1f0], xmm3
movdqa xmmword [rsp + 0x1e0], xmm2
movdqa xmmword [rsp + 0x1d0], xmm1
movdqa xmmword [rsp + 0x1c0], xmm0
cmp eax, 0x3b9aca00
sete al
mov ecx, dword [rsp + 0x2c]
or cl, al
je 0x140056bed
mov rbx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
test al, al
jne 0x140056c21
jmp 0x140056c07
lea rcx, [rsp + 0x148]
call fcn.1400260f0
mov rbx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
test al, al
jne 0x140056c21
movabs rax, 0x7fffffffffffffff
mov rcx, qword [0x1401891b8]
test rcx, rax
jne 0x140056dcd
mov rcx, qword [rsp + 0x250]
call fcn.1401162b4
test bpl, bpl
je 0x140056cf0
mov byte [rsp + 0x1b8], 2
cmp qword [rdi + 0x30], 0
je 0x140056c5f
mov byte [r13 + 0x70], 3
add rsp, 0x268
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movzx eax, byte [0x1401891c0]
mov rcx, qword [0x140189110]
test rcx, rcx
jne 0x140056c8a
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x140057354
mov rcx, rax
mov qword [0x140189110], rax
mov r8d, 0x38
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x140057354
mov rdi, rax
mov qword [rax], 0
mov byte [rax + 0x29], 2
mov byte [rax + 0x30], 4
lea rdx, str.pool_is_disabled_Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_common_lazy.rs
mov r8d, 0x10
mov rcx, rax
call fcn.14002ad60
mov qword [r13], rdi
mov byte [r13 + 0x70], 2
cmp byte [rsp + 0x1b8], 2
je 0x140056c4b
lea rcx, [rsp + 0x148]
call fcn.140020690
jmp 0x140056c4b
movaps xmm0, xmmword [rsp + 0x1c0]
movaps xmm1, xmmword [rsp + 0x1d0]
movaps xmm2, xmmword [rsp + 0x1e0]
movaps xmm3, xmmword [rsp + 0x1f0]
movaps xmmword [rsp + 0xb0], xmm3
movaps xmmword [rsp + 0xa0], xmm2
movaps xmmword [rsp + 0x90], xmm1
movaps xmmword [rsp + 0x80], xmm0
mov dword [rsp + 0xc0], esi
mov rdx, qword [rdi + 0x30]
lea rcx, [rsp + 0x148]
lea r9, [rsp + 0x80]
mov r8, rdi
call fcn.140033a10
cmp byte [rsp + 0x1b8], 2
je 0x140056c3f
mov rax, qword [rsp + 0x1b8]
mov qword [r13 + 0x70], rax
movups xmm0, xmmword [rsp + 0x1a8]
movups xmmword [r13 + 0x60], xmm0
movups xmm0, xmmword [rsp + 0x198]
movups xmmword [r13 + 0x50], xmm0
movups xmm0, xmmword [rsp + 0x188]
movups xmmword [r13 + 0x40], xmm0
movups xmm0, xmmword [rsp + 0x148]
movups xmm1, xmmword [rsp + 0x158]
movups xmm2, xmmword [rsp + 0x168]
movups xmm3, xmmword [rsp + 0x178]
movups xmmword [r13 + 0x30], xmm3
movups xmmword [r13 + 0x20], xmm2
movups xmmword [r13 + 0x10], xmm1
movups xmmword [r13], xmm0
jmp 0x140056c4b
call fcn.1400d9020
test al, al
jne 0x140056c21
mov byte [rbx + 0x18], 1
jmp 0x140056c21
mov r14, r15
mov r13, qword [rsp + 0x80]
mov r9, qword [rsp + 0x88]
movzx edx, byte [rsp + 0x90]
mov rbp, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xa8]
movzx esi, byte [rsp + 0xb0]
movzx r10d, byte [rsp + 0xb1]
lea rcx, [rsp + 0xb2]
cmp dl, 2
jne 0x140056e51
mov byte [rsp + 0x50], r10b
mov byte [rsp + 0x78], dl
test rbp, rbp
je 0x140056ebc
mov rcx, rbp
mov rdi, r9
call qword [r15 + 0x18]
mov r9, rdi
jmp 0x140056ebe
movzx eax, word [rcx + 4]
mov word [rsp + 0x44], ax
mov eax, dword [rcx]
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x91]
mov ecx, dword [rsp + 0x94]
mov dword [rsp + 0x100], eax
mov dword [rsp + 0x103], ecx
mov qword [rsp + 0x107], rbp
mov qword [rsp + 0x10f], r15
mov qword [rsp + 0x117], rbx
mov byte [rsp + 0x11f], sil
lea rax, [rsp + 0x40]
lea rcx, [rsp + 0x100]
mov rdi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x30]
mov esi, dword [rsp + 0x28]
jmp 0x140057026
xor eax, eax
lock inc qword [rbx]
jle 0x1400573ae
lock inc qword [r13]
movzx ecx, byte [rsp + 0x50]
lea r8, [rsp + 0xb2]
jle 0x1400573ae
lock inc qword [r9 + 0x1c8]
lock inc qword [r9]
jle 0x1400573ae
mov qword [rsp + 0x207], rax
mov qword [rsp + 0x20f], rdx
mov qword [rsp + 0x217], rbx
mov byte [rsp + 0x21f], sil
mov qword [rsp + 0x107], rbp
mov qword [rsp + 0x10f], r15
mov qword [rsp + 0x117], rbx
mov byte [rsp + 0x11f], sil
mov eax, dword [r8]
mov dword [rsp + 0x40], eax
movzx eax, word [r8 + 4]
mov word [rsp + 0x44], ax
cmp cl, 2
jne 0x140056f6b
mov r10b, 2
lea rax, [rsp + 0x40]
lea rcx, [rsp + 0x100]
mov rdi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x30]
mov esi, dword [rsp + 0x28]
jmp 0x140057021
mov r15, r9
call fcn.1400d59b0
mov qword [rsp + 0x70], rax
mov ebp, edx
mov rdx, qword [r14 - 8]
cmp rdx, qword [r14 - 0x10]
mov rdi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x30]
jne 0x140056f9b
lea rcx, [r14 - 0x18]
call fcn.1400b4e50
mov rdx, qword [r14 - 8]
mov esi, dword [rsp + 0x28]
mov r9, r15
mov rax, qword [r14 - 0x18]
lea rcx, [rdx + rdx*8]
mov qword [rax + rcx*8], r13
mov qword [rax + rcx*8 + 8], r15
mov byte [rax + rcx*8 + 0x10], 2
movdqu xmm0, xmmword [rsp + 0x100]
movdqu xmm1, xmmword [rsp + 0x110]
movdqu xmmword [rax + rcx*8 + 0x11], xmm0
movdqu xmmword [rax + rcx*8 + 0x21], xmm1
movzx r10d, byte [rsp + 0x50]
mov byte [rax + rcx*8 + 0x31], r10b
lea r11, [rsp + 0xb2]
mov r8d, dword [r11]
mov dword [rax + rcx*8 + 0x32], r8d
movzx r8d, word [r11 + 4]
mov word [rax + rcx*8 + 0x36], r8w
mov r8, qword [rsp + 0x70]
mov qword [rax + rcx*8 + 0x38], r8
mov dword [rax + rcx*8 + 0x40], ebp
inc rdx
mov qword [r14 - 8], rdx
lea rax, [rsp + 0x262]
lea rcx, [rsp + 0x200]
movzx edx, byte [rsp + 0x78]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rsp + 0x169], xmm1
movups xmmword [rsp + 0x159], xmm0
mov ecx, dword [rax]
mov dword [rsp + 0x17a], ecx
movzx eax, word [rax + 4]
mov word [rsp + 0x17e], ax
cmp qword [r14 - 8], 0
mov qword [rsp + 0x148], r13
mov qword [rsp + 0x150], r9
mov byte [rsp + 0x158], dl
mov byte [rsp + 0x179], r10b
mov qword [rsp + 0x180], r12
mov dword [rsp + 0x188], esi
sete byte [rsp + 0x190]
movzx eax, byte [rsp + 0x178]
mov byte [rsp + 0x130], al
movzx eax, byte [rsp + 0x179]
mov byte [rsp + 0x131], al
mov eax, dword [rsp + 0x17a]
mov dword [rsp + 0x132], eax
movzx eax, word [rsp + 0x17e]
mov word [rsp + 0x136], ax
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x138], rax
movzx eax, byte [rsp + 0x158]
mov byte [rsp + 0x110], al
mov rax, qword [rsp + 0x159]
mov qword [rsp + 0x111], rax
mov eax, dword [rsp + 0x161]
mov dword [rsp + 0x119], eax
movzx eax, word [rsp + 0x165]
mov word [rsp + 0x11d], ax
movzx eax, byte [rsp + 0x167]
mov byte [rsp + 0x11f], al
movups xmm0, xmmword [rsp + 0x148]
movaps xmmword [rsp + 0x100], xmm0
movups xmm0, xmmword [rsp + 0x168]
movaps xmmword [rsp + 0x120], xmm0
je 0x1400571a2
movups xmm0, xmmword [rsp + 0x148]
movups xmm1, xmmword [rsp + 0x158]
movups xmm2, xmmword [rsp + 0x168]
movups xmm3, xmmword [rsp + 0x178]
movaps xmmword [rsp + 0x1f0], xmm3
movaps xmmword [rsp + 0x1e0], xmm2
movaps xmmword [rsp + 0x1d0], xmm1
movaps xmmword [rsp + 0x1c0], xmm0
xor ebp, ebp
mov r13, qword [rsp + 0xe8]
mov eax, dword [rsp + 0x3c]
test al, al
jne 0x140056c21
jmp 0x140056c07
mov al, 1
mov dword [rsp + 0x2c], eax
jmp 0x140055c42
mov rsi, qword [rsp + 0x30]
cmp qword [rsi + 0xa0], 0
mov r14, qword [rsp + 0xf8]
je 0x140057313
movups xmm0, xmmword [rsp + 0x80]
movdqu xmm1, xmmword [rsp + 0x90]
movdqu xmm2, xmmword [rsp + 0xa0]
movdqa xmmword [rsp + 0x220], xmm2
movdqa xmmword [rsp + 0x210], xmm1
movaps xmmword [rsp + 0x200], xmm0
mov rax, qword [rsp + 0x258]
and rax, rbx
movdqu xmm0, xmmword [rdi + rax]
pmovmskb edx, xmm0
test edx, edx
mov r13, qword [rsp + 0xe8]
mov rsi, qword [rsp + 0x248]
mov ebp, dword [rsp + 0x58]
je 0x140057232
mov rcx, qword [rsp + 0x238]
jmp 0x140057257
mov r8d, 0x10
mov rcx, qword [rsp + 0x238]
add rax, r8
and rax, rbx
movdqu xmm0, xmmword [rdi + rax]
pmovmskb edx, xmm0
add r8, 0x10
test edx, edx
je 0x140057240
tzcnt edx, edx
add rdx, rax
and rdx, rbx
movzx r8d, byte [rdi + rdx]
test r8b, r8b
js 0x14005727c
movdqa xmm0, xmmword [rdi]
pmovmskb eax, xmm0
tzcnt edx, eax
movzx r8d, byte [rdi + rdx]
lea rax, [rdx - 0x10]
and rax, rbx
mov byte [rdi + rdx], cl
mov byte [rax + rdi + 0x10], cl
neg rdx
lea rax, [rdx + rdx*4]
shl rax, 4
lea rbx, [rdi + rax]
and r8b, 1
movzx ecx, r8b
mov rdx, qword [rsp + 0x30]
sub qword [rdx + 0xa0], rcx
movdqa xmm0, xmmword [rsp + 0x200]
movdqa xmm1, xmmword [rsp + 0x210]
movdqa xmm2, xmmword [rsp + 0x220]
movdqu xmmword [rdi + rax - 0x30], xmm2
movdqu xmmword [rdi + rax - 0x40], xmm1
movdqu xmmword [rdi + rax - 0x50], xmm0
mov qword [rdi + rax - 0x20], 8
pxor xmm0, xmm0
movdqu xmmword [rdi + rax - 0x18], xmm0
mov qword [rdi + rax - 8], 0
inc qword [rdx + 0xa8]
mov rcx, qword [rbx - 0x18]
mov rax, qword [rbx - 8]
cmp rax, rcx
je 0x1400568d6
jmp 0x1400568e7
lea rdx, [rsi + 0xb0]
mov rcx, qword [rsp + 0x240]
call fcn.140064d90
mov rdi, qword [rsi + 0x90]
mov rbx, qword [rsi + 0x98]
jmp 0x1400571c8
lea rcx, str.internal_error:_entered_unreachable_code_rustc_a28077b28a02b92985b3a3faecf92813155f1ea1library_std_src_threadmod.rs
lea r8, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_http_0.2.11_src_uri_scheme.rs
mov edx, 0x28
call fcn.140086940
ud2
mov ecx, 8
mov edx, 0x38
call fcn.140083160
ud2
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x148], rax
mov eax, dword [rsp + 0x3c]
mov byte [rsp + 0x150], al
lea rax, [0x140120c88]
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x140120568]
lea r8, [rsp + 0x148]
mov edx, 0x2b
call fcn.140088240
ud2
ud2
mov ecx, 8
mov edx, 0x88
call fcn.140083160
ud2
xor eax, eax
xchg byte [r14 + 0x48], al
mov byte [rsp + 0xb1], 2
lea rcx, [rsp + 0x80]
call fcn.140023190
lea rcx, str.assertion_failed:_Pin::new_mut_rx_.poll_cx_.is_pending__
lea r8, [0x140120ce0]
mov edx, 0x39
call fcn.140086940
ud2
mov ecx, 8
mov edx, 0x20
call fcn.140083160
ud2