Function at 0x140011920
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 r13, qword [r9 + 0x18]
mov rbx, qword [r9 + 0x20]
cmp r13, rbx
jbe 0x14001194c
mov qword [rcx], 0
jmp 0x140014045
mov r12, r9
mov rdi, r8
mov r14, rdx
mov qword [rsp + 0x30], rcx
mov r10d, dword [r9]
mov rax, r10
dec rax
cmp rax, 2
jb 0x140011988
lea rax, [r14 + 0x58]
cmp byte [r14 + 0x70], 3
lea r15, [0x1401082f8]
cmovne r15, rax
cmp byte [r15 + 0x18], 2
jne 0x140011b37
cmp byte [r12 + 0x28], 0
je 0x140011a7d
mov rax, qword [r14 + 0x180]
mov qword [rsp + 0x70], rax
test r13, r13
je 0x140011a53
lea rax, [r13 - 1]
cmp qword [r12 + 0x10], rax
jbe 0x140011a53
mov rcx, qword [r12 + 8]
test rcx, rcx
je 0x140011a53
movzx eax, byte [rcx + rax]
movzx esi, al
mov r8d, dword [r12 + 4]
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], 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 0x140011d7a
lea rax, [r14 + 0x290]
mov edx, esi
shr edx, 7
shl rdx, 4
mov r11d, 1
xor r9d, r9d
mov ecx, esi
shld r9, r11, cl
shl r11, cl
xor ecx, ecx
test sil, 0x40
cmovne r9, r11
cmovne r11, rcx
and r9, qword [rax + rdx + 8]
and r11, qword [rax + rdx]
or r11, r9
je 0x140011d7a
mov ebp, 4
jmp 0x140011dbd
mov r8d, dword [r12 + 4]
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], rdi
mov r15b, 2
movzx ecx, r15b
test r10d, r10d
jne 0x140011d8c
jmp 0x140011d9a
mov r11, qword [r14 + 0x180]
test r13, r13
je 0x140011c16
lea rax, [r13 - 1]
cmp qword [r12 + 0x10], rax
jbe 0x140011c16
mov rcx, qword [r12 + 8]
test rcx, rcx
je 0x140011c16
movzx eax, byte [rcx + rax]
movzx esi, al
mov r8d, dword [r12 + 4]
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], 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 0x14001218a
lea rax, [r14 + 0x290]
mov edx, esi
shr edx, 7
shl rdx, 4
mov r15d, 1
xor r9d, r9d
mov ecx, esi
shld r9, r15, cl
shl r15, cl
xor ecx, ecx
test sil, 0x40
cmovne r9, r15
cmovne r15, rcx
and r9, qword [rax + rdx + 8]
and r15, qword [rax + rdx]
or r15, r9
je 0x14001218a
mov ebp, 4
jmp 0x1400121d3
cmp byte [r12 + 0x28], 0
je 0x140011c6e
mov rax, qword [r14 + 0x180]
mov qword [rsp + 0xc0], rax
mov eax, dword [rax + 0x17c]
mov dword [rsp + 0x80], eax
test r13, r13
je 0x140011c40
lea rax, [r13 - 1]
cmp qword [r12 + 0x10], rax
jbe 0x140011c40
mov rcx, qword [r12 + 8]
test rcx, rcx
je 0x140011c40
movzx eax, byte [rcx + rax]
movzx ebp, al
mov eax, dword [r12 + 4]
mov dword [rsp + 0x78], eax
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], 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 0x1400127dd
lea rax, [r14 + 0x290]
mov edx, ebp
shr edx, 7
shl rdx, 4
mov r8d, 1
xor r9d, r9d
mov ecx, ebp
shld r9, r8, cl
shl r8, cl
xor ecx, ecx
test bpl, 0x40
cmovne r9, r8
cmovne r8, rcx
and r9, qword [rax + rdx + 8]
and r8, qword [rax + rdx]
or r8, r9
je 0x1400127dd
mov ecx, 4
jmp 0x140012820
mov r8d, dword [r12 + 4]
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], rdi
mov r9b, 2
movzx ecx, r9b
test r10d, r10d
jne 0x14001219c
jmp 0x1400121aa
mov eax, dword [r12 + 4]
mov dword [rsp + 0x78], eax
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], rdi
mov sil, 2
movzx eax, sil
test r10d, r10d
jne 0x1400127ef
jmp 0x1400127fd
mov rax, qword [r14 + 0x180]
mov qword [rsp + 0xb8], rax
mov eax, dword [rax + 0x17c]
mov dword [rsp + 0x80], eax
test r13, r13
je 0x140012159
lea rax, [r13 - 1]
cmp qword [r12 + 0x10], rax
jbe 0x140012159
mov rcx, qword [r12 + 8]
test rcx, rcx
je 0x140012159
movzx eax, byte [rcx + rax]
movzx esi, al
mov eax, dword [r12 + 4]
mov dword [rsp + 0xa8], eax
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], 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 0x140012ade
lea rax, [r14 + 0x290]
mov edx, esi
shr edx, 7
shl rdx, 4
mov r8d, 1
xor r9d, r9d
mov ecx, esi
shld r9, r8, cl
shl r8, cl
xor ecx, ecx
test sil, 0x40
cmovne r9, r8
cmovne r8, rcx
and r9, qword [rax + rdx + 8]
and r8, qword [rax + rdx]
or r8, r9
je 0x140012ade
mov ecx, 4
cmp ecx, 5
je 0x140012b5c
lea edx, [rcx - 3]
cmp edx, 2
mov eax, 2
cmovb eax, edx
test eax, eax
je 0x140013e45
cmp eax, 1
jne 0x140012cf9
test r13, r13
je 0x1400142e5
dec r13
mov ecx, esi
jmp 0x14001299a
movzx r15d, byte [r14 + rsi + 0x80]
movzx ecx, r15b
test r10d, r10d
je 0x140011d9a
cmp r10d, 1
jne 0x14001205e
add rcx, 6
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jae 0x14001263e
mov rax, qword [rdi + 0x48]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400127b4
mov esi, eax
mov ebp, 5
cmp ebp, 5
jne 0x140012551
cmp qword [rdi], 1
jne 0x140011deb
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 0x1400120a1
mov r15, qword [r12 + 8]
mov r10, qword [r12 + 0x10]
lea r11, [rsp + 0x40]
jmp 0x140011e2f
mov r13, rbp
inc r13
cmp r13, rbx
jae 0x1400120a6
cmp esi, 0x7ffffff
jbe 0x140011eb0
cmp qword [rdi], 0
je 0x14001428c
mov qword [rdi + 0x10], r13
cmp r13, r10
jae 0x14001410b
movzx r8d, byte [r15 + r13]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, esi
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x14001405c
mov rax, qword [rdi + 0x30]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x140012011
mov rbp, r13
mov esi, eax
cmp esi, 0x8000000
jb 0x140011e20
mov eax, esi
mov ecx, eax
and ecx, 0x10000000
jne 0x140011e20
jmp 0x14001272e
cmp r13, rbx
jae 0x140011e23
mov r9, qword [rdi + 0x30]
nop dword [rax]
movzx eax, byte [r15 + r13]
movzx eax, byte [r14 + rax + 0x190]
mov ecx, esi
add rcx, rax
mov eax, dword [r9 + rcx*4]
lea rbp, [r13 + 3]
cmp rbp, rbx
jae 0x140011f72
cmp eax, 0x8000000
jae 0x140011f72
movzx ecx, byte [r15 + r13 + 1]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, rax
mov esi, dword [r9 + rcx*4]
cmp rsi, 0x7ffffff
ja 0x140011f5c
movzx eax, byte [r15 + r13 + 2]
movzx eax, byte [r14 + rax + 0x190]
add rax, rsi
mov eax, dword [r9 + rax*4]
cmp rax, 0x7ffffff
ja 0x140011f6e
movzx ecx, byte [r15 + r13 + 3]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, rax
mov esi, dword [r9 + rcx*4]
cmp esi, 0x7ffffff
ja 0x140011f83
add r13, 4
cmp r13, rbx
jb 0x140011ec0
jmp 0x140011e23
inc r13
mov edx, eax
mov rbp, r13
test esi, esi
jns 0x140011e88
jmp 0x140011f8d
add r13, 2
mov edx, esi
mov rbp, r13
mov esi, eax
test esi, esi
jns 0x140011e88
jmp 0x140011f8d
mov edx, eax
test esi, esi
jns 0x140011e88
cmp qword [rdi], 0
je 0x14001428c
mov qword [rdi + 0x10], rbp
cmp rbp, r10
jae 0x140014224
movzx r8d, byte [r15 + rbp]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, edx
add rcx, rax
mov rax, qword [rdi + 0x40]
cmp rcx, rax
jae 0x140014191
mov esi, dword [r9 + rcx*4]
test esi, esi
jns 0x140011e88
mov qword [rsp + 0x80], r10
shl r8d, 8
mov qword [rsp + 0x40], r14
mov r13, rdi
mov qword [rsp + 0x48], rdi
mov rdi, r11
mov rcx, r11
call fcn.140101980
test eax, eax
jne 0x14001411f
mov esi, edx
mov r10, qword [rsp + 0x80]
mov r11, rdi
mov rdi, r13
jmp 0x140011e88
mov qword [rsp + 0x80], r10
shl r8d, 8
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x48], rdi
mov rdi, r11
mov rcx, r11
mov edx, esi
call fcn.140101980
test eax, eax
jne 0x140013e45
mov esi, edx
mov rbp, r13
mov r10, qword [rsp + 0x80]
mov rax, qword [rsp + 0x78]
mov r11, rdi
mov rdi, rax
jmp 0x140011e88
test byte [r14 + 0x79], 1
mov esi, r8d
mov ebp, 2
je 0x140011dbd
mov rax, qword [rsp + 0x70]
cmp qword [rax + 0x160], rsi
jbe 0x140012793
lea rax, [rsi + rsi*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jb 0x140011da7
jmp 0x14001263e
mov r10, qword [r12 + 0x10]
cmp rbx, r10
jae 0x140012104
mov rax, qword [r12 + 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 + 0x40]
cmp rcx, rdx
jae 0x14001405c
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x1400134c2
mov eax, edx
test eax, 0x8000000
jne 0x140012757
test eax, 0x20000000
jne 0x1400126ab
xor esi, esi
jmp 0x140013eb1
movzx r8d, byte [r14 + 0x28f]
shl r8d, 0x10
add r8d, 0x10001
mov eax, r8d
shr eax, 0x10
mov ecx, esi
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rdx, rcx
jbe 0x140014216
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x1400134e8
xor eax, eax
test edx, 0x8000000
jne 0x140013e73
xor esi, esi
jmp 0x140013eb1
mov eax, dword [r12 + 4]
mov dword [rsp + 0xa8], eax
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], rdi
mov bpl, 2
movzx eax, bpl
test r10d, r10d
jne 0x140012af0
jmp 0x140012b30
movzx r9d, byte [r14 + rsi + 0x80]
movzx ecx, r9b
test r10d, r10d
je 0x1400121aa
cmp r10d, 1
jne 0x1400125fb
add rcx, 6
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jae 0x14001263e
mov r15, r11
mov rax, qword [rdi + 0x48]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x140012ab8
mov esi, eax
mov ebp, 5
mov r11, r15
cmp ebp, 5
jne 0x140012551
cmp qword [rdi], 1
jne 0x140012201
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 0x14001264c
mov r15, qword [r12 + 8]
mov r9, qword [r12 + 0x10]
mov rax, qword [r14 + 0x188]
and eax, 0x3f
mov qword [rsp + 0xc0], rax
xor r10d, r10d
mov qword [rsp + 0x80], r9
jmp 0x140012262
mov rbp, r13
inc rbp
mov r13, rbp
cmp rbp, rbx
jae 0x1400126b6
cmp esi, 0x7ffffff
jbe 0x1400122d0
cmp qword [rdi], 0
je 0x14001428c
mov qword [rdi + 0x10], r13
cmp r13, r9
jae 0x140014174
movzx r8d, byte [r15 + r13]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, esi
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x14001405c
mov rax, qword [rdi + 0x30]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400124bf
mov rbp, r13
mov esi, eax
cmp esi, 0x8000000
jae 0x140012408
jmp 0x140012253
cmp r13, rbx
jae 0x140012250
mov r9, qword [rdi + 0x30]
nop dword [rax]
movzx eax, byte [r15 + r13]
movzx eax, byte [r14 + rax + 0x190]
mov ecx, esi
add rcx, rax
mov eax, dword [r9 + rcx*4]
lea rbp, [r13 + 3]
cmp rbp, rbx
jae 0x140012399
cmp eax, 0x8000000
jae 0x140012399
movzx ecx, byte [r15 + r13 + 1]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, rax
mov esi, dword [r9 + rcx*4]
cmp rsi, 0x7ffffff
ja 0x140012387
movzx eax, byte [r15 + r13 + 2]
movzx eax, byte [r14 + rax + 0x190]
add rax, rsi
mov eax, dword [r9 + rax*4]
cmp rax, 0x7ffffff
ja 0x140012395
movzx ecx, byte [r15 + r13 + 3]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, rax
mov esi, dword [r9 + rcx*4]
cmp esi, 0x7ffffff
ja 0x1400123a6
add r13, 4
cmp r13, rbx
jb 0x1400122e0
mov rbp, r13
mov r9, qword [rsp + 0x80]
jmp 0x140012253
inc r13
mov edx, eax
mov rbp, r13
test esi, esi
jns 0x1400123f4
jmp 0x1400123ac
add r13, 2
mov edx, esi
mov rbp, r13
mov esi, eax
test esi, esi
jns 0x1400123f4
jmp 0x1400123ac
mov edx, eax
test esi, esi
jns 0x1400123f4
cmp qword [rdi], 0
je 0x14001428c
mov qword [rdi + 0x10], rbp
cmp rbp, qword [rsp + 0x80]
jae 0x140014240
movzx r8d, byte [r15 + rbp]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, edx
add rcx, rax
mov rax, qword [rdi + 0x40]
cmp rcx, rax
jae 0x140014191
mov esi, dword [r9 + rcx*4]
test esi, esi
js 0x14001251f
mov r9, qword [rsp + 0x80]
cmp esi, 0x8000000
jb 0x140012253
mov eax, esi
mov ecx, eax
and ecx, 0x10000000
jne 0x140012253
test eax, 0x8000000
je 0x140012cba
mov r10d, 1
cmp qword [r11 + 0x160], 1
jne 0x140012445
mov dword [rsp + 0x70], 0
mov qword [rsp + 0x78], rbp
jmp 0x140012253
mov eax, esi
and eax, 0x7ffffff
mov rcx, qword [rsp + 0xc0]
shr rax, cl
mov rdx, qword [rdi + 0x70]
cmp rax, rdx
jae 0x1400141a2
mov dword [rsp + 0x70], 0
mov rcx, qword [rdi + 0x60]
shl rax, 4
mov rdx, qword [rcx + rax + 8]
test rdx, rdx
je 0x1400141b3
mov rax, qword [rcx + rax]
test byte [rax + 0x10], 2
jne 0x140012496
mov qword [rsp + 0x78], rbp
jmp 0x140012253
cmp rdx, 0xd
jb 0x14001438c
add rdx, 0xfffffffffffffff3
cmp rdx, 3
jbe 0x14001439f
mov eax, dword [rax + 0x1d]
mov dword [rsp + 0x70], eax
mov qword [rsp + 0x78], rbp
jmp 0x140012253
mov qword [rsp + 0xa8], r10
mov qword [rsp + 0xb8], r11
shl r8d, 8
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, esi
call fcn.140101980
test eax, eax
jne 0x140013e45
mov esi, edx
mov rbp, r13
mov r11, qword [rsp + 0xb8]
mov r10, qword [rsp + 0xa8]
mov r9, qword [rsp + 0x80]
cmp esi, 0x8000000
jae 0x140012408
jmp 0x140012253
mov qword [rsp + 0xa8], r10
mov r13, r11
shl r8d, 8
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
call fcn.140101980
test eax, eax
jne 0x14001411f
mov esi, edx
mov r11, r13
jmp 0x1400124fe
lea ecx, [rbp - 3]
cmp ecx, 2
mov eax, 2
cmovb eax, ecx
test eax, eax
je 0x1400125a3
cmp eax, 1
jne 0x1400125ce
test r13, r13
je 0x1400142e5
movzx eax, byte [0x1401aa1c1]
mov ecx, 0x10
mov edx, 8
call fcn.140006850
test rax, rax
je 0x1400142ba
dec r13
mov byte [rax], 0
mov byte [rax + 1], sil
mov qword [rax + 8], r13
jmp 0x140013e4d
movzx eax, byte [0x1401aa1c1]
mov ecx, 0x10
mov edx, 8
call fcn.140006850
test rax, rax
je 0x1400142ba
mov byte [rax], 1
mov qword [rax + 8], r13
jmp 0x140013e4d
movzx eax, byte [0x1401aa1c1]
mov ecx, 0x10
mov edx, 8
call fcn.140006850
test rax, rax
je 0x1400142ba
mov byte [rax], 3
mov dword [rax + 4], ebp
mov dword [rax + 8], esi
jmp 0x140013e4d
test byte [r14 + 0x79], 1
mov dword [rsp + 0x70], r8d
mov esi, r8d
mov ebp, 2
je 0x1400121d3
cmp qword [r11 + 0x160], rsi
jbe 0x140012a8f
lea rax, [rsi + rsi*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov r8d, dword [rsp + 0x70]
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jb 0x1400121b7
lea r8, [0x1401082e0]
call fcn.140104fc0
ud2
mov r9, qword [r12 + 0x10]
xor r10d, r10d
cmp rbx, r9
jae 0x1400126c4
mov rax, qword [r12 + 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 + 0x40]
cmp rcx, rdx
jae 0x14001405c
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x140013518
mov eax, edx
test eax, 0x8000000
jne 0x140013fcf
test eax, 0x20000000
je 0x14001400a
mov ecx, r15d
mov rdx, rbx
jmp 0x140012cef
mov ebp, dword [rsp + 0x70]
mov r13, qword [rsp + 0x78]
cmp rbx, r9
jb 0x140012659
movzx r8d, byte [r14 + 0x28f]
shl r8d, 0x10
add r8d, 0x10001
mov eax, r8d
shr eax, 0x10
mov ecx, esi
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rdx, rcx
jbe 0x140014216
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x140013550
test edx, 0x8000000
je 0x14001400a
mov r10d, 1
xor ebp, ebp
cmp qword [r11 + 0x160], 1
jne 0x140012d05
mov r13, r9
jmp 0x14001400a
test eax, 0x8000000
jne 0x1400129fc
test eax, 0x40000000
jne 0x140012d4e
test eax, 0x20000000
je 0x1400143cb
mov rsi, r10
jmp 0x140012cd3
mov esi, 1
xor eax, eax
mov rcx, qword [rsp + 0x70]
cmp qword [rcx + 0x160], 1
je 0x14001278b
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
call fcn.1400527d0
mov rcx, rax
xor edx, edx
call fcn.14006b630
mov r10, rbx
jmp 0x140013eb1
lea rcx, [rsp + 0x88]
mov rsi, r10
mov ebp, r8d
call fcn.140052820
mov r8d, ebp
mov r10, rsi
test eax, eax
jns 0x140011db6
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, r10d
mov r9d, r15d
call fcn.140102660
mov rbp, rax
mov rsi, rax
shr rsi, 0x20
jmp 0x140011dbd
movzx esi, byte [r14 + rbp + 0x80]
movzx eax, sil
test r10d, r10d
je 0x1400127fd
cmp r10d, 1
jne 0x1400129a2
add rax, 6
mov rdx, qword [rdi + 0x58]
cmp rax, rdx
jae 0x140013c99
mov rcx, qword [rdi + 0x48]
mov eax, dword [rcx + rax*4]
test eax, eax
js 0x140012d7e
mov ebp, eax
mov ecx, 5
cmp ecx, 5
jne 0x140012971
mov qword [rsp + 0x70], r10
mov rsi, qword [r12 + 8]
mov rdx, qword [r12 + 0x10]
mov rax, qword [r15]
mov rcx, qword [r15 + 8]
mov r15, rdx
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], r13
lea rcx, [rsp + 0x118]
mov qword [rsp + 0xb8], rdx
mov r8, rsi
mov r9, r15
mov qword [rsp + 0xa8], r10
call r10
cmp qword [rsp + 0x118], 0
je 0x140012cab
mov r13, qword [rsp + 0x120]
cmp dword [rsp + 0x80], 0
mov r10, qword [rsp + 0x70]
je 0x140012ec0
mov qword [rsp + 0xe8], r13
mov qword [rsp + 0xf0], rbx
cmp r15, rbx
jb 0x1400142ff
lea rax, [rbx + 1]
cmp rax, r13
jb 0x1400142ff
test r13, r13
je 0x140012a74
lea rax, [r13 - 1]
cmp r15, rax
jbe 0x140012a74
movzx eax, byte [rsi + rax]
movzx ebp, al
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], 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 0x140012e38
lea rax, [r14 + 0x290]
mov edx, ebp
shr edx, 7
shl rdx, 4
mov r8d, 1
xor r9d, r9d
mov ecx, ebp
shld r9, r8, cl
shl r8, cl
xor ecx, ecx
test bpl, 0x40
cmovne r9, r8
cmovne r8, rcx
and r9, qword [rax + rdx + 8]
and r8, qword [rax + rdx]
or r8, r9
je 0x140012e38
mov ecx, 4
jmp 0x140012eb7
lea edx, [rcx - 3]
cmp edx, 2
mov eax, 2
cmovb eax, edx
test eax, eax
je 0x140013e45
cmp eax, 1
jne 0x1400129f0
test r13, r13
je 0x1400142e5
dec r13
mov ecx, ebp
mov rdx, r13
jmp 0x140012cef
test byte [r14 + 0x79], 1
mov ebp, dword [rsp + 0x78]
mov ecx, 2
je 0x140012820
mov rcx, qword [rsp + 0xc0]
cmp qword [rcx + 0x160], rbp
jbe 0x140012d63
lea rcx, [rbp*2]
add rcx, rbp
lea rax, [rax + rcx*2]
add rax, 0xc
mov rdx, qword [rdi + 0x58]
cmp rax, rdx
jb 0x14001280a
jmp 0x140013c99
mov edx, ebp
call fcn.14001d060
jmp 0x140013e4d
xor eax, eax
mov rcx, qword [rsp + 0x70]
cmp qword [rcx + 0x160], 1
je 0x140012a2d
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, esi
call fcn.1400527d0
mov rcx, rax
xor edx, edx
call fcn.14006b630
mov rcx, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1400142cb
mov rdx, rbp
sub rdx, rcx
neg rdx
mov r8, rbp
sub r8, rcx
cmovb r8, rdx
add qword [rdi + 0x158], r8
mov rcx, qword [rsp + 0x30]
mov qword [rcx], 1
mov qword [rcx + 8], rbp
mov dword [rcx + 0x10], eax
jmp 0x140014045
mov r12, r15
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], rdi
mov r15b, 2
jmp 0x140012e44
mov r15, r11
lea rcx, [rsp + 0x88]
mov rsi, r10
mov ebp, r9d
call fcn.140052820
mov r9d, ebp
mov r10, rsi
mov r8d, dword [rsp + 0x70]
test eax, eax
jns 0x1400121c9
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, r10d
call fcn.140102660
mov rbp, rax
mov rsi, rax
shr rsi, 0x20
jmp 0x1400121d0
movzx ebp, byte [r14 + rsi + 0x80]
movzx eax, bpl
test r10d, r10d
je 0x140012b30
cmp r10d, 1
jne 0x140012afc
add rax, 6
jmp 0x140012b30
test byte [r14 + 0x79], 1
mov esi, dword [rsp + 0xa8]
mov ecx, 2
je 0x140012b53
mov rcx, qword [rsp + 0xb8]
cmp qword [rcx + 0x160], rsi
jbe 0x140012ddd
lea rcx, [rsi + rsi*2]
lea rax, [rax + rcx*2]
add rax, 0xc
mov rdx, qword [rdi + 0x58]
cmp rax, rdx
jae 0x140013c99
mov rcx, qword [rdi + 0x48]
mov eax, dword [rcx + rax*4]
test eax, eax
js 0x140012df8
mov esi, eax
mov ecx, 5
cmp ecx, 5
jne 0x140011d48
mov qword [rsp + 0x70], r10
mov rbp, qword [r12 + 8]
mov rdx, qword [r12 + 0x10]
mov rax, qword [r15]
mov rcx, qword [r15 + 8]
mov r15, rdx
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], r13
lea rcx, [rsp + 0x118]
mov qword [rsp + 0xc0], rdx
mov r8, rbp
mov r9, r15
mov qword [rsp + 0x78], r10
call r10
cmp qword [rsp + 0x118], 0
je 0x140012cab
mov r12, qword [rsp + 0x120]
cmp dword [rsp + 0x80], 0
mov r10, qword [rsp + 0x70]
mov qword [rsp + 0xd0], r15
je 0x1400135ef
mov qword [rsp + 0xe8], r12
mov qword [rsp + 0xf0], rbx
cmp r15, rbx
jb 0x1400142ff
lea rax, [rbx + 1]
cmp rax, r12
jb 0x1400142ff
test r12, r12
je 0x140012d36
lea rax, [r12 - 1]
cmp r15, rax
jbe 0x140012d36
movzx eax, byte [rbp + rax]
movzx esi, al
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], 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 0x14001359b
lea rax, [r14 + 0x290]
mov edx, esi
shr edx, 7
shl rdx, 4
mov r8d, 1
xor r9d, r9d
mov ecx, esi
shld r9, r8, cl
shl r8, cl
xor ecx, ecx
test sil, 0x40
cmovne r9, r8
cmovne r8, rcx
and r9, qword [rax + rdx + 8]
and r8, qword [rax + rdx]
or r8, r9
je 0x14001359b
mov ecx, 4
jmp 0x1400135e6
xor eax, eax
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rax
jmp 0x140014045
test eax, 0x40000000
jne 0x140012db2
test eax, 0x20000000
je 0x1400143cb
mov rsi, r9
mov rcx, rdi
mov rdx, rbp
call fcn.1400118d0
cmp rbp, rsi
jae 0x140014278
movzx ecx, byte [r15 + rbp]
mov rdx, rbp
call fcn.14001cfc0
jmp 0x140013e4d
mov edx, esi
call fcn.14001d060
jmp 0x140013e4d
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov rsi, r9
call fcn.1400527d0
mov rcx, rax
xor edx, edx
call fcn.14006b630
mov r10d, 1
mov ebp, eax
mov r13, rsi
jmp 0x14001400a
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], rdi
mov r15b, 2
jmp 0x1400135a4
mov rcx, rdi
mov rdx, rbp
call fcn.1400118d0
mov rcx, qword [rsp + 0x30]
jmp 0x140011940
lea rcx, [rsp + 0x88]
mov rbp, r10
call fcn.140052820
mov r10, rbp
test eax, eax
jns 0x140012819
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, r10d
mov r8d, dword [rsp + 0x78]
mov r9d, esi
mov rsi, r10
call fcn.140102660
mov r10, rsi
mov rcx, rax
mov rbp, rax
shr rbp, 0x20
jmp 0x140012820
mov rcx, rdi
mov rdx, rbp
mov rsi, r10
call fcn.1400118d0
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rsi
mov rax, qword [rsp + 0x78]
mov qword [rcx + 8], rax
mov eax, dword [rsp + 0x70]
mov dword [rcx + 0x10], eax
jmp 0x140014045
lea rcx, [rsp + 0x88]
mov rsi, r10
call fcn.140052820
mov r10, rsi
test eax, eax
jns 0x140012b4c
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, r10d
mov r8d, dword [rsp + 0xa8]
mov r9d, ebp
mov rsi, r10
call fcn.140102660
mov r10, rsi
mov rcx, rax
mov rsi, rax
shr rsi, 0x20
cmp ecx, 5
je 0x140012b5c
jmp 0x140011d48
mov r12, r15
movzx r15d, byte [r14 + rbp + 0x80]
movzx eax, r15b
test r10d, r10d
je 0x140012e91
cmp r10d, 1
jne 0x140012e59
add rax, 6
jmp 0x140012e91
test byte [r14 + 0x79], 1
mov ebp, dword [rsp + 0x78]
mov ecx, 2
je 0x140012eb4
mov rcx, qword [rsp + 0xc0]
cmp qword [rcx + 0x160], rbp
jbe 0x140013dd8
lea rcx, [rbp*2]
add rcx, rbp
lea rax, [rax + rcx*2]
add rax, 0xc
mov rdx, qword [rdi + 0x58]
cmp rax, rdx
jae 0x140013c99
mov rcx, qword [rdi + 0x48]
mov eax, dword [rcx + rax*4]
test eax, eax
js 0x140013df2
mov ebp, eax
mov ecx, 5
mov r15, r12
cmp ecx, 5
jne 0x140013389
cmp qword [rdi], 1
jne 0x140012ee5
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 0x14001332d
lea rax, [rbx + 1]
mov qword [rsp + 0xd0], rax
lea rax, [r14 + 0x290]
mov qword [rsp + 0xf8], rax
movzx eax, byte [r14 + 0x79]
mov byte [rsp + 0x108], al
mov eax, dword [rsp + 0x78]
mov qword [rsp + 0xc8], rax
lea rax, [rax + rax*2]
lea rax, [rax*2 + 0xc]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x110], r15
jmp 0x140012f5d
mov r13, r12
inc r13
cmp r13, rbx
jae 0x14001332d
cmp ebp, 0x7ffffff
jbe 0x140012fbb
cmp qword [rdi], 0
je 0x14001428c
mov qword [rdi + 0x10], r13
cmp r13, r15
jae 0x140014202
movzx r8d, byte [rsi + r13]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, ebp
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x14001405c
mov rax, qword [rdi + 0x30]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400130ec
mov r12, r13
mov ebp, eax
jmp 0x140013113
cmp r13, rbx
jae 0x140012f51
mov r9, qword [rdi + 0x30]
nop word cs:[rax + rax]
movzx eax, byte [rsi + r13]
movzx eax, byte [r14 + rax + 0x190]
mov ecx, ebp
add rcx, rax
mov eax, dword [r9 + rcx*4]
lea r12, [r13 + 3]
cmp r12, rbx
jae 0x140013076
cmp eax, 0x8000000
jae 0x140013076
movzx ecx, byte [rsi + r13 + 1]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, rax
mov ebp, dword [r9 + rcx*4]
cmp rbp, 0x7ffffff
ja 0x140013068
movzx eax, byte [rsi + r13 + 2]
movzx eax, byte [r14 + rax + 0x190]
add rax, rbp
mov eax, dword [r9 + rax*4]
cmp rax, 0x7ffffff
ja 0x140013072
movzx ecx, byte [rsi + r13 + 3]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, rax
mov ebp, dword [r9 + rcx*4]
cmp ebp, 0x7ffffff
ja 0x14001307f
add r13, 4
cmp r13, rbx
jb 0x140012fd0
jmp 0x140012f51
inc r13
mov edx, eax
mov r12, r13
jmp 0x140013081
add r13, 2
mov edx, ebp
mov r12, r13
mov ebp, eax
jmp 0x140013081
mov edx, eax
test ebp, ebp
jns 0x140013113
cmp qword [rdi], 0
je 0x14001428c
mov qword [rdi + 0x10], r12
cmp r12, r15
jae 0x140014264
movzx r8d, byte [rsi + r12]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, edx
add rcx, rax
mov rax, qword [rdi + 0x40]
cmp rcx, rax
jae 0x140014191
mov ebp, dword [r9 + rcx*4]
test ebp, ebp
jns 0x140013113
shl r8d, 8
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
call fcn.140101980
test eax, eax
jne 0x140014238
mov ebp, edx
jmp 0x140013113
shl r8d, 8
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, ebp
call fcn.140101980
test eax, eax
jne 0x140013e45
mov ebp, edx
mov r12, r13
cmp ebp, 0x7ffffff
jbe 0x140012f4e
mov eax, ebp
test eax, 0x10000000
je 0x140013d59
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r12
lea rcx, [rsp + 0x118]
mov rdx, qword [rsp + 0xb8]
mov r8, rsi
mov r9, r15
call qword [rsp + 0xa8]
cmp qword [rsp + 0x118], 0
je 0x140013d9b
mov r13, qword [rsp + 0x120]
cmp r13, r12
jbe 0x140012f4e
cmp dword [rsp + 0x80], 0
mov r9, qword [rsp + 0x70]
je 0x140012f54
mov qword [rsp + 0xe8], r13
mov qword [rsp + 0xf0], rbx
cmp r15, rbx
jb 0x1400142ff
cmp qword [rsp + 0xd0], r13
jb 0x1400142ff
lea r12, [r13 - 1]
cmp r15, r12
jbe 0x140013240
movzx eax, byte [rsi + r12]
movzx ebp, al
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], 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 0x140013255
xor eax, eax
mov ecx, ebp
mov edx, 1
shld rax, rdx, cl
mov edx, ebp
shr edx, 7
mov r8d, 1
shl r8, cl
shl rdx, 4
test bpl, 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
je 0x140013255
mov eax, 4
jmp 0x140013290
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], rdi
mov r15b, 2
jmp 0x14001325e
movzx r15d, byte [r14 + rbp + 0x80]
movzx ecx, r15b
test r9d, r9d
je 0x140013271
cmp r9d, 1
jne 0x1400132a6
add rcx, 6
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jae 0x14001263e
mov rax, qword [rdi + 0x48]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x140013302
mov ebp, eax
mov eax, 5
cmp eax, 5
mov r15, qword [rsp + 0x110]
je 0x140012f54
jmp 0x14001406a
mov eax, 2
mov rbp, qword [rsp + 0xc8]
test byte [rsp + 0x108], 1
je 0x140013290
mov rax, qword [rsp + 0xc0]
mov rdx, qword [rsp + 0xc8]
cmp qword [rax + 0x160], rdx
jbe 0x1400132ec
add rcx, qword [rsp + 0x100]
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jb 0x14001327e
jmp 0x14001263e
lea rcx, [rsp + 0x88]
call fcn.140052820
mov r9, qword [rsp + 0x70]
test eax, eax
jns 0x140013289
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, r9d
mov r8d, dword [rsp + 0x78]
mov r9d, r15d
call fcn.140102660
mov rbp, rax
shr rbp, 0x20
jmp 0x140013290
cmp rbx, r15
jae 0x1400133c3
movzx esi, byte [rsi + rbx]
movzx eax, byte [r14 + rsi + 0x190]
mov ecx, ebp
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x14001405c
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x1400140b7
mov eax, edx
test eax, 0x8000000
jne 0x140013411
test eax, 0x20000000
jne 0x140013db5
xor esi, esi
jmp 0x140013482
lea edx, [rcx - 3]
cmp edx, 2
mov eax, 2
cmovb eax, edx
test eax, eax
je 0x140014091
cmp eax, 1
jne 0x140013511
test r13, r13
je 0x1400142e5
dec r13
mov ecx, ebp
mov rdx, r13
call fcn.14001cfc0
jmp 0x140014099
movzx r8d, byte [r14 + 0x28f]
shl r8d, 0x10
add r8d, 0x10001
mov eax, r8d
shr eax, 0x10
mov ecx, ebp
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rdx, rcx
jbe 0x140014216
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x1400140e1
xor eax, eax
test edx, 0x8000000
jne 0x14001344d
xor esi, esi
jmp 0x140013482
mov esi, 1
xor eax, eax
mov rcx, qword [rsp + 0xc0]
cmp qword [rcx + 0x160], 1
je 0x140013448
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
call fcn.1400527d0
mov rcx, rax
xor edx, edx
call fcn.14006b630
mov r15, rbx
jmp 0x140013482
mov esi, 1
mov rcx, qword [rsp + 0xc0]
cmp qword [rcx + 0x160], 1
je 0x140013482
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
call fcn.1400527d0
mov rcx, rax
xor edx, edx
call fcn.14006b630
mov rcx, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1400142cb
mov rdx, rbx
sub rdx, rcx
neg rdx
sub rbx, rcx
cmovb rbx, rdx
add qword [rdi + 0x158], rbx
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rsi
mov qword [rcx + 8], r15
mov dword [rcx + 0x10], eax
jmp 0x140014045
mov r8d, r15d
shl r8d, 8
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, esi
call fcn.140101980
test eax, eax
jne 0x140013548
jmp 0x1400120e5
mov r15, r10
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, esi
call fcn.140101980
test eax, eax
je 0x140013e62
mov rcx, r15
jmp 0x140013e48
mov edx, ebp
jmp 0x140013dce
mov qword [rsp + 0x78], r13
mov r13, r10
mov r12, r11
mov r8d, r15d
shl r8d, 8
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, esi
call fcn.140101980
test eax, eax
je 0x140013fb7
mov rcx, rbx
jmp 0x140013e48
mov qword [rsp + 0x78], r13
mov r13, r9
mov r12, r10
mov r15, r11
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, esi
call fcn.140101980
test eax, eax
jne 0x140013e45
mov r11, r15
mov r10, r12
mov r9, r13
mov r13, qword [rsp + 0x78]
test edx, 0x8000000
jne 0x140012710
jmp 0x14001400a
movzx r15d, byte [r14 + rsi + 0x80]
movzx eax, r15b
test r10d, r10d
je 0x1400135bb
cmp r10d, 1
jne 0x140013c54
add rax, 6
mov rdx, qword [rdi + 0x58]
cmp rax, rdx
jae 0x140013c99
mov rcx, qword [rdi + 0x48]
mov eax, dword [rcx + rax*4]
test eax, eax
js 0x140013f86
mov esi, eax
mov ecx, 5
mov r15, qword [rsp + 0xd0]
cmp ecx, 5
jne 0x140013b76
cmp qword [rdi], 1
jne 0x140013614
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], r12
mov qword [rdi + 0x10], r12
cmp r12, rbx
jae 0x140013af9
lea rax, [rbx + 1]
mov qword [rsp + 0x110], rax
lea rax, [r14 + 0x290]
mov qword [rsp + 0x108], rax
movzx eax, byte [r14 + 0x79]
mov byte [rsp + 0x100], al
mov eax, dword [rsp + 0xa8]
mov qword [rsp + 0xf8], rax
lea rax, [rax + rax*2]
lea rax, [rax*2 + 0xc]
mov qword [rsp + 0x130], rax
xor eax, eax
mov qword [rsp + 0xc8], rax
mov r13, r12
cmp esi, 0x7ffffff
jbe 0x1400136e2
cmp qword [rdi], 0
je 0x14001428c
mov qword [rdi + 0x10], r13
cmp r13, r15
jae 0x140014202
movzx r8d, byte [rbp + r13]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, esi
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x14001405c
mov rax, qword [rdi + 0x30]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x140013a23
mov r12, r13
mov esi, eax
jmp 0x1400137ea
cmp r13, rbx
jae 0x140013a76
mov r9, qword [rdi + 0x30]
nop
movzx eax, byte [rbp + r13]
movzx eax, byte [r14 + rax + 0x190]
mov ecx, esi
add rcx, rax
mov eax, dword [r9 + rcx*4]
lea r12, [r13 + 3]
cmp r12, rbx
jae 0x140013797
cmp eax, 0x8000000
jae 0x140013797
movzx ecx, byte [rbp + r13 + 1]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, rax
mov esi, dword [r9 + rcx*4]
cmp rsi, 0x7ffffff
ja 0x140013789
movzx eax, byte [rbp + r13 + 2]
movzx eax, byte [r14 + rax + 0x190]
add rax, rsi
mov eax, dword [r9 + rax*4]
cmp rax, 0x7ffffff
ja 0x140013793
movzx ecx, byte [rbp + r13 + 3]
movzx ecx, byte [r14 + rcx + 0x190]
add rcx, rax
mov esi, dword [r9 + rcx*4]
cmp esi, 0x7ffffff
ja 0x1400137a0
add r13, 4
cmp r13, rbx
jb 0x1400136f0
jmp 0x140013a76
inc r13
mov edx, eax
mov r12, r13
jmp 0x1400137a2
add r13, 2
mov edx, esi
mov r12, r13
mov esi, eax
jmp 0x1400137a2
mov edx, eax
test esi, esi
jns 0x1400137ea
cmp qword [rdi], 0
je 0x14001428c
mov qword [rdi + 0x10], r12
cmp r12, r15
jae 0x140014264
movzx r8d, byte [rbp + r12]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, edx
add rcx, rax
mov rax, qword [rdi + 0x40]
cmp rcx, rax
jae 0x140014191
mov esi, dword [r9 + rcx*4]
test esi, esi
js 0x140013a4f
cmp esi, 0x7ffffff
jbe 0x140013a79
mov eax, esi
test eax, 0x10000000
je 0x140013a87
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r12
lea rcx, [rsp + 0x118]
mov rdx, qword [rsp + 0xc0]
mov r8, rbp
mov r9, r15
call qword [rsp + 0x78]
cmp qword [rsp + 0x118], 0
je 0x140013caa
mov r13, qword [rsp + 0x120]
cmp r13, r12
jbe 0x140013a79
cmp dword [rsp + 0x80], 0
mov r9, qword [rsp + 0x70]
je 0x1400139c4
mov qword [rsp + 0xe8], r13
mov qword [rsp + 0xf0], rbx
cmp r15, rbx
jb 0x1400142ff
cmp qword [rsp + 0x110], r13
jb 0x1400142ff
lea r12, [r13 - 1]
cmp r15, r12
jbe 0x140013929
movzx eax, byte [rbp + r12]
movzx esi, al
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], 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 0x14001393e
xor eax, eax
mov ecx, esi
mov edx, 1
shld rax, rdx, cl
mov edx, esi
shr edx, 7
mov r8d, 1
shl r8, cl
shl rdx, 4
test sil, 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 0x14001393e
mov eax, 4
cmp eax, 5
mov r15, qword [rsp + 0xd0]
je 0x1400139c4
jmp 0x140013e20
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], rdi
mov r15b, 2
jmp 0x140013947
movzx r15d, byte [r14 + rsi + 0x80]
movzx ecx, r15b
test r9d, r9d
je 0x140013994
cmp r9d, 1
jne 0x14001395c
add rcx, 6
jmp 0x140013994
mov eax, 2
mov rsi, qword [rsp + 0xf8]
test byte [rsp + 0x100], 1
je 0x1400139b3
mov rax, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xf8]
cmp qword [rax + 0x160], rdx
jbe 0x1400139d2
add rcx, qword [rsp + 0x130]
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jae 0x14001263e
mov rax, qword [rdi + 0x48]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1400139e8
mov esi, eax
mov eax, 5
cmp eax, 5
mov r15, qword [rsp + 0xd0]
jne 0x140013e20
cmp r13, rbx
jb 0x140013683
jmp 0x140013b03
lea rcx, [rsp + 0x88]
call fcn.140052820
mov r9, qword [rsp + 0x70]
test eax, eax
jns 0x1400139ac
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, r9d
mov r8d, dword [rsp + 0xa8]
mov r9d, r15d
call fcn.140102660
mov rsi, rax
shr rsi, 0x20
cmp eax, 5
mov r15, qword [rsp + 0xd0]
je 0x1400139c4
jmp 0x140013e20
shl r8d, 8
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, esi
call fcn.140101980
test eax, eax
jne 0x140013e45
mov esi, edx
mov r12, r13
jmp 0x1400137ea
shl r8d, 8
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
call fcn.140101980
test eax, eax
jne 0x140014238
mov esi, edx
jmp 0x1400137ea
mov r12, r13
inc r12
cmp r12, rbx
jb 0x140013680
jmp 0x140013b03
test eax, 0x8000000
je 0x1400141c5
mov eax, 1
mov qword [rsp + 0xc8], rax
mov dword [rsp + 0xb4], 0
mov rax, qword [rsp + 0xb8]
cmp qword [rax + 0x160], 1
je 0x140013ae3
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, esi
call fcn.1400527d0
mov rcx, rax
xor edx, edx
call fcn.14006b630
mov dword [rsp + 0xb4], eax
mov qword [rsp + 0xe0], r12
inc r12
cmp r12, rbx
jb 0x140013680
jmp 0x140013b03
xor eax, eax
mov qword [rsp + 0xc8], rax
cmp rbx, r15
jae 0x140013bb0
movzx r15d, byte [rbp + rbx]
movzx eax, byte [r14 + r15 + 0x190]
mov ecx, esi
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
mov ebp, dword [rsp + 0xb4]
mov r12, qword [rsp + 0xe0]
jae 0x14001405c
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x140014127
mov eax, edx
test eax, 0x8000000
jne 0x140013ce0
test eax, 0x20000000
mov rsi, qword [rsp + 0xc8]
jne 0x1400126ab
jmp 0x140013d1c
lea edx, [rcx - 3]
cmp edx, 2
mov eax, 2
cmovb eax, edx
test eax, eax
je 0x140013dbf
cmp eax, 1
jne 0x140013dcc
test r12, r12
je 0x1400142e5
dec r12
mov ecx, esi
mov rdx, r12
call fcn.14001cfc0
jmp 0x140014099
movzx r8d, byte [r14 + 0x28f]
shl r8d, 0x10
add r8d, 0x10001
mov eax, r8d
shr eax, 0x10
mov ecx, esi
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rdx, rcx
mov ebp, dword [rsp + 0xb4]
mov r12, qword [rsp + 0xe0]
jbe 0x140014216
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x140014151
test edx, 0x8000000
mov rsi, qword [rsp + 0xc8]
je 0x140013d1c
mov esi, 1
xor ebp, ebp
mov rax, qword [rsp + 0xb8]
cmp qword [rax + 0x160], 1
je 0x140013c4c
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
call fcn.1400527d0
mov rcx, rax
xor edx, edx
call fcn.14006b630
mov ebp, eax
mov r12, r15
jmp 0x140013d1c
test byte [r14 + 0x79], 1
mov esi, dword [rsp + 0xa8]
mov ecx, 2
je 0x1400135de
mov rcx, qword [rsp + 0xb8]
cmp qword [rcx + 0x160], rsi
jbe 0x140013f6c
lea rcx, [rsi + rsi*2]
lea rax, [rax + rcx*2]
add rax, 0xc
mov rdx, qword [rdi + 0x58]
cmp rax, rdx
jb 0x1400135c8
lea r8, [0x1401082e0]
mov rcx, rax
call fcn.140104fc0
ud2
mov rcx, rdi
mov rdx, rbx
call fcn.1400118d0
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0xc8]
mov qword [rcx], rax
mov rax, qword [rsp + 0xe0]
mov qword [rcx + 8], rax
mov eax, dword [rsp + 0xb4]
mov dword [rcx + 0x10], eax
jmp 0x140014045
mov esi, 1
xor ebp, ebp
mov rax, qword [rsp + 0xb8]
cmp qword [rax + 0x160], 1
je 0x140013d19
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
call fcn.1400527d0
mov rcx, rax
xor edx, edx
call fcn.14006b630
mov ebp, eax
mov r12, rbx
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1400142cb
mov rcx, rbx
sub rcx, rax
neg rcx
sub rbx, rax
cmovb rbx, rcx
add qword [rdi + 0x158], rbx
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rsi
mov qword [rcx + 8], r12
jmp 0x140014042
test eax, 0x8000000
jne 0x140013ef1
test eax, 0x40000000
jne 0x1400140ac
test eax, 0x20000000
je 0x1400143cb
mov rcx, rdi
mov rdx, r12
call fcn.1400118d0
cmp r12, r15
jae 0x1400142a6
movzx ecx, byte [rsi + r12]
mov rdx, r12
jmp 0x140012cef
mov rcx, rdi
mov rdx, rbx
call fcn.1400118d0
xor eax, eax
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rax
jmp 0x140014045
mov ecx, esi
mov rdx, rbx
jmp 0x140012cef
mov rcx, r12
call fcn.14001d010
jmp 0x140014099
mov edx, esi
call fcn.14001d060
jmp 0x140014099
lea rcx, [rsp + 0x88]
call fcn.140052820
mov r10, qword [rsp + 0x70]
test eax, eax
jns 0x140012ead
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, r10d
mov r8d, dword [rsp + 0x78]
mov r9d, r15d
call fcn.140102660
mov rcx, rax
mov rbp, rax
shr rbp, 0x20
jmp 0x140012eb4
lea edx, [rax - 3]
cmp edx, 2
mov ecx, 2
cmovb ecx, edx
test ecx, ecx
je 0x140013e45
cmp ecx, 1
jne 0x140014104
mov ecx, esi
mov rdx, r12
jmp 0x140012cef
mov rcx, r13
call fcn.14001d010
mov rcx, qword [rsp + 0x30]
mov qword [rcx + 8], rax
mov qword [rcx], 2
jmp 0x140014045
mov r10, r15
xor eax, eax
test edx, 0x8000000
je 0x140012152
mov esi, 1
mov rcx, qword [rsp + 0x70]
cmp qword [rcx + 0x160], 1
je 0x140013eb1
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov r14, rdi
mov rdi, r10
call fcn.1400527d0
mov rcx, rax
xor edx, edx
call fcn.14006b630
mov r10, rdi
mov rdi, r14
mov rcx, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1400142cb
mov rdx, rbx
sub rdx, rcx
neg rdx
sub rbx, rcx
cmovb rbx, rdx
add qword [rdi + 0x158], rbx
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rsi
mov qword [rcx + 8], r10
mov dword [rcx + 0x10], eax
jmp 0x140014045
xor eax, eax
mov rcx, qword [rsp + 0xc0]
cmp qword [rcx + 0x160], 1
je 0x140013f25
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, ebp
call fcn.1400527d0
mov rcx, rax
xor edx, edx
call fcn.14006b630
mov rcx, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1400142cb
mov rdx, r12
sub rdx, rcx
neg rdx
mov r8, r12
sub r8, rcx
cmovb r8, rdx
add qword [rdi + 0x158], r8
mov rcx, qword [rsp + 0x30]
mov qword [rcx], 1
mov qword [rcx + 8], r12
mov dword [rcx + 0x10], eax
jmp 0x140014045
lea rcx, [rsp + 0x88]
call fcn.140052820
mov r10, qword [rsp + 0x70]
test eax, eax
jns 0x1400135d7
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, r10d
mov r8d, dword [rsp + 0xa8]
mov r9d, r15d
call fcn.140102660
mov rcx, rax
mov rsi, rax
shr rsi, 0x20
jmp 0x1400135de
mov r11, r12
mov r10, r13
mov r13, qword [rsp + 0x78]
mov eax, edx
test eax, 0x8000000
je 0x1400126a0
mov r10d, 1
xor ebp, ebp
cmp qword [r11 + 0x160], 1
je 0x140014007
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
call fcn.1400527d0
mov rcx, rax
xor edx, edx
call fcn.14006b630
mov r10d, 1
mov ebp, eax
mov r13, rbx
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x1400142cb
mov rcx, rbx
sub rcx, rax
neg rcx
sub rbx, rax
cmovb rbx, rcx
add qword [rdi + 0x158], rbx
mov rcx, qword [rsp + 0x30]
mov qword [rcx], r10
mov qword [rcx + 8], r13
mov dword [rcx + 0x10], ebp
mov rax, rcx
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, [0x1401081c8]
call fcn.140104fc0
ud2
lea edx, [rax - 3]
cmp edx, 2
mov ecx, 2
cmovb ecx, edx
test ecx, ecx
je 0x140014091
cmp ecx, 1
jne 0x140014188
mov ecx, ebp
mov rdx, r12
call fcn.14001cfc0
jmp 0x140014099
mov rcx, r13
call fcn.14001d010
mov rcx, qword [rsp + 0x30]
mov qword [rcx + 8], rax
mov eax, 2
mov qword [rcx], rax
jmp 0x140014045
mov rcx, rdi
mov rdx, r12
jmp 0x140012d54
mov r8d, esi
shl r8d, 8
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, ebp
call fcn.140101980
test eax, eax
jne 0x140013548
jmp 0x14001336a
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, ebp
call fcn.140101980
test eax, eax
jne 0x140013509
jmp 0x140013403
mov ecx, eax
jmp 0x140012cf9
lea r8, [0x140108438]
mov rcx, r13
mov rdx, r10
call fcn.140104fc0
ud2
mov rcx, rbp
jmp 0x140013e48
mov r8d, r15d
shl r8d, 8
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, esi
call fcn.140101980
test eax, eax
jne 0x140013548
jmp 0x140013b51
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rdi
lea rcx, [rsp + 0x40]
mov edx, esi
call fcn.140101980
test eax, eax
jne 0x140013509
jmp 0x140013bff
lea r8, [0x140108438]
mov rcx, r13
mov rdx, r9
call fcn.140104fc0
ud2
mov ecx, eax
mov edx, ebp
jmp 0x140013dce
lea r8, [0x1401081c8]
mov rdx, rax
call fcn.140104fc0
ud2
lea r8, str.C:UsersIdefaSoft.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.5_srchybriddfa.rs
mov rcx, rax
call fcn.140104fc0
ud2
lea r8, str.C:UsersIdefaSoft.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.5_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.140104fc0
ud2
test eax, 0x40000000
jne 0x140014259
test eax, 0x20000000
je 0x1400143cb
mov rcx, rdi
mov rdx, r12
call fcn.1400118d0
cmp r12, qword [rsp + 0xd0]
jae 0x1400143b2
movzx ecx, byte [rbp + r12]
mov rdx, r12
jmp 0x140012cef
lea r8, [0x140108438]
mov rcx, r13
mov rdx, r15
call fcn.140104fc0
ud2
lea r8, [0x1401081e0]
call fcn.140104fc0
ud2
lea r8, [0x140108420]
mov rcx, rbp
mov rdx, r10
call fcn.140104fc0
ud2
mov rcx, r12
jmp 0x140013e48
lea r8, [0x140108420]
mov rcx, rbp
mov rdx, qword [rsp + 0x80]
call fcn.140104fc0
ud2
mov rcx, rdi
mov rdx, r12
jmp 0x140013cb0
lea r8, [0x140108420]
mov rcx, r12
mov rdx, r15
call fcn.140104fc0
ud2
mov rdx, rsi
lea r8, [0x1401084c0]
mov rcx, rbp
call fcn.140104fc0
ud2
lea rcx, str.no_in_progress_search_to_update
lea r8, [0x140108290]
mov edx, 0x1f
call fcn.140104e00
ud2
lea r8, [0x1401084c0]
mov rcx, r12
mov rdx, r15
call fcn.140104fc0
ud2
mov ecx, 8
mov edx, 0x10
call fcn.140104c20
ud2
lea rcx, str.no_in_progress_search_to_finish
lea r8, [0x1401082c8]
mov edx, 0x1f
call fcn.140104e00
ud2
lea rcx, str.no_quit_in_start_without_look_behind
lea r8, [0x140108220]
mov edx, 0x24
call fcn.140104e00
ud2
mov qword [rsp + 0xd8], r15
lea rax, [rsp + 0xe8]
mov qword [rsp + 0x88], rax
lea rax, [0x14001cf50]
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x98], rax
lea rax, [fcn.1400fd740]
mov qword [rsp + 0xa0], rax
lea rax, [0x140108b88]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 2
mov qword [rsp + 0x60], 0
lea rax, [rsp + 0x88]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 2
lea rdx, [0x140108c18]
lea rcx, [rsp + 0x40]
call fcn.140104e70
ud2
lea r8, str.C:UsersIdefaSoft.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.5_srcutildeterminize_state.rs
mov ecx, 0xd
call fcn.140105330
ud2
lea r8, str.C:UsersIdefaSoft.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.5_srcutilwire.rs
mov ecx, 4
call fcn.1401053b0
ud2
lea r8, [0x1401084c0]
mov rcx, r12
mov rdx, qword [rsp + 0xd0]
call fcn.140104fc0
ud2
lea rax, str.internal_error:_entered_unreachable_code:_sid_being_unknown_is_a_bug
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 1
lea rax, [rsp + 0x38]
mov qword [rsp + 0x50], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
lea rdx, [0x1401084a8]
lea rcx, [rsp + 0x40]
call fcn.140104e70
ud2