Function at 0x140033bd0
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, 0x198
mov qword [rsp + 0x188], r9
mov qword [rsp + 0xa8], rdx
mov r9, rcx
cmp byte [r8 + 0x10], 2
mov qword [rsp + 0x80], rcx
jne 0x140033eaa
cmp qword [r9 + 0x58], 0
je 0x140033eaa
mov qword [rsp + 0x88], r8
mov rcx, qword [r9 + 0x60]
mov rdx, qword [r9 + 0x68]
mov rsi, qword [rsp + 0xa8]
mov r8, rsi
mov rdi, r9
call fcn.140026840
mov rcx, qword [rdi + 0x40]
mov rdx, qword [rdi + 0x48]
mov r8, rax
shr r8, 0x39
movd xmm0, r8d
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
movzx ebx, byte [rsi]
mov r8, qword [rsi + 8]
mov qword [rsp + 0xa0], r8
movzx r8d, byte [rsi + 1]
mov byte [rsp + 0xb0], r8b
mov r11, qword [rsi + 0x18]
mov rdi, qword [rsi + 0x20]
mov qword [rsp + 0x98], rdi
neg rdi
xor r8d, r8d
mov qword [rsp + 0x90], r8
pcmpeqd xmm1, xmm1
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x28], rcx
and rax, rdx
movdqu xmm2, xmmword [rcx + rax]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb r10d, xmm3
test r10d, r10d
jne 0x140033d1e
mov rcx, qword [rsp + 0x28]
pcmpeqb xmm2, xmm1
pmovmskb r10d, xmm2
test r10d, r10d
mov r9, qword [rsp + 0x80]
mov r8, qword [rsp + 0x88]
jne 0x140033eaa
mov r8, qword [rsp + 0x90]
add rax, r8
add rax, 0x10
add r8, 0x10
mov qword [rsp + 0x90], r8
jmp 0x140033ca1
test r10b, r10b
je 0x140035135
lea r10d, [r15 - 1]
and r10d, r15d
test r10w, r10w
mov rdx, r8
mov rbx, qword [rsp + 0x78]
je 0x140033cbb
mov r15d, r10d
tzcnt r10d, r15d
add r10, rax
mov r8, rdx
and r10, rdx
neg r10
lea r10, [r10 + r10*8]
mov rcx, qword [rsp + 0x28]
lea r12, [rcx + r10*8]
cmp ebx, 1
je 0x140033df0
cmp ebx, 2
jne 0x140035135
movzx r10d, byte [r12 - 0x48]
cmp r10b, 2
jne 0x140033d00
mov rcx, qword [rsp + 0xa0]
mov r10, qword [rcx + 0x10]
mov rsi, qword [r12 - 0x40]
cmp r10, qword [rsi + 0x10]
jne 0x140033d09
mov rcx, qword [rsp + 0xa0]
mov rbp, qword [rcx + 8]
mov rbx, qword [rsi + 8]
mov r13, r10
neg r13
mov rsi, 0xffffffffffffffff
nop word cs:[rax + rax]
lea r9, [rsi + r13]
cmp r9, 0xffffffffffffffff
je 0x140033e30
movzx r9d, byte [rbp + rsi + 1]
movzx r14d, byte [rbx + rsi + 1]
lea ecx, [r9 - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
lea edx, [r14 - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or cl, r9b
or dl, r14b
inc rsi
cmp cl, dl
je 0x140033da0
cmp rsi, r10
jb 0x140033d09
jmp 0x140033e30
movzx r10d, byte [r12 - 0x48]
cmp r10b, 1
jne 0x140033d00
movzx r10d, byte [r12 - 0x47]
cmp byte [rsp + 0xb0], 0
je 0x140033e1a
test r10b, r10b
jne 0x140033e30
jmp 0x140033d09
test r10b, r10b
jne 0x140033d09
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x98]
cmp rcx, qword [r12 - 0x28]
jne 0x140033d09
mov rsi, qword [r12 - 0x30]
mov r10, 0xffffffffffffffff
nop
lea rcx, [rdi + r10]
cmp rcx, 0xffffffffffffffff
je 0x140033e9d
movzx ecx, byte [r11 + r10 + 1]
movzx edx, byte [rsi + r10 + 1]
lea r9d, [rcx - 0x41]
cmp r9b, 0x1a
setb r9b
shl r9b, 5
lea ebx, [rdx - 0x41]
cmp bl, 0x1a
setb bl
shl bl, 5
or r9b, cl
or bl, dl
inc r10
cmp r9b, bl
je 0x140033e50
cmp r10, qword [rsp + 0x98]
jb 0x140033d09
mov rcx, qword [rsp + 0x88]
jmp 0x140034c64
mov rax, qword [r8 + 0x30]
mov qword [rsp + 0x100], rax
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, [r9 + 0x70]
mov qword [rsp + 0x190], rcx
mov rdx, qword [rsp + 0xa8]
call fcn.140064410
test rax, rax
je 0x1400344ec
mov r15, rax
mov rax, qword [rax + 0x18]
test rax, rax
je 0x1400344c0
xor esi, esi
jmp 0x140033f9e
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], r14
mov byte [rsp + 0xe0], sil
mov eax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x153]
lea rdx, [rsp + 0x102]
mov dword [rdx - 0x1e], ecx
mov dword [rdx - 0x21], eax
mov qword [rsp + 0xe8], rbp
mov qword [rsp + 0xf0], rdi
mov qword [rsp + 0xf8], rbx
movzx eax, byte [rsp + 0x78]
mov byte [rsp + 0x100], al
mov byte [rsp + 0x101], r12b
movzx eax, word [rsp + 0x24]
mov word [rdx + 4], ax
mov eax, dword [rsp + 0x20]
mov dword [rdx], eax
xor esi, esi
mov rax, qword [r15 + 0x18]
test rax, rax
je 0x1400344c0
mov rcx, qword [r15 + 0x10]
lea rdx, [rcx + 1]
mov r8, qword [r15]
mov r9, qword [r15 + 8]
cmp rdx, r9
cmovb r9, rsi
neg r9
lea rdx, [rcx + r9]
inc rdx
mov qword [r15 + 0x10], rdx
dec rax
mov qword [r15 + 0x18], rax
mov r13, qword [r8 + rcx*8]
movzx eax, byte [r13 + 0x80]
test al, al
je 0x140034030
mov al, 1
xchg byte [r13 + 0x80], al
mov al, 1
xchg byte [r13 + 0x60], al
test al, al
jne 0x14003400d
mov rax, qword [r13 + 0x50]
mov rcx, qword [r13 + 0x58]
mov qword [r13 + 0x50], 0
mov edx, 0
xchg byte [r13 + 0x60], dl
test rax, rax
je 0x14003400d
call qword [rax + 8]
mov al, 1
xchg byte [r13 + 0x78], al
test al, al
je 0x1400340f0
lock dec qword [r13]
jne 0x140033f91
jmp 0x140034119
mov qword [rsp + 0x90], r14
mov qword [rsp + 0xb0], rbx
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0xa0], rbp
movzx r12d, byte [rsp + 0x101]
mov byte [rsp + 0x101], 2
cmp r12b, 2
je 0x140035153
mov r9, qword [rsp + 0xd0]
mov r14, qword [rsp + 0xd8]
movzx esi, byte [rsp + 0xe0]
mov rbp, qword [rsp + 0xe8]
mov rdi, qword [rsp + 0xf0]
mov rbx, qword [rsp + 0xf8]
movzx r11d, byte [rsp + 0x100]
cmp sil, 2
jne 0x140034126
mov byte [rsp + 0x140], r11b
mov byte [rsp + 0x148], sil
test rbp, rbp
je 0x140034182
mov rcx, rbp
mov esi, r12d
mov r12, r9
call qword [rdi + 0x18]
mov r9, r12
mov r12d, esi
lock inc qword [rbx]
jg 0x14003418e
jmp 0x14003514f
mov rax, qword [r13 + 0x68]
mov rcx, qword [r13 + 0x70]
mov qword [r13 + 0x68], 0
test rax, rax
je 0x140034108
call qword [rax + 0x18]
xor eax, eax
xchg byte [r13 + 0x78], al
lock dec qword [r13]
jne 0x140033f91
mov rcx, r13
call fcn.140029380
jmp 0x140033f91
lea r8, [rsp + 0x102]
movzx eax, word [r8 + 4]
mov word [rsp + 0x154], ax
mov ecx, dword [r8]
mov dword [rsp + 0x150], ecx
mov edx, dword [r8 - 0x21]
mov r8d, dword [r8 - 0x1e]
mov dword [rsp + 0x30], edx
mov dword [rsp + 0x33], r8d
mov edx, dword [rsp + 0x30]
mov r8d, dword [rsp + 0x33]
mov dword [rsp + 0x110], edx
mov dword [rsp + 0x113], r8d
mov dword [rsp + 0xc8], ecx
mov word [rsp + 0xcc], ax
jmp 0x140034210
xor eax, eax
lock inc qword [rbx]
jle 0x14003514f
lock inc qword [r9]
movzx esi, byte [rsp + 0x148]
movzx r11d, byte [rsp + 0x140]
jle 0x14003514f
lock inc qword [r14 + 0x1c8]
lock inc qword [r14]
jle 0x14003514f
lea r8, [rsp + 0x102]
movzx ecx, word [r8 + 4]
mov word [rsp + 0x154], cx
mov ecx, dword [r8]
mov dword [rsp + 0x150], ecx
mov qword [rsp + 0xe8], rbp
mov qword [rsp + 0xf0], rdi
mov qword [rsp + 0xf8], rbx
mov byte [rsp + 0x100], r11b
mov byte [rsp + 0xe0], 2
mov byte [rsp + 0x101], r12b
mov rbp, rax
mov rdi, rdx
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x33], ecx
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0xb8], eax
movzx eax, word [rsp + 0xcc]
mov word [rsp + 0xbc], ax
movzx eax, byte [r13 + 0x80]
test al, al
jne 0x14003425e
mov al, 1
xchg byte [r13 + 0x48], al
test al, al
je 0x140034376
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x33]
mov dword [rsp + 0x153], ecx
mov dword [rsp + 0x150], eax
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x20], eax
movzx eax, word [rsp + 0xbc]
mov word [rsp + 0x24], ax
mov byte [rsp + 0x78], r11b
mov qword [rsp + 0x28], r9
mov al, 1
xchg byte [r13 + 0x80], al
mov al, 1
xchg byte [r13 + 0x60], al
test al, al
jne 0x1400342ca
mov rax, qword [r13 + 0x50]
mov rcx, qword [r13 + 0x58]
mov qword [r13 + 0x50], 0
mov edx, 0
xchg byte [r13 + 0x60], dl
test rax, rax
je 0x1400342ca
call qword [rax + 8]
mov al, 1
xchg byte [r13 + 0x78], al
test al, al
je 0x140034314
lock dec qword [r13]
jne 0x140034340
mov rcx, r13
call fcn.140029380
movzx ecx, byte [rsp + 0x101]
cmp r12b, 2
mov byte [rsp + 0x88], sil
je 0x140034356
cmp cl, 2
je 0x140033f1b
lea rcx, [rsp + 0xd0]
call fcn.1400260f0
jmp 0x140033f1b
mov rax, qword [r13 + 0x68]
mov rcx, qword [r13 + 0x70]
mov qword [r13 + 0x68], 0
test rax, rax
je 0x14003432c
call qword [rax + 0x18]
xor eax, eax
xchg byte [r13 + 0x78], al
lock dec qword [r13]
je 0x1400342db
nop dword [rax]
movzx ecx, byte [rsp + 0x101]
cmp r12b, 2
mov byte [rsp + 0x88], sil
jne 0x1400342f9
mov rax, qword [r15 + 0x18]
cmp cl, 2
je 0x1400344bb
test rax, rax
mov esi, 0
jne 0x140033f9e
jmp 0x1400344c0
cmp byte [r13 + 0x41], 2
jne 0x1400351d2
mov qword [r13 + 0x10], r9
mov qword [r13 + 0x18], r14
mov byte [r13 + 0x20], sil
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x33]
mov dword [r13 + 0x21], eax
mov dword [r13 + 0x24], ecx
mov qword [r13 + 0x28], rbp
mov qword [r13 + 0x30], rdi
mov qword [r13 + 0x38], rbx
mov byte [r13 + 0x40], r11b
mov byte [r13 + 0x41], r12b
mov eax, dword [rsp + 0xb8]
mov dword [r13 + 0x42], eax
movzx eax, word [rsp + 0xbc]
mov word [r13 + 0x46], ax
xor eax, eax
xchg byte [r13 + 0x48], al
movzx eax, byte [r13 + 0x80]
mov r12b, 2
test al, al
je 0x140034432
mov al, 1
xchg byte [r13 + 0x48], al
test al, al
mov rbp, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0x98]
mov rbx, qword [rsp + 0xb0]
mov r14, qword [rsp + 0x90]
movzx esi, byte [rsp + 0x88]
jne 0x140034296
movzx r12d, byte [r13 + 0x41]
mov byte [r13 + 0x41], 2
cmp r12b, 2
jne 0x14003445f
xor eax, eax
xchg byte [r13 + 0x48], al
mov r12b, 2
jmp 0x140034296
mov rbp, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0x98]
mov rbx, qword [rsp + 0xb0]
mov r14, qword [rsp + 0x90]
movzx esi, byte [rsp + 0x88]
jmp 0x140034296
lea rax, [r13 + 0x21]
lea rcx, [r13 + 0x42]
mov rdx, qword [r13 + 0x10]
mov qword [rsp + 0x28], rdx
mov r14, qword [r13 + 0x18]
movzx esi, byte [r13 + 0x20]
mov edx, dword [rax]
mov eax, dword [rax + 3]
mov dword [rsp + 0x153], eax
mov dword [rsp + 0x150], edx
mov rbp, qword [r13 + 0x28]
mov rdi, qword [r13 + 0x30]
mov rbx, qword [r13 + 0x38]
movzx eax, byte [r13 + 0x40]
mov byte [rsp + 0x78], al
movzx eax, word [rcx + 4]
mov word [rsp + 0x24], ax
mov eax, dword [rcx]
mov dword [rsp + 0x20], eax
xor eax, eax
xchg byte [r13 + 0x48], al
jmp 0x140034296
test rax, rax
jne 0x1400344ec
lea rcx, [rsp + 0x30]
mov rdx, qword [rsp + 0x190]
mov r8, qword [rsp + 0xa8]
call fcn.140064010
cmp qword [rsp + 0x30], 0
je 0x1400344ec
lea rcx, [rsp + 0x30]
call fcn.1400228e0
cmp byte [rsp + 0x101], 2
je 0x140034c69
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x180], rax
movaps xmm0, xmmword [rsp + 0xd0]
movdqa xmm1, xmmword [rsp + 0xe0]
movdqa xmm2, xmmword [rsp + 0xf0]
movdqa xmmword [rsp + 0x170], xmm2
movdqa xmmword [rsp + 0x160], xmm1
movaps xmmword [rsp + 0x150], xmm0
mov r8, qword [rsp + 0xa8]
movzx eax, byte [r8]
test rax, rax
je 0x14003455d
cmp eax, 1
jne 0x140034561
movzx ecx, byte [r8 + 1]
mov al, 1
jmp 0x1400345cb
xor eax, eax
jmp 0x1400345cb
movzx eax, byte [0x1401891c0]
mov rcx, qword [0x140189110]
test rcx, rcx
jne 0x14003458c
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x1400351ec
mov rcx, rax
mov qword [0x140189110], rax
mov r8d, 0x20
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x1400351ec
mov r14, rax
mov rsi, qword [rsp + 0xa8]
mov rax, qword [rsi + 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 r8, rsi
mov al, 2
mov byte [rsp + 0x30], al
mov byte [rsp + 0x31], cl
mov qword [rsp + 0x38], r14
lea rcx, [rsp + 0x40]
lea rdx, [r8 + 0x28]
mov rax, qword [r8 + 0x10]
mov r9, r8
mov r8, qword [r8 + 0x18]
mov r9, qword [r9 + 0x20]
call qword [rax]
mov rsi, qword [rsp + 0x80]
lea rax, [rsi + 0x40]
mov qword [rsp + 0x88], rax
mov rcx, qword [rsi + 0x60]
mov rdx, qword [rsi + 0x68]
lea r8, [rsp + 0x30]
call fcn.140026840
mov r13, rax
mov r11, qword [rsi + 0x40]
mov rcx, qword [rsi + 0x48]
shr rax, 0x39
mov qword [rsp + 0x148], rax
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
movzx edx, byte [rsp + 0x30]
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0xa0], rax
movzx eax, byte [rsp + 0x31]
mov byte [rsp + 0xb0], al
mov r10, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0x98], rbx
neg rbx
xor eax, eax
mov qword [rsp + 0x90], rax
pcmpeqd xmm1, xmm1
mov qword [rsp + 0x140], r13
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x78], rcx
and r13, rcx
movdqu xmm2, xmmword [r11 + r13]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb r9d, xmm3
test r9d, r9d
jne 0x140034708
pcmpeqb xmm2, xmm1
pmovmskb r9d, xmm2
test r9d, r9d
jne 0x140034b39
mov rax, qword [rsp + 0x90]
add r13, rax
add r13, 0x10
add rax, 0x10
mov qword [rsp + 0x90], rax
jmp 0x140034694
cmp edx, 1
je 0x1400347c0
test edx, edx
je 0x140035135
lea r9d, [rbp - 1]
and r9d, ebp
test r9w, r9w
mov r11, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x78]
je 0x1400346af
mov ebp, r9d
tzcnt r9d, ebp
add r9, r13
and r9, rcx
neg r9
lea r9, [r9 + r9*8]
lea rdi, [r11 + r9*8]
movzx r9d, byte [r11 + r9*8 - 0x48]
cmp r9, 1
je 0x1400346e0
cmp r9d, 2
jne 0x140035135
cmp edx, 2
jne 0x1400346e9
mov r11, qword [rdi - 0x40]
mov r9, qword [r11 + 0x10]
mov rax, qword [rsp + 0xa0]
cmp r9, qword [rax + 0x10]
jne 0x1400346f1
mov rsi, qword [r11 + 8]
mov rax, qword [rsp + 0xa0]
mov r12, qword [rax + 8]
mov r15, r9
neg r15
mov r11, 0xffffffffffffffff
nop
lea r8, [r15 + r11]
cmp r8, 0xffffffffffffffff
je 0x1400347f0
movzx r8d, byte [rsi + r11 + 1]
movzx r14d, byte [r12 + r11 + 1]
lea ecx, [r8 - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
lea eax, [r14 - 0x41]
cmp al, 0x1a
setb al
shl al, 5
or cl, r8b
or al, r14b
inc r11
cmp cl, al
je 0x140034770
cmp r11, r9
jb 0x1400346f1
jmp 0x1400347f0
cmp byte [rdi - 0x47], 0
je 0x1400347d5
cmp byte [rsp + 0xb0], 0
jne 0x1400347f0
jmp 0x1400346f1
cmp byte [rsp + 0xb0], 0
jne 0x1400346f1
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x98]
cmp qword [rdi - 0x28], rax
jne 0x1400346f1
mov r11, qword [rdi - 0x30]
mov r9, 0xffffffffffffffff
nop dword [rax]
lea rax, [rbx + r9]
cmp rax, 0xffffffffffffffff
je 0x140034861
movzx eax, byte [r11 + r9 + 1]
movzx ecx, byte [r10 + r9 + 1]
lea r8d, [rax - 0x41]
cmp r8b, 0x1a
setb r8b
shl r8b, 5
lea esi, [rcx - 0x41]
cmp sil, 0x1a
setb sil
shl sil, 5
or r8b, al
or sil, cl
inc r9
cmp r8b, sil
je 0x140034810
cmp r9, qword [rsp + 0x98]
jb 0x1400346f1
movdqu xmm0, xmmword [rsp + 0x30]
movdqu xmm1, xmmword [rsp + 0x40]
movdqu xmm2, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x130], xmm2
movdqa xmmword [rsp + 0x120], xmm1
movdqa xmmword [rsp + 0x110], xmm0
movdqa xmmword [rsp + 0x30], xmm0
movdqa xmmword [rsp + 0x50], xmm2
movdqa xmmword [rsp + 0x40], xmm1
mov qword [rsp + 0x60], rdi
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x68], rax
movzx eax, byte [rsp + 0x30]
cmp al, 3
je 0x1400348fe
cmp al, 2
jb 0x1400348e7
mov r14, qword [rsp + 0x38]
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 [0x140189110]
xor edx, edx
mov r8, r14
call fcn.14011631c
lea rcx, [rsp + 0x58]
mov rax, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x50]
call qword [rax + 0x10]
mov r9, qword [rsp + 0x80]
mov rax, qword [r9 + 0xa0]
cmp rax, qword [rdi - 8]
jbe 0x140034c5c
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x60], rax
movaps xmm0, xmmword [rsp + 0x150]
movaps xmm1, xmmword [rsp + 0x160]
movaps xmm2, xmmword [rsp + 0x170]
movaps xmmword [rsp + 0x50], xmm2
movaps xmmword [rsp + 0x40], xmm1
movaps xmmword [rsp + 0x30], xmm0
call fcn.1400d59b0
mov r14, rax
mov ebp, edx
mov rdx, qword [rdi - 8]
cmp rdx, qword [rdi - 0x10]
jne 0x14003496c
lea rcx, [rdi - 0x18]
call fcn.1400b4e50
mov rdx, qword [rdi - 8]
mov rax, qword [rdi - 0x18]
lea rcx, [rdx + rdx*8]
mov r8, qword [rsp + 0x60]
mov qword [rax + rcx*8 + 0x30], r8
movdqa xmm0, xmmword [rsp + 0x30]
movdqa xmm1, xmmword [rsp + 0x40]
movdqa xmm2, xmmword [rsp + 0x50]
movdqu xmmword [rax + rcx*8 + 0x20], xmm2
movdqu xmmword [rax + rcx*8 + 0x10], xmm1
movdqu xmmword [rax + rcx*8], xmm0
mov qword [rax + rcx*8 + 0x38], r14
mov dword [rax + rcx*8 + 0x40], ebp
inc rdx
mov qword [rdi - 8], rdx
mov rax, qword [rsp + 0x80]
cmp qword [rax + 0xa8], 0
jne 0x140034c69
mov esi, dword [rax + 0xb8]
cmp esi, 0x3b9aca00
je 0x140034c69
mov rbx, qword [rax + 0xb0]
movzx eax, byte [0x1401891c0]
mov rcx, qword [0x140189110]
test rcx, rcx
jne 0x140034a0b
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x1400351fd
mov rcx, rax
mov qword [0x140189110], rax
mov r8d, 0x48
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x1400351fd
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 0x14003514f
mov rax, qword [rsp + 0x80]
mov qword [rax + 0xa8], r14
test rbx, rbx
jne 0x140034a77
test esi, esi
je 0x14003521f
call fcn.1400d59b0
mov r12, rax
mov ebp, edx
lea rcx, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_tokio_1.35.0_src_time_interval.rs
call fcn.1400fd650
mov r13, rdx
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], rdx
lea rcx, [rdx + 0x110]
add rdx, 0xb0
test rax, rax
cmove rcx, rdx
cmp dword [rcx + 0xb8], 0x3b9aca00
je 0x14003525d
lea rcx, [rsp + 0xc0]
mov edx, 1
lock xadd qword [r13], rdx
test rax, rax
je 0x140034cce
test rdx, rdx
js 0x14003514f
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x34], xmm0
movdqu xmmword [rsp + 0x44], xmm0
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x110], xmm0
movups xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x120], xmm0
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x130], eax
lock dec qword [r13]
mov edi, 1
jne 0x140034d1a
call fcn.1400fbf70
jmp 0x140034d1a
mov r9, qword [rsp + 0x80]
cmp qword [r9 + 0x50], 0
je 0x14003510f
movups xmm0, xmmword [rsp + 0x30]
movdqu xmm1, xmmword [rsp + 0x40]
movdqu xmm2, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x130], xmm2
movdqa xmmword [rsp + 0x120], xmm1
movaps xmmword [rsp + 0x110], xmm0
mov rax, qword [rsp + 0x140]
and rax, rcx
movdqu xmm0, xmmword [r11 + rax]
pmovmskb edx, xmm0
test edx, edx
jne 0x140034bae
mov r8d, 0x10
add rax, r8
and rax, rcx
movdqu xmm0, xmmword [r11 + rax]
pmovmskb edx, xmm0
add r8, 0x10
test edx, edx
je 0x140034b96
tzcnt edx, edx
add rdx, rax
and rdx, rcx
movzx r8d, byte [r11 + rdx]
test r8b, r8b
js 0x140034bd4
movdqa xmm0, xmmword [r11]
pmovmskb eax, xmm0
tzcnt edx, eax
movzx r8d, byte [r11 + rdx]
lea rax, [rdx - 0x10]
and rax, rcx
mov rcx, qword [rsp + 0x148]
mov byte [r11 + rdx], cl
mov byte [rax + r11 + 0x10], cl
neg rdx
lea rax, [rdx + rdx*8]
lea rdi, [r11 + rax*8]
and r8b, 1
movzx ecx, r8b
sub qword [r9 + 0x50], rcx
movdqa xmm0, xmmword [rsp + 0x110]
movdqa xmm1, xmmword [rsp + 0x120]
movdqa xmm2, xmmword [rsp + 0x130]
movdqu xmmword [r11 + rax*8 - 0x28], xmm2
movdqu xmmword [r11 + rax*8 - 0x38], xmm1
movdqu xmmword [r11 + rax*8 - 0x48], xmm0
mov qword [r11 + rax*8 - 0x18], 8
pxor xmm0, xmm0
movdqu xmmword [r11 + rax*8 - 0x10], xmm0
inc qword [r9 + 0x58]
mov rax, qword [r9 + 0xa0]
cmp rax, qword [rdi - 8]
ja 0x140034917
lea rcx, [rsp + 0x150]
call fcn.1400260f0
mov r8, qword [rsp + 0xa8]
cmp byte [r8], 2
jb 0x140034ca6
mov rdi, qword [r8 + 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 [0x140189110]
xor edx, edx
mov r8, rdi
call fcn.14011631c
mov r8, qword [rsp + 0xa8]
lea rcx, [r8 + 0x28]
mov rax, qword [r8 + 0x10]
mov rdx, qword [r8 + 0x18]
mov r8, qword [r8 + 0x20]
call qword [rax + 0x10]
nop
add rsp, 0x198
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
test rdx, rdx
js 0x14003514f
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x34], xmm0
movdqu xmmword [rsp + 0x44], xmm0
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x110], xmm0
movups xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x120], xmm0
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x130], eax
lock dec qword [r13]
jne 0x140034d18
call fcn.1400fbe60
xor edi, edi
movzx eax, byte [0x1401891c0]
mov rcx, qword [0x140189110]
test rcx, rcx
jne 0x140034d45
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x14003520e
mov rcx, rax
mov qword [0x140189110], rax
mov r8d, 0x70
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x14003520e
mov r15, rax
mov qword [rax], rdi
mov qword [rax + 8], r13
mov qword [rax + 0x10], r12
mov dword [rax + 0x18], ebp
movdqa xmm0, xmmword [rsp + 0x110]
movdqa xmm1, xmmword [rsp + 0x120]
movdqu xmmword [rax + 0x1c], xmm0
movdqu xmmword [rax + 0x2c], xmm1
mov eax, dword [rsp + 0x130]
mov dword [r15 + 0x3c], eax
mov qword [r15 + 0x40], 0xffffffffffffffff
mov qword [r15 + 0x48], 0
mov qword [r15 + 0x58], 0
mov byte [r15 + 0x60], 0
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x33]
mov dword [r15 + 0x61], eax
mov dword [r15 + 0x64], ecx
mov byte [r15 + 0x68], 0
mov eax, dword [rsp + 0xb8]
mov ecx, dword [rsp + 0xbb]
mov dword [r15 + 0x69], eax
mov dword [r15 + 0x6c], ecx
mov rax, qword [rsp + 0x188]
mov rbp, qword [rax]
mov rdx, qword [rsp + 0x80]
jmp 0x140034df2
pause
mov rax, qword [rbp + 8]
nop word cs:[rax + rax]
cmp rax, 0xffffffffffffffff
je 0x140034df0
test rax, rax
js 0x14003516d
lea rcx, [rax + 1]
lock cmpxchg qword [rbp + 8], rcx
jne 0x140034e00
mov r13, rbx
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x33]
mov dword [rsp + 0x23], ecx
mov dword [rsp + 0x20], eax
mov rbx, qword [rdx]
test rbx, rbx
je 0x140034eca
mov rdi, qword [rdx + 8]
mov r12, qword [rdi + 0x10]
movzx eax, byte [0x1401891c0]
mov rcx, qword [0x140189110]
test rcx, rcx
jne 0x140034e6d
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x140035277
mov rcx, rax
mov qword [0x140189110], rax
mov r8d, 0x30
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x140035277
dec r12
and r12, 0xfffffffffffffff0
lea rcx, [r12 + rbx]
add rcx, 0x10
mov qword [rax], r13
mov dword [rax + 8], esi
mov qword [rax + 0x10], r15
mov byte [rax + 0x18], 0
mov edx, dword [rsp + 0x20]
mov r8d, dword [rsp + 0x23]
mov dword [rax + 0x19], edx
mov dword [rax + 0x1c], r8d
mov qword [rax + 0x20], r14
mov qword [rax + 0x28], rbp
lea r8, fcn.1400211e0
mov rdx, rax
call qword [rdi + 0x18]
jmp 0x140034c69
mov eax, 1
lock xadd qword [0x140119150], rax
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x38], esi
mov qword [rsp + 0x40], r15
mov byte [rsp + 0x48], 0
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x23]
mov dword [rsp + 0x49], eax
mov dword [rsp + 0x4c], ecx
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rbp
lea rax, [rsp + 0xb8]
mov qword [rsp + 0x60], rax
call fcn.140053840
mov rdi, rax
test rax, rax
je 0x140035288
mov rax, qword [rdi]
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
jae 0x140035294
inc rax
mov qword [rdi], rax
mov rax, qword [rdi + 8]
cmp rax, 2
je 0x1400352a2
mov rcx, qword [rsp + 0xb8]
test rax, rax
mov qword [rsp + 0x28], rcx
je 0x14003502f
mov r12, qword [rdi + 0x10]
lock inc qword [r12]
jle 0x14003514f
movzx eax, byte [0x1401891c0]
mov ecx, pe_nt_image_headers64
mov edx, pe_nt_image_headers64
call fcn.140082d50
test rax, rax
je 0x140035320
mov rbx, rax
lea rax, [r12 + 0x10]
mov qword [rsp + 0x78], rax
mov qword [rbx], 0xcc
mov qword [rbx + 8], 0
lea rax, [0x1401213b8]
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], 0
mov qword [rbx + 0x20], r12
add r12, 0x70
mov rax, qword [rsp + 0x28]
mov qword [rbx + 0x28], rax
mov qword [rbx + 0x30], r13
mov dword [rbx + 0x38], esi
mov qword [rbx + 0x40], r15
mov byte [rbx + 0x48], 0
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x23]
mov dword [rbx + 0x49], eax
mov dword [rbx + 0x4c], ecx
mov qword [rbx + 0x50], r14
mov qword [rbx + 0x58], rbp
pxor xmm0, xmm0
movdqa xmmword [rbx + 0x60], xmm0
mov qword [rbx + 0x70], 0
mov rcx, r12
mov rdx, rbx
mov r8, rbx
call fcn.140051200
mov rcx, qword [rsp + 0x78]
mov rdx, rax
call fcn.140105050
jmp 0x1400350e8
mov r12, qword [rdi + 0x10]
lock inc qword [r12]
jle 0x14003514f
movzx eax, byte [0x1401891c0]
mov ecx, pe_nt_image_headers64
mov edx, pe_nt_image_headers64
call fcn.140082d50
test rax, rax
je 0x140035320
mov rbx, rax
mov qword [rax], 0xcc
mov qword [rax + 8], 0
lea rax, [0x140121638]
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], 0
mov qword [rbx + 0x20], r12
add r12, 0x60
mov rax, qword [rsp + 0x28]
mov qword [rbx + 0x28], rax
mov qword [rbx + 0x30], r13
mov dword [rbx + 0x38], esi
mov qword [rbx + 0x40], r15
mov byte [rbx + 0x48], 0
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x23]
mov dword [rbx + 0x49], eax
mov dword [rbx + 0x4c], ecx
mov qword [rbx + 0x50], r14
mov qword [rbx + 0x58], rbp
pxor xmm0, xmm0
movdqa xmmword [rbx + 0x60], xmm0
mov qword [rbx + 0x70], 0
mov rcx, r12
mov rdx, rbx
mov r8, rbx
call fcn.140051200
test rax, rax
je 0x1400350e8
mov rcx, qword [rdi + 0x10]
mov rdx, rax
call fcn.140103530
dec qword [rdi]
mov ecx, 0x84
mov eax, 0xcc
lock cmpxchg qword [rbx], rcx
je 0x140034c69
mov rax, qword [rbx + 0x10]
mov rcx, rbx
call qword [rax + 0x20]
jmp 0x140034c69
lea rdx, [r9 + 0x60]
mov rcx, qword [rsp + 0x88]
call fcn.140064690
mov r9, qword [rsp + 0x80]
mov r11, qword [r9 + 0x40]
mov rcx, qword [r9 + 0x48]
jmp 0x140034b4c
lea rcx, str.internal_error:_entered_unreachable_code_rustc_a28077b28a02b92985b3a3faecf92813155f1ea1library_std_src_threadmod.rs
lea r8, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_http_0.2.11_src_uri_scheme.rs
mov edx, 0x28
call fcn.140086940
ud2
ud2
lea rcx, str.value_already_sent
lea r8, [0x140120d58]
mov edx, 0x12
call fcn.1400895f0
ud2
lea rax, str.Arc_counter_overflow
mov qword [rsp + 0x110], rax
lea rax, [0x14001c6e0]
mov qword [rsp + 0x118], rax
lea rax, [0x140178fc8]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 1
mov qword [rsp + 0x50], 0
lea rax, [rsp + 0x110]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 1
lea rdx, str._rustc_a28077b28a02b92985b3a3faecf92813155f1ea1library_alloc_src_sync.rs
lea rcx, [rsp + 0x30]
call fcn.140085be0
ud2
lea rcx, str.assertion_failed:_slot.is_none___Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_futures_channel_0.3.29_src_oneshot.rs
lea r8, [0x14011f610]
mov edx, 0x20
call fcn.140086940
ud2
mov ecx, 8
mov edx, 0x20
call fcn.140083160
ud2
mov ecx, 8
mov edx, 0x48
call fcn.140083160
ud2
mov ecx, 8
mov edx, 0x70
call fcn.140083160
ud2
lea rax, [0x140155890]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 1
lea rax, [0x140178ba0]
mov qword [rsp + 0x40], rax
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
lea rdx, [0x140120d28]
lea rcx, [rsp + 0x30]
call fcn.140085be0
ud2
lea rcx, [0x140153738]
lea r8, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_tokio_1.35.0_src_time_interval.rs
mov edx, 0x73
call fcn.1400895f0
ud2
mov ecx, 8
mov edx, 0x30
call fcn.140083160
ud2
lea rcx, [rsp + 0x30]
call fcn.1400211e0
jmp 0x1400352af
lea rcx, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_tokio_1.35.0_src_runtime_context_current.rs
call fcn.1400873b0
ud2
lea rcx, [rsp + 0x30]
call fcn.1400211e0
dec qword [rdi]
test rdi, rdi
sete byte [rsp + 0xc8]
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x110], rax
lea rax, [0x140100000]
mov qword [rsp + 0x118], rax
lea rax, [0x140178fc8]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 1
mov qword [rsp + 0x50], 0
lea rax, [rsp + 0x110]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 1
lea rdx, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_common_exec.rs
lea rcx, [rsp + 0x30]
call fcn.140085be0
ud2
mov ecx, pe_nt_image_headers64
mov edx, pe_nt_image_headers64
call fcn.140083160
ud2