Function at 0x180159920
Capabilities:
Inspect section memory permissions

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xe8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x60], 0xfffffffffffffffe
mov qword [rbp + 0x38], rcx
mov rsi, qword [rcx]
movzx eax, byte [rsi + 0x81]
mov ebx, 0xc
cmp al, 2
je 0x180159978
test al, 1
je 0x180159978
mov rax, qword [rsi + 0x2b0]
mov rax, qword [rax + 0x168]
lea rax, [rax + rax*2]
lea rbx, [rax*2 + 0xc]
mov rax, qword [rbp + 0x38]
mov rdi, qword [rax + 8]
mov rax, qword [rdi + 0x30]
mov rdx, qword [rdi + 0x40]
sub rax, rdx
cmp rax, rbx
jb 0x1801599a8
test rbx, rbx
je 0x180159a34
mov rax, qword [rdi + 0x38]
cmp rbx, 8
jae 0x1801599d1
mov rcx, rbx
jmp 0x180159a19
lea rcx, [rdi + 0x30]
mov qword [rsp + 0x20], 4
mov r9d, 4
mov r8, rbx
call fcn.18021f4a0
mov rdx, qword [rdi + 0x40]
mov rax, qword [rdi + 0x38]
cmp rbx, 8
jb 0x1801599a3
mov r8, rbx
and r8, 0xfffffffffffffff8
mov ecx, ebx
and ecx, 7
lea r9, [rax + rdx*4]
add r9, 0x10
add rdx, r8
xor r10d, r10d
movaps xmm0, xmmword [0x18024d470]
nop word cs:[rax + rax]
movups xmmword [r9 + r10*4 - 0x10], xmm0
movups xmmword [r9 + r10*4], xmm0
add r10, 8
cmp r8, r10
jne 0x180159a00
cmp rbx, r8
je 0x180159a34
mov r8, rdx
nop dword [rax]
lea rdx, [r8 + 1]
mov dword [rax + r8*4], 0x80000000
mov r8, rdx
dec rcx
jne 0x180159a20
mov qword [rdi + 0x40], rdx
call fcn.18015ff00
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rdx
lock inc qword [rax]
jle 0x18015acca
mov rax, qword [rbp - 0x50]
mov r11, qword [rbp - 0x48]
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x50], r11
mov r15, qword [rdi + 0x28]
mov rdx, qword [rdi + 0x58]
mov rax, rdx
shl rax, 4
mov rcx, qword [rdi + 0x130]
lea r8, [rcx + rcx*4]
mov r9, qword [rdi + 0x40]
add r9, r15
add r9, qword [rdi + 0x70]
add r9, qword [rdi + 0x88]
add r9, qword [rdi + 0xa8]
add r9, qword [rdi + 0xc0]
movzx ecx, byte [rsi + 0x2b8]
mov r10d, 4
shl r10, cl
add r9, qword [rdi + 0xd0]
mov qword [rbp - 0x18], r11
add rax, r11
add rax, 0x24
lea rax, [rax + r8*4]
add rax, qword [rdi + 0xe8]
add rax, qword [rdi + 0x148]
lea rax, [rax + r9*4]
add rax, r10
cmp rax, qword [rsi + 0x2c0]
jbe 0x180159b55
cmp dword [rsi + 0x40], 1
jne 0x180159b44
mov rax, qword [rdi + 0x150]
cmp rax, qword [rsi + 0x48]
jb 0x180159b44
cmp dword [rsi + 0x50], 1
jne 0x18015abea
mov rax, qword [rsi + 0x58]
mov r8, qword [rdi + 0x158]
cmp dword [rdi], 1
jne 0x180159b28
mov rcx, qword [rdi + 0x10]
mov r9, qword [rdi + 8]
mov r10, rcx
sub r10, r9
neg r10
sub rcx, r9
cmovb rcx, r10
jmp 0x180159b2a
xor ecx, ecx
add rcx, r8
mul rdx
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x18015abea
mov byte [rbp + 0x5e], 1
mov rcx, qword [rbp + 0x38]
call fcn.180159040
mov r15, qword [rdi + 0x28]
cmp r15, 0x8000000
jb 0x180159be4
cmp dword [rsi + 0x40], 1
jne 0x180159bc6
mov rax, qword [rdi + 0x150]
cmp rax, qword [rsi + 0x48]
jb 0x180159bc6
cmp dword [rsi + 0x50], 1
jne 0x18015abe2
mov rax, qword [rsi + 0x58]
mov rdx, qword [rdi + 0x158]
cmp dword [rdi], 1
jne 0x180159ba9
mov rcx, qword [rdi + 0x10]
mov r8, qword [rdi + 8]
mov r9, rcx
sub r9, r8
neg r9
sub rcx, r8
cmovb rcx, r9
jmp 0x180159bab
xor ecx, ecx
add rcx, rdx
mul qword [rdi + 0x58]
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x18015abe2
mov byte [rbp + 0x5e], 1
mov rcx, qword [rbp + 0x38]
call fcn.180159040
mov r15, qword [rdi + 0x28]
cmp r15, 0x8000000
jae 0x18015aa94
cmp qword [rbp + 0x50], 0
je 0x18015a8a0
mov rax, qword [rbp + 0x48]
movzx r12d, byte [rax + 0x10]
lea rdx, [rdi + 0x18]
mov rbx, qword [rsi + 0x2b8]
and ebx, 0x3f
mov r14d, 1
mov ecx, ebx
shl r14, cl
mov rcx, qword [rdi + 0x18]
sub rcx, r15
mov rax, r15
cmp rcx, r14
mov qword [rbp - 0x40], rdx
jae 0x180159c49
mov byte [rbp + 0x5e], 1
mov qword [rsp + 0x20], 4
mov r9d, 4
mov rcx, rdx
mov rdx, r15
mov r8, r14
call fcn.18021f4a0
mov rax, qword [rdi + 0x28]
and r12d, 1
shl r12d, 0x1b
or r12d, r15d
mov dword [rbp + 0x44], r12d
mov rcx, qword [rdi + 0x20]
cmp ebx, 2
ja 0x180159c85
nop word cs:[rax + rax]
lea rdx, [rax + 1]
mov dword [rcx + rax*4], 0x80000000
mov rax, rdx
dec r14
jne 0x180159c70
jmp 0x180159cb5
and r14, 0xfffffffffffffff8
lea rcx, [rcx + rax*4]
add rcx, 0x10
add rax, r14
xor edx, edx
movaps xmm0, xmmword [0x18024d470]
nop dword [rax]
movups xmmword [rcx + rdx*4 - 0x10], xmm0
movups xmmword [rcx + rdx*4], xmm0
add rdx, 8
cmp r14, rdx
jne 0x180159ca0
mov rdx, rax
or dword [rbp + 0x44], 0x80000000
mov qword [rdi + 0x28], rdx
lea r14, [rsi + 0x290]
mov rax, qword [rsi + 0x298]
or rax, qword [rsi + 0x2a8]
mov rcx, qword [rsi + 0x290]
or rcx, qword [rsi + 0x2a0]
or rcx, rax
je 0x180159da3
mov eax, dword [rbp + 0x44]
neg eax
jo 0x180159da3
mov rcx, qword [rsi + 0x2b8]
and ecx, 0x3f
cmp rcx, 0x1b
jae 0x18015aac9
mov ebx, 2
shl rbx, cl
cmp rbx, 0x8000000
jae 0x18015ab06
or ebx, 0x20000000
xor r15d, r15d
mov r12d, 1
xor r13d, r13d
nop word cs:[rax + rax]
cmp r13, 0xff
ja 0x180159da3
mov r9, r13
xor eax, eax
mov ecx, r9d
shld rax, r12, cl
mov rdx, r13
shr rdx, 3
mov r8d, 1
shl r8, cl
and rdx, 0xfffffffffffffff0
test r9b, 0x40
cmovne rax, r8
cmovne r8, r15
and rax, qword [r14 + rdx + 8]
inc r13
and r8, qword [r14 + rdx]
or r8, rax
je 0x180159d40
shl r9d, 8
mov byte [rbp + 0x5e], 1
mov dword [rsp + 0x20], ebx
mov rcx, rsi
mov rdx, rdi
mov r8d, dword [rbp + 0x44]
call fcn.18015af00
jmp 0x180159d40
mov rax, qword [rbp + 0x50]
add qword [rdi + 0x148], rax
mov rax, qword [rbp + 0x48]
lock inc qword [rax]
jle 0x18015acca
lea rax, [rdi + 0x48]
mov qword [rbp - 0x10], rax
mov rax, qword [rbp + 0x48]
mov rbx, qword [rbp + 0x50]
mov qword [rbp + 0x28], rax
mov qword [rbp - 8], rax
mov qword [rbp], rbx
mov r15, qword [rdi + 0x58]
cmp r15, qword [rdi + 0x48]
jne 0x180159deb
mov rcx, qword [rbp - 0x10]
call fcn.180009810
mov rax, qword [rdi + 0x50]
mov rcx, r15
shl rcx, 4
mov rdx, qword [rbp + 0x28]
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], rbx
inc r15
mov qword [rdi + 0x58], r15
mov rdx, qword [rbp + 0x48]
mov r8, qword [rbp + 0x50]
lea rcx, [rdi + 0x118]
mov byte [rbp + 0x5e], 0
mov qword [rbp + 0x28], rcx
mov r9d, dword [rbp + 0x44]
call fcn.18014b500
mov eax, dword [rbp + 0x44]
mov dword [rbp - 0x1c], eax
mov rax, qword [rbp + 0x30]
lock inc qword [rax]
jle 0x18015acca
mov rcx, qword [rbp - 0x18]
lea r11, [rcx + 0x24]
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x50], rcx
mov r13, qword [rdi + 0x28]
mov rdx, qword [rdi + 0x58]
mov rax, rdx
shl rax, 4
mov rcx, qword [rdi + 0x130]
lea r8, [rcx + rcx*4]
mov r9, qword [rdi + 0x40]
add r9, r13
add r9, qword [rdi + 0x70]
add r9, qword [rdi + 0x88]
add r9, qword [rdi + 0xa8]
add r9, qword [rdi + 0xc0]
movzx ecx, byte [rsi + 0x2b8]
mov r10d, 4
shl r10, cl
add r9, qword [rdi + 0xd0]
mov qword [rbp - 0x58], r11
add rax, r11
lea rax, [rax + r8*4]
add rax, qword [rdi + 0xe8]
add rax, qword [rdi + 0x148]
lea rax, [rax + r9*4]
add rax, r10
cmp rax, qword [rsi + 0x2c0]
jbe 0x180159f3c
cmp dword [rsi + 0x40], 1
jne 0x180159f2b
mov rax, qword [rdi + 0x150]
cmp rax, qword [rsi + 0x48]
jb 0x180159f2b
cmp dword [rsi + 0x50], 1
jne 0x18015ac3a
mov rax, qword [rsi + 0x58]
mov r8, qword [rdi + 0x158]
cmp dword [rdi], 1
jne 0x180159f0f
mov rcx, qword [rdi + 0x10]
mov r9, qword [rdi + 8]
mov r10, rcx
sub r10, r9
neg r10
sub rcx, r9
cmovb rcx, r10
jmp 0x180159f11
xor ecx, ecx
add rcx, r8
mul rdx
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x18015ac3a
mov byte [rbp + 0x5d], 1
mov rcx, qword [rbp + 0x38]
call fcn.180159040
mov r13, qword [rdi + 0x28]
cmp r13, 0x8000000
jb 0x180159fcb
cmp dword [rsi + 0x40], 1
jne 0x180159fad
mov rax, qword [rdi + 0x150]
cmp rax, qword [rsi + 0x48]
jb 0x180159fad
cmp dword [rsi + 0x50], 1
jne 0x18015ac32
mov rax, qword [rsi + 0x58]
mov rdx, qword [rdi + 0x158]
cmp dword [rdi], 1
jne 0x180159f90
mov rcx, qword [rdi + 0x10]
mov r8, qword [rdi + 8]
mov r9, rcx
sub r9, r8
neg r9
sub rcx, r8
cmovb rcx, r9
jmp 0x180159f92
xor ecx, ecx
add rcx, rdx
mul qword [rdi + 0x58]
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x18015ac32
mov byte [rbp + 0x5d], 1
mov rcx, qword [rbp + 0x38]
call fcn.180159040
mov r13, qword [rdi + 0x28]
cmp r13, 0x8000000
jae 0x18015ab3f
cmp qword [rbp + 0x50], 0
je 0x18015a8b9
mov rax, qword [rbp + 0x48]
movzx r15d, byte [rax + 0x10]
mov r12, qword [rsi + 0x2b8]
and r12d, 0x3f
mov ebx, 1
mov ecx, r12d
shl rbx, cl
mov rcx, qword [rbp - 0x40]
mov rdx, qword [rcx]
sub rdx, r13
mov rax, r13
cmp rdx, rbx
jae 0x18015a029
mov byte [rbp + 0x5d], 1
mov qword [rsp + 0x20], 4
mov r9d, 4
mov rdx, r13
mov r8, rbx
call fcn.18021f4a0
mov rax, qword [rdi + 0x28]
and r15d, 1
shl r15d, 0x1b
or r15d, r13d
mov rcx, qword [rdi + 0x20]
cmp r12d, 2
ja 0x18015a055
nop
lea rdx, [rax + 1]
mov dword [rcx + rax*4], 0x80000000
mov rax, rdx
dec rbx
jne 0x18015a040
jmp 0x18015a085
and rbx, 0xfffffffffffffff8
lea rcx, [rcx + rax*4]
add rcx, 0x10
add rax, rbx
xor edx, edx
movaps xmm0, xmmword [0x18024d470]
nop dword [rax]
movups xmmword [rcx + rdx*4 - 0x10], xmm0
movups xmmword [rcx + rdx*4], xmm0
add rdx, 8
cmp rbx, rdx
jne 0x18015a070
mov rdx, rax
or r15d, 0x40000000
mov qword [rdi + 0x28], rdx
mov rax, qword [r14 + 8]
or rax, qword [r14 + 0x18]
mov rcx, qword [r14]
or rcx, qword [r14 + 0x10]
or rcx, rax
je 0x18015a0ce
mov rcx, qword [rsi + 0x2b8]
and ecx, 0x3f
mov eax, 1
shl rax, cl
cmp rcx, 0x1b
jae 0x18015a9e9
or eax, 0x40000000
cmp eax, r15d
jne 0x18015a234
mov rax, qword [rbp + 0x50]
add qword [rdi + 0x148], rax
mov rax, qword [rbp + 0x48]
lock inc qword [rax]
jle 0x18015acca
mov rax, qword [rbp + 0x48]
mov rbx, qword [rbp + 0x50]
mov qword [rbp - 0x38], rax
mov qword [rbp - 8], rax
mov qword [rbp], rbx
mov r12, qword [rdi + 0x58]
cmp r12, qword [rdi + 0x48]
jne 0x18015a10e
mov rcx, qword [rbp - 0x10]
call fcn.180009810
mov rax, qword [rdi + 0x50]
mov rcx, r12
shl rcx, 4
mov rdx, qword [rbp - 0x38]
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], rbx
inc r12
mov qword [rdi + 0x58], r12
mov rdx, qword [rbp + 0x48]
mov r8, qword [rbp + 0x50]
mov byte [rbp + 0x5d], 0
mov rcx, qword [rbp + 0x28]
mov r9d, r15d
call fcn.18014b500
mov dword [rbp - 0x20], r15d
mov rax, qword [rbp + 0x30]
lock inc qword [rax]
jle 0x18015acca
mov qword [rbp + 0x48], rax
mov rax, qword [rbp - 0x18]
mov qword [rbp + 0x50], rax
mov rdx, qword [rdi + 0x28]
mov r11, qword [rdi + 0x58]
mov rax, r11
shl rax, 4
mov rcx, qword [rdi + 0x130]
lea r8, [rcx + rcx*4]
mov r9, qword [rdi + 0x40]
add r9, rdx
add r9, qword [rdi + 0x70]
add r9, qword [rdi + 0x88]
add r9, qword [rdi + 0xa8]
add r9, qword [rdi + 0xc0]
movzx ecx, byte [rsi + 0x2b8]
mov r10d, 4
shl r10, cl
add r9, qword [rdi + 0xd0]
add rax, qword [rbp - 0x58]
lea rax, [rax + r8*4]
add rax, qword [rdi + 0xe8]
add rax, qword [rdi + 0x148]
lea rax, [rax + r9*4]
add rax, r10
cmp rax, qword [rsi + 0x2c0]
jbe 0x18015a2f8
cmp dword [rsi + 0x40], 1
jne 0x18015a2e7
mov rax, qword [rdi + 0x150]
cmp rax, qword [rsi + 0x48]
jb 0x18015a2e7
cmp dword [rsi + 0x50], 1
jne 0x18015ac87
mov rax, qword [rsi + 0x58]
mov r8, qword [rdi + 0x158]
cmp dword [rdi], 1
jne 0x18015a2cb
mov rcx, qword [rdi + 0x10]
mov r9, qword [rdi + 8]
mov r10, rcx
sub r10, r9
neg r10
sub rcx, r9
cmovb rcx, r10
jmp 0x18015a2cd
mov ebx, 2
shl rbx, cl
cmp rbx, 0x8000000
jae 0x18015aba9
or ebx, 0x20000000
mov r13d, 1
xor r12d, r12d
nop dword [rax + rax]
cmp r12, 0xff
ja 0x18015a0ce
mov r9, r12
xor eax, eax
mov ecx, r9d
shld rax, r13, cl
mov rdx, r12
shr rdx, 3
mov r8d, 1
shl r8, cl
and rdx, 0xfffffffffffffff0
test r9b, 0x40
cmovne rax, r8
mov ecx, 0
cmovne r8, rcx
and rax, qword [r14 + rdx + 8]
inc r12
and r8, qword [r14 + rdx]
or r8, rax
je 0x18015a260
shl r9d, 8
mov byte [rbp + 0x5d], 1
mov dword [rsp + 0x20], ebx
mov rcx, rsi
mov rdx, rdi
mov r8d, r15d
call fcn.18015af00
jmp 0x18015a260
xor ecx, ecx
add rcx, r8
mul r11
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x18015ac87
mov byte [rbp + 0x5c], 1
mov rcx, qword [rbp + 0x38]
call fcn.180159040
mov rdx, qword [rdi + 0x28]
cmp rdx, 0x8000000
jb 0x18015a387
cmp dword [rsi + 0x40], 1
jne 0x18015a369
mov rax, qword [rdi + 0x150]
cmp rax, qword [rsi + 0x48]
jb 0x18015a369
cmp dword [rsi + 0x50], 1
jne 0x18015ac7f
mov rax, qword [rsi + 0x58]
mov rdx, qword [rdi + 0x158]
cmp dword [rdi], 1
jne 0x18015a34c
mov rcx, qword [rdi + 0x10]
mov r8, qword [rdi + 8]
mov r9, rcx
sub r9, r8
neg r9
sub rcx, r8
cmovb rcx, r9
jmp 0x18015a34e
xor ecx, ecx
add rcx, rdx
mul qword [rdi + 0x58]
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x18015ac7f
mov byte [rbp + 0x5c], 1
mov rcx, qword [rbp + 0x38]
call fcn.180159040
mov rdx, qword [rdi + 0x28]
cmp rdx, 0x8000000
jae 0x18015ab74
cmp qword [rbp + 0x50], 0
je 0x18015a8d2
mov rax, qword [rbp + 0x48]
movzx r12d, byte [rax + 0x10]
mov r13, qword [rsi + 0x2b8]
and r13d, 0x3f
mov ebx, 1
mov ecx, r13d
shl rbx, cl
mov rcx, qword [rbp - 0x40]
mov r8, qword [rcx]
sub r8, rdx
mov rax, rdx
cmp r8, rbx
jae 0x18015a3ea
mov byte [rbp + 0x5c], 1
mov qword [rsp + 0x20], 4
mov r9d, 4
mov qword [rbp + 0x38], rdx
mov r8, rbx
call fcn.18021f4a0
mov rax, qword [rdi + 0x28]
mov rdx, qword [rbp + 0x38]
and r12d, 1
shl r12d, 0x1b
or r12d, edx
mov rcx, qword [rdi + 0x20]
cmp r13d, 2
ja 0x18015a415
nop
lea rdx, [rax + 1]
mov dword [rcx + rax*4], 0x80000000
mov rax, rdx
dec rbx
jne 0x18015a400
jmp 0x18015a445
and rbx, 0xfffffffffffffff8
lea rcx, [rcx + rax*4]
add rcx, 0x10
add rax, rbx
xor edx, edx
movaps xmm0, xmmword [0x18024d470]
nop dword [rax]
movups xmmword [rcx + rdx*4 - 0x10], xmm0
movups xmmword [rcx + rdx*4], xmm0
add rdx, 8
cmp rbx, rdx
jne 0x18015a430
mov rdx, rax
or r12d, 0x20000000
mov qword [rdi + 0x28], rdx
mov rax, qword [r14 + 8]
or rax, qword [r14 + 0x18]
mov rcx, qword [r14]
or rcx, qword [r14 + 0x10]
or rcx, rax
je 0x18015a49c
mov rcx, qword [rsi + 0x2b8]
and ecx, 0x3f
cmp rcx, 0x1b
jae 0x18015aa1e
mov ebx, 2
shl rbx, cl
cmp rbx, 0x8000000
jae 0x18015aa5b
or ebx, 0x20000000
cmp ebx, r12d
jne 0x18015a81e
mov rax, qword [rbp + 0x50]
add qword [rdi + 0x148], rax
mov rax, qword [rbp + 0x48]
lock inc qword [rax]
jle 0x18015acca
mov rax, qword [rbp + 0x48]
mov rbx, qword [rbp + 0x50]
mov qword [rbp + 0x38], rax
mov qword [rbp - 8], rax
mov qword [rbp], rbx
mov r14, qword [rdi + 0x58]
cmp r14, qword [rdi + 0x48]
jne 0x18015a4dc
mov rcx, qword [rbp - 0x10]
call fcn.180009810
mov rax, qword [rdi + 0x50]
mov rcx, r14
shl rcx, 4
mov rdx, qword [rbp + 0x38]
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], rbx
inc r14
mov qword [rdi + 0x58], r14
mov rdx, qword [rbp + 0x48]
mov r8, qword [rbp + 0x50]
mov byte [rbp + 0x5c], 0
mov rcx, qword [rbp + 0x28]
mov r9d, r12d
call fcn.18014b500
neg dword [rbp + 0x44]
mov dword [rbp - 0x24], r12d
mov dword [rbp - 0x28], 0x80000000
jno 0x18015a8eb
mov rcx, qword [rsi + 0x2b8]
and ecx, 0x3f
mov eax, 1
shl rax, cl
cmp rcx, 0x1b
jae 0x18015a91b
or eax, 0x40000000
mov dword [rbp - 0x2c], eax
cmp r15d, eax
jne 0x18015a950
mov eax, 2
shl rax, cl
cmp rax, 0x8000000
jae 0x18015a980
or eax, 0x20000000
mov dword [rbp - 0x30], eax
cmp r12d, eax
jne 0x18015a9b9
xor ebx, ebx
xor r13d, r13d
jmp 0x18015a5be
movzx edx, byte [rsi + r13 + 0x190]
lea rax, [r13 + 1]
mov r9d, r13d
xor ecx, ecx
mov bl, 1
mov r14d, edx
mov r13, rax
shl r9d, 8
or r9d, ecx
mov byte [rbp + 0x5f], 1
mov dword [rsp + 0x20], 0x80000000
mov rcx, rsi
mov rdx, rdi
mov r8d, 0x80000000
call fcn.18015af00
test bl, 1
je 0x18015a600
cmp r13, 0x101
mov ecx, 0x100
cmovae rcx, r13
mov rax, r13
nop word cs:[rax + rax]
cmp rax, 0x100
jae 0x18015a620
mov r13, rax
movzx edx, byte [rsi + rax + 0x190]
inc rax
cmp r14b, dl
je 0x18015a5e0
jmp 0x18015a58d
cmp r13, 0xff
jbe 0x18015a580
cmp r13, 0xffffffffffffffff
jne 0x18015a629
jmp 0x18015a651
mov r13, rcx
cmp r13, 0xffffffffffffffff
je 0x18015a651
movzx r9d, byte [rsi + 0x28f]
shl r9d, 0x10
add r9d, 0x10001
shr r9d, 8
mov ecx, 1
mov r13, 0xffffffffffffffff
jmp 0x18015a59a
xor r14d, r14d
xor ebx, ebx
jmp 0x18015a698
movzx eax, byte [rsi + r14 + 0x190]
lea rdx, [r14 + 1]
mov r9d, r14d
xor ecx, ecx
mov bl, 1
mov r14, rdx
mov r13d, eax
shl r9d, 8
or r9d, ecx
mov byte [rbp + 0x5f], 1
mov dword [rsp + 0x20], r15d
mov rcx, rsi
mov rdx, rdi
mov r8d, r15d
call fcn.18015af00
test bl, 1
je 0x18015a6d0
cmp r14, 0x101
mov ecx, 0x100
cmovae rcx, r14
mov rdx, r14
cmp rdx, 0x100
jae 0x18015a6f0
mov r14, rdx
movzx eax, byte [rsi + rdx + 0x190]
inc rdx
cmp r13b, al
je 0x18015a6b0
jmp 0x18015a66d
cmp r14, 0xff
jbe 0x18015a660
cmp r14, 0xffffffffffffffff
jne 0x18015a6f9
jmp 0x18015a721
mov r14, rcx
cmp r14, 0xffffffffffffffff
je 0x18015a721
movzx r9d, byte [rsi + 0x28f]
shl r9d, 0x10
add r9d, 0x10001
shr r9d, 8
mov ecx, 1
mov r14, 0xffffffffffffffff
jmp 0x18015a67a
xor r14d, r14d
xor ebx, ebx
jmp 0x18015a768
movzx eax, byte [rsi + r14 + 0x190]
lea rdx, [r14 + 1]
mov r9d, r14d
xor ecx, ecx
mov bl, 1
mov r14, rdx
mov r13d, eax
shl r9d, 8
or r9d, ecx
mov byte [rbp + 0x5f], 1
mov dword [rsp + 0x20], r12d
mov rcx, rsi
mov rdx, rdi
mov r8d, r12d
call fcn.18015af00
test bl, 1
je 0x18015a7a0
cmp r14, 0x101
mov ecx, 0x100
cmovae rcx, r14
mov rdx, r14
cmp rdx, 0x100
jae 0x18015a7c0
mov r14, rdx
movzx eax, byte [rsi + rdx + 0x190]
inc rdx
cmp r13b, al
je 0x18015a780
jmp 0x18015a73d
cmp r14, 0xff
jbe 0x18015a730
cmp r14, 0xffffffffffffffff
jne 0x18015a7c9
jmp 0x18015a7f1
mov r14, rcx
cmp r14, 0xffffffffffffffff
je 0x18015a7f1
movzx r9d, byte [rsi + 0x28f]
shl r9d, 0x10
add r9d, 0x10001
shr r9d, 8
mov ecx, 1
mov r14, 0xffffffffffffffff
jmp 0x18015a74a
mov byte [rbp + 0x5f], 0
mov rcx, qword [rbp + 0x28]
mov rdx, qword [rbp + 0x30]
mov r8, qword [rbp - 0x18]
mov r9d, r15d
call fcn.18014b500
nop
add rsp, 0xe8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
xor r13d, r13d
nop word cs:[rax + rax]
cmp r13, 0xff
ja 0x18015a49c
mov r9, r13
xor eax, eax
mov ecx, r9d
mov edx, 1
shld rax, rdx, cl
mov rdx, r13
shr rdx, 3
mov r8d, 1
shl r8, cl
and rdx, 0xfffffffffffffff0
test r9b, 0x40
cmovne rax, r8
mov ecx, 0
cmovne r8, rcx
and rax, qword [r14 + rdx + 8]
inc r13
and r8, qword [r14 + rdx]
or r8, rax
je 0x18015a830
shl r9d, 8
mov byte [rbp + 0x5c], 1
mov dword [rsp + 0x20], ebx
mov rcx, rsi
mov rdx, rdi
mov r8d, r12d
call fcn.18015af00
jmp 0x18015a830
mov byte [rbp + 0x5e], 1
lea r8, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.180228000
jmp 0x18015acca
mov byte [rbp + 0x5d], 1
lea r8, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.180228000
jmp 0x18015acca
mov byte [rbp + 0x5c], 1
lea r8, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.180228000
jmp 0x18015acca
mov qword [rbp - 8], 0
mov byte [rbp + 0x5f], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x1c]
lea r8, [rbp - 0x28]
lea r9, [rbp - 8]
xor ecx, ecx
call fcn.180224640
jmp 0x18015acca
mov qword [rbp - 8], rax
mov byte [rbp + 0x5f], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d4a0]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
jmp 0x18015acca
mov qword [rbp - 8], 0
mov byte [rbp + 0x5f], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x20]
lea r8, [rbp - 0x2c]
lea r9, [rbp - 8]
xor ecx, ecx
call fcn.180224640
jmp 0x18015acca
mov qword [rbp - 8], 0x8000000
mov byte [rbp + 0x5f], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d4a0]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
jmp 0x18015acca
mov qword [rbp - 8], 0
mov byte [rbp + 0x5f], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x24]
lea r8, [rbp - 0x30]
lea r9, [rbp - 8]
xor ecx, ecx
call fcn.180224640
jmp 0x18015acca
mov qword [rbp - 8], rax
mov byte [rbp + 0x5d], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d4a0]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
jmp 0x18015acca
mov eax, 1
shl rax, cl
mov qword [rbp - 8], rax
mov byte [rbp + 0x5c], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d4a0]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
jmp 0x18015acca
mov qword [rbp - 8], 0x8000000
mov byte [rbp + 0x5c], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d4a0]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
jmp 0x18015acca
mov qword [rbp - 8], r15
mov byte [rbp + 0x5e], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d4a0]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
jmp 0x18015acca
mov eax, 1
shl rax, cl
mov qword [rbp - 8], rax
mov byte [rbp + 0x5e], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d4a0]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
jmp 0x18015acca
mov qword [rbp - 8], 0x8000000
mov byte [rbp + 0x5e], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d4a0]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
jmp 0x18015acca
mov qword [rbp - 8], r13
mov byte [rbp + 0x5d], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d4a0]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
jmp 0x18015acca
mov qword [rbp - 8], rdx
mov byte [rbp + 0x5c], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d4a0]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
jmp 0x18015acca
mov qword [rbp - 8], 0x8000000
mov byte [rbp + 0x5d], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d4a0]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
jmp 0x18015acca
mov rax, qword [rbp + 0x48]
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x30]
lock dec qword [rax]
jne 0x18015ac01
mov byte [rbp + 0x5f], 1
lea rcx, [rbp + 0x48]
call fcn.180044770
mov byte [rbp + 0x5f], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d480]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
jmp 0x18015acca
mov rax, qword [rbp + 0x48]
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x30]
lock dec qword [rax]
jne 0x18015ac51
mov byte [rbp + 0x5f], 1
lea rcx, [rbp + 0x48]
call fcn.180044770
mov byte [rbp + 0x5f], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d480]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
jmp 0x18015acca
mov rax, qword [rbp + 0x48]
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x30]
lock dec qword [rax]
jne 0x18015ac9e
mov byte [rbp + 0x5f], 1
lea rcx, [rbp + 0x48]
call fcn.180044770
mov byte [rbp + 0x5f], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs_
mov qword [rsp + 0x20], rax
lea rcx, [0x18024d4c0]
lea r9, [0x18024d480]
lea r8, [rbp - 8]
mov edx, 0x2b
call fcn.1802282a0
ud2