Function at 0x1401b7800
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x158
mov r11, rcx
mov rbp, qword [r9 + 0x18]
mov rbx, qword [r9 + 0x20]
cmp rbp, rbx
jbe 0x1401b782f
mov qword [r11], 0
jmp 0x1401ba0c5
mov rdi, r8
mov r14, rdx
mov r13d, dword [r9]
lea eax, [r13 - 1]
cmp eax, 2
jb 0x1401b785f
lea rax, [r14 + 0x60]
cmp byte [r14 + 0x78], 3
lea rsi, [0x14038d698]
cmovne rsi, rax
cmp byte [rsi + 0x18], 2
jne 0x1401b7a39
cmp byte [r9 + 0x28], 0
je 0x1401b7927
mov rax, qword [r14 + 0x2b0]
mov qword [rsp + 0x38], rax
test rbp, rbp
je 0x1401b79e7
lea rax, [rbp - 1]
cmp rax, qword [r9 + 0x10]
jae 0x1401b79e7
mov rcx, qword [r9 + 8]
movzx eax, byte [rcx + rax]
movzx esi, al
mov r15d, dword [r9 + 4]
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xe0], rdi
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1401b7dde
lea rax, [r14 + 0x290]
mov edx, esi
shr edx, 3
and edx, 0xfffffff0
mov r8d, 1
xor r10d, r10d
mov ecx, esi
shld r10, r8, cl
shl r8, cl
xor ecx, ecx
test sil, 0x40
cmovne r10, r8
cmovne r8, rcx
and r10, qword [rax + rdx + 8]
and r8, qword [rax + rdx]
or r8, r10
je 0x1401b7dde
mov r15d, 4
cmp r15d, 5
je 0x1401b7e71
jmp 0x1401b8b4a
mov rax, qword [r14 + 0x2b0]
mov qword [rsp + 0x98], rax
test rbp, rbp
je 0x1401b7a10
lea rax, [rbp - 1]
cmp rax, qword [r9 + 0x10]
jae 0x1401b7a10
mov rcx, qword [r9 + 8]
movzx eax, byte [rcx + rax]
movzx esi, al
mov r15d, dword [r9 + 4]
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xe0], rdi
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1401b81a5
lea rax, [r14 + 0x290]
mov edx, esi
shr edx, 3
and edx, 0xfffffff0
mov r8d, 1
xor r10d, r10d
mov ecx, esi
shld r10, r8, cl
shl r8, cl
xor ecx, ecx
test sil, 0x40
cmovne r10, r8
cmovne r8, rcx
and r10, qword [rax + rdx + 8]
and r8, qword [rax + rdx]
or r8, r10
je 0x1401b81a5
mov r15d, 4
cmp r15d, 5
je 0x1401b824a
jmp 0x1401b8b4a
mov r15d, dword [r9 + 4]
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xe0], rdi
mov r12b, 2
movzx ecx, r12b
test r13d, r13d
jne 0x1401b7df0
jmp 0x1401b7e2d
mov r15d, dword [r9 + 4]
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xe0], rdi
mov sil, 2
movzx ecx, sil
test r13d, r13d
jne 0x1401b81b7
jmp 0x1401b81c1
movzx eax, byte [r9 + 0x28]
mov byte [rsp + 0x98], al
test al, al
je 0x1401b7b0f
mov rax, qword [r14 + 0x2b0]
mov qword [rsp + 0xa0], rax
mov eax, dword [rax + 0x17c]
mov dword [rsp + 0xa8], eax
test rbp, rbp
je 0x1401b7c08
lea rax, [rbp - 1]
cmp rax, qword [r9 + 0x10]
jae 0x1401b7c08
mov r15, r13
mov rcx, qword [r9 + 8]
movzx eax, byte [rcx + rax]
movzx r13d, al
mov eax, dword [r9 + 4]
mov dword [rsp + 0x8c], eax
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1401b7afe
lea rax, [r14 + 0x290]
mov edx, r13d
shr edx, 3
and edx, 0xfffffff0
mov r8d, 1
xor r10d, r10d
mov ecx, r13d
shld r10, r8, cl
shl r8, cl
xor ecx, ecx
test r13b, 0x40
cmovne r10, r8
cmovne r8, rcx
and r10, qword [rax + rdx + 8]
and r8, qword [rax + rdx]
or r8, r10
jne 0x1401b7bc4
movzx eax, byte [r14 + r13 + 0x90]
mov r13, r15
jmp 0x1401b7c15
mov rax, qword [r14 + 0x2b0]
mov qword [rsp + 0xa0], rax
mov eax, dword [rax + 0x17c]
mov dword [rsp + 0xa8], eax
test rbp, rbp
je 0x1401b7dcc
lea rax, [rbp - 1]
cmp rax, qword [r9 + 0x10]
jae 0x1401b7dcc
mov r15, r13
mov rcx, qword [r9 + 8]
movzx eax, byte [rcx + rax]
movzx r13d, al
mov eax, dword [r9 + 4]
mov dword [rsp + 0x8c], eax
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1401b87ac
lea rax, [r14 + 0x290]
mov edx, r13d
shr edx, 3
and edx, 0xfffffff0
mov r8d, 1
xor r10d, r10d
mov ecx, r13d
shld r10, r8, cl
shl r8, cl
xor ecx, ecx
test r13b, 0x40
cmovne r10, r8
cmovne r8, rcx
and r10, qword [rax + rdx + 8]
and r8, qword [rax + rdx]
or r8, r10
je 0x1401b87ac
mov eax, 4
lea edx, [rax - 3]
cmp edx, 2
mov ecx, 2
cmovb ecx, edx
cmp ecx, 2
je 0x1401b8c0b
cmp ecx, 1
jne 0x1401b8c1a
test rbp, rbp
je 0x1401ba3e3
mov rsi, r11
dec rbp
mov ecx, r13d
mov rdx, rbp
call fcn.1401a8280
jmp 0x1401b8c25
mov eax, dword [r9 + 4]
mov dword [rsp + 0x8c], eax
mov al, 2
mov qword [rsp + 0x80], r13
movzx ecx, al
mov rdx, qword [rdi + 0x40]
cmp rdx, rcx
jbe 0x1401ba351
mov rdx, qword [rdi + 0x38]
movsxd r13, dword [rdx + rcx*4]
test r13, r13
js 0x1401b8cad
mov qword [rsp + 0x40], r11
mov r15, qword [r9 + 8]
mov r9, qword [r9 + 0x10]
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
mov rdx, qword [rcx + 0x10]
mov r10, qword [rcx + 0x40]
dec rdx
and rdx, 0xfffffffffffffff0
add rdx, rax
add rdx, 0x10
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbp
lea rcx, [rsp + 0xd8]
mov qword [rsp + 0xc8], rdx
mov r8, r15
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x110], r10
call r10
test byte [rsp + 0xd8], 1
je 0x1401b896e
mov rsi, qword [rsp + 0xe0]
cmp dword [rsp + 0xa8], 0
mov r9, qword [rsp + 0x38]
je 0x1401b8de6
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x68], rbp
mov qword [rsp + 0x70], rbx
mov rax, qword [rsp + 0x80]
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x8c]
mov dword [rsp + 0x54], eax
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x78], al
lea rcx, [rsp + 0x50]
mov rdx, rsi
mov r8, rbx
call fcn.1401bee50
mov r10, qword [rsp + 0x68]
test r10, r10
je 0x1401b897a
lea rax, [r10 - 1]
cmp rax, qword [rsp + 0x60]
jae 0x1401b897a
mov rcx, qword [rsp + 0x58]
movzx eax, byte [rcx + rax]
movzx r13d, al
mov r12d, dword [rsp + 0x50]
mov r8d, dword [rsp + 0x54]
mov qword [rsp + 0xb8], r14
mov qword [rsp + 0xc0], rdi
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1401b8d3d
lea rax, [r14 + 0x290]
mov edx, r13d
shr edx, 3
and edx, 0xfffffff0
mov r11d, 1
xor r9d, r9d
mov ecx, r13d
shld r9, r11, cl
shl r11, cl
xor ecx, ecx
test r13b, 0x40
cmovne r9, r11
cmovne r11, rcx
and r9, qword [rax + rdx + 8]
and r11, qword [rax + rdx]
or r11, r9
je 0x1401b8d3d
mov eax, 4
mov r9, qword [rsp + 0x38]
mov edx, eax
cmp rdx, 5
je 0x1401b8de6
jmp 0x1401ba0a5
mov eax, dword [r9 + 4]
mov dword [rsp + 0x8c], eax
mov al, 2
jmp 0x1401b87b8
movzx r12d, byte [r14 + rsi + 0x90]
movzx ecx, r12b
test r13d, r13d
je 0x1401b7e2d
cmp r13d, 2
jne 0x1401b7e29
movzx eax, byte [r14 + 0x81]
mov esi, r15d
cmp al, 2
je 0x1401b7e5c
test al, 1
je 0x1401b7e5c
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x168], rsi
jbe 0x1401b8a6c
lea rax, [rsi + rsi*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
jmp 0x1401b7e2d
add rcx, 6
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1401ba351
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1401b8a9d
mov esi, eax
mov r15d, 5
cmp r15d, 5
je 0x1401b7e71
jmp 0x1401b8b4a
mov r15, rsi
shl r15, 0x20
or r15, 2
cmp r15d, 5
jne 0x1401b8b4a
cmp qword [rdi], 1
jne 0x1401b7e96
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 8]
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rdi + 0x158], rax
mov qword [rdi], 1
mov qword [rdi + 8], rbp
mov qword [rdi + 0x10], rbp
cmp rbp, rbx
jae 0x1401b8104
mov r12, qword [r9 + 8]
mov r15, qword [r9 + 0x10]
jmp 0x1401b7ecc
inc rbp
cmp rbp, rbx
jae 0x1401b8108
cmp esi, 0x7ffffff
jbe 0x1401b7f50
test byte [rdi], 1
je 0x1401ba310
mov qword [rdi + 0x10], rbp
cmp rbp, r15
jae 0x1401ba33f
movzx r8d, byte [r12 + rbp]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, esi
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x28]
cmp rcx, rdx
jae 0x1401ba304
mov rax, qword [rdi + 0x20]
mov r10d, dword [rax + rcx*4]
test r10d, r10d
js 0x1401b80b7
mov r13, rbp
mov eax, r10d
cmp r10d, 0x8000000
setae cl
test eax, 0x10000000
sete dl
test cl, dl
jne 0x1401b86ce
mov rbp, r13
mov esi, r10d
jmp 0x1401b7ec0
cmp rbp, rbx
jae 0x1401b7ec0
mov rax, qword [rdi + 0x20]
mov rdx, qword [rdi + 0x28]
nop word cs:[rax + rax]
movzx ecx, byte [r12 + rbp]
movzx ecx, byte [r14 + rcx + 0x190]
mov r8d, esi
add r8, rcx
mov ecx, dword [rax + r8*4]
lea r13, [rbp + 3]
cmp r13, rbx
jae 0x1401b8028
cmp ecx, 0x8000000
jae 0x1401b8028
movzx r8d, byte [r12 + rbp + 1]
movzx r8d, byte [r14 + r8 + 0x190]
add r8, rcx
mov esi, dword [rax + r8*4]
cmp rsi, 0x7ffffff
ja 0x1401b800e
movzx ecx, byte [r12 + rbp + 2]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, rsi
mov ecx, dword [rax + rcx*4]
cmp rcx, 0x7ffffff
ja 0x1401b8024
movzx r8d, byte [r12 + rbp + 3]
movzx r8d, byte [r14 + r8 + 0x190]
add r8, rcx
mov esi, dword [rax + r8*4]
cmp esi, 0x7ffffff
ja 0x1401b8039
add rbp, 4
cmp rbp, rbx
jb 0x1401b7f70
jmp 0x1401b7ec0
inc rbp
mov r10d, esi
mov esi, ecx
mov r13, rbp
test r10d, r10d
jns 0x1401b7f24
jmp 0x1401b8047
add rbp, 2
mov r10d, ecx
mov r13, rbp
test r10d, r10d
jns 0x1401b7f24
jmp 0x1401b8047
mov r10d, esi
mov esi, ecx
test r10d, r10d
jns 0x1401b7f24
test byte [rdi], 1
je 0x1401ba310
mov qword [rdi + 0x10], r13
movzx r8d, byte [r12 + r13]
movzx r10d, byte [r14 + r8 + 0x190]
mov ecx, esi
add rcx, r10
cmp rcx, rdx
jae 0x1401ba304
mov r10d, dword [rax + rcx*4]
test r10d, r10d
jns 0x1401b7f24
mov qword [rsp + 0x40], r11
mov rbp, r9
shl r8d, 8
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, esi
call fcn.1402f3710
test eax, eax
jne 0x1401ba235
mov r10d, edx
mov r9, rbp
mov r11, qword [rsp + 0x40]
jmp 0x1401b7f24
mov qword [rsp + 0x80], r15
mov qword [rsp + 0x40], r11
mov r15, r9
shl r8d, 8
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, esi
call fcn.1402f3710
test eax, eax
jne 0x1401b9ccd
mov r10d, edx
mov r13, rbp
mov r9, r15
mov r11, qword [rsp + 0x40]
mov r15, qword [rsp + 0x80]
jmp 0x1401b7f24
mov r15, qword [r9 + 0x10]
cmp rbx, r15
jae 0x1401b815f
mov rax, qword [r9 + 8]
movzx r15d, byte [rax + rbx]
movzx eax, byte [r14 + r15 + 0x190]
mov ecx, esi
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x28]
cmp rcx, rdx
jae 0x1401ba304
mov rax, qword [rdi + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x1401b9c3f
mov eax, edx
test eax, 0x8000000
jne 0x1401b9f52
test eax, 0x20000000
je 0x1401b819e
jmp 0x1401b864a
movzx r8d, byte [r14 + 0x28f]
mov eax, esi
and eax, 0x7ffffff
lea ecx, [r8 + rax]
inc ecx
mov rdx, qword [rdi + 0x28]
cmp rdx, rcx
jbe 0x1401ba3d7
mov rax, qword [rdi + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x1401b9c6c
xor eax, eax
test edx, 0x8000000
jne 0x1401b9fa2
xor esi, esi
jmp 0x1401b9fda
movzx esi, byte [r14 + rsi + 0x90]
movzx ecx, sil
test r13d, r13d
je 0x1401b81c1
cmp r13d, 1
jne 0x1401b81f0
add rcx, 6
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1401ba351
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1401b8b0d
mov esi, eax
mov r15d, 5
cmp r15d, 5
je 0x1401b824a
jmp 0x1401b8b4a
movzx eax, byte [r14 + 0x81]
cmp al, 2
je 0x1401b8232
test al, 1
je 0x1401b8232
mov eax, r15d
mov rdx, qword [rsp + 0x98]
cmp qword [rdx + 0x168], rax
jbe 0x1401b8adc
lea rax, [rax + rax*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jb 0x1401b81ce
jmp 0x1401ba351
mov esi, r15d
mov r15, rsi
shl r15, 0x20
or r15, 2
cmp r15d, 5
jne 0x1401b8b4a
cmp qword [rdi], 1
jne 0x1401b826f
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 8]
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rdi + 0x158], rax
mov qword [rdi], 1
mov qword [rdi + 8], rbp
mov qword [rdi + 0x10], rbp
cmp rbp, rbx
mov r15, qword [rsp + 0x98]
jae 0x1401b85e5
mov r13, qword [r9 + 8]
mov rax, qword [r9 + 0x10]
mov qword [rsp + 0x80], rax
mov rax, qword [r14 + 0x2b8]
and eax, 0x3f
mov qword [rsp + 0x110], rax
xor r10d, r10d
jmp 0x1401b82d2
mov r12, rbp
inc r12
mov rbp, r12
cmp r12, rbx
jae 0x1401b865d
cmp esi, 0x7ffffff
jbe 0x1401b8340
test byte [rdi], 1
mov rax, qword [rsp + 0x80]
je 0x1401ba310
mov qword [rdi + 0x10], rbp
cmp rbp, rax
jae 0x1401ba328
movzx r8d, byte [r13 + rbp]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, esi
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x28]
cmp rcx, rdx
jae 0x1401ba304
mov rax, qword [rdi + 0x20]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1401b854d
mov esi, eax
mov r12, rbp
jmp 0x1401b8470
cmp rbp, rbx
jae 0x1401b82c0
mov rax, qword [rdi + 0x20]
mov rdx, qword [rdi + 0x28]
nop word cs:[rax + rax]
movzx ecx, byte [r13 + rbp]
movzx ecx, byte [r14 + rcx + 0x190]
mov r8d, esi
add r8, rcx
mov ecx, dword [rax + r8*4]
lea r12, [rbp + 3]
cmp r12, rbx
jae 0x1401b845a
cmp ecx, 0x8000000
jae 0x1401b845a
movzx r8d, byte [r13 + rbp + 1]
movzx r8d, byte [r14 + r8 + 0x190]
add r8, rcx
mov esi, dword [rax + r8*4]
cmp rsi, 0x7ffffff
ja 0x1401b8407
movzx ecx, byte [r13 + rbp + 2]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, rsi
mov ecx, dword [rax + rcx*4]
cmp rcx, 0x7ffffff
ja 0x1401b8456
movzx r8d, byte [r13 + rbp + 3]
movzx r8d, byte [r14 + r8 + 0x190]
add r8, rcx
mov esi, dword [rax + r8*4]
cmp esi, 0x7ffffff
ja 0x1401b853a
add rbp, 4
cmp rbp, rbx
jb 0x1401b8360
jmp 0x1401b82c0
inc rbp
mov r8d, esi
mov esi, ecx
mov r12, rbp
test r8d, r8d
jns 0x1401b8465
test byte [rdi], 1
je 0x1401ba310
mov rbp, r10
mov qword [rdi + 0x10], r12
movzx r8d, byte [r13 + r12]
movzx r10d, byte [r14 + r8 + 0x190]
mov ecx, esi
add rcx, r10
cmp rcx, rdx
jae 0x1401ba304
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1401b85a1
mov r10, rbp
mov esi, eax
jmp 0x1401b8470
add rbp, 2
mov r8d, ecx
mov r12, rbp
test r8d, r8d
js 0x1401b8417
mov esi, r8d
nop dword [rax + rax]
mov eax, esi
cmp esi, 0x8000000
setae cl
test eax, 0x10000000
sete dl
test cl, dl
je 0x1401b82c3
test eax, 0x8000000
je 0x1401b873c
mov r10d, 1
cmp qword [r15 + 0x168], 1
jne 0x1401b84bb
mov dword [rsp + 0x38], 0
mov qword [rsp + 0xa8], r12
jmp 0x1401b82c3
mov eax, esi
and eax, 0x7ffffff
mov rcx, qword [rsp + 0x110]
shr rax, cl
mov rdx, qword [rdi + 0x58]
cmp rax, rdx
jae 0x1401ba37c
mov dword [rsp + 0x38], 0
mov rcx, qword [rdi + 0x50]
shl eax, 4
mov rdx, qword [rcx + rax + 8]
test rdx, rdx
je 0x1401ba36c
mov rax, qword [rcx + rax]
test byte [rax + 0x10], 2
jne 0x1401b850e
mov qword [rsp + 0xa8], r12
jmp 0x1401b82c3
cmp rdx, 0xd
jb 0x1401ba3c6
add rdx, 0xfffffffffffffff3
cmp rdx, 3
jbe 0x1401ba3b5
mov eax, dword [rax + 0x1d]
mov dword [rsp + 0x38], eax
mov qword [rsp + 0xa8], r12
jmp 0x1401b82c3
mov r8d, esi
mov esi, ecx
test r8d, r8d
jns 0x1401b8465
jmp 0x1401b8417
mov qword [rsp + 0xc8], r10
mov qword [rsp + 0x40], r11
mov r15, r9
shl r8d, 8
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, esi
call fcn.1402f3710
test eax, eax
jne 0x1401b9ccd
mov esi, edx
mov r12, rbp
mov r9, r15
mov r11, qword [rsp + 0x40]
mov r15, qword [rsp + 0x98]
mov r10, qword [rsp + 0xc8]
jmp 0x1401b8470
mov qword [rsp + 0x40], r11
mov r15, r9
shl r8d, 8
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, esi
call fcn.1402f3710
test eax, eax
jne 0x1401ba22d
mov esi, edx
mov r9, r15
mov r11, qword [rsp + 0x40]
mov r15, qword [rsp + 0x98]
mov r10, rbp
jmp 0x1401b8470
mov r13, qword [r9 + 0x10]
xor r10d, r10d
cmp rbx, r13
jae 0x1401b866e
mov rax, qword [r9 + 8]
movzx r15d, byte [rax + rbx]
movzx eax, byte [r14 + r15 + 0x190]
mov ecx, esi
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x28]
cmp rcx, rdx
jae 0x1401ba304
mov rax, qword [rdi + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x1401b9b3c
mov eax, edx
test eax, 0x8000000
jne 0x1401b9b80
test eax, 0x20000000
mov r8, qword [rsp + 0xa8]
je 0x1401b9bcb
mov r12, r11
mov ecx, r15d
mov rdx, rbx
call fcn.1401a8280
jmp 0x1401b9c9f
mov ebp, dword [rsp + 0x38]
mov r13, qword [rsp + 0x80]
cmp rbx, r13
jb 0x1401b85f1
movzx r8d, byte [r14 + 0x28f]
mov eax, esi
and eax, 0x7ffffff
lea ecx, [r8 + rax]
inc ecx
mov rdx, qword [rdi + 0x28]
cmp rdx, rcx
jbe 0x1401ba3d7
mov rax, qword [rdi + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x1401b9c07
test edx, 0x8000000
mov r8, qword [rsp + 0xa8]
je 0x1401b9bcb
mov r10d, 1
cmp qword [r15 + 0x168], 1
jne 0x1401b89bd
xor ebp, ebp
jmp 0x1401b89e9
test eax, 0x8000000
jne 0x1401b89f1
test eax, 0x40000000
jne 0x1401b8c7c
test eax, 0x20000000
je 0x1401ba486
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1401ba38b
mov rcx, r13
sub rcx, rax
neg rcx
mov rdx, r13
sub rdx, rax
cmovb rdx, rcx
add qword [rdi + 0x158], rdx
cmp r13, r15
jae 0x1401ba4cd
mov rsi, r11
movzx ecx, byte [r12 + r13]
mov rdx, r13
call fcn.1401a8280
jmp 0x1401b8c25
test eax, 0x40000000
mov edx, dword [rsp + 0x38]
jne 0x1401b8c38
test eax, 0x20000000
je 0x1401ba486
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1401ba38b
mov rcx, r12
sub rcx, rax
neg rcx
mov rdx, r12
sub rdx, rax
cmovb rdx, rcx
add qword [rdi + 0x158], rdx
mov rdx, qword [rsp + 0x80]
cmp r12, rdx
jae 0x1401ba4be
mov rsi, r11
movzx ecx, byte [r13 + r12]
mov rdx, r12
call fcn.1401a8280
jmp 0x1401b8c25
movzx eax, byte [r14 + r13 + 0x90]
mov r13, r15
mov qword [rsp + 0x80], r13
movzx ecx, al
mov rdx, qword [rdi + 0x40]
cmp rdx, rcx
jbe 0x1401ba351
mov rdx, qword [rdi + 0x38]
movsxd r13, dword [rdx + rcx*4]
test r13, r13
js 0x1401b8cf5
mov qword [rsp + 0x40], r11
mov r12, qword [r9 + 8]
mov r9, qword [r9 + 0x10]
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
mov rdx, qword [rcx + 0x10]
mov r10, qword [rcx + 0x40]
dec rdx
and rdx, 0xfffffffffffffff0
add rdx, rax
add rdx, 0x10
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbp
lea rcx, [rsp + 0xd8]
mov qword [rsp + 0xc8], rdx
mov r8, r12
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x110], r10
call r10
test byte [rsp + 0xd8], 1
je 0x1401b896e
mov r15, qword [rsp + 0xe0]
cmp dword [rsp + 0xa8], 0
mov r9, qword [rsp + 0x38]
je 0x1401b93d7
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x68], rbp
mov qword [rsp + 0x70], rbx
mov rax, qword [rsp + 0x80]
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x8c]
mov dword [rsp + 0x54], eax
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x78], al
lea rcx, [rsp + 0x50]
mov rdx, r15
mov r8, rbx
call fcn.1401bee50
mov rsi, qword [rsp + 0x68]
test rsi, rsi
je 0x1401b899c
lea rax, [rsi - 1]
cmp rax, qword [rsp + 0x60]
jae 0x1401b899c
mov rcx, qword [rsp + 0x58]
movzx eax, byte [rcx + rax]
movzx r13d, al
mov ebp, dword [rsp + 0x50]
mov r8d, dword [rsp + 0x54]
mov qword [rsp + 0xb8], r14
mov qword [rsp + 0xc0], rdi
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1401b9343
lea rax, [r14 + 0x290]
mov edx, r13d
shr edx, 3
and edx, 0xfffffff0
mov r10d, 1
xor r9d, r9d
mov ecx, r13d
shld r9, r10, cl
shl r10, cl
xor ecx, ecx
test r13b, 0x40
cmovne r9, r10
cmovne r10, rcx
and r9, qword [rax + rdx + 8]
and r10, qword [rax + rdx]
or r10, r9
je 0x1401b9343
mov eax, 4
mov r9, qword [rsp + 0x38]
mov edx, eax
cmp rdx, 5
je 0x1401b93d7
jmp 0x1401b99fb
xor eax, eax
mov r11, qword [rsp + 0x40]
jmp 0x1401ba0c2
mov r12d, dword [rsp + 0x50]
mov r8d, dword [rsp + 0x54]
mov qword [rsp + 0xb8], r14
mov qword [rsp + 0xc0], rdi
mov r13b, 2
jmp 0x1401b8d46
mov ebp, dword [rsp + 0x50]
mov r8d, dword [rsp + 0x54]
mov qword [rsp + 0xb8], r14
mov qword [rsp + 0xc0], rdi
mov r13b, 2
jmp 0x1401b934c
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov rsi, r11
call fcn.1401ab8a0
mov rcx, rax
xor edx, edx
call fcn.1401f6870
mov r10d, 1
mov r11, rsi
mov ebp, eax
mov r8, r13
jmp 0x1401b9bcb
xor eax, eax
mov rcx, qword [rsp + 0x38]
cmp qword [rcx + 0x168], 1
je 0x1401b8a29
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, r10d
mov rsi, r11
call fcn.1401ab8a0
mov rcx, rax
xor edx, edx
call fcn.1401f6870
mov r11, rsi
mov rcx, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1401ba38b
mov rdx, r13
sub rdx, rcx
neg rdx
mov r8, r13
sub r8, rcx
cmovb r8, rdx
add qword [rdi + 0x158], r8
mov qword [r11], 1
mov qword [r11 + 8], r13
mov dword [r11 + 0x10], eax
jmp 0x1401ba0c5
lea rcx, [rsp + 0xd8]
mov rsi, r9
mov qword [rsp + 0x80], r13
mov r13, r11
call fcn.1401ab8f0
mov r11, r13
mov r13, qword [rsp + 0x80]
mov r9, rsi
test eax, eax
jns 0x1401b7e49
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, r13d
mov r8d, r15d
mov rsi, r9
mov r9d, r12d
mov r15, r11
call fcn.1402f4460
mov r11, r15
mov r9, rsi
mov r15, rax
mov rsi, rax
shr rsi, 0x20
cmp r15d, 5
je 0x1401b7e71
jmp 0x1401b8b4a
lea rcx, [rsp + 0xd8]
mov r12, r9
mov qword [rsp + 0x80], r13
mov r13, r11
call fcn.1401ab8f0
mov r11, r13
mov r13, qword [rsp + 0x80]
mov r9, r12
test eax, eax
jns 0x1401b81dd
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, r13d
mov r8d, r15d
mov r15, r9
mov r9d, esi
mov rsi, r11
call fcn.1402f4460
mov r11, rsi
mov r9, r15
mov r15, rax
mov rsi, rax
shr rsi, 0x20
cmp r15d, 5
je 0x1401b824a
lea ecx, [r15 - 3]
cmp ecx, 2
mov eax, 2
cmovb eax, ecx
cmp eax, 2
je 0x1401b8b9e
cmp eax, 1
jne 0x1401b8bcf
test rbp, rbp
je 0x1401ba3e3
mov rdi, r11
movzx eax, byte [0x14049f3b5]
mov ecx, 0x10
mov edx, 8
call fcn.140061f20
test rax, rax
je 0x1401ba35d
dec rbp
mov byte [rax], 0
mov byte [rax + 1], sil
mov qword [rax + 8], rbp
jmp 0x1401b8bca
mov rdi, r11
movzx eax, byte [0x14049f3b5]
mov ecx, 0x10
mov edx, 8
call fcn.140061f20
test rax, rax
je 0x1401ba35d
mov byte [rax], 3
mov dword [rax + 4], r15d
mov dword [rax + 8], esi
mov r11, rdi
jmp 0x1401b8bfb
mov rsi, r11
movzx eax, byte [0x14049f3b5]
mov ecx, 0x10
mov edx, 8
call fcn.140061f20
test rax, rax
je 0x1401ba35d
mov byte [rax], 1
mov qword [rax + 8], rbp
mov r11, rsi
mov qword [r11 + 8], rax
mov qword [r11], 2
jmp 0x1401ba0c5
mov rsi, r11
mov ecx, eax
mov edx, r13d
call fcn.1401a8310
jmp 0x1401b8c25
mov rsi, r11
mov rcx, rbp
call fcn.1401a82d0
mov r11, rsi
mov qword [rsi + 8], rax
mov qword [rsi], 2
jmp 0x1401ba0c5
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1401ba38b
mov rcx, r12
sub rcx, rax
neg rcx
sub r12, rax
cmovb r12, rcx
add qword [rdi + 0x158], r12
mov qword [r11], r10
mov rax, qword [rsp + 0xa8]
mov qword [r11 + 8], rax
mov dword [r11 + 0x10], edx
jmp 0x1401ba0c5
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1401ba38b
mov rcx, r13
sub rcx, rax
neg rcx
sub r13, rax
cmovb r13, rcx
add qword [rdi + 0x158], r13
jmp 0x1401b7823
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov rdx, qword [rsp + 0x80]
mov r8d, dword [rsp + 0x8c]
mov r15, r9
mov r9d, eax
mov r12, r11
call fcn.1402f4460
mov r11, r12
mov r9, r15
mov r13, rax
shr r13, 0x20
cmp eax, 5
jne 0x1401b7bc9
jmp 0x1401b7c3e
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov rdx, qword [rsp + 0x80]
mov r8d, dword [rsp + 0x8c]
mov r15, r9
mov r9d, eax
mov r12, r11
call fcn.1402f4460
mov r11, r12
mov r9, r15
mov r13, rax
shr r13, 0x20
cmp eax, 5
jne 0x1401b7bc9
jmp 0x1401b87e1
movzx r13d, byte [r14 + r13 + 0x90]
movzx ecx, r13b
test r12d, r12d
je 0x1401b8d90
cmp r12d, 2
mov r9, qword [rsp + 0x38]
jne 0x1401b8d97
movzx eax, byte [r14 + 0x81]
cmp al, 2
je 0x1401b8dcc
test al, 1
je 0x1401b8dcc
mov eax, r8d
mov rdx, qword [rsp + 0xa0]
cmp qword [rdx + 0x168], rax
jbe 0x1401ba02a
lea rax, [rax + rax*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
jmp 0x1401b8d9b
mov r9, qword [rsp + 0x38]
jmp 0x1401b8d9b
add rcx, 6
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1401ba351
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1401ba064
mov r13d, eax
mov eax, 5
mov edx, eax
cmp rdx, 5
je 0x1401b8de6
jmp 0x1401ba0a5
mov r13d, r8d
mov rax, r13
shl rax, 0x20
or rax, 2
mov edx, eax
cmp rdx, 5
jne 0x1401ba0a5
cmp qword [rdi], 1
jne 0x1401b8e0b
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 8]
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rdi + 0x158], rax
lea rax, [rdi + 8]
mov qword [rsp + 0x90], rax
mov qword [rdi], 1
mov qword [rdi + 8], rsi
mov qword [rdi + 0x10], rsi
cmp rsi, rbx
jae 0x1401b92e4
lea rax, [r14 + 0x290]
mov qword [rsp + 0xf8], rax
movzx eax, byte [r14 + 0x81]
mov byte [rsp + 0x108], al
jmp 0x1401b8e5e
mov rsi, r12
inc rsi
cmp rsi, rbx
jae 0x1401b92e4
cmp r13d, 0x7ffffff
jbe 0x1401b8ebe
test byte [rdi], 1
je 0x1401ba310
mov qword [rdi + 0x10], rsi
cmp rsi, r9
jae 0x1401ba3a3
movzx r8d, byte [r15 + rsi]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x28]
cmp rcx, rdx
jae 0x1401ba304
mov rax, qword [rdi + 0x20]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1401b8fd3
mov r13d, eax
mov r12, rsi
jmp 0x1401b9001
cmp rsi, rbx
jae 0x1401b8e52
mov rax, qword [rdi + 0x20]
mov rdx, qword [rdi + 0x28]
nop dword [rax + rax]
movzx ecx, byte [r15 + rsi]
movzx ecx, byte [r14 + rcx + 0x190]
mov r8d, r13d
add r8, rcx
mov ecx, dword [rax + r8*4]
lea r12, [rsi + 3]
cmp r12, rbx
jae 0x1401b8f81
cmp ecx, 0x8000000
jae 0x1401b8f81
movzx r8d, byte [r15 + rsi + 1]
movzx r8d, byte [r14 + r8 + 0x190]
add r8, rcx
mov r13d, dword [rax + r8*4]
cmp r13, 0x7ffffff
ja 0x1401b8f6f
movzx ecx, byte [r15 + rsi + 2]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, r13
mov ecx, dword [rax + rcx*4]
cmp rcx, 0x7ffffff
ja 0x1401b8f7d
movzx r8d, byte [r15 + rsi + 3]
movzx r8d, byte [r14 + r8 + 0x190]
add r8, rcx
mov r13d, dword [rax + r8*4]
cmp r13d, 0x7ffffff
ja 0x1401b8f89
add rsi, 4
cmp rsi, rbx
jb 0x1401b8ed0
jmp 0x1401b8e52
inc rsi
mov r8d, r13d
mov r13d, ecx
mov r12, rsi
jmp 0x1401b8f8f
add rsi, 2
mov r8d, ecx
mov r12, rsi
jmp 0x1401b8f8f
mov r8d, r13d
mov r13d, ecx
test r8d, r8d
js 0x1401b8f99
mov r13d, r8d
jmp 0x1401b9001
test byte [rdi], 1
je 0x1401ba310
mov qword [rdi + 0x10], r12
movzx r8d, byte [r15 + r12]
movzx r10d, byte [r14 + r8 + 0x190]
mov ecx, r13d
add rcx, r10
cmp rcx, rdx
jae 0x1401ba304
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1401b92b9
mov r13d, eax
jmp 0x1401b9001
shl r8d, 8
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, r13d
call fcn.1402f3710
test eax, eax
jne 0x1401ba225
mov r13d, edx
mov r12, rsi
mov r9, qword [rsp + 0x38]
cmp r13d, 0x7ffffff
jbe 0x1401b8e4f
mov eax, r13d
test eax, 0x10000000
je 0x1401b9cdf
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r12
lea rcx, [rsp + 0xd8]
mov rdx, qword [rsp + 0xc8]
mov r8, r15
call qword [rsp + 0x110]
test byte [rsp + 0xd8], 1
je 0x1401b9d5a
mov rsi, qword [rsp + 0xe0]
cmp rsi, r12
jbe 0x1401b917e
cmp dword [rsp + 0xa8], 0
mov r9, qword [rsp + 0x38]
je 0x1401b8e55
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x68], rbp
mov qword [rsp + 0x70], rbx
mov rax, qword [rsp + 0x80]
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x8c]
mov dword [rsp + 0x54], eax
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x78], al
lea rcx, [rsp + 0x50]
mov rdx, rsi
mov r8, rbx
call fcn.1401bee50
mov r10, qword [rsp + 0x68]
test r10, r10
je 0x1401b918b
lea rax, [r10 - 1]
cmp rax, qword [rsp + 0x60]
jae 0x1401b918b
mov rcx, qword [rsp + 0x58]
movzx eax, byte [rcx + rax]
movzx r13d, al
mov r11d, dword [rsp + 0x50]
mov r8d, dword [rsp + 0x54]
mov qword [rsp + 0xb8], r14
mov qword [rsp + 0xc0], rdi
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1401b91aa
xor eax, eax
mov ecx, r13d
mov edx, 1
shld rax, rdx, cl
mov edx, r13d
shr edx, 3
mov r9d, r8d
mov r8d, 1
shl r8, cl
and edx, 0xfffffff0
test r13b, 0x40
cmovne rax, r8
mov ecx, 0
cmovne r8, rcx
mov rcx, qword [rsp + 0xf8]
and rax, qword [rcx + rdx + 8]
and r8, qword [rcx + rdx]
or r8, rax
mov r8d, r9d
je 0x1401b91aa
mov eax, 4
mov r9, qword [rsp + 0x38]
jmp 0x1401b9225
mov rsi, r12
mov r9, qword [rsp + 0x38]
jmp 0x1401b8e52
mov r11d, dword [rsp + 0x50]
mov r8d, dword [rsp + 0x54]
mov qword [rsp + 0xb8], r14
mov qword [rsp + 0xc0], rdi
mov r12b, 2
jmp 0x1401b91b3
movzx r12d, byte [r14 + r13 + 0x90]
movzx ecx, r12b
test r11d, r11d
je 0x1401b91fa
cmp r11d, 2
mov r9, qword [rsp + 0x38]
jne 0x1401b9201
mov r13d, r8d
test byte [rsp + 0x108], 1
je 0x1401b9236
mov rax, qword [rsp + 0xa0]
cmp qword [rax + 0x168], r13
jbe 0x1401b9243
lea rax, [r13*2]
add rax, r13
lea rcx, [rcx + rax*2]
add rcx, 0xc
jmp 0x1401b9205
mov r9, qword [rsp + 0x38]
jmp 0x1401b9205
add rcx, 6
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1401ba351
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1401b927f
mov r13d, eax
mov eax, 5
mov edx, eax
cmp rdx, 5
je 0x1401b8e55
jmp 0x1401ba0a5
mov rax, r13
shl rax, 0x20
or rax, 2
jmp 0x1401b9225
lea rcx, [rsp + 0xb8]
mov r13, r10
mov dword [rsp + 0xd4], r11d
mov dword [rsp + 0x118], r8d
call fcn.1401ab8f0
mov r8d, dword [rsp + 0x118]
mov r11d, dword [rsp + 0xd4]
mov r10, r13
mov r9, qword [rsp + 0x38]
test eax, eax
jns 0x1401b921d
mov qword [rsp + 0x120], r14
mov qword [rsp + 0x128], rdi
lea rcx, [rsp + 0x120]
mov edx, r11d
mov r9d, r12d
mov r12, r10
call fcn.1402f4460
mov r10, r12
mov r9, qword [rsp + 0x38]
mov r13, rax
shr r13, 0x20
jmp 0x1401b9225
shl r8d, 8
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, r13d
call fcn.1402f3710
test eax, eax
jne 0x1401ba22d
mov r13d, edx
jmp 0x1401b8ffc
cmp rbx, r9
jae 0x1401b9319
movzx esi, byte [r15 + rbx]
mov rcx, r14
mov rdx, rdi
mov r8d, r13d
mov r9d, esi
call fcn.1401b7620
test eax, eax
je 0x1401b9a75
mov rcx, rbx
call fcn.1401a82d0
mov r11, qword [rsp + 0x40]
jmp 0x1401b8bfb
mov rcx, r14
mov rdx, rdi
mov r8d, r13d
call fcn.1401b76a0
test eax, eax
je 0x1401b9a94
mov rcx, qword [rsp + 0x38]
call fcn.1401a82d0
mov r11, qword [rsp + 0x40]
jmp 0x1401b8bfb
movzx r13d, byte [r14 + r13 + 0x90]
movzx ecx, r13b
test ebp, ebp
je 0x1401b939c
cmp ebp, 2
mov r9, qword [rsp + 0x38]
jne 0x1401b93a3
movzx eax, byte [r14 + 0x81]
cmp al, 2
je 0x1401b99e1
test al, 1
je 0x1401b99e1
mov eax, r8d
mov rdx, qword [rsp + 0xa0]
cmp qword [rdx + 0x168], rax
jbe 0x1401ba0dc
lea rax, [rax + rax*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
jmp 0x1401b93a7
mov r9, qword [rsp + 0x38]
jmp 0x1401b93a7
add rcx, 6
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1401ba351
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1401ba106
mov r13d, eax
mov eax, 5
mov edx, eax
cmp rdx, 5
jne 0x1401b99fb
cmp qword [rdi], 1
jne 0x1401b93fc
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 8]
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rdi + 0x158], rax
lea rax, [rdi + 8]
mov qword [rdi], 1
mov qword [rdi + 8], r15
mov qword [rdi + 0x10], r15
cmp r15, rbx
mov qword [rsp + 0xf8], rax
jae 0x1401b998a
lea rax, [r14 + 0x290]
mov qword [rsp + 0x108], rax
movzx eax, byte [r14 + 0x81]
mov byte [rsp + 0xd4], al
lea rbp, [rbx + 1]
mov eax, dword [rsp + 0x8c]
mov rcx, rax
shl rcx, 0x20
or rcx, 2
mov qword [rsp + 0x118], rcx
mov qword [rsp + 0x98], rax
lea rax, [rax + rax*2]
lea rax, [rax*2 + 0xc]
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x90], 0
mov rsi, r15
cmp r13d, 0x7ffffff
jbe 0x1401b94f4
test byte [rdi], 1
je 0x1401ba310
mov qword [rdi + 0x10], rsi
cmp rsi, r9
jae 0x1401ba3a3
movzx r8d, byte [r12 + rsi]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x28]
cmp rcx, rdx
jae 0x1401ba304
mov rax, qword [rdi + 0x20]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1401b9891
mov r13d, eax
mov r15, rsi
cmp r13d, 0x7ffffff
ja 0x1401b962d
jmp 0x1401b98f9
cmp rsi, rbx
jae 0x1401b98f6
mov rax, qword [rdi + 0x20]
mov rdx, qword [rdi + 0x28]
nop word cs:[rax + rax]
movzx ecx, byte [r12 + rsi]
movzx ecx, byte [r14 + rcx + 0x190]
mov r8d, r13d
add r8, rcx
mov ecx, dword [rax + r8*4]
lea r15, [rsi + 3]
cmp r15, rbx
jae 0x1401b9612
cmp ecx, 0x8000000
jae 0x1401b9612
movzx r8d, byte [r12 + rsi + 1]
movzx r8d, byte [r14 + r8 + 0x190]
add r8, rcx
mov r13d, dword [rax + r8*4]
cmp r13, 0x7ffffff
ja 0x1401b95b7
movzx ecx, byte [r12 + rsi + 2]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, r13
mov ecx, dword [rax + rcx*4]
cmp rcx, 0x7ffffff
ja 0x1401b960e
movzx r8d, byte [r12 + rsi + 3]
movzx r8d, byte [r14 + r8 + 0x190]
add r8, rcx
mov r13d, dword [rax + r8*4]
cmp r13d, 0x7ffffff
ja 0x1401b9824
add rsi, 4
cmp rsi, rbx
jb 0x1401b9510
jmp 0x1401b98f6
inc rsi
mov r8d, r13d
mov r13d, ecx
mov r15, rsi
test r8d, r8d
jns 0x1401b961d
test byte [rdi], 1
je 0x1401ba310
mov qword [rdi + 0x10], r15
movzx r8d, byte [r12 + r15]
movzx r10d, byte [r14 + r8 + 0x190]
mov ecx, r13d
add rcx, r10
cmp rcx, rdx
jae 0x1401ba304
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1401b98bc
mov r13d, eax
cmp r13d, 0x7ffffff
ja 0x1401b962d
jmp 0x1401b98f9
add rsi, 2
mov r8d, ecx
mov r15, rsi
test r8d, r8d
js 0x1401b95c8
mov r13d, r8d
cmp r13d, 0x7ffffff
jbe 0x1401b98f9
mov eax, r13d
test eax, 0x10000000
je 0x1401b990a
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r15
lea rcx, [rsp + 0x120]
mov rdx, qword [rsp + 0xc8]
mov r8, r12
call qword [rsp + 0x110]
test byte [rsp + 0x120], 1
je 0x1401b9a0a
mov rsi, qword [rsp + 0x128]
cmp rsi, r15
jbe 0x1401b9949
cmp dword [rsp + 0xa8], 0
mov r9, qword [rsp + 0x38]
je 0x1401b9816
mov qword [rsp + 0xb8], rsi
mov qword [rsp + 0xc0], rbx
cmp r9, rbx
jb 0x1401ba3fb
cmp rbp, rsi
jb 0x1401ba3fb
lea rax, [rsi - 1]
cmp rax, r9
jae 0x1401b975b
movzx eax, byte [r12 + rax]
movzx r13d, al
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xe0], rdi
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1401b9781
xor eax, eax
mov ecx, r13d
mov edx, 1
shld rax, rdx, cl
mov edx, r13d
shr edx, 3
mov r8d, 1
shl r8, cl
and edx, 0xfffffff0
test r13b, 0x40
cmovne rax, r8
mov ecx, 0
cmovne r8, rcx
mov rcx, qword [rsp + 0x108]
and rax, qword [rcx + rdx + 8]
and r8, qword [rcx + rdx]
or r8, rax
je 0x1401b9781
mov eax, 4
mov edx, eax
cmp rdx, 5
je 0x1401b9816
jmp 0x1401b9cb4
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xe0], rdi
mov r15b, 2
mov r8, qword [rsp + 0x80]
movzx ecx, r15b
test r8d, r8d
jne 0x1401b979b
jmp 0x1401b97ea
movzx r15d, byte [r14 + r13 + 0x90]
mov r8, qword [rsp + 0x80]
movzx ecx, r15b
test r8d, r8d
je 0x1401b97ea
cmp r8d, 2
jne 0x1401b97e6
mov r13, qword [rsp + 0x98]
mov rax, qword [rsp + 0x118]
test byte [rsp + 0xd4], 1
je 0x1401b980a
mov rax, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x98]
cmp qword [rax + 0x168], rdx
jbe 0x1401b9838
add rcx, qword [rsp + 0x138]
mov r8, qword [rsp + 0x80]
jmp 0x1401b97ea
add rcx, 6
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1401ba351
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1401b9856
mov r13d, eax
mov eax, 5
mov edx, eax
cmp rdx, 5
jne 0x1401b9cb4
cmp rsi, rbx
jb 0x1401b9487
jmp 0x1401b9996
mov r8d, r13d
mov r13d, ecx
test r8d, r8d
jns 0x1401b961d
jmp 0x1401b95c8
lea rcx, [rsp + 0xd8]
call fcn.1401ab8f0
mov r9, qword [rsp + 0x38]
mov r8, qword [rsp + 0x80]
test eax, eax
jns 0x1401b9802
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, r8d
mov r8d, dword [rsp + 0x8c]
mov r9d, r15d
call fcn.1402f4460
mov r9, qword [rsp + 0x38]
mov r13, rax
shr r13, 0x20
mov edx, eax
cmp rdx, 5
je 0x1401b9816
jmp 0x1401b9cb4
shl r8d, 8
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, r13d
call fcn.1402f3710
test eax, eax
jne 0x1401ba225
mov r13d, edx
mov r15, rsi
jmp 0x1401b98e2
shl r8d, 8
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, r13d
call fcn.1402f3710
test eax, eax
jne 0x1401ba2fc
mov r13d, edx
mov r9, qword [rsp + 0x38]
cmp r13d, 0x7ffffff
ja 0x1401b962d
jmp 0x1401b98f9
mov r15, rsi
inc r15
cmp r15, rbx
jb 0x1401b9484
jmp 0x1401b9996
test eax, 0x8000000
je 0x1401ba23d
mov eax, 1
mov qword [rsp + 0x90], rax
mov dword [rsp + 0xb4], 0
mov rax, qword [rsp + 0xa0]
cmp qword [rax + 0x168], 1
jne 0x1401b9950
mov qword [rsp + 0x100], r15
jmp 0x1401b98f9
mov r9, qword [rsp + 0x38]
jmp 0x1401b98f9
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, r13d
call fcn.1401ab8a0
mov rcx, rax
xor edx, edx
call fcn.1401f6870
mov r9, qword [rsp + 0x38]
mov dword [rsp + 0xb4], eax
mov qword [rsp + 0x100], r15
jmp 0x1401b98f9
mov qword [rsp + 0x90], 0
cmp rbx, r9
jae 0x1401b99c1
movzx esi, byte [r12 + rbx]
mov rcx, r14
mov rdx, rdi
mov r8d, r13d
mov r9d, esi
call fcn.1401b7620
test eax, eax
je 0x1401b9aa9
mov rcx, rbx
jmp 0x1401b9cd0
mov rcx, r14
mov rdx, rdi
mov r8d, r13d
call fcn.1401b76a0
test eax, eax
je 0x1401b9af1
mov rcx, qword [rsp + 0x38]
jmp 0x1401b9cd0
mov r13d, r8d
mov rax, r13
shl rax, 0x20
or rax, 2
mov edx, eax
cmp rdx, 5
je 0x1401b93d7
shl r13, 0x20
or rdx, r13
mov rcx, rsi
jmp 0x1401ba0af
cmp qword [rdi], 0
mov rax, qword [rdi + 8]
mov qword [rdi], 0
movups xmm0, xmmword [rsp + 0x140]
mov rcx, qword [rsp + 0xf8]
movups xmmword [rcx], xmm0
mov r11, qword [rsp + 0x40]
je 0x1401ba38b
mov rcx, rbx
sub rcx, rax
neg rcx
sub rbx, rax
cmovb rbx, rcx
add qword [rdi + 0x158], rbx
mov rax, qword [rsp + 0x90]
mov qword [r11], rax
mov rax, qword [rsp + 0x100]
mov qword [r11 + 8], rax
mov eax, dword [rsp + 0xb4]
mov dword [r11 + 0x10], eax
jmp 0x1401ba0c5
mov eax, edx
test eax, 0x8000000
jne 0x1401b9da2
test eax, 0x20000000
jne 0x1401ba016
xor esi, esi
jmp 0x1401b9ddc
xor eax, eax
test edx, 0x8000000
jne 0x1401b9de3
xor esi, esi
jmp 0x1401b9ddc
mov eax, edx
test eax, 0x8000000
jne 0x1401b9e6e
test eax, 0x20000000
mov r11, qword [rsp + 0x40]
mov r15, qword [rsp + 0x90]
mov eax, dword [rsp + 0xb4]
mov r8, qword [rsp + 0x100]
je 0x1401ba195
mov ecx, esi
mov rdx, rbx
call fcn.1401a8280
mov r11, qword [rsp + 0x40]
jmp 0x1401b8bfb
test edx, 0x8000000
mov r11, qword [rsp + 0x40]
mov r15, qword [rsp + 0x90]
mov eax, dword [rsp + 0xb4]
mov r8, qword [rsp + 0x100]
je 0x1401ba195
mov r15d, 1
mov rax, qword [rsp + 0xa0]
cmp qword [rax + 0x168], 1
jne 0x1401ba145
xor eax, eax
jmp 0x1401ba168
mov r13, rdi
mov rdi, r10
mov r12, r11
mov r8d, r15d
shl r8d, 8
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r13
lea rcx, [rsp + 0x50]
mov edx, esi
call fcn.1402f3710
test eax, eax
jne 0x1401b9c67
mov r11, r12
mov r10, rdi
mov rdi, r13
mov eax, edx
test eax, 0x8000000
je 0x1401b8637
mov r10d, 1
mov rax, qword [rsp + 0x98]
cmp qword [rax + 0x168], 1
jne 0x1401b9b9c
xor ebp, ebp
jmp 0x1401b9bc8
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov rsi, r11
call fcn.1401ab8a0
mov rcx, rax
xor edx, edx
call fcn.1401f6870
mov r10d, 1
mov r11, rsi
mov ebp, eax
mov r8, rbx
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1401ba38b
mov rcx, rbx
sub rcx, rax
neg rcx
sub rbx, rax
cmovb rbx, rcx
add qword [rdi + 0x158], rbx
mov qword [r11], r10
mov qword [r11 + 8], r8
mov dword [r11 + 0x10], ebp
jmp 0x1401ba0c5
mov qword [rsp + 0xc8], r10
mov r12, r11
inc r8d
shl r8d, 0x10
inc r8d
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, esi
call fcn.1402f3710
test eax, eax
je 0x1401b9f1e
mov rcx, r13
jmp 0x1401b9c9a
mov r12, r11
mov r8d, r15d
shl r8d, 8
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, esi
call fcn.1402f3710
test eax, eax
je 0x1401b9f42
mov rcx, rbx
jmp 0x1401b9c9a
mov r12, r11
inc r8d
shl r8d, 0x10
inc r8d
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, esi
call fcn.1402f3710
test eax, eax
je 0x1401b9f91
mov rcx, r15
call fcn.1401a82d0
mov r11, r12
mov qword [r12 + 8], rax
mov qword [r12], 2
jmp 0x1401ba0c5
shl r13, 0x20
or rdx, r13
mov rcx, rsi
call fcn.1401b7720
mov r11, qword [rsp + 0x40]
jmp 0x1401b8bfb
mov rcx, rbp
call fcn.1401a82d0
mov r11, qword [rsp + 0x40]
jmp 0x1401b8bfb
test eax, 0x8000000
jne 0x1401b9e91
test eax, 0x40000000
mov r11, qword [rsp + 0x40]
jne 0x1401ba1e4
test eax, 0x20000000
je 0x1401ba486
cmp qword [rdi], 0
mov rax, qword [rdi + 8]
mov qword [rdi], 0
movups xmm0, xmmword [rsp + 0x50]
mov rcx, qword [rsp + 0x90]
movups xmmword [rcx], xmm0
je 0x1401ba38b
mov rcx, r12
sub rcx, rax
neg rcx
mov rdx, r12
sub rdx, rax
cmovb rdx, rcx
add qword [rdi + 0x158], rdx
cmp r12, r9
jae 0x1401ba4df
movzx ecx, byte [r15 + r12]
mov rdx, r12
jmp 0x1401ba01b
cmp qword [rdi], 0
mov rax, qword [rdi + 8]
mov qword [rdi], 0
movups xmm0, xmmword [rsp + 0x50]
mov rcx, qword [rsp + 0x90]
movups xmmword [rcx], xmm0
mov r11, qword [rsp + 0x40]
je 0x1401ba38b
mov rcx, rbx
sub rcx, rax
neg rcx
sub rbx, rax
cmovb rbx, rcx
add qword [rdi + 0x158], rbx
xor eax, eax
jmp 0x1401ba0c2
mov esi, 1
xor eax, eax
mov rcx, qword [rsp + 0xa0]
cmp qword [rcx + 0x168], 1
je 0x1401b9dd9
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
call fcn.1401ab8a0
mov rcx, rax
xor edx, edx
call fcn.1401f6870
mov r8, rbx
mov r11, qword [rsp + 0x40]
jmp 0x1401b9e22
mov esi, 1
mov rcx, qword [rsp + 0xa0]
cmp qword [rcx + 0x168], 1
je 0x1401b9e18
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
call fcn.1401ab8a0
mov rcx, rax
xor edx, edx
call fcn.1401f6870
mov r11, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
cmp qword [rdi], 0
mov rcx, qword [rdi + 8]
mov qword [rdi], 0
movups xmm0, xmmword [rsp + 0x50]
mov rdx, qword [rsp + 0x90]
movups xmmword [rdx], xmm0
je 0x1401ba38b
mov rdx, rbx
sub rdx, rcx
neg rdx
sub rbx, rcx
cmovb rbx, rdx
add qword [rdi + 0x158], rbx
mov qword [r11], rsi
mov qword [r11 + 8], r8
mov dword [r11 + 0x10], eax
jmp 0x1401ba0c5
mov r15d, 1
mov rax, qword [rsp + 0xa0]
cmp qword [rax + 0x168], 1
jne 0x1401ba16f
xor eax, eax
jmp 0x1401ba18d
xor eax, eax
mov rcx, qword [rsp + 0xa0]
cmp qword [rcx + 0x168], 1
je 0x1401b9ec6
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov edx, r13d
call fcn.1401ab8a0
mov rcx, rax
xor edx, edx
call fcn.1401f6870
cmp qword [rdi], 0
mov rcx, qword [rdi + 8]
mov qword [rdi], 0
movups xmm0, xmmword [rsp + 0x50]
mov rdx, qword [rsp + 0x90]
movups xmmword [rdx], xmm0
mov r11, qword [rsp + 0x40]
je 0x1401ba38b
mov rdx, r12
sub rdx, rcx
neg rdx
mov r8, r12
sub r8, rcx
cmovb r8, rdx
add qword [rdi + 0x158], r8
mov qword [r11], 1
mov qword [r11 + 8], r12
mov dword [r11 + 0x10], eax
jmp 0x1401ba0c5
mov r11, r12
mov r10, qword [rsp + 0xc8]
test edx, 0x8000000
mov r8, qword [rsp + 0xa8]
jne 0x1401b86b3
jmp 0x1401b9bcb
mov r11, r12
mov eax, edx
test eax, 0x8000000
je 0x1401b8153
xor eax, eax
mov esi, 1
mov rcx, qword [rsp + 0x38]
cmp qword [rcx + 0x168], 1
je 0x1401b9f8c
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov r14, r11
call fcn.1401ab8a0
mov rcx, rax
xor edx, edx
call fcn.1401f6870
mov r11, r14
mov r15, rbx
jmp 0x1401b9fda
mov r11, r12
xor eax, eax
test edx, 0x8000000
je 0x1401b819e
mov esi, 1
mov rcx, qword [rsp + 0x38]
cmp qword [rcx + 0x168], 1
je 0x1401b9fda
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
mov r14, r11
call fcn.1401ab8a0
mov rcx, rax
xor edx, edx
call fcn.1401f6870
mov r11, r14
mov rcx, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1401ba38b
mov rdx, rbx
sub rdx, rcx
neg rdx
sub rbx, rcx
cmovb rbx, rdx
add qword [rdi + 0x158], rbx
mov qword [r11], rsi
mov qword [r11 + 8], r15
mov dword [r11 + 0x10], eax
jmp 0x1401ba0c5
mov ecx, esi
mov rdx, rbx
call fcn.1401a8280
mov r11, qword [rsp + 0x40]
jmp 0x1401b8bfb
lea rcx, [rsp + 0xb8]
mov qword [rsp + 0x90], r10
mov dword [rsp + 0x108], r8d
call fcn.1401ab8f0
mov r8d, dword [rsp + 0x108]
mov r10, qword [rsp + 0x90]
mov r9, qword [rsp + 0x38]
test eax, eax
jns 0x1401b8db7
mov qword [rsp + 0x120], r14
mov qword [rsp + 0x128], rdi
lea rcx, [rsp + 0x120]
mov edx, r12d
mov r9d, r13d
mov r12, r10
call fcn.1402f4460
mov r10, r12
mov r9, qword [rsp + 0x38]
mov r13, rax
shr r13, 0x20
mov edx, eax
cmp rdx, 5
je 0x1401b8de6
shl r13, 0x20
or rdx, r13
mov rcx, r10
call fcn.1401b7720
mov r11, qword [rsp + 0x40]
mov qword [r11 + 8], rax
mov eax, 2
mov qword [r11], rax
mov rax, r11
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsp + 0xb8]
mov dword [rsp + 0x98], r8d
call fcn.1401ab8f0
mov r8d, dword [rsp + 0x98]
mov r9, qword [rsp + 0x38]
test eax, eax
jns 0x1401b93c3
mov qword [rsp + 0x120], r14
mov qword [rsp + 0x128], rdi
lea rcx, [rsp + 0x120]
mov edx, ebp
mov r9d, r13d
call fcn.1402f4460
mov r9, qword [rsp + 0x38]
mov r13, rax
shr r13, 0x20
mov edx, eax
cmp rdx, 5
je 0x1401b93d7
jmp 0x1401b99fb
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
call fcn.1401ab8a0
mov rcx, rax
xor edx, edx
call fcn.1401f6870
mov r11, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
jmp 0x1401ba195
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rdi
lea rcx, [rsp + 0x50]
call fcn.1401ab8a0
mov rcx, rax
xor edx, edx
call fcn.1401f6870
mov r8, rbx
mov r11, qword [rsp + 0x40]
cmp qword [rdi], 0
mov rdx, qword [rdi + 8]
mov qword [rdi], 0
movups xmm0, xmmword [rsp + 0x140]
mov rcx, qword [rsp + 0xf8]
movups xmmword [rcx], xmm0
je 0x1401ba38b
mov rcx, rbx
sub rcx, rdx
neg rcx
sub rbx, rdx
cmovb rbx, rcx
add qword [rdi + 0x158], rbx
mov qword [r11], r15
mov qword [r11 + 8], r8
mov dword [r11 + 0x10], eax
jmp 0x1401ba0c5
cmp qword [rdi], 0
mov rax, qword [rdi + 8]
mov qword [rdi], 0
movups xmm0, xmmword [rsp + 0x50]
mov rcx, qword [rsp + 0x90]
movups xmmword [rcx], xmm0
je 0x1401ba38b
mov rcx, r12
sub rcx, rax
neg rcx
sub r12, rax
cmovb r12, rcx
add qword [rdi + 0x158], r12
jmp 0x1401b7823
mov rcx, rsi
jmp 0x1401b9cd0
mov rcx, r12
jmp 0x1401b9cd0
mov rcx, r13
jmp 0x1401b9cd0
test eax, 0x40000000
jne 0x1401ba2b3
test eax, 0x20000000
je 0x1401ba486
cmp qword [rdi], 0
mov rax, qword [rdi + 8]
mov qword [rdi], 0
movups xmm0, xmmword [rsp + 0x140]
mov rcx, qword [rsp + 0xf8]
movups xmmword [rcx], xmm0
je 0x1401ba38b
mov rcx, r15
sub rcx, rax
neg rcx
mov rdx, r15
sub rdx, rax
cmovb rdx, rcx
add qword [rdi + 0x158], rdx
cmp r15, qword [rsp + 0x38]
jae 0x1401ba4f1
movzx ecx, byte [r12 + r15]
mov rdx, r15
call fcn.1401a8280
mov r11, qword [rsp + 0x40]
jmp 0x1401b8bfb
cmp qword [rdi], 0
mov rax, qword [rdi + 8]
mov qword [rdi], 0
movups xmm0, xmmword [rsp + 0x140]
mov rcx, qword [rsp + 0xf8]
movups xmmword [rcx], xmm0
je 0x1401ba38b
mov rcx, r15
sub rcx, rax
neg rcx
sub r15, rax
cmovb r15, rcx
add qword [rdi + 0x158], r15
mov r11, qword [rsp + 0x40]
jmp 0x1401b9a4e
mov rcx, r15
jmp 0x1401b9cd0
lea r8, [0x14038d5d8]
call fcn.1402fb4d8
lea rcx, str.no_in_progress_search_to_update
lea r8, [0x14038d710]
mov edx, 0x1f
call fcn.1402fb2f0
lea r8, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs_
mov rcx, rbp
mov rdx, qword [rsp + 0x80]
call fcn.1402fb4d8
lea r8, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs_
mov rcx, rbp
mov rdx, r15
call fcn.1402fb4d8
lea r8, [0x14038d680]
call fcn.1402fb4d8
mov ecx, 8
mov edx, 0x10
call fcn.1402fb06f
lea r8, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.1402fb4d8
lea r8, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov rcx, rax
call fcn.1402fb4d8
lea rcx, str.no_in_progress_search_to_finish
lea r8, [0x14038d6d8]
mov edx, 0x1f
call fcn.1402fb2f0
lea r8, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs_
mov rcx, rsi
mov rdx, r9
call fcn.1402fb4d8
lea r8, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srcutilwire.rs
mov ecx, 4
call fcn.1402fb860
lea r8, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srcutildeterminize_state.rs
mov ecx, 0xd
call fcn.1402fb7f0
lea r8, [0x14038d5f0]
call fcn.1402fb4d8
lea rcx, str.no_quit_in_start_without_look_behind
lea r8, [0x14038d630]
mov edx, 0x24
call fcn.1402fb2f0
mov qword [rsp + 0x150], r9
lea rax, [rsp + 0xb8]
mov qword [rsp + 0xd8], rax
lea rax, [0x1401a8210]
mov qword [rsp + 0xe0], rax
lea rax, [rsp + 0x150]
mov qword [rsp + 0xe8], rax
lea rax, [fcn.1402e9710]
mov qword [rsp + 0xf0], rax
lea rax, [0x14038dd10]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 2
mov qword [rsp + 0x70], 0
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], 2
lea rdx, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srcutil_search.rsinvalid_span__for_haystack_of_length
lea rcx, [rsp + 0x50]
call fcn.1402fb350
lea rax, str.internal_error:_entered_unreachable_code:_sid_being_unknown_is_a_bug
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 1
lea rax, [rsp + 0x48]
mov qword [rsp + 0x60], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
lea rdx, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs_
lea rcx, [rsp + 0x50]
call fcn.1402fb350
lea r8, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs_
mov rcx, r12
call fcn.1402fb4d8
lea r8, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs_
mov rcx, r13
mov rdx, r15
call fcn.1402fb4d8
lea r8, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs_
mov rcx, r12
mov rdx, r9
call fcn.1402fb4d8
lea r8, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs_
mov rcx, r15
mov rdx, qword [rsp + 0x38]
call fcn.1402fb4d8
int3