Function at 0x180095710
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x298
mov r13, r8
mov rdi, rdx
mov rbp, rcx
mov r14, qword [rdx + 0x38]
mov qword [rdx + 0x38], 0
test r14, r14
je 0x180095779
movzx eax, byte [r14 + 0x80]
test al, al
jne 0x1800957c2
mov rax, qword [r13]
mov rdx, qword [rax]
mov rcx, qword [rax + 8]
call qword [rdx]
mov r15, rax
mov r12, rdx
lea rax, [r14 + 0x50]
mov cl, 1
xchg byte [r14 + 0x60], cl
xor esi, esi
test cl, cl
cmove rsi, rax
je 0x180095797
mov rcx, r12
call qword [r15 + 0x18]
jmp 0x1800957c2
mov byte [rsp + 0x1d8], 3
movzx eax, byte [rsp + 0x1d8]
cmp eax, 4
jne 0x1800958ee
jmp 0x180096ebb
mov rax, qword [rsi]
test rax, rax
je 0x1800957a6
mov rcx, qword [rsi + 8]
call qword [rax + 0x18]
mov qword [rsi], r15
mov qword [rsi + 8], r12
xor eax, eax
xchg byte [rsi + 0x10], al
movzx eax, byte [r14 + 0x80]
test al, al
je 0x180096275
lea rax, [r14 + 0x10]
mov dl, 1
xchg byte [r14 + 0x48], dl
xor ecx, ecx
test dl, dl
cmove rcx, rax
je 0x180095804
movzx eax, byte [0x180247060]
mov rcx, qword [0x180246f98]
test rcx, rcx
jne 0x18009582c
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800974f0
mov rcx, rax
mov qword [0x180246f98], rax
jmp 0x18009582c
movzx eax, byte [rcx + 0x31]
mov byte [rcx + 0x31], 2
cmp al, 2
jne 0x18009621e
xor eax, eax
xchg byte [rcx + 0x38], al
movzx eax, byte [0x180247060]
mov rcx, qword [0x180246f98]
test rcx, rcx
je 0x1800957e9
mov r8d, 0x18
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800974f0
mov r15, rax
mov qword [rax], 0
mov byte [rax + 0x10], 4
lea rdx, str.request_has_been_canceled
mov r8d, 0x19
mov rcx, rax
call fcn.180098d10
mov qword [rsp + 0x168], r15
mov byte [rsp + 0x1d8], 2
mov bl, 1
mov al, 1
xchg byte [r14 + 0x80], al
mov al, 1
xchg byte [r14 + 0x60], al
test al, al
jne 0x1800958a9
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 0x1800958a9
call qword [rax + 0x18]
xchg byte [r14 + 0x78], bl
test bl, bl
jne 0x1800958cf
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 0x1800958cf
call qword [rax + 8]
lock dec qword [r14]
jne 0x1800958dd
mov rcx, r14
call fcn.18009a960
movzx eax, byte [rsp + 0x1d8]
cmp eax, 4
je 0x180096ebb
cmp eax, 3
je 0x180095911
cmp eax, 2
jne 0x180095e22
mov rax, qword [rsp + 0x168]
mov qword [rbp], rax
mov byte [rbp + 0x70], 2
jmp 0x180096ebf
mov rsi, qword [rdi + 0x30]
test rsi, rsi
je 0x180096eac
lea rcx, [rsi + 0x10]
mov qword [rsp + 0x270], rcx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov rax, qword [0x180247020]
shl rax, 1
test rax, rax
jne 0x180096bdb
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x268], r13
movzx eax, byte [rsi + 0x18]
test al, al
jne 0x180096bfa
mov qword [rsp + 0x40], rsi
cmp qword [rsi + 0x78], 0
mov qword [rsp + 0x60], rbp
mov qword [rsp + 0x70], rdi
je 0x180095f28
mov rsi, qword [rsp + 0x40]
mov rax, qword [rsi + 0xd0]
mov qword [rsp + 0x118], rax
mov eax, dword [rsi + 0xd8]
mov dword [rsp + 0x38], eax
mov rcx, qword [rsi + 0x80]
mov rdx, qword [rsi + 0x88]
mov r8, rdi
call fcn.1800a0cf0
mov rdx, qword [rsi + 0x60]
mov r8, qword [rsi + 0x68]
mov rcx, rax
shr rcx, 0x39
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
lea rcx, [rdx - 0x48]
mov qword [rsp + 0x88], rcx
movzx r9d, byte [rdi]
mov rcx, qword [rdi + 8]
mov qword [rsp + 0x80], rcx
movzx ecx, byte [rdi + 1]
mov byte [rsp + 0x37], cl
mov rcx, qword [rdi + 0x18]
mov qword [rsp + 0x90], rcx
mov rcx, qword [rdi + 0x20]
mov qword [rsp + 0x78], rcx
neg rcx
mov qword [rsp + 0x98], rcx
xor ecx, ecx
mov qword [rsp + 0x68], rcx
pcmpeqd xmm1, xmm1
mov dword [rsp + 0x4c], r9d
mov qword [rsp + 0x58], rdx
and rax, r8
movdqu xmm2, xmmword [rdx + rax]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb ecx, xmm3
test ecx, ecx
jne 0x180095a9d
pcmpeqb xmm2, xmm1
pmovmskb ecx, xmm2
test ecx, ecx
mov rdi, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x58]
jne 0x180095f28
mov rcx, qword [rsp + 0x68]
add rax, rcx
add rax, 0x10
add rcx, 0x10
mov qword [rsp + 0x68], rcx
jmp 0x180095a28
test cl, cl
je 0x1800974d6
lea ecx, [rbp - 1]
and ecx, ebp
test cx, cx
mov r8, r14
mov rax, r12
mov r9d, dword [rsp + 0x4c]
je 0x180095a40
mov ebp, ecx
tzcnt ecx, ebp
mov r12, rax
add rcx, rax
mov r14, r8
and rcx, r8
neg rcx
lea rsi, [rcx + rcx*8]
mov rax, qword [rsp + 0x88]
lea rbx, [rax + rsi*8]
cmp r9d, 1
je 0x180095b70
cmp r9d, 2
jne 0x1800974d6
movzx ecx, byte [rbx]
cmp cl, 2
jne 0x180095a80
mov rax, qword [rsp + 0x80]
mov rcx, qword [rax + 0x10]
mov r11, qword [rbx + 8]
cmp rcx, qword [r11 + 0x10]
jne 0x180095a88
mov rax, qword [rsp + 0x80]
mov r13, qword [rax + 8]
mov r11, qword [r11 + 8]
mov rdi, rcx
neg rdi
mov r15, 0xffffffffffffffff
nop word cs:[rax + rax]
lea r10, [rdi + r15]
cmp r10, 0xffffffffffffffff
je 0x180095ba0
movzx r10d, byte [r13 + r15 + 1]
movzx r8d, byte [r11 + r15 + 1]
lea edx, [r10 - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
lea r9d, [r8 - 0x41]
cmp r9b, 0x1a
setb r9b
shl r9b, 5
or dl, r10b
or r9b, r8b
inc r15
cmp dl, r9b
je 0x180095b20
cmp r15, rcx
jb 0x180095a88
jmp 0x180095ba0
movzx ecx, byte [rbx]
cmp cl, 1
jne 0x180095a80
movzx ecx, byte [rbx + 1]
cmp byte [rsp + 0x37], 0
je 0x180095b90
test cl, cl
jne 0x180095ba0
jmp 0x180095a88
test cl, cl
jne 0x180095a88
nop dword [rax + rax]
mov rax, qword [rsp + 0x78]
cmp rax, qword [rbx + 0x20]
jne 0x180095a88
mov r11, qword [rbx + 0x18]
mov rcx, 0xffffffffffffffff
nop word [rax + rax]
mov rax, qword [rsp + 0x98]
lea rdx, [rax + rcx]
cmp rdx, 0xffffffffffffffff
je 0x180095c1e
mov rax, qword [rsp + 0x90]
movzx edx, byte [rax + rcx + 1]
movzx r8d, byte [r11 + rcx + 1]
lea r9d, [rdx - 0x41]
cmp r9b, 0x1a
setb r9b
shl r9b, 5
lea r10d, [r8 - 0x41]
cmp r10b, 0x1a
setb r10b
shl r10b, 5
or r9b, dl
or r10b, r8b
inc rcx
cmp r9b, r10b
je 0x180095bc0
cmp rcx, qword [rsp + 0x78]
jb 0x180095a88
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx + rsi*8 - 8]
test rax, rax
mov rdi, qword [rsp + 0x70]
je 0x180095f28
lea r12, [rcx + rsi*8]
add r12, 0xffffffffffffffe8
lea r15, [rsp + 0x168]
xor esi, esi
lea r14, [rsp + 0xa0]
jmp 0x180095c76
mov rcx, r14
call fcn.18009a9d0
mov rax, qword [r12 + 0x10]
test rax, rax
je 0x180095f28
dec rax
mov qword [r12 + 0x10], rax
mov rcx, qword [r12]
lea rdx, [rax + rax*8]
mov eax, dword [rcx + rdx*8 + 0x40]
cmp eax, 0x3b9aca00
je 0x180095f28
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 + 0xc0], xmm2
movdqa xmmword [rsp + 0xd0], xmm3
movdqa xmmword [rsp + 0xb0], xmm1
movdqa xmmword [rsp + 0xa0], xmm0
mov dword [rsp + 0xe0], eax
mov dword [rsp + 0xe4], edx
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x10]
test al, al
jne 0x180095c60
cmp byte [rsp + 0xb0], 2
jne 0x180095d17
mov rax, qword [rsp + 0xa0]
mov rax, qword [rax + 0x10]
cmp rax, 3
je 0x180095c60
jmp 0x180095d2d
mov rax, qword [rsp + 0xa0]
mov rax, qword [rax + 0x10]
cmp rax, 1
jne 0x180095c60
mov r13, qword [rsp + 0xd8]
mov ebx, dword [rsp + 0xe0]
cmp dword [rsp + 0x38], 0x3b9aca00
je 0x180095da0
call fcn.180125710
mov qword [rsp + 0x168], rax
mov dword [rsp + 0x170], edx
mov rcx, r15
mov rdx, r13
mov r8d, ebx
call fcn.1801258c0
cmp edx, 0x3b9aca00
cmove rax, rsi
mov r8, qword [rsp + 0x118]
cmp rax, r8
jb 0x180095da0
cmp edx, 0x3b9aca00
setne cl
cmp edx, dword [rsp + 0x38]
seta dl
cmp rax, r8
jne 0x180095c60
and cl, dl
jne 0x180095c60
mov dword [rsp + 0x58], ebx
mov r9, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xa8]
movzx edx, byte [rsp + 0xb0]
mov r14, qword [rsp + 0xb8]
mov rbp, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0xc8]
movzx edi, byte [rsp + 0xd0]
movzx r15d, byte [rsp + 0xd1]
lea r8, [rsp + 0xd2]
cmp dl, 2
jne 0x180096c43
mov qword [rsp + 0x98], rbx
mov ebx, r15d
mov byte [rsp + 0x90], dl
test r14, r14
je 0x180097046
mov rcx, r14
mov r15, r9
call qword [rbp + 0x20]
mov r9, r15
jmp 0x180097048
mov rcx, qword [rsp + 0x168]
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
movups xmm0, xmmword [rsp + 0x1b0]
movaps xmmword [rsp + 0xe0], xmm0
movups xmm0, xmmword [rsp + 0x1c0]
movaps xmmword [rsp + 0xf0], xmm0
mov rdx, qword [rsp + 0x1d0]
mov qword [rsp + 0x100], rdx
mov edx, dword [rsp + 0x1d9]
mov dword [rsp + 0x50], edx
mov edx, dword [rsp + 0x1dc]
mov dword [rsp + 0x53], edx
mov rdx, qword [rsp + 0x100]
mov qword [rbp + 0x68], rdx
movaps xmm0, xmmword [rsp + 0xf0]
movups xmmword [rbp + 0x58], xmm0
movaps xmm0, xmmword [rsp + 0xe0]
movups xmmword [rbp + 0x48], xmm0
movdqa xmm0, xmmword [rsp + 0xa0]
movdqa xmm1, xmmword [rsp + 0xb0]
movdqa xmm2, xmmword [rsp + 0xc0]
movdqa xmm3, xmmword [rsp + 0xd0]
movdqu xmmword [rbp + 0x38], xmm3
movdqu xmmword [rbp + 0x28], xmm2
movdqu xmmword [rbp + 0x18], xmm1
movdqu xmmword [rbp + 8], xmm0
mov edx, dword [rsp + 0x50]
mov r8d, dword [rsp + 0x53]
mov dword [rbp + 0x71], edx
mov dword [rbp + 0x74], r8d
mov qword [rbp], rcx
mov byte [rbp + 0x70], al
jmp 0x180096ebf
mov dword [rsp + 0x1a8], 0x3b9aca00
mov dword [rsp + 0x58], 0x3b9aca00
mov dword [rsp + 0x118], 0
mov rsi, qword [rsp + 0x40]
mov rcx, qword [rsi + 0x80]
mov rdx, qword [rsi + 0x88]
mov r8, rdi
call fcn.1800a0cf0
mov rdx, qword [rsi + 0x60]
mov r8, qword [rsi + 0x68]
mov rcx, rax
shr rcx, 0x39
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
lea rcx, [rdx - 0x48]
mov qword [rsp + 0x88], rcx
movzx r9d, byte [rdi]
mov rcx, qword [rdi + 8]
mov qword [rsp + 0x80], rcx
movzx ecx, byte [rdi + 1]
mov byte [rsp + 0x37], cl
mov rcx, qword [rdi + 0x18]
mov qword [rsp + 0x90], rcx
mov rcx, qword [rdi + 0x20]
mov qword [rsp + 0x78], rcx
neg rcx
mov qword [rsp + 0x98], rcx
xor ecx, ecx
mov qword [rsp + 0x38], rcx
pcmpeqd xmm1, xmm1
mov dword [rsp + 0x4c], r9d
mov qword [rsp + 0x68], rdx
and rax, r8
movdqu xmm2, xmmword [rdx + rax]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb ecx, xmm3
test ecx, ecx
jne 0x18009603f
pcmpeqb xmm2, xmm1
pmovmskb ecx, xmm2
test ecx, ecx
jne 0x180096487
mov rcx, qword [rsp + 0x38]
add rax, rcx
add rax, 0x10
add rcx, 0x10
mov qword [rsp + 0x38], rcx
mov rdx, qword [rsp + 0x68]
jmp 0x180095fdb
test cl, cl
je 0x1800974d6
lea ecx, [r15 - 1]
and ecx, r15d
test cx, cx
mov r8, rax
mov rax, r12
mov r9d, dword [rsp + 0x4c]
je 0x180095ff3
mov r15d, ecx
tzcnt esi, r15d
mov r12, rax
add rsi, rax
mov rax, r8
and rsi, r8
mov rcx, rsi
neg rcx
lea rbp, [rcx + rcx*8]
mov rcx, qword [rsp + 0x88]
lea rdi, [rcx + rbp*8]
cmp r9d, 1
je 0x180096110
cmp r9d, 2
jne 0x1800974d6
movzx ecx, byte [rdi]
cmp cl, 2
jne 0x180096020
mov rcx, qword [rsp + 0x80]
mov rcx, qword [rcx + 0x10]
mov r10, qword [rdi + 8]
cmp rcx, qword [r10 + 0x10]
jne 0x180096028
mov rdx, qword [rsp + 0x80]
mov r11, qword [rdx + 8]
mov r14, qword [r10 + 8]
mov r13, rcx
neg r13
mov r10, 0xffffffffffffffff
nop dword [rax + rax]
lea r8, [r10 + r13]
cmp r8, 0xffffffffffffffff
je 0x180096140
movzx r8d, byte [r11 + r10 + 1]
movzx edx, byte [r14 + r10 + 1]
lea r9d, [r8 - 0x41]
cmp r9b, 0x1a
setb r9b
shl r9b, 5
lea ebx, [rdx - 0x41]
cmp bl, 0x1a
setb bl
shl bl, 5
or r9b, r8b
or bl, dl
inc r10
cmp r9b, bl
je 0x1800960c0
cmp r10, rcx
jb 0x180096028
jmp 0x180096140
movzx ecx, byte [rdi]
cmp cl, 1
jne 0x180096020
movzx ecx, byte [rdi + 1]
cmp byte [rsp + 0x37], 0
je 0x180096130
test cl, cl
jne 0x180096140
jmp 0x180096028
test cl, cl
jne 0x180096028
nop dword [rax + rax]
mov rcx, qword [rsp + 0x78]
cmp rcx, qword [rdi + 0x20]
jne 0x180096028
mov r10, qword [rdi + 0x18]
mov rcx, 0xffffffffffffffff
nop word [rax + rax]
mov rdx, qword [rsp + 0x98]
add rdx, rcx
cmp rdx, 0xffffffffffffffff
je 0x1800961bd
mov rdx, qword [rsp + 0x90]
movzx edx, byte [rdx + rcx + 1]
movzx r8d, byte [r10 + rcx + 1]
lea r9d, [rdx - 0x41]
cmp r9b, 0x1a
setb r9b
shl r9b, 5
lea r11d, [r8 - 0x41]
cmp r11b, 0x1a
setb r11b
shl r11b, 5
or r9b, dl
or r11b, r8b
inc rcx
cmp r9b, r11b
je 0x180096160
cmp rcx, qword [rsp + 0x78]
jb 0x180096028
shl rsi, 3
lea rcx, [rsi + rsi*8]
sar rcx, 3
movabs rsi, 0x8e38e38e38e38e39
imul rsi, rcx
lea r8, [rsi - 0x10]
and r8, rax
mov r11, qword [rsp + 0x68]
movdqu xmm0, xmmword [r11 + r8]
pcmpeqd xmm1, xmm1
pcmpeqb xmm0, xmm1
psllw xmm0, 7
pmovmskb ecx, xmm0
movdqu xmm0, xmmword [r11 + rsi]
pcmpeqb xmm0, xmm1
pmovmskb edx, xmm0
test ecx, ecx
je 0x180096400
bsr r9w, cx
xor r9d, 0xf
jmp 0x180096405
movzx edx, byte [rcx + 0x30]
mov byte [rsp + 0x250], dl
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqu xmm2, xmmword [rcx + 0x20]
movdqa xmmword [rsp + 0x240], xmm2
movdqa xmmword [rsp + 0x230], xmm1
movdqa xmmword [rsp + 0x220], xmm0
mov edx, dword [rcx + 0x32]
mov dword [rsp + 0x10c], edx
movzx edx, word [rcx + 0x36]
mov word [rsp + 0x110], dx
xor edx, edx
xchg byte [rcx + 0x38], dl
cmp al, 3
jne 0x180096307
mov r15, qword [rdi + 0x38]
test r15, r15
je 0x1800962e5
mov bl, 1
mov al, 1
xchg byte [r15 + 0x80], al
mov al, 1
xchg byte [r15 + 0x60], al
test al, al
jne 0x1800962b1
mov rax, qword [r15 + 0x50]
mov rcx, qword [r15 + 0x58]
mov qword [r15 + 0x50], 0
xor edx, edx
xchg byte [r15 + 0x60], dl
test rax, rax
je 0x1800962b1
call qword [rax + 0x18]
xchg byte [r15 + 0x78], bl
test bl, bl
jne 0x1800962d7
mov rax, qword [r15 + 0x68]
mov rcx, qword [r15 + 0x70]
mov qword [r15 + 0x68], 0
xor edx, edx
xchg byte [r15 + 0x78], dl
test rax, rax
je 0x1800962d7
call qword [rax + 8]
lock dec qword [r15]
jne 0x1800962e5
mov rcx, r15
call fcn.18009a960
mov qword [rdi + 0x38], r14
mov byte [rsp + 0x1d8], 4
movzx eax, byte [rsp + 0x1d8]
cmp eax, 4
jne 0x1800958ee
jmp 0x180096ebb
movdqa xmm0, xmmword [rsp + 0x220]
movdqa xmm1, xmmword [rsp + 0x230]
movdqa xmm2, xmmword [rsp + 0x240]
movdqa xmmword [rsp + 0x200], xmm2
movzx ecx, byte [rsp + 0x250]
mov byte [rsp + 0x210], cl
movdqa xmmword [rsp + 0x1f0], xmm1
movdqa xmmword [rsp + 0x1e0], xmm0
mov byte [rsp + 0x211], al
mov eax, dword [rsp + 0x10c]
mov dword [rsp + 0x212], eax
movzx eax, word [rsp + 0x110]
mov word [rsp + 0x216], ax
mov rax, qword [rsp + 0x208]
movzx eax, byte [rax + 0x10]
test al, al
je 0x180096675
movzx eax, byte [0x180247060]
mov rcx, qword [0x180246f98]
test rcx, rcx
jne 0x1800963b1
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800974f0
mov rcx, rax
mov qword [0x180246f98], rax
mov r8d, 0x18
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800974f0
mov byte [rax + 0x10], 4
mov qword [rax], 1
lea rcx, [0x180201038]
mov qword [rax + 8], rcx
mov qword [rsp + 0x168], rax
mov byte [rsp + 0x1d8], 2
lea rcx, [rsp + 0x1e0]
call fcn.18009a9d0
jmp 0x180095876
mov r9w, 0x10
mov r10, qword [rsp + 0x40]
lea rcx, [r11 + rbp*8]
or edx, 0x10000
tzcnt edx, edx
add r9d, edx
mov dl, 0x80
cmp r9w, 0xf
ja 0x18009642a
inc qword [r10 + 0x70]
mov dl, 0xff
mov byte [r11 + rsi], dl
mov byte [r8 + r11 + 0x10], dl
dec qword [r10 + 0x78]
movdqu xmm0, xmmword [rcx - 0x48]
movdqu xmm1, xmmword [rcx - 0x38]
movdqu xmm2, xmmword [rcx - 0x28]
movdqu xmm3, xmmword [rcx - 0x18]
movdqa xmmword [rsp + 0xa0], xmm0
mov rax, qword [rcx - 8]
mov qword [rsp + 0xe0], rax
movdqa xmmword [rsp + 0xd0], xmm3
movdqa xmmword [rsp + 0xc0], xmm2
movdqa xmmword [rsp + 0xb0], xmm1
movzx eax, byte [rsp + 0xa0]
cmp al, 3
jne 0x180096491
mov rbp, qword [rsp + 0x60]
jmp 0x180096548
mov r14, qword [rsp + 0xd0]
mov rsi, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0xe0]
cmp al, 2
jb 0x1800964dd
mov r12, qword [rsp + 0xa8]
lea rcx, [r12 + 0x18]
mov rax, qword [r12]
mov rdx, qword [r12 + 8]
mov r8, qword [r12 + 0x10]
call qword [rax + 0x10]
mov rcx, qword [0x180246f98]
xor edx, edx
mov r8, r12
call qword [sym.imp.KERNEL32.dll_HeapFree]
lea rcx, [rsp + 0xc8]
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
mov r8, qword [rsp + 0xc0]
call qword [rax + 0x10]
test r14, r14
mov rbp, qword [rsp + 0x60]
je 0x180096548
test rdi, rdi
je 0x180096531
mov r12, r14
nop word cs:[rax + rax]
mov rcx, r12
call fcn.18009a9d0
add r12, 0x48
dec rdi
jne 0x180096520
test rsi, rsi
je 0x180096548
mov rcx, qword [0x180246f98]
xor edx, edx
mov r8, r14
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [rsp + 0x58]
cmp eax, 0x3b9aca00
sete r15b
mov rdi, qword [rsp + 0x70]
jne 0x180096dfd
cmp qword [rdi + 0x38], 0
je 0x1800965c8
movdqa xmm0, xmmword [rsp + 0x120]
movdqa xmm1, xmmword [rsp + 0x130]
movdqa xmm2, xmmword [rsp + 0x140]
movdqa xmm3, xmmword [rsp + 0x150]
movdqa xmmword [rsp + 0x210], xmm3
movdqa xmmword [rsp + 0x200], xmm2
movdqa xmmword [rsp + 0x1f0], xmm1
movdqa xmmword [rsp + 0x1e0], xmm0
mov r15b, 1
mov rsi, qword [rsp + 0x40]
mov eax, dword [rsp + 0x48]
test al, al
jne 0x180096e95
jmp 0x180096e81
movzx eax, byte [0x180247060]
mov rcx, qword [0x180246f98]
test rcx, rcx
mov rsi, qword [rsp + 0x40]
jne 0x1800965f9
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x180097505
mov rcx, rax
mov qword [0x180246f98], rax
mov r8d, 0x88
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x180097505
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 0x180097501
movzx ecx, byte [rdi]
test rcx, rcx
mov qword [rsp + 0x38], rax
je 0x180096714
cmp ecx, 1
jne 0x180096718
movzx ecx, byte [rdi + 1]
mov dl, 1
jmp 0x18009675a
cmp byte [rsp + 0x1f0], 2
jne 0x180096697
mov rax, qword [rsp + 0x1e0]
mov rax, qword [rax + 0x10]
cmp rax, 3
je 0x180096385
jmp 0x1800966ad
mov rax, qword [rsp + 0x1e0]
mov rax, qword [rax + 0x10]
cmp rax, 1
jne 0x180096385
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x150], rax
movdqa xmm0, xmmword [rsp + 0x1e0]
movdqa xmm1, xmmword [rsp + 0x1f0]
movdqa xmm2, xmmword [rsp + 0x200]
movdqa xmmword [rsp + 0x140], xmm2
movdqa xmmword [rsp + 0x130], xmm1
movdqa xmmword [rsp + 0x120], xmm0
mov rdx, qword [rdi + 0x30]
lea rcx, [rsp + 0x168]
lea r9, [rsp + 0x120]
mov r8, rdi
call fcn.1800f1580
jmp 0x180095876
xor edx, edx
jmp 0x18009675a
movzx eax, byte [0x180247060]
mov ecx, 0x20
mov edx, 8
call fcn.18001e7b0
test rax, rax
je 0x180097544
mov r14, 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, r14
call qword [r10]
mov dl, 2
mov rax, qword [rsp + 0x38]
mov dword [rsp + 0x114], r15d
add rax, 0x50
mov qword [rsp + 0x290], rax
lea rax, [rsi + 0x90]
mov qword [rsp + 0x260], rax
mov byte [rsp + 0xa0], dl
mov byte [rsp + 0xa1], cl
mov qword [rsp + 0xa8], r14
lea rcx, [rsp + 0xb0]
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 + 0xb0]
mov qword [rsp + 0x278], rax
mov rcx, qword [rsi + 0xb0]
mov rdx, qword [rsi + 0xb8]
lea r8, [rsp + 0xa0]
call fcn.1800a0cf0
mov rdx, qword [rsi + 0x90]
mov r9, qword [rsi + 0x98]
mov rcx, rax
shr rcx, 0x39
mov qword [rsp + 0x288], rcx
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
lea rcx, [rdx - 0x50]
movzx r8d, byte [rsp + 0xa0]
movzx r10d, byte [rsp + 0xa1]
mov byte [rsp + 0x37], r10b
mov byte [rsp + 0x4c], r8b
movzx r8d, r8b
mov dword [rsp + 0x88], r8d
mov r8, qword [rsp + 0xa8]
mov qword [rsp + 0x80], r8
mov r11, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xc0]
mov qword [rsp + 0x78], r14
neg r14
xor r8d, r8d
mov qword [rsp + 0x68], r8
pcmpeqd xmm1, xmm1
mov qword [rsp + 0x280], rax
mov r10, rax
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x58], rdx
and r10, r9
movdqu xmm2, xmmword [rdx + r10]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb r8d, xmm3
test r8d, r8d
mov qword [rsp + 0x98], r10
jne 0x1800968fa
pcmpeqb xmm2, xmm1
pmovmskb r8d, xmm2
test r8d, r8d
jne 0x18009734a
mov rax, qword [rsp + 0x68]
add r10, rax
add r10, 0x10
add rax, 0x10
mov qword [rsp + 0x68], rax
mov rdx, qword [rsp + 0x58]
jmp 0x18009687e
cmp dword [rsp + 0x88], 0
je 0x1800974d6
lea r8d, [rbp - 1]
and r8d, ebp
test r8w, r8w
mov r9, qword [rsp + 0x90]
mov r10, qword [rsp + 0x98]
je 0x1800968a1
mov ebp, r8d
tzcnt r8d, ebp
add r8, r10
and r8, r9
neg r8
lea rsi, [r8 + r8*4]
shl rsi, 4
lea rdi, [rcx + rsi]
movzx r8d, byte [rcx + rsi]
cmp r8, 1
je 0x1800969c0
cmp r8d, 2
jne 0x1800974d6
cmp byte [rsp + 0x4c], 2
jne 0x1800968cf
mov r8, qword [rdi + 8]
mov r15, qword [r8 + 0x10]
mov rax, qword [rsp + 0x80]
cmp r15, qword [rax + 0x10]
jne 0x1800968dd
mov r13, qword [r8 + 8]
mov rax, qword [rsp + 0x80]
mov r10, qword [rax + 8]
mov r8, r15
neg r8
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
lea rdx, [r8 + rbx]
cmp rdx, 0xffffffffffffffff
je 0x1800969f6
movzx edx, byte [r13 + rbx + 1]
movzx eax, byte [r10 + rbx + 1]
lea r9d, [rdx - 0x41]
cmp r9b, 0x1a
setb r9b
shl r9b, 5
lea r12d, [rax - 0x41]
cmp r12b, 0x1a
setb r12b
shl r12b, 5
or r9b, dl
or r12b, al
inc rbx
cmp r9b, r12b
je 0x180096970
cmp rbx, r15
jb 0x1800968dd
jmp 0x1800969f6
mov eax, dword [rsp + 0x88]
cmp eax, 1
je 0x1800969d9
test eax, eax
jne 0x1800968dd
jmp 0x1800974d6
cmp byte [rdi + 1], 0
je 0x1800969eb
cmp byte [rsp + 0x37], 0
jne 0x1800969f6
jmp 0x1800968dd
cmp byte [rsp + 0x37], 0
jne 0x1800968dd
mov rax, qword [rsp + 0x78]
cmp qword [rdi + 0x20], rax
jne 0x1800968dd
mov r10, qword [rdi + 0x18]
mov r8, 0xffffffffffffffff
lea rax, [r14 + r8]
cmp rax, 0xffffffffffffffff
je 0x180096a5b
movzx eax, byte [r10 + r8 + 1]
movzx edx, byte [r11 + r8 + 1]
lea r9d, [rax - 0x41]
cmp r9b, 0x1a
setb r9b
shl r9b, 5
lea edi, [rdx - 0x41]
cmp dil, 0x1a
setb bl
shl bl, 5
or r9b, al
or bl, dl
inc r8
cmp r9b, bl
je 0x180096a10
cmp r8, qword [rsp + 0x78]
jb 0x1800968dd
mov rbx, qword [rsp + 0x58]
add rbx, rsi
movdqu xmm0, xmmword [rsp + 0xa0]
movdqu xmm1, xmmword [rsp + 0xb0]
movdqu xmm2, xmmword [rsp + 0xc0]
movdqa xmmword [rsp + 0x240], xmm2
movdqa xmmword [rsp + 0x230], xmm1
movdqa xmmword [rsp + 0x220], xmm0
movdqa xmmword [rsp + 0xa0], xmm0
movdqa xmmword [rsp + 0xc0], xmm2
movdqa xmmword [rsp + 0xb0], xmm1
mov qword [rsp + 0xd0], rbx
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0xd8], rax
movzx eax, byte [rsp + 0xa0]
cmp al, 3
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x268]
mov r15d, dword [rsp + 0x114]
je 0x180096b40
cmp al, 2
jb 0x180096b1d
mov r14, qword [rsp + 0xa8]
lea rcx, [r14 + 0x18]
mov rax, qword [r14]
mov rdx, qword [r14 + 8]
mov r8, qword [r14 + 0x10]
call qword [rax + 0x10]
mov rcx, qword [0x180246f98]
xor edx, edx
mov r8, r14
call qword [sym.imp.KERNEL32.dll_HeapFree]
lea rcx, [rsp + 0xc8]
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
mov r8, qword [rsp + 0xc0]
call qword [rax + 0x10]
mov rdi, qword [rsp + 0x70]
mov rcx, qword [rbx - 0x18]
mov rax, qword [rbx - 8]
cmp rax, rcx
jne 0x180096b63
lea rcx, [rbx - 0x20]
call fcn.1800f1740
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 r8, qword [rsp + 0x38]
mov qword [rcx + rdx*8], r8
inc rax
mov qword [rbx - 8], rax
movzx eax, byte [r8 + 0x80]
test al, al
jne 0x180096ce1
mov rax, qword [rsi]
mov rdx, qword [rax]
mov rcx, qword [rax + 8]
call qword [rdx]
mov r8, qword [rsp + 0x38]
mov rbx, rax
mov r14, rdx
mov al, 1
xchg byte [r8 + 0x60], al
xor esi, esi
test al, al
cmove rsi, qword [rsp + 0x290]
je 0x180096cb1
mov rcx, r14
call qword [rbx + 0x18]
mov r8, qword [rsp + 0x38]
jmp 0x180096ce1
call fcn.1801a1eb0
xor al, 1
mov dword [rsp + 0x48], eax
mov qword [rsp + 0x268], r13
movzx eax, byte [rsi + 0x18]
test al, al
je 0x180095960
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x168], rax
mov eax, dword [rsp + 0x48]
mov byte [rsp + 0x170], al
lea rax, str.C:UsersDadoodze.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.26_srcclientpool.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x180203098]
lea r8, [rsp + 0x168]
mov edx, 0x2b
call fcn.18019b080
ud2
mov eax, dword [rsp + 0xb1]
mov ecx, dword [rsp + 0xb4]
mov dword [rsp + 0x123], ecx
mov dword [rsp + 0x120], eax
mov eax, dword [r8]
mov dword [rsp + 0x50], eax
movzx eax, word [r8 + 4]
mov word [rsp + 0x54], ax
mov qword [rsp + 0x127], r14
mov qword [rsp + 0x12f], rbp
mov qword [rsp + 0x137], rsi
mov byte [rsp + 0x13f], dil
lea rax, [rsp + 0x50]
lea rcx, [rsp + 0x120]
mov rbp, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x40]
jmp 0x1800971c2
mov rax, qword [rsi]
test rax, rax
je 0x180096cc5
mov rcx, qword [rsi + 8]
call qword [rax + 0x18]
mov r8, qword [rsp + 0x38]
mov qword [rsi], rbx
mov qword [rsi + 8], r14
xor eax, eax
xchg byte [rsi + 0x10], al
movzx eax, byte [r8 + 0x80]
test al, al
je 0x180096d75
mov rcx, r8
add rcx, 0x10
mov dl, 1
xchg byte [r8 + 0x48], dl
xor eax, eax
test dl, dl
cmove rax, rcx
jne 0x18009752a
movzx ecx, byte [rax + 0x31]
mov byte [rax + 0x31], 2
cmp cl, 2
je 0x180097516
movzx edx, byte [rax + 0x30]
mov byte [rsp + 0xd0], dl
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqu xmm2, xmmword [rax + 0x20]
movdqa xmmword [rsp + 0xc0], xmm2
movdqa xmmword [rsp + 0xb0], xmm1
movdqa xmmword [rsp + 0xa0], xmm0
mov edx, dword [rax + 0x32]
mov dword [rsp + 0xd2], edx
movzx edx, word [rax + 0x36]
mov word [rsp + 0xd6], dx
mov byte [rsp + 0xd1], cl
xor edx, edx
xchg byte [rax + 0x38], dl
cmp cl, 1
jbe 0x18009751d
cmp cl, 3
jne 0x18009752a
mov rbx, qword [rdi + 0x38]
test rbx, rbx
je 0x180096df2
mov sil, 1
mov al, 1
xchg byte [rbx + 0x80], al
mov al, 1
xchg byte [rbx + 0x60], al
test al, al
jne 0x180096db4
mov rax, qword [rbx + 0x50]
mov rcx, qword [rbx + 0x58]
mov qword [rbx + 0x50], 0
xor edx, edx
xchg byte [rbx + 0x60], dl
test rax, rax
je 0x180096db4
call qword [rax + 0x18]
mov r8, qword [rsp + 0x38]
xchg byte [rbx + 0x78], sil
test sil, sil
jne 0x180096ddf
mov rax, qword [rbx + 0x68]
mov rcx, qword [rbx + 0x70]
mov qword [rbx + 0x68], 0
xor edx, edx
xchg byte [rbx + 0x78], dl
test rax, rax
je 0x180096ddf
call qword [rax + 8]
mov r8, qword [rsp + 0x38]
lock dec qword [rbx]
jne 0x180096df2
mov rcx, rbx
call fcn.18009a960
mov r8, qword [rsp + 0x38]
mov qword [rdi + 0x38], r8
mov eax, dword [rsp + 0x1a8]
movdqa xmm0, xmmword [rsp + 0x120]
movdqa xmm1, xmmword [rsp + 0x130]
movdqa xmm2, xmmword [rsp + 0x140]
movdqa xmm3, xmmword [rsp + 0x150]
movdqa xmmword [rsp + 0x210], xmm3
movdqa xmmword [rsp + 0x200], xmm2
movdqa xmmword [rsp + 0x1f0], xmm1
movdqa xmmword [rsp + 0x1e0], xmm0
cmp eax, 0x3b9aca00
sete al
mov ecx, dword [rsp + 0x118]
or cl, al
je 0x180096e67
mov rsi, qword [rsp + 0x40]
mov eax, dword [rsp + 0x48]
test al, al
jne 0x180096e95
jmp 0x180096e81
lea rcx, [rsp + 0x168]
call fcn.18009a9d0
mov rsi, qword [rsp + 0x40]
mov eax, dword [rsp + 0x48]
test al, al
jne 0x180096e95
mov rax, qword [0x180247020]
shl rax, 1
test rax, rax
jne 0x180097030
mov rcx, qword [rsp + 0x270]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test r15b, r15b
je 0x180096f61
mov byte [rsp + 0x1d8], 2
cmp qword [rdi + 0x30], 0
je 0x180096ed3
mov byte [rbp + 0x70], 3
add rsp, 0x298
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movzx eax, byte [0x180247060]
mov rcx, qword [0x180246f98]
test rcx, rcx
jne 0x180096eff
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800974f0
mov rcx, rax
mov qword [0x180246f98], rax
mov r8d, 0x18
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800974f0
mov rdi, rax
mov qword [rax], 0
mov byte [rax + 0x10], 4
lea rdx, str.pool_is_disabledC:UsersDadoodze.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.26_srccommonlazy.rs
mov r8d, 0x10
mov rcx, rax
call fcn.180098d10
mov qword [rbp], rdi
mov byte [rbp + 0x70], 2
cmp byte [rsp + 0x1d8], 2
je 0x180096ebf
lea rcx, [rsp + 0x168]
call fcn.180099b60
jmp 0x180096ebf
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0xd0], rax
movaps xmm0, xmmword [rsp + 0x1e0]
movaps xmm1, xmmword [rsp + 0x1f0]
movaps xmm2, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0xc0], xmm2
movaps xmmword [rsp + 0xb0], xmm1
movaps xmmword [rsp + 0xa0], xmm0
mov rdx, qword [rdi + 0x30]
lea rcx, [rsp + 0x168]
lea r9, [rsp + 0xa0]
mov r8, rdi
call fcn.1800f1580
cmp byte [rsp + 0x1d8], 2
je 0x180096eb4
mov rax, qword [rsp + 0x1d8]
mov qword [rbp + 0x70], rax
movups xmm0, xmmword [rsp + 0x1c8]
movups xmmword [rbp + 0x60], xmm0
movups xmm0, xmmword [rsp + 0x1b8]
movups xmmword [rbp + 0x50], xmm0
movups xmm0, xmmword [rsp + 0x1a8]
movups xmmword [rbp + 0x40], xmm0
movups xmm0, xmmword [rsp + 0x168]
movups xmm1, xmmword [rsp + 0x178]
movups xmm2, xmmword [rsp + 0x188]
movups xmm3, xmmword [rsp + 0x198]
movups xmmword [rbp + 0x30], xmm3
movups xmmword [rbp + 0x20], xmm2
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp], xmm0
jmp 0x180096ebf
call fcn.1801a1eb0
test al, al
jne 0x180096e95
mov byte [rsi + 0x18], 1
jmp 0x180096e95
xor eax, eax
lock inc qword [rsi]
jle 0x180097501
lock inc qword [r9]
lea rcx, [rsp + 0xd2]
jle 0x180097501
mov r15d, ebx
mov rbx, qword [rsp + 0x98]
lock inc qword [rbx + 0x88]
lock inc qword [rbx]
jle 0x180097501
mov qword [rsp + 0x227], rax
mov qword [rsp + 0x22f], rdx
mov qword [rsp + 0x237], rsi
mov byte [rsp + 0x23f], dil
mov qword [rsp + 0x127], r14
mov qword [rsp + 0x12f], rbp
mov qword [rsp + 0x137], rsi
mov byte [rsp + 0x13f], dil
mov eax, dword [rcx]
mov dword [rsp + 0x50], eax
movzx eax, word [rcx + 4]
mov word [rsp + 0x54], ax
cmp r15b, 2
jne 0x1800970fa
mov r15b, 2
lea rax, [rsp + 0x50]
lea rcx, [rsp + 0x120]
mov rbp, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x40]
jmp 0x1800971ba
mov r14, r9
call fcn.180125710
mov dword [rsp + 0x88], edx
mov rdx, qword [r12 + 0x10]
cmp rdx, qword [r12 + 8]
mov rdi, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x40]
jne 0x180097132
mov rcx, r12
mov rbp, rax
call fcn.180042240
mov rax, rbp
mov rdx, qword [r12 + 0x10]
mov rbp, qword [rsp + 0x60]
mov r9, r14
mov r11, qword [r12]
lea rcx, [rdx + rdx*8]
mov qword [r11 + rcx*8], r14
mov qword [r11 + rcx*8 + 8], rbx
mov byte [r11 + rcx*8 + 0x10], 2
movdqu xmm0, xmmword [rsp + 0x120]
movdqu xmm1, xmmword [rsp + 0x130]
movdqu xmmword [r11 + rcx*8 + 0x11], xmm0
movdqu xmmword [r11 + rcx*8 + 0x21], xmm1
mov byte [r11 + rcx*8 + 0x31], r15b
lea r10, [rsp + 0xd2]
mov r8d, dword [r10]
mov dword [r11 + rcx*8 + 0x32], r8d
movzx r8d, word [r10 + 4]
mov word [r11 + rcx*8 + 0x36], r8w
mov qword [r11 + rcx*8 + 0x38], rax
mov eax, dword [rsp + 0x88]
mov dword [r11 + rcx*8 + 0x40], eax
inc rdx
mov qword [r12 + 0x10], rdx
lea rax, [rsp + 0x10c]
lea rcx, [rsp + 0x220]
movzx edx, byte [rsp + 0x90]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rsp + 0x189], xmm1
movups xmmword [rsp + 0x179], xmm0
mov ecx, dword [rax]
mov dword [rsp + 0x19a], ecx
movzx eax, word [rax + 4]
mov word [rsp + 0x19e], ax
cmp qword [r12 + 0x10], 0
mov qword [rsp + 0x168], r9
mov qword [rsp + 0x170], rbx
mov byte [rsp + 0x178], dl
mov byte [rsp + 0x199], r15b
mov qword [rsp + 0x1a0], r13
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x1a8], eax
sete byte [rsp + 0x1b0]
movzx eax, byte [rsp + 0x198]
mov byte [rsp + 0x150], al
movzx eax, byte [rsp + 0x199]
mov byte [rsp + 0x151], al
mov eax, dword [rsp + 0x19a]
mov dword [rsp + 0x152], eax
movzx eax, word [rsp + 0x19e]
mov word [rsp + 0x156], ax
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0x158], rax
movzx eax, byte [rsp + 0x178]
mov byte [rsp + 0x130], al
mov rax, qword [rsp + 0x179]
mov qword [rsp + 0x131], rax
mov eax, dword [rsp + 0x181]
mov dword [rsp + 0x139], eax
movzx eax, word [rsp + 0x185]
mov word [rsp + 0x13d], ax
movzx eax, byte [rsp + 0x187]
mov byte [rsp + 0x13f], al
movups xmm0, xmmword [rsp + 0x168]
movaps xmmword [rsp + 0x120], xmm0
movups xmm0, xmmword [rsp + 0x188]
movaps xmmword [rsp + 0x140], xmm0
je 0x18009733c
movups xmm0, xmmword [rsp + 0x168]
movups xmm1, xmmword [rsp + 0x178]
movups xmm2, xmmword [rsp + 0x188]
movups xmm3, xmmword [rsp + 0x198]
movaps xmmword [rsp + 0x210], xmm3
movaps xmmword [rsp + 0x200], xmm2
movaps xmmword [rsp + 0x1f0], xmm1
movaps xmmword [rsp + 0x1e0], xmm0
xor r15d, r15d
mov eax, dword [rsp + 0x48]
test al, al
jne 0x180096e95
jmp 0x180096e81
mov al, 1
mov dword [rsp + 0x118], eax
jmp 0x180095f4b
mov rsi, qword [rsp + 0x40]
cmp qword [rsi + 0xa0], 0
mov rdi, qword [rsp + 0x70]
mov r15d, dword [rsp + 0x114]
mov r8, qword [rsp + 0x58]
je 0x1800974ae
movups xmm0, xmmword [rsp + 0xa0]
movdqu xmm1, xmmword [rsp + 0xb0]
movdqu xmm2, xmmword [rsp + 0xc0]
movdqa xmmword [rsp + 0x240], xmm2
movdqa xmmword [rsp + 0x230], xmm1
movaps xmmword [rsp + 0x220], xmm0
mov rax, qword [rsp + 0x280]
and rax, r9
movdqu xmm0, xmmword [r8 + rax]
pmovmskb ecx, xmm0
test ecx, ecx
mov rsi, qword [rsp + 0x268]
jne 0x1800973e1
mov edx, 0x10
add rax, rdx
and rax, r9
movdqu xmm0, xmmword [r8 + rax]
pmovmskb ecx, xmm0
add rdx, 0x10
test ecx, ecx
je 0x1800973c9
mov rbp, qword [rsp + 0x60]
tzcnt ecx, ecx
add rcx, rax
and rcx, r9
movzx edx, byte [r8 + rcx]
test dl, dl
js 0x18009740b
movdqa xmm0, xmmword [r8]
pmovmskb eax, xmm0
tzcnt ecx, eax
movzx edx, byte [r8 + rcx]
lea rax, [rcx - 0x10]
and rax, r9
mov r9, qword [rsp + 0x288]
mov byte [r8 + rcx], r9b
mov byte [rax + r8 + 0x10], r9b
neg rcx
lea rax, [rcx + rcx*4]
and dl, 1
movzx ecx, dl
mov rdx, qword [rsp + 0x40]
sub qword [rdx + 0xa0], rcx
shl rax, 4
movdqa xmm0, xmmword [rsp + 0x220]
movdqa xmm1, xmmword [rsp + 0x230]
movdqa xmm2, xmmword [rsp + 0x240]
movdqu xmmword [r8 + rax - 0x30], xmm2
movdqu xmmword [r8 + rax - 0x40], xmm1
movdqu xmmword [r8 + rax - 0x50], xmm0
mov qword [r8 + rax - 0x20], 8
pxor xmm0, xmm0
movdqu xmmword [r8 + rax - 0x18], xmm0
mov qword [r8 + rax - 8], 0
lea rbx, [r8 + rax]
inc qword [rdx + 0xa8]
mov rcx, qword [rbx - 0x18]
mov rax, qword [rbx - 8]
cmp rax, rcx
je 0x180096b52
jmp 0x180096b63
mov rcx, qword [rsp + 0x260]
mov rdx, qword [rsp + 0x278]
call fcn.1801a0d20
mov r8, qword [rsi + 0x90]
mov r9, qword [rsi + 0x98]
jmp 0x18009736f
lea rcx, str.internal_error:_entered_unreachable_code_rustc_8c74a5d27c644a0f7a22bb2fa8dd3ff8257bc220library_std_src_threadmod.rs
lea r8, str.C:UsersDadoodze.cargo_registry_srcindex.crates.io_6f17d22bba15001fhttp_0.2.9_srcuri_scheme.rs
mov edx, 0x28
call fcn.18019ad80
ud2
mov ecx, 8
mov edx, 0x18
call fcn.18019a870
ud2
ud2
mov ecx, 8
mov edx, 0x88
call fcn.18019a870
ud2
xor ecx, ecx
xchg byte [rax + 0x38], cl
jmp 0x18009752a
lea rcx, [rsp + 0xa0]
call fcn.18009a9d0
lea rcx, str.assertion_failed:_Pin::new_mut_rx_.poll_cx_.is_pending__
lea r8, str.C:UsersDadoodze.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.26_srcclientpool.rs
mov edx, 0x39
call fcn.18019ad80
ud2
mov ecx, 8
mov edx, 0x20
call fcn.18019a870
ud2