Function at 0x14007c2c0
Capabilities:
Encrypt data using speck
Reference sql statements
Resolve function by parsing pe exports

Disassembly:
mov r11, rsp
push rbp
push r12
lea rbp, [r11 - 0x1e8]
sub rsp, 0x2d8
mov rax, qword [0x1401ca2e0]
xor rax, rsp
mov qword [rbp + 0x1a8], rax
mov rax, qword [rcx + 0x68]
mov r12, rcx
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rsi
mov qword [r11 + 0x20], rdi
mov rdi, qword [rcx + 0x70]
mov qword [r11 - 0x18], r13
xor r13d, r13d
mov qword [r11 - 0x20], r14
mov ebx, r13d
mov qword [r11 - 0x28], r15
mov r15, qword [rcx]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x30], rax
movaps xmmword [r11 - 0x38], xmm6
movzx eax, byte [r15 + 0x5e]
mov byte [rsp + 0x3c], al
mov qword [rsp + 0x58], rcx
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x68], r15
mov byte [rsp + 0x50], r13b
mov dword [rsp + 0x70], r13d
mov dword [rbp - 0x7c], ebx
mov qword [rsp + 0x48], rdi
call fcn.14007c190
mov esi, 7
lea r14d, [r13 + 1]
cmp dword [r12 + 0x38], esi
je 0x14007e01e
mov qword [r12 + 0x48], r13
mov qword [r12 + 0x88], r13
mov eax, dword [r15 + 0x160]
mov dword [r15 + 0x238], r13d
test eax, eax
jne 0x1400824b5
or edx, 0xffffffff
cmp qword [r15 + 0x1b0], rbx
je 0x14007c3b2
mov r8d, dword [r15 + 0x1c0]
xor edx, edx
mov eax, dword [r12 + 0xe0]
div r8d
sub r8d, edx
mov dword [rbp - 0x60], r8d
or edx, 0xffffffff
jmp 0x14007c3b5
mov dword [rbp - 0x60], edx
movsxd rax, dword [r12 + 0x34]
lea r11, [0x140000000]
mov r9, qword [rsp + 0x40]
mov r10d, 0x2460
xorps xmm6, xmm6
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
inc ebx
mov qword [rsp + 0x30], rsi
mov dword [rbp - 0x7c], ebx
mov r8d, 0x80
movzx ebx, byte [rsi]
cmp ebx, 0xa7
ja case.0x14007c403.83
mov ecx, dword [r11 + rbx*4 + 0x824ec]
mov eax, ebx
add rcx, r11
jmp rcx
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
sub rcx, r9
imul r8, rax, 0x38
mov eax, 4
mov word [r8 + rdi + 8], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + rdi], rax
jmp 0x14007dae2
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + rdi]
mov word [rdx + rdi + 8], r8w
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0xc]
dec eax
cdqe
mov qword [rcx + rdi], rax
mov eax, 4
mov word [rcx + rdi + 8], ax
cmp dword [rsi + 8], 0
jne 0x140081628
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + rdi]
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
mov word [rdx + rdi + 8], r8w
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
jmp case.0x14007c403.83
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 4]
sub rbx, r9
imul r8, rax, 0x38
mov eax, 4
movsxd rcx, dword [r8 + rdi]
mov word [r8 + rdi + 8], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
lea rcx, [rcx + rcx*2]
sar rdx, 2
lea rsi, [r9 + rcx*8]
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + rdi], rax
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
test byte [rcx + rdi + 8], 1
je 0x14007c644
mov rcx, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r9
imul rcx
mov rbx, rdx
mov rdx, qword [rsp + 0x30]
sar rbx, 2
mov rax, rbx
shr rax, 0x3f
add rbx, rax
cmp dword [rdx + 4], 0
jne 0x140081d7e
mov rcx, qword [r12 + 0x100]
test rcx, rcx
je 0x140081d7e
mov rax, qword [rcx + 8]
dec dword [r12 + 0x110]
mov qword [r12 + 0x100], rax
mov eax, dword [r12 + 0x3c]
add dword [r15 + 0x78], eax
mov dword [r15 + 0x74], eax
call fcn.140083130
mov rcx, qword [rsp + 0x30]
cmp dword [rcx + 8], 4
jne 0x14007c5c3
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x68]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov r9, qword [r12 + 0x68]
mov rdi, qword [r12 + 0x70]
cdqe
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x48], rdi
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
jmp 0x14007e889
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [r12 + 0x70]
test word [rcx + 8], r10w
je 0x14007c62f
call fcn.14003ea80
mov r9, qword [rsp + 0x40]
lea r11, [0x140000000]
mov rsi, qword [rsp + 0x30]
mov rcx, rax
mov rax, qword [rsp + 0x30]
mov r10d, 0x2460
movsxd rax, dword [rax + 4]
mov qword [rcx], rax
jmp case.0x14007c403.83
mov eax, 4
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
mov qword [rcx], rax
mov rsi, qword [rsp + 0x30]
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, qword [r12 + 0x70]
test word [rdx + 8], r10w
je 0x14007c686
mov rcx, rdx
call fcn.14003ea80
mov r9, qword [rsp + 0x40]
lea r11, [0x140000000]
mov rdx, rax
mov r10d, 0x2460
jmp 0x14007c68f
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
mov rax, qword [rax + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, qword [r12 + 0x70]
test word [rdx + 8], r10w
je 0x14007c6e5
mov rcx, rdx
call fcn.14003ea80
mov r9, qword [rsp + 0x40]
lea r11, [0x140000000]
mov rdx, rax
mov r10d, 0x2460
mov eax, 8
jmp 0x14007c68b
mov eax, 4
mov word [rdx + 8], ax
mov eax, 8
jmp 0x14007c68b
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [r12 + 0x70]
test word [rbx + 8], r10w
je 0x14007c71b
mov rcx, rbx
call fcn.14003ea80
mov rbx, rax
jmp 0x14007c724
mov eax, 4
mov word [rbx + 8], ax
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + 0x10]
mov byte [rax], 0x45
test rdx, rdx
jne 0x14007c73a
mov eax, r13d
jmp 0x14007c74e
or rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rdx + rax], 0
jne 0x14007c740
and eax, 0x3fffffff
mov rcx, qword [rsp + 0x30]
movzx esi, byte [rsp + 0x3c]
mov dword [rcx + 4], eax
cmp sil, 1
je 0x14007c7de
mov r9b, 1
mov qword [rsp + 0x20], r13
or r8d, 0xffffffff
mov rcx, rbx
call fcn.140084e70
test byte [rbx + 8], 2
mov dword [rsp + 0x38], eax
movzx ecx, sil
je 0x14007c79e
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x14007c79e
movzx edx, cl
mov rcx, rbx
call fcn.140085250
test eax, eax
jne 0x14007e019
mov eax, 0x800
mov dword [rbx + 0x20], r13d
or word [rbx + 8], ax
mov rax, qword [rsp + 0x30]
cmp byte [rax + 1], 0xf9
jne 0x14007c7c7
mov rdx, qword [rax + 0x10]
mov rcx, r15
call fcn.1400553f0
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov byte [rax + 1], 0xf9
mov rax, qword [rbx + 0x10]
mov qword [rcx + 0x10], rax
mov eax, dword [rbx + 0xc]
mov dword [rcx + 4], eax
mov eax, dword [r15 + 0x7c]
cmp dword [rcx + 4], eax
jg 0x1400821f5
mov r10d, 0x2460
movsxd rax, dword [rcx + 8]
imul rdx, rax, 0x38
add rdx, qword [r12 + 0x70]
test word [rdx + 8], r10w
je 0x14007c829
mov rcx, rdx
call fcn.14003ea80
mov rcx, qword [rsp + 0x30]
mov rdx, rax
mov r10d, 0x2460
jmp 0x14007c832
mov rcx, qword [rsp + 0x30]
movzx esi, byte [rsp + 0x3c]
jmp 0x14007c7f1
mov eax, 4
mov word [rdx + 8], ax
mov eax, 0xa02
mov word [rdx + 8], ax
mov rax, qword [rcx + 0x10]
mov qword [rdx + 0x10], rax
mov eax, dword [rcx + 4]
mov dword [rdx + 0xc], eax
mov rax, qword [rsp + 0x30]
mov byte [rdx + 0xa], sil
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x14007e87f
mov rsi, qword [rsp + 0x30]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x30]
movzx eax, word [rax + 2]
cmp qword [rcx + rdi], rax
jne 0x14007e884
mov r9, qword [rsp + 0x40]
mov eax, 0xa10
mov word [rdx + 8], ax
jmp 0x14007e88f
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 8]
imul rax, rax, 0x38
add rax, qword [r12 + 0x70]
test word [rax + 8], r10w
je 0x14007c8b6
mov rcx, rax
call fcn.14003ea80
mov r10d, 0x2460
jmp 0x14007c8bf
mov ecx, 4
mov word [rax + 8], cx
mov edi, dword [rbx + 0xc]
mov esi, r14d
sub edi, dword [rbx + 8]
mov ecx, 0x101
cmp dword [rbx + 4], 0
lea rbx, [rax + 8]
mov dword [rax + 0xc], r13d
cmovne si, cx
mov word [rbx], si
test edi, edi
jle 0x140081be3
nop dword [rax + rax]
test word [rbx + 0x38], r10w
lea rbx, [rbx + 0x38]
je 0x14007c90c
lea rcx, [rbx - 8]
call fcn.140093400
mov r10d, 0x2460
jmp 0x14007c910
mov word [rbx], r14w
dec edi
mov word [rbx], si
mov dword [rbx + 4], r13d
test edi, edi
jg 0x14007c8f0
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
mov r9, qword [rsp + 0x40]
jmp 0x14007e88f
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xff61
add rcx, rdi
and word [rcx + 8], ax
or word [rcx + 8], 1
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [r12 + 0x70]
test word [rbx + 8], r10w
je 0x14007c97f
mov rcx, rbx
call fcn.14003ea80
mov rbx, rax
jmp 0x14007c988
mov eax, 4
mov word [rbx + 8], ax
mov rax, qword [rsp + 0x30]
xor r9d, r9d
mov rcx, rbx
mov qword [rsp + 0x20], r13
mov r8d, dword [rax + 4]
mov rdx, qword [rax + 0x10]
call fcn.140084e70
movzx eax, byte [rsp + 0x3c]
mov byte [rbx + 0xa], al
jmp 0x14007e87f
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 4]
dec eax
cdqe
imul rdx, rax, 0x38
add rdx, qword [r12 + 0xa0]
movzx eax, word [rdx + 8]
test al, 0x12
je 0x14007c9f9
mov r8d, dword [rdx + 0xc]
mov ecx, 0x4000
test cx, ax
je 0x14007c9e3
add r8d, dword [rdx]
mov rax, qword [rdx + 0x28]
mov ecx, r13d
cmp r8d, dword [rax + 0x7c]
setg cl
test ecx, ecx
jne 0x1400821f5
mov rax, qword [rsp + 0x30]
mov r8d, 0x800
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, rdi
call fcn.1400850d0
jmp 0x14007e87f
mov rcx, qword [rsp + 0x30]
mov r13d, 0x1000
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rdi, qword [rsp + 0x48]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x48]
mov rdx, rdi
mov rcx, rbx
call fcn.140084b20
test word [rbx + 8], r13w
je 0x14007ca63
mov rcx, rbx
call fcn.140084ac0
test eax, eax
jne 0x14007e019
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x14007ca41
jmp 0x14007e87a
mov rcx, qword [rsp + 0x30]
mov r13d, 0x1000
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rdi, qword [rsp + 0x48]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x48]
nop dword [rax]
mov r8d, r13d
mov rdx, rdi
mov rcx, rbx
call fcn.1400850d0
test word [rbx + 8], r13w
je 0x14007cac5
mov rcx, rbx
call fcn.140084ac0
test eax, eax
jne 0x14007e019
mov eax, esi
dec esi
test eax, eax
je 0x140081be3
add rbx, 0x38
add rdi, 0x38
jmp 0x14007caa0
mov rcx, qword [rsp + 0x30]
mov r8d, 0x1000
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, rdi
add rcx, rdi
call fcn.1400850d0
jmp 0x14007e87f
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, rdi
mov rax, qword [rcx + rdi]
test word [r8 + 8], r10w
je 0x14007cb39
mov rdx, rax
mov rcx, r8
call fcn.140094680
jmp 0x14007e87f
mov rsi, qword [rsp + 0x30]
mov ebx, 4
mov word [r8 + 8], bx
mov qword [r8], rax
jmp case.0x14007c403.83
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rsi, rdi
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rdi, qword [rsp + 0x48]
movzx ecx, word [rsi + 8]
imul rbx, rax, 0x38
movzx eax, byte [rdi + 8]
add rbx, qword [rsp + 0x48]
or al, cl
test al, 1
je 0x14007cbb0
test word [rbx + 8], r10w
je 0x14007cb9c
mov rcx, rbx
call fcn.140093400
jmp 0x14007e87a
mov word [rbx + 8], r14w
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
jmp case.0x14007c403.83
mov eax, 0x4000
test ax, cx
je 0x14007cbcf
mov rcx, rsi
call fcn.140084680
test eax, eax
jne 0x14007e019
mov eax, 0x4000
test word [rdi + 8], ax
je 0x14007cbe5
mov rcx, rdi
call fcn.140084680
test eax, eax
jne 0x14007e019
test byte [rsi + 8], 0x12
jne 0x14007cc03
movzx edx, byte [rsp + 0x3c]
xor r8d, r8d
mov rcx, rsi
call fcn.140085110
test eax, eax
jne 0x14007e019
test byte [rdi + 8], 0x12
jne 0x14007cc21
movzx edx, byte [rsp + 0x3c]
xor r8d, r8d
mov rcx, rdi
call fcn.140085110
test eax, eax
jne 0x14007e019
mov eax, dword [rdi + 0xc]
add eax, dword [rsi + 0xc]
movsxd r14, eax
movsxd rax, dword [r15 + 0x7c]
cmp r14, rax
jg 0x1400821f5
mov r8d, r13d
lea edx, [r14 + 2]
cmp rbx, rdi
mov rcx, rbx
sete r8b
call fcn.140084830
test eax, eax
jne 0x14007e013
mov eax, 0x3e00
and word [rbx + 8], ax
or word [rbx + 8], 2
cmp rbx, rdi
je 0x14007cc79
movsxd r8, dword [rdi + 0xc]
mov rdx, qword [rdi + 0x10]
mov rcx, qword [rbx + 0x10]
call fcn.1400c6560
movsxd rcx, dword [rdi + 0xc]
add rcx, qword [rbx + 0x10]
movsxd r8, dword [rsi + 0xc]
mov rdx, qword [rsi + 0x10]
call fcn.1400c6560
mov rax, qword [rbx + 0x10]
mov byte [r14 + rax], 0
mov rax, qword [rbx + 0x10]
mov byte [r14 + rax + 1], 0
mov eax, 0x200
or word [rbx + 8], ax
movzx eax, byte [rsp + 0x3c]
mov byte [rbx + 0xa], al
mov dword [rbx + 0xc], r14d
jmp 0x14007e874
mov rbx, qword [rsp + 0x30]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
add rdi, r12
movzx eax, word [rdi + 8]
movzx r15d, ax
and r15w, 0xc
jne 0x14007ccf4
test al, 0x12
je 0x14007ccf1
mov rcx, rdi
call fcn.14002a370
movzx r15d, ax
jmp 0x14007ccf4
mov r15d, r13d
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rbx, r12
movzx eax, word [rbx + 8]
movzx r14d, ax
and r14w, 0xc
jne 0x14007cd23
test al, 0x12
je 0x14007cd20
mov rcx, rbx
call fcn.14002a370
movzx r14d, ax
jmp 0x14007cd23
mov r14d, r13d
mov rax, qword [rsp + 0x30]
movzx r10d, word [rdi + 8]
movzx ecx, word [rbx + 8]
or cx, r10w
movsxd rax, dword [rax + 0xc]
imul rsi, rax, 0x38
movzx eax, r14b
add rsi, r12
and al, r15b
test al, 4
je 0x14007cf45
mov rax, qword [rsp + 0x30]
mov r12b, 1
mov r9, qword [rdi]
mov r8, qword [rbx]
movzx ecx, byte [rax]
sub ecx, 0x59
je 0x14007cef3
sub ecx, 1
je 0x14007ce82
sub ecx, 1
je 0x14007cdd4
cmp ecx, 1
je 0x14007cda2
test r9, r9
je 0x14007d059
cmp r9, 0xffffffffffffffff
mov edx, 1
mov rax, r8
cmove r9, rdx
cqo
idiv r9
mov r8, rdx
jmp 0x14007cf2f
test r9, r9
je 0x14007d059
cmp r9, 0xffffffffffffffff
jne 0x14007cdc4
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x14007cf51
mov rax, r8
cqo
idiv r9
mov r8, rax
jmp 0x14007cf2f
test r9, r9
jle 0x14007ce12
movabs rax, 0x7fffffffffffffff
cqo
idiv r9
cmp r8, rax
jg 0x14007cf51
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jl 0x14007cf51
imul r8, r9
jmp 0x14007cf2f
jns 0x14007ce79
test r8, r8
jle 0x14007ce3a
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jl 0x14007cf51
imul r8, r9
jmp 0x14007cf2f
jns 0x14007ce79
movabs rcx, 0x8000000000000000
cmp r9, rcx
je 0x14007cf51
cmp r8, rcx
je 0x14007cf51
movabs rax, 0x8000000000000001
cqo
idiv r9
mov rcx, rax
mov rax, r8
neg rax
cmp rax, rcx
jg 0x14007cf51
imul r8, r9
jmp 0x14007cf2f
movabs rcx, 0x8000000000000000
cmp r9, rcx
jne 0x14007cea2
test r8, r8
jns 0x14007cf51
sub r8, rcx
jmp 0x14007cf2f
neg r9
js 0x14007cec5
test r8, r8
jle 0x14007cee7
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x14007cee7
mov eax, 1
jmp 0x14007ceed
test r8, r8
jns 0x14007cee7
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x14007cee7
mov eax, 1
jmp 0x14007ceed
add r8, r9
mov eax, r13d
test eax, eax
jne 0x14007cf51
jmp 0x14007cf2f
test r9, r9
js 0x14007cf11
test r8, r8
jle 0x14007cf2c
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jl 0x14007cf51
jmp 0x14007cf2c
test r8, r8
jns 0x14007cf2c
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jg 0x14007cf51
add r8, r9
mov eax, 0x3e00
mov qword [rsi], r8
and word [rsi + 8], ax
or word [rsi + 8], 4
jmp 0x14007e874
test cl, 1
jne 0x14007d059
xor r12b, r12b
test r10b, 8
je 0x14007cf5d
movsd xmm2, qword [rdi]
jmp 0x14007cf83
test r10b, 4
je 0x14007cf6d
xorps xmm2, xmm2
cvtsi2sd xmm2, qword [rdi]
jmp 0x14007cf83
test r10b, 0x12
je 0x14007cf80
mov rcx, rdi
call fcn.14003b5a0
movaps xmm2, xmm0
jmp 0x14007cf83
movaps xmm2, xmm6
movzx eax, word [rbx + 8]
test al, 8
je 0x14007cf91
movsd xmm3, qword [rbx]
jmp 0x14007cfb3
test al, 4
je 0x14007cf9f
xorps xmm3, xmm3
cvtsi2sd xmm3, qword [rbx]
jmp 0x14007cfb3
test al, 0x12
je 0x14007cfb0
mov rcx, rbx
call fcn.14003b5a0
movaps xmm3, xmm0
jmp 0x14007cfb3
movaps xmm3, xmm6
mov rax, qword [rsp + 0x30]
movzx ecx, byte [rax]
sub ecx, 0x59
je 0x14007d014
sub ecx, 1
je 0x14007d00e
sub ecx, 1
je 0x14007d008
cmp ecx, 1
je 0x14007cffa
cvttsd2si rcx, xmm2
cvttsd2si rax, xmm3
test rcx, rcx
je 0x14007d059
cmp rcx, 0xffffffffffffffff
mov edx, 1
xorps xmm3, xmm3
cmove rcx, rdx
cqo
idiv rcx
cvtsi2sd xmm3, rdx
jmp 0x14007d018
ucomisd xmm2, xmm6
jp 0x14007d002
je 0x14007d059
divsd xmm3, xmm2
jmp 0x14007d018
mulsd xmm3, xmm2
jmp 0x14007d018
subsd xmm3, xmm2
jmp 0x14007d018
addsd xmm3, xmm2
movaps xmm0, xmm3
call fcn.1400662b0
test eax, eax
jne 0x14007d059
mov eax, 0x3e00
movsd qword [rsi], xmm3
and word [rsi + 8], ax
or r14b, r15b
or word [rsi + 8], 8
test r14b, 8
jne 0x140081bf2
test r12b, r12b
jne 0x140081bf2
mov rcx, rsi
call fcn.140083ab0
jmp 0x14007e874
mov r10d, 0x2460
test word [rsi + 8], r10w
je 0x14007d073
mov rcx, rsi
call fcn.140093400
jmp 0x14007e874
mov rdi, qword [rsp + 0x48]
mov r14d, 1
mov r9, qword [rsp + 0x40]
mov word [rsi + 8], r14w
mov rsi, qword [rsp + 0x30]
jmp 0x14007e88f
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
test eax, eax
je 0x14007c644
imul rcx, rax, 0x38
add rcx, rdi
test word [rcx + 8], r10w
je 0x14007d0bd
xor edx, edx
call fcn.140094680
jmp 0x14007e87f
mov rsi, qword [rsp + 0x30]
mov eax, 4
mov word [rcx + 8], ax
mov qword [rcx], r13
jmp case.0x14007c403.83
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x30]
add rdi, rdx
add rcx, rdx
movsxd rax, dword [rax + 0xc]
imul rsi, rax, 0x38
add rsi, rdx
movzx edx, word [rcx + 8]
movzx eax, dl
or al, byte [rdi + 8]
test al, 1
je 0x14007d139
test word [rsi + 8], r10w
je 0x14007d125
mov rcx, rsi
call fcn.140093400
jmp 0x14007e87a
mov rdi, qword [rsp + 0x48]
mov word [rsi + 8], r14w
mov rsi, qword [rsp + 0x30]
jmp case.0x14007c403.83
movzx eax, dx
test al, 4
je 0x14007d145
mov rbx, qword [rcx]
jmp 0x14007d168
test al, 8
je 0x14007d157
movsd xmm0, qword [rcx]
call fcn.14002dac0
mov rbx, rax
jmp 0x14007d168
test al, 0x12
je 0x14007d165
call fcn.14003b570
mov rbx, rax
jmp 0x14007d168
mov rbx, r13
movzx eax, word [rdi + 8]
test al, 4
je 0x14007d175
mov rcx, qword [rdi]
jmp 0x14007d19b
test al, 8
je 0x14007d187
movsd xmm0, qword [rdi]
call fcn.14002dac0
mov rcx, rax
jmp 0x14007d19b
test al, 0x12
je 0x14007d198
mov rcx, rdi
call fcn.14003b570
mov rcx, rax
jmp 0x14007d19b
mov rcx, r13
mov rdx, qword [rsp + 0x30]
movzx edx, byte [rdx]
cmp dl, 0x55
jne 0x14007d1ad
and rbx, rcx
jmp 0x14007d21b
cmp dl, 0x56
jne 0x14007d1b7
or rbx, rcx
jmp 0x14007d21b
test rcx, rcx
je 0x14007d21b
jns 0x14007d1d1
mov eax, 0xaf
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x14007d1d7
neg rcx
cmp rcx, 0x40
jl 0x14007d1ec
test rbx, rbx
jns 0x14007d1e7
cmp dl, 0x57
je 0x14007d1e7
or rbx, 0xffffffffffffffff
jmp 0x14007d21b
mov rbx, r13
jmp 0x14007d21b
cmp dl, 0x57
jne 0x14007d1f9
shl rbx, cl
mov r8, rbx
jmp 0x14007d218
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x14007d218
or rdx, 0xffffffffffffffff
mov eax, 0x40
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
mov eax, 0x3e00
mov qword [rsi], rbx
and word [rsi + 8], ax
or word [rsi + 8], 4
jmp 0x14007e87a
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, rdi
mov rcx, rbx
call fcn.140084a70
mov rsi, qword [rsp + 0x30]
movsxd rax, dword [rsi + 8]
add qword [rbx], rax
jmp 0x14007e884
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, rdi
movzx eax, word [rbx + 8]
test al, 4
jne 0x14007d2c2
test al, 8
jne 0x14007d299
test al, 2
je 0x14007d2a1
mov edx, r14d
mov rcx, rbx
call fcn.1400212c0
mov r9, qword [rsp + 0x40]
lea r11, [0x140000000]
mov r10d, 0x2460
jmp 0x14007d2a1
mov rcx, rbx
call fcn.140083ab0
movzx eax, word [rbx + 8]
test al, 4
jne 0x14007d2c2
mov rsi, qword [rsp + 0x30]
cmp dword [rsi + 8], 0
jne 0x14007dae7
mov eax, 0x14
jmp 0x140081e76
mov rsi, qword [rsp + 0x30]
mov ecx, 0x3e00
and ax, cx
or ax, 4
mov word [rbx + 8], ax
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, rdi
test byte [rcx + 8], 4
je 0x14007c644
call fcn.140084c60
jmp 0x14007e87f
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, rdi
test word [rbx + 8], ax
je 0x14007d329
mov rcx, rbx
call fcn.140084680
mov dword [rsp + 0x38], eax
jmp 0x14007d32e
mov dword [rsp + 0x38], r13d
mov rax, qword [rsp + 0x30]
mov rcx, rbx
movzx r8d, byte [rsp + 0x3c]
movzx edx, byte [rax + 8]
call fcn.1400844f0
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
jmp 0x14007e87f
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rsi, rdi
imul rdi, rax, 0x38
mov rax, qword [rsp + 0x48]
movzx r14d, word [rsi + 8]
add rdi, rax
movzx ebx, word [rdi + 8]
movzx ecx, bx
or cx, r14w
test cl, 1
je 0x14007d415
mov rax, qword [rsp + 0x30]
movzx eax, word [rax + 2]
test al, al
jns 0x14007d3c2
movzx eax, bl
and al, r14b
test al, 1
je 0x14007d3b8
mov eax, 0x100
test ax, bx
jne 0x14007d3b8
mov edx, r13d
jmp 0x14007d5cd
mov edx, 1
jmp 0x14007d483
mov r14d, 1
test al, 0x20
je 0x14007d3fe
mov rax, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x30]
mov dword [rsp + 0x70], r14d
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x3e00
add rcx, rdi
and word [rcx + 8], ax
or word [rcx + 8], r14w
jmp case.0x14007c403.83
test al, 0x10
jne 0x14007dae2
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
jmp case.0x14007c403.83
mov r15, qword [rsp + 0x30]
movzx eax, byte [r15 + 2]
and al, 0x47
cmp al, 0x43
jb 0x14007d528
test cl, 2
je 0x14007d459
movzx eax, r14b
and al, 0xe
cmp al, 2
jne 0x14007d446
xor edx, edx
mov rcx, rsi
call fcn.1400212c0
movzx ebx, word [rdi + 8]
movzx eax, bl
and al, 0xe
cmp al, 2
jne 0x14007d459
xor edx, edx
mov rcx, rdi
call fcn.1400212c0
movzx eax, byte [rdi + 8]
and al, byte [rsi + 8]
test al, 4
je 0x14007d58c
mov rax, qword [rdi]
mov rcx, qword [rsi]
cmp rax, rcx
jle 0x14007d516
mov edx, 1
lea r11, [0x140000000]
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax]
sub eax, 0x34
movsxd rcx, eax
movzx eax, byte [rcx + r11 + 0x16d070]
mov r9, qword [rsp + 0x30]
mov word [rsi + 8], r14w
mov rsi, qword [rsp + 0x30]
mov word [rdi + 8], bx
movzx r9d, word [r9 + 2]
movzx r8d, al
test r9b, 0x20
je 0x14007d5e9
mov rdi, qword [rsp + 0x48]
mov rax, rsi
mov dword [rsp + 0x70], edx
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, rdi
test r9b, 8
je 0x14007d4ef
cmp byte [rsi], 0x35
mov eax, r13d
sete al
cmp eax, r8d
je 0x140081c07
mov r9, qword [rsp + 0x40]
mov eax, 0x3e00
and word [rcx + 8], ax
mov r14d, 1
or word [rcx + 8], 4
mov r10d, 0x2460
mov qword [rcx], r8
jmp case.0x14007c403.83
jge 0x14007d520
or edx, 0xffffffff
jmp 0x14007d5a1
mov edx, r13d
jmp 0x14007d5c6
cmp al, 0x42
jne 0x14007d58c
movzx r12d, byte [rsp + 0x3c]
test r14b, 2
jne 0x14007d561
test r14b, 0xc
je 0x14007d561
mov r8b, 1
movzx edx, r12b
mov rcx, rsi
call fcn.140085110
movzx eax, r14w
mov ecx, 0x3e00
xor ax, word [rsi + 8]
and ax, cx
xor r14w, ax
test bl, 2
jne 0x14007d58c
test bl, 0xc
je 0x14007d58c
mov r8b, 1
movzx edx, r12b
mov rcx, rdi
call fcn.140085110
movzx eax, word [rdi + 8]
mov ecx, 0x3e00
xor ax, bx
and ax, cx
xor bx, ax
mov r8, qword [r15 + 0x10]
mov rdx, rsi
mov rcx, rdi
call fcn.1400683d0
mov edx, eax
test eax, eax
jns 0x14007d5c0
movzx eax, byte [r15]
lea r11, [0x140000000]
sub eax, 0x34
movsxd rcx, eax
movzx eax, byte [rcx + r11 + 0x16d060]
jmp 0x14007d49a
jne 0x14007d47c
lea r11, [0x140000000]
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax]
sub eax, 0x34
movsxd rcx, eax
movzx eax, byte [rcx + r11 + 0x16d068]
jmp 0x14007d49a
mov r14d, 1
test al, al
jne 0x140081628
mov rdi, qword [rsp + 0x48]
mov r10d, 0x2460
mov r9, qword [rsp + 0x40]
jmp case.0x14007c403.83
cmp dword [rsp + 0x70], 0
jne 0x14007dae7
jmp case.0x14007c403.83
mov rcx, qword [rsp + 0x30]
test byte [rcx + 2], 1
jne 0x14007d62c
mov r14, r13
jmp 0x14007d634
mov r14, qword [rcx - 8]
add r14, 4
mov r9d, dword [rcx + 4]
xor eax, eax
mov r12, qword [rsp + 0x30]
mov edi, eax
mov r13, qword [rcx + 0x10]
mov ebx, eax
mov ecx, dword [rcx + 8]
mov dword [rsp + 0x78], r9d
movsxd r12, dword [r12 + 0xc]
mov dword [rbp - 0x70], ecx
test r12, r12
jle 0x140081d64
lea rsi, [r13 + 0x20]
test r14, r14
je 0x14007d66f
mov r8d, dword [r14 + rbx*4]
jmp 0x14007d672
mov r8d, edi
mov rax, qword [r13 + 0x18]
movzx r15d, byte [rbx + rax]
lea eax, [r8 + rcx]
movsxd rcx, eax
lea eax, [r8 + r9]
mov r8, qword [rsi]
imul rdx, rcx, 0x38
movsxd rcx, eax
add rdx, qword [rsp + 0x48]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x48]
call fcn.1400683d0
mov dword [rsp + 0x70], eax
mov edx, eax
test eax, eax
jne 0x14007d6c8
mov r9d, dword [rsp + 0x78]
inc edi
mov ecx, dword [rbp - 0x70]
inc rbx
add rsi, 8
cmp rbx, r12
jl 0x14007d664
jmp 0x14007e874
mov rsi, qword [rsp + 0x30]
mov r14d, 1
mov rdi, qword [rsp + 0x48]
test r15d, r15d
je 0x14007e884
neg edx
mov dword [rsp + 0x70], edx
jmp 0x14007e884
mov edx, dword [rsp + 0x70]
mov rax, qword [rsp + 0x30]
test edx, edx
jns 0x14007d70d
mov eax, dword [rax + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
jmp case.0x14007c403.83
jne 0x14007d723
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
jmp case.0x14007c403.83
mov eax, dword [rax + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
mov edx, 2
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, rdi
call fcn.14007b910
mov ebx, eax
mov edx, 2
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 8]
imul rcx, rcx, 0x38
add rcx, rdi
call fcn.14007b910
mov rcx, qword [rsp + 0x30]
lea eax, [rax + rbx*2]
add eax, ebx
cmp byte [rcx], 0x2c
lea rcx, [0x140000000]
cdqe
jne 0x14007d78f
movzx ecx, byte [rax + rcx + 0x16d078]
jmp 0x14007d797
movzx ecx, byte [rax + rcx + 0x16d088]
mov rax, qword [rsp + 0x30]
lea r11, [0x140000000]
mov rsi, qword [rsp + 0x30]
mov r10d, 0x2460
mov r9, qword [rsp + 0x40]
movzx edx, cl
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x3e00
add rcx, rdi
and word [rcx + 8], ax
cmp edx, 2
jne 0x14007d7d9
or word [rcx + 8], 1
jmp case.0x14007c403.83
or word [rcx + 8], 4
mov qword [rcx], rdx
jmp case.0x14007c403.83
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 4]
mov edx, dword [rbx + 0xc]
imul rcx, rax, 0x38
add rcx, rdi
call fcn.14007b910
movsxd rdx, dword [rbx + 0x10]
mov r10d, 0x2460
movsxd rcx, eax
movsxd rax, dword [rbx + 8]
xor rdx, rcx
imul rcx, rax, 0x38
add rcx, rdi
test word [rcx + 8], r10w
je 0x14007d82d
call fcn.140094680
mov rsi, rbx
jmp 0x14007e884
mov r9, qword [rsp + 0x40]
mov eax, 4
mov word [rcx + 8], ax
mov rsi, rbx
mov qword [rcx], rdx
jmp 0x14007e88f
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rcx, rdi
add rbx, rdi
test byte [rcx + 8], 1
jne 0x14007d8ae
xor edx, edx
call fcn.14007b910
test eax, eax
mov rcx, r13
mov r10d, 0x2460
sete cl
test word [rbx + 8], r10w
je 0x14007d893
mov rdx, rcx
mov rcx, rbx
call fcn.140094680
jmp 0x14007e87f
mov rsi, qword [rsp + 0x30]
mov eax, 4
mov r9, qword [rsp + 0x40]
mov word [rbx + 8], ax
mov qword [rbx], rcx
jmp 0x14007e88f
test word [rbx + 8], r10w
je 0x14007d8c2
mov rcx, rbx
call fcn.140093400
jmp 0x14007e87f
mov rsi, qword [rsp + 0x30]
mov word [rbx + 8], r14w
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov rax, qword [rsp + 0x30]
add rbx, rdi
movsxd rax, dword [rax + 8]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x48]
test word [rdi + 8], r10w
je 0x14007d904
mov rcx, rdi
call fcn.140093400
jmp 0x14007d909
mov word [rdi + 8], r14w
test byte [rbx + 8], 1
jne 0x140081be3
mov eax, 4
mov word [rdi + 8], ax
movzx eax, word [rbx + 8]
test al, 4
je 0x14007d932
mov rax, qword [rbx]
not rax
mov qword [rdi], rax
jmp 0x14007e87a
test al, 8
je 0x14007d94a
movsd xmm0, qword [rbx]
call fcn.14002dac0
not rax
mov qword [rdi], rax
jmp 0x14007e87a
test al, 0x12
je 0x14007d961
mov rcx, rbx
call fcn.14003b570
not rax
mov qword [rdi], rax
jmp 0x14007e87a
mov rax, r13
not rax
mov qword [rdi], rax
jmp 0x14007e87a
mov r8, qword [r12 + 0x100]
test r8, r8
je 0x14007d9dd
mov rcx, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [r12 + 0x68]
mov r9, qword [r8 + 0x30]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov ecx, edx
and edx, 7
shr rcx, 3
movzx eax, byte [rcx + r9]
bt eax, edx
jb 0x14007dadd
mov rsi, qword [rsp + 0x30]
bts eax, edx
mov byte [rcx + r9], al
mov rax, qword [r12 + 0x68]
mov r9, qword [rsp + 0x40]
mov ecx, dword [rax + 4]
mov dword [rsi + 4], ecx
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
mov rcx, qword [r12 + 0x68]
mov eax, dword [rax + 4]
cmp dword [rcx + 4], eax
je 0x14007dae2
mov rsi, qword [rsp + 0x30]
mov rax, rcx
mov ecx, dword [rcx + 4]
mov dword [rsi + 4], ecx
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x30]
add rcx, rdi
mov edx, dword [rax + 0xc]
call fcn.14007b910
mov rsi, qword [rsp + 0x30]
test eax, eax
jne 0x140081628
jmp 0x14007e884
mov rax, qword [rsp + 0x30]
mov edx, r13d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, rdi
call fcn.14007b910
mov rsi, qword [rsp + 0x30]
test eax, eax
je 0x140081628
jmp 0x14007e884
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + rdi + 8], 1
jne 0x14007dae7
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + rdi + 8], 1
je 0x14007dae7
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 2], 0
je 0x14007c644
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, rdi
test word [rcx + 8], r10w
je 0x14007db00
call fcn.140093400
mov r9, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x30]
mov eax, dword [rsi + 8]
mov rdi, qword [rsp + 0x48]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
jmp 0x14007e889
mov word [rcx + 8], r14w
jmp 0x14007dae2
mov rbx, qword [rsp + 0x30]
mov rax, qword [r12 + 0x98]
movsxd rcx, dword [rbx + 4]
mov esi, dword [rbx + 8]
mov dword [rsp + 0x78], esi
mov r15, qword [rax + rcx*8]
cmp byte [r15 + 3], 0
je 0x14007dbbd
mov rdx, qword [r15 + 0x20]
test rdx, rdx
je 0x14007dbb3
lea eax, [rsi + 1]
movsxd rcx, eax
mov eax, dword [rdx + rcx*4]
test eax, eax
jle 0x14007dbb3
mov r15, qword [r15 + 0x30]
lea esi, [rax - 1]
mov dword [rsp + 0x78], esi
mov dword [rsp + 0x38], r13d
movsxd rax, dword [rbx + 0xc]
mov r13, qword [r15 + 0x60]
imul r12, rax, 0x38
mov qword [rbp - 0x70], r13
add r12, rdi
mov rdi, qword [rsp + 0x58]
mov qword [rbp - 0x78], r12
mov eax, dword [rdi + 0x30]
cmp dword [r15 + 0x28], eax
je 0x14007dd04
cmp byte [r15 + 2], 0
je 0x14007dc21
cmp byte [r15], 3
jne 0x14007dbf1
movsxd rax, dword [r15 + 0x2c]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x48]
mov eax, dword [rcx + 0xc]
mov dword [r15 + 0x74], eax
mov dword [r15 + 0x70], eax
mov rax, qword [rcx + 0x10]
mov qword [r15 + 0x68], rax
jmp 0x14007dc73
mov rcx, r15
call fcn.140038470
jmp 0x14007dbce
mov rax, qword [r15 + 0x38]
cmp byte [rax], 0
je 0x14007db4f
mov rcx, r15
call fcn.1400384f0
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
mov r9, qword [rsp + 0x40]
lea r11, [0x140000000]
mov r10d, 0x2460
jmp 0x14007db54
test word [r12 + 8], r10w
je 0x14007dc0e
mov rcx, r12
call fcn.140093400
mov rsi, rbx
mov rdi, qword [rsp + 0x48]
jmp 0x14007e884
mov rdi, qword [rsp + 0x48]
mov rsi, rbx
mov word [r12 + 8], r14w
jmp case.0x14007c403.83
mov rbx, qword [r15 + 0x38]
mov rcx, rbx
call fcn.1400377c0
mov eax, dword [rbx + 0x40]
mov dword [r15 + 0x70], eax
mov rax, qword [rbx + 0x88]
movzx ecx, word [rbx + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rbx + 0x38]
cmp ecx, edx
jle 0x14007dc55
mov ecx, edx
test edx, edx
mov edx, 0
cmovs ecx, edx
mov rdx, qword [rsp + 0x68]
mov dword [r15 + 0x74], ecx
mov rax, qword [rbx + 0x38]
mov qword [r15 + 0x68], rax
mov eax, dword [rdx + 0x7c]
cmp dword [r15 + 0x70], eax
ja 0x1400821f2
mov eax, dword [rdi + 0x30]
mov rcx, qword [r15 + 0x68]
mov dword [r15 + 0x28], eax
movzx eax, byte [rcx]
cmp al, 0x80
jae 0x14007dc91
movzx eax, al
mov dword [r13], eax
mov eax, r14d
jmp 0x14007dc9c
mov rdx, r13
call fcn.140063910
movzx eax, al
movzx eax, al
xor ecx, ecx
mov dword [r15 + 0x48], eax
mov word [r15 + 0x52], cx
mov eax, dword [r13]
cmp dword [r15 + 0x74], eax
jae 0x14007dcfb
mov qword [r15 + 0x68], rcx
mov dword [r15 + 0x74], ecx
mov eax, dword [r13]
cmp eax, 0x18003
ja 0x14007dccd
cmp eax, dword [r15 + 0x70]
jbe 0x14007dd06
mov r10d, 0x2460
mov r9, qword [rsp + 0x40]
mov eax, dword [r9 + 0xc]
test eax, eax
jle 0x140081e51
mov rdi, qword [rsp + 0x48]
dec eax
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea rsi, [r9 + rax*8]
jmp 0x14007e88f
mov rax, qword [r15 + 0x68]
jmp 0x14007ddb4
xor ecx, ecx
movzx eax, word [r15 + 0x52]
cmp eax, esi
jg 0x14007df79
mov eax, dword [r13]
cmp dword [r15 + 0x48], eax
jae 0x14007df3d
mov rax, qword [r15 + 0x68]
mov qword [rbp - 0x48], rax
test rax, rax
jne 0x14007ddb8
mov qword [rbp + 0x10], rax
xor esi, esi
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x40], rax
mov r10, qword [r15 + 0x38]
mov r8d, dword [r13]
mov dword [rsp + 0x38], esi
mov rax, qword [r10 + 0x88]
movzx ecx, word [r10 + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [r10 + 0x38]
cmp ecx, edx
jle 0x14007dd7a
test edx, edx
mov ecx, edx
cmovs ecx, esi
cmp r8d, ecx
ja 0x14007dd96
mov rax, qword [r10 + 0x38]
mov ecx, 0x1010
mov qword [rbp + 0x20], rax
mov word [rbp + 0x18], cx
mov dword [rbp + 0x1c], r8d
jmp 0x14007ddb4
lea r9, [rbp + 0x10]
xor edx, edx
mov rcx, r10
call fcn.140093490
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x1400824e1
mov rax, qword [rbp + 0x20]
mov qword [rbp - 0x48], rax
movzx r14d, word [r15 + 0x52]
mov edx, 0x80
mov ebx, dword [r15 + 0x48]
mov r12d, r14d
mov rcx, qword [rbp - 0x70]
add rbx, rax
mov esi, dword [r13 + r14*4]
mov r13d, dword [r13]
add r13, rax
nop dword [rax]
movzx edi, byte [rbx]
mov dword [rbp - 0x68], edi
cmp edi, edx
jae 0x14007ddff
lea r8, [0x140000000]
inc rbx
movzx eax, byte [rdi + r8 + 0x16cfa0]
jmp 0x14007de3c
lea rdx, [rbp - 0x68]
mov rcx, rbx
call fcn.140063910
mov edi, dword [rbp - 0x68]
movzx eax, al
add rbx, rax
mov eax, 0x80
cmp edi, eax
jb 0x14007de24
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x14007de33
lea rcx, [0x140000000]
movzx eax, byte [rdi + rcx + 0x16cfa0]
mov rcx, qword [rbp - 0x70]
mov edx, 0x80
inc r14d
mov dword [r15 + r12*4 + 0x78], edi
add rsi, rax
movsxd r12, r14d
mov dword [rcx + r12*4], esi
cmp r14d, dword [rsp + 0x78]
jg 0x14007de5c
cmp rbx, r13
jb 0x14007dde0
jmp 0x14007de61
cmp rbx, r13
jb 0x14007de6f
cmp rbx, r13
ja 0x14007de78
mov eax, dword [r15 + 0x70]
cmp rsi, rax
jne 0x14007de78
mov eax, dword [r15 + 0x70]
cmp rsi, rax
jbe 0x14007de89
cmp dword [rcx], 0
jne 0x14007df04
xor edx, edx
mov rbx, r13
mov r14d, edx
sub ebx, dword [rbp - 0x48]
mov r10d, 0x2460
cmp qword [r15 + 0x68], 0
mov word [r15 + 0x52], r14w
mov dword [r15 + 0x48], ebx
jne 0x14007debe
test word [rbp + 0x18], r10w
jne 0x14007deaf
cmp dword [rbp + 0x30], 0
je 0x14007debe
lea rcx, [rbp + 0x10]
call fcn.140093360
mov r10d, 0x2460
mov r13, qword [rbp - 0x70]
mov r14d, 1
mov r12, qword [rbp - 0x78]
mov esi, dword [rsp + 0x78]
movzx eax, word [r15 + 0x52]
cmp eax, esi
jg 0x14007df84
mov rsi, qword [rsp + 0x30]
cmp byte [rsi + 1], 0xf5
jne 0x14007df4a
mov rdx, qword [rsi + 0x10]
mov r8d, 0x800
mov rcx, r12
call fcn.1400850d0
mov rdi, qword [rsp + 0x48]
jmp 0x14007e884
cmp qword [r15 + 0x68], 0
mov r10d, 0x2460
jne 0x14007df32
test word [rbp + 0x18], r10w
jne 0x14007df1e
cmp dword [rbp + 0x30], 0
je 0x14007df32
lea rcx, [rbp + 0x10]
call fcn.140093360
mov r14d, 1
jmp 0x14007dccd
mov r14d, 1
jmp 0x14007dcd3
mov edi, ecx
mov dword [rbp - 0x68], ecx
mov r10d, 0x2460
jmp 0x14007ded0
test word [r12 + 8], r10w
je 0x14007df64
mov rcx, r12
call fcn.140093400
mov rdi, qword [rsp + 0x48]
jmp 0x14007e884
mov rdi, qword [rsp + 0x48]
mov r9, qword [rsp + 0x40]
mov word [r12 + 8], r14w
jmp 0x14007e88f
movsxd rax, esi
mov edi, dword [r15 + rax*4 + 0x78]
mov dword [rbp - 0x68], edi
mov eax, 0x2460
test word [r12 + 8], ax
je 0x14007df99
mov rcx, r12
call fcn.140093400
lea eax, [rsi + 1]
movsxd rcx, eax
mov eax, dword [r13 + rcx*4]
cmp dword [r15 + 0x74], eax
jb 0x14007e0cc
movsxd rax, esi
mov r14d, dword [r13 + rax*4]
add r14, qword [r15 + 0x68]
cmp edi, 0xc
jae 0x14007dfd1
mov r8, r12
mov edx, edi
mov rcx, r14
call fcn.1400863e0
jmp 0x14007e874
movzx eax, byte [rsp + 0x3c]
lea esi, [rdi - 0xc]
shr esi, 1
mov dword [r12 + 0xc], esi
mov byte [r12 + 0xa], al
lea edx, [rsi + 2]
cmp dword [r12 + 0x20], edx
jge 0x14007e05f
mov eax, 1
xor r8d, r8d
mov rcx, r12
mov word [r12 + 8], ax
call fcn.140084830
test eax, eax
je 0x14007e069
mov r12, qword [rsp + 0x58]
mov r15, qword [rsp + 0x68]
mov r14d, 1
mov esi, 7
cmp byte [r15 + 0x61], 0
jne 0x14007e049
cmp byte [r15 + 0x62], 0
jne 0x14007e049
cmp dword [r15 + 0xc8], 0
mov byte [r15 + 0x61], 1
jle 0x14007e042
mov dword [r15 + 0x160], r14d
inc dword [r15 + 0x168]
lea rdx, str.out_of_memory
mov rcx, r12
call fcn.14007c230
mov eax, esi
jmp 0x140081e76
mov rax, qword [r12 + 0x18]
mov qword [r12 + 0x10], rax
mov rcx, qword [r12 + 0x10]
mov rdx, r14
mov r8d, esi
call fcn.1400c6560
mov rax, qword [r12 + 0x10]
lea r11, [0x140000000]
mov r9, qword [rsp + 0x40]
mov r14d, 1
mov r10d, 0x2460
mov byte [rsi + rax], 0
lea eax, [rsi + 1]
mov rsi, qword [rsp + 0x30]
movsxd rcx, eax
mov rax, qword [r12 + 0x10]
mov byte [rcx + rax], 0
mov eax, edi
mov rdi, qword [rsp + 0x48]
and eax, 1
movzx eax, word [r11 + rax*2 + 0x16c97c]
mov word [r12 + 8], ax
jmp case.0x14007c403.83
movzx eax, byte [rsp + 0x3c]
mov byte [r12 + 0xa], al
mov rax, qword [rsp + 0x30]
movzx eax, word [rax + 2]
test al, 0xc0
je 0x14007e0f2
cmp edi, 0xc
jb 0x14007e0ee
test dil, 1
je 0x14007e11b
test al, al
js 0x14007e11b
mov eax, 0x80
cmp edi, eax
jb 0x14007e104
lea r8d, [rdi - 0xc]
shr r8d, 1
jmp 0x14007e116
mov eax, edi
lea rcx, [0x140000000]
movzx r8d, byte [rax + rcx + 0x16cfa0]
test r8d, r8d
jne 0x14007e131
mov r8, r12
lea rcx, [0x1401f0048]
mov edx, edi
call fcn.1400863e0
jmp 0x14007e87a
mov rcx, qword [r15 + 0x38]
mov r9, r12
movsxd rax, esi
mov edx, dword [r13 + rax*4]
call fcn.1400847d0
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e5b
mov rcx, qword [r12 + 0x10]
mov r8, r12
mov edx, edi
call fcn.1400863e0
mov eax, 0xefff
and word [r12 + 8], ax
jmp 0x14007e87a
mov rax, qword [rsp + 0x30]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov rax, qword [rsp + 0x48]
add rbx, rax
movzx eax, byte [rdi]
nop dword [rax]
movzx r8d, byte [rsp + 0x3c]
movzx edx, al
mov rcx, rbx
call fcn.14007b090
movzx eax, byte [rdi + 1]
lea rdi, [rdi + 1]
add rbx, 0x38
test al, al
jne 0x14007e190
jmp 0x14007e87a
mov rcx, qword [rsp + 0x30]
mov rsi, r13
mov r12d, r13d
mov qword [rbp - 0x78], r13
movsxd rax, dword [rcx + 4]
mov rbx, qword [rcx + 0x10]
imul r15, rax, 0x38
mov eax, dword [rcx + 8]
dec eax
add r15, rdi
mov rdi, qword [rsp + 0x58]
cdqe
imul rax, rax, 0x38
movzx r14d, byte [rdi + 0xbf]
add rax, r15
mov qword [rbp - 0x48], rax
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
add rcx, rax
mov qword [rbp - 0x70], rcx
test rbx, rbx
je 0x14007e243
movzx eax, byte [rbx]
mov rdi, r15
movzx r13d, byte [rsp + 0x3c]
nop dword [rax + rax]
movzx r8d, r13b
movzx edx, al
mov rcx, rdi
call fcn.14007b090
movzx eax, byte [rbx + 1]
lea rbx, [rbx + 1]
add rdi, 0x38
test al, al
jne 0x14007e220
mov r13, qword [rbp - 0x78]
mov rbx, qword [rbp - 0x48]
nop word [rax + rax]
lea r8, [rbp - 0x5c]
mov edx, r14d
mov rcx, rbx
call fcn.140086580
mov edi, eax
mov eax, 0x4000
test word [rbx + 8], ax
je 0x14007e29b
test edi, edi
jne 0x14007e277
mov edi, 0xa
jmp 0x14007e29b
test rsi, rsi
je 0x14007e28e
mov rcx, rbx
call fcn.140084680
test eax, eax
jne 0x14007e009
jmp 0x14007e29b
movsxd rcx, dword [rbx]
add r13, rcx
sub dword [rbp - 0x5c], ecx
mov qword [rbp - 0x78], r13
mov eax, dword [rbp - 0x5c]
mov r8d, 1
add rsi, rax
mov ecx, r8d
cmp edi, 0x7f
jbe 0x14007e2cb
mov eax, edi
shr rax, 7
test rax, rax
je 0x14007e2cb
nop word [rax + rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x14007e2c0
add r12d, ecx
mov dword [rbx + 0x24], edi
cmp rbx, r15
je 0x14007e2df
sub rbx, 0x38
jmp 0x14007e250
cmp r12d, 0x7e
jle 0x14007e320
movsxd rax, r12d
mov edx, r8d
shr rax, 7
test rax, rax
je 0x14007e2ff
inc edx
shr rax, 7
test rax, rax
jne 0x14007e2f4
add r12d, edx
mov ecx, r8d
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x14007e31c
inc ecx
shr rax, 7
test rax, rax
jne 0x14007e311
cmp edx, ecx
jge 0x14007e323
inc r12d
mov rdx, qword [rsp + 0x68]
movsxd rbx, r12d
movsxd rax, dword [rdx + 0x7c]
lea r14, [rsi + rbx]
lea rcx, [r14 + r13]
mov qword [rsp + 0x78], r14
cmp rcx, rax
jg 0x1400821eb
mov rdi, qword [rbp - 0x70]
cmp dword [rdi + 0x20], r14d
jge 0x14007e367
xor r8d, r8d
mov edx, r14d
mov rcx, rdi
call fcn.140084830
test eax, eax
jne 0x14007e009
jmp 0x14007e374
mov rax, qword [rdi + 0x18]
and word [rdi + 8], 0xd
mov qword [rdi + 0x10], rax
mov rsi, qword [rdi + 0x10]
mov ecx, 0x80
cmp r12d, ecx
jae 0x14007e390
mov r13d, 1
mov byte [rsi], r12b
mov eax, r13d
jmp 0x14007e3a4
mov rdx, rbx
mov rcx, rsi
call fcn.14006f850
mov ecx, 0x80
lea r13d, [rcx - 0x7f]
movzx edi, al
xor r14d, r14d
nop word [rax + rax]
mov r11d, dword [r15 + 0x24]
cmp r11d, ecx
jae 0x14007e3c5
movsxd rax, edi
mov byte [rax + rsi], r11b
mov eax, r13d
jmp 0x14007e3d3
movsxd rcx, edi
mov rdx, r11
add rcx, rsi
call fcn.14006f850
movzx eax, al
add edi, eax
movsxd r9, r12d
lea eax, [r11 - 1]
add r9, rsi
cmp eax, 6
ja 0x14007e410
mov rdx, qword [r15]
mov rax, r11
lea r11, [0x140000000]
movzx ecx, byte [rax + r11 + 0x16cfa0]
mov ebx, ecx
nop
dec ecx
mov byte [rcx + r9], dl
shr rdx, 8
test ecx, ecx
jne 0x14007e400
jmp 0x14007e439
cmp r11d, 0xc
jb 0x14007e42f
mov ebx, dword [r15 + 0xc]
test ebx, ebx
je 0x14007e432
mov rdx, qword [r15 + 0x10]
mov r8d, ebx
mov rcx, r9
call fcn.1400c6560
jmp 0x14007e432
mov ebx, r14d
lea r11, [0x140000000]
add r12d, ebx
add r15, 0x38
mov ecx, 0x80
cmp r15, qword [rbp - 0x48]
jbe 0x14007e3b0
mov rcx, qword [rbp - 0x70]
mov eax, 0x10
mov r14, qword [rsp + 0x78]
mov r13, qword [rbp - 0x78]
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
mov dword [rcx + 0xc], r14d
lea r14d, [rax - 0xf]
mov word [rcx + 8], ax
test r13, r13
je 0x14007e884
mov r9, qword [rsp + 0x40]
mov eax, 0x4010
mov word [rcx + 8], ax
mov r10d, 0x2460
mov dword [rcx], r13d
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
lea rdx, [rbp + 8]
mov qword [rbp + 8], r13
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x38]
call fcn.14004e9e0
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
mov rax, qword [rsp + 0x30]
mov r10d, 0x2460
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [r12 + 0x70]
test word [rcx + 8], r10w
je 0x14007e511
call fcn.14003ea80
mov rsi, qword [rsp + 0x30]
mov rcx, rax
mov rax, qword [rbp + 8]
mov r10d, 0x2460
mov r9, qword [rsp + 0x40]
mov qword [rcx], rax
jmp 0x14007e88f
mov rsi, qword [rsp + 0x30]
mov eax, 4
mov r9, qword [rsp + 0x40]
mov word [rcx + 8], ax
mov rax, qword [rbp + 8]
mov qword [rcx], rax
jmp 0x14007e88f
mov rax, qword [rsp + 0x30]
mov r13d, dword [rax + 4]
mov rdi, qword [rax + 0x10]
test r13d, r13d
jne 0x14007e60e
cmp dword [r15 + 0xc4], r13d
jg 0x140081e62
test rdi, rdi
jne 0x14007e55e
xor esi, esi
mov ebx, esi
jmp 0x14007e573
or rbx, 0xffffffffffffffff
inc rbx
cmp byte [rdi + rbx], 0
jne 0x14007e562
and ebx, 0x3fffffff
xor esi, esi
mov r8d, dword [r15 + 0x290]
xor edx, edx
add r8d, dword [r15 + 0x28c]
mov rcx, r15
call fcn.140088810
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e78
mov edx, ebx
mov rcx, r15
add rdx, 0x21
call fcn.140055480
mov rsi, rax
test rax, rax
je 0x140081be3
lea r9, [rax + 0x20]
mov rdx, rdi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call fcn.1400c6560
cmp byte [r15 + 0x5f], 0
je 0x14007e5da
mov byte [r15 + 0x5f], 0
mov byte [r15 + 0x67], 1
jmp 0x14007e5e1
inc dword [r15 + 0x28c]
mov rax, qword [r15 + 0x280]
mov qword [rsi + 0x18], rax
mov rax, qword [r15 + 0x298]
mov qword [r15 + 0x280], rsi
mov qword [rsi + 8], rax
mov rax, qword [r15 + 0x2a0]
mov qword [rsi + 0x10], rax
jmp 0x14007e87a
mov r14, qword [r15 + 0x280]
xor esi, esi
mov r12d, esi
test r14, r14
je 0x14007e63b
nop
mov rcx, qword [r14]
mov rdx, rdi
call fcn.140077280
test eax, eax
je 0x14007e65c
mov r14, qword [r14 + 0x18]
inc r12d
test r14, r14
jne 0x14007e620
mov r12, qword [rsp + 0x58]
lea rdx, str.no_such_savepoint:__s
mov rcx, r12
mov r8, rdi
call fcn.14007c230
mov eax, 1
jmp 0x140081e78
cmp dword [r15 + 0xc4], esi
jle 0x14007e66f
cmp r13d, 1
je 0x14008200c
cmp qword [r14 + 0x18], rsi
jne 0x14007e6cd
cmp byte [r15 + 0x67], sil
je 0x14007e6cd
mov ebx, 1
mov dword [rsp + 0x78], ebx
cmp r13d, ebx
jne 0x14007e6d1
mov rdi, qword [rsp + 0x58]
mov rax, qword [rdi]
mov rcx, qword [rax + 0x2a0]
add rcx, qword [rax + 0x298]
test rcx, rcx
mov rcx, rdi
jg 0x14008206a
mov byte [r15 + 0x5f], bl
call fcn.140083430
cmp eax, 5
je 0x14008202a
mov byte [r15 + 0x67], sil
mov ecx, dword [rdi + 0x38]
mov dword [rsp + 0x38], ecx
jmp 0x14007e7c1
mov dword [rsp + 0x78], esi
mov eax, dword [r15 + 0x28c]
sub eax, r12d
lea r12d, [rax - 1]
mov rax, qword [rsp + 0x68]
cmp r13d, 2
jne 0x14007e739
mov r15d, dword [r15 + 0x2c]
mov edi, esi
and r15d, 1
cmp dword [rax + 0x28], esi
jle 0x14007e73c
mov esi, r15d
xor esi, 1
xor edx, edx
mov ebx, edx
mov rcx, qword [rax + 0x20]
mov r8d, esi
mov edx, 0x204
mov rcx, qword [rbx + rcx + 8]
call fcn.1400512d0
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e5b
mov rax, qword [rsp + 0x68]
inc edi
add rbx, 0x20
cmp edi, dword [rax + 0x28]
jl 0x14007e703
xor esi, esi
jmp 0x14007e73c
mov r15d, esi
cmp dword [rax + 0x28], 0
mov edi, esi
jle 0x14007e780
mov rbx, rsi
nop word [rax + rax]
mov rcx, qword [rax + 0x20]
mov r8d, r12d
mov edx, r13d
mov rcx, qword [rbx + rcx + 8]
call fcn.140050b50
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x1400824d7
mov rax, qword [rsp + 0x68]
inc edi
add rbx, 0x20
cmp edi, dword [rax + 0x28]
jl 0x14007e750
test r15d, r15d
mov r15, qword [rsp + 0x68]
je 0x14007e7bd
mov rax, qword [r15 + 8]
test rax, rax
je 0x14007e7b0
nop dword [rax]
nop word [rax + rax]
or dword [rax + 0xc4], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14007e7a0
mov rcx, r15
call fcn.1400707b0
or dword [r15 + 0x2c], 1
mov ebx, dword [rsp + 0x78]
cmp qword [r15 + 0x280], r14
je 0x14007e833
nop word [rax + rax]
cmp qword [r15 + 0x2a8], 0
mov rcx, qword [r15 + 0x280]
mov rax, qword [rcx + 0x18]
mov qword [r15 + 0x280], rax
je 0x14007e7f9
mov rdx, rcx
mov rcx, r15
call fcn.14003b520
jmp 0x14007e823
cmp rcx, qword [r15 + 0x190]
jb 0x14007e81e
cmp rcx, qword [r15 + 0x198]
jae 0x14007e81e
mov rax, qword [r15 + 0x188]
mov qword [rcx], rax
mov qword [r15 + 0x188], rcx
jmp 0x14007e823
call fcn.1400183e0
dec dword [r15 + 0x28c]
cmp qword [r15 + 0x280], r14
jne 0x14007e7d0
cmp r13d, 1
jne 0x14007e8b2
mov rax, qword [r14 + 0x18]
mov rdx, r14
mov rcx, r15
mov qword [r15 + 0x280], rax
call fcn.1400553f0
test ebx, ebx
jne 0x14007e8d2
dec dword [r15 + 0x28c]
mov r8d, r12d
mov edx, r13d
mov rcx, r15
call fcn.140088810
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x1400824d7
mov r14d, 1
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x30]
mov r9, qword [rsp + 0x40]
mov r10d, 0x2460
lea r11, [0x140000000]
mov r15, qword [rsp + 0x68]
add rsi, 0x18
mov r12, qword [rsp + 0x58]
xor r13d, r13d
mov ebx, dword [rbp - 0x7c]
or edx, 0xffffffff
jmp 0x14007c3d7
mov rax, qword [r14 + 8]
mov qword [r15 + 0x298], rax
mov rax, qword [r14 + 0x10]
mov qword [r15 + 0x2a0], rax
test ebx, ebx
je 0x14007e85a
cmp r13d, 2
je 0x14007e85a
mov eax, dword [rsp + 0x38]
jmp 0x14007e86c
mov rax, qword [rsp + 0x30]
mov edx, dword [rax + 8]
test edx, edx
je 0x14007e8f2
test dword [r15 + 0x30], 0x100000
jne 0x140082092
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
test rbx, rbx
je 0x14007ea65
mov rcx, rbx
call fcn.14004e0b0
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x14008209c
mov rax, qword [rsp + 0x30]
cmp dword [rax + 8], 0
je 0x14007e9fc
test byte [r12 + 0xc4], 0x40
je 0x14007e9fc
cmp byte [r15 + 0x5f], 0
je 0x14007e953
cmp dword [r15 + 0xc0], 1
jle 0x14007e9fc
cmp dword [r12 + 0x40], 0
jne 0x14007e975
inc dword [r15 + 0x290]
mov ecx, dword [r15 + 0x290]
add ecx, dword [r15 + 0x28c]
mov dword [r12 + 0x40], ecx
mov r8d, dword [r12 + 0x40]
xor edx, edx
dec r8d
mov rcx, r15
call fcn.140088810
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x14007e9e4
mov edi, dword [r12 + 0x40]
mov rsi, qword [rbx + 8]
cmp byte [rbx + 0x11], al
je 0x14007e9ad
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], al
jne 0x14007e9ad
mov rcx, rbx
call fcn.1400249b0
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x14007e9cb
cmp byte [rcx + 0xa], 0
je 0x14007e9cb
mov edx, edi
call fcn.14003f5f0
mov dword [rsp + 0x38], eax
jmp 0x14007e9d0
mov dword [rsp + 0x38], r13d
cmp byte [rbx + 0x11], 0
je 0x14007e9e4
sub dword [rbx + 0x14], 1
jne 0x14007e9e4
mov rcx, rbx
call fcn.140090730
mov rax, qword [r15 + 0x298]
mov qword [r12 + 0x58], rax
mov rax, qword [r15 + 0x2a0]
mov qword [r12 + 0x60], rax
cmp byte [rbx + 0x11], 0
mov rdi, qword [rbx + 8]
je 0x14007ea17
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x14007ea17
mov rcx, rbx
call fcn.1400249b0
cmp byte [rbx + 0x11], 0
mov rax, qword [rdi + 0x18]
mov rcx, qword [rax + 0x50]
mov edi, dword [rcx + 0x28]
bswap edi
je 0x14007ea38
sub dword [rbx + 0x14], 1
jne 0x14007ea38
mov rcx, rbx
call fcn.140090730
mov rax, qword [rsp + 0x30]
lea r11, [0x140000000]
mov r9, qword [rsp + 0x40]
mov r10d, 0x2460
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rcx + 4]
jmp 0x14007ea6b
mov edi, r13d
mov eax, r13d
mov rsi, qword [rsp + 0x30]
cmp word [rsi + 2], 0
je 0x14007ea89
cmp edi, dword [rsi + 0xc]
jne 0x1400820dc
cmp eax, dword [rsi + 0x10]
jne 0x1400820dc
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
mov rdi, qword [rsp + 0x48]
jmp case.0x14007c403.83
mov rcx, qword [r15 + 0x20]
lea r8, [rbp - 0x20]
mov rdx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
mov edx, dword [rdx + 0xc]
movsxd rax, dword [rax + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14004efe0
mov rcx, qword [rsp + 0x30]
mov r10d, 0x2460
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rcx, qword [r12 + 0x70]
test word [rcx + 8], r10w
je 0x14007eb09
call fcn.14003ea80
mov rsi, qword [rsp + 0x30]
mov rcx, rax
movsxd rax, dword [rbp - 0x20]
mov r10d, 0x2460
mov r9, qword [rsp + 0x40]
mov qword [rcx], rax
jmp 0x14007e88f
mov rsi, qword [rsp + 0x30]
mov eax, 4
mov r9, qword [rsp + 0x40]
mov word [rcx + 8], ax
movsxd rax, dword [rbp - 0x20]
mov qword [rcx], rax
jmp 0x14007e88f
mov rax, qword [rsp + 0x30]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [r15 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.140051440
mov rdx, qword [rsp + 0x30]
mov dword [rsp + 0x38], eax
mov eax, dword [rdx + 8]
cmp eax, 1
jne 0x14007eb6a
mov rcx, qword [rbx + 0x18]
mov eax, dword [rdx + 0xc]
mov dword [rcx], eax
or dword [r15 + 0x2c], 1
jmp 0x14007eb7a
cmp eax, 2
jne 0x14007eb7a
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rdx + 0xc]
mov byte [rcx + 0x70], al
cmp dword [rdx + 4], 1
jne 0x14007eba9
mov rax, qword [r15 + 8]
test rax, rax
je 0x14007eba0
nop dword [rax]
or dword [rax + 0xc4], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14007eb90
and dword [r12 + 0xc4], 0xfffffffe
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
mov rsi, rdx
jmp 0x14007e884
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
test rdi, rdi
je 0x14007ebef
mov eax, dword [rcx + 8]
cmp dword [rdi + 0x4c], eax
je 0x14007ed0b
jmp 0x14007ebef
mov rcx, qword [rsp + 0x30]
test byte [r12 + 0xc4], 1
jne 0x140082136
movsxd r12, dword [rcx + 0xc]
mov edi, r13d
mov rdx, qword [rsp + 0x68]
mov rax, r12
movsxd r15, dword [rcx + 8]
mov r14, r13
shl rax, 5
add rax, qword [rdx + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x6b
jne 0x14007ec84
mov rax, qword [rax + 0x18]
movzx esi, word [rcx + 2]
and esi, 8
or esi, 4
movzx ecx, byte [rax + 0x70]
mov rax, qword [rsp + 0x58]
cmp cl, byte [rax + 0xbf]
jae 0x14007ec4a
mov byte [rax + 0xbf], cl
mov rcx, qword [rsp + 0x30]
test byte [rcx + 2], 0x10
je 0x14007ec71
mov rax, qword [rsp + 0x48]
imul rbx, r15, 0x38
add rbx, rax
mov rcx, rbx
call fcn.140084a70
mov rcx, qword [rsp + 0x30]
mov r15d, dword [rbx]
movzx eax, byte [rcx + 1]
cmp al, 0xf7
jne 0x14007ec88
mov r14, qword [rcx + 0x10]
movzx edi, word [r14 + 8]
jmp 0x14007ec8f
xor esi, esi
jmp 0x14007ec4f
cmp al, 0xfd
jne 0x14007ec8f
mov edi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
mov r9d, r12d
mov r12, qword [rsp + 0x58]
mov r8d, edi
mov rcx, r12
mov byte [rsp + 0x20], 0
call fcn.14001f9b0
mov rdi, rax
test rax, rax
je 0x14007e00e
mov rcx, qword [rax + 0x38]
mov r9, r14
or dword [rax + 8], 4
mov r8d, esi
mov qword [rsp + 0x20], rcx
mov edx, r15d
mov rcx, r13
mov byte [rax + 2], 1
mov dword [rax + 0x4c], r15d
call fcn.14004eae0
mov rcx, qword [rsp + 0x30]
lea r11, [0x140000000]
mov r9, qword [rsp + 0x40]
mov r10d, 0x2460
mov qword [rdi + 0x40], r14
mov r14d, 1
mov dword [rsp + 0x38], eax
cmp byte [rcx + 1], 0xf7
setne al
mov byte [rdi + 4], al
mov rax, qword [rdi + 0x38]
movzx ecx, byte [rcx + 2]
and cl, 3
mov byte [rax + 3], cl
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
or r9d, 0xffffffff
mov byte [rsp + 0x20], 0
movsxd rcx, dword [rax + 8]
mov rax, qword [r12 + 0x98]
mov rbx, qword [rax + rcx*8]
mov rcx, r12
mov rax, qword [rsp + 0x30]
movsx r8d, word [rbx + 0x50]
mov edx, dword [rax + 4]
call fcn.14001f9b0
test rax, rax
je 0x14007e019
or dword [rax + 8], 1
mov r8d, 4
mov byte [rax + 2], 1
mov edx, r14d
mov r9, qword [rbx + 0x40]
mov qword [rax + 0x40], r9
movzx ecx, byte [rbx + 4]
mov byte [rax + 4], cl
mov rax, qword [rax + 0x38]
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.14004eae0
mov dword [rsp + 0x38], eax
jmp 0x14007e87f
mov rbx, qword [rsp + 0x30]
or r9d, 0xffffffff
mov rcx, r12
mov byte [rsp + 0x20], 0
mov r8d, dword [rbx + 8]
mov edx, dword [rbx + 4]
call fcn.14001f9b0
mov rdi, rax
test rax, rax
je 0x14007e019
or dword [rax + 8], 1
lea r9, [rax + 0x10]
mov byte [rax + 2], 1
mov r8, r15
movzx ecx, word [rbx + 2]
xor edx, edx
or ecx, 5
mov dword [rsp + 0x28], 0x41e
mov dword [rsp + 0x20], ecx
mov rcx, qword [r15]
call fcn.1400501a0
test eax, eax
jne 0x140081e76
mov rcx, qword [rdi + 0x10]
lea edx, [rax + 1]
call fcn.14004e0b0
test eax, eax
jne 0x140081e76
mov r15, qword [rbx + 0x10]
mov qword [rdi + 0x40], r15
test r15, r15
je 0x14007eea2
movzx esi, word [rbx + 2]
mov rbx, qword [rdi + 0x10]
or esi, 2
cmp byte [rbx + 0x11], al
je 0x14007ee49
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], al
jne 0x14007ee49
mov rcx, rbx
call fcn.1400249b0
mov r8d, esi
lea rdx, [rbp - 0x14]
mov rcx, rbx
call fcn.140023c10
cmp byte [rbx + 0x11], 0
mov dword [rsp + 0x38], eax
je 0x14007ee74
sub dword [rbx + 0x14], 1
jne 0x14007ee74
mov rcx, rbx
call fcn.140090730
mov eax, dword [rsp + 0x38]
mov ebx, 4
test eax, eax
jne 0x14007ee9c
mov rax, qword [rdi + 0x38]
mov r9, r15
mov edx, dword [rbp - 0x14]
mov r8d, ebx
mov rcx, qword [rdi + 0x10]
mov qword [rsp + 0x20], rax
call fcn.14004eae0
mov dword [rsp + 0x38], eax
mov byte [rdi + 4], 0
jmp 0x14007eeca
mov rax, qword [rdi + 0x38]
mov ebx, 4
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
mov r8d, ebx
mov qword [rsp + 0x20], rax
lea edx, [rbx - 3]
call fcn.14004eae0
mov dword [rsp + 0x38], eax
mov byte [rdi + 4], 1
test eax, eax
jne 0x140081e76
mov rax, qword [rsp + 0x30]
mov ecx, r13d
cmp word [rax + 2], 8
mov eax, dword [rdi + 8]
cmovne ecx, ebx
and eax, 0xfffffffb
or ecx, eax
mov dword [rdi + 8], ecx
jmp 0x14007e874
mov rax, qword [rsp + 0x30]
or r9d, 0xffffffff
mov rcx, r12
mov byte [rsp + 0x20], 1
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.14001f9b0
test rax, rax
je 0x14007e019
mov rdx, qword [rsp + 0x30]
mov r8, rax
mov rcx, qword [rdx + 0x10]
mov qword [rax + 0x40], rcx
mov rcx, r15
mov edx, dword [rdx + 0xc]
call fcn.1400869c0
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
jmp 0x14007e87f
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
test rcx, rcx
je 0x140081628
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
or r9d, 0xffffffff
mov rcx, r12
mov byte [rsp + 0x20], 3
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.14001f9b0
test rax, rax
je 0x14007e019
mov rcx, qword [rsp + 0x30]
mov byte [rax + 2], 1
mov ecx, dword [rcx + 8]
mov dword [rax + 0x2c], ecx
lea rcx, [0x1401efb70]
mov qword [rax + 0x38], rcx
mov byte [rax + 4], 1
jmp 0x14007e87f
mov rdx, qword [r12 + 0x98]
mov rcx, r12
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.1400832c0
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov qword [rax + rcx*8], r13
jmp 0x14007e87f
mov rax, qword [rsp + 0x30]
mov r15d, r13d
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov r14, qword [rax + rcx*8]
cmp byte [r14 + 4], 0
mov byte [r14 + 2], 0
je 0x14007f130
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x48]
movzx eax, byte [rdi + 8]
and al, 0xe
cmp al, 2
jne 0x14007f046
xor edx, edx
mov rcx, rdi
call fcn.1400212c0
movzx eax, word [rdi + 8]
test al, 4
je 0x14007f053
mov rsi, qword [rdi]
jmp 0x14007f079
test al, 8
je 0x14007f065
movsd xmm0, qword [rdi]
call fcn.14002dac0
mov rsi, rax
jmp 0x14007f079
test al, 0x12
je 0x14007f076
mov rcx, rdi
call fcn.14003b570
mov rsi, rax
jmp 0x14007f079
mov rsi, r13
movzx eax, word [rdi + 8]
test al, 4
jne 0x14007f0b5
test al, 8
je 0x14008161d
movsd xmm0, qword [rdi]
xorps xmm1, xmm1
cvtsi2sd xmm1, rsi
comisd xmm1, xmm0
jbe 0x14007f0a8
test bl, 1
lea eax, [rbx - 1]
cmove eax, ebx
mov ebx, eax
jmp 0x14007f0b5
comisd xmm0, xmm1
jbe 0x14007f0b5
test bl, 1
jne 0x14007f0b5
inc ebx
mov rcx, qword [r14 + 0x38]
lea rax, [rsp + 0x60]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, rsi
xor edx, edx
call fcn.14004fc10
mov dword [rsp + 0x38], eax
mov qword [r14 + 0x58], rsi
test eax, eax
jne 0x140081e76
mov eax, dword [rsp + 0x60]
mov byte [r14 + 3], 0
mov dword [r14 + 0x28], r13d
cmp ebx, 0x1a
jl 0x14007f208
test eax, eax
js 0x14007f1ce
jne 0x14007f109
cmp ebx, 0x1b
je 0x14007f1ce
mov dword [rsp + 0x60], r13d
mov rsi, qword [rsp + 0x30]
mov r14d, 1
mov rdi, qword [rsp + 0x48]
add rsi, 0x18
test r15d, r15d
cmove rsi, qword [rsp + 0x30]
jmp 0x14007e884
mov rax, qword [r14 + 0x38]
mov rcx, qword [rsp + 0x30]
movzx edi, byte [rax + 3]
mov rax, qword [r14 + 0x40]
and dil, 2
mov qword [rbp + 0x80], rax
movzx eax, word [rcx + 0x10]
setne r15b
mov word [rbp + 0x90], ax
test bl, 1
mov eax, 1
mov byte [rbp + 0x96], 0
cmovne eax, edx
xor r9d, r9d
mov byte [rbp + 0x92], al
lea rdx, [rbp + 0x80]
movsxd rax, dword [rcx + 0xc]
xor r8d, r8d
imul rcx, rax, 0x38
lea rax, [rsp + 0x60]
add rcx, qword [rsp + 0x48]
mov qword [rbp + 0x88], rcx
mov rcx, qword [r14 + 0x38]
mov qword [rsp + 0x20], rax
call fcn.14004fc10
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
test dil, dil
je 0x14007f0e0
cmp byte [rbp + 0x96], al
jne 0x14007f0e0
mov ecx, dword [rsp + 0x60]
jmp 0x14007f224
mov rcx, qword [r14 + 0x38]
xor edx, edx
mov dword [rsp + 0x60], r13d
call fcn.140050160
mov dword [rsp + 0x38], eax
test eax, eax
je 0x14007f10e
cmp eax, 0x65
jne 0x140081e76
mov r14d, 1
mov dword [rsp + 0x38], r13d
mov dword [rsp + 0x60], r14d
jmp 0x14007dadd
test eax, eax
jg 0x14007f231
jne 0x14007f213
cmp ebx, 0x18
je 0x14007f231
mov rax, qword [r14 + 0x38]
mov ecx, r13d
cmp byte [rax], 0
setne cl
mov dword [rsp + 0x60], ecx
test ecx, ecx
jne 0x14008161d
jmp 0x14007f10e
mov rcx, qword [r14 + 0x38]
mov dword [rsp + 0x60], r13d
and byte [rcx + 1], 0xf1
cmp byte [rcx], 0
mov word [rcx + 0x46], r13w
jne 0x14007f26f
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x14007f26f
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], 0
je 0x14007f26f
dec dx
mov dword [rsp + 0x38], r13d
mov word [rcx + 0x56], dx
jmp 0x14007f10e
call fcn.140025380
jmp 0x14007f1de
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 0xc]
imul rbx, rax, 0x38
add rbx, rdi
cmp dword [rcx + 0x10], 0
jle 0x14007f2cd
mov rax, qword [rsi + 0x40]
lea rdi, [rbp + 0x150]
mov qword [rbp + 0x150], rax
mov r14, r13
movzx eax, word [rcx + 0x10]
mov word [rbp + 0x160], ax
mov qword [rbp + 0x158], rbx
jmp 0x14007f318
mov eax, 0x4000
test word [rbx + 8], ax
je 0x14007f2e8
mov rcx, rbx
call fcn.140084680
test eax, eax
jne 0x14007e019
mov rcx, qword [rsi + 0x40]
call fcn.14007b870
mov rdi, rax
mov r14, rax
test rax, rax
je 0x14007e013
mov r8, qword [rbx + 0x10]
mov r9, rax
mov edx, dword [rbx + 0xc]
mov rcx, qword [rsi + 0x40]
call fcn.140086150
mov rcx, qword [rsp + 0x30]
mov byte [rdi + 0x12], 0
mov ebx, r13d
cmp byte [rcx], 0x1c
jne 0x14007f34d
movzx edx, word [rdi + 0x10]
mov ecx, r13d
test edx, edx
je 0x14007f34d
mov rax, qword [rdi + 8]
add rax, 8
test byte [rax], 1
jne 0x14007f348
inc ecx
add rax, 0x38
cmp ecx, edx
jl 0x14007f337
jmp 0x14007f34d
mov ebx, 1
mov rcx, qword [rsi + 0x38]
lea rax, [rbp - 0x18]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rdi
call fcn.14004fc10
mov dword [rsp + 0x38], eax
test r14, r14
je 0x14007f380
mov rdx, r14
mov rcx, r15
call fcn.140055440
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
mov eax, dword [rbp - 0x18]
mov ecx, r13d
test eax, eax
mov dword [rsi + 0x2c], eax
mov byte [rsi + 3], 0
mov r14d, 1
sete cl
mov dword [rsi + 0x28], r13d
mov eax, r14d
sub al, cl
mov byte [rsi + 2], al
mov rsi, qword [rsp + 0x30]
cmp byte [rsi], 0x1e
jne 0x14007f3c8
test ecx, ecx
jne 0x140081628
mov rdi, qword [rsp + 0x48]
jmp 0x14007e884
test ebx, ebx
jne 0x140081628
test ecx, ecx
je 0x140081628
mov rdi, qword [rsp + 0x48]
jmp 0x14007e884
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, rdi
movzx eax, word [rbx + 8]
test al, 4
jne case.0x14007c403.32
test al, 8
jne 0x14007f414
test al, 2
je 0x14007f41c
mov edx, r14d
mov rcx, rbx
call fcn.1400212c0
mov r9, qword [rsp + 0x40]
jmp 0x14007f41c
mov rcx, rbx
call fcn.140083ab0
test byte [rbx + 8], 4
je 0x14007dae2
mov rbx, qword [rsp + 0x30]
xor r9d, r9d
mov rax, qword [r12 + 0x98]
xor edx, edx
mov dword [rbp - 0x40], r13d
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
mov rbx, qword [rcx + rax]
lea rax, [rbp - 0x40]
mov rcx, qword [rdi + 0x38]
mov r8, rbx
mov qword [rsp + 0x20], rax
call fcn.14004fc10
mov rsi, qword [rsp + 0x30]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp - 0x40]
mov qword [rdi + 0x58], rbx
mov word [rdi + 2], 0
mov dword [rdi + 0x28], r13d
mov dword [rdi + 0x2c], eax
test eax, eax
je 0x14007f4a5
cmp dword [rsi + 8], 0
jne 0x140081628
mov ecx, 0x15094
call fcn.1400537c0
mov dword [rsp + 0x38], eax
jmp 0x14007f4a9
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
mov rdi, qword [rsp + 0x48]
jmp 0x14007e884
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 8]
imul rdx, rax, 0x38
add rdx, qword [r12 + 0x70]
test word [rdx + 8], r10w
je 0x14007f4f3
mov rcx, rdx
call fcn.14003ea80
mov r9, qword [rsp + 0x40]
lea r11, [0x140000000]
mov rdx, rax
mov r10d, 0x2460
jmp 0x14007f4fc
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [r12 + 0x98]
mov rsi, rbx
movsxd rcx, dword [rbx + 4]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x18]
mov qword [rdx], rax
movsxd rcx, dword [rbx + 4]
mov rax, qword [r12 + 0x98]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
mov rbx, r13
mov qword [rbp - 0x50], rbx
mov edi, r13d
mov dword [rbp - 0x64], r13d
movsxd rax, dword [rax + 8]
imul r14, rax, 0x38
add r14, qword [r12 + 0x70]
test word [r14 + 8], r10w
je 0x14007f563
mov rcx, r14
call fcn.14003ea80
mov r14, rax
jmp 0x14007f56d
mov eax, 4
mov word [r14 + 8], ax
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rsi, qword [rax + rcx*8]
test byte [rsi + 8], 2
jne 0x14007f630
mov rbx, qword [rsi + 0x38]
cmp byte [rbx], 0
jne 0x14007f5cd
test byte [rbx + 1], 8
je 0x14007f5cd
mov dword [rsp + 0x38], r13d
mov rbx, qword [rsi + 0x38]
mov rcx, rbx
call fcn.1400377c0
mov rbx, qword [rbx + 0x30]
movabs r15, 0x7fffffffffffffff
mov qword [rbp - 0x50], rbx
cmp rbx, r15
jl 0x14007f676
or dword [rsi + 8], 2
jmp 0x14007f63a
mov rcx, rbx
call fcn.14003be40
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x14007f603
mov rcx, rbx
mov dword [rbp - 0x64], r13d
call fcn.14003bd40
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x14007f5fd
or byte [rbx + 1], 8
mov edi, eax
mov dword [rsp + 0x38], eax
jmp 0x14007f5a0
and byte [rbx + 1], 0xf7
jmp 0x14007f617
cmp eax, 0x10
jne 0x14007f617
mov edi, 1
mov eax, r13d
mov dword [rbp - 0x64], edi
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
test edi, edi
je 0x14007f5a0
mov ebx, 1
mov qword [rbp - 0x50], rbx
movabs r15, 0x7fffffffffffffff
mov rax, qword [rsp + 0x30]
movsxd rdx, dword [rax + 0xc]
test edx, edx
je 0x14007f6b3
mov rcx, qword [r12 + 0x100]
test rcx, rcx
je 0x14007f67f
mov rax, qword [rcx + 8]
test rax, rax
je 0x14007f66c
nop dword [rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14007f660
imul rdi, rdx, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x14007f688
inc rbx
mov qword [rbp - 0x50], rbx
jmp 0x14007f63a
imul rdi, rdx, 0x38
add rdi, qword [rsp + 0x48]
mov rcx, rdi
call fcn.140084a70
mov rax, qword [rdi]
cmp rax, r15
je 0x14007f718
test byte [rsi + 8], 2
jne 0x14007f718
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp - 0x50], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x14007f722
mov edi, r13d
nop dword [rax]
lea rdx, [rbp - 0x50]
mov ecx, 8
call fcn.140018710
mov rbx, qword [rbp - 0x50]
movabs rax, 0x3fffffffffffffff
mov rcx, qword [rsi + 0x38]
and rbx, rax
inc rbx
lea rax, [rbp - 0x64]
mov r8, rbx
mov qword [rbp - 0x50], rbx
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor edx, edx
call fcn.14004fc10
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
cmp dword [rbp - 0x64], eax
jne 0x14007f722
inc edi
cmp edi, 0x64
jl 0x14007f6c0
mov eax, 0xd
jmp 0x140081e76
mov byte [rsi + 3], 0
mov dword [rsi + 0x28], r13d
mov qword [r14], rbx
jmp 0x14007e874
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul r9, rax, 0x38
mov rax, qword [r12 + 0x98]
add r9, rdi
mov rdi, qword [rax + rcx*8]
cmp bl, 0x76
jne 0x14007f774
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
mov rdx, qword [rcx + rax]
mov rcx, qword [rsp + 0x30]
jmp 0x14007f77d
mov rcx, qword [rsp + 0x30]
movsxd rdx, dword [rcx + 0xc]
cmp byte [rcx + 1], 0xfa
mov qword [rbp + 0x128], rdx
jne 0x14007f7b0
cmp qword [r15 + 0x128], 0
je 0x14007f7b0
movsx rcx, byte [rdi + 1]
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax]
mov rcx, qword [rsp + 0x30]
mov rbx, qword [rcx + 0x10]
jmp 0x14007f7b6
mov rbx, r13
mov rsi, r13
test byte [rcx + 2], 1
je 0x14007f7c1
inc dword [r12 + 0x3c]
test byte [rcx + 2], 0x20
je 0x14007f7cb
mov qword [r15 + 0x38], rdx
mov rax, qword [r9 + 0x10]
movzx r8d, word [rcx + 2]
mov qword [rbp + 0x130], rax
mov eax, dword [r9 + 0xc]
mov dword [rbp + 0x144], eax
test r8b, 0x10
je 0x14007f7f0
mov ecx, dword [rdi + 0x2c]
jmp 0x14007f7f3
mov ecx, r13d
mov eax, 0x4000
test word [r9 + 8], ax
je 0x14007f80a
mov eax, dword [r9]
mov dword [rbp + 0x148], eax
jmp 0x14007f811
mov dword [rbp + 0x148], r13d
mov qword [rbp + 0x120], r13
lea rdx, [rbp + 0x120]
mov r9d, ecx
and r8d, 0xa
mov rcx, qword [rdi + 0x38]
call fcn.14004f1b0
mov dword [rsp + 0x38], eax
mov byte [rdi + 3], 0
mov dword [rdi + 0x28], r13d
test eax, eax
jne 0x140081e76
test rbx, rbx
je 0x140081be3
mov rax, qword [rsp + 0x30]
mov edx, 0x12
mov r9, qword [rbx]
mov r8, rsi
mov rcx, qword [r15 + 0x120]
test byte [rax + 2], 4
mov eax, 0x17
cmovne edx, eax
mov rax, qword [rbp + 0x128]
mov qword [rsp + 0x20], rax
call qword [r15 + 0x128]
jmp 0x14007e87a
mov rax, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
cmp byte [rdx + 1], 0xfa
mov r15d, dword [rax + 8]
mov rax, qword [r12 + 0x98]
mov rdi, qword [rax + rcx*8]
jne 0x14007f8f6
mov rax, qword [rsp + 0x68]
cmp qword [rax + 0x128], 0
je 0x14007f8f6
movsx rcx, byte [rdi + 1]
mov rax, qword [rax + 0x20]
mov rsi, qword [rdx + 0x10]
shl rcx, 5
test byte [rdx + 2], 2
mov r14, qword [rcx + rax]
je 0x14007f8fc
cmp byte [rdi + 4], 0
je 0x14007f8fc
mov rbx, qword [rdi + 0x38]
mov rcx, rbx
call fcn.1400377c0
mov rax, qword [rbx + 0x30]
mov rdx, qword [rsp + 0x30]
mov qword [rdi + 0x58], rax
jmp 0x14007f8fc
mov r14, r13
mov rsi, r13
movzx edx, byte [rdx + 2]
mov rcx, qword [rdi + 0x38]
call fcn.14004eb90
mov dword [rsp + 0x38], eax
mov qword [rdi + 0x28], 0
test eax, eax
jne 0x140081e76
test r15b, 1
je 0x140081bf2
inc dword [r12 + 0x3c]
mov r15, qword [rsp + 0x68]
mov r10, qword [r15 + 0x128]
test r10, r10
je 0x140081bf2
test byte [rsi + 0x40], 0x20
jne 0x140081bf2
mov rax, qword [rdi + 0x58]
mov r8, r14
mov r9, qword [rsi]
mov edx, 9
mov rcx, qword [r15 + 0x120]
mov qword [rsp + 0x20], rax
call r10
jmp 0x14007e874
mov eax, dword [r12 + 0x3c]
add dword [r15 + 0x78], eax
mov dword [r15 + 0x74], eax
mov dword [r12 + 0x3c], r13d
jmp case.0x14007c403.83
mov rbx, qword [rsp + 0x30]
lea r9, [rbp - 0x3c]
mov rax, qword [r12 + 0x98]
mov dword [rbp - 0x3c], r13d
movsxd rcx, dword [rbx + 4]
mov r8d, dword [rbx + 0x10]
mov rcx, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul rdx, rax, 0x38
add rdx, rdi
call fcn.140086870
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
mov rsi, rbx
cmp dword [rbp - 0x3c], eax
jne 0x140081628
jmp 0x14007e884
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r12 + 0x98]
add rdx, rdi
mov rcx, qword [rax + rcx*8]
call fcn.140086ea0
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r12 + 0x98]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x28], r13d
jmp 0x14007e87f
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [r12 + 0x70]
test word [rbx + 8], r10w
je 0x14007fa48
mov rcx, rbx
call fcn.14003ea80
mov rbx, rax
jmp 0x14007fa51
mov eax, 4
mov word [rbx + 8], ax
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + 0x38]
mov rcx, rdi
call fcn.1400377c0
mov r8d, dword [rdi + 0x40]
cmp r8d, dword [r15 + 0x7c]
ja 0x1400821f5
mov r9, rbx
xor edx, edx
mov rcx, rdi
call fcn.1400847d0
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
mov rsi, qword [rsp + 0x30]
cmp dword [rsi + 0xc], eax
jne 0x14007dc04
mov eax, 0x1000
test word [rbx + 8], ax
je 0x14007dc04
mov rcx, rbx
call fcn.140084ac0
test eax, eax
jne 0x14007e019
mov rdi, qword [rsp + 0x48]
jmp 0x14007e884
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
add rdi, qword [r12 + 0x70]
test word [rdi + 8], r10w
je 0x14007fb08
mov rcx, rdi
call fcn.14003ea80
mov r9, qword [rsp + 0x40]
lea r11, [0x140000000]
mov rdi, rax
mov r10d, 0x2460
jmp 0x14007fb11
mov eax, 4
mov word [rdi + 8], ax
movsxd rcx, dword [rbx + 4]
mov rax, qword [r12 + 0x98]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x14007fb3b
mov rsi, qword [rsp + 0x30]
mov word [rdi + 8], r14w
mov rdi, qword [rsp + 0x48]
jmp case.0x14007c403.83
cmp byte [rbx + 3], 0
je 0x14007fb51
mov rax, qword [rbx + 0x58]
mov qword [rbp - 8], rax
mov qword [rdi], rax
jmp 0x14007e87a
cmp byte [rbx], 2
jne 0x14007fb8e
mov rcx, qword [rbx + 0x38]
lea rdx, [rbp - 8]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r12
mov dword [rsp + 0x38], eax
call fcn.140088520
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
mov rax, qword [rbp - 8]
mov qword [rdi], rax
jmp 0x14007e87a
mov rax, qword [rbx + 0x38]
cmp byte [rax], 0
je 0x14007fbad
mov rcx, rbx
call fcn.1400384f0
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
jmp 0x14007fbb2
mov dword [rsp + 0x38], r13d
cmp byte [rbx + 2], 0
je 0x14007fbc2
mov word [rdi + 8], r14w
jmp 0x14007e87a
mov rbx, qword [rbx + 0x38]
mov rcx, rbx
call fcn.1400377c0
mov rax, qword [rbx + 0x30]
mov qword [rbp - 8], rax
mov qword [rdi], rax
jmp 0x14007e87a
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx], 0
mov byte [rbx + 2], 1
mov dword [rbx + 0x28], r13d
jne 0x14007e87f
mov rbx, qword [rbx + 0x38]
mov rcx, qword [rbx + 0x18]
call fcn.1400183e0
mov qword [rbx + 0x18], r13
mov byte [rbx], 1
jmp 0x14007e87f
mov rax, qword [rsp + 0x30]
mov r14d, r13d
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rsi, qword [rax + rcx*8]
mov rdi, qword [rsi + 0x38]
cmp bl, 0x7f
jne 0x14007fc4e
mov dword [rsi + 0x2c], 0xffffffff
cmp byte [rdi], 0
je 0x140081bf2
cmp byte [rdi], 0
jne 0x14007fc62
test byte [rdi + 1], 8
je 0x14007fc62
mov eax, r13d
mov dword [rsp + 0x38], eax
jmp 0x14007fcb0
mov rcx, rdi
call fcn.14003be40
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x14007fc8e
mov rcx, rdi
call fcn.14003bd40
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x14007fc88
or byte [rdi + 1], 8
jmp 0x14007fc9e
and byte [rdi + 1], 0xf7
jmp 0x14007fc9e
cmp eax, 0x10
jne 0x14007fc9e
lea r14d, [rax - 0xf]
mov eax, r13d
mov dword [rsp + 0x38], eax
mov r9, qword [rsp + 0x40]
lea r11, [0x140000000]
mov r10d, 0x2460
mov byte [rsi + 2], r14b
mov byte [rsi + 3], 0
mov dword [rsi + 0x28], r13d
test eax, eax
jne 0x140081e76
mov rsi, qword [rsp + 0x30]
cmp dword [rsi + 8], eax
jle 0x140081bf7
test r14d, r14d
lea r14d, [rax + 1]
jne 0x140081628
mov rdi, qword [rsp + 0x48]
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x38]
mov rcx, rbx
call fcn.14003be40
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x14007fd27
mov rcx, rbx
mov dword [rbp - 0x58], r13d
mov esi, r13d
call fcn.14003bba0
mov dword [rsp + 0x38], eax
jmp 0x14007fd3f
cmp eax, 0x10
jne 0x14007fd3c
mov eax, r13d
mov dword [rbp - 0x58], r14d
mov dword [rsp + 0x38], eax
mov esi, r14d
jmp 0x14007fd3f
mov esi, dword [rbp - 0x58]
test eax, eax
jne 0x140081e76
test esi, esi
jne 0x140081623
cmp byte [rbx], sil
jne 0x14007e87f
mov rax, qword [rbx + 0x88]
cmp byte [rax + 8], sil
je 0x14007e87f
movsx r9d, byte [rbx + 0x54]
xor dl, dl
movzx r8d, word [rax + 0x16]
test r9d, r9d
jle 0x14007fd9d
nop word [rax + rax]
movzx eax, dl
inc dl
mov rcx, qword [rbx + rax*8 + 0x90]
movzx eax, word [rcx + 0x16]
imul r8, rax
movzx eax, dl
cmp eax, r9d
jl 0x14007fd80
test r8, r8
js 0x14007e87f
mov rcx, r8
call fcn.140067d20
mov rsi, qword [rsp + 0x30]
movsx ecx, ax
cmp ecx, dword [rsi + 0xc]
jge 0x14007e884
mov r9, qword [rsp + 0x40]
mov dword [rbp - 0x58], r14d
jmp 0x14007dae7
inc dword [r12 + 0xd8]
mov rax, qword [rsp + 0x30]
mov edi, r14d
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi], 1
mov rbx, qword [rsi + 0x38]
jne 0x14007fe49
cmp byte [rbx + 0x58], 0
mov dword [rsp + 0x38], r13d
jne 0x14007fe1e
cmp qword [rbx + 0x38], 0
lea rdx, [rbx + 0x38]
je 0x14007fe7c
lea rcx, [rbx + 0x60]
mov edi, r13d
call fcn.140096040
mov dword [rsp + 0x38], eax
jmp 0x14007fe7c
mov rcx, rbx
call fcn.1400950e0
mov edx, eax
mov rcx, rbx
call fcn.140095250
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x14007fe7c
mov rcx, rbx
call fcn.140095da0
mov dword [rsp + 0x38], eax
mov edi, r13d
jmp 0x14007fe7c
mov rcx, rbx
call fcn.14003be40
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x14007fe6a
mov rcx, rbx
mov edi, r13d
call fcn.14003bba0
mov dword [rsp + 0x38], eax
jmp 0x14007fe74
cmp eax, 0x10
jne 0x14007fe74
mov dword [rsp + 0x38], r13d
mov byte [rsi + 3], 0
mov dword [rsi + 0x28], r13d
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
mov byte [rsi + 2], dil
mov rsi, qword [rsp + 0x30]
test edi, edi
jne 0x140081628
mov rdi, qword [rsp + 0x48]
jmp 0x14007e884
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rbx, qword [rax + rcx*8]
mov rcx, r15
mov rdx, rbx
call fcn.140086b80
jmp 0x14007ff05
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
cmp qword [rax + rcx*8], 0
je 0x14007c644
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x30]
mov rcx, qword [rbx + 0x38]
mov edx, dword [rax + 0xc]
call qword [rax + 0x10]
mov dword [rsp + 0x38], eax
mov dword [rbx + 0x28], r13d
test eax, eax
jne 0x14007ff2a
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x30]
movzx eax, word [rax + 2]
inc dword [r12 + rax*4 + 0xd0]
jmp case.0x14007c403.13
cmp eax, 0x65
jne 0x140081e76
mov dword [rsp + 0x38], r13d
mov byte [rbx + 2], 1
jmp 0x1400817ec
mov rax, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, rdx
test byte [rcx + 2], 1
je 0x14007ff76
inc dword [r12 + 0x3c]
mov eax, 0x4000
test word [rbx + 8], ax
je 0x14007ff9b
mov rcx, rbx
call fcn.140084680
test eax, eax
jne 0x140081e76
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x48]
cmp byte [rcx], 0x80
jne 0x14007ffad
mov rdx, rbx
mov rcx, rdi
call fcn.140086f70
jmp 0x140080011
movsxd rax, dword [rbx + 0xc]
mov qword [rbp + 0x170], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0x168], rax
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, rdx
mov qword [rbp + 0x180], rcx
mov rcx, qword [rsp + 0x30]
movzx r8d, word [rcx + 2]
movzx eax, word [rcx + 0x10]
mov word [rbp + 0x188], ax
test r8b, 0x10
je 0x14007fff6
mov r9d, dword [rdi + 0x2c]
jmp 0x14007fff9
mov r9d, r13d
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp + 0x168]
and r8d, 0xa
call fcn.14004f1b0
mov dword [rdi + 0x28], r13d
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
jmp 0x14007e87a
mov rax, qword [rsp + 0x30]
lea rdx, [rbp + 0xb8]
xor r9d, r9d
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rbx + 0x40]
mov rdi, qword [rbx + 0x38]
mov qword [rbp + 0xb8], rax
movzx eax, word [rcx + 0xc]
mov word [rbp + 0xc8], ax
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
lea rax, [rbp - 0x1c]
mov byte [rbp + 0xca], 0
add rcx, qword [rsp + 0x48]
mov qword [rbp + 0xc0], rcx
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.14004fc10
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
cmp dword [rbp - 0x1c], eax
jne 0x1400800b6
mov dl, 4
mov rcx, rdi
call fcn.14004eb90
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
mov qword [rbx + 0x28], 0
jmp 0x14007e87a
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
cmp byte [rax], 0
je 0x140080109
mov rcx, rbx
call fcn.1400384f0
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
mov r9, qword [rsp + 0x40]
lea r11, [0x140000000]
mov r10d, 0x2460
jmp 0x14008010e
mov dword [rsp + 0x38], r13d
cmp byte [rbx + 2], 0
jne 0x1400801dd
mov rdx, qword [rbx + 0x38]
lea r8, [rbp]
mov rcx, r15
mov qword [rbp], r13
call fcn.1400838a0
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
mov rax, qword [rsp + 0x30]
mov r10d, 0x2460
cmp byte [rax], 0x83
jne 0x140080186
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r12 + 0x98]
mov rsi, qword [rsp + 0x30]
mov r9, qword [rsp + 0x40]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp]
mov qword [rdx + 0x58], rax
mov rax, qword [rsp + 0x30]
mov word [rdx + 2], 0x100
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x20], rax
mov qword [rdx + 0x30], rbx
jmp 0x14007e88f
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [r12 + 0x70]
test word [rcx + 8], r10w
je 0x1400801be
call fcn.14003ea80
mov rsi, qword [rsp + 0x30]
mov rcx, rax
mov rax, qword [rbp]
mov r10d, 0x2460
mov r9, qword [rsp + 0x40]
mov qword [rcx], rax
jmp 0x14007e88f
mov rsi, qword [rsp + 0x30]
mov eax, 4
mov r9, qword [rsp + 0x40]
mov word [rcx + 8], ax
mov rax, qword [rbp]
mov qword [rcx], rax
jmp 0x14007e88f
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, rdi
test word [rcx + 8], r10w
je 0x1400801fe
call fcn.140093400
jmp 0x14007e87f
mov rsi, qword [rsp + 0x30]
mov word [rcx + 8], r14w
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
lea r9, [rbp - 0x80]
cmp bl, 0x28
mov dword [rbp - 0x80], r13d
lea r8, [rbp + 0xd0]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rdx + 0x40]
mov qword [rbp + 0xd0], rax
movzx eax, word [rcx + 0x10]
mov word [rbp + 0xe0], ax
sbb al, al
mov byte [rbp + 0xe2], al
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, rdi
mov qword [rbp + 0xd8], rcx
mov rcx, r15
call fcn.140083770
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x30]
test byte [rax], 1
mov eax, dword [rbp - 0x80]
jne 0x140080286
neg eax
jmp 0x140080288
inc eax
mov ecx, dword [rsp + 0x38]
mov dword [rbp - 0x80], eax
test ecx, ecx
jne 0x140082178
mov rsi, qword [rsp + 0x30]
test eax, eax
jg 0x140081628
jmp 0x14007e884
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
add rdi, qword [r12 + 0x70]
test word [rdi + 8], r10w
je 0x1400802d4
mov rcx, rdi
call fcn.14003ea80
mov rcx, qword [rsp + 0x30]
mov rdi, rax
jmp 0x1400802dd
mov eax, 4
mov word [rdi + 8], ax
mov word [rdi + 8], r14w
mov eax, dword [r15 + 0xcc]
inc eax
cmp dword [r15 + 0xc0], eax
jg 0x140082140
mov r12, qword [rsp + 0x68]
movsxd r15, dword [rcx + 0xc]
mov esi, dword [rcx + 4]
mov r14, r15
shl r14, 5
mov rax, qword [r12 + 0x20]
mov dword [rbp - 0x38], r13d
mov rbx, qword [r14 + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x140080330
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x140080330
mov rcx, rbx
call fcn.1400249b0
lea r8, [rbp - 0x38]
mov edx, esi
mov rcx, rbx
call fcn.1400240a0
cmp byte [rbx + 0x11], 0
mov dword [rsp + 0x38], eax
je 0x140080356
sub dword [rbx + 0x14], 1
jne 0x140080356
mov rcx, rbx
call fcn.140090730
movsxd rdx, dword [rbp - 0x38]
mov eax, 4
mov word [rdi + 8], ax
mov eax, dword [rsp + 0x38]
mov qword [rdi], rdx
test eax, eax
jne 0x140081e5b
test edx, edx
je 0x140081bf2
mov rax, qword [rsp + 0x30]
mov r9, qword [r12 + 0x20]
mov r8d, dword [rax + 4]
mov rax, qword [r14 + r9 + 0x18]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1400803ab
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x38], edx
jne 0x1400803a3
mov dword [rax + 0x38], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140080396
mov rax, qword [r14 + r9 + 0x18]
mov rcx, qword [rax + 0x28]
test rcx, rcx
je 0x1400803d5
nop dword [rax]
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x58], edx
jne 0x1400803cd
mov dword [rax + 0x58], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x1400803c0
lea eax, [r15 + 1]
mov byte [rsp + 0x50], al
jmp 0x14007e874
mov rax, qword [rsp + 0x30]
lea r8, [rbp - 0x34]
mov rcx, qword [r15 + 0x20]
mov rdx, qword [rsp + 0x30]
mov dword [rbp - 0x34], r13d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 8]
mov edx, dword [rdx + 4]
cmove r8, r13
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14004e3a0
mov rsi, qword [rsp + 0x30]
mov dword [rsp + 0x38], eax
cmp dword [rsi + 0xc], 0
je 0x140080441
movsxd rdx, dword [rbp - 0x34]
add dword [r12 + 0x3c], edx
movsxd rax, dword [rsi + 0xc]
test eax, eax
jle 0x14008043d
imul rcx, rax, 0x38
add qword [rcx + rdi], rdx
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
jmp 0x14007e884
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x140080479
mov rdx, qword [rcx + 0x38]
mov rcx, r15
call fcn.140086c30
jmp 0x14007e87f
mov rcx, qword [rcx + 0x38]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.14004e3a0
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
jmp 0x14007e87f
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
add rdi, qword [r12 + 0x70]
test word [rdi + 8], r10w
je 0x1400804c3
mov rcx, rdi
call fcn.14003ea80
mov rdi, rax
jmp 0x1400804cc
mov eax, 4
mov word [rdi + 8], ax
movsxd rcx, dword [rbx + 4]
mov rax, qword [r15 + 0x20]
mov esi, dword [rbx + 0xc]
shl rcx, 5
mov dword [rbp - 0x30], r13d
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x1400804fb
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1400804fb
mov rcx, rbx
call fcn.1400249b0
mov r8d, esi
lea rdx, [rbp - 0x30]
mov rcx, rbx
call fcn.140023c10
cmp byte [rbx + 0x11], 0
mov dword [rsp + 0x38], eax
je 0x140080526
sub dword [rbx + 0x14], 1
jne 0x140080526
mov rcx, rbx
call fcn.140090730
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
movsxd rax, dword [rbp - 0x30]
mov qword [rdi], rax
jmp 0x14007e87a
mov rax, qword [rsp + 0x30]
xor r9d, r9d
inc byte [r15 + 0x6a]
xor r8d, r8d
mov rcx, r15
mov qword [rsp + 0x20], r13
mov rdx, qword [rax + 0x10]
call fcn.140012e50
dec byte [r15 + 0x6a]
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
jmp 0x14007e87f
mov rbx, qword [rsp + 0x30]
lea rax, [r12 + 0x90]
mov r8, qword [r15 + 0x20]
lea r9, str.sqlite_master
mov qword [rbp + 0xa8], rax
mov qword [rbp + 0xa0], r15
movsxd rcx, dword [rbx + 4]
mov rax, qword [rbx + 0x10]
mov rdx, rcx
shl rdx, 5
mov dword [rbp + 0xb0], ecx
mov rcx, r15
mov qword [rsp + 0x20], rax
mov r8, qword [rdx + r8]
lea rdx, str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s_ORDER_BY_rowid
call fcn.140067e80
mov rbx, rax
test rax, rax
je 0x140082153
lea r9, [rbp + 0xa0]
mov byte [r15 + 0xb5], 1
lea r8, [fcn.1400644a0]
mov dword [rbp + 0xb4], r13d
mov rdx, rax
mov qword [rsp + 0x20], r13
mov rcx, r15
call fcn.140012e50
test eax, eax
mov rdx, rbx
mov rcx, r15
cmove eax, dword [rbp + 0xb4]
mov dword [rsp + 0x38], eax
call fcn.140055440
mov ecx, dword [rsp + 0x38]
mov byte [r15 + 0xb5], 0
test ecx, ecx
je 0x14007e87f
mov esi, 7
mov rcx, r15
call fcn.1400707b0
mov eax, dword [rsp + 0x38]
cmp eax, 7
je 0x14007e01e
jmp 0x140081e76
mov rax, qword [rsp + 0x30]
mov rcx, r15
mov edx, dword [rax + 4]
call fcn.14004bd50
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
jmp 0x14007e87f
mov rax, qword [rsp + 0x30]
mov rcx, r15
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1400780a0
jmp 0x14007e87f
mov rax, qword [rsp + 0x30]
mov rcx, r15
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.140077f90
jmp 0x14007e87f
mov rax, qword [rsp + 0x30]
mov rcx, r15
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.140078180
jmp 0x14007e87f
mov rcx, qword [rsp + 0x30]
lea r8, [rbp - 0x10]
mov qword [rsp + 0x20], r8
mov r8, qword [rsp + 0x30]
movsxd rax, dword [rcx + 0xc]
mov rdx, qword [rcx + 0x10]
mov r8d, dword [r8 + 8]
add rdx, 4
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 4]
add rdi, qword [rsp + 0x48]
imul rbx, rax, 0x38
movzx eax, word [rcx + 2]
mov rcx, qword [r15 + 0x20]
mov r9d, dword [rdi]
add rbx, qword [rsp + 0x48]
inc r9d
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14004f5c0
mov rsi, rax
mov eax, 0x2460
test word [rbx + 8], ax
je 0x14008071f
mov rcx, rbx
call fcn.140093400
jmp 0x140080724
mov word [rbx + 8], r14w
mov eax, dword [rbp - 0x10]
test eax, eax
je 0x14008075a
test rsi, rsi
je 0x14007e019
dec eax
mov r9b, 1
movsxd rcx, eax
or r8d, 0xffffffff
sub qword [rdi], rcx
lea rax, [fcn.1400183e0]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov rdx, rsi
call fcn.140084e70
test byte [rbx + 8], 2
movzx ecx, byte [rsp + 0x3c]
je 0x140081be3
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x140081be3
movzx edx, cl
mov rcx, rbx
call fcn.140085250
jmp 0x14007e87a
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
add rbx, rdi
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x48]
test byte [rbx + 8], 0x20
jne 0x1400807ba
mov rcx, rbx
call fcn.140084d20
test byte [rbx + 8], 0x20
je 0x14007e019
mov rdx, qword [rdi]
mov rcx, qword [rbx]
call fcn.140071290
jmp 0x14007e87a
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, rsi
test byte [rdi + 8], 0x20
je 0x14008086a
mov rbx, qword [rdi]
movzx eax, word [rbx + 0x32]
test al, 2
jne 0x140080810
test al, 1
jne 0x14008080b
mov rcx, qword [rbx + 0x10]
call fcn.140047160
mov qword [rbx + 0x10], rax
mov r10d, 0x2460
or word [rbx + 0x32], 3
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x14008086a
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x140080831
mov rcx, rbx
call fcn.140071190
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x2460
add rcx, rsi
test word [rcx + 8], ax
je 0x140080859
mov rdx, rdi
call fcn.140094680
jmp 0x1400817ec
mov eax, 4
mov qword [rcx], rdi
mov word [rcx + 8], ax
jmp 0x1400817ec
test word [rdi + 8], r10w
je 0x14008087e
mov rcx, rdi
call fcn.140093400
jmp case.0x14007c403.13
mov word [rdi + 8], r14w
jmp case.0x14007c403.13
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rsi, rax, 0x38
add rbx, rdi
add rsi, rdi
mov edi, dword [rcx + 0x10]
test byte [rbx + 8], 0x20
jne 0x1400808be
mov rcx, rbx
call fcn.140084d20
test byte [rbx + 8], 0x20
je 0x14007e019
test edi, edi
je 0x1400808d9
mov r8, qword [rsi]
mov edx, edi
mov rcx, qword [rbx]
call fcn.140071340
test eax, eax
jne 0x140081623
test edi, edi
js 0x14007e87a
mov rdx, qword [rsi]
mov rcx, qword [rbx]
call fcn.140071290
jmp 0x14007e87a
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 0xc]
mov r14, qword [rcx + 0x10]
imul rsi, rax, 0x38
add rsi, rdi
cmp word [rcx + 2], 0
je 0x140080933
mov rax, qword [r12 + 0x100]
mov rcx, qword [r14 + 0x20]
test rax, rax
je 0x140080933
nop dword [rax + rax]
cmp qword [rax + 0x38], rcx
je 0x140081d54
mov rax, qword [rax + 8]
test rax, rax
jne 0x140080920
mov eax, dword [r15 + 0xa4]
cmp dword [r12 + 0x110], eax
jge 0x140082161
test byte [rsi + 8], 0x40
jne 0x140080a63
mov edx, dword [r14 + 0x10]
mov ecx, dword [r14 + 0xc]
add ecx, edx
test edx, edx
lea ebx, [rcx + 1]
cmovne ebx, ecx
lea eax, [rbx + 2]
imul ecx, eax, 7
mov eax, dword [r14 + 8]
add ecx, edx
add eax, 7
jns 0x140080978
add eax, 7
sar eax, 3
lea eax, [rax + rcx*8]
mov rcx, r15
movsxd rdx, eax
call fcn.140055500
mov rdi, rax
test rax, rax
je 0x14007e013
mov eax, 0x2460
test word [rsi + 8], ax
jne 0x1400809a6
cmp dword [rsi + 0x20], 0
je 0x1400809ae
mov rcx, rsi
call fcn.140093360
mov rcx, qword [rsp + 0x30]
mov eax, 0x40
sub rcx, qword [rsp + 0x40]
mov word [rsi + 8], ax
mov qword [rsi], rdi
mov qword [rdi], r12
mov dword [rdi + 0x60], ebx
mov eax, dword [r14 + 0x10]
mov dword [rdi + 0x64], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rdi + 0x54], edx
mov rax, qword [r12 + 0x70]
mov qword [rdi + 0x20], rax
mov eax, dword [r12 + 0x28]
mov dword [rdi + 0x5c], eax
mov rax, qword [r12 + 0x98]
mov qword [rdi + 0x28], rax
mov eax, dword [r12 + 0x2c]
mov dword [rdi + 0x50], eax
mov rax, qword [r12 + 0x68]
mov qword [rdi + 0x10], rax
mov eax, dword [r12 + 0xb8]
mov dword [rdi + 0x58], eax
mov rax, qword [r14 + 0x20]
mov qword [rdi + 0x38], rax
movsxd rax, ebx
add rax, 2
imul rcx, rax, 0x38
lea rax, [rdi + 0x70]
add rcx, rdi
cmp rax, rcx
je 0x140080a66
mov edx, 0x80
nop dword [rax]
mov word [rax + 8], dx
mov qword [rax + 0x28], r15
add rax, 0x38
cmp rax, rcx
jne 0x140080a50
jmp 0x140080a66
mov rdi, qword [rsi]
inc dword [r12 + 0x110]
lea rdx, [rdi + 0x70]
mov rax, qword [r12 + 0x100]
mov qword [rdi + 8], rax
mov rax, qword [r15 + 0x38]
mov qword [rdi + 0x40], rax
mov eax, dword [r12 + 0x3c]
mov dword [rdi + 0x68], eax
mov rax, qword [r12]
mov qword [rsp + 0x48], rdx
mov ecx, dword [rax + 0x74]
mov dword [rdi + 0x6c], ecx
mov rax, qword [r12 + 0x120]
mov qword [rdi + 0x48], rax
mov qword [r12 + 0x70], rdx
mov qword [r12 + 0x120], r13
mov dword [r12 + 0x3c], r13d
mov qword [r12 + 0x100], rdi
movsxd rcx, dword [rdi + 0x60]
mov dword [r12 + 0x28], ecx
movzx eax, word [rdi + 0x64]
mov dword [r12 + 0x2c], eax
imul rcx, rcx, 0x38
add rdx, rcx
mov qword [r12 + 0x98], rdx
movsxd rax, dword [r14 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [rdi + 0x30], rcx
mov eax, dword [r14 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call fcn.1400c71f0
mov r9, qword [r14]
mov rdi, qword [rsp + 0x48]
mov qword [r12 + 0x68], r9
mov eax, dword [r14 + 8]
mov r14d, 1
lea rsi, [r9 - 0x18]
mov qword [rsp + 0x40], r9
mov dword [r12 + 0xb8], eax
jmp 0x14007e889
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul r9, rax, 0x38
add r9, qword [r12 + 0x70]
test word [r9 + 8], r10w
je 0x140080b5d
mov rcx, r9
call fcn.14003ea80
mov r9, rax
jmp 0x140080b67
mov eax, 4
mov word [r9 + 8], ax
mov r8, qword [r12 + 0x100]
movsxd rax, dword [r8 + 0x54]
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x10]
mov edx, dword [rax + rcx*8 + 4]
mov rcx, r9
mov rax, qword [rsp + 0x30]
add edx, dword [rax + 4]
movsxd rax, edx
imul rdx, rax, 0x38
add rdx, qword [r8 + 0x20]
mov r8d, 0x1000
call fcn.1400850d0
jmp 0x14007e87f
test dword [r15 + 0x30], 0x80000
mov rax, qword [rsp + 0x30]
je 0x140080bc9
movsxd rax, dword [rax + 8]
add qword [r15 + 0x2a0], rax
mov rsi, qword [rsp + 0x30]
jmp case.0x14007c403.83
cmp dword [rax + 4], 0
movsxd rax, dword [rax + 8]
mov rsi, qword [rsp + 0x30]
je 0x140080be4
add qword [r15 + 0x298], rax
jmp case.0x14007c403.83
add qword [r12 + 0x50], rax
jmp case.0x14007c403.83
cmp dword [rsi + 4], 0
je 0x140080c15
cmp qword [r15 + 0x298], 0
jne case.0x14007c403.83
cmp qword [r15 + 0x2a0], 0
je 0x14007dae7
jmp case.0x14007c403.83
cmp qword [r12 + 0x50], 0
jne case.0x14007c403.83
cmp qword [r15 + 0x2a0], 0
je 0x14007dae7
jmp case.0x14007c403.83
mov rcx, qword [r12 + 0x100]
test rcx, rcx
je 0x140080c6f
mov rax, qword [rcx + 8]
test rax, rax
je 0x140080c5c
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140080c50
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x140080c81
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x48]
mov rcx, rdi
call fcn.140084a70
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x48]
mov rcx, rbx
call fcn.140084a70
mov rax, qword [rbx]
mov rsi, qword [rsp + 0x30]
cmp qword [rdi], rax
jge 0x14007dc04
mov qword [rdi], rax
mov rdi, qword [rsp + 0x48]
jmp 0x14007e884
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + rdi]
test rdx, rdx
jle case.0x14007c403.83
mov rax, rsi
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + rdi], rdx
jmp 0x14007dae7
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, rdi
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rdi, qword [rsp + 0x48]
imul rcx, rax, 0x38
add rcx, qword [r12 + 0x70]
test word [rcx + 8], r10w
je 0x140080d40
call fcn.14003ea80
mov r9, qword [rsp + 0x40]
lea r11, [0x140000000]
mov rcx, rax
mov r10d, 0x2460
jmp 0x140080d49
mov eax, 4
mov word [rcx + 8], ax
mov r8, qword [rbx]
test r8, r8
jle 0x140080d86
mov rax, qword [rdi]
mov rdx, r13
test rax, rax
cmovg rdx, rax
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, rdx
jl 0x140080d86
mov rsi, qword [rsp + 0x30]
lea rax, [rdx + r8]
mov rdi, qword [rsp + 0x48]
mov qword [rcx], rax
jmp case.0x14007c403.83
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
mov qword [rcx], 0xffffffffffffffff
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + rdi]
test rax, rax
je 0x14007c644
mov rsi, qword [rsp + 0x30]
jle 0x14007dae7
dec rax
mov qword [rcx + rdi], rax
jmp 0x14007dae7
mov rax, qword [rsp + 0x30]
movabs rdx, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + rdi]
cmp rax, rdx
jle 0x140080df4
dec rax
mov qword [rcx + rdi], rax
cmp qword [rcx + rdi], 0
mov rsi, qword [rsp + 0x30]
je 0x14007dae7
jmp case.0x14007c403.83
mov rax, qword [rsp + 0x30]
mov rcx, r15
movzx ebx, word [rax + 2]
mov edi, ebx
lea rdx, [rbx*8 + 0x68]
call fcn.140055480
mov r8, rax
test rax, rax
je 0x14007e019
mov qword [rax + 0x10], r13
add rdi, 6
lea rcx, [rax + rdi*8]
mov rdi, qword [rsp + 0x48]
mov qword [rax], rcx
mov rax, qword [rsp + 0x30]
mov word [rcx + 8], r14w
mov qword [rcx + 0x28], r15
mov dword [rcx + 0x20], r13d
mov rcx, qword [rax + 0x10]
mov qword [r8 + 8], rcx
mov rcx, rax
sub rcx, qword [rsp + 0x40]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov qword [r8 + 0x18], r12
sar rdx, 2
mov rax, rdx
mov byte [r8 + 0x28], 0
shr rax, 0x3f
add rdx, rax
mov dword [r8 + 0x24], r13d
mov rax, qword [rsp + 0x30]
mov dword [r8 + 0x20], edx
mov byte [r8 + 0x29], bl
mov word [rax], 0xf097
mov qword [rax + 0x10], r8
jmp 0x140080eab
mov rax, qword [rsp + 0x30]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul r10, rax, 0x38
add r10, rdi
mov qword [rbp - 0x78], r10
cmp qword [rbx + 0x10], r10
je 0x140080f04
movzx edx, byte [rbx + 0x29]
sub edx, 1
mov qword [rbx + 0x10], r10
movsxd r8, edx
js 0x140080f04
mov r10, qword [rsp + 0x30]
lea r9, [r8 + 6]
lea r9, [rbx + r9*8]
mov eax, dword [r10 + 8]
lea r9, [r9 - 8]
add eax, edx
dec edx
cdqe
imul rcx, rax, 0x38
add rcx, rdi
sub r8, 1
mov qword [r9 + 8], rcx
jns 0x140080ee1
mov r10, qword [rbp - 0x78]
inc dword [r10 + 0xc]
lea r8, [rbx + 0x30]
mov rax, qword [rbx + 8]
mov rcx, rbx
movzx edx, byte [rbx + 0x29]
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x14007e87f
jle 0x140080f48
mov rcx, qword [rbx]
call fcn.14000fe60
mov r8, rax
lea rdx, [0x1401703fc]
mov rcx, r12
call fcn.14007c230
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x38], eax
cmp byte [rbx + 0x28], 0
je 0x140080f87
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x140080f83
imul rcx, rax, 0x38
mov eax, 0x2460
add rcx, rdi
test word [rcx + 8], ax
je 0x140080f77
mov rdx, r14
call fcn.140094680
jmp 0x140080f83
mov eax, 4
mov qword [rcx], r14
mov word [rcx + 8], ax
mov byte [rbx + 0x28], 0
mov rcx, qword [rbx]
mov r10d, 0x2460
test word [rcx + 8], r10w
jne 0x140080f9d
cmp dword [rcx + 0x20], 0
je 0x140080fa8
call fcn.140093360
mov r10d, 0x2460
mov rax, qword [rbx]
mov word [rax + 8], r14w
mov dword [rbx + 0x24], r13d
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
mov rsi, qword [rsp + 0x30]
mov r9, qword [rsp + 0x40]
jmp 0x14007e88f
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
mov rdx, qword [rcx + 0x10]
imul rbx, rax, 0x38
add rbx, rdi
mov rcx, rbx
call fcn.1400846e0
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140082181
test byte [rbx + 8], 2
movzx ecx, byte [rsp + 0x3c]
je 0x140081015
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x140081015
movzx edx, cl
mov rcx, rbx
call fcn.140085250
movzx eax, word [rbx + 8]
test al, 0x12
je 0x14007e87f
mov edx, dword [rbx + 0xc]
mov ecx, 0x4000
test cx, ax
je 0x140081030
add edx, dword [rbx]
mov rax, qword [rbx + 0x28]
mov ecx, r13d
cmp edx, dword [rax + 0x7c]
setg cl
test ecx, ecx
jne 0x1400821f5
jmp 0x14007e87f
mov rbx, qword [rsp + 0x30]
lea rax, [rbp + 0x1a0]
lea r9, [rbp + 0x19c]
mov dword [rbp + 0x198], r13d
mov rcx, r15
mov qword [rbp + 0x19c], 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov r8d, dword [rbx + 8]
mov edx, dword [rbx + 4]
call fcn.140051660
mov dword [rsp + 0x38], eax
test eax, eax
je 0x1400810a0
cmp eax, 5
jne 0x140081e76
mov dword [rsp + 0x38], r13d
mov dword [rbp + 0x198], r14d
movsxd rax, dword [rbx + 0xc]
mov r10d, 0x2460
imul rbx, rax, 0x38
add rbx, rdi
mov rdi, r13
nop dword [rax]
nop dword [rax + rax]
movsxd rax, dword [rbp + rdi*4 + 0x198]
test word [rbx + 8], r10w
je 0x1400810e2
mov rdx, rax
mov rcx, rbx
call fcn.140094680
mov r10d, 0x2460
jmp 0x1400810ee
mov qword [rbx], rax
mov eax, 4
mov word [rbx + 8], ax
inc rdi
add rbx, 0x38
cmp rdi, 3
jl 0x1400810c0
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
mov r9, qword [rsp + 0x40]
jmp 0x14007e88f
mov rbx, qword [rsp + 0x30]
mov rcx, r12
mov rdx, rbx
call fcn.14003ea50
mov r8d, dword [rbx + 0xc]
mov r15, rax
mov r9, qword [rsp + 0x68]
movsxd rdx, dword [rbx + 4]
shl rdx, 5
cmp r8d, 0xffffffff
mov rcx, qword [r9 + 0x20]
mov r14, qword [rdx + rcx + 8]
mov rcx, qword [r14 + 8]
mov rdi, qword [rcx]
movzx esi, byte [rdi + 9]
cmove r8d, esi
cmp byte [rdi + 0x14], 3
jb 0x14008115a
mov eax, r13d
jmp 0x140081173
mov rax, qword [rdi + 0x50]
cmp qword [rax], 0
je 0x14008116e
cmp qword [rdi + 0x60], 0
mov eax, r13d
jg 0x140081173
mov eax, 1
test eax, eax
lea rcx, [0x140165bc0]
mov ebx, esi
cmovne ebx, r8d
cmp byte [rdi + 0x13], 0
jne 0x14008118f
mov rcx, qword [rdi + 0xd0]
cmp ebx, 5
jne 0x1400811f1
test rcx, rcx
je 0x1400811c1
or rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400811a0
and eax, 0x3fffffff
je 0x1400811c1
mov rcx, rdi
mov ebx, 5
call fcn.14006aa50
test eax, eax
jne 0x1400811f1
mov ebx, esi
mov eax, dword [rsp + 0x38]
test eax, eax
cmove esi, ebx
mov rcx, rdi
mov edx, esi
call fcn.14006a3e0
mov ecx, 0xa02
mov word [r15 + 8], cx
cmp eax, 6
jne 0x140081274
mov rcx, r13
jmp 0x140081285
cmp ebx, esi
je 0x1400811c3
cmp esi, 5
je 0x1400811ff
cmp ebx, 5
jne 0x1400811c3
cmp byte [r9 + 0x5f], 0
je 0x1400821a4
cmp dword [r9 + 0xc0], 1
jg 0x1400821a4
cmp esi, 5
jne 0x14008123c
mov rdx, r9
mov rcx, rdi
call fcn.140069430
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x1400811c9
mov edx, ebx
mov rcx, rdi
call fcn.14006a3e0
jmp 0x140081258
cmp esi, 4
jne 0x14008124c
lea edx, [rsi - 2]
mov rcx, rdi
call fcn.14006a3e0
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x1400811c9
mov edx, r13d
cmp ebx, 5
mov rcx, r14
sete dl
inc edx
call fcn.140051080
mov dword [rsp + 0x38], eax
jmp 0x1400811c7
cdqe
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x16d110]
mov qword [r15 + 0x10], rcx
test rcx, rcx
jne 0x140081293
mov eax, r13d
jmp 0x1400812a5
or rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x140081297
and eax, 0x3fffffff
mov dword [r15 + 0xc], eax
movzx eax, byte [rsp + 0x3c]
mov byte [r15 + 0xa], 1
cmp eax, 1
je 0x1400812c3
movzx edx, al
mov rcx, r15
call fcn.140085250
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
jmp 0x14007e874
mov rax, qword [rsp + 0x30]
lea rcx, [r12 + 0x90]
mov rdx, r15
mov r8d, dword [rax + 4]
call fcn.140071a70
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
jmp 0x14007e87f
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.14004f070
mov dword [rsp + 0x38], eax
test eax, eax
je 0x14007e87f
cmp eax, 0x65
jne 0x140081e76
mov dword [rsp + 0x38], r13d
jmp 0x14007dadd
cmp dword [rsi + 4], 0
jne 0x14008134b
mov rcx, r15
call fcn.140057e00
jmp case.0x14007c403.83
or dword [r12 + 0xc4], 1
jmp case.0x14007c403.83
movzx r8d, byte [rsi + 0xc]
test r8b, r8b
jne 0x140081371
test dword [r15 + 0x30], 0x400
jne case.0x14007c403.83
movsxd rax, dword [rsi + 4]
mov rcx, qword [r15 + 0x20]
mov edx, dword [rsi + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14004fad0
mov dword [rsp + 0x38], eax
test eax, eax
je 0x14007e884
cmp al, 6
jne 0x140081e76
mov rax, qword [rsp + 0x30]
lea rdx, str.database_table_is_locked:__s
mov rcx, r12
mov r8, qword [rax + 0x10]
call fcn.14007c230
mov eax, dword [rsp + 0x38]
jmp 0x140081e76
mov rax, qword [rsp + 0x30]
mov rcx, r15
mov rbx, qword [rax + 0x10]
mov rdx, rbx
call fcn.140087830
mov dword [rsp + 0x38], eax
test rbx, rbx
je 0x1400813ec
mov rdx, qword [rbx + 0x10]
mov rcx, r12
call fcn.140088520
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
jmp 0x14007e87f
xor eax, eax
mov qword [rbp + 0x70], r15
mov qword [rbp + 0x48], rax
lea rcx, [rbp + 0x48]
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x78], rax
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, rdi
call fcn.1400845e0
mov rcx, qword [rbp + 0x50]
mov edx, 0x202
mov dword [rsp + 0x38], eax
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x140081454
cmp byte [rbp + 0x52], 1
jne 0x140081454
mov rax, qword [rbp + 0x58]
jmp 0x140081468
test cl, 1
jne 0x140081490
mov dl, 1
lea rcx, [rbp + 0x48]
call fcn.140091f40
mov rcx, qword [rbp + 0x50]
test rax, rax
je 0x140081490
mov r8, rax
lea r9, [r12 + 0x90]
mov rax, qword [rsp + 0x30]
mov rcx, r15
mov edx, dword [rax + 4]
call fcn.140087b70
mov rcx, qword [rbp + 0x50]
mov dword [rsp + 0x38], eax
mov r10d, 0x2460
test r10w, cx
jne 0x1400814a6
cmp dword [rbp + 0x68], 0
je 0x140080fb4
lea rcx, [rbp + 0x48]
call fcn.140093360
mov r10d, 0x2460
jmp 0x140080fb4
mov rax, qword [rsp + 0x30]
mov rcx, r15
inc dword [r15 + 0xcc]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.140087c90
dec dword [r15 + 0xcc]
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x140081e76
jmp 0x14007e87f
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x28], r13
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1400821e1
mov rdi, qword [rbx]
test rdi, rdi
je 0x1400821e1
lea rdx, [rbp - 0x28]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r12
mov dword [rsp + 0x38], eax
call fcn.140088520
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
mov rax, qword [rbp - 0x28]
or r9d, 0xffffffff
xor r8d, r8d
mov byte [rsp + 0x20], 2
mov rcx, r12
mov qword [rax], rbx
mov rax, qword [rsp + 0x30]
mov edx, dword [rax + 4]
call fcn.14001f9b0
mov rcx, qword [rbp - 0x28]
test rax, rax
je 0x1400821d9
mov qword [rax + 0x38], rcx
inc dword [rbx + 8]
jmp 0x14007e87a
mov rcx, qword [rsp + 0x30]
xor r8d, r8d
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r12 + 0x98]
mov r13, qword [rax + rcx*8]
lea r11, [rdx + 0x38]
mov edx, dword [rdx + rdi]
add r11, rdi
mov rdi, qword [r12 + 0x78]
mov rsi, qword [r13 + 0x38]
movsxd r9, dword [r11]
mov r15, qword [rsi]
mov r14, qword [r15]
test r9d, r9d
jle 0x1400815d9
mov r10d, 1
nop dword [rax + rax]
movsxd rax, r10d
inc r10d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rdi + r8*8], rcx
inc r8
cmp r8, r9
jl 0x1400815c0
mov rax, qword [rsp + 0x30]
mov rcx, rsi
mov qword [rsp + 0x20], rdi
mov r8, qword [rax + 0x10]
call qword [r14 + 0x40]
mov rdx, r15
mov rcx, r12
mov dword [rsp + 0x38], eax
call fcn.140088520
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
mov rcx, rsi
call qword [r14 + 0x50]
mov byte [r13 + 2], 0
test eax, eax
je 0x14007e874
mov r14d, 1
mov rsi, qword [rsp + 0x30]
mov r9, qword [rsp + 0x40]
jmp 0x14007dae7
mov rbx, qword [rsp + 0x30]
mov rax, qword [r12 + 0x98]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x48]
cmp byte [rdi + 2], 0
jne 0x14007cb88
mov rax, qword [rdi + 0x38]
mov rsi, qword [rax]
xor eax, eax
mov r14, qword [rsi]
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xf8], rax
mov qword [rbp + 0x100], rax
mov qword [rbp + 0x108], rax
mov qword [rbp + 0x110], rax
mov qword [rbp + 0x118], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xe8], rbx
cmp word [rax + 2], 0
je 0x1400816e0
test word [rbx + 8], r10w
je 0x1400816c9
mov rcx, rbx
call fcn.140093400
mov rax, qword [rsp + 0x30]
mov ecx, 0x4001
mov word [rbx + 8], cx
mov dword [rbx], r13d
jmp 0x1400816ee
mov edx, 1
mov dword [rbx], r13d
mov ecx, 0x4001
mov word [rbx + 8], dx
mov word [rbx + 8], cx
jmp 0x1400816ee
mov ecx, 0x3e00
and word [rbx + 8], cx
or word [rbx + 8], 1
mov r8d, dword [rax + 8]
lea rdx, [rbp + 0xe8]
mov rcx, qword [rdi + 0x38]
call qword [r14 + 0x58]
mov rdx, rsi
mov rcx, r12
mov dword [rsp + 0x38], eax
call fcn.140088520
cmp dword [rbp + 0x10c], 0
jle 0x14008173d
mov rcx, rbx
call fcn.14000fe60
mov r8, rax
lea rdx, [0x1401703fc]
mov rcx, r12
call fcn.14007c230
mov eax, dword [rbp + 0x10c]
mov dword [rsp + 0x38], eax
test byte [rbx + 8], 2
movzx ecx, byte [rsp + 0x3c]
je 0x14008175b
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x14008175b
movzx edx, cl
mov rcx, rbx
call fcn.140085250
mov rcx, rbx
call fcn.140085220
test eax, eax
jne 0x1400821f5
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
jmp 0x14007e874
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x98]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x14007cba1
mov rcx, qword [rdi + 0x38]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r12
mov dword [rsp + 0x38], eax
call fcn.140088520
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
mov rcx, qword [rdi + 0x38]
call qword [rsi + 0x50]
test eax, eax
jne 0x1400817ec
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0x40]
lea rax, [rax + rcx*8]
mov qword [rsp + 0x30], rax
mov eax, dword [r15 + 0x160]
test eax, eax
jne 0x1400824b0
mov r9d, dword [rbp - 0x7c]
cmp r9d, dword [rbp - 0x60]
jb 0x140081be3
mov r8, qword [r15 + 0x1b0]
test r8, r8
je 0x140081be3
mov ecx, dword [r15 + 0x1c0]
xor edx, edx
mov eax, r9d
div ecx
sub ecx, edx
add ecx, r9d
mov dword [rbp - 0x60], ecx
mov rcx, qword [r15 + 0x1b8]
call r8
test eax, eax
jne 0x14008222f
jmp 0x14007e87a
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx + 0x10]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x48]
test byte [rbx + 8], 2
je 0x14008187e
cmp byte [rbx + 0xa], 1
je 0x14008187e
mov dl, 1
mov rcx, rbx
call fcn.140085250
test eax, eax
jne 0x140081e76
mov rax, qword [rdi]
mov rcx, rdi
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x98]
mov rdx, rdi
mov rcx, r12
mov dword [rsp + 0x38], eax
call fcn.140088520
and dword [r12 + 0xc4], 0xfffffffe
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
jmp 0x14007e87a
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1400821e1
mov r10, qword [rbx]
test r10, r10
je 0x1400821e1
cmp qword [r10 + 0x68], 0
mov rdx, qword [rsp + 0x30]
movsxd rdx, dword [rdx + 8]
je 0x140081d44
mov rax, qword [rsp + 0x30]
movzx edi, byte [r15 + 0x66]
mov r8, qword [r12 + 0x78]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rax, r13
add rcx, qword [rsp + 0x48]
test edx, edx
jle 0x140081920
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x140081910
mov rax, qword [rsp + 0x30]
lea r9, [rbp + 0x98]
mov rcx, rbx
movzx eax, byte [rax + 2]
mov byte [r15 + 0x66], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [r15 + 0x66], dil
mov rcx, r12
mov dword [rsp + 0x38], eax
call fcn.140088520
mov eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x30]
test eax, eax
jne 0x14008196f
cmp dword [rcx + 4], eax
je 0x14008196f
mov rax, qword [rbp + 0x98]
mov qword [r15 + 0x38], rax
mov eax, dword [rsp + 0x38]
cmp al, 0x13
jne 0x1400819b8
mov rax, qword [rcx + 0x10]
cmp byte [rax + 0x1c], 0
je 0x1400819b8
mov rax, qword [rsp + 0x30]
movzx eax, word [rax + 2]
cmp ax, 4
jne 0x140081996
mov dword [rsp + 0x38], r13d
jmp 0x14007e87a
cmp ax, 5
jne 0x1400819ab
mov eax, 2
mov byte [r12 + 0xbe], al
jmp 0x1400819bd
movzx eax, ax
mov byte [r12 + 0xbe], al
jmp 0x1400819bd
inc dword [r12 + 0x3c]
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x140081e76
jmp 0x14007e87a
mov rdx, qword [rsp + 0x30]
mov rcx, r12
call fcn.14003ea50
mov rcx, qword [rsp + 0x30]
movsxd rdx, dword [rcx + 4]
mov rcx, qword [r15 + 0x20]
shl rdx, 5
mov rdx, qword [rdx + rcx + 8]
mov rcx, qword [rdx + 8]
mov edx, dword [rcx + 0x3c]
mov qword [rax], rdx
jmp 0x14007e87f
mov rdx, qword [rsp + 0x30]
mov rcx, r12
call fcn.14003ea50
mov rcx, qword [r15 + 0x20]
mov rbx, rax
mov rax, qword [rsp + 0x30]
movsxd rdx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
shl rdx, 5
mov r9, qword [rdx + rcx + 8]
mov edx, r13d
test r8d, r8d
je 0x140081a40
mov rcx, qword [r9 + 8]
mov edx, dword [rcx + 0x3c]
cmp edx, r8d
cmovb edx, r8d
mov rcx, r9
call fcn.14004fbb0
movsxd rcx, eax
mov qword [rbx], rcx
jmp 0x14007e87f
mov rax, qword [rsp + 0x30]
mov rcx, r15
movzx ebx, word [rax + 2]
lea eax, [rbx - 1]
movsxd rdx, eax
lea rdx, [rdx*8 + 0x38]
call fcn.140055480
mov r8, rax
test rax, rax
je 0x14007e019
mov qword [rax], r13
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax + 0x10]
mov qword [r8 + 8], rcx
mov rcx, rax
sub rcx, qword [rsp + 0x40]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov qword [r8 + 0x18], r12
sar rdx, 2
mov dword [r8 + 0x24], r13d
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov byte [r8 + 0x29], bl
mov rax, qword [rsp + 0x30]
mov dword [r8 + 0x20], edx
add byte [rax], 2
mov byte [rax + 1], 0xf0
mov qword [rax + 0x10], r8
jmp 0x140081ad8
mov rax, qword [rsp + 0x30]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
mov r10, qword [rsp + 0x48]
imul rbx, rax, 0x38
add rbx, r10
mov qword [rbp - 0x78], rbx
cmp qword [rdi], rbx
je 0x140081b33
movzx edx, byte [rdi + 0x29]
sub edx, 1
mov qword [rdi], rbx
movsxd r8, edx
js 0x140081b33
mov rbx, qword [rsp + 0x30]
lea r9, [r8 + 6]
lea r9, [rdi + r9*8]
mov eax, dword [rbx + 8]
lea r9, [r9 - 8]
add eax, edx
dec edx
cdqe
imul rcx, rax, 0x38
add rcx, r10
sub r8, 1
mov qword [r9 + 8], rcx
jns 0x140081b11
mov rbx, qword [rbp - 0x78]
mov eax, 0x3e00
lea r8, [rdi + 0x30]
and word [rbx + 8], ax
mov rcx, rdi
or word [rbx + 8], 1
mov rax, qword [rdi + 8]
movzx edx, byte [rdi + 0x29]
call qword [rax + 0x18]
mov eax, dword [rdi + 0x24]
test eax, eax
je 0x140081baa
jle 0x140081b7d
mov rcx, rbx
call fcn.14000fe60
mov r8, rax
lea rdx, [0x1401703fc]
mov rcx, r12
call fcn.14007c230
mov eax, dword [rdi + 0x24]
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x30]
lea rdx, [r12 + 0x120]
mov r8d, dword [rdi + 0x20]
mov rcx, r15
mov r9d, dword [rax + 4]
call fcn.14007bfe0
mov eax, dword [rsp + 0x38]
mov dword [rdi + 0x24], r13d
test eax, eax
jne 0x140081e76
movzx eax, word [rbx + 8]
test al, 0x12
je 0x140081be3
movzx ecx, byte [rsp + 0x3c]
test al, 2
je 0x140081bce
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x140081bce
movzx edx, cl
mov rcx, rbx
call fcn.140085250
mov rcx, rbx
call fcn.140085220
test eax, eax
jne 0x1400821f5
jmp 0x14007e87a
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
jmp 0x14007e884
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
mov r14d, 1
jmp 0x14007e884
mov r14d, 1
jmp 0x14007e884
movzx eax, byte [r15 + 0x68]
test al, 0x81
je 0x140081ce5
test byte [r12 + 0xc4], 2
jne 0x140081ce5
mov r9, qword [rsi + 0x10]
test r9, r9
jne 0x140081c48
mov r9, qword [r12 + 0xf0]
test r9, r9
je 0x140081ce0
test al, al
jns 0x140081c7c
mov rdi, qword [r15 + 0xe0]
mov rdx, r9
mov rcx, r12
call fcn.140082790
mov rcx, qword [r15 + 0xe8]
mov rdx, rax
mov rbx, rax
call rdi
mov rcx, rbx
call fcn.1400183e0
mov rdi, qword [rsp + 0x48]
jmp 0x140081cd3
cmp dword [r15 + 0xc8], 1
jle 0x140081cbf
mov r8, r9
lea rdx, str.____s
mov rcx, r15
call fcn.140067e80
mov rdx, qword [r15 + 0xe8]
mov r9, rax
mov r8, r12
mov ecx, r14d
mov rbx, rax
call qword [r15 + 0xe0]
mov rdx, rbx
mov rcx, r15
call fcn.1400553f0
jmp 0x140081cd3
mov rdx, qword [r15 + 0xe8]
mov r8, r12
mov ecx, r14d
call qword [r15 + 0xe0]
mov r10d, 0x2460
lea r11, [0x140000000]
mov r9, qword [rsp + 0x40]
mov eax, dword [0x1401c9314]
cmp dword [rsi + 4], eax
jl 0x140081d34
cmp byte [rsi], 0xa7
je case.0x14007c403.83
cmp dword [r12 + 0xb8], 1
mov edx, r14d
jle 0x140081d30
mov eax, 0x18
nop dword [rax]
mov rcx, qword [r12 + 0x68]
cmp byte [rax + rcx], 0x14
jne 0x140081d20
mov dword [rax + rcx + 4], r13d
inc edx
add rax, 0x18
cmp edx, dword [r12 + 0xb8]
jl 0x140081d10
mov dword [rsi + 4], r13d
inc dword [rsi + 4]
inc dword [r12 + 0xe8]
jmp 0x14007dae7
mov rsi, qword [rsp + 0x30]
mov r10d, 0x2460
jmp case.0x14007c403.83
mov rsi, qword [rsp + 0x30]
mov r14d, 1
jmp case.0x14007c403.83
mov rsi, qword [rsp + 0x30]
mov r14d, 1
mov rdi, qword [rsp + 0x48]
mov r9, qword [rsp + 0x40]
jmp case.0x14007c403.83
mov ecx, dword [rdx + 4]
mov dword [r12 + 0x38], ecx
movzx eax, byte [rdx + 8]
mov byte [r12 + 0xbe], al
mov dword [r12 + 0x34], ebx
test ecx, ecx
je 0x140081e32
movzx eax, word [rdx + 2]
mov rcx, r12
test ax, ax
je 0x140081df6
movzx eax, ax
lea rdx, str._s_constraint_failed
dec eax
movsxd r8, eax
mov r8, qword [r11 + r8*8 + 0x16d040]
call fcn.14007c230
mov rax, qword [rsp + 0x30]
mov r9, qword [rax + 0x10]
test r9, r9
je 0x140081e06
mov r8, qword [r12 + 0x90]
lea rdx, str._z:__s
mov rcx, r15
call fcn.140067e80
mov qword [r12 + 0x90], rax
jmp 0x140081e06
mov r8, qword [rdx + 0x10]
lea rdx, [0x1401703fc]
call fcn.14007c230
mov rax, qword [r12 + 0x90]
lea rdx, str.abort_at__d_in___s_:__s
mov r9, qword [r12 + 0xf0]
mov r8d, ebx
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x30]
mov ecx, dword [rax + 4]
call fcn.14000c7a0
mov rcx, r12
call fcn.140083430
mov dword [rsp + 0x38], eax
cmp eax, 5
jne 0x140082459
mov dword [r12 + 0x38], eax
jmp 0x140081f98
mov ecx, 0x14a86
call fcn.1400537c0
mov r12, qword [rsp + 0x58]
jmp 0x140081e76
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r12
call fcn.14007c230
mov eax, 5
xor esi, esi
mov rbx, qword [rsp + 0x68]
mov ecx, 7
cmp byte [rbx + 0x61], 0
cmovne eax, ecx
cmp qword [r12 + 0x90], 0
mov dword [rsp + 0x38], eax
jne 0x140081ebc
cmp eax, 0xc0a
je 0x140081ebc
mov ecx, eax
call fcn.140057b40
mov r8, rax
lea rdx, [0x1401703fc]
mov rcx, r12
call fcn.14007c230
mov eax, dword [rsp + 0x38]
mov dword [r12 + 0x38], eax
cmp eax, 0xc0a
je 0x140081ef0
movzx eax, al
sub eax, 0xa
test eax, 0xfffffffb
jne 0x140081ef0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x80]
test rax, rax
je 0x140081eed
xor r8d, r8d
xor edx, edx
call rax
mov esi, eax
mov dword [rbx + 0x58], esi
mov rcx, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x40]
mov r9, qword [r12 + 0xf0]
imul rcx
mov rax, qword [r12 + 0x90]
mov ecx, dword [rsp + 0x38]
sar rdx, 2
mov r8, rdx
mov qword [rsp + 0x20], rax
shr r8, 0x3f
add r8, rdx
lea rdx, str.statement_aborts_at__d:___s___s
call fcn.14000c7a0
mov rcx, r12
call fcn.140083430
cmp dword [rsp + 0x38], 0xc0a
jne 0x140081f75
cmp byte [rbx + 0x61], 0
jne 0x140081f75
cmp byte [rbx + 0x62], 0
jne 0x140081f75
cmp dword [rbx + 0xc8], 0
mov byte [rbx + 0x61], 1
jle 0x140081f6f
mov dword [rbx + 0x160], 1
inc dword [rbx + 0x168]
movzx ecx, byte [rsp + 0x50]
mov eax, 1
mov dword [rsp + 0x38], eax
test cl, cl
je 0x140081f98
movzx edx, cl
mov rcx, rbx
dec edx
call fcn.140070940
mov eax, dword [rsp + 0x38]
mov ecx, dword [rbp - 0x7c]
add dword [r12 + 0xe0], ecx
cmp dword [r12 + 0xcc], 0
movaps xmm6, xmmword [rsp + 0x2b0]
mov r15, qword [rsp + 0x2c0]
mov r14, qword [rsp + 0x2c8]
mov r13, qword [rsp + 0x2d0]
mov rdi, qword [rsp + 0x308]
mov rsi, qword [rsp + 0x300]
mov rbx, qword [rsp + 0x2f8]
je 0x140081ff2
mov rcx, r12
call fcn.140093270
mov eax, dword [rsp + 0x38]
mov rcx, qword [rbp + 0x1a8]
xor rcx, rsp
call fcn.1400a7ab0
add rsp, 0x2d8
pop r12
pop rbp
ret
mov r12, qword [rsp + 0x58]
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r12
call fcn.14007c230
mov eax, 5
jmp 0x140081e78
mov rcx, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x40]
mov r12, rdi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 5
mov dword [rdi + 0x34], edx
mov byte [r15 + 0x5f], sil
mov dword [rdi + 0x38], eax
mov dword [rsp + 0x38], eax
jmp 0x140081f98
lea rdx, str.FOREIGN_KEY_constraint_failed
mov dword [rdi + 0x38], 0x313
mov r12, rdi
mov byte [rdi + 0xbe], 2
call fcn.14007c230
mov eax, ebx
mov dword [rsp + 0x38], ebx
jmp 0x140081f98
mov eax, 8
jmp 0x140081e76
cmp al, 5
jne 0x140081e76
mov rcx, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x40]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, dword [rsp + 0x38]
mov dword [r12 + 0x34], edx
mov dword [r12 + 0x38], eax
jmp 0x140081f98
mov rdx, qword [r12 + 0x90]
mov rcx, r15
call fcn.1400553f0
lea rdx, str.database_schema_has_changed
mov rcx, r15
call fcn.140055720
mov qword [r12 + 0x90], rax
movsxd rdx, dword [rsi + 4]
mov rax, qword [r15 + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
cmp dword [rcx], edi
je 0x140082123
mov rcx, r15
call fcn.140070940
or dword [r12 + 0xc4], 1
mov eax, 0x11
jmp 0x140081e76
mov eax, 0x204
jmp 0x140081e76
mov eax, 6
mov byte [r12 + 0xbe], 2
jmp 0x140081e76
mov esi, 7
mov dword [rsp + 0x38], esi
jmp 0x14008062c
lea rdx, str.too_many_levels_of_trigger_recursion
mov dword [rsp + 0x38], 1
mov rcx, r12
call fcn.14007c230
mov eax, dword [rsp + 0x38]
jmp 0x140081e76
mov rcx, rbx
call fcn.14000fe60
mov r8, rax
lea rdx, [0x1401703fc]
mov rcx, r12
call fcn.14007c230
mov eax, dword [rsp + 0x38]
jmp 0x140081e76
cmp ebx, 5
mov dword [rsp + 0x38], 1
lea rax, str.into
mov rcx, r12
lea r8, str.out_of
cmove r8, rax
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
call fcn.14007c230
mov eax, dword [rsp + 0x38]
jmp 0x140081e76
call qword [rdi + 0x38]
jmp 0x14007e019
mov eax, 6
jmp 0x140081e76
mov r12, qword [rsp + 0x58]
jmp 0x1400821f5
mov r12, rdi
lea rdx, str.string_or_blob_too_big
mov rcx, r12
call fcn.14007c230
mov eax, 0x12
jmp 0x140081e76
mov rax, qword [r15 + 0x1b0]
test rax, rax
je 0x140082239
mov ecx, dword [rbp - 0x7c]
cmp ecx, dword [rbp - 0x60]
jb 0x140082239
mov rcx, qword [r15 + 0x1b8]
call rax
test eax, eax
je 0x140082239
mov eax, 9
jmp 0x140081e76
cmp qword [r12 + 0x50], 0
jle 0x14008226a
lea rdx, str.FOREIGN_KEY_constraint_failed
mov dword [r12 + 0x38], 0x313
mov rcx, r12
mov byte [r12 + 0xbe], 2
call fcn.14007c230
mov eax, r14d
jmp 0x140081e76
mov rax, qword [r12]
cmp dword [rax + 0x290], 0
je 0x14008228a
cmp dword [r12 + 0x40], 0
je 0x14008228a
mov edx, r14d
mov rcx, r12
call fcn.140092100
mov eax, dword [r12 + 0x30]
mov rbx, qword [rsp + 0x30]
add eax, 2
or eax, 1
mov dword [r12 + 0x30], eax
movsxd rax, dword [rbx + 4]
imul rsi, rax, 0x38
add rsi, rdi
mov edi, r13d
mov qword [r12 + 0x88], rsi
cmp dword [rbx + 8], 0
jle 0x14008230f
lea rbx, [rsi + 8]
mov r13d, 0x202
mov eax, 0x1000
test word [rbx], ax
je 0x1400822e6
movsxd rax, edi
imul rcx, rax, 0x38
add rcx, rsi
call fcn.140084ac0
test eax, eax
jne 0x14007e019
movzx eax, word [rbx]
and ax, r13w
cmp ax, 2
jne 0x1400822fc
lea rcx, [rbx - 8]
call fcn.140093300
mov rax, qword [rsp + 0x30]
inc edi
add rbx, 0x38
cmp edi, dword [rax + 8]
jl 0x1400822c5
mov rbx, rax
cmp byte [r15 + 0x61], 0
jne 0x14007e019
test byte [r15 + 0x68], 4
je 0x140082339
mov rdx, qword [r15 + 0xe8]
xor r9d, r9d
mov r8, r12
lea ecx, [r9 + 4]
call qword [r15 + 0xe0]
sub rbx, qword [rsp + 0x40]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 0x64
inc edx
mov dword [rsp + 0x38], eax
mov dword [r12 + 0x34], edx
jmp 0x140081f98
mov rax, qword [rsp + 0x30]
mov ebx, dword [rax + 4]
mov ecx, dword [rax + 8]
movzx eax, byte [r15 + 0x5f]
cmp ebx, eax
je 0x140082471
test ecx, ecx
je 0x14008239e
mov edx, 0x204
mov rcx, r15
call fcn.140071030
mov byte [r15 + 0x5f], 1
jmp 0x140082400
test ebx, ebx
je 0x1400823b8
cmp dword [r15 + 0xc4], 0
jle 0x1400823b8
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x140081e69
mov rax, qword [r12]
mov rcx, qword [rax + 0x2a0]
add rcx, qword [rax + 0x298]
test rcx, rcx
jle 0x1400823fc
lea rdx, str.FOREIGN_KEY_constraint_failed
mov dword [r12 + 0x38], 0x313
mov rcx, r12
mov byte [r12 + 0xbe], 2
call fcn.14007c230
mov eax, r14d
mov dword [rsp + 0x38], eax
jmp 0x140081f98
mov byte [r15 + 0x5f], bl
mov rcx, r12
call fcn.140083430
cmp eax, 5
jne 0x140082451
mov rcx, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x40]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 5
sub r14b, bl
mov dword [r12 + 0x34], edx
mov byte [r15 + 0x5f], r14b
mov dword [r12 + 0x38], eax
mov dword [rsp + 0x38], eax
jmp 0x140081f98
mov rcx, r15
call fcn.140051c40
cmp dword [r12 + 0x38], 0
mov eax, 0x65
cmovne eax, r14d
mov dword [rsp + 0x38], eax
jmp 0x140081f98
test ebx, ebx
jne 0x14008248c
lea rdx, str.cannot_start_a_transaction_within_a_transaction
mov rcx, r12
call fcn.14007c230
mov eax, r14d
jmp 0x140081e76
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
mov rcx, r12
cmovne rdx, rax
call fcn.14007c230
mov eax, r14d
jmp 0x140081e76
mov esi, 7
cmp byte [r15 + 0x61], 0
mov eax, 9
cmovne eax, esi
mov ecx, eax
mov dword [rsp + 0x38], eax
mov dword [r12 + 0x38], eax
call fcn.140057b40
jmp 0x140082189
mov r12, qword [rsp + 0x58]
jmp 0x140081e78
mov r12, rdi
jmp 0x140081e78