Function at 0x1400fd050
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x138
mov rbp, qword [r9 + 0x18]
mov rbx, qword [r9 + 0x20]
cmp rbp, rbx
jbe 0x1400fd07c
mov qword [rcx], 0
jmp 0x1400ff4bc
mov rdi, r8
mov r14, rdx
mov r13d, dword [r9]
lea eax, [r13 - 1]
cmp eax, 2
mov qword [rsp + 0x38], rcx
jb 0x1400fd0b3
lea rax, [r14 + 0x60]
cmp byte [r14 + 0x78], 3
lea r12, [0x1403745a8]
cmovne r12, rax
cmp byte [r12 + 0x18], 2
jne 0x1400fd24b
cmp byte [r9 + 0x28], 0
je 0x1400fd1ad
mov r11, qword [r14 + 0x2b0]
test rbp, rbp
je 0x1400fd164
lea rax, [rbp - 1]
cmp rax, qword [r9 + 0x10]
jae 0x1400fd164
mov rcx, qword [r9 + 8]
movzx eax, byte [rcx + rax]
movzx esi, al
mov r15d, dword [r9 + 4]
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1400fd14d
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
jne 0x1400fd240
movzx r12d, byte [r14 + rsi + 0x90]
movzx ecx, r12b
test r13d, r13d
jne 0x1400fd178
jmp 0x1400fd358
mov r15d, dword [r9 + 4]
mov r12b, 2
movzx ecx, r12b
test r13d, r13d
je 0x1400fd358
cmp r13d, 2
jne 0x1400fd354
test byte [r14 + 0x81], 1
mov esi, r15d
jne 0x1400fd803
mov r15, rsi
shl r15, 0x20
or r15, 2
cmp r15d, 5
je 0x1400fd376
jmp 0x1400fe059
mov r11, qword [r14 + 0x2b0]
test rbp, rbp
je 0x1400fd33b
lea rax, [rbp - 1]
cmp rax, qword [r9 + 0x10]
jae 0x1400fd33b
mov rcx, qword [r9 + 8]
movzx eax, byte [rcx + rax]
movzx esi, al
mov r15d, dword [r9 + 4]
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1400fd850
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 0x1400fd850
mov r15d, 4
jmp 0x1400fe059
cmp byte [r9 + 0x28], 0
mov qword [rsp + 0xb0], r13
je 0x1400fd6d8
mov r15, qword [r14 + 0x2b0]
mov eax, dword [r15 + 0x17c]
mov dword [rsp + 0xa0], eax
test rbp, rbp
je 0x1400fd6b9
lea rax, [rbp - 1]
cmp rax, qword [r9 + 0x10]
jae 0x1400fd6b9
mov rcx, qword [r9 + 8]
movzx eax, byte [rcx + rax]
movzx esi, al
mov eax, dword [r9 + 4]
mov dword [rsp + 0x54], 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 0x1400fde1c
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 0x1400fde1c
mov eax, 4
lea edx, [rax - 3]
cmp edx, 2
mov ecx, 2
cmovb ecx, edx
cmp ecx, 2
je 0x1400fe457
cmp ecx, 1
jne 0x1400fe9a6
test rbp, rbp
je 0x1400ff800
dec rbp
mov ecx, esi
jmp 0x1400fe9ed
mov r15d, dword [r9 + 4]
mov r12b, 2
movzx ecx, r12b
test r13d, r13d
jne 0x1400fd862
jmp 0x1400fd870
add rcx, 6
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1400ff6d1
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400fddd4
mov esi, eax
cmp qword [rdi], 1
jne 0x1400fd39b
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 0x1400fd610
mov r12, qword [r9 + 8]
mov r15, qword [r9 + 0x10]
jmp 0x1400fd3d2
mov rbp, r13
mov esi, r10d
inc rbp
cmp rbp, rbx
jae 0x1400fd614
cmp esi, 0x7ffffff
jbe 0x1400fd440
cmp qword [rdi], 0
je 0x1400ff693
mov qword [rdi + 0x10], rbp
cmp rbp, r15
jae 0x1400ff6ab
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 0x1400ff687
mov rax, qword [rdi + 0x20]
mov r10d, dword [rax + rcx*4]
test r10d, r10d
js 0x1400fd573
mov r13, rbp
cmp r10d, 0x8000000
jae 0x1400fd55d
jmp 0x1400fd3c0
cmp rbp, rbx
jae 0x1400fd3c6
mov rax, qword [rdi + 0x20]
mov rdx, qword [rdi + 0x28]
nop dword [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 0x1400fd504
cmp ecx, 0x8000000
jae 0x1400fd504
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 0x1400fd4ee
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 0x1400fd500
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 0x1400fd511
add rbp, 4
cmp rbp, rbx
jb 0x1400fd450
jmp 0x1400fd3c6
inc rbp
mov r10d, esi
mov esi, ecx
mov r13, rbp
test r10d, r10d
jns 0x1400fd550
jmp 0x1400fd51b
add rbp, 2
mov r10d, ecx
mov r13, rbp
test r10d, r10d
jns 0x1400fd550
jmp 0x1400fd51b
mov r10d, esi
mov esi, ecx
test r10d, r10d
jns 0x1400fd550
cmp qword [rdi], 0
je 0x1400ff693
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 0x1400ff687
mov r10d, dword [rax + rcx*4]
test r10d, r10d
js 0x1400fd5c3
nop
cmp r10d, 0x8000000
jb 0x1400fd3c0
mov eax, r10d
mov ecx, eax
and ecx, 0x10000000
jne 0x1400fd3c0
jmp 0x1400fd7bc
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x48], r11
mov r15, r9
shl r8d, 8
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, esi
call fcn.140331b20
test eax, eax
jne 0x1400fe9a6
mov r10d, edx
mov r13, rbp
mov r9, r15
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x30]
cmp r10d, 0x8000000
jae 0x1400fd55d
jmp 0x1400fd3c0
mov qword [rsp + 0x30], r15
mov r15, r11
mov rbp, r9
shl r8d, 8
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, esi
call fcn.140331b20
test eax, eax
jne 0x1400feb4a
mov r10d, edx
mov r9, rbp
mov r11, r15
mov r15, qword [rsp + 0x30]
cmp r10d, 0x8000000
jae 0x1400fd55d
jmp 0x1400fd3c0
mov r15, qword [r9 + 0x10]
cmp rbx, r15
jae 0x1400fd66e
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 0x1400ff687
mov rax, qword [rdi + 0x20]
mov r8d, dword [rax + rcx*4]
test r8d, r8d
js 0x1400fe387
mov eax, r8d
test eax, 0x8000000
jne 0x1400fe3c9
test eax, 0x20000000
je 0x1400fd6b2
jmp 0x1400fdc9e
movzx eax, byte [r14 + 0x28f]
mov ecx, esi
and ecx, 0x7ffffff
add ecx, eax
inc ecx
mov rdx, qword [rdi + 0x28]
cmp rdx, rcx
jbe 0x1400ff726
mov r12, r15
mov rdx, qword [rdi + 0x20]
mov r8d, dword [rdx + rcx*4]
test r8d, r8d
js 0x1400fe3e9
xor eax, eax
test r8d, 0x8000000
jne 0x1400ff453
xor ecx, ecx
jmp 0x1400ff481
mov eax, dword [r9 + 4]
mov dword [rsp + 0x54], eax
mov al, 2
movzx ecx, al
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jb 0x1400fde35
jmp 0x1400ff6d1
mov rax, qword [r14 + 0x2b0]
mov qword [rsp + 0xa8], rax
mov esi, dword [rax + 0x17c]
test rbp, rbp
je 0x1400fd82e
lea rax, [rbp - 1]
cmp rax, qword [r9 + 0x10]
jae 0x1400fd82e
mov rcx, qword [r9 + 8]
movzx eax, byte [rcx + rax]
movzx r13d, al
mov eax, dword [r9 + 4]
mov dword [rsp + 0x88], 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 0x1400fe12f
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 0x1400fe12f
mov eax, 4
lea edx, [rax - 3]
cmp edx, 2
mov ecx, 2
cmovb ecx, edx
cmp ecx, 2
je 0x1400fec18
cmp ecx, 1
jne 0x1400fe9a6
test rbp, rbp
je 0x1400ff800
dec rbp
mov ecx, r13d
jmp 0x1400fe9ed
test eax, 0x8000000
jne 0x1400fdd60
test eax, 0x40000000
jne 0x1400fe113
test eax, 0x20000000
je 0x1400ff818
mov rcx, rdi
mov rdx, r13
call fcn.1400ff920
cmp r13, r15
jae 0x1400ff850
movzx ecx, byte [r12 + r13]
mov rdx, r13
call fcn.1400fb8f0
jmp 0x1400ff29c
cmp qword [r11 + 0x168], rsi
jbe 0x1400fddae
lea rax, [rsi + rsi*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jb 0x1400fd365
jmp 0x1400ff6d1
mov eax, dword [r9 + 4]
mov dword [rsp + 0x88], eax
mov al, 2
movzx ecx, al
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jb 0x1400fe148
jmp 0x1400ff6d1
movzx r12d, byte [r14 + rsi + 0x90]
movzx ecx, r12b
test r13d, r13d
je 0x1400fd870
cmp r13d, 1
jne 0x1400fdcae
add rcx, 6
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1400ff6d1
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400fe01c
mov esi, eax
cmp qword [rdi], 1
jne 0x1400fd8b3
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 0x1400fdc32
mov r13, qword [r9 + 8]
mov rax, qword [r9 + 0x10]
mov qword [rsp + 0x30], rax
mov rax, qword [r14 + 0x2b8]
and eax, 0x3f
mov qword [rsp + 0xb0], rax
xor r10d, r10d
jmp 0x1400fd902
mov r12, rbp
inc r12
mov rbp, r12
cmp r12, rbx
jae 0x1400fdccb
cmp esi, 0x7ffffff
jbe 0x1400fd970
cmp qword [rdi], 0
je 0x1400ff693
mov qword [rdi + 0x10], rbp
cmp rbp, qword [rsp + 0x30]
jae 0x1400ff6bd
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 0x1400ff687
mov rax, qword [rdi + 0x20]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400fdb6f
mov esi, eax
mov r12, rbp
cmp esi, 0x8000000
jae 0x1400fdac0
jmp 0x1400fd8f3
cmp rbp, rbx
jae 0x1400fd8f0
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 0x1400fda9c
cmp ecx, 0x8000000
jae 0x1400fda9c
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 0x1400fda37
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 0x1400fda98
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 0x1400fdb5c
add rbp, 4
cmp rbp, rbx
jb 0x1400fd990
jmp 0x1400fd8f0
inc rbp
mov r8d, esi
mov esi, ecx
mov r12, rbp
test r8d, r8d
jns 0x1400fdaa7
cmp qword [rdi], 0
je 0x1400ff693
mov ebp, r15d
mov r15, 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 0x1400ff687
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400fdbd7
mov r10, r15
mov esi, eax
mov r15d, ebp
cmp esi, 0x8000000
jae 0x1400fdac0
jmp 0x1400fd8f3
add rbp, 2
mov r8d, ecx
mov r12, rbp
test r8d, r8d
js 0x1400fda47
mov esi, r8d
cmp esi, 0x8000000
jb 0x1400fd8f3
nop word cs:[rax + rax]
mov eax, esi
mov ecx, eax
and ecx, 0x10000000
jne 0x1400fd8f3
test eax, 0x8000000
je 0x1400fdfb4
xor r15d, r15d
mov r10d, 1
cmp qword [r11 + 0x168], 1
je 0x1400fdb2c
mov eax, esi
and eax, 0x7ffffff
mov rcx, qword [rsp + 0xb0]
shr rax, cl
mov rdx, qword [rdi + 0x58]
cmp rax, rdx
jae 0x1400ff6dd
mov rcx, qword [rdi + 0x50]
shl eax, 4
mov rdx, qword [rcx + rax + 8]
test rdx, rdx
je 0x1400ff6ec
mov rax, qword [rcx + rax]
test byte [rax + 0x10], 2
jne 0x1400fdb36
mov qword [rsp + 0x48], r12
jmp 0x1400fd8f3
cmp rdx, 0xd
jb 0x1400ff743
add rdx, 0xfffffffffffffff3
cmp rdx, 3
jbe 0x1400ff732
mov r15d, dword [rax + 0x1d]
mov qword [rsp + 0x48], r12
jmp 0x1400fd8f3
mov r8d, esi
mov esi, ecx
test r8d, r8d
jns 0x1400fdaa7
jmp 0x1400fda47
mov dword [rsp + 0x54], r15d
mov qword [rsp + 0xa0], r10
mov qword [rsp + 0xb8], r11
mov r15, r9
shl r8d, 8
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, esi
call fcn.140331b20
test eax, eax
jne 0x1400fe9a6
mov esi, edx
mov r12, rbp
mov r9, r15
mov r11, qword [rsp + 0xb8]
mov r10, qword [rsp + 0xa0]
mov r15d, dword [rsp + 0x54]
cmp esi, 0x8000000
jae 0x1400fdac0
jmp 0x1400fd8f3
mov qword [rsp + 0xb8], r11
mov qword [rsp + 0xa0], r9
shl r8d, 8
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, esi
call fcn.140331b20
test eax, eax
jne 0x1400fe415
mov esi, edx
mov r9, qword [rsp + 0xa0]
mov r11, qword [rsp + 0xb8]
mov r10, r15
mov r15d, ebp
cmp esi, 0x8000000
jae 0x1400fdac0
jmp 0x1400fd8f3
mov r13, qword [r9 + 0x10]
xor r10d, r10d
cmp rbx, r13
jae 0x1400fdcd9
mov ebp, r15d
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 0x1400ff687
mov rax, qword [rdi + 0x20]
mov r8d, dword [rax + rcx*4]
test r8d, r8d
js 0x1400fea5a
mov eax, r8d
test eax, 0x8000000
jne 0x1400fea9c
test eax, 0x20000000
mov rdx, qword [rsp + 0x48]
je 0x1400feadb
mov ecx, r15d
mov rdx, rbx
call fcn.1400fb8f0
jmp 0x1400ff29c
test byte [r14 + 0x81], 1
mov esi, r15d
jne 0x1400fdd35
mov r15, rsi
shl r15, 0x20
or r15, 2
jmp 0x1400fe04f
mov r13, qword [rsp + 0x30]
cmp rbx, r13
jb 0x1400fdc42
movzx eax, byte [r14 + 0x28f]
mov ecx, esi
and ecx, 0x7ffffff
add ecx, eax
inc ecx
mov rdx, qword [rdi + 0x28]
cmp rdx, rcx
jbe 0x1400ff726
mov ebp, r15d
mov rdx, qword [rdi + 0x20]
mov r8d, dword [rdx + rcx*4]
test r8d, r8d
js 0x1400feb1b
test r8d, 0x8000000
mov rdx, qword [rsp + 0x48]
je 0x1400feadb
cmp qword [r11 + 0x168], 1
jne 0x1400feab6
xor ebp, ebp
jmp 0x1400fead2
cmp qword [r11 + 0x168], rsi
jbe 0x1400fdff6
lea rax, [rsi + rsi*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jb 0x1400fd87d
jmp 0x1400ff6d1
xor esi, esi
cmp qword [r11 + 0x168], 1
je 0x1400fdd8b
mov rcx, r14
mov rdx, rdi
mov r8d, r10d
call fcn.14010b9c0
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
xor r8d, r8d
call fcn.1400dfaf0
mov esi, eax
mov rcx, rdi
mov rdx, r13
call fcn.1400ff920
mov rax, qword [rsp + 0x38]
mov qword [rax], 1
mov qword [rax + 8], r13
mov dword [rax + 0x10], esi
jmp 0x1400ff4bc
mov rcx, r14
mov rsi, r9
mov qword [rsp + 0x30], rdi
mov rdi, r11
call fcn.14010ba10
mov r11, rdi
mov rdi, qword [rsp + 0x30]
mov r9, rsi
test eax, eax
jns 0x1400fd374
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, r13d
mov r8d, r15d
mov rsi, r9
mov r9d, r12d
mov r15, rdi
mov rdi, r11
call fcn.140332f80
mov r11, rdi
mov rdi, r15
mov r9, rsi
mov r15, rax
mov rsi, rax
shr rsi, 0x20
cmp r15d, 5
je 0x1400fd376
jmp 0x1400fe059
movzx eax, byte [r14 + rsi + 0x90]
movzx ecx, al
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1400ff6d1
mov rdx, qword [rdi + 0x38]
mov esi, dword [rdx + rcx*4]
test esi, esi
js 0x1400fe41d
mov qword [rsp + 0x88], r15
mov r15, qword [r9 + 8]
mov r9, qword [r9 + 0x10]
mov rax, qword [r12]
mov rcx, qword [r12 + 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 + 0x100]
mov qword [rsp + 0xb8], rdx
mov r8, r15
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x48], r10
call r10
cmp qword [rsp + 0x100], 0
je 0x1400fea05
mov r13, qword [rsp + 0x108]
cmp dword [rsp + 0xa0], 0
mov r9, qword [rsp + 0x30]
je 0x1400fe4a4
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r9
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x78], rbx
mov rax, qword [rsp + 0xb0]
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0x5c], eax
mov byte [rsp + 0x80], 1
lea rcx, [rsp + 0x58]
mov rdx, r13
mov r8, rbx
call fcn.1400ff970
mov r11, qword [rsp + 0x70]
test r11, r11
je 0x1400fe0fd
lea rax, [r11 - 1]
cmp rax, qword [rsp + 0x68]
mov r9, qword [rsp + 0x30]
jae 0x1400fe2df
mov rcx, qword [rsp + 0x60]
movzx eax, byte [rcx + rax]
movzx esi, al
mov ebp, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x5c]
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1400fe331
lea rax, [r14 + 0x290]
mov edx, esi
shr edx, 3
and edx, 0xfffffff0
mov r12d, r8d
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
mov r8d, r12d
je 0x1400fe331
mov eax, 4
jmp 0x1400ff3d9
test eax, 0x40000000
jne 0x1400fe2ed
test eax, 0x20000000
je 0x1400ff818
mov rcx, rdi
mov rdx, r12
call fcn.1400ff920
mov rdx, qword [rsp + 0x30]
cmp r12, rdx
jae 0x1400ff862
movzx ecx, byte [r13 + r12]
mov rdx, r12
call fcn.1400fb8f0
jmp 0x1400ff29c
mov rcx, r14
mov qword [rsp + 0xa0], r9
mov rsi, r11
call fcn.14010ba10
mov r11, rsi
mov r9, qword [rsp + 0xa0]
test eax, eax
jns 0x1400fd88c
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, r13d
mov r8d, r15d
mov rsi, r9
mov r9d, r12d
mov r15, r11
call fcn.140332f80
mov r11, r15
mov r9, rsi
mov r15, rax
mov rsi, rax
shr rsi, 0x20
cmp r15d, 5
je 0x1400fd88e
lea ecx, [r15 - 3]
cmp ecx, 2
mov eax, 2
cmovb eax, ecx
cmp eax, 2
je 0x1400fe0aa
cmp eax, 1
jne 0x1400fe0d5
test rbp, rbp
je 0x1400ff800
movzx eax, byte [0x14043f240]
mov edx, 0x10
xor ecx, ecx
call fcn.1401d3670
test rax, rax
je 0x1400ff766
dec rbp
mov byte [rax], 0
mov byte [rax + 1], sil
mov qword [rax + 8], rbp
jmp 0x1400ff29c
movzx eax, byte [0x14043f240]
mov edx, 0x10
xor ecx, ecx
call fcn.1401d3670
test rax, rax
je 0x1400ff766
mov byte [rax], 3
mov dword [rax + 4], r15d
mov dword [rax + 8], esi
jmp 0x1400ff29c
movzx eax, byte [0x14043f240]
mov edx, 0x10
xor ecx, ecx
call fcn.1401d3670
test rax, rax
je 0x1400ff766
mov byte [rax], 1
mov qword [rax + 8], rbp
jmp 0x1400ff29c
mov ebp, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x5c]
mov r12b, 2
mov r9, qword [rsp + 0x30]
jmp 0x1400fe33a
mov rcx, rdi
mov rdx, r13
call fcn.1400ff920
mov rax, qword [rsp + 0x38]
mov qword [rax], 0
jmp 0x1400ff4bc
movzx eax, byte [r14 + r13 + 0x90]
movzx ecx, al
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1400ff6d1
mov rdx, qword [rdi + 0x38]
mov r13d, dword [rdx + rcx*4]
test r13d, r13d
js 0x1400febd6
mov r8, qword [r9 + 8]
mov r9, qword [r9 + 0x10]
mov rax, qword [r12]
mov rcx, qword [r12 + 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 + 0x100]
mov qword [rsp + 0xa0], rdx
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x30], r9
mov qword [rsp + 0xb8], r10
call r10
cmp qword [rsp + 0x100], 0
je 0x1400fea05
mov r15, qword [rsp + 0x108]
mov dword [rsp + 0x54], esi
test esi, esi
mov r9, qword [rsp + 0x30]
mov r11, qword [rsp + 0x48]
je 0x1400fec6e
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x68], r9
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x78], rbx
mov rax, qword [rsp + 0xb0]
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x88]
mov dword [rsp + 0x5c], eax
mov byte [rsp + 0x80], 0
lea rcx, [rsp + 0x58]
mov rdx, r15
mov r8, rbx
call fcn.1400ff970
mov r12, qword [rsp + 0x70]
test r12, r12
je 0x1400fe315
lea rax, [r12 - 1]
cmp rax, qword [rsp + 0x68]
mov r9, qword [rsp + 0x30]
mov r11, qword [rsp + 0x48]
jae 0x1400fe375
mov rcx, qword [rsp + 0x60]
movzx eax, byte [rcx + rax]
movzx r13d, al
mov r10d, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x5c]
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1400fea14
lea rsi, [r14 + 0x290]
mov edx, r13d
shr edx, 3
and edx, 0xfffffff0
mov dword [rsp + 0x98], r10d
mov eax, 1
xor r10d, r10d
mov ecx, r13d
shld r10, rax, cl
shl rax, cl
xor ecx, ecx
test r13b, 0x40
cmovne r10, rax
cmovne rax, rcx
and r10, qword [rsi + rdx + 8]
and rax, qword [rsi + rdx]
or rax, r10
mov r10d, dword [rsp + 0x98]
je 0x1400fea14
mov eax, 4
jmp 0x1400ff5aa
mov ebp, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x5c]
mov r12b, 2
jmp 0x1400fe33a
mov rcx, rdi
mov rdx, r12
mov rsi, r10
call fcn.1400ff920
mov rax, qword [rsp + 0x38]
mov qword [rax], rsi
mov rcx, qword [rsp + 0x48]
mov qword [rax + 8], rcx
mov dword [rax + 0x10], r15d
jmp 0x1400ff4bc
mov r10d, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x5c]
mov sil, 2
mov r9, qword [rsp + 0x30]
mov r11, qword [rsp + 0x48]
jmp 0x1400fea1d
movzx r12d, byte [r14 + rsi + 0x90]
movzx ecx, r12b
test ebp, ebp
je 0x1400fe486
cmp ebp, 2
jne 0x1400fe36c
test byte [r14 + 0x81], 1
mov esi, r8d
jne 0x1400fe465
mov rax, rsi
shl rax, 0x20
or rax, 2
jmp 0x1400ff3cd
add rcx, 6
jmp 0x1400fe486
mov r10d, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x5c]
mov sil, 2
jmp 0x1400fea1d
mov r12, rdi
mov rdi, r11
mov r8d, r15d
shl r8d, 8
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], r12
lea rcx, [rsp + 0x58]
mov edx, esi
call fcn.140331b20
test eax, eax
jne 0x1400ff277
mov r8d, edx
mov r11, rdi
mov rdi, r12
mov eax, r8d
test eax, 0x8000000
je 0x1400fd662
cmp qword [r11 + 0x168], 1
mov r12, rbx
jne 0x1400ff462
xor eax, eax
mov ecx, 1
mov r12, rbx
jmp 0x1400ff481
mov r15, r11
inc eax
shl eax, 0x10
or eax, 1
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, esi
mov r8d, eax
call fcn.140331b20
test eax, eax
je 0x1400ff43e
mov rcx, r12
jmp 0x1400ff297
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, r13d
mov r8d, dword [rsp + 0x54]
mov rsi, r9
mov r9d, eax
call fcn.140332f80
mov r9, rsi
mov rsi, rax
shr rsi, 0x20
cmp eax, 5
jne 0x1400fd308
jmp 0x1400fde44
mov ecx, eax
mov edx, esi
call fcn.1400fb980
jmp 0x1400ff29c
mov rax, qword [rsp + 0x88]
cmp qword [rax + 0x168], rsi
jbe 0x1400ff36e
lea rax, [rsi + rsi*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1400ff6d1
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400ff399
mov esi, eax
cmp qword [rdi], 1
jne 0x1400fe4c9
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], r13
mov qword [rdi + 0x10], r13
cmp r13, rbx
jae 0x1400fe931
lea rax, [rbx + 1]
mov qword [rsp + 0xa8], rax
lea r12, [r14 + 0x290]
movzx eax, byte [r14 + 0x81]
mov byte [rsp + 0xc4], al
mov ecx, dword [rsp + 0x54]
lea rax, [rcx + rcx*2]
lea rax, [rax*2 + 0xc]
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x98], rcx
shl rcx, 0x20
or rcx, 2
mov qword [rsp + 0xe0], rcx
jmp 0x1400fe544
mov r13, rbp
inc r13
cmp r13, rbx
jae 0x1400fe931
cmp esi, 0x7ffffff
jbe 0x1400fe5aa
cmp qword [rdi], 0
je 0x1400ff693
mov qword [rdi + 0x10], r13
cmp r13, r9
jae 0x1400ff714
movzx r8d, byte [r15 + r13]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, esi
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x28]
cmp rcx, rdx
jae 0x1400ff687
mov rax, qword [rdi + 0x20]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400fe6e7
mov esi, eax
mov rbp, r13
cmp esi, 0x7ffffff
jbe 0x1400fe535
jmp 0x1400fe71f
cmp r13, rbx
jae 0x1400fe538
mov rax, qword [rdi + 0x20]
mov rdx, qword [rdi + 0x28]
nop word [rax + rax]
movzx ecx, byte [r15 + r13]
movzx ecx, byte [r14 + rcx + 0x190]
mov r8d, esi
add r8, rcx
mov ecx, dword [rax + r8*4]
lea rbp, [r13 + 3]
cmp rbp, rbx
jae 0x1400fe6bf
cmp ecx, 0x8000000
jae 0x1400fe6bf
movzx r8d, byte [r15 + r13 + 1]
movzx r8d, byte [r14 + r8 + 0x190]
add r8, rcx
mov esi, dword [rax + r8*4]
cmp rsi, 0x7ffffff
ja 0x1400fe666
movzx ecx, byte [r15 + r13 + 2]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, rsi
mov ecx, dword [rax + rcx*4]
cmp rcx, 0x7ffffff
ja 0x1400fe6bb
movzx r8d, byte [r15 + r13 + 3]
movzx r8d, byte [r14 + r8 + 0x190]
add r8, rcx
mov esi, dword [rax + r8*4]
cmp esi, 0x7ffffff
ja 0x1400fe6db
add r13, 4
cmp r13, rbx
jb 0x1400fe5c0
jmp 0x1400fe538
inc r13
mov r8d, esi
mov esi, ecx
mov rbp, r13
test r8d, r8d
jns 0x1400fe6ca
cmp qword [rdi], 0
je 0x1400ff693
mov qword [rdi + 0x10], rbp
movzx r8d, byte [r15 + rbp]
movzx r10d, byte [r14 + r8 + 0x190]
mov ecx, esi
add rcx, r10
cmp rcx, rdx
jae 0x1400ff687
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400fe8f7
mov esi, eax
cmp esi, 0x7ffffff
jbe 0x1400fe535
jmp 0x1400fe71f
add r13, 2
mov r8d, ecx
mov rbp, r13
test r8d, r8d
js 0x1400fe676
mov esi, r8d
cmp esi, 0x7ffffff
jbe 0x1400fe535
jmp 0x1400fe71f
mov r8d, esi
mov esi, ecx
test r8d, r8d
jns 0x1400fe6ca
jmp 0x1400fe676
shl r8d, 8
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, esi
call fcn.140331b20
test eax, eax
jne 0x1400feb4a
mov esi, edx
mov rbp, r13
mov r9, qword [rsp + 0x30]
cmp esi, 0x7ffffff
jbe 0x1400fe535
mov eax, esi
test eax, 0x10000000
je 0x1400fe9ae
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbp
lea rcx, [rsp + 0xe8]
mov rdx, qword [rsp + 0xb8]
mov r8, r15
call qword [rsp + 0x48]
cmp qword [rsp + 0xe8], 0
je 0x1400fe9fa
mov r13, qword [rsp + 0xf0]
cmp r13, rbp
jbe 0x1400fe81c
cmp dword [rsp + 0xa0], 0
mov r9, qword [rsp + 0x30]
je 0x1400fe53b
mov qword [rsp + 0x128], r13
mov qword [rsp + 0x130], rbx
cmp r9, rbx
jb 0x1400ff775
cmp qword [rsp + 0xa8], r13
jb 0x1400ff775
lea rax, [r13 - 1]
cmp rax, r9
jae 0x1400fe829
movzx eax, byte [r15 + rax]
movzx esi, al
mov rax, qword [r12 + 8]
or rax, qword [r12 + 0x18]
mov rcx, qword [r12]
or rcx, qword [r12 + 0x10]
or rcx, rax
je 0x1400fe811
xor eax, eax
mov ecx, esi
mov edx, 1
shld rax, rdx, cl
mov edx, esi
shr edx, 3
mov r8d, 1
shl r8, cl
and edx, 0xfffffff0
test sil, 0x40
cmovne rax, r8
mov ecx, 0
cmovne r8, rcx
and rax, qword [r12 + rdx + 8]
and r8, qword [r12 + rdx]
or r8, rax
jne 0x1400ff619
movzx ebp, byte [r14 + rsi + 0x90]
jmp 0x1400fe82c
mov r13, rbp
mov r9, qword [rsp + 0x30]
jmp 0x1400fe538
mov bpl, 2
movzx ecx, bpl
mov rax, qword [rsp + 0xb0]
test eax, eax
je 0x1400fe886
cmp eax, 2
jne 0x1400fe882
mov rsi, qword [rsp + 0x98]
mov rax, qword [rsp + 0xe0]
test byte [rsp + 0xc4], 1
je 0x1400fe8e6
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x98]
cmp qword [rax + 0x168], rdx
jbe 0x1400fe8a5
add rcx, qword [rsp + 0xd8]
jmp 0x1400fe886
add rcx, 6
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1400ff6d1
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400fe8b6
mov esi, eax
jmp 0x1400fe53b
mov rcx, r14
call fcn.14010ba10
mov r9, qword [rsp + 0x30]
test eax, eax
jns 0x1400fe89e
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov rdx, qword [rsp + 0xb0]
mov r8d, dword [rsp + 0x54]
mov r9d, ebp
call fcn.140332f80
mov r9, qword [rsp + 0x30]
mov rsi, rax
shr rsi, 0x20
mov eax, eax
cmp rax, 5
je 0x1400fe53b
jmp 0x1400ff61e
shl r8d, 8
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, esi
call fcn.140331b20
test eax, eax
jne 0x1400fe9a6
mov esi, edx
mov r9, qword [rsp + 0x30]
cmp esi, 0x7ffffff
jbe 0x1400fe535
jmp 0x1400fe71f
cmp rbx, r9
jae 0x1400fe977
movzx ebp, byte [r15 + rbx]
mov rcx, r14
mov rdx, rdi
mov r8d, esi
mov r9d, ebp
call fcn.1400ffaf0
test eax, eax
jne 0x1400ff277
mov r8d, edx
mov eax, edx
test eax, 0x8000000
jne 0x1400feb52
test eax, 0x20000000
jne 0x1400ff533
xor r15d, r15d
jmp 0x1400febb2
mov rcx, r14
mov rdx, rdi
mov r8d, esi
call fcn.1400ff8a0
test eax, eax
jne 0x1400ff292
mov r8d, edx
xor esi, esi
test edx, 0x8000000
jne 0x1400feb78
xor r15d, r15d
jmp 0x1400febb2
mov rcx, rbp
jmp 0x1400ff297
test eax, 0x8000000
jne 0x1400ff3eb
test eax, 0x40000000
jne 0x1400ff5f2
test eax, 0x20000000
je 0x1400ff818
mov rcx, rdi
mov rdx, rbp
call fcn.1400ff920
mov rdx, qword [rsp + 0x30]
cmp rbp, rdx
jae 0x1400ff871
movzx ecx, byte [r15 + rbp]
mov rdx, rbp
call fcn.1400fb8f0
jmp 0x1400ff29c
mov rcx, rdi
mov rdx, rbx
call fcn.1400ff920
xor eax, eax
mov rcx, qword [rsp + 0x38]
mov qword [rcx], rax
jmp 0x1400ff4bc
movzx esi, byte [r14 + r13 + 0x90]
movzx ecx, sil
test r10d, r10d
je 0x1400fec4f
cmp r10d, 2
jne 0x1400fea51
test byte [r14 + 0x81], 1
mov r13d, r8d
jne 0x1400fec27
mov rax, r13
shl rax, 0x20
or rax, 2
jmp 0x1400ff59e
add rcx, 6
jmp 0x1400fec4f
mov r13, r10
mov r12, r11
mov r8d, r15d
shl r8d, 8
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, esi
call fcn.140331b20
test eax, eax
jne 0x1400ff277
mov r8d, edx
mov r11, r12
mov r10, r13
mov eax, r8d
test eax, 0x8000000
je 0x1400fdc8e
cmp qword [r11 + 0x168], 1
mov r13, rbx
jne 0x1400feab6
xor ebp, ebp
mov r10d, 1
mov rdx, rbx
jmp 0x1400feadb
mov rcx, r14
mov rdx, rdi
call fcn.14010b9c0
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
xor r8d, r8d
call fcn.1400dfaf0
mov ebp, eax
mov r10d, 1
mov rdx, r13
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1400ff6fc
mov rcx, rbx
sub rcx, rax
neg rcx
sub rbx, rax
cmovb rbx, rcx
add qword [rdi + 0x158], rbx
mov rax, qword [rsp + 0x38]
mov qword [rax], r10
mov qword [rax + 8], rdx
mov dword [rax + 0x10], ebp
jmp 0x1400ff4bc
mov r12, r10
mov r15, r11
inc eax
shl eax, 0x10
or eax, 1
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, esi
mov r8d, eax
call fcn.140331b20
test eax, eax
je 0x1400ff5d2
mov rcx, r13
jmp 0x1400ff297
mov rax, qword [rsp + 0x88]
cmp qword [rax + 0x168], 1
mov qword [rsp + 0x30], rbx
jne 0x1400feb90
mov r15d, 1
xor esi, esi
mov qword [rsp + 0x30], rbx
jmp 0x1400febb2
mov r15d, 1
mov rax, qword [rsp + 0x88]
cmp qword [rax + 0x168], 1
je 0x1400febb2
mov rcx, r14
mov rdx, rdi
call fcn.14010b9c0
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
xor r8d, r8d
call fcn.1400dfaf0
mov esi, eax
mov r15d, 1
mov rcx, rdi
mov rdx, rbx
call fcn.1400ff920
mov rax, qword [rsp + 0x38]
mov qword [rax], r15
mov rcx, qword [rsp + 0x30]
mov qword [rax + 8], rcx
mov dword [rax + 0x10], esi
jmp 0x1400ff4bc
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov rdx, qword [rsp + 0xb0]
mov r8d, dword [rsp + 0x88]
mov r15, r9
mov r9d, eax
call fcn.140332f80
mov r9, r15
mov r13, rax
shr r13, 0x20
cmp eax, 5
jne 0x1400fd788
jmp 0x1400fe159
mov ecx, eax
mov edx, r13d
call fcn.1400fb980
jmp 0x1400ff29c
mov rax, qword [rsp + 0xa8]
cmp qword [rax + 0x168], r13
jbe 0x1400ff53a
lea rax, [r13*2]
add rax, r13
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1400ff6d1
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400ff56a
mov r13d, eax
cmp qword [rdi], 1
jne 0x1400fec93
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], r15
mov qword [rdi + 0x10], r15
cmp r15, rbx
jae 0x1400ff24e
lea rsi, [r14 + 0x290]
movzx eax, byte [r14 + 0x81]
mov byte [rsp + 0xe0], al
xor eax, eax
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd8], rsi
jmp 0x1400fece4
mov r15, rsi
inc r15
cmp r15, rbx
jae 0x1400ff258
mov rsi, r15
jmp 0x1400fed2b
mov rcx, r14
mov r13, r12
mov dword [rsp + 0x98], r8d
mov r12d, r10d
call fcn.14010ba10
mov r10d, r12d
mov r8d, dword [rsp + 0x98]
mov r12, r13
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x30]
test eax, eax
js 0x1400ff0c2
mov r13d, eax
cmp rsi, rbx
jae 0x1400ff258
cmp r13d, 0x7ffffff
jbe 0x1400fed99
cmp qword [rdi], 0
je 0x1400ff693
mov qword [rdi + 0x10], rsi
cmp rsi, r9
jae 0x1400ff754
movzx r8d, byte [r11 + 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 0x1400ff687
mov rax, qword [rdi + 0x20]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400ff155
mov r13d, eax
mov r15, rsi
cmp r13d, 0x7ffffff
ja 0x1400feece
jmp 0x1400fecd8
cmp rsi, rbx
jae 0x1400fecd5
mov rax, qword [rdi + 0x20]
mov rdx, qword [rdi + 0x28]
nop word [rax + rax]
movzx ecx, byte [r11 + 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 0x1400feeb3
cmp ecx, 0x8000000
jae 0x1400feeb3
movzx r8d, byte [r11 + rsi + 1]
movzx r8d, byte [r14 + r8 + 0x190]
add r8, rcx
mov r13d, dword [rax + r8*4]
cmp r13, 0x7ffffff
ja 0x1400fee57
movzx ecx, byte [r11 + rsi + 2]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, r13
mov ecx, dword [rax + rcx*4]
cmp rcx, 0x7ffffff
ja 0x1400feeaf
movzx r8d, byte [r11 + rsi + 3]
movzx r8d, byte [r14 + r8 + 0x190]
add r8, rcx
mov r13d, dword [rax + r8*4]
cmp r13d, 0x7ffffff
ja 0x1400ff107
add rsi, 4
cmp rsi, rbx
jb 0x1400fedb0
jmp 0x1400fecd5
inc rsi
mov r8d, r13d
mov r13d, ecx
mov r15, rsi
test r8d, r8d
jns 0x1400feebe
cmp qword [rdi], 0
je 0x1400ff693
mov qword [rdi + 0x10], r15
movzx r8d, byte [r11 + r15]
movzx r10d, byte [r14 + r8 + 0x190]
mov ecx, r13d
add rcx, r10
cmp rcx, rdx
jae 0x1400ff687
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400ff180
mov r13d, eax
cmp r13d, 0x7ffffff
ja 0x1400feece
jmp 0x1400fecd8
add rsi, 2
mov r8d, ecx
mov r15, rsi
test r8d, r8d
js 0x1400fee68
mov r13d, r8d
cmp r13d, 0x7ffffff
jbe 0x1400fecd8
mov eax, r13d
test eax, 0x10000000
je 0x1400ff1c2
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r15
lea rcx, [rsp + 0x100]
mov rdx, qword [rsp + 0xa0]
mov r8, r11
call qword [rsp + 0xb8]
cmp qword [rsp + 0x100], 0
je 0x1400ff2b1
mov rsi, qword [rsp + 0x108]
cmp rsi, r15
jbe 0x1400ff204
cmp dword [rsp + 0x54], 0
mov r9, qword [rsp + 0x30]
mov r11, qword [rsp + 0x48]
je 0x1400fed22
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x68], r9
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x78], rbx
mov rax, qword [rsp + 0xb0]
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x88]
mov dword [rsp + 0x5c], eax
mov byte [rsp + 0x80], 0
lea rcx, [rsp + 0x58]
mov rdx, rsi
mov r8, rbx
call fcn.1400ff970
mov r12, qword [rsp + 0x70]
test r12, r12
je 0x1400ff046
lea rax, [r12 - 1]
cmp rax, qword [rsp + 0x68]
mov r9, qword [rsp + 0x30]
mov r11, qword [rsp + 0x48]
jae 0x1400ff068
mov rcx, qword [rsp + 0x60]
movzx eax, byte [rcx + rax]
movzx r13d, al
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0xc4], eax
mov eax, dword [rsp + 0x5c]
mov dword [rsp + 0x98], eax
mov r10, qword [rsp + 0xd8]
mov rax, qword [r10 + 8]
or rax, qword [r10 + 0x18]
mov rcx, qword [r10]
or rcx, qword [r10 + 0x10]
or rcx, rax
je 0x1400ff022
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
and rax, qword [r10 + rdx + 8]
and r8, qword [r10 + rdx]
or r8, rax
jne 0x1400ff5fd
movzx r15d, byte [r14 + r13 + 0x90]
mov r10d, dword [rsp + 0xc4]
mov r8d, dword [rsp + 0x98]
movzx ecx, r15b
test r10d, r10d
jne 0x1400ff07e
jmp 0x1400ff0a6
mov r10d, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x5c]
mov r15b, 2
mov r9, qword [rsp + 0x30]
mov r11, qword [rsp + 0x48]
movzx ecx, r15b
test r10d, r10d
jne 0x1400ff07e
jmp 0x1400ff0a6
mov r10d, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x5c]
mov r15b, 2
movzx ecx, r15b
test r10d, r10d
je 0x1400ff0a6
cmp r10d, 2
jne 0x1400ff0a2
mov r13d, r8d
test byte [rsp + 0xe0], 1
jne 0x1400ff11b
mov rax, r13
shl rax, 0x20
or rax, 2
jmp 0x1400ff0f6
add rcx, 6
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x1400ff6d1
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
jns 0x1400fed1f
mov qword [rsp + 0xe8], r14
mov qword [rsp + 0xf0], rdi
lea rcx, [rsp + 0xe8]
mov edx, r10d
mov r9d, r15d
call fcn.140332f80
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x30]
mov r13, rax
shr r13, 0x20
mov eax, eax
cmp rax, 5
je 0x1400fed22
jmp 0x1400ff602
mov r8d, r13d
mov r13d, ecx
test r8d, r8d
jns 0x1400feebe
jmp 0x1400fee68
mov rax, qword [rsp + 0xa8]
cmp qword [rax + 0x168], r13
jbe 0x1400fece9
lea rax, [r13*2]
add rax, r13
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jb 0x1400ff0b3
jmp 0x1400ff6d1
shl r8d, 8
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, r13d
call fcn.140331b20
test eax, eax
jne 0x1400ff62d
mov r13d, edx
mov r15, rsi
jmp 0x1400ff1a6
shl r8d, 8
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0x58]
mov edx, r13d
call fcn.140331b20
test eax, eax
jne 0x1400ff67f
mov r13d, edx
mov r9, qword [rsp + 0x30]
mov r11, qword [rsp + 0x48]
cmp r13d, 0x7ffffff
ja 0x1400feece
jmp 0x1400fecd8
test eax, 0x8000000
je 0x1400ff635
mov eax, 1
mov qword [rsp + 0xc8], rax
mov dword [rsp + 0x94], 0
mov rax, qword [rsp + 0xa8]
cmp qword [rax + 0x168], 1
jne 0x1400ff213
mov qword [rsp + 0xd0], r15
jmp 0x1400fecd8
mov r9, qword [rsp + 0x30]
mov r11, qword [rsp + 0x48]
jmp 0x1400fecd8
mov rcx, r14
mov rdx, rdi
mov r8d, r13d
call fcn.14010b9c0
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
xor r8d, r8d
call fcn.1400dfaf0
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x30]
mov dword [rsp + 0x94], eax
mov qword [rsp + 0xd0], r15
jmp 0x1400fecd8
xor eax, eax
mov qword [rsp + 0xc8], rax
cmp rbx, r9
jae 0x1400ff27c
movzx esi, byte [r11 + rbx]
mov rcx, r14
mov rdx, rdi
mov r8d, r13d
mov r9d, esi
call fcn.1400ffaf0
test eax, eax
je 0x1400ff2e7
mov rcx, rbx
jmp 0x1400ff297
mov rcx, r14
mov rdx, rdi
mov r8d, r13d
call fcn.1400ff8a0
test eax, eax
je 0x1400ff320
mov rcx, qword [rsp + 0x30]
call fcn.1400fb940
mov rcx, qword [rsp + 0x38]
mov qword [rcx + 8], rax
mov qword [rcx], 2
jmp 0x1400ff4bc
mov rcx, rdi
mov rdx, rbx
call fcn.1400ff920
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xc8]
mov qword [rax], rcx
mov rcx, qword [rsp + 0xd0]
mov qword [rax + 8], rcx
mov ecx, dword [rsp + 0x94]
mov dword [rax + 0x10], ecx
jmp 0x1400ff4bc
mov r8d, edx
mov eax, edx
test eax, 0x8000000
jne 0x1400ff4d0
test eax, 0x20000000
mov r15, qword [rsp + 0xc8]
mov ebp, dword [rsp + 0x94]
mov r13, qword [rsp + 0xd0]
je 0x1400ff517
mov ecx, esi
jmp 0x1400fdca1
mov r8d, edx
test edx, 0x8000000
mov r12, qword [rsp + 0x30]
mov r15, qword [rsp + 0xc8]
mov ebp, dword [rsp + 0x94]
mov r13, qword [rsp + 0xd0]
je 0x1400ff517
mov rax, qword [rsp + 0xa8]
cmp qword [rax + 0x168], 1
jne 0x1400ff4f2
mov r15d, 1
xor ebp, ebp
jmp 0x1400ff514
mov rcx, r14
mov rsi, r11
mov dword [rsp + 0xa8], r8d
call fcn.14010ba10
mov r8d, dword [rsp + 0xa8]
mov r11, rsi
mov r9, qword [rsp + 0x30]
test eax, eax
jns 0x1400fe4a2
mov qword [rsp + 0xe8], r14
mov qword [rsp + 0xf0], rdi
lea rcx, [rsp + 0xe8]
mov edx, ebp
mov r9d, r12d
mov rsi, r11
call fcn.140332f80
mov r11, rsi
mov r9, qword [rsp + 0x30]
mov rsi, rax
shr rsi, 0x20
mov eax, eax
cmp rax, 5
je 0x1400fe4a4
shl rsi, 0x20
or rsi, rax
mov rcx, r11
mov rdx, rsi
jmp 0x1400ff5b7
xor ebx, ebx
mov rax, qword [rsp + 0x88]
cmp qword [rax + 0x168], 1
je 0x1400ff41e
mov rcx, r14
mov rdx, rdi
mov r8d, esi
call fcn.14010b9c0
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
xor r8d, r8d
call fcn.1400dfaf0
mov ebx, eax
mov rcx, rdi
mov rdx, rbp
call fcn.1400ff920
mov rax, qword [rsp + 0x38]
mov qword [rax], 1
mov qword [rax + 8], rbp
mov dword [rax + 0x10], ebx
jmp 0x1400ff4bc
mov r8d, edx
mov r11, r15
xor eax, eax
test r8d, 0x8000000
je 0x1400fd6b2
mov ecx, 1
cmp qword [r11 + 0x168], 1
je 0x1400ff481
mov rcx, r14
mov rdx, rdi
call fcn.14010b9c0
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
xor r8d, r8d
call fcn.1400dfaf0
mov ecx, 1
mov rdx, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1400ff6fc
mov r8, rbx
sub r8, rdx
neg r8
sub rbx, rdx
cmovb rbx, r8
add qword [rdi + 0x158], rbx
mov rdx, qword [rsp + 0x38]
mov qword [rdx], rcx
mov qword [rdx + 8], r12
mov dword [rdx + 0x10], eax
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0xa8]
cmp qword [rax + 0x168], 1
mov r12, rbx
jne 0x1400ff4f2
mov r15d, 1
xor ebp, ebp
mov r13, rbx
jmp 0x1400ff517
mov rcx, r14
mov rdx, rdi
call fcn.14010b9c0
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
xor r8d, r8d
call fcn.1400dfaf0
mov ebp, eax
mov r15d, 1
mov r13, r12
mov rcx, rdi
mov rdx, rbx
call fcn.1400ff920
mov rax, qword [rsp + 0x38]
mov qword [rax], r15
mov qword [rax + 8], r13
mov dword [rax + 0x10], ebp
jmp 0x1400ff4bc
mov ecx, ebp
jmp 0x1400fdca1
mov rcx, r14
mov dword [rsp + 0x98], r10d
mov r13d, r8d
call fcn.14010ba10
mov r8d, r13d
mov r10d, dword [rsp + 0x98]
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x30]
test eax, eax
jns 0x1400fec6b
mov qword [rsp + 0xe8], r14
mov qword [rsp + 0xf0], rdi
lea rcx, [rsp + 0xe8]
mov edx, r10d
mov r9d, esi
call fcn.140332f80
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x30]
mov r13, rax
shr r13, 0x20
mov eax, eax
cmp rax, 5
je 0x1400fec6e
shl r13, 0x20
or r13, rax
mov rcx, r12
mov rdx, r13
call fcn.1400ffa20
mov rcx, qword [rsp + 0x38]
mov qword [rcx + 8], rax
mov eax, 2
mov qword [rcx], rax
jmp 0x1400ff4bc
mov r8d, edx
mov r11, r15
mov r10, r12
test r8d, 0x8000000
mov rdx, qword [rsp + 0x48]
jne 0x1400fdd20
jmp 0x1400feadb
mov rcx, rdi
mov rdx, rbp
jmp 0x1400fe119
mov eax, 4
shl r13, 0x20
or r13, rax
mov rcx, r12
mov rdx, r13
call fcn.1400ffa20
jmp 0x1400ff29c
mov eax, 4
shl rsi, 0x20
or rsi, rax
mov rcx, r13
jmp 0x1400ff3e3
mov rcx, rsi
jmp 0x1400ff297
test eax, 0x40000000
jne 0x1400ff674
test eax, 0x20000000
je 0x1400ff818
mov rcx, rdi
mov rdx, r15
call fcn.1400ff920
cmp r15, qword [rsp + 0x30]
jae 0x1400ff880
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax + r15]
mov rdx, r15
call fcn.1400fb8f0
jmp 0x1400ff29c
mov rcx, rdi
mov rdx, r15
jmp 0x1400ff2b7
mov rcx, r15
jmp 0x1400ff297
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
call fcn.14032b570
lea rcx, str.no_in_progress_search_to_update
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov edx, 0x1f
call fcn.14032ba50
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs
mov rcx, rbp
mov rdx, r15
call fcn.14032b570
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs
mov rcx, rbp
mov rdx, qword [rsp + 0x30]
call fcn.14032b570
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
call fcn.14032b570
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov rcx, rax
call fcn.14032b570
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.14032b570
lea rcx, str.no_in_progress_search_to_finish
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov edx, 0x1f
call fcn.14032ba50
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs
mov rcx, r13
mov rdx, r9
call fcn.14032b570
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
call fcn.14032b570
lea r8, [0x140371108]
mov ecx, 4
call fcn.14032b5e0
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srcutildeterminize_state.rs
mov ecx, 0xd
call fcn.14032b500
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs
mov rcx, rsi
mov rdx, r9
call fcn.14032b570
mov ecx, 8
mov edx, 0x10
call fcn.14032afd0
mov qword [rsp + 0x120], r9
lea rax, [rsp + 0x128]
mov qword [rsp + 0x100], rax
lea rax, [0x1400344a0]
mov qword [rsp + 0x108], rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0x110], rax
lea rax, [fcn.1400381a0]
mov qword [rsp + 0x118], rax
lea rax, [0x140373978]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 2
mov qword [rsp + 0x78], 0
lea rax, [rsp + 0x100]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], 2
lea rdx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srcutil_search.rsinvalid_span__for_haystack_of_length_S97_
lea rcx, [rsp + 0x58]
call fcn.14032b4c0
lea rcx, str.no_quit_in_start_without_look_behind
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov edx, 0x24
call fcn.14032ba50
lea rax, str.internal_error:_entered_unreachable_code:_sid_being_unknown_is_a_bug
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 1
lea rax, [rsp + 0x40]
mov qword [rsp + 0x68], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
lea rdx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs
lea rcx, [rsp + 0x58]
call fcn.14032b4c0
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs
mov rcx, r13
mov rdx, r15
call fcn.14032b570
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs
mov rcx, r12
call fcn.14032b570
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs
mov rcx, rbp
call fcn.14032b570
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs
mov rcx, r15
mov rdx, qword [rsp + 0x30]
call fcn.14032b570
int3