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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x238
movdqa xmmword [rsp + 0x220], xmm8
movdqa xmmword [rsp + 0x210], xmm7
movdqa xmmword [rsp + 0x200], xmm6
mov qword [rsp + 0x1c8], r9
mov rbx, r8
mov qword [rsp + 0x28], rdx
cmp byte [r8 + 0x10], 2
mov qword [rsp + 0x98], rcx
jne 0x1400a5f17
cmp qword [rcx + 0x58], 0
je 0x1400a5f17
mov rdi, rcx
mov rcx, qword [rcx + 0x60]
mov rdx, qword [rdi + 0x68]
mov rsi, qword [rsp + 0x28]
mov r8, rsi
call fcn.14009bd60
mov rcx, qword [rdi + 0x40]
mov rdi, qword [rdi + 0x48]
mov r12, rdi
and r12, rax
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm6, xmm0, 0
mov qword [rsp + 0x38], rcx
lea r13, [rcx - 0x48]
lea r14, [rsi + 0x10]
xor ebp, ebp
pcmpeqd xmm7, xmm7
mov rax, qword [rsp + 0x38]
movdqu xmm8, xmmword [rax + r12]
movdqa xmm0, xmm8
pcmpeqb xmm0, xmm6
pmovmskb esi, xmm0
test esi, esi
jne 0x1400a5eca
pcmpeqb xmm8, xmm7
pmovmskb eax, xmm8
test eax, eax
mov rcx, qword [rsp + 0x98]
jne 0x1400a5f17
add r12, rbp
add r12, 0x10
add rbp, 0x10
and r12, rdi
jmp 0x1400a5e7c
lea eax, [rsi - 1]
and ax, si
mov esi, eax
je 0x1400a5e98
tzcnt eax, esi
add rax, r12
and rax, rdi
neg rax
lea rax, [rax + rax*8]
lea r15, [rax*8]
add r15, r13
mov rcx, qword [rsp + 0x28]
mov rdx, r15
call fcn.1400372a0
test al, al
je 0x1400a5ec0
add r15, 0x10
mov rcx, r14
mov rdx, r15
call fcn.140034b90
test al, al
je 0x1400a5ec0
mov rcx, rbx
call fcn.140085e50
jmp 0x1400a6df5
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0xf0], rax
movdqu xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmm2, xmmword [rbx + 0x20]
movaps xmmword [rsp + 0xe0], xmm2
movaps xmmword [rsp + 0xd0], xmm1
movdqa xmmword [rsp + 0xc0], xmm0
cmp qword [rcx + 0x88], 0
je 0x1400a66fd
mov rsi, qword [rsp + 0x98]
lea rax, [rsi + 0x70]
mov qword [rsp + 0x1a8], rax
mov rcx, qword [rsi + 0x90]
mov rdx, qword [rsi + 0x98]
mov rbx, qword [rsp + 0x28]
mov r8, rbx
call fcn.14009bd60
mov r13, qword [rsi + 0x70]
mov rsi, qword [rsi + 0x78]
mov rdi, rsi
and rdi, rax
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm6, xmm0, 0
lea r15, [r13 - 0x50]
add rbx, 0x10
xor eax, eax
mov qword [rsp + 0x38], rax
pcmpeqd xmm7, xmm7
movdqu xmm8, xmmword [r13 + rdi]
movdqa xmm0, xmm8
pcmpeqb xmm0, xmm6
pmovmskb ebp, xmm0
test ebp, ebp
jne 0x1400a600a
pcmpeqb xmm8, xmm7
pmovmskb eax, xmm8
test eax, eax
jne 0x1400a66fd
mov rax, qword [rsp + 0x38]
add rdi, rax
add rdi, 0x10
add rax, 0x10
mov qword [rsp + 0x38], rax
and rdi, rsi
jmp 0x1400a5fbc
lea eax, [rbp - 1]
and ax, bp
mov ebp, eax
je 0x1400a5fd4
tzcnt eax, ebp
add rax, rdi
and rax, rsi
neg rax
lea r12, [rax + rax*4]
shl r12, 4
lea r14, [r15 + r12]
mov rcx, qword [rsp + 0x28]
mov rdx, r14
call fcn.1400372a0
test al, al
je 0x1400a6000
add r14, 0x10
mov rcx, rbx
mov rdx, r14
call fcn.140034b90
test al, al
je 0x1400a6000
add r13, r12
xor edi, edi
jmp 0x1400a605d
lea rcx, [rsp + 0x100]
call fcn.140083370
mov rax, qword [r13 - 8]
test rax, rax
je 0x1400a66af
mov rcx, qword [r13 - 0x10]
lea rdx, [rcx + 1]
mov r8, qword [r13 - 0x20]
mov r9, qword [r13 - 0x18]
cmp rdx, r8
cmovb r8, rdi
neg r8
lea rdx, [rcx + r8]
inc rdx
mov qword [r13 - 0x10], rdx
dec rax
mov qword [r13 - 8], rax
mov rax, qword [r9 + rcx*8]
mov qword [rsp + 0x100], rax
movzx eax, byte [rax + 0x80]
test al, al
je 0x1400a60f0
mov rsi, qword [rsp + 0x100]
mov al, 1
xchg byte [rsi + 0x80], al
mov al, 1
xchg byte [rsi + 0x60], al
test al, al
je 0x1400a61a0
mov al, 1
xchg byte [rsi + 0x78], al
test al, al
je 0x1400a61ce
mov rax, qword [rsp + 0x100]
lock dec qword [rax]
jne 0x1400a605d
jmp 0x1400a6050
mov qword [rsp + 0xf8], r15
mov qword [rsp + 0x120], rbx
movzx ebp, byte [rsp + 0xf1]
mov byte [rsp + 0xf1], 2
cmp bpl, 2
je 0x1400a731a
mov r15d, r12d
mov rsi, r14
mov r8, qword [rsp + 0xc0]
mov r14, qword [rsp + 0xc8]
movzx r12d, byte [rsp + 0xd0]
mov rbx, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0xe0]
mov r10, qword [rsp + 0xe8]
movzx r9d, byte [rsp + 0xf0]
cmp r12b, 2
jne 0x1400a6202
mov edi, r9d
test rbx, rbx
je 0x1400a627d
mov rcx, rbx
mov rbx, r10
mov r12, r8
call qword [rdx + 0x18]
mov r8, r12
mov r10, rbx
mov rbx, rax
lock inc qword [r10]
jg 0x1400a6289
jmp 0x1400a7318
mov rax, qword [rsi + 0x50]
mov rcx, qword [rsi + 0x58]
mov qword [rsi + 0x50], 0
test rax, rax
je 0x1400a6266
xor edx, edx
xchg byte [rsi + 0x60], dl
call qword [rax + 8]
mov al, 1
xchg byte [rsi + 0x78], al
test al, al
jne 0x1400a60d7
mov rax, qword [rsi + 0x68]
mov rcx, qword [rsi + 0x70]
mov qword [rsi + 0x68], 0
test rax, rax
je 0x1400a61e6
call qword [rax + 0x18]
xor eax, eax
xchg byte [rsi + 0x78], al
mov rax, qword [rsp + 0x100]
lock dec qword [rax]
jne 0x1400a605d
jmp 0x1400a6050
lea rax, [rsp + 0xf2]
mov rdi, r8
mov r8, rax
movzx eax, word [rax + 4]
mov word [rsp + 0x164], ax
mov ecx, dword [r8]
mov dword [rsp + 0x160], ecx
mov r11d, dword [r8 - 0x21]
mov r8d, dword [r8 - 0x1e]
mov dword [rsp + 0x50], r11d
mov dword [rsp + 0x53], r8d
mov r11d, dword [rsp + 0x50]
mov r8d, dword [rsp + 0x53]
mov dword [rsp + 0xa8], r11d
mov dword [rsp + 0xab], r8d
mov r8, rdi
mov dword [rsp + 0xb8], ecx
mov word [rsp + 0xbc], ax
jmp 0x1400a62d8
xor eax, eax
xchg byte [rsi + 0x60], al
mov al, 1
xchg byte [rsi + 0x78], al
test al, al
jne 0x1400a60d7
jmp 0x1400a61ce
xor ebx, ebx
lock inc qword [r10]
jle 0x1400a7318
lock inc qword [r8]
jle 0x1400a7318
lock inc qword [r14 + 0x1c8]
lock inc qword [r14]
jle 0x1400a7318
mov r9d, edi
lea rcx, [rsp + 0xf2]
movzx eax, word [rcx + 4]
mov word [rsp + 0x164], ax
mov eax, dword [rcx]
mov dword [rsp + 0x160], eax
mov byte [rsp + 0xd0], 2
mov byte [rsp + 0xf1], bpl
mov r12b, 2
mov rdi, qword [rsp + 0x100]
mov eax, dword [rsp + 0xa8]
mov ecx, dword [rsp + 0xab]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x33], ecx
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x48], eax
movzx eax, word [rsp + 0xbc]
mov word [rsp + 0x4c], ax
mov qword [rsp + 0x160], rdi
movzx eax, byte [rdi + 0x80]
test al, al
jne 0x1400a632e
mov al, 1
xchg byte [rdi + 0x48], al
test al, al
je 0x1400a64df
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x33]
mov dword [rsp + 0x93], ecx
mov dword [rsp + 0x90], eax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x40], eax
movzx eax, word [rsp + 0x4c]
mov word [rsp + 0x44], ax
mov qword [rsp + 0x38], r8
mov r15, rdx
mov qword [rsp + 0xa0], r10
mov byte [rsp + 0xb0], r9b
mov rsi, qword [rsp + 0x160]
mov al, 1
xchg byte [rsi + 0x80], al
mov al, 1
xchg byte [rsi + 0x60], al
test al, al
mov edi, 0
je 0x1400a6463
mov al, 1
xchg byte [rsi + 0x78], al
test al, al
je 0x1400a6491
mov rax, qword [rsp + 0x160]
lock dec qword [rax]
jne 0x1400a64c0
lea rcx, [rsp + 0x160]
call fcn.140083370
movzx eax, byte [rsp + 0xf1]
cmp bpl, 2
je 0x1400a64d2
cmp al, 2
je 0x1400a63df
lea rcx, [rsp + 0xc0]
call fcn.140085e50
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], r14
mov byte [rsp + 0xd0], r12b
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x93]
lea rdx, [rsp + 0xf2]
mov dword [rdx - 0x1e], ecx
mov dword [rdx - 0x21], eax
mov qword [rsp + 0xd8], rbx
mov qword [rsp + 0xe0], r15
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0xe8], rax
movzx eax, byte [rsp + 0xb0]
mov byte [rsp + 0xf0], al
mov byte [rsp + 0xf1], bpl
movzx eax, word [rsp + 0x44]
mov word [rdx + 4], ax
mov eax, dword [rsp + 0x40]
mov dword [rdx], eax
jmp 0x1400a605d
mov rax, qword [rsi + 0x50]
mov rcx, qword [rsi + 0x58]
mov qword [rsi + 0x50], 0
test rax, rax
je 0x1400a65a8
xor edx, edx
xchg byte [rsi + 0x60], dl
call qword [rax + 8]
mov al, 1
xchg byte [rsi + 0x78], al
test al, al
jne 0x1400a639d
mov rax, qword [rsi + 0x68]
mov rcx, qword [rsi + 0x70]
mov qword [rsi + 0x68], 0
test rax, rax
je 0x1400a64a9
call qword [rax + 0x18]
xor eax, eax
xchg byte [rsi + 0x78], al
mov rax, qword [rsp + 0x160]
lock dec qword [rax]
je 0x1400a63af
movzx eax, byte [rsp + 0xf1]
cmp bpl, 2
jne 0x1400a63ce
cmp al, 2
jne 0x1400a605d
jmp 0x1400a66a8
mov qword [rsp + 0x1b0], r8
mov qword [rsp + 0x1b8], rdx
mov qword [rsp + 0x1c0], r10
mov byte [rsp + 0x37], r9b
cmp byte [rdi + 0x41], 2
jne 0x1400a7337
lea rcx, [rdi + 0x10]
mov qword [rsp + 0x1a0], rcx
call fcn.14006aef0
mov rax, qword [rsp + 0x1b0]
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], r14
mov byte [rdi + 0x20], r12b
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x33]
mov dword [rdi + 0x21], eax
mov dword [rdi + 0x24], ecx
mov qword [rdi + 0x28], rbx
mov rax, qword [rsp + 0x1b8]
mov qword [rdi + 0x30], rax
mov rax, qword [rsp + 0x1c0]
mov qword [rdi + 0x38], rax
movzx eax, byte [rsp + 0x37]
mov byte [rdi + 0x40], al
mov byte [rdi + 0x41], bpl
mov eax, dword [rsp + 0x48]
mov dword [rdi + 0x42], eax
movzx eax, word [rsp + 0x4c]
mov word [rdi + 0x46], ax
xor eax, eax
xchg byte [rdi + 0x48], al
movzx eax, byte [rdi + 0x80]
mov bpl, 2
test al, al
je 0x1400a65bf
mov al, 1
xchg byte [rdi + 0x48], al
test al, al
mov r14, rsi
mov r12d, r15d
mov rbx, qword [rsp + 0x120]
je 0x1400a65da
mov r15, qword [rsp + 0xf8]
jmp 0x1400a636e
xor eax, eax
xchg byte [rsi + 0x60], al
mov al, 1
xchg byte [rsi + 0x78], al
test al, al
jne 0x1400a639d
jmp 0x1400a6491
mov r14, rsi
mov r12d, r15d
mov rbx, qword [rsp + 0x120]
mov r15, qword [rsp + 0xf8]
jmp 0x1400a636e
mov rcx, qword [rsp + 0x1a0]
mov rax, qword [rcx + 0x30]
mov qword [rsp + 0x80], rax
movdqu xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movaps xmmword [rsp + 0x70], xmm2
movaps xmmword [rsp + 0x60], xmm1
movdqa xmmword [rsp + 0x50], xmm0
mov byte [rdi + 0x41], 2
movzx ebp, byte [rsp + 0x81]
cmp bpl, 2
mov r15, qword [rsp + 0xf8]
jne 0x1400a663b
lea rcx, [rsp + 0x50]
call fcn.14006aef0
xor eax, eax
xchg byte [rdi + 0x48], al
mov bpl, 2
jmp 0x1400a636e
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x38], rax
mov r14, qword [rsp + 0x58]
movzx r12d, byte [rsp + 0x60]
lea rdx, [rsp + 0x61]
mov eax, dword [rdx]
mov ecx, dword [rdx + 3]
mov dword [rsp + 0x90], eax
mov dword [rsp + 0x93], ecx
mov rbx, qword [rsp + 0x68]
mov r15, qword [rsp + 0x70]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0xa0], rax
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0xb0], al
mov eax, dword [rdx + 0x21]
mov dword [rsp + 0x40], eax
movzx eax, word [rdx + 0x25]
mov word [rsp + 0x44], ax
xor eax, eax
xchg byte [rdi + 0x48], al
jmp 0x1400a636e
cmp qword [r13 - 8], 0
jne 0x1400a66fd
lea rcx, [rsp + 0x50]
mov rdx, qword [rsp + 0x1a8]
mov r8, qword [rsp + 0x28]
call fcn.1400d2b50
mov rsi, qword [rsp + 0x50]
movabs rax, 0x8000000000000000
cmp rsi, rax
je 0x1400a66fd
lea rcx, [rsp + 0x50]
call fcn.1400a3bf0
test rsi, rsi
je 0x1400a66fd
mov r8, qword [rsp + 0x58]
mov rcx, qword [0x140198260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp byte [rsp + 0xf1], 2
mov rbx, qword [rsp + 0x28]
je 0x1400a6dfa
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x190], rax
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmm1, xmmword [rsp + 0xd0]
movaps xmm2, xmmword [rsp + 0xe0]
movaps xmmword [rsp + 0x180], xmm2
movaps xmmword [rsp + 0x170], xmm1
movaps xmmword [rsp + 0x160], xmm0
movzx esi, byte [rbx]
test esi, esi
je 0x1400a6762
cmp esi, 1
jne 0x1400a6764
movzx eax, byte [rbx + 1]
jmp 0x1400a67b7
jmp 0x1400a67b7
mov rdi, qword [rbx + 8]
movzx eax, byte [0x140198310]
mov edx, 0x20
xor ecx, ecx
call fcn.1400f21c0
test rax, rax
je 0x1400a734f
mov rbx, rax
lea rdx, [rdi + 0x18]
mov rax, qword [rdi]
mov r8, qword [rdi + 8]
mov r9, qword [rdi + 0x10]
lea rcx, [rsp + 0x100]
call qword [rax]
movups xmm0, xmmword [rsp + 0x100]
movups xmm1, xmmword [rsp + 0x110]
movups xmmword [rbx + 0x10], xmm1
movups xmmword [rbx], xmm0
mov byte [rsp + 0x50], sil
mov byte [rsp + 0x51], al
mov qword [rsp + 0x58], rbx
lea r15, [rsp + 0x60]
mov rcx, qword [rsp + 0x28]
lea rdx, [rcx + 0x28]
mov rax, qword [rcx + 0x10]
mov r8, qword [rcx + 0x18]
mov r9, qword [rcx + 0x20]
mov rcx, r15
call qword [rax]
mov rsi, qword [rsp + 0x98]
lea rax, [rsi + 0x40]
mov qword [rsp + 0xa0], rax
mov rcx, qword [rsi + 0x60]
mov rdx, qword [rsi + 0x68]
lea r12, [rsp + 0x50]
mov r8, r12
call fcn.14009bd60
mov r14, rax
shr rax, 0x39
mov r13, qword [rsi + 0x40]
mov rbx, qword [rsi + 0x48]
mov rbp, rbx
and rbp, r14
mov qword [rsp + 0xb0], rax
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm6, xmm0, 0
xor eax, eax
pcmpeqd xmm7, xmm7
mov qword [rsp + 0x38], rax
movdqu xmm8, xmmword [r13 + rbp]
movdqa xmm0, xmm8
pcmpeqb xmm0, xmm6
pmovmskb edi, xmm0
test edi, edi
jne 0x1400a689a
pcmpeqb xmm8, xmm7
pmovmskb eax, xmm8
test eax, eax
mov rax, qword [rsp + 0x38]
jne 0x1400a6b60
add rbp, rax
add rbp, 0x10
add rax, 0x10
and rbp, rbx
jmp 0x1400a6842
lea eax, [rdi - 1]
and ax, di
mov edi, eax
je 0x1400a685f
tzcnt eax, edi
add rax, rbp
and rax, rbx
neg rax
lea rsi, [rax + rax*8]
lea rcx, [rsi*8 - 0x48]
add rcx, r13
mov rdx, r12
call fcn.1400372a0
test al, al
je 0x1400a6890
lea rsi, [rsi*8]
add rsi, r13
lea rcx, [rsi - 0x38]
mov rdx, r15
call fcn.140034b90
test al, al
je 0x1400a6890
movdqu xmm0, xmmword [rsp + 0x50]
movups xmm1, xmmword [rsp + 0x60]
movups xmm2, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0x1f0], xmm2
movaps xmmword [rsp + 0x1e0], xmm1
movdqa xmmword [rsp + 0x1d0], xmm0
movdqa xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x70], xmm2
movaps xmmword [rsp + 0x60], xmm1
mov qword [rsp + 0x80], rsi
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x88], rax
movzx eax, byte [rsp + 0x50]
cmp al, 3
mov r15, qword [rsp + 0x98]
je 0x1400a6983
cmp al, 2
jb 0x1400a696c
mov rbx, qword [rsp + 0x58]
lea rcx, [rbx + 0x18]
mov rax, qword [rbx]
mov rdx, qword [rbx + 8]
mov r8, qword [rbx + 0x10]
call qword [rax + 0x10]
mov rcx, qword [0x140198260]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
lea rcx, [rsp + 0x78]
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x70]
call qword [rax + 0x10]
mov rax, qword [r15 + 0xa0]
cmp rax, qword [rsi - 8]
jbe 0x1400a6c84
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0x80], rax
movaps xmm0, xmmword [rsp + 0x160]
movaps xmm1, xmmword [rsp + 0x170]
movaps xmm2, xmmword [rsp + 0x180]
movaps xmmword [rsp + 0x70], xmm2
movaps xmmword [rsp + 0x60], xmm1
movaps xmmword [rsp + 0x50], xmm0
call fcn.1400f2010
mov rbx, rax
mov ebp, edx
mov rdi, qword [rsi - 8]
cmp rdi, qword [rsi - 0x18]
jne 0x1400a69e8
lea rcx, [rsi - 0x18]
call fcn.14002e5c0
mov rax, qword [rsi - 0x10]
lea rcx, [rdi + rdi*8]
mov rdx, qword [rsp + 0x80]
mov qword [rax + rcx*8 + 0x30], rdx
movdqa xmm0, xmmword [rsp + 0x50]
movaps xmm1, xmmword [rsp + 0x60]
movaps xmm2, xmmword [rsp + 0x70]
movups xmmword [rax + rcx*8 + 0x20], xmm2
movups xmmword [rax + rcx*8 + 0x10], xmm1
movdqu xmmword [rax + rcx*8], xmm0
mov qword [rax + rcx*8 + 0x38], rbx
mov dword [rax + rcx*8 + 0x40], ebp
inc rdi
mov qword [rsi - 8], rdi
cmp qword [r15 + 0xa8], 0
mov rbx, qword [rsp + 0x28]
jne 0x1400a6dfa
mov edi, dword [r15 + 0xb8]
cmp edi, 0x3b9aca00
je 0x1400a6dfa
mov r13, qword [r15 + 0xb0]
movzx eax, byte [0x140198310]
mov edx, 0x48
xor ecx, ecx
call fcn.1400f21c0
test rax, rax
je 0x1400a735e
mov r14, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], 0
mov byte [rax + 0x20], 0
mov qword [rax + 0x28], 0
mov byte [rax + 0x38], 0
mov word [rax + 0x40], 0
lock inc qword [rax]
jle 0x1400a7318
mov qword [r15 + 0xa8], r14
test r13, r13
jne 0x1400a6ac3
test edi, edi
je 0x1400a736d
call fcn.1400f2010
mov rbx, rax
mov ebp, edx
lea rcx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.36.0_src_timeinterval.rs
call fcn.1401039d0
mov r12, rdx
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], rdx
lea rcx, [rdx + 0x118]
add rdx, 0xb8
test rax, rax
cmove rcx, rdx
cmp dword [rcx + 0xa8], 0x3b9aca00
je 0x1400a73a6
lea rcx, [rsp + 0x108]
mov edx, 1
lock xadd qword [r12], rdx
test rax, rax
je 0x1400a6c96
test rdx, rdx
js 0x1400a7318
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x64], xmm0
movdqu xmmword [rsp + 0x54], xmm0
lock dec qword [r12]
mov esi, 1
jne 0x1400a6cbd
call fcn.140102a20
jmp 0x1400a6cbd
mov r15, qword [rsp + 0x98]
cmp qword [r15 + 0x50], 0
je 0x1400a72de
movups xmm0, xmmword [rsp + 0x50]
movups xmm1, xmmword [rsp + 0x60]
movups xmm2, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0x1f0], xmm2
movaps xmmword [rsp + 0x1e0], xmm1
movaps xmmword [rsp + 0x1d0], xmm0
mov rax, qword [r15 + 0x40]
mov rcx, qword [r15 + 0x48]
and r14, rcx
movdqu xmm0, xmmword [rax + r14]
pmovmskb edx, xmm0
test edx, edx
jne 0x1400a6bd8
mov r8d, 0x10
nop dword [rax]
add r14, r8
and r14, rcx
movdqu xmm0, xmmword [rax + r14]
pmovmskb edx, xmm0
add r8, 0x10
test edx, edx
je 0x1400a6bc0
tzcnt edx, edx
add rdx, r14
and rdx, rcx
movzx r8d, byte [rax + rdx]
test r8b, r8b
js 0x1400a6bfd
movdqa xmm0, xmmword [rax]
pmovmskb edx, xmm0
tzcnt edx, edx
movzx r8d, byte [rax + rdx]
lea r9, [rdx - 0x10]
and r9, rcx
mov rcx, qword [rsp + 0xb0]
mov byte [rax + rdx], cl
mov byte [rax + r9 + 0x10], cl
neg rdx
lea rcx, [rdx + rdx*8]
lea rsi, [rax + rcx*8]
and r8b, 1
movzx edx, r8b
sub qword [r15 + 0x50], rdx
movdqa xmm0, xmmword [rsp + 0x1d0]
movaps xmm1, xmmword [rsp + 0x1e0]
movaps xmm2, xmmword [rsp + 0x1f0]
movups xmmword [rax + rcx*8 - 0x28], xmm2
movups xmmword [rax + rcx*8 - 0x38], xmm1
movdqu xmmword [rax + rcx*8 - 0x48], xmm0
mov qword [rax + rcx*8 - 0x18], 0
mov qword [rax + rcx*8 - 0x10], 8
mov qword [rax + rcx*8 - 8], 0
inc qword [r15 + 0x58]
mov rax, qword [r15 + 0xa0]
cmp rax, qword [rsi - 8]
ja 0x1400a6994
lea rcx, [rsp + 0x160]
call fcn.140085e50
jmp 0x1400a6df5
test rdx, rdx
js 0x1400a7318
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x64], xmm0
movdqu xmmword [rsp + 0x54], xmm0
lock dec qword [r12]
jne 0x1400a6cbb
call fcn.140102d40
xor esi, esi
movzx eax, byte [0x140198310]
mov edx, 0x70
xor ecx, ecx
call fcn.1400f21c0
test rax, rax
je 0x1400a73be
mov r15, rax
mov qword [rax], rsi
mov qword [rax + 8], r12
mov qword [rax + 0x10], rbx
mov dword [rax + 0x18], ebp
movdqu xmm0, xmmword [rsp + 0x50]
movups xmm1, xmmword [rsp + 0x60]
movdqu xmmword [rax + 0x1c], xmm0
movups xmmword [rax + 0x2c], xmm1
mov eax, dword [rsp + 0x70]
mov dword [r15 + 0x3c], eax
mov qword [r15 + 0x40], 0xffffffffffffffff
pxor xmm0, xmm0
movdqu xmmword [r15 + 0x48], xmm0
movdqu xmmword [r15 + 0x51], xmm0
mov eax, dword [rsp + 0x100]
mov ecx, dword [rsp + 0x103]
mov dword [r15 + 0x61], eax
mov dword [r15 + 0x64], ecx
mov byte [r15 + 0x68], 0
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x33]
mov dword [r15 + 0x69], eax
mov dword [r15 + 0x6c], ecx
mov rax, qword [rsp + 0x1c8]
mov rsi, qword [rax]
jmp 0x1400a6d58
pause
mov rax, qword [rsi + 8]
nop dword [rax]
cmp rax, 0xffffffffffffffff
je 0x1400a6d56
test rax, rax
js 0x1400a7332
lea rcx, [rax + 1]
lock cmpxchg qword [rsi + 8], rcx
jne 0x1400a6d60
mov rax, qword [rsp + 0x98]
mov r12, qword [rax]
test r12, r12
je 0x1400a6e67
mov rbx, qword [rax + 8]
mov rbp, qword [rbx + 0x10]
movzx eax, byte [0x140198310]
mov edx, 0x30
xor ecx, ecx
call fcn.1400f21c0
test rax, rax
je 0x1400a73cd
dec rbp
and rbp, 0xfffffffffffffff0
lea rcx, [r12 + rbp]
add rcx, 0x10
mov qword [rax], r13
mov dword [rax + 8], edi
mov qword [rax + 0x10], r15
mov byte [rax + 0x18], 0
mov edx, dword [rsp + 0x30]
mov r8d, dword [rsp + 0x33]
mov dword [rax + 0x19], edx
mov dword [rax + 0x1c], r8d
mov qword [rax + 0x20], r14
mov qword [rax + 0x28], rsi
lea r8, fcn.140067bf0
mov rdx, rax
call qword [rbx + 0x18]
mov rbx, qword [rsp + 0x28]
cmp byte [rbx], 2
jb 0x1400a6e27
mov rdi, qword [rbx + 8]
lea rcx, [rdi + 0x18]
mov rax, qword [rdi]
mov rdx, qword [rdi + 8]
mov r8, qword [rdi + 0x10]
call qword [rax + 0x10]
mov rcx, qword [0x140198260]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
lea rcx, [rbx + 0x28]
mov rax, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
mov r8, qword [rbx + 0x20]
call qword [rax + 0x10]
movaps xmm6, xmmword [rsp + 0x200]
movaps xmm7, xmmword [rsp + 0x210]
movaps xmm8, xmmword [rsp + 0x220]
add rsp, 0x238
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, 1
lock xadd qword [0x140198060], rax
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x128], r13
mov dword [rsp + 0x130], edi
mov qword [rsp + 0x138], r15
mov byte [rsp + 0x140], 0
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x33]
mov dword [rsp + 0x141], eax
mov dword [rsp + 0x144], ecx
mov qword [rsp + 0x148], r14
mov qword [rsp + 0x150], rsi
lea rax, [rsp + 0x100]
mov qword [rsp + 0x158], rax
mov eax, dword [0x140198314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x120]
test eax, eax
je 0x1400a6f19
cmp eax, 1
je 0x1400a6f46
lea rcx, [rsp + 0x128]
call fcn.140067bf0
mov al, 1
mov byte [rsp + 0x50], al
lea rdx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_srccommonexec.rs
lea rcx, [rsp + 0x50]
call fcn.140120800
mov eax, dword [0x140198314]
mov rcx, qword gs:[0x58]
mov rsi, qword [rcx + rax*8]
lea rcx, [rsi + 0xd0]
lea rdx, [0x14008e500]
call fcn.1400e71a0
mov byte [rsi + 0x120], 1
mov eax, dword [0x140198314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0xd0]
movabs rcx, 0x7ffffffffffffffe
cmp rax, rcx
ja 0x1400a73dc
inc rax
mov ecx, dword [0x140198314]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov qword [rcx + 0xd0], rax
mov rax, qword [rcx + 0xd8]
cmp rax, 2
je 0x1400a73e8
mov rcx, qword [rsp + 0x158]
mov r14, qword [rcx]
test rax, rax
je 0x1400a710e
mov eax, dword [0x140198314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rsi, qword [rax + 0xe0]
lock inc qword [rsi]
jle 0x1400a7318
movzx eax, byte [0x140198310]
mov edx, 0x100
xor ecx, ecx
call fcn.1400f21c0
test rax, rax
je 0x1400a7426
mov rdi, rax
and rdi, 0xffffffffffffff80
mov qword [rdi + 0x78], rax
mov qword [rdi + 0x80], 0xcc
mov qword [rdi + 0x88], 0
lea rax, case.0x1400bc896.30
mov qword [rdi + 0x90], rax
mov qword [rdi + 0xa0], rsi
mov qword [rdi + 0xa8], r14
movups xmm0, xmmword [rsp + 0x128]
movups xmm1, xmmword [rsp + 0x138]
movups xmm2, xmmword [rsp + 0x148]
movups xmmword [rdi + 0xb0], xmm0
movups xmmword [rdi + 0xc0], xmm1
movups xmmword [rdi + 0xd0], xmm2
xorps xmm0, xmm0
movaps xmmword [rdi + 0xe0], xmm0
mov qword [rdi + 0xf0], 0
mov rax, qword [rsi + 0x88]
mov qword [rdi + 0x98], rax
mov rcx, qword [rsi + 0x68]
mov rax, qword [rsi + 0x80]
and rax, r14
lea rdx, [rax + rax*2]
lea rbx, [rcx + rdx*8]
mov r8b, 1
xor eax, eax
lock cmpxchg byte [rcx + rdx*8], r8b
jne 0x1400a72f4
sub rdi, 0xffffffffffffff80
lea rax, [rsi + 0x78]
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], r14
movzx eax, byte [rsi + 0x90]
test al, al
jne 0x1400a721e
add rsi, 0x10
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.14008e8f0
mov byte [rsp + 0xa8], 0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rdi
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x50]
call fcn.140103660
jmp 0x1400a729b
mov eax, dword [0x140198314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rsi, qword [rax + 0xe0]
lock inc qword [rsi]
jle 0x1400a7318
movzx eax, byte [0x140198310]
mov edx, 0x100
xor ecx, ecx
call fcn.1400f21c0
test rax, rax
je 0x1400a7426
mov rdi, rax
and rdi, 0xffffffffffffff80
mov qword [rdi + 0x78], rax
mov qword [rdi + 0x80], 0xcc
mov qword [rdi + 0x88], 0
lea rax, [0x1401551a8]
mov qword [rdi + 0x90], rax
mov qword [rdi + 0xa0], rsi
mov qword [rdi + 0xa8], r14
movups xmm0, xmmword [rsp + 0x128]
movups xmm1, xmmword [rsp + 0x138]
movups xmm2, xmmword [rsp + 0x148]
movups xmmword [rdi + 0xb0], xmm0
movups xmmword [rdi + 0xc0], xmm1
movups xmmword [rdi + 0xd0], xmm2
xorps xmm0, xmm0
movaps xmmword [rdi + 0xe0], xmm0
mov qword [rdi + 0xf0], 0
mov rax, qword [rsi + 0x78]
mov qword [rdi + 0x98], rax
mov rcx, qword [rsi + 0x58]
mov rax, qword [rsi + 0x70]
and rax, r14
lea rdx, [rax + rax*2]
lea rbx, [rcx + rdx*8]
mov r8b, 1
xor eax, eax
lock cmpxchg byte [rcx + rdx*8], r8b
jne 0x1400a730b
sub rdi, 0xffffffffffffff80
lea rax, [rsi + 0x68]
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], r14
movzx eax, byte [rsi + 0x80]
test al, al
je 0x1400a726c
mov rcx, qword [rsp + 0x50]
xor edx, edx
mov al, 1
lock cmpxchg byte [rcx], dl
mov rbx, qword [rsp + 0x28]
jne 0x1400a7301
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [rax + 0x30]
mov rax, 0xffffffffffffffc0
lock xadd qword [rdi], rax
cmp rax, 0x3f
jbe 0x1400a7435
and rax, 0xffffffffffffffc0
cmp rax, 0x40
jne 0x1400a72a0
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [rax + 0x10]
jmp 0x1400a72a0
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.14008e8f0
mov eax, dword [0x140198314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [rax + 0xe0]
mov rdx, rdi
call fcn.140102f60
mov rbx, qword [rsp + 0x28]
mov eax, dword [0x140198314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
dec qword [rax + 0xd0]
mov ecx, 0x84
mov eax, 0xcc
lock cmpxchg qword [rdi], rcx
je 0x1400a6dfa
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [rax + 0x20]
jmp 0x1400a6dfa
lea rdx, [r15 + 0x60]
mov rcx, qword [rsp + 0xa0]
call fcn.1401216e0
jmp 0x1400a6b73
mov rcx, rbx
call fcn.14011f640
jmp 0x1400a70a9
call fcn.14011f990
jmp 0x1400a7236
mov rcx, rbx
call fcn.14011f640
jmp 0x1400a71fc
ud2
lea rcx, str.value_already_sent
lea r8, [0x140155108]
mov edx, 0x12
call fcn.14011add0
call fcn.140120860
lea rcx, str.assertion_failed:_slot.is_none__C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_futures_channel_0.3.30_srconeshot.rs
lea r8, [0x140151df8]
mov edx, 0x20
call fcn.14011aa10
mov ecx, 8
mov edx, 0x20
call fcn.14011a540
mov ecx, 8
mov edx, 0x48
call fcn.14011a540
lea rax, str._period__must_be_non_zero.
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 1
mov qword [rsp + 0x60], 8
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
lea rdx, [0x1401550d8]
lea rcx, [rsp + 0x50]
call fcn.14011a880
lea rcx, [0x1401612f0]
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.36.0_src_timeinterval.rs
mov edx, 0x73
call fcn.14011add0
mov ecx, 8
mov edx, 0x70
call fcn.14011a540
mov ecx, 8
mov edx, 0x30
call fcn.14011a540
lea rcx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.36.0_src_runtimecontextcurrent.rs
call fcn.14011ac50
lea rcx, [rsp + 0x128]
call fcn.140067bf0
mov eax, dword [0x140198314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
dec qword [rax + 0xd0]
xor eax, eax
mov byte [rsp + 0x50], al
lea rdx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_srccommonexec.rs
lea rcx, [rsp + 0x50]
call fcn.140120800
mov ecx, 0x80
mov edx, 0x80
call fcn.14011a540
lea rcx, str.assertion_failed:_prev.ref_count_____1
lea r8, [0x140160b70]
mov edx, 0x27
call fcn.14011aa10
int3