Function at 0x14004b170
Capabilities:
Inspect section memory permissions

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xc8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x40], 0xfffffffffffffffe
mov qword [rbp + 0x18], rcx
mov rax, qword [rcx]
movzx ecx, byte [rax + 0x2a9]
cmp cl, 2
je 0x14004b1f8
and cl, 1
je 0x14004b1f8
mov rax, qword [rax + 0x230]
mov rax, qword [rax + 0x160]
lea rax, [rax + rax*2]
lea rsi, [rax + rax]
add rsi, 0xc
mov rax, qword [rbp + 0x18]
mov rbx, qword [rax + 8]
lea r14, [rbx + 0xe0]
mov rax, qword [rbx + 0xd0]
mov rdx, qword [rbx + 0xe0]
sub rax, rdx
cmp rax, rsi
jb 0x14004b41f
test rsi, rsi
jne 0x14004b227
jmp 0x14004b306
mov rax, qword [rbp + 0x18]
mov rbx, qword [rax + 8]
lea r14, [rbx + 0xe0]
mov rax, qword [rbx + 0xd0]
mov rdx, qword [rbx + 0xe0]
sub rax, rdx
mov esi, recv
cmp rax, 0xb
jbe 0x14004b41f
mov rax, qword [rbx + 0xd8]
cmp rsi, 8
jb 0x14004b2ed
mov r8, rsi
and r8, 0xfffffffffffffff8
lea rcx, [r8 - 8]
mov rbx, rcx
shr rbx, 3
inc rbx
mov r9d, ebx
and r9d, 3
cmp rcx, 0x18
jae 0x14004b25e
xor ecx, ecx
jmp 0x14004b2b1
and rbx, 0xfffffffffffffffc
lea rdi, [rax + rdx*4]
add rdi, 0x70
xor ecx, ecx
movaps xmm0, xmmword [0x1401fca70]
nop word cs:[rax + rax]
movups xmmword [rdi + rcx*4 - 0x70], xmm0
movups xmmword [rdi + rcx*4 - 0x60], xmm0
movups xmmword [rdi + rcx*4 - 0x50], xmm0
movups xmmword [rdi + rcx*4 - 0x40], xmm0
movups xmmword [rdi + rcx*4 - 0x30], xmm0
movups xmmword [rdi + rcx*4 - 0x20], xmm0
movups xmmword [rdi + rcx*4 - 0x10], xmm0
movups xmmword [rdi + rcx*4], xmm0
add rcx, 0x20
add rbx, 0xfffffffffffffffc
jne 0x14004b280
test r9, r9
je 0x14004b2e2
add rcx, rdx
lea rcx, [rax + rcx*4]
add rcx, 0x10
shl r9, 5
xor ebx, ebx
movaps xmm0, xmmword [0x1401fca70]
nop
movups xmmword [rcx + rbx - 0x10], xmm0
movups xmmword [rcx + rbx], xmm0
add rbx, 0x20
cmp r9, rbx
jne 0x14004b2d0
add rdx, r8
cmp rsi, r8
je 0x14004b303
and esi, 7
mov rcx, rdx
lea rdx, [rcx + 1]
mov dword [rax + rcx*4], 0x80000000
mov rcx, rdx
dec rsi
jne 0x14004b2f0
mov qword [r14], rdx
call fcn.140027cc0
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], rdx
lock inc qword [rax]
jle 0x14004c45d
mov r15, rax
mov r14, rdx
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], rdx
mov rax, qword [rbp + 0x18]
mov r13, qword [rax]
mov rdi, qword [rax + 8]
mov rax, qword [rdi + 0x10]
mov rsi, qword [rdi + 0xc8]
mov r8, qword [rdi + 0xf8]
mov rdx, r8
shl rdx, 4
mov rbx, qword [rdi + 0xe0]
add rbx, rsi
lea r9, [rax + rax*4]
movzx ecx, byte [r13 + 0x220]
mov eax, 4
shl rax, cl
add rbx, qword [rdi + 0x48]
add rbx, qword [rdi + 0x60]
add rbx, qword [rdi + 0x80]
add rbx, qword [rdi + 0x98]
add rbx, qword [rdi + 0x100]
add rdx, r14
lea rcx, [rdx + r9*4]
add rcx, qword [rdi + 0x118]
add rcx, qword [rdi + 0xa0]
lea rcx, [rcx + rbx*4]
add rax, rcx
add rax, 0x24
cmp rax, qword [r13 + 0x228]
jbe 0x14004b47b
cmp dword [r13 + 0x238], 1
jne 0x14004b467
mov rax, qword [rdi + 0xa8]
cmp rax, qword [r13 + 0x240]
jb 0x14004b467
cmp dword [r13 + 0x248], 1
jne 0x14004c60a
mov rax, qword [r13 + 0x250]
mov rdx, qword [rdi + 0xb0]
cmp qword [rdi + 0x148], 0
je 0x14004b44b
mov rcx, qword [rdi + 0x158]
mov rbx, qword [rdi + 0x150]
mov rsi, rcx
sub rsi, rbx
neg rsi
sub rcx, rbx
cmovb rcx, rsi
jmp 0x14004b44d
lea rcx, [rbx + 0xd0]
mov r8, rsi
call fcn.1401e9340
mov rdx, qword [rbx + 0xe0]
mov rax, qword [rbx + 0xd8]
cmp rsi, 8
jae 0x14004b238
jmp 0x14004b2ed
xor ecx, ecx
add rcx, rdx
mul r8
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x14004c60a
mov byte [rbp + 0x3e], 1
mov rcx, qword [rbp + 0x18]
call fcn.14004a7c0
mov rsi, qword [rdi + 0xc8]
cmp rsi, 0x8000000
jb 0x14004b529
cmp dword [r13 + 0x238], 1
jne 0x14004b508
mov rax, qword [rdi + 0xa8]
cmp rax, qword [r13 + 0x240]
jb 0x14004b508
cmp dword [r13 + 0x248], 1
jne 0x14004c60a
mov rax, qword [r13 + 0x250]
mov rdx, qword [rdi + 0xb0]
cmp qword [rdi + 0x148], 0
je 0x14004b4e8
mov rcx, qword [rdi + 0x158]
mov rbx, qword [rdi + 0x150]
mov rsi, rcx
sub rsi, rbx
neg rsi
sub rcx, rbx
cmovb rcx, rsi
jmp 0x14004b4ea
xor ecx, ecx
add rcx, rdx
mul qword [rdi + 0xf8]
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x14004c60a
mov byte [rbp + 0x3e], 1
mov rcx, qword [rbp + 0x18]
call fcn.14004a7c0
mov rsi, qword [rdi + 0xc8]
cmp rsi, 0x8000000
jae 0x14004c64e
test r14, r14
je 0x14004c412
movzx r14d, byte [r15 + 0x10]
mov r12, qword [r13 + 0x220]
and r12d, 0x3f
mov ebx, 1
mov ecx, r12d
shl rbx, cl
lea rax, [rdi + 0xb8]
mov qword [rbp - 0x28], rax
mov rcx, qword [rdi + 0xb8]
sub rcx, rsi
mov rax, rsi
cmp rcx, rbx
jae 0x14004b584
mov byte [rbp + 0x3e], 1
mov rcx, qword [rbp - 0x28]
mov rdx, rsi
mov r8, rbx
call fcn.1401e9340
mov rax, qword [rdi + 0xc8]
and r14b, 1
movzx ecx, r14b
shl ecx, 0x1b
or ecx, esi
or ecx, 0x80000000
mov dword [rbp + 0x24], ecx
mov r10, qword [rdi + 0xc0]
cmp r12d, 3
jb 0x14004b65d
mov r8, rbx
and r8, 0xfffffffffffffff8
lea rcx, [r8 - 8]
mov rsi, rcx
shr rsi, 3
inc rsi
mov r9d, esi
and r9d, 3
cmp rcx, 0x18
jae 0x14004b5d1
xor edx, edx
jmp 0x14004b621
and rsi, 0xfffffffffffffffc
lea rcx, [r10 + rax*4]
add rcx, 0x70
xor edx, edx
movaps xmm0, xmmword [0x1401fca70]
nop word cs:[rax + rax]
movups xmmword [rcx + rdx*4 - 0x70], xmm0
movups xmmword [rcx + rdx*4 - 0x60], xmm0
movups xmmword [rcx + rdx*4 - 0x50], xmm0
movups xmmword [rcx + rdx*4 - 0x40], xmm0
movups xmmword [rcx + rdx*4 - 0x30], xmm0
movups xmmword [rcx + rdx*4 - 0x20], xmm0
movups xmmword [rcx + rdx*4 - 0x10], xmm0
movups xmmword [rcx + rdx*4], xmm0
add rdx, 0x20
add rsi, 0xfffffffffffffffc
jne 0x14004b5f0
test r9, r9
je 0x14004b652
add rdx, rax
lea rcx, [r10 + rdx*4]
add rcx, 0x10
shl r9, 5
xor edx, edx
movaps xmm0, xmmword [0x1401fca70]
nop
movups xmmword [rcx + rdx - 0x10], xmm0
movups xmmword [rcx + rdx], xmm0
add rdx, 0x20
cmp r9, rdx
jne 0x14004b640
add rax, r8
cmp rbx, r8
je 0x14004b674
and ebx, 6
mov rcx, rax
lea rax, [rcx + 1]
mov dword [r10 + rcx*4], 0x80000000
mov rcx, rax
dec rbx
jne 0x14004b660
mov qword [rdi + 0xc8], rax
lea rax, [r13 + 0x200]
mov qword [rbp - 0x20], rax
mov rcx, qword [r13 + 0x200]
mov rdx, qword [r13 + 0x208]
or rdx, qword [r13 + 0x218]
or rcx, qword [r13 + 0x210]
xor eax, eax
or rcx, rdx
setne cl
cmp dword [rbp + 0x24], 0x80000000
je 0x14004b6e3
mov al, cl
test eax, eax
je 0x14004b6e3
mov rcx, qword [r13 + 0x220]
and ecx, 0x3f
mov eax, 1
shl rax, cl
cmp rcx, 0x1b
jae 0x14004c683
or eax, 0x40000000
cmp eax, dword [rbp + 0x24]
jne 0x14004b86e
mov rsi, qword [rbp + 0x30]
add qword [rdi + 0xa0], rsi
mov rbx, qword [rbp + 0x28]
lock inc qword [rbx]
jle 0x14004c45d
lea rcx, [rdi + 0xe8]
mov qword [rbp - 0x18], rbx
mov qword [rbp - 0x10], rsi
mov rdx, qword [rdi + 0xf8]
cmp rdx, qword [rdi + 0xe8]
mov qword [rbp - 0x50], rcx
jne 0x14004b72b
call fcn.140004500
mov rdx, qword [rdi + 0xf8]
mov rax, qword [rdi + 0xf0]
shl rdx, 4
mov qword [rax + rdx], rbx
mov qword [rax + rdx + 8], rsi
inc qword [rdi + 0xf8]
mov rdx, qword [rbp + 0x28]
mov r8, qword [rbp + 0x30]
mov byte [rbp + 0x3e], 0
mov rcx, rdi
mov r9d, dword [rbp + 0x24]
call fcn.1400528b0
mov eax, dword [rbp + 0x24]
mov dword [rbp - 0x3c], eax
mov r14, qword [rbp - 0x38]
mov r15, qword [rbp - 0x30]
lock inc qword [r14]
jle 0x14004c45d
mov qword [rbp + 0x28], r14
mov qword [rbp + 0x30], r15
mov rax, qword [rdi + 0x10]
mov r12, qword [rdi + 0xc8]
mov r8, qword [rdi + 0xf8]
mov rdx, r8
shl rdx, 4
mov rsi, qword [rdi + 0xe0]
add rsi, r12
lea rax, [rax + rax*4]
movzx ecx, byte [r13 + 0x220]
mov ebx, 4
shl rbx, cl
add rsi, qword [rdi + 0x48]
add rsi, qword [rdi + 0x60]
add rsi, qword [rdi + 0x80]
add rsi, qword [rdi + 0x98]
add rsi, qword [rdi + 0x100]
add rdx, r15
lea rax, [rdx + rax*4]
add rax, qword [rdi + 0x118]
add rax, qword [rdi + 0xa0]
lea rax, [rax + rsi*4]
add rax, rbx
add rax, 0x24
cmp rax, qword [r13 + 0x228]
jbe 0x14004b93f
cmp dword [r13 + 0x238], 1
jne 0x14004b92b
mov rax, qword [rdi + 0xa8]
cmp rax, qword [r13 + 0x240]
jb 0x14004b92b
cmp dword [r13 + 0x248], 1
jne 0x14004c6b8
mov rax, qword [r13 + 0x250]
mov rdx, qword [rdi + 0xb0]
cmp qword [rdi + 0x148], 0
je 0x14004b90f
mov rcx, qword [rdi + 0x158]
mov rbx, qword [rdi + 0x150]
mov rsi, rcx
sub rsi, rbx
neg rsi
sub rcx, rbx
cmovb rcx, rsi
jmp 0x14004b911
mov r12d, 2
shl r12, cl
cmp r12, 0x8000000
jae 0x14004c7dd
or r12d, 0x20000000
mov r15d, 1
xor r14d, r14d
nop word cs:[rax + rax]
cmp r14, 0xff
ja 0x14004b6e3
mov rcx, r14
xor eax, eax
shld rax, r15, cl
mov rdx, r14
shr rdx, 3
mov ebx, 1
shl rbx, cl
and rdx, 0xfffffffffffffff0
test cl, 0x40
cmovne rax, rbx
mov esi, 0
cmovne rbx, rsi
mov rsi, qword [rbp - 0x20]
and rax, qword [rsi + rdx + 8]
inc r14
and rbx, qword [rsi + rdx]
or rbx, rax
je 0x14004b8a0
shl ecx, 8
movzx r9d, cx
mov byte [rbp + 0x3e], 1
mov dword [rsp + 0x20], r12d
mov rcx, r13
mov rdx, rdi
mov r8d, dword [rbp + 0x24]
call fcn.14004ca10
jmp 0x14004b8a0
xor ecx, ecx
add rcx, rdx
mul r8
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x14004c6b8
mov byte [rbp + 0x3d], 1
mov rcx, qword [rbp + 0x18]
call fcn.14004a7c0
mov r12, qword [rdi + 0xc8]
cmp r12, 0x8000000
jb 0x14004b9ed
cmp dword [r13 + 0x238], 1
jne 0x14004b9cc
mov rax, qword [rdi + 0xa8]
cmp rax, qword [r13 + 0x240]
jb 0x14004b9cc
cmp dword [r13 + 0x248], 1
jne 0x14004c6b8
mov rax, qword [r13 + 0x250]
mov rdx, qword [rdi + 0xb0]
cmp qword [rdi + 0x148], 0
je 0x14004b9ac
mov rcx, qword [rdi + 0x158]
mov rbx, qword [rdi + 0x150]
mov rsi, rcx
sub rsi, rbx
neg rsi
sub rcx, rbx
cmovb rcx, rsi
jmp 0x14004b9ae
xor ecx, ecx
add rcx, rdx
mul qword [rdi + 0xf8]
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x14004c6b8
mov byte [rbp + 0x3d], 1
mov rcx, qword [rbp + 0x18]
call fcn.14004a7c0
mov r12, qword [rdi + 0xc8]
cmp r12, 0x8000000
jae 0x14004c6fc
test r15, r15
je 0x14004c42b
movzx esi, byte [r14 + 0x10]
mov r14, qword [r13 + 0x220]
and r14d, 0x3f
mov ebx, 1
mov ecx, r14d
shl rbx, cl
mov rax, qword [rbp - 0x28]
mov rcx, qword [rax]
sub rcx, r12
mov rax, r12
cmp rcx, rbx
jae 0x14004ba3d
mov byte [rbp + 0x3d], 1
mov rcx, qword [rbp - 0x28]
mov rdx, r12
mov r8, rbx
call fcn.1401e9340
mov rax, qword [rdi + 0xc8]
and sil, 1
movzx r11d, sil
shl r11d, 0x1b
or r11d, r12d
mov r10, qword [rdi + 0xc0]
cmp r14d, 3
jb 0x14004bb0d
mov r8, rbx
and r8, 0xfffffffffffffff8
lea rcx, [r8 - 8]
mov rdx, rcx
shr rdx, 3
inc rdx
mov r9d, edx
and r9d, 3
cmp rcx, 0x18
jae 0x14004ba83
xor esi, esi
jmp 0x14004bad1
and rdx, 0xfffffffffffffffc
lea rcx, [r10 + rax*4]
add rcx, 0x70
xor esi, esi
movaps xmm0, xmmword [0x1401fca70]
nop dword [rax + rax]
movups xmmword [rcx + rsi*4 - 0x70], xmm0
movups xmmword [rcx + rsi*4 - 0x60], xmm0
movups xmmword [rcx + rsi*4 - 0x50], xmm0
movups xmmword [rcx + rsi*4 - 0x40], xmm0
movups xmmword [rcx + rsi*4 - 0x30], xmm0
movups xmmword [rcx + rsi*4 - 0x20], xmm0
movups xmmword [rcx + rsi*4 - 0x10], xmm0
movups xmmword [rcx + rsi*4], xmm0
add rsi, 0x20
add rdx, 0xfffffffffffffffc
jne 0x14004baa0
test r9, r9
je 0x14004bb02
add rsi, rax
lea rcx, [r10 + rsi*4]
add rcx, 0x10
shl r9, 5
xor edx, edx
movaps xmm0, xmmword [0x1401fca70]
nop
movups xmmword [rcx + rdx - 0x10], xmm0
movups xmmword [rcx + rdx], xmm0
add rdx, 0x20
cmp r9, rdx
jne 0x14004baf0
add rax, r8
cmp rbx, r8
je 0x14004bb24
and ebx, 6
mov rcx, rax
lea rax, [rcx + 1]
mov dword [r10 + rcx*4], 0x80000000
mov rcx, rax
dec rbx
jne 0x14004bb10
or r11d, 0x40000000
mov dword [rbp + 0x20], r11d
mov qword [rdi + 0xc8], rax
mov rdx, qword [rbp - 0x20]
mov rax, qword [rdx + 8]
or rax, qword [rdx + 0x18]
mov rcx, qword [rdx]
or rcx, qword [rdx + 0x10]
or rcx, rax
mov qword [rbp - 0x58], rdi
je 0x14004bb7c
mov rcx, qword [r13 + 0x220]
and ecx, 0x3f
mov eax, 1
shl rax, cl
cmp rcx, 0x1b
jae 0x14004c55f
or eax, 0x40000000
cmp eax, dword [rbp + 0x20]
jne 0x14004bd06
mov rsi, qword [rbp + 0x30]
add qword [rdi + 0xa0], rsi
mov rbx, qword [rbp + 0x28]
lock inc qword [rbx]
jle 0x14004c45d
mov qword [rbp - 0x18], rbx
mov qword [rbp - 0x10], rsi
mov rdx, qword [rdi + 0xf8]
cmp rdx, qword [rdi + 0xe8]
jne 0x14004bbc3
mov rcx, qword [rbp - 0x50]
call fcn.140004500
mov r9d, dword [rbp + 0x20]
mov rdx, qword [rdi + 0xf8]
jmp 0x14004bbc7
mov r9d, dword [rbp + 0x20]
mov rax, qword [rdi + 0xf0]
shl rdx, 4
mov qword [rax + rdx], rbx
mov qword [rax + rdx + 8], rsi
inc qword [rdi + 0xf8]
mov rdx, qword [rbp + 0x28]
mov r8, qword [rbp + 0x30]
mov byte [rbp + 0x3d], 0
mov rcx, rdi
call fcn.1400528b0
mov eax, dword [rbp + 0x20]
mov dword [rbp - 0x40], eax
mov r14, qword [rbp - 0x38]
mov r15, qword [rbp - 0x30]
lock inc qword [r14]
jle 0x14004c45d
mov qword [rbp + 0x28], r14
mov qword [rbp + 0x30], r15
mov rax, qword [rdi + 0x10]
mov r12, qword [rdi + 0xc8]
mov r8, qword [rdi + 0xf8]
mov rdx, r8
shl rdx, 4
mov rsi, qword [rdi + 0xe0]
add rsi, r12
lea rax, [rax + rax*4]
movzx ecx, byte [r13 + 0x220]
mov ebx, 4
shl rbx, cl
add rsi, qword [rdi + 0x48]
add rsi, qword [rdi + 0x60]
add rsi, qword [rdi + 0x80]
add rsi, qword [rdi + 0x98]
add rsi, qword [rdi + 0x100]
add rdx, r15
lea rax, [rdx + rax*4]
add rax, qword [rdi + 0x118]
add rax, qword [rdi + 0xa0]
lea rax, [rax + rsi*4]
add rax, rbx
add rax, 0x24
cmp rax, qword [r13 + 0x228]
jbe 0x14004bdce
cmp dword [r13 + 0x238], 1
jne 0x14004bdba
mov rax, qword [rdi + 0xa8]
cmp rax, qword [r13 + 0x240]
jb 0x14004bdba
cmp dword [r13 + 0x248], 1
jne 0x14004c731
mov rax, qword [r13 + 0x250]
mov rdx, qword [rdi + 0xb0]
cmp qword [rdi + 0x148], 0
je 0x14004bd9e
mov rcx, qword [rdi + 0x158]
mov rbx, qword [rdi + 0x150]
mov rsi, rcx
sub rsi, rbx
neg rsi
sub rcx, rbx
cmovb rcx, rsi
jmp 0x14004bda0
mov r12d, 2
shl r12, cl
cmp r12, 0x8000000
jae 0x14004c7a7
or r12d, 0x20000000
xor r14d, r14d
mov r15d, 1
xor esi, esi
nop
cmp rsi, 0xff
ja 0x14004bb7c
mov rcx, rsi
xor eax, eax
shld rax, r15, cl
mov rdx, rsi
shr rdx, 3
mov ebx, 1
shl rbx, cl
and rdx, 0xfffffffffffffff0
test cl, 0x40
cmovne rax, rbx
cmovne rbx, r14
mov rdi, qword [rbp - 0x20]
and rax, qword [rdi + rdx + 8]
inc rsi
and rbx, qword [rdi + rdx]
mov rdi, qword [rbp - 0x58]
or rbx, rax
je 0x14004bd30
shl ecx, 8
movzx r9d, cx
mov byte [rbp + 0x3d], 1
mov dword [rsp + 0x20], r12d
mov rcx, r13
mov rdx, rdi
mov r8d, dword [rbp + 0x20]
call fcn.14004ca10
jmp 0x14004bd30
xor ecx, ecx
add rcx, rdx
mul r8
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x14004c731
mov byte [rbp + 0x3c], 1
mov rcx, qword [rbp + 0x18]
call fcn.14004a7c0
mov r12, qword [rdi + 0xc8]
cmp r12, 0x8000000
jb 0x14004be7c
cmp dword [r13 + 0x238], 1
jne 0x14004be5b
mov rax, qword [rdi + 0xa8]
cmp rax, qword [r13 + 0x240]
jb 0x14004be5b
cmp dword [r13 + 0x248], 1
jne 0x14004c731
mov rax, qword [r13 + 0x250]
mov rdx, qword [rdi + 0xb0]
cmp qword [rdi + 0x148], 0
je 0x14004be3b
mov rcx, qword [rdi + 0x158]
mov rbx, qword [rdi + 0x150]
mov rsi, rcx
sub rsi, rbx
neg rsi
sub rcx, rbx
cmovb rcx, rsi
jmp 0x14004be3d
xor ecx, ecx
add rcx, rdx
mul qword [rdi + 0xf8]
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x14004c731
mov byte [rbp + 0x3c], 1
mov rcx, qword [rbp + 0x18]
call fcn.14004a7c0
mov r12, qword [rdi + 0xc8]
cmp r12, 0x8000000
jae 0x14004c775
test r15, r15
je 0x14004c444
movzx esi, byte [r14 + 0x10]
mov r15, qword [r13 + 0x220]
and r15d, 0x3f
mov ebx, 1
mov ecx, r15d
shl rbx, cl
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rcx]
sub rdx, r12
mov rax, r12
cmp rdx, rbx
jae 0x14004bec8
mov byte [rbp + 0x3c], 1
mov rdx, r12
mov r8, rbx
call fcn.1401e9340
mov rax, qword [rdi + 0xc8]
and sil, 1
movzx r14d, sil
shl r14d, 0x1b
or r14d, r12d
mov r10, qword [rdi + 0xc0]
cmp r15d, 3
jb 0x14004bf9d
mov r8, rbx
and r8, 0xfffffffffffffff8
lea rcx, [r8 - 8]
mov rdx, rcx
shr rdx, 3
inc rdx
mov r9d, edx
and r9d, 3
cmp rcx, 0x18
jae 0x14004bf0e
xor esi, esi
jmp 0x14004bf61
and rdx, 0xfffffffffffffffc
lea rcx, [r10 + rax*4]
add rcx, 0x70
xor esi, esi
movaps xmm0, xmmword [0x1401fca70]
nop word cs:[rax + rax]
movups xmmword [rcx + rsi*4 - 0x70], xmm0
movups xmmword [rcx + rsi*4 - 0x60], xmm0
movups xmmword [rcx + rsi*4 - 0x50], xmm0
movups xmmword [rcx + rsi*4 - 0x40], xmm0
movups xmmword [rcx + rsi*4 - 0x30], xmm0
movups xmmword [rcx + rsi*4 - 0x20], xmm0
movups xmmword [rcx + rsi*4 - 0x10], xmm0
movups xmmword [rcx + rsi*4], xmm0
add rsi, 0x20
add rdx, 0xfffffffffffffffc
jne 0x14004bf30
test r9, r9
je 0x14004bf92
add rsi, rax
lea rcx, [r10 + rsi*4]
add rcx, 0x10
shl r9, 5
xor edx, edx
movaps xmm0, xmmword [0x1401fca70]
nop
movups xmmword [rcx + rdx - 0x10], xmm0
movups xmmword [rcx + rdx], xmm0
add rdx, 0x20
cmp r9, rdx
jne 0x14004bf80
add rax, r8
cmp rbx, r8
je 0x14004bfb4
and ebx, 6
mov rcx, rax
lea rax, [rcx + 1]
mov dword [r10 + rcx*4], 0x80000000
mov rcx, rax
dec rbx
jne 0x14004bfa0
or r14d, 0x20000000
mov qword [rdi + 0xc8], rax
mov rdx, qword [rbp - 0x20]
mov rax, qword [rdx + 8]
or rax, qword [rdx + 0x18]
mov rcx, qword [rdx]
or rcx, qword [rdx + 0x10]
or rcx, rax
je 0x14004c014
mov rcx, qword [r13 + 0x220]
and ecx, 0x3f
cmp rcx, 0x1b
jae 0x14004c594
mov r15d, 2
shl r15, cl
cmp r15, 0x8000000
jae 0x14004c5d1
or r15d, 0x20000000
cmp r15d, r14d
jne 0x14004c38c
mov rsi, qword [rbp + 0x30]
add qword [rdi + 0xa0], rsi
mov rbx, qword [rbp + 0x28]
lock inc qword [rbx]
jle 0x14004c45d
mov qword [rbp - 0x18], rbx
mov qword [rbp - 0x10], rsi
mov rdx, qword [rdi + 0xf8]
cmp rdx, qword [rdi + 0xe8]
mov rcx, qword [rbp - 0x50]
jne 0x14004c055
call fcn.140004500
mov rdx, qword [rdi + 0xf8]
mov rax, qword [rdi + 0xf0]
shl rdx, 4
mov qword [rax + rdx], rbx
mov qword [rax + rdx + 8], rsi
inc qword [rdi + 0xf8]
mov rdx, qword [rbp + 0x28]
mov r8, qword [rbp + 0x30]
mov byte [rbp + 0x3c], 0
mov rcx, rdi
mov r9d, r14d
call fcn.1400528b0
mov dword [rbp - 0x44], r14d
mov dword [rbp + 0x28], 0x80000000
cmp dword [rbp + 0x24], 0x80000000
jne 0x14004c461
mov rcx, qword [r13 + 0x220]
and ecx, 0x3f
mov eax, 1
shl rax, cl
cmp rcx, 0x1b
mov r12d, dword [rbp + 0x20]
jae 0x14004c491
or eax, 0x40000000
mov dword [rbp + 0x28], eax
cmp r12d, eax
jne 0x14004c4c6
mov eax, 2
shl rax, cl
cmp rax, 0x8000000
jae 0x14004c4f6
or eax, 0x20000000
mov dword [rbp + 0x28], eax
cmp r14d, eax
jne 0x14004c52f
xor ebx, ebx
xor esi, esi
nop dword [rax]
test sil, sil
je 0x14004c140
cmp rbx, 0x101
mov eax, 0x100
cmovae rax, rbx
mov rdx, rbx
nop dword [rax + rax]
cmp rdx, 0x100
jae 0x14004c173
mov rbx, rdx
movzx ecx, byte [r13 + rdx]
inc rdx
cmp r15b, cl
je 0x14004c120
jmp 0x14004c153
cmp rbx, 0xff
ja 0x14004c170
movzx ecx, byte [r13 + rbx]
lea rdx, [rbx + 1]
shl ebx, 8
movzx eax, bx
mov sil, 1
mov rbx, rdx
mov r15d, ecx
mov ecx, eax
movzx r9d, cl
cmp r9d, 2
jne 0x14004c1a2
jmp 0x14004c1c7
mov rax, rbx
cmp rax, 0xffffffffffffffff
je 0x14004c1c7
movzx ecx, byte [r13 + 0xff]
shl ecx, 0x10
add ecx, 0x10001
mov eax, ecx
and eax, 0x1ff0000
mov rbx, 0xffffffffffffffff
movzx r9d, cl
cmp r9d, 2
je 0x14004c1c7
or r9d, eax
mov byte [rbp + 0x3f], 1
mov dword [rsp + 0x20], 0x80000000
mov rcx, r13
mov rdx, rdi
mov r8d, 0x80000000
call fcn.14004ca10
jmp 0x14004c100
xor esi, esi
xor r15d, r15d
nop dword [rax]
test r15b, r15b
je 0x14004c210
cmp rsi, 0x101
mov eax, 0x100
cmovae rax, rsi
mov rdx, rsi
nop dword [rax + rax]
cmp rdx, 0x100
jae 0x14004c242
mov rsi, rdx
movzx ecx, byte [r13 + rdx]
inc rdx
cmp bl, cl
je 0x14004c1f0
jmp 0x14004c223
cmp rsi, 0xff
ja 0x14004c23f
movzx ecx, byte [r13 + rsi]
lea rdx, [rsi + 1]
shl esi, 8
movzx eax, si
mov r15b, 1
mov rsi, rdx
mov ebx, ecx
mov ecx, eax
movzx r9d, cl
cmp r9d, 2
jne 0x14004c271
jmp 0x14004c290
mov rax, rsi
cmp rax, 0xffffffffffffffff
je 0x14004c290
movzx ecx, byte [r13 + 0xff]
shl ecx, 0x10
add ecx, 0x10001
mov eax, ecx
and eax, 0x1ff0000
mov rsi, 0xffffffffffffffff
movzx r9d, cl
cmp r9d, 2
je 0x14004c290
or r9d, eax
mov byte [rbp + 0x3f], 1
mov dword [rsp + 0x20], r12d
mov rcx, r13
mov rdx, rdi
mov r8d, r12d
call fcn.14004ca10
jmp 0x14004c1d0
xor esi, esi
xor r15d, r15d
nop word cs:[rax + rax]
test r15b, r15b
je 0x14004c2e0
cmp rsi, 0x101
mov eax, 0x100
cmovae rax, rsi
mov rdx, rsi
nop dword [rax + rax]
cmp rdx, 0x100
jae 0x14004c312
mov rsi, rdx
movzx ecx, byte [r13 + rdx]
inc rdx
cmp bl, cl
je 0x14004c2c0
jmp 0x14004c2f3
cmp rsi, 0xff
ja 0x14004c30f
movzx ecx, byte [r13 + rsi]
lea rdx, [rsi + 1]
shl esi, 8
movzx eax, si
mov r15b, 1
mov rsi, rdx
mov ebx, ecx
mov ecx, eax
movzx r9d, cl
cmp r9d, 2
jne 0x14004c341
jmp 0x14004c360
mov rax, rsi
cmp rax, 0xffffffffffffffff
je 0x14004c360
movzx ecx, byte [r13 + 0xff]
shl ecx, 0x10
add ecx, 0x10001
mov eax, ecx
and eax, 0x1ff0000
mov rsi, 0xffffffffffffffff
movzx r9d, cl
cmp r9d, 2
je 0x14004c360
or r9d, eax
mov byte [rbp + 0x3f], 1
mov dword [rsp + 0x20], r14d
mov rcx, r13
mov rdx, rdi
mov r8d, r14d
call fcn.14004ca10
jmp 0x14004c2a0
mov rdx, qword [rbp - 0x38]
mov r8, qword [rbp - 0x30]
mov byte [rbp + 0x3f], 0
mov rcx, rdi
mov r9d, r12d
call fcn.1400528b0
nop
add rsp, 0xc8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov r12d, 1
xor esi, esi
nop word cs:[rax + rax]
cmp rsi, 0xff
ja 0x14004c014
mov rcx, rsi
xor eax, eax
shld rax, r12, cl
mov rdx, rsi
shr rdx, 3
mov ebx, 1
shl rbx, cl
and rdx, 0xfffffffffffffff0
test cl, 0x40
cmovne rax, rbx
mov edi, 0
cmovne rbx, rdi
mov rdi, qword [rbp - 0x20]
and rax, qword [rdi + rdx + 8]
inc rsi
and rbx, qword [rdi + rdx]
mov rdi, qword [rbp - 0x58]
or rbx, rax
je 0x14004c3a0
shl ecx, 8
movzx r9d, cx
mov byte [rbp + 0x3c], 1
mov dword [rsp + 0x20], r15d
mov rcx, r13
mov rdx, rdi
mov r8d, r14d
call fcn.14004ca10
jmp 0x14004c3a0
mov byte [rbp + 0x3e], 1
lea r8, str.C:Users_test.cargo_registry_srcgithub.com_1ecc6299db9ec823_regex_automata_0.4.3_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.1401f2a90
jmp 0x14004c811
mov byte [rbp + 0x3d], 1
lea r8, str.C:Users_test.cargo_registry_srcgithub.com_1ecc6299db9ec823_regex_automata_0.4.3_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.1401f2a90
jmp 0x14004c811
mov byte [rbp + 0x3c], 1
lea r8, str.C:Users_test.cargo_registry_srcgithub.com_1ecc6299db9ec823_regex_automata_0.4.3_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.1401f2a90
jmp 0x14004c811
ud2
mov qword [rbp - 8], 0
mov byte [rbp + 0x3f], 1
lea rax, [0x1401fccb0]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x3c]
lea r8, [rbp + 0x28]
lea r9, [rbp - 0x18]
xor ecx, ecx
call fcn.1401e8260
jmp 0x14004c811
mov qword [rbp - 0x18], rax
mov byte [rbp + 0x3f], 1
lea rax, [0x1401fcec8]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
jmp 0x14004c811
mov qword [rbp - 8], 0
mov byte [rbp + 0x3f], 1
lea rax, [0x1401fccc8]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x40]
lea r8, [rbp + 0x28]
lea r9, [rbp - 0x18]
xor ecx, ecx
call fcn.1401e8260
jmp 0x14004c811
mov qword [rbp - 0x18], 0x8000000
mov byte [rbp + 0x3f], 1
lea rax, [0x1401fcee0]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
jmp 0x14004c811
mov qword [rbp - 8], 0
mov byte [rbp + 0x3f], 1
lea rax, [0x1401fcce0]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x44]
lea r8, [rbp + 0x28]
lea r9, [rbp - 0x18]
xor ecx, ecx
call fcn.1401e8260
jmp 0x14004c811
mov qword [rbp - 0x18], rax
mov byte [rbp + 0x3d], 1
lea rax, [0x1401fcec8]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
jmp 0x14004c811
mov eax, 1
shl rax, cl
mov qword [rbp - 0x18], rax
mov byte [rbp + 0x3c], 1
lea rax, [0x1401fcec8]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
jmp 0x14004c811
mov qword [rbp - 0x18], 0x8000000
mov byte [rbp + 0x3c], 1
lea rax, [0x1401fcee0]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
jmp 0x14004c811
lock dec qword [r15]
jne 0x14004c61d
mov byte [rbp + 0x3f], 1
lea rcx, [rbp + 0x28]
call fcn.140006300
mov byte [rbp + 0x3f], 1
lea rax, [0x1401fcc68]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
jmp 0x14004c811
mov qword [rbp - 0x18], rsi
mov byte [rbp + 0x3e], 1
lea rax, [0x1401fcbc0]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
jmp 0x14004c811
mov qword [rbp - 0x18], rax
mov byte [rbp + 0x3e], 1
lea rax, [0x1401fcec8]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
jmp 0x14004c811
lock dec qword [r14]
jne 0x14004c6cb
mov byte [rbp + 0x3f], 1
lea rcx, [rbp + 0x28]
call fcn.140006300
mov byte [rbp + 0x3f], 1
lea rax, [0x1401fcc80]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
jmp 0x14004c811
mov qword [rbp - 0x18], r12
mov byte [rbp + 0x3d], 1
lea rax, [0x1401fcbc0]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
jmp 0x14004c811
lock dec qword [r14]
jne 0x14004c744
mov byte [rbp + 0x3f], 1
lea rcx, [rbp + 0x28]
call fcn.140006300
mov byte [rbp + 0x3f], 1
lea rax, [0x1401fcc98]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
jmp 0x14004c811
mov qword [rbp - 0x18], r12
mov byte [rbp + 0x3c], 1
lea rax, [0x1401fcbc0]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
jmp 0x14004c811
mov qword [rbp - 0x18], 0x8000000
mov byte [rbp + 0x3d], 1
lea rax, [0x1401fcee0]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
jmp 0x14004c811
mov qword [rbp - 0x18], 0x8000000
mov byte [rbp + 0x3e], 1
lea rax, [0x1401fcee0]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401fcad0]
lea r9, fcn.140001020
lea r8, [rbp - 0x18]
mov edx, 0x2b
call fcn.1401f2d90
ud2