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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x438
lea rbp, [rsp + 0x80]
and rsp, 0xffffffffffffff80
mov qword [rsp + 0x148], r9
mov rsi, rdx
mov rdi, rcx
cmp byte [r8 + 0x10], 2
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x80], rcx
jne 0x140077ba3
cmp qword [rdi + 0x50], 0
je 0x140077ba3
mov qword [rsp + 0x68], r8
mov rcx, qword [rdi + 0x60]
mov rdx, qword [rdi + 0x68]
mov r8, rsi
call fcn.140079060
mov rcx, qword [rdi + 0x40]
mov r8, qword [rdi + 0x58]
mov rdx, rax
shr rdx, 0x39
movd xmm0, edx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
lea rdx, [r8 - 0x48]
mov qword [rsp + 0x50], rdx
movzx edx, byte [rsi + 1]
mov byte [rsp + 0x48], dl
xor edx, edx
mov qword [rsp + 0x88], rdx
pcmpeqd xmm1, xmm1
mov qword [rsp + 0x58], r8
and rax, rcx
movdqu xmm2, xmmword [r8 + rax]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb edx, xmm3
test edx, edx
je 0x140077b60
mov r8, qword [rsp + 0x40]
movzx r11d, byte [r8]
jmp 0x1400779e6
test dl, dl
je 0x140078f2b
lea edx, [rsi - 1]
and edx, esi
test dx, dx
je 0x140077b60
mov esi, edx
tzcnt edx, esi
add rdx, rax
and rdx, rcx
neg rdx
lea rdx, [rdx + rdx*8]
mov r8, qword [rsp + 0x50]
lea rdi, [r8 + rdx*8]
cmp r11d, 1
je 0x140077aa0
cmp r11d, 2
jne 0x140078f2b
movzx edx, byte [rdi]
cmp dl, 2
jne 0x1400779d0
mov rdx, qword [rsp + 0x40]
mov rdx, qword [rdx + 8]
mov r14, qword [rdx + 8]
mov r12, qword [rdi + 8]
cmp r14, qword [r12 + 8]
jne 0x1400779d8
mov r15, qword [rdx]
mov r12, qword [r12]
mov r13, r14
neg r13
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
lea r10, [rdx + r13]
cmp r10, 0xffffffffffffffff
je 0x140077ad0
movzx r10d, byte [r15 + rdx + 1]
movzx r9d, byte [r12 + rdx + 1]
lea ebx, [r10 - 0x41]
cmp bl, 0x1a
setb bl
shl bl, 5
lea r8d, [r9 - 0x41]
cmp r8b, 0x1a
setb r8b
shl r8b, 5
or bl, r10b
or r8b, r9b
inc rdx
cmp bl, r8b
je 0x140077a50
cmp rdx, r14
jb 0x1400779d8
jmp 0x140077ad0
movzx edx, byte [rdi]
cmp dl, 1
jne 0x1400779d0
movzx edx, byte [rdi + 1]
cmp byte [rsp + 0x48], 0
je 0x140077ac0
test dl, dl
jne 0x140077ad0
jmp 0x1400779d8
test dl, dl
jne 0x1400779d8
nop dword [rax + rax]
mov rdx, qword [rsp + 0x40]
mov r14, qword [rdx + 0x18]
cmp r14, qword [rdi + 0x18]
jne 0x1400779d8
mov rdx, qword [rsp + 0x40]
mov r15, qword [rdx + 0x10]
mov rdi, qword [rdi + 0x10]
mov r12, r14
neg r12
mov rdx, 0xffffffffffffffff
nop dword [rax]
lea r8, [r12 + rdx]
cmp r8, 0xffffffffffffffff
je 0x1400781f8
movzx r8d, byte [r15 + rdx + 1]
movzx r9d, byte [rdi + rdx + 1]
lea r10d, [r8 - 0x41]
cmp r10b, 0x1a
setb r10b
shl r10b, 5
lea ebx, [r9 - 0x41]
cmp bl, 0x1a
setb bl
shl bl, 5
or r10b, r8b
or bl, r9b
inc rdx
cmp r10b, bl
je 0x140077b00
cmp rdx, r14
jb 0x1400779d8
jmp 0x1400781f8
pcmpeqb xmm2, xmm1
pmovmskb edx, xmm2
test edx, edx
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x80]
mov r8, qword [rsp + 0x68]
jne 0x140077ba3
mov rdx, qword [rsp + 0x88]
add rax, rdx
add rax, 0x10
add rdx, 0x10
mov qword [rsp + 0x88], rdx
mov r8, qword [rsp + 0x58]
jmp 0x14007799a
movdqu xmm0, xmmword [r8]
movdqu xmm1, xmmword [r8 + 0x10]
movdqu xmm2, xmmword [r8 + 0x20]
movdqa xmmword [rsp + 0xf0], xmm2
movdqa xmmword [rsp + 0xe0], xmm1
movdqa xmmword [rsp + 0xd0], xmm0
lea rcx, [rdi + 0x70]
mov qword [rsp + 0x108], rcx
mov rdx, rsi
call fcn.1400792e0
test rax, rax
je 0x140078245
mov rsi, rax
mov rax, qword [rax + 0x18]
test rax, rax
je 0x140078213
mov qword [rsp + 0x88], rsi
jmp 0x140077c40
mov r10, r15
mov r11, rbx
mov r13, r12
movzx ecx, byte [rsp + 0x50]
mov rsi, qword [rsp + 0x88]
mov rax, qword [rsi + 0x18]
mov r15, r10
mov rbx, r11
mov byte [rsp + 0x50], cl
mov r12, r13
test rax, rax
je 0x140078213
mov rcx, qword [rsi + 0x10]
lea rdx, [rcx + 1]
mov r8, qword [rsi]
mov r9, qword [rsi + 8]
cmp rdx, r8
mov edx, 0
cmovb r8, rdx
neg r8
lea rdx, [rcx + r8]
inc rdx
mov qword [rsi + 0x10], rdx
dec rax
mov qword [rsi + 0x18], rax
mov r13, qword [r9 + rcx*8]
movzx eax, byte [r13 + 0x78]
test al, al
je 0x140077ce0
mov al, 1
xchg byte [r13 + 0x78], al
mov al, 1
xchg byte [r13 + 0x58], al
test al, al
jne 0x140077cae
mov rcx, qword [r13 + 0x48]
mov rax, qword [r13 + 0x50]
mov qword [r13 + 0x50], 0
mov edx, 0
xchg byte [r13 + 0x58], dl
test rax, rax
je 0x140077cae
call qword [rax + 8]
lea rsi, [r13 + 0x60]
mov al, 1
xchg byte [r13 + 0x70], al
test al, al
jne 0x140077d80
je 0x140077d8b
lock dec qword [r13]
jne 0x140077c10
jmp 0x140077db2
movzx r9d, byte [rsp + 0xf8]
mov byte [rsp + 0xf8], 2
cmp r9b, 2
je 0x140078f49
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x48], rax
movzx ecx, byte [rsp + 0xe0]
mov r10, qword [rsp + 0xe8]
mov r11, qword [rsp + 0xf0]
movzx eax, byte [rsp + 0xf9]
mov byte [rsp + 0x58], al
mov byte [rsp + 0x60], cl
cmp cl, 2
jne 0x140077dbf
test r10, r10
mov qword [rsp + 0x118], r10
mov qword [rsp + 0x110], r11
je 0x140077e1f
mov rcx, r10
mov esi, r9d
call qword [r11 + 0x20]
mov r9d, esi
mov rcx, qword [rsp + 0x68]
lock inc qword [rcx]
jg 0x140077e30
jmp 0x140078f45
mov esi, 0
jne 0x140077cc6
mov rcx, qword [rsi]
mov rax, qword [rsi + 8]
mov qword [rsi + 8], 0
test rax, rax
je 0x140077da2
call qword [rax + 0x18]
xor eax, eax
xchg byte [rsi + 0x10], al
lock dec qword [r13]
jne 0x140077c10
mov rcx, r13
call fcn.140073320
jmp 0x140077c10
lea rdx, [rsp + 0xe1]
mov eax, dword [rdx]
mov ecx, dword [rdx + 3]
mov dword [rsp + 0x183], ecx
mov dword [rsp + 0x180], eax
mov eax, dword [rdx + 0x19]
mov dword [rsp + 0x90], eax
movzx ecx, word [rdx + 0x1d]
mov word [rsp + 0x94], cx
mov edx, dword [rsp + 0x180]
mov r8d, dword [rsp + 0x183]
mov dword [rsp + 0x150], edx
mov dword [rsp + 0x153], r8d
mov dword [rsp + 0xc8], eax
mov word [rsp + 0xcc], cx
jmp 0x140077e9d
xor eax, eax
mov rcx, qword [rsp + 0x68]
lock inc qword [rcx]
jle 0x140078f45
mov rcx, qword [rsp + 0x48]
lock inc qword [rcx + 0x80]
lock inc qword [rcx]
mov r10, qword [rsp + 0x118]
mov r11, qword [rsp + 0x110]
jle 0x140078f45
lea r8, [rsp + 0xe1]
movzx ecx, word [r8 + 0x1d]
mov word [rsp + 0x94], cx
mov ecx, dword [r8 + 0x19]
mov dword [rsp + 0x90], ecx
mov qword [rsp + 0xe8], r10
mov qword [rsp + 0xf0], r11
mov byte [rsp + 0xe0], 2
mov byte [rsp + 0xf8], r9b
mov r10, rax
mov r11, rdx
mov eax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x153]
mov dword [rsp + 0x180], eax
mov dword [rsp + 0x183], ecx
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0x78], eax
movzx eax, word [rsp + 0xcc]
mov word [rsp + 0x7c], ax
movzx eax, byte [r13 + 0x78]
test al, al
jne 0x140077ef6
mov dl, 1
xchg byte [r13 + 0x40], dl
lea rax, [r13 + 0x10]
mov rcx, rax
test dl, dl
je 0x140077ef0
mov ecx, 0
je 0x1400780c7
mov eax, dword [rsp + 0x180]
mov ecx, dword [rsp + 0x183]
mov dword [rsp + 0x93], ecx
mov dword [rsp + 0x90], eax
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x70], eax
movzx eax, word [rsp + 0x7c]
mov word [rsp + 0x74], ax
mov r14, qword [rsp + 0x68]
mov al, 1
xchg byte [r13 + 0x78], al
mov al, 1
xchg byte [r13 + 0x58], al
test al, al
jne 0x140077f6c
mov rcx, qword [r13 + 0x48]
mov rax, qword [r13 + 0x50]
mov qword [r13 + 0x50], 0
mov edx, 0
xchg byte [r13 + 0x58], dl
test rax, rax
je 0x140077f6c
mov ebx, r9d
mov rsi, r10
mov rdi, r11
call qword [rax + 8]
mov r11, rdi
mov r10, rsi
mov r9d, ebx
lea rsi, [r13 + 0x60]
mov al, 1
xchg byte [r13 + 0x70], al
test al, al
jne 0x140077fb9
je 0x140077fc0
lock dec qword [r13]
je 0x140077ff5
movzx eax, byte [rsp + 0xf8]
cmp r9b, 2
mov rsi, qword [rsp + 0x88]
jne 0x140078029
cmp al, 2
mov r13, qword [rsp + 0x48]
movzx ecx, byte [rsp + 0x60]
movzx edi, byte [rsp + 0x58]
jne 0x140077c26
jmp 0x14007820c
mov esi, 0
jne 0x140077f7c
mov rcx, qword [rsi]
mov rax, qword [rsi + 8]
mov qword [rsi + 8], 0
test rax, rax
je 0x140077fe9
mov ebx, r9d
mov rdi, r10
mov r12, r11
call qword [rax + 0x18]
mov r11, r12
mov r10, rdi
mov r9d, ebx
xor eax, eax
xchg byte [rsi + 0x10], al
lock dec qword [r13]
jne 0x140077f83
mov rcx, r13
mov ebx, r9d
mov rsi, r10
mov rdi, r11
call fcn.140073320
mov r11, rdi
mov r10, rsi
mov r9d, ebx
movzx eax, byte [rsp + 0xf8]
cmp r9b, 2
mov rsi, qword [rsp + 0x88]
je 0x140077f9d
cmp al, 2
mov r13, qword [rsp + 0x48]
je 0x140078051
lea rcx, [rsp + 0xd0]
mov ebx, r9d
mov rdi, r10
mov r12, r11
call fcn.140073390
mov r11, r12
mov r10, rdi
mov r9d, ebx
mov qword [rsp + 0xd0], r14
mov qword [rsp + 0xd8], r13
movzx r8d, byte [rsp + 0x60]
mov byte [rsp + 0xe0], r8b
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x93]
lea rdx, [rsp + 0xe1]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
mov qword [rsp + 0xe8], r10
mov qword [rsp + 0xf0], r11
mov byte [rsp + 0xf8], r9b
mov ecx, r8d
movzx edi, byte [rsp + 0x58]
mov byte [rsp + 0xf9], dil
movzx eax, word [rsp + 0x74]
mov word [rdx + 0x1d], ax
mov eax, dword [rsp + 0x70]
mov dword [rdx + 0x19], eax
jmp 0x140077c26
cmp byte [rcx + 0x28], 2
jne 0x140078fda
mov rdx, qword [rsp + 0x68]
mov qword [rcx], rdx
mov rdx, qword [rsp + 0x48]
mov qword [rcx + 8], rdx
movzx edx, byte [rsp + 0x60]
mov byte [rcx + 0x10], dl
mov edx, dword [rsp + 0x180]
mov r8d, dword [rsp + 0x183]
mov dword [rcx + 0x11], edx
mov dword [rcx + 0x14], r8d
mov qword [rcx + 0x18], r10
mov qword [rcx + 0x20], r11
mov byte [rcx + 0x28], r9b
movzx edx, byte [rsp + 0x58]
mov byte [rcx + 0x29], dl
mov edx, dword [rsp + 0x78]
mov dword [rcx + 0x2a], edx
movzx edx, word [rsp + 0x7c]
mov word [rcx + 0x2e], dx
xor edx, edx
xchg byte [rcx + 0x30], dl
movzx ecx, byte [r13 + 0x78]
mov r9b, 2
test cl, cl
je 0x140078158
mov cl, 1
xchg byte [r13 + 0x40], cl
test cl, cl
movzx edx, byte [rsp + 0x50]
je 0x140078149
mov eax, 0
je 0x140078176
mov byte [rsp + 0x58], dil
mov r10, r15
mov r11, rbx
jmp 0x140078198
mov byte [rsp + 0x58], dil
mov r10, r15
mov r11, rbx
mov qword [rsp + 0x48], r12
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x60], al
jmp 0x140077f29
movzx r9d, byte [rax + 0x28]
mov byte [rax + 0x28], 2
cmp r9b, 2
jne 0x1400781a6
xor ecx, ecx
xchg byte [rax + 0x30], cl
mov byte [rsp + 0x58], dil
mov r10, r15
mov r11, rbx
mov r9b, 2
mov qword [rsp + 0x48], r12
mov byte [rsp + 0x60], dl
jmp 0x140077f29
mov r14, qword [rax]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x48], rcx
movzx ecx, byte [rax + 0x10]
mov byte [rsp + 0x60], cl
mov ecx, dword [rax + 0x14]
mov dword [rsp + 0x93], ecx
mov ecx, dword [rax + 0x11]
mov dword [rsp + 0x90], ecx
mov r10, qword [rax + 0x18]
mov r11, qword [rax + 0x20]
movzx ecx, byte [rax + 0x29]
mov byte [rsp + 0x58], cl
movzx ecx, word [rax + 0x2e]
mov word [rsp + 0x74], cx
mov ecx, dword [rax + 0x2a]
mov dword [rsp + 0x70], ecx
xor ecx, ecx
xchg byte [rax + 0x30], cl
jmp 0x140077f29
mov rcx, qword [rsp + 0x68]
call fcn.140073390
mov r15, qword [rsp + 0x40]
jmp 0x140078b2e
cmp qword [rsi + 0x18], 0
jne 0x140078245
lea rcx, [rsp + 0x180]
mov rdx, qword [rsp + 0x108]
mov r8, qword [rsp + 0x40]
call fcn.1400795a0
cmp qword [rsp + 0x188], 0
je 0x140078245
lea rcx, [rsp + 0x180]
call fcn.140073120
cmp byte [rsp + 0xf8], 2
mov r15, qword [rsp + 0x40]
je 0x140078b2e
movdqa xmm0, xmmword [rsp + 0xd0]
movdqa xmm1, xmmword [rsp + 0xe0]
movdqa xmm2, xmmword [rsp + 0xf0]
movdqa xmmword [rsp + 0x170], xmm2
movdqa xmmword [rsp + 0x160], xmm1
movdqa xmmword [rsp + 0x150], xmm0
movzx eax, byte [r15]
test rax, rax
je 0x1400782a5
cmp eax, 1
jne 0x1400782a9
movzx ecx, byte [r15 + 1]
mov al, 1
jmp 0x140078302
xor eax, eax
jmp 0x140078302
mov rsi, qword [r15 + 8]
mov rcx, qword [0x14017e260]
test rcx, rcx
jne 0x1400782d2
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x140078ff4
mov rcx, rax
mov qword [0x14017e260], rax
mov r8d, 0x20
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x140078ff4
mov rbx, rax
mov rax, qword [rsi + 0x18]
lea rdx, [rsi + 0x10]
mov r8, qword [rsi]
mov r9, qword [rsi + 8]
mov rcx, rbx
call qword [rax]
mov al, 2
mov rsi, qword [rsp + 0x80]
lea rdx, [rsi + 0x40]
mov qword [rsp + 0x128], rdx
mov byte [rsp + 0x180], al
mov byte [rsp + 0x181], cl
mov qword [rsp + 0x188], rbx
lea rcx, [rsp + 0x190]
mov rax, qword [r15 + 0x28]
lea rdx, [r15 + 0x20]
mov r8, qword [r15 + 0x10]
mov r9, qword [r15 + 0x18]
call qword [rax]
lea rax, [rsi + 0x60]
mov qword [rsp + 0x130], rax
mov rcx, qword [rsi + 0x60]
mov rdx, qword [rsi + 0x68]
lea r8, [rsp + 0x180]
call fcn.140079060
mov r9, qword [rsi + 0x40]
mov r8, qword [rsi + 0x58]
mov rcx, rax
shr rcx, 0x39
mov qword [rsp + 0x140], rcx
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
lea rdx, [r8 - 0x48]
movzx ecx, byte [rsp + 0x180]
movzx r10d, byte [rsp + 0x181]
mov byte [rsp + 0x110], r10b
mov byte [rsp + 0x58], cl
movzx ecx, cl
mov dword [rsp + 0x68], ecx
mov rcx, qword [rsp + 0x188]
mov qword [rsp + 0x60], rcx
mov rcx, qword [rsp + 0x190]
mov qword [rsp + 0x50], rcx
mov r13, qword [rsp + 0x198]
mov qword [rsp + 0x118], r13
neg r13
xor ecx, ecx
mov qword [rsp + 0x108], rcx
pcmpeqd xmm1, xmm1
mov qword [rsp + 0x138], rax
mov rcx, rax
mov qword [rsp + 0x88], r9
mov qword [rsp + 0x120], r8
and rcx, r9
movdqu xmm2, xmmword [r8 + rcx]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb eax, xmm3
test eax, eax
mov qword [rsp + 0x48], rcx
jne 0x140078494
pcmpeqb xmm2, xmm1
pmovmskb eax, xmm2
test eax, eax
jne 0x1400789db
mov rax, qword [rsp + 0x108]
add rcx, rax
add rcx, 0x10
add rax, 0x10
mov qword [rsp + 0x108], rax
mov r8, qword [rsp + 0x120]
jmp 0x14007840e
cmp dword [rsp + 0x68], 0
je 0x140078f2b
lea eax, [r14 - 1]
and eax, r14d
test ax, ax
mov r9, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x48]
je 0x14007842c
mov r14d, eax
tzcnt eax, r14d
add rax, rcx
and rax, r9
neg rax
lea rax, [rax + rax*8]
lea r15, [rdx + rax*8]
movzx r8d, byte [rdx + rax*8]
cmp r8, 1
je 0x140078550
cmp r8d, 2
jne 0x140078f2b
cmp byte [rsp + 0x58], 2
jne 0x140078470
mov r8, qword [r15 + 8]
mov r11, qword [r8 + 8]
mov rcx, qword [rsp + 0x60]
cmp r11, qword [rcx + 8]
jne 0x14007847b
mov r12, qword [r8]
mov rcx, qword [rsp + 0x60]
mov rsi, qword [rcx]
mov r9, r11
neg r9
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
lea rcx, [r9 + r8]
cmp rcx, 0xffffffffffffffff
je 0x1400785a0
movzx ecx, byte [r12 + r8 + 1]
movzx r10d, byte [rsi + r8 + 1]
lea ebx, [rcx - 0x41]
cmp bl, 0x1a
setb bl
shl bl, 5
lea edi, [r10 - 0x41]
cmp dil, 0x1a
setb dil
shl dil, 5
or bl, cl
or dil, r10b
inc r8
cmp bl, dil
je 0x140078500
cmp r8, r11
jb 0x14007847b
jmp 0x1400785a0
mov ecx, dword [rsp + 0x68]
cmp ecx, 1
je 0x140078570
test ecx, ecx
jne 0x14007847b
jmp 0x140078f2b
cmp byte [r15 + 1], 0
je 0x140078586
cmp byte [rsp + 0x110], 0
jne 0x1400785a0
jmp 0x14007847b
cmp byte [rsp + 0x110], 0
jne 0x14007847b
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x118]
cmp qword [r15 + 0x18], rcx
jne 0x14007847b
mov r9, qword [r15 + 0x10]
mov r8, 0xffffffffffffffff
nop dword [rax]
lea rcx, [r8 + r13]
cmp rcx, 0xffffffffffffffff
je 0x140078615
movzx ecx, byte [r9 + r8 + 1]
mov r10, qword [rsp + 0x50]
movzx r10d, byte [r10 + r8 + 1]
lea r11d, [rcx - 0x41]
cmp r11b, 0x1a
setb r11b
shl r11b, 5
lea esi, [r10 - 0x41]
cmp sil, 0x1a
setb bl
shl bl, 5
or r11b, cl
or bl, r10b
inc r8
cmp r11b, bl
je 0x1400785c0
cmp r8, qword [rsp + 0x118]
jb 0x14007847b
mov rcx, qword [rsp + 0x120]
lea rsi, [rcx + rax*8]
movups xmm0, xmmword [rsp + 0x180]
movups xmm1, xmmword [rsp + 0x190]
movups xmm2, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0xb0], xmm2
movaps xmmword [rsp + 0xa0], xmm1
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x180], xmm0
movaps xmmword [rsp + 0x1a0], xmm2
movaps xmmword [rsp + 0x190], xmm1
mov qword [rsp + 0x1b0], rsi
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x1b8], rax
movzx eax, byte [rsp + 0x180]
cmp al, 3
je 0x1400786e0
cmp al, 2
jb 0x1400786bd
mov rbx, qword [rsp + 0x188]
mov rax, qword [rbx + 0x18]
lea rcx, [rbx + 0x10]
mov rdx, qword [rbx]
mov r8, qword [rbx + 8]
call qword [rax + 0x10]
mov rcx, qword [0x14017e260]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0x1a8]
lea rcx, [rsp + 0x1a0]
mov rdx, qword [rsp + 0x190]
mov r8, qword [rsp + 0x198]
call qword [rax + 0x10]
mov r15, qword [rsp + 0x40]
mov rax, qword [rsp + 0x80]
mov rax, qword [rax + 0xb0]
cmp rax, qword [rsi - 8]
jbe 0x140078b21
movaps xmm0, xmmword [rsp + 0x150]
movaps xmm1, xmmword [rsp + 0x160]
movaps xmm2, xmmword [rsp + 0x170]
movaps xmmword [rsp + 0x1a0], xmm2
movaps xmmword [rsp + 0x190], xmm1
movaps xmmword [rsp + 0x180], xmm0
call fcn.1400ec0a0
mov rbx, rax
mov r14d, edx
mov rdx, qword [rsi - 8]
cmp rdx, qword [rsi - 0x18]
jne 0x140078750
lea rcx, [rsi - 0x18]
call fcn.14004bad0
mov rdx, qword [rsi - 8]
mov rax, qword [rsi - 0x10]
mov rcx, rdx
shl rcx, 6
movdqa xmm0, xmmword [rsp + 0x180]
movdqa xmm1, xmmword [rsp + 0x190]
movdqa xmm2, xmmword [rsp + 0x1a0]
movdqu xmmword [rax + rcx + 0x20], xmm2
movdqu xmmword [rax + rcx + 0x10], xmm1
movdqu xmmword [rax + rcx], xmm0
mov qword [rax + rcx + 0x30], rbx
mov dword [rax + rcx + 0x38], r14d
inc rdx
mov qword [rsi - 8], rdx
mov rdi, qword [rsp + 0x80]
cmp qword [rdi + 0xb8], 0
jne 0x140078b2e
mov esi, dword [rdi + 0xa8]
cmp esi, 0x3b9aca00
je 0x140078b2e
mov r14, qword [rdi + 0xa0]
mov rcx, qword [0x14017e260]
test rcx, rcx
jne 0x1400787ec
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x140078ffb
mov rcx, rax
mov qword [0x14017e260], rax
mov r8d, 0x48
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x140078ffb
mov rbx, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x18], 0
mov byte [rax + 0x20], 0
mov qword [rax + 0x30], 0
mov byte [rax + 0x38], 0
mov word [rax + 0x40], 0
lock inc qword [rax]
jle 0x140078f45
mov qword [rdi + 0xb8], rbx
test r14, r14
jne 0x140078851
test esi, esi
je 0x140079013
call fcn.1400ec0a0
mov r8d, edx
lea r9, [0x140150bd0]
lea rcx, [rsp + 0x180]
mov rdx, rax
call fcn.1400fbfd0
mov rcx, qword [0x14017e260]
test rcx, rcx
jne 0x140078895
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x140079002
mov rcx, rax
mov qword [0x14017e260], rax
mov r8d, 0x300
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x140079002
mov r15, rax
and r15, 0xffffffffffffff80
mov qword [r15 + 0x78], rax
sub r15, 0xffffffffffffff80
lea rdx, [rsp + 0x180]
mov r8d, 0x280
mov rcx, r15
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0x148]
mov r13, qword [rax]
jmp 0x1400788e0
pause
mov rax, qword [r13 + 8]
nop word cs:[rax + rax]
cmp rax, 0xffffffffffffffff
je 0x1400788de
test rax, rax
js 0x140078f63
lea rcx, [rax + 1]
lock cmpxchg qword [r13 + 8], rcx
jne 0x1400788f0
mov qword [rsp + 0x50], r14
mov eax, dword [rsp + 0x180]
mov ecx, dword [rsp + 0x183]
mov dword [rsp + 0x93], ecx
mov dword [rsp + 0x90], eax
mov rax, qword [rsp + 0x80]
mov r14, qword [rax]
test r14, r14
je 0x140078b86
mov rdi, qword [rax + 8]
mov r12, qword [rdi + 0x10]
mov rcx, qword [0x14017e260]
test rcx, rcx
jne 0x14007896d
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14007902d
mov rcx, rax
mov qword [0x14017e260], rax
mov r8d, 0x30
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14007902d
dec r12
and r12, 0xfffffffffffffff0
lea rcx, [r12 + r14]
add rcx, 0x10
mov rdx, qword [rsp + 0x50]
mov qword [rax], rdx
mov dword [rax + 8], esi
mov qword [rax + 0x10], r15
mov byte [rax + 0x18], 0
mov edx, dword [rsp + 0x90]
mov r8d, dword [rsp + 0x93]
mov dword [rax + 0x19], edx
mov dword [rax + 0x1c], r8d
mov qword [rax + 0x20], r13
mov qword [rax + 0x28], rbx
lea r8, fcn.1400799b0
mov rdx, rax
call qword [rdi + 0x18]
mov r15, qword [rsp + 0x40]
jmp 0x140078b2e
mov rax, qword [rsp + 0x80]
cmp qword [rax + 0x48], 0
mov r15, qword [rsp + 0x40]
mov r8, qword [rsp + 0x120]
mov rsi, qword [rsp + 0x138]
je 0x140078daf
movups xmm0, xmmword [rsp + 0x180]
movdqu xmm1, xmmword [rsp + 0x190]
movdqu xmm2, xmmword [rsp + 0x1a0]
movdqa xmmword [rsp + 0xb0], xmm2
movdqa xmmword [rsp + 0xa0], xmm1
movaps xmmword [rsp + 0x90], xmm0
and rsi, r9
movdqu xmm0, xmmword [r8 + rsi]
pmovmskb eax, xmm0
test eax, eax
jne 0x140078a65
mov edx, 0x10
add rsi, rdx
and rsi, r9
movdqu xmm0, xmmword [r8 + rsi]
pmovmskb eax, xmm0
add rdx, 0x10
test eax, eax
je 0x140078a4d
tzcnt eax, eax
add rax, rsi
and rax, r9
movzx edx, byte [r8 + rax]
test dl, dl
js 0x140078a8a
movdqa xmm0, xmmword [r8]
pmovmskb eax, xmm0
tzcnt eax, eax
movzx edx, byte [r8 + rax]
lea rcx, [rax - 0x10]
and rcx, r9
mov r9, qword [rsp + 0x140]
mov byte [r8 + rax], r9b
mov byte [rcx + r8 + 0x10], r9b
neg rax
lea rax, [rax + rax*8]
lea rsi, [r8 + rax*8]
and dl, 1
movzx ecx, dl
mov rdx, qword [rsp + 0x80]
sub qword [rdx + 0x48], rcx
movaps xmm0, xmmword [rsp + 0x90]
movaps xmm1, xmmword [rsp + 0xa0]
movaps xmm2, xmmword [rsp + 0xb0]
movups xmmword [r8 + rax*8 - 0x28], xmm2
movups xmmword [r8 + rax*8 - 0x38], xmm1
movups xmmword [r8 + rax*8 - 0x48], xmm0
mov qword [r8 + rax*8 - 0x18], 0
mov qword [r8 + rax*8 - 0x10], 8
mov qword [r8 + rax*8 - 8], 0
inc qword [rdx + 0x50]
mov rax, qword [rsp + 0x80]
mov rax, qword [rax + 0xb0]
cmp rax, qword [rsi - 8]
ja 0x1400786fe
lea rcx, [rsp + 0x150]
call fcn.140073390
cmp byte [r15], 2
jb 0x140078b5e
mov rax, qword [r15 + 8]
mov r9, qword [rax + 0x18]
lea rcx, [rax + 0x10]
mov rdx, qword [rax]
mov r8, qword [rax + 8]
call qword [r9 + 0x10]
mov r8, qword [r15 + 8]
mov rcx, qword [0x14017e260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [r15 + 0x28]
lea rcx, [r15 + 0x20]
mov rdx, qword [r15 + 0x10]
mov r8, qword [r15 + 0x18]
call qword [rax + 0x10]
nop
lea rsp, [rbp + 0x3b8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov edi, 1
mov r12d, 1
lock xadd qword [0x14017e080], r12
call fcn.1400fb800
cmp rax, 2
je 0x140079034
mov r14, rdx
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x188], rdx
lock xadd qword [rdx], rdi
test rax, rax
je 0x140078ca9
test rdi, rdi
js 0x140078f45
mov ecx, 0x80
mov edx, 8
call fcn.14001bc10
test rax, rax
je 0x14007904e
mov rdi, rax
mov qword [rax], 0xcc
mov qword [rax + 8], 0
lea rax, [0x140144210]
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], 0
mov rax, qword [rsp + 0x50]
mov qword [rdi + 0x20], rax
mov dword [rdi + 0x28], esi
mov qword [rdi + 0x30], r15
mov byte [rdi + 0x38], 0
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x93]
mov dword [rdi + 0x39], eax
mov dword [rdi + 0x3c], ecx
mov qword [rdi + 0x40], r13
mov qword [rdi + 0x48], rbx
mov qword [rdi + 0x50], r12
mov qword [rdi + 0x58], r14
mov qword [rdi + 0x78], 0
pxor xmm0, xmm0
movdqu xmmword [rdi + 0x60], xmm0
mov rax, qword [r14 + 0xf8]
mov qword [rdi + 0x18], rax
mov cl, 1
xor eax, eax
lock cmpxchg byte [r14 + 0xd8], cl
jne 0x140078dd9
cmp byte [r14 + 0xf0], 0
mov r15, qword [rsp + 0x40]
je 0x140078df8
xor ecx, ecx
mov al, 1
lock cmpxchg byte [r14 + 0xd8], cl
je 0x140078d76
add r14, 0xd8
jmp 0x140078ed1
test rdi, rdi
js 0x140078f45
mov ecx, 0x80
mov edx, 8
call fcn.14001bc10
test rax, rax
je 0x14007904e
mov rdi, rax
mov qword [rax], 0xcc
mov qword [rax + 8], 0
lea rax, [0x140144528]
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], 0
mov rax, qword [rsp + 0x50]
mov qword [rdi + 0x20], rax
mov dword [rdi + 0x28], esi
mov qword [rdi + 0x30], r15
mov byte [rdi + 0x38], 0
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x93]
mov dword [rdi + 0x39], eax
mov dword [rdi + 0x3c], ecx
mov qword [rdi + 0x40], r13
mov qword [rdi + 0x48], rbx
mov qword [rdi + 0x50], r12
mov qword [rdi + 0x58], r14
mov qword [rdi + 0x78], 0
pxor xmm0, xmm0
movdqu xmmword [rdi + 0x60], xmm0
mov rax, qword [r14 + 0x88]
mov qword [rdi + 0x18], rax
mov cl, 1
xor eax, eax
lock cmpxchg byte [r14 + 0x68], cl
jne 0x140078e2e
cmp byte [r14 + 0x80], 0
mov r15, qword [rsp + 0x40]
je 0x140078e4a
xor ecx, ecx
mov al, 1
lock cmpxchg byte [r14 + 0x68], cl
jne 0x140078ecd
mov rax, 0xffffffffffffffc0
lock xadd qword [rdi], rax
cmp rax, 0x3f
jbe 0x140078eef
and rax, 0xffffffffffffffc0
cmp rax, 0x40
jne 0x140078da0
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [rax + 0x10]
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [rax + 0x40]
jmp 0x140078e79
mov rcx, qword [rsp + 0x128]
mov rdx, qword [rsp + 0x130]
call fcn.140110ee0
mov rax, qword [rsp + 0x80]
mov r9, qword [rax + 0x40]
mov r8, qword [rax + 0x58]
jmp 0x140078a03
lea rcx, [r14 + 0xd8]
call fcn.14010e140
cmp byte [r14 + 0xf0], 0
mov r15, qword [rsp + 0x40]
jne 0x140078c8a
lea rcx, [r14 + 0xe0]
mov rdx, rdi
call fcn.1400718c0
xor ecx, ecx
mov al, 1
lock cmpxchg byte [r14 + 0xd8], cl
jne 0x140078f09
add r14, 0x10
mov rcx, r14
mov rdx, rdi
xor r8d, r8d
call fcn.1400fb3c0
jmp 0x140078e79
lea rcx, [r14 + 0x68]
call fcn.14010e140
cmp byte [r14 + 0x80], 0
mov r15, qword [rsp + 0x40]
jne 0x140078d66
lea rbx, [rsp + 0x188]
lea rcx, [r14 + 0x70]
mov rdx, rdi
call fcn.1400718c0
xor ecx, ecx
mov al, 1
lock cmpxchg byte [r14 + 0x68], cl
jne 0x140078f1a
mov rcx, rbx
mov rdx, rdi
call fcn.1400f66d0
mov rcx, qword [rsp + 0x188]
mov rdx, qword [rsp + 0x180]
lock dec qword [rcx]
sete al
test rdx, rdx
je 0x140078ea0
test al, al
je 0x140078ea9
call fcn.140071930
jmp 0x140078ea9
test al, al
je 0x140078ea9
call fcn.14004cad0
mov ecx, 0x84
mov eax, 0xcc
lock cmpxchg qword [rdi], rcx
je 0x140078b2e
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [rax + 0x28]
jmp 0x140078b2e
add r14, 0x68
mov rcx, r14
call fcn.14010dd60
mov rax, 0xffffffffffffffc0
lock xadd qword [rdi], rax
cmp rax, 0x3f
ja 0x140078d8c
lea rcx, str.assertion_failed:_prev.ref_count_____1
lea r8, [0x14014f640]
mov edx, 0x27
call fcn.14010b520
ud2
lea rcx, [r14 + 0xd8]
call fcn.14010dd60
jmp 0x140078e1a
add r14, 0x68
mov rcx, r14
call fcn.14010dd60
jmp 0x140078e6e
lea rcx, str.internal_error:_entered_unreachable_code_rustc_90c541806f23a127002de5b4038be731ba1458calibrary_std_src_threadmod.rs
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fhttp_0.2.8_srcuri_scheme.rs
mov edx, 0x28
call fcn.14010b520
ud2
ud2
lea rcx, str.value_already_sent
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.23_srcclientpool.rs
mov edx, 0x12
call fcn.14010b7e0
ud2
lea rax, str.Arc_counter_overflow
mov qword [rsp + 0x90], rax
lea rax, [0x14005fa60]
mov qword [rsp + 0x98], rax
lea rax, str.internal_error:_entered_unreachable_code:_unknown_state:
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x198], 1
mov qword [rsp + 0x180], 0
lea rax, [rsp + 0x90]
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x1a8], 1
lea rdx, str._rustc_90c541806f23a127002de5b4038be731ba1458calibrary_alloc_src_sync.rs
lea rcx, [rsp + 0x180]
call fcn.14010b440
ud2
lea rcx, str.assertion_failed:_slot.is_none__C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001f_futures_channel_0.3.25_srconeshot.rs
lea r8, [0x140140f90]
mov edx, 0x20
call fcn.14010b520
ud2
mov ecx, 0x20
jmp 0x140079053
mov ecx, 0x48
jmp 0x140079053
mov ecx, 0x280
mov edx, 0x80
call fcn.14010b0b0
ud2
lea rcx, [0x140150b4c]
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.23_srcclientpool.rs
mov edx, 0x1a
call fcn.1401134c0
ud2
mov ecx, 0x30
jmp 0x140079053
lea rcx, str.there_is_no_reactor_running__must_be_called_from_the_context_of_a_Tokio_1.x_runtimeCannot_start_a_runtime_from_within_a_runtime._This_happens_because_a_function__like__block_on___attempted_to_block_the_current_thread_while_the_thread_is_being_used_to_drive_asynchronous_tasks.queue_not_emptyC:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.21.2_src_runtime_taskinject.rs
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.23_srccommonexec.rs
mov edx, 0x53
call fcn.14010b7e0
ud2
mov ecx, 0x80
mov edx, 8
call fcn.14010b0b0
ud2