Function at 0x1400a7790
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, 0x218
movdqa xmmword [rsp + 0x200], xmm8
movdqa xmmword [rsp + 0x1f0], xmm7
movdqa xmmword [rsp + 0x1e0], xmm6
mov qword [rsp + 0x1a8], r9
mov rbx, r8
mov qword [rsp + 0x28], rdx
cmp byte [r8 + 0x10], 2
mov qword [rsp + 0x90], rcx
jne 0x1400a78eb
cmp qword [rcx + 0x58], 0
je 0x1400a78eb
mov rax, rcx
mov rcx, qword [rcx + 0x60]
mov rdx, qword [rax + 0x68]
mov rdi, rax
mov rsi, qword [rsp + 0x28]
mov r8, rsi
call fcn.14007c6a0
mov r14, rax
mov rcx, qword [rdi + 0x40]
mov rdi, qword [rdi + 0x48]
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm6, xmm0, 0
lea r13, [rcx - 0x48]
lea r15, [rsi + 0x10]
xor ebp, ebp
pcmpeqd xmm7, xmm7
mov qword [rsp + 0x30], rcx
and r14, rdi
movdqu xmm8, xmmword [rcx + r14]
movdqa xmm0, xmm8
pcmpeqb xmm0, xmm6
pmovmskb esi, xmm0
nop word cs:[rax + rax]
test si, si
je 0x1400a78c0
tzcnt eax, esi
lea ecx, [rsi - 1]
and ecx, esi
mov esi, ecx
add rax, r14
and rax, rdi
neg rax
lea rax, [rax + rax*8]
lea r12, [rax*8]
add r12, r13
mov rcx, qword [rsp + 0x28]
mov rdx, r12
call fcn.140027e10
test al, al
je 0x1400a7860
add r12, 0x10
mov rcx, r15
mov rdx, r12
call fcn.140024370
test al, al
je 0x1400a7860
jmp 0x1400a806e
pcmpeqb xmm8, xmm7
pmovmskb eax, xmm8
test eax, eax
mov rcx, qword [rsp + 0x90]
jne 0x1400a78eb
add r14, rbp
add r14, 0x10
add rbp, 0x10
mov rcx, qword [rsp + 0x30]
jmp 0x1400a783c
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x120], rax
movdqu xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmm2, xmmword [rbx + 0x20]
movaps xmmword [rsp + 0x110], xmm2
movaps xmmword [rsp + 0x100], xmm1
movdqa xmmword [rsp + 0xf0], xmm0
cmp qword [rcx + 0x88], 0
je 0x1400a80d4
mov rsi, qword [rsp + 0x90]
lea rax, [rsi + 0x70]
mov qword [rsp + 0x1a0], rax
mov rcx, qword [rsi + 0x90]
mov rdx, qword [rsi + 0x98]
mov r15, qword [rsp + 0x28]
mov r8, r15
call fcn.14007c6a0
mov rbx, rax
mov r14, qword [rsi + 0x70]
mov rsi, qword [rsi + 0x78]
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm6, xmm0, 0
lea rdi, [r14 - 0x50]
add r15, 0x10
xor eax, eax
mov qword [rsp + 0x30], rax
pcmpeqd xmm7, xmm7
and rbx, rsi
movdqu xmm8, xmmword [r14 + rbx]
movdqa xmm0, xmm8
pcmpeqb xmm0, xmm6
pmovmskb ebp, xmm0
nop word cs:[rax + rax]
test bp, bp
je 0x1400a7a00
tzcnt eax, ebp
lea ecx, [rbp - 1]
and ecx, ebp
mov ebp, ecx
add rax, rbx
and rax, rsi
neg rax
lea r13, [rax + rax*4]
shl r13, 4
lea r12, [rdi + r13]
mov rcx, qword [rsp + 0x28]
mov rdx, r12
call fcn.140027e10
test al, al
je 0x1400a79b0
add r12, 0x10
mov rcx, r15
mov rdx, r12
call fcn.140024370
test al, al
je 0x1400a79b0
jmp 0x1400a7a2c
pcmpeqb xmm8, xmm7
pmovmskb eax, xmm8
test eax, eax
jne 0x1400a80d4
mov rax, qword [rsp + 0x30]
add rbx, rax
add rbx, 0x10
add rax, 0x10
mov qword [rsp + 0x30], rax
jmp 0x1400a798d
add r14, r13
lea r15, [rsp + 0x122]
xor r12d, r12d
jmp 0x1400a7a4d
lea rcx, [rsp + 0x160]
call fcn.140079b20
mov rax, qword [r14 - 8]
test rax, rax
je 0x1400a8087
mov rcx, qword [r14 - 0x10]
lea rdx, [rcx + 1]
mov r8, qword [r14 - 0x20]
mov r9, qword [r14 - 0x18]
cmp rdx, r8
cmovb r8, r12
neg r8
lea rdx, [rcx + r8]
inc rdx
mov qword [r14 - 0x10], rdx
dec rax
mov qword [r14 - 8], rax
mov rax, qword [r9 + rcx*8]
mov qword [rsp + 0x160], rax
movzx eax, byte [rax + 0x80]
test al, al
je 0x1400a7ae0
mov rsi, qword [rsp + 0x160]
mov al, 1
xchg byte [rsi + 0x80], al
mov al, 1
xchg byte [rsi + 0x60], al
test al, al
je 0x1400a7b80
mov al, 1
xchg byte [rsi + 0x78], al
test al, al
je 0x1400a7bae
mov rax, qword [rsp + 0x160]
lock dec qword [rax]
jne 0x1400a7a4d
jmp 0x1400a7a40
movzx r13d, byte [rsp + 0x121]
mov byte [rsp + 0x121], 2
cmp r13b, 2
je 0x1400a8c28
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x80], rax
movzx esi, byte [rsp + 0x100]
mov rbp, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x110]
mov rdi, qword [rsp + 0x118]
movzx eax, byte [rsp + 0x120]
mov byte [rsp + 0xe8], al
cmp sil, 2
jne 0x1400a7be2
test rbp, rbp
je 0x1400a7c4a
mov rcx, rbp
call qword [rbx + 0x18]
mov rbp, rax
mov rbx, rdx
lock inc qword [rdi]
jg 0x1400a7c56
jmp 0x1400a8c26
mov rax, qword [rsi + 0x50]
mov rcx, qword [rsi + 0x58]
mov qword [rsi + 0x50], 0
test rax, rax
je 0x1400a7c33
xor edx, edx
xchg byte [rsi + 0x60], dl
call qword [rax + 8]
mov al, 1
xchg byte [rsi + 0x78], al
test al, al
jne 0x1400a7ac7
mov rax, qword [rsi + 0x68]
mov rcx, qword [rsi + 0x70]
mov qword [rsi + 0x68], 0
test rax, rax
je 0x1400a7bc6
call qword [rax + 0x18]
xor eax, eax
xchg byte [rsi + 0x78], al
mov rax, qword [rsp + 0x160]
lock dec qword [rax]
jne 0x1400a7a4d
jmp 0x1400a7a40
movzx eax, word [r15 + 4]
mov word [rsp + 0xb4], ax
mov ecx, dword [r15]
mov dword [rsp + 0xb0], ecx
mov edx, dword [r15 - 0x21]
mov r8d, dword [r15 - 0x1e]
mov dword [rsp + 0x40], edx
mov dword [rsp + 0x43], r8d
mov edx, dword [rsp + 0x40]
mov r8d, dword [rsp + 0x43]
mov dword [rsp + 0xa0], edx
mov dword [rsp + 0xa3], r8d
mov dword [rsp + 0xe0], ecx
mov word [rsp + 0xe4], ax
jmp 0x1400a7ca9
xor eax, eax
xchg byte [rsi + 0x60], al
mov al, 1
xchg byte [rsi + 0x78], al
test al, al
jne 0x1400a7ac7
jmp 0x1400a7bae
xor ebp, ebp
lock inc qword [rdi]
jle 0x1400a8c26
mov rax, qword [rsp + 0x30]
lock inc qword [rax]
jle 0x1400a8c26
mov rax, qword [rsp + 0x80]
lock inc qword [rax + 0x1c8]
lock inc qword [rax]
jle 0x1400a8c26
movzx eax, word [r15 + 4]
mov word [rsp + 0xb4], ax
mov eax, dword [r15]
mov dword [rsp + 0xb0], eax
mov byte [rsp + 0x100], 2
mov byte [rsp + 0x121], r13b
mov sil, 2
mov rax, qword [rsp + 0x160]
mov ecx, dword [rsp + 0xa0]
mov edx, dword [rsp + 0xa3]
mov dword [rsp + 0xb0], ecx
mov dword [rsp + 0xb3], edx
mov ecx, dword [rsp + 0xe0]
mov dword [rsp + 0x38], ecx
movzx ecx, word [rsp + 0xe4]
mov word [rsp + 0x3c], cx
mov qword [rsp + 0x40], rax
movzx ecx, byte [rax + 0x80]
test cl, cl
jne 0x1400a7d02
mov cl, 1
xchg byte [rax + 0x48], cl
test cl, cl
je 0x1400a7e84
mov r12, r15
mov eax, dword [rsp + 0xb0]
mov ecx, dword [rsp + 0xb3]
mov dword [rsp + 0x9b], ecx
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x88], eax
movzx eax, word [rsp + 0x3c]
mov word [rsp + 0x8c], ax
mov r15, qword [rsp + 0x40]
mov al, 1
xchg byte [r15 + 0x80], al
mov al, 1
xchg byte [r15 + 0x60], al
test al, al
je 0x1400a7e22
mov al, 1
xchg byte [r15 + 0x78], al
test al, al
je 0x1400a7e52
mov rax, qword [rsp + 0x40]
lock dec qword [rax]
jne 0x1400a7d78
lea rcx, [rsp + 0x40]
call fcn.140079b20
movq xmm0, rdi
movq xmm6, rbx
punpcklqdq xmm6, xmm0
mov r15, r12
xor r12d, r12d
movzx ebx, byte [rsp + 0xe8]
cmp byte [rsp + 0x121], 2
je 0x1400a7dab
lea rcx, [rsp + 0xf0]
call fcn.14009cd10
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0xf0], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0xf8], rax
mov byte [rsp + 0x100], sil
mov eax, dword [rsp + 0x98]
mov ecx, dword [rsp + 0x9b]
mov dword [r15 - 0x1e], ecx
mov dword [r15 - 0x21], eax
mov qword [rsp + 0x108], rbp
movdqa xmmword [rsp + 0x110], xmm6
mov byte [rsp + 0x120], bl
mov byte [rsp + 0x121], r13b
movzx eax, word [rsp + 0x8c]
mov word [r15 + 4], ax
mov eax, dword [rsp + 0x88]
mov dword [r15], eax
jmp 0x1400a7a4d
mov rax, qword [r15 + 0x50]
mov rcx, qword [r15 + 0x58]
mov qword [r15 + 0x50], 0
test rax, rax
je 0x1400a7f62
xor edx, edx
xchg byte [r15 + 0x60], dl
call qword [rax + 8]
mov al, 1
xchg byte [r15 + 0x78], al
test al, al
jne 0x1400a7d63
mov rax, qword [r15 + 0x68]
mov rcx, qword [r15 + 0x70]
mov qword [r15 + 0x68], 0
test rax, rax
je 0x1400a7e6a
call qword [rax + 0x18]
xor eax, eax
xchg byte [r15 + 0x78], al
mov rax, qword [rsp + 0x40]
lock dec qword [rax]
je 0x1400a7d6e
jmp 0x1400a7d78
cmp byte [rax + 0x41], 2
jne 0x1400a8c45
mov rcx, qword [rsp + 0x30]
mov qword [rax + 0x10], rcx
mov rcx, qword [rsp + 0x80]
mov qword [rax + 0x18], rcx
mov byte [rax + 0x20], sil
mov ecx, dword [rsp + 0xb0]
mov edx, dword [rsp + 0xb3]
mov dword [rax + 0x21], ecx
mov dword [rax + 0x24], edx
mov qword [rax + 0x28], rbp
mov qword [rax + 0x30], rbx
mov qword [rax + 0x38], rdi
movzx ecx, byte [rsp + 0xe8]
mov byte [rax + 0x40], cl
mov byte [rax + 0x41], r13b
mov ecx, dword [rsp + 0x38]
mov dword [rax + 0x42], ecx
movzx ecx, word [rsp + 0x3c]
mov word [rax + 0x46], cx
xor ecx, ecx
xchg byte [rax + 0x48], cl
movzx ecx, byte [rax + 0x80]
test cl, cl
je 0x1400a7f17
mov cl, 1
xchg byte [rax + 0x48], cl
test cl, cl
jne 0x1400a7f17
movzx r13d, byte [rax + 0x41]
mov byte [rax + 0x41], 2
cmp r13b, 2
jne 0x1400a7ff4
xor ecx, ecx
xchg byte [rax + 0x48], cl
mov rsi, qword [rsp + 0x40]
mov al, 1
xchg byte [rsi + 0x80], al
mov al, 1
xchg byte [rsi + 0x60], al
test al, al
je 0x1400a7f7b
mov al, 1
xchg byte [rsi + 0x78], al
test al, al
je 0x1400a7fa1
mov rax, qword [rsp + 0x40]
lock dec qword [rax]
jne 0x1400a7fcd
lea rcx, [rsp + 0x40]
call fcn.140079b20
cmp byte [rsp + 0x121], 2
jne 0x1400a7a4d
jmp 0x1400a8080
xor eax, eax
xchg byte [r15 + 0x60], al
mov al, 1
xchg byte [r15 + 0x78], al
test al, al
jne 0x1400a7d63
jmp 0x1400a7e52
mov rax, qword [rsi + 0x50]
mov rcx, qword [rsi + 0x58]
mov qword [rsi + 0x50], 0
test rax, rax
je 0x1400a7fe0
xor edx, edx
xchg byte [rsi + 0x60], dl
call qword [rax + 8]
mov al, 1
xchg byte [rsi + 0x78], al
test al, al
jne 0x1400a7f36
mov rax, qword [rsi + 0x68]
mov rcx, qword [rsi + 0x70]
mov qword [rsi + 0x68], 0
test rax, rax
je 0x1400a7fb9
call qword [rax + 0x18]
xor eax, eax
xchg byte [rsi + 0x78], al
mov rax, qword [rsp + 0x40]
lock dec qword [rax]
je 0x1400a7f45
cmp byte [rsp + 0x121], 2
jne 0x1400a7a4d
jmp 0x1400a8080
xor eax, eax
xchg byte [rsi + 0x60], al
mov al, 1
xchg byte [rsi + 0x78], al
test al, al
jne 0x1400a7f36
jmp 0x1400a7fa1
lea rcx, [rax + 0x21]
lea rdx, [rax + 0x42]
mov r8, qword [rax + 0x10]
mov qword [rsp + 0x30], r8
mov r8, qword [rax + 0x18]
mov qword [rsp + 0x80], r8
movzx esi, byte [rax + 0x20]
mov r8d, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x9b], ecx
mov dword [rsp + 0x98], r8d
mov rbp, qword [rax + 0x28]
movdqu xmm6, xmmword [rax + 0x30]
movzx ebx, byte [rax + 0x40]
movzx ecx, word [rdx + 4]
mov word [rsp + 0x8c], cx
mov ecx, dword [rdx]
mov dword [rsp + 0x88], ecx
xor ecx, ecx
xchg byte [rax + 0x48], cl
lea rcx, [rsp + 0x40]
call fcn.1400a8d70
cmp byte [rsp + 0x121], 2
jne 0x1400a7d9e
jmp 0x1400a7dab
mov rcx, rbx
call fcn.14009cd10
mov r14, qword [rsp + 0x28]
jmp 0x1400a867e
cmp qword [r14 - 8], 0
jne 0x1400a80d4
lea rcx, [rsp + 0x40]
mov rdx, qword [rsp + 0x1a0]
mov r8, qword [rsp + 0x28]
call fcn.1400d38b0
mov rsi, qword [rsp + 0x40]
movabs rax, 0x8000000000000000
cmp rsi, rax
je 0x1400a80d4
lea rcx, [rsp + 0x40]
call fcn.1400c91e0
test rsi, rsi
je 0x1400a80d4
mov r8, qword [rsp + 0x48]
mov rcx, qword [0x140194260]
xor edx, edx
call sub.kernel32.dll_HeapFree
cmp byte [rsp + 0x121], 2
mov r14, qword [rsp + 0x28]
je 0x1400a867e
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x190], rax
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmm1, xmmword [rsp + 0x100]
movaps xmm2, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x180], xmm2
movaps xmmword [rsp + 0x170], xmm1
movaps xmmword [rsp + 0x160], xmm0
movzx esi, byte [r14]
test esi, esi
je 0x1400a813b
cmp esi, 1
jne 0x1400a813d
movzx eax, byte [r14 + 1]
jmp 0x1400a8190
jmp 0x1400a8190
mov rdi, qword [r14 + 8]
movzx eax, byte [0x140194310]
mov edx, 0x20
xor ecx, ecx
call fcn.1400eed30
test rax, rax
je 0x1400a8c5d
mov rbx, rax
lea rdx, [rdi + 0x18]
mov rax, qword [rdi]
mov r8, qword [rdi + 8]
mov r9, qword [rdi + 0x10]
lea rcx, [rsp + 0xb0]
call qword [rax]
movups xmm0, xmmword [rsp + 0xb0]
movups xmm1, xmmword [rsp + 0xc0]
movups xmmword [rbx + 0x10], xmm1
movups xmmword [rbx], xmm0
mov byte [rsp + 0x40], sil
mov byte [rsp + 0x41], al
mov qword [rsp + 0x48], rbx
lea r15, [rsp + 0x50]
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 + 0x90]
lea rax, [rsi + 0x40]
mov qword [rsp + 0x80], rax
mov rcx, qword [rsi + 0x60]
mov rdx, qword [rsi + 0x68]
lea r12, [rsp + 0x40]
mov r8, r12
call fcn.14007c6a0
mov rbx, rax
shr rax, 0x39
mov r13, qword [rsi + 0x40]
mov r14, qword [rsi + 0x48]
mov rbp, r14
and rbp, rbx
mov qword [rsp + 0xe8], rax
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm6, xmm0, 0
xor eax, eax
pcmpeqd xmm7, xmm7
mov qword [rsp + 0x30], rax
movdqu xmm8, xmmword [r13 + rbp]
movdqa xmm0, xmm8
pcmpeqb xmm0, xmm6
pmovmskb esi, xmm0
test esi, esi
jne 0x1400a826c
pcmpeqb xmm8, xmm7
pmovmskb eax, xmm8
test eax, eax
mov rax, qword [rsp + 0x30]
jne 0x1400a8545
add rbp, rax
add rbp, 0x10
add rax, 0x10
and rbp, r14
jmp 0x1400a821b
lea eax, [rsi - 1]
and eax, esi
mov esi, eax
test ax, ax
je 0x1400a8238
tzcnt eax, esi
add rax, rbp
and rax, r14
neg rax
lea rdi, [rax + rax*8]
lea rcx, [rdi*8 - 0x48]
add rcx, r13
mov rdx, r12
call fcn.140027e10
test al, al
je 0x1400a8260
lea rdi, [rdi*8]
add rdi, r13
lea rcx, [rdi - 0x38]
mov rdx, r15
call fcn.140024370
test al, al
je 0x1400a8260
movups xmm0, xmmword [rsp + 0x40]
movups xmm1, xmmword [rsp + 0x50]
movups xmm2, xmmword [rsp + 0x60]
movaps xmmword [rsp + 0x1d0], xmm2
movaps xmmword [rsp + 0x1c0], xmm1
movaps xmmword [rsp + 0x1b0], xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x60], xmm2
movaps xmmword [rsp + 0x50], xmm1
mov qword [rsp + 0x70], rdi
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x78], rax
movzx eax, byte [rsp + 0x40]
cmp al, 3
mov r14, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x90]
je 0x1400a8350
cmp al, 2
jb 0x1400a8339
mov rbx, qword [rsp + 0x48]
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 [0x140194260]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
lea rcx, [rsp + 0x68]
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
call qword [rax + 0x10]
mov rax, qword [rsi + 0xa0]
cmp rax, qword [rdi - 8]
jbe 0x1400a8671
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0x70], rax
movaps xmm0, xmmword [rsp + 0x160]
movaps xmm1, xmmword [rsp + 0x170]
movaps xmm2, xmmword [rsp + 0x180]
movaps xmmword [rsp + 0x60], xmm2
movaps xmmword [rsp + 0x50], xmm1
movaps xmmword [rsp + 0x40], xmm0
call fcn.1400eeb90
mov rbx, rax
mov ebp, edx
mov rax, qword [rdi - 8]
cmp rax, qword [rdi - 0x18]
jne 0x1400a83b6
lea rcx, [rdi - 0x18]
call fcn.140034d90
mov rax, qword [rdi - 8]
mov rcx, qword [rdi - 0x10]
lea rax, [rax + rax*8]
mov rdx, qword [rsp + 0x70]
mov qword [rcx + rax*8 + 0x30], rdx
movdqa xmm0, xmmword [rsp + 0x40]
movaps xmm1, xmmword [rsp + 0x50]
movaps xmm2, xmmword [rsp + 0x60]
movups xmmword [rcx + rax*8 + 0x20], xmm2
movups xmmword [rcx + rax*8 + 0x10], xmm1
movdqu xmmword [rcx + rax*8], xmm0
mov qword [rcx + rax*8 + 0x38], rbx
mov dword [rcx + rax*8 + 0x40], ebp
inc qword [rdi - 8]
cmp qword [rsi + 0xa8], 0
jne 0x1400a867e
mov edi, dword [rsi + 0xb8]
cmp edi, 0x3b9aca00
je 0x1400a867e
mov r13, qword [rsi + 0xb0]
movzx eax, byte [0x140194310]
mov edx, 0x48
xor ecx, ecx
call fcn.1400eed30
test rax, rax
je 0x1400a8c6c
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 0x1400a8c26
mov qword [rsi + 0xa8], r14
test r13, r13
jne 0x1400a8485
test edi, edi
je 0x1400a8c7b
call fcn.1400eeb90
mov rbx, rax
mov ebp, edx
lea rcx, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.36.0_src_timeinterval.rs
call fcn.140104390
mov r15, rdx
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], rdx
lea rcx, [rdx + 0x118]
add rdx, 0xb8
test rax, rax
cmove rcx, rdx
cmp dword [rcx + 0xa8], 0x3b9aca00
je 0x1400a8cb4
lea rcx, [rsp + 0xa8]
mov edx, 1
lock xadd qword [r15], rdx
test rax, rax
je 0x1400a86eb
test rdx, rdx
js 0x1400a8c26
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x44], xmm0
movdqu xmmword [rsp + 0x54], xmm0
movups xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0xb0], xmm0
movups xmm0, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0xc0], xmm0
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0xd0], eax
lock dec qword [r15]
mov esi, 1
jne 0x1400a8736
call fcn.1400f3920
jmp 0x1400a8736
mov rsi, qword [rsp + 0x90]
cmp qword [rsi + 0x50], 0
je 0x1400a8c10
movups xmm0, xmmword [rsp + 0x40]
movups xmm1, xmmword [rsp + 0x50]
movups xmm2, xmmword [rsp + 0x60]
movaps xmmword [rsp + 0x1d0], xmm2
movaps xmmword [rsp + 0x1c0], xmm1
movaps xmmword [rsp + 0x1b0], xmm0
mov rax, qword [rsi + 0x40]
mov rcx, qword [rsi + 0x48]
and rbx, rcx
movdqu xmm0, xmmword [rax + rbx]
pmovmskb edx, xmm0
test edx, edx
mov r14, qword [rsp + 0x28]
jne 0x1400a85c7
mov r8d, 0x10
nop word cs:[rax + rax]
add rbx, r8
and rbx, rcx
movdqu xmm0, xmmword [rax + rbx]
pmovmskb edx, xmm0
add r8, 0x10
test edx, edx
je 0x1400a85b0
tzcnt edx, edx
add rdx, rbx
and rdx, rcx
movzx r8d, byte [rax + rdx]
test r8b, r8b
js 0x1400a85ec
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 + 0xe8]
mov byte [rax + rdx], cl
mov byte [rax + r9 + 0x10], cl
neg rdx
lea rcx, [rdx + rdx*8]
lea rdi, [rax + rcx*8]
and r8b, 1
movzx edx, r8b
sub qword [rsi + 0x50], rdx
movaps xmm0, xmmword [rsp + 0x1b0]
movaps xmm1, xmmword [rsp + 0x1c0]
movaps xmm2, xmmword [rsp + 0x1d0]
movups xmmword [rax + rcx*8 - 0x28], xmm2
movups xmmword [rax + rcx*8 - 0x38], xmm1
movups 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 [rsi + 0x58]
mov rax, qword [rsi + 0xa0]
cmp rax, qword [rdi - 8]
ja 0x1400a8361
lea rcx, [rsp + 0x160]
call fcn.14009cd10
cmp byte [r14], 2
jb 0x1400a86ab
mov rdi, qword [r14 + 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 [0x140194260]
xor edx, edx
mov r8, rdi
call sub.kernel32.dll_HeapFree
lea rcx, [r14 + 0x28]
mov rax, qword [r14 + 0x10]
mov rdx, qword [r14 + 0x18]
mov r8, qword [r14 + 0x20]
call qword [rax + 0x10]
movaps xmm6, xmmword [rsp + 0x1e0]
movaps xmm7, xmmword [rsp + 0x1f0]
movaps xmm8, xmmword [rsp + 0x200]
add rsp, 0x218
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
test rdx, rdx
js 0x1400a8c26
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x44], xmm0
movdqu xmmword [rsp + 0x54], xmm0
movups xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0xb0], xmm0
movups xmm0, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0xc0], xmm0
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0xd0], eax
lock dec qword [r15]
jne 0x1400a8734
call fcn.1400f3860
xor esi, esi
movzx eax, byte [0x140194310]
mov edx, 0x70
xor ecx, ecx
call fcn.1400eed30
test rax, rax
je 0x1400a8ccc
mov r12, rax
mov qword [rax], rsi
mov qword [rax + 8], r15
mov qword [rax + 0x10], rbx
mov dword [rax + 0x18], ebp
movdqa xmm0, xmmword [rsp + 0xb0]
movaps xmm1, xmmword [rsp + 0xc0]
movdqu xmmword [rax + 0x1c], xmm0
movups xmmword [rax + 0x2c], xmm1
mov eax, dword [rsp + 0xd0]
mov dword [r12 + 0x3c], eax
mov qword [r12 + 0x40], 0xffffffffffffffff
pxor xmm0, xmm0
movdqu xmmword [r12 + 0x48], xmm0
movdqu xmmword [r12 + 0x51], xmm0
mov eax, dword [rsp + 0x40]
mov ecx, dword [rsp + 0x43]
mov dword [r12 + 0x61], eax
mov dword [r12 + 0x64], ecx
mov byte [r12 + 0x68], 0
mov eax, dword [rsp + 0xa0]
mov ecx, dword [rsp + 0xa3]
mov dword [r12 + 0x69], eax
mov dword [r12 + 0x6c], ecx
mov rax, qword [rsp + 0x1a8]
mov rsi, qword [rax]
jmp 0x1400a87e3
pause
mov rax, qword [rsi + 8]
nop word [rax + rax]
cmp rax, 0xffffffffffffffff
je 0x1400a87e1
test rax, rax
js 0x1400a8c40
lea rcx, [rax + 1]
lock cmpxchg qword [rsi + 8], rcx
jne 0x1400a87f0
mov rax, qword [rsp + 0x90]
mov r15, qword [rax]
test r15, r15
je 0x1400a888c
mov rbx, qword [rax + 8]
mov rbp, qword [rbx + 0x10]
movzx eax, byte [0x140194310]
mov edx, 0x30
xor ecx, ecx
call fcn.1400eed30
test rax, rax
je 0x1400a8cdb
dec rbp
and rbp, 0xfffffffffffffff0
lea rcx, [r15 + rbp]
add rcx, 0x10
mov qword [rax], r13
mov dword [rax + 8], edi
mov qword [rax + 0x10], r12
mov byte [rax + 0x18], 0
mov edx, dword [rsp + 0xa0]
mov r8d, dword [rsp + 0xa3]
mov dword [rax + 0x19], edx
mov dword [rax + 0x1c], r8d
mov qword [rax + 0x20], r14
mov qword [rax + 0x28], rsi
lea r8, fcn.140070470
mov rdx, rax
call qword [rbx + 0x18]
jmp 0x1400a8076
mov eax, 1
lock xadd qword [0x140194048], rax
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0x128], r13
mov dword [rsp + 0x130], edi
mov qword [rsp + 0x138], r12
mov byte [rsp + 0x140], 0
mov eax, dword [rsp + 0xa0]
mov ecx, dword [rsp + 0xa3]
mov dword [rsp + 0x141], eax
mov dword [rsp + 0x144], ecx
mov qword [rsp + 0x148], r14
mov qword [rsp + 0x150], rsi
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x158], rax
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x130]
cmp eax, 1
mov r14, qword [rsp + 0x28]
je 0x1400a8956
test eax, eax
jne 0x1400a8d43
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov rsi, qword [rcx + rax*8]
lea rcx, [rsi + 0xe0]
lea rdx, [0x140101f60]
call fcn.1400e3a60
mov byte [rsi + 0x130], 1
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0xe0]
movabs rcx, 0x7ffffffffffffffe
cmp rax, rcx
ja 0x1400a8cea
inc rax
mov ecx, dword [0x140194314]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov qword [rcx + 0xe0], rax
mov rax, qword [rcx + 0xe8]
cmp rax, 2
je 0x1400a8cf6
mov rcx, qword [rsp + 0x158]
mov rsi, qword [rcx]
mov ecx, dword [0x140194314]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov rbx, qword [rcx + 0xf0]
mov ecx, 1
lock xadd qword [rbx], rcx
test rax, rax
je 0x1400a8ae3
test rcx, rcx
js 0x1400a8c26
movzx eax, byte [0x140194310]
mov edx, 0x100
xor ecx, ecx
call fcn.1400eed30
test rax, rax
je 0x1400a8d34
lea rcx, [rbx + 0x68]
mov rdx, rax
and rdx, 0xffffffffffffff80
lea rdi, [rdx + 0x80]
mov qword [rdx + 0x78], rax
mov qword [rdx + 0x80], 0xcc
mov qword [rdx + 0x88], 0
lea rax, [0x14014fed0]
mov qword [rdx + 0x90], rax
mov qword [rdx + 0x98], 0
mov qword [rdx + 0xa0], rbx
mov qword [rdx + 0xa8], rsi
movups xmm0, xmmword [rsp + 0x128]
movups xmm1, xmmword [rsp + 0x138]
movups xmm2, xmmword [rsp + 0x148]
movups xmmword [rdx + 0xb0], xmm0
movups xmmword [rdx + 0xc0], xmm1
movups xmmword [rdx + 0xd0], xmm2
xorps xmm0, xmm0
movaps xmmword [rdx + 0xe0], xmm0
mov qword [rdx + 0xf0], 0
mov rdx, rdi
mov r8, rdi
call fcn.1400a0ba0
test rax, rax
je 0x1400a8bd2
add rbx, 0x10
mov byte [rsp + 0x38], 0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x38]
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x40]
call fcn.140102390
jmp 0x1400a8bd2
test rcx, rcx
js 0x1400a8c26
movzx eax, byte [0x140194310]
mov edx, 0x100
xor ecx, ecx
call fcn.1400eed30
test rax, rax
je 0x1400a8d34
mov rcx, rax
and rcx, 0xffffffffffffff80
lea rdi, [rcx + 0x80]
mov qword [rcx + 0x78], rax
mov qword [rcx + 0x80], 0xcc
mov qword [rcx + 0x88], 0
lea rax, [0x14014fe80]
mov qword [rcx + 0x90], rax
mov qword [rcx + 0x98], 0
mov qword [rcx + 0xa0], rbx
add rbx, 0x58
mov qword [rcx + 0xa8], rsi
movups xmm0, xmmword [rsp + 0x128]
movups xmm1, xmmword [rsp + 0x138]
movups xmm2, xmmword [rsp + 0x148]
movups xmmword [rcx + 0xb0], xmm0
movups xmmword [rcx + 0xc0], xmm1
movups xmmword [rcx + 0xd0], xmm2
xorps xmm0, xmm0
movaps xmmword [rcx + 0xe0], xmm0
mov qword [rcx + 0xf0], 0
mov rcx, rbx
mov rdx, rdi
mov r8, rdi
call fcn.1400a0ba0
test rax, rax
je 0x1400a8bd2
mov ecx, dword [0x140194314]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
lea rcx, [rcx + 0xf0]
mov rdx, rax
call fcn.1400f4130
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
dec qword [rax + 0xe0]
mov ecx, 0x84
mov eax, 0xcc
lock cmpxchg qword [rdi], rcx
je 0x1400a867e
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [rax + 0x20]
jmp 0x1400a867e
lea rdx, [rsi + 0x60]
mov rcx, qword [rsp + 0x80]
call fcn.14011e7e0
jmp 0x1400a8558
ud2
lea rcx, str.value_already_sent
lea r8, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_srcclientpool.rs
mov edx, 0x12
call fcn.140117fa0
call fcn.14011d8a0
lea rcx, str.assertion_failed:_slot.is_none__C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001f_futures_channel_0.3.30_srconeshot.rs
lea r8, [0x140151410]
mov edx, 0x20
call fcn.140117c40
mov ecx, 8
mov edx, 0x20
call fcn.1401178d0
mov ecx, 8
mov edx, 0x48
call fcn.1401178d0
lea rax, [0x14015e4f0]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 1
mov qword [rsp + 0x50], 8
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
lea rdx, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_srcclientpool.rs
lea rcx, [rsp + 0x40]
call fcn.140117b70
lea rcx, [0x14015d618]
lea r8, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.36.0_src_timeinterval.rs
mov edx, 0x73
call fcn.140117fa0
mov ecx, 8
mov edx, 0x70
call fcn.1401178d0
mov ecx, 8
mov edx, 0x30
call fcn.1401178d0
lea rcx, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.36.0_src_runtimecontextcurrent.rs
call fcn.140117e90
lea rcx, [rsp + 0x128]
call fcn.140070470
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
dec qword [rax + 0xe0]
xor eax, eax
mov byte [rsp + 0x40], al
lea rdx, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_srccommonexec.rs
lea rcx, [rsp + 0x40]
call fcn.14011dad0
mov ecx, 0x80
mov edx, 0x80
call fcn.1401178d0
lea rcx, [rsp + 0x128]
call fcn.140070470
mov al, 1
mov byte [rsp + 0x40], al
lea rdx, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.28_srccommonexec.rs
lea rcx, [rsp + 0x40]
call fcn.14011dad0
int3