Function at 0x140027140
Capabilities:
Reference sql statements
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x2a8]
sub rsp, 0x380
mov rax, qword [0x1400d1090]
xor rax, rsp
mov qword [rbp + 0x270], rax
mov rax, qword [rcx + 0x88]
mov r14, rcx
mov qword [rsp + 0x70], rcx
mov r12, qword [r14]
mov rsi, qword [r14 + 0x68]
xor ecx, ecx
mov qword [rsp + 0x48], rax
mov r15, rax
mov al, byte [r12 + 0x60]
mov r13d, ecx
mov dword [rsp + 0x30], ecx
mov byte [rbp - 0x80], cl
mov edi, ecx
mov dword [rsp + 0x78], ecx
mov qword [rsp + 0x38], rcx
mov rcx, r14
mov byte [rsp + 0x40], al
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], rsi
call fcn.140021dfc
xor r10d, r10d
cmp qword [r12 + 0x1e8], r10
je 0x1400271ed
mov ecx, dword [r12 + 0x1f8]
mov eax, dword [r14 + 0xe4]
xor edx, edx
div ecx
sub ecx, edx
mov ebx, ecx
jmp 0x1400271f1
or rbx, 0xffffffffffffffff
cmp dword [r14 + 0x38], 7
mov qword [rsp + 0x50], rbx
mov r11d, 1
je 0x14002d0f6
mov dword [r14 + 0x38], r10d
mov qword [r14 + 0x48], r10
mov qword [r14 + 0xa0], r10
mov eax, dword [r12 + 0x178]
mov dword [r12 + 0x270], r10d
test eax, eax
jne 0x14002ce94
movsxd rax, dword [r14 + 0x34]
mov r9, r15
lea edx, [r11 + 1]
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0x38]
lea r8d, [r11 + 3]
lea r15, [r15 + rcx*8]
movzx ebx, byte [r15]
add rax, r11
mov qword [rbp - 0x70], r15
mov qword [rsp + 0x38], rax
cmp ebx, 0xae
ja case.default.0x140027281
movsxd rax, ebx
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x2d2b0]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
movsxd r8, dword [r15 + 4]
mov eax, 4
mov rcx, r15
sub rcx, r9
imul r8, r8, 0x38
mov word [r8 + rsi + 8], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + rsi], rax
jmp 0x140028709
movsxd rdx, dword [r15 + 4]
imul rdx, rdx, 0x38
mov rax, qword [rdx + rsi]
lea rcx, [rax + rax*2]
mov eax, 0x80
lea r15, [r9 + rcx*8]
mov word [rdx + rsi + 8], ax
mov edx, 2
mov rax, qword [rsp + 0x38]
mov r14, qword [rsp + 0x70]
mov edi, dword [rsp + 0x78]
add r15, 0x18
jmp 0x14002724a
mov eax, dword [r15 + 0xc]
movsxd rcx, dword [r15 + 4]
sub eax, r11d
cdqe
imul rcx, rcx, 0x38
mov qword [rcx + rsi], rax
mov word [rcx + rsi + 8], r8w
cmp dword [r15 + 8], r10d
jne 0x14002a00c
jmp case.0x140027281.86
movsxd rdx, dword [r15 + 4]
imul rdx, rdx, 0x38
mov rax, qword [rdx + rsi]
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
sub eax, r11d
cdqe
jmp 0x1400272ce
movsxd r8, dword [r15 + 4]
sub r15, r9
mov eax, 4
imul r8, r8, 0x38
movsxd rcx, dword [r8 + rsi]
mov word [r8 + rsi + 8], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul r15
sar rdx, 2
lea rcx, [rcx + rcx*2]
mov rax, rdx
lea r15, [r9 + rcx*8]
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + rsi], rax
mov edx, 2
mov r8d, 4
jmp case.0x140027281.86
movsxd rax, dword [r15 + 0xc]
imul rax, rax, 0x38
test byte [rax + rsi + 8], r11b
je case.0x140027281.86
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r9
imul rcx
mov rbx, rdx
sar rbx, 2
mov rax, rbx
shr rax, 0x3f
add rbx, rax
cmp dword [r15 + 4], r10d
jne 0x14002cb9b
mov rcx, qword [r14 + 0x100]
test rcx, rcx
je 0x14002cb9b
mov rax, qword [rcx + 8]
dec dword [r14 + 0x110]
mov qword [r14 + 0x100], rax
mov eax, dword [r14 + 0x3c]
add dword [r12 + 0x7c], eax
mov dword [r12 + 0x78], eax
call fcn.1400229b0
mov r8d, 4
cmp dword [r15 + 8], r8d
jne 0x140027427
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x88]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov r9, qword [r14 + 0x88]
mov rsi, qword [r14 + 0x68]
cdqe
lea rcx, [rax + rax*2]
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x60], rsi
lea r15, [r9 + rcx*8]
xor r10d, r10d
mov r11d, 1
jmp 0x1400272e0
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov r11, rax
movsxd rax, dword [r15 + 4]
mov qword [r11], rax
xor r10d, r10d
mov edx, 2
mov r9, qword [rsp + 0x48]
mov r11d, 1
jmp 0x140027387
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov r11, rax
mov rax, qword [r15 + 0x10]
mov rcx, qword [rax]
mov qword [r11], rcx
jmp 0x140027469
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov r11, rax
mov eax, 8
mov word [r11 + 8], ax
jmp 0x14002748f
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov rdx, qword [r15 + 0x10]
mov rcx, rdx
mov rbx, rax
call fcn.140006368
mov dil, byte [rsp + 0x40]
mov ecx, 1
mov dword [r15 + 4], eax
cmp dil, cl
je 0x140027575
xor eax, eax
mov r9b, cl
or r8d, 0xffffffff
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400203ec
xor r8d, r8d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002ceb5
lea r9d, [rax + 2]
movzx edx, dil
test byte [rbx + 8], r9b
je 0x140027531
movzx ecx, byte [rbx + 0xa]
cmp ecx, edx
je 0x140027531
mov rcx, rbx
call fcn.140005d88
xor r8d, r8d
jmp 0x140027534
mov eax, r8d
test eax, eax
jne 0x14002d0f1
mov eax, 0x800
mov dword [rbx + 0x20], r8d
or word [rbx + 8], ax
cmp byte [r15 + 1], 0xf9
jne 0x140027561
mov rdx, qword [r15 + 0x10]
test rdx, rdx
je 0x140027561
mov rcx, r12
call fcn.140003a4c
mov byte [r15 + 1], 0xf9
mov rax, qword [rbx + 0x10]
mov qword [r15 + 0x10], rax
mov eax, dword [rbx + 0xc]
mov dword [r15 + 4], eax
mov eax, dword [r12 + 0x80]
cmp dword [r15 + 4], eax
jg 0x14002ceb5
mov byte [r15], 0x47
jmp 0x140027592
mov dil, byte [rsp + 0x40]
mov rdx, r15
mov rcx, r14
call fcn.140027114
xor r10d, r10d
mov r11, rax
mov eax, 0xa02
mov word [r11 + 8], ax
mov rcx, qword [r15 + 0x10]
mov qword [r11 + 0x10], rcx
mov ecx, dword [r15 + 4]
mov byte [r11 + 0xa], dil
mov dword [r11 + 0xc], ecx
cmp dword [r15 + 0xc], r10d
jle 0x14002ca3a
movsxd rcx, dword [r15 + 0xc]
movzx eax, word [r15 + 2]
lea r8d, [r10 + 4]
imul rcx, rcx, 0x38
cmp qword [rcx + rsi], rax
jne 0x14002ca4c
mov eax, 0xa10
mov word [r11 + 8], ax
mov r9, qword [rsp + 0x48]
jmp 0x140027449
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov edi, dword [r15 + 0xc]
mov ecx, dword [r15 + 4]
sub edi, dword [r15 + 8]
neg ecx
mov ecx, 0x100
sbb si, si
xor r10d, r10d
mov r11d, 1
and si, cx
lea rbx, [rax + 8]
mov dword [rax + 0xc], r10d
add si, r11w
mov word [rbx], si
test edi, edi
jle 0x14002ca0e
mov ecx, 0x2400
add rbx, 0x38
test word [rbx], cx
je 0x140027663
lea rcx, [rbx - 8]
call fcn.14001fca0
xor r10d, r10d
mov ecx, 0x2400
lea r11d, [r10 + 1]
jmp 0x140027667
mov word [rbx], r11w
sub edi, r11d
mov word [rbx], si
mov dword [rbx + 4], r10d
test edi, edi
jg 0x140027643
mov rsi, qword [rsp + 0x60]
mov r9, qword [rsp + 0x48]
jmp 0x140027382
movsxd rax, dword [r15 + 4]
mov ecx, 0xff41
imul rax, rax, 0x38
add rax, rsi
and word [rax + 8], cx
or word [rax + 8], r11w
jmp case.0x140027281.86
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov r8d, dword [r15 + 4]
mov rdx, qword [r15 + 0x10]
mov rbx, rax
xor eax, eax
xor r9d, r9d
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400203ec
mov al, byte [rsp + 0x40]
mov byte [rbx + 0xa], al
jmp 0x140027469
mov eax, dword [r15 + 4]
sub eax, r11d
movsxd rdi, eax
imul rdi, rdi, 0x38
add rdi, qword [r14 + 0x80]
test byte [rdi + 8], 0x12
je 0x140027713
mov ecx, dword [rdi + 0xc]
mov eax, 0x4000
test word [rdi + 8], ax
je 0x140027701
add ecx, dword [rdi]
mov rax, qword [rdi + 0x28]
mov edx, r10d
cmp ecx, dword [rax + 0x80]
setg dl
jmp 0x140027716
mov edx, r10d
test edx, edx
jne 0x14002ceb5
movsxd rbx, dword [r15 + 8]
mov eax, 0x2400
imul rbx, rbx, 0x38
add rbx, rsi
test word [rbx + 8], ax
je 0x14002774c
mov rcx, rbx
call fcn.14001fca0
mov r9, qword [rsp + 0x48]
xor r10d, r10d
lea r11d, [r10 + 1]
lea r8d, [r10 + 4]
mov rax, qword [rdi]
mov ecx, 0xebff
mov qword [rbx], rax
mov rax, qword [rdi + 8]
mov qword [rbx + 8], rax
mov rax, qword [rdi + 0x10]
mov qword [rbx + 0x10], rax
movzx eax, word [rbx + 8]
and ax, cx
mov ecx, 0x840
or ax, cx
mov word [rbx + 8], ax
jmp 0x1400272e0
mov rax, qword [rsp + 0x60]
movsxd rdi, dword [r15 + 4]
movsxd rbx, dword [r15 + 8]
imul rdi, rdi, 0x38
imul rbx, rbx, 0x38
mov esi, dword [r15 + 0xc]
add rdi, rax
add rbx, rax
mov rdx, rdi
mov rcx, rbx
call fcn.140020398
mov eax, 0x1000
test word [rbx + 8], ax
je 0x1400277c4
mov rcx, rbx
call fcn.14001fa0c
test eax, eax
jne 0x14002d0f1
mov r11d, 1
add rdi, 0x38
add rbx, 0x38
sub esi, r11d
jne 0x14002779e
mov rsi, qword [rsp + 0x60]
mov r9, qword [rsp + 0x48]
xor r10d, r10d
jmp 0x140027382
mov rax, qword [rsp + 0x60]
movsxd rdi, dword [r15 + 4]
movsxd rbx, dword [r15 + 8]
imul rdi, rdi, 0x38
imul rbx, rbx, 0x38
mov esi, dword [r15 + 0xc]
add rdi, rax
add rbx, rax
mov r8d, 0x1000
mov rdx, rdi
mov rcx, rbx
call fcn.1400202d0
mov eax, 0x1000
test word [rbx + 8], ax
je 0x140027839
mov rcx, rbx
call fcn.14001fa0c
xor r10d, r10d
test eax, eax
jne 0x14002d0f1
jmp 0x14002783c
xor r10d, r10d
mov eax, esi
mov r11d, 1
sub esi, r11d
test eax, eax
je 0x14002ca0e
add rbx, 0x38
add rdi, 0x38
jmp 0x140027808
movsxd rdx, dword [r15 + 4]
movsxd rcx, dword [r15 + 8]
imul rdx, rdx, 0x38
imul rcx, rcx, 0x38
add rdx, rsi
add rcx, rsi
mov r8d, 0x1000
call fcn.1400202d0
jmp 0x140027469
movsxd rax, dword [r15 + 4]
movsxd rcx, dword [r15 + 8]
imul rax, rax, 0x38
imul rcx, rcx, 0x38
add rcx, rsi
mov rdx, qword [rax + rsi]
mov eax, 0x2400
test word [rcx + 8], ax
je 0x1400278ab
call fcn.140020108
jmp 0x140027469
mov qword [rcx], rdx
mov word [rcx + 8], r8w
jmp 0x1400272e0
movsxd r12, dword [r15 + 4]
movsxd rdi, dword [r15 + 8]
movsxd rbx, dword [r15 + 0xc]
imul r12, r12, 0x38
imul rdi, rdi, 0x38
imul rbx, rbx, 0x38
add r12, rsi
add rdi, rsi
add rbx, rsi
movzx r13d, word [r12 + 8]
mov al, byte [rdi + 8]
or al, r13b
test r11b, al
je 0x140027920
mov eax, 0x2400
test word [rbx + 8], ax
je 0x14002790c
mov rcx, rbx
call fcn.14001fca0
mov r13d, dword [rsp + 0x30]
mov r12, qword [rsp + 0x58]
jmp 0x140027469
mov r13d, dword [rsp + 0x30]
mov word [rbx + 8], r11w
mov r12, qword [rsp + 0x58]
jmp case.0x140027281.86
test r13b, 0x12
jne 0x140027937
mov dl, byte [rsp + 0x40]
xor r8d, r8d
mov rcx, r12
call fcn.14001fac4
jmp 0x14002794a
mov eax, 0x4000
test ax, r13w
je 0x140027966
mov rcx, r12
call fcn.14001fa68
test eax, eax
jne 0x14002d0ec
movzx r13d, word [r12 + 8]
mov eax, 0xfffd
and r13w, ax
mov eax, 0x4000
movzx esi, word [rdi + 8]
test sil, 0x12
jne 0x140027997
mov dl, byte [rsp + 0x40]
xor r8d, r8d
mov rcx, rdi
call fcn.14001fac4
xor ecx, ecx
test eax, eax
jne 0x14002d0ec
movzx esi, word [rdi + 8]
mov eax, 0xfffd
and si, ax
jmp 0x1400279a8
test ax, si
je 0x1400279a6
mov rcx, rdi
call fcn.14001fa68
jmp 0x14002797f
xor ecx, ecx
mov eax, dword [r12 + 0xc]
mov r8, qword [rsp + 0x58]
add eax, dword [rdi + 0xc]
movsxd r14, eax
movsxd rax, dword [r8 + 0x80]
cmp r14, rax
jg 0x14002cead
mov r8d, ecx
cmp rbx, rdi
lea edx, [r14 + 3]
sete r8b
mov rcx, rbx
call fcn.14001f874
test eax, eax
jne 0x14002d0e7
mov eax, 0x3e40
mov r9d, 2
and word [rbx + 8], ax
or word [rbx + 8], r9w
cmp rbx, rdi
je 0x140027a14
movsxd r8, dword [rdi + 0xc]
mov rdx, qword [rdi + 0x10]
mov rcx, qword [rbx + 0x10]
call fcn.14009e430
mov word [rdi + 8], si
movsxd rcx, dword [rdi + 0xc]
movsxd r8, dword [r12 + 0xc]
mov rdx, qword [r12 + 0x10]
add rcx, qword [rbx + 0x10]
call fcn.14009e430
mov word [r12 + 8], r13w
mov rax, qword [rbx + 0x10]
xor r10d, r10d
mov byte [r14 + rax], r10b
mov rax, qword [rbx + 0x10]
mov byte [rax + r14 + 1], r10b
mov rax, qword [rbx + 0x10]
mov byte [rax + r14 + 2], r10b
mov eax, 0x200
mov dword [rbx + 0xc], r14d
or word [rbx + 8], ax
mov al, byte [rsp + 0x40]
mov byte [rbx + 0xa], al
mov r13d, dword [rsp + 0x30]
mov r12, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
jmp 0x14002746c
movsxd r12, dword [r15 + 4]
imul r12, r12, 0x38
add r12, rsi
movzx ebx, word [r12 + 8]
and bx, 0x2c
jne 0x140027aac
test byte [r12 + 8], 0x12
je 0x140027aa9
mov rcx, r12
call fcn.140027044
xor r10d, r10d
movzx ebx, ax
lea r8d, [r10 + 4]
jmp 0x140027aac
mov ebx, r10d
movsxd rsi, dword [r15 + 8]
mov r14, qword [rsp + 0x60]
imul rsi, rsi, 0x38
add rsi, r14
movzx eax, word [rsi + 8]
and ax, 0x2c
jne 0x140027adf
test byte [rsi + 8], 0x12
je 0x140027adc
mov rcx, rsi
call fcn.140027044
mov r8d, 4
jmp 0x140027adf
mov eax, r10d
movsxd rdi, dword [r15 + 0xc]
movzx ecx, word [r12 + 8]
and al, bl
or cx, word [rsi + 8]
imul rdi, rdi, 0x38
add rdi, r14
test r8b, al
je 0x140027c76
movzx ecx, byte [r15]
mov r9, qword [rsi]
mov r8, qword [r12]
sub ecx, 0x6a
mov qword [rbp - 0x50], r9
je 0x140027c30
dec ecx
je 0x140027c11
xor r10d, r10d
dec ecx
je 0x140027b81
dec ecx
je 0x140027b4f
lea r11d, [r10 + 1]
test r8, r8
je 0x140027d42
cmp r8, 0xffffffffffffffff
mov rax, r9
cmove r8, r11
cqo
idiv r8
mov r9, rdx
jmp 0x140027c4d
test r8, r8
je 0x140027d3c
cmp r8, 0xffffffffffffffff
jne 0x140027b71
movabs rax, 0x8000000000000000
cmp r9, rax
je 0x140027c85
mov rax, r9
cqo
idiv r8
mov r9, rax
jmp 0x140027c47
test r8, r8
jle 0x140027bb2
movabs rax, 0x7fffffffffffffff
cqo
idiv r8
cmp r9, rax
jg 0x140027c85
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jmp 0x140027bcb
jns 0x140027c0b
test r9, r9
jle 0x140027bd3
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jl 0x140027c85
jmp 0x140027c0b
jns 0x140027c0b
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x140027c85
cmp r9, rax
je 0x140027c85
movabs rax, 0x8000000000000001
mov rcx, r9
cqo
neg rcx
idiv r8
cmp rcx, rax
jg 0x140027c85
imul r9, r8
jmp 0x140027c47
movabs rcx, 0x8000000000000000
cmp r8, rcx
jne 0x140027c2d
xor r10d, r10d
test r9, r9
jns 0x140027c85
sub r9, rcx
jmp 0x140027c47
neg r8
lea rcx, [rbp - 0x50]
mov rdx, r8
call fcn.14000743c
xor r10d, r10d
test eax, eax
jne 0x140027c85
mov r9, qword [rbp - 0x50]
mov r11d, 1
mov eax, 0x3e40
mov r8d, 4
mov qword [rdi], r9
and word [rdi + 8], ax
or word [rdi + 8], r8w
mov r12, qword [rsp + 0x58]
mov rsi, r14
mov r9, qword [rsp + 0x48]
jmp 0x1400272e0
mov r11d, 1
test r11b, cl
jne 0x140027d68
mov rcx, r12
call fcn.14001fde4
mov rcx, rsi
movapd xmm2, xmm0
call fcn.14001fde4
movzx ecx, byte [r15]
sub ecx, 0x6a
je 0x140027d03
dec ecx
je 0x140027cfd
dec ecx
je 0x140027cf7
dec ecx
je 0x140027ce5
mov rcx, r12
call fcn.14001fd84
mov rcx, rsi
mov rbx, rax
call fcn.14001fd84
xor r10d, r10d
lea r11d, [r10 + 1]
test rbx, rbx
je 0x140027d42
cmp rbx, 0xffffffffffffffff
cqo
pxor xmm0, xmm0
cmove rbx, r11
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x140027d10
ucomisd xmm2, qword [0x1400c4608]
jp 0x140027cf1
je 0x140027d39
divsd xmm0, xmm2
jmp 0x140027d07
mulsd xmm0, xmm2
jmp 0x140027d07
subsd xmm0, xmm2
jmp 0x140027d07
addsd xmm0, xmm2
mov r11d, 1
xor r10d, r10d
call fcn.140006330
mov r8d, 4
test eax, eax
jne 0x140027d48
mov eax, 0x3e40
movsd qword [rdi], xmm0
and word [rdi + 8], ax
lea eax, [r8 + 4]
or word [rdi + 8], ax
jmp 0x140027c64
xor r10d, r10d
mov r11d, 1
mov r8d, 4
mov eax, 0x2400
test word [rdi + 8], ax
je 0x140027d6d
mov rcx, rdi
call fcn.14001fca0
mov r12, qword [rsp + 0x58]
mov rsi, r14
jmp 0x140027469
xor r10d, r10d
jmp 0x140027d48
mov word [rdi + 8], r11w
jmp 0x140027c64
cmp dword [r15 + 4], r10d
je case.0x140027281.86
movsxd rax, dword [r15 + 4]
imul rax, rax, 0x38
mov ecx, 0x2400
add rax, rsi
test word [rax + 8], cx
je 0x140027da1
xor edx, edx
mov rcx, rax
jmp 0x1400278a1
mov qword [rax], r10
mov word [rax + 8], r8w
jmp case.0x140027281.86
movsxd rcx, dword [r15 + 8]
movsxd rdi, dword [r15 + 4]
imul rcx, rcx, 0x38
imul rdi, rdi, 0x38
add rcx, rsi
add rdi, rsi
movsxd rsi, dword [r15 + 0xc]
mov al, byte [rcx + 8]
imul rsi, rsi, 0x38
or al, byte [rdi + 8]
add rsi, qword [rsp + 0x60]
test r11b, al
je 0x140027e08
mov eax, 0x2400
test word [rsi + 8], ax
je 0x140027df9
mov rcx, rsi
call fcn.14001fca0
mov rsi, qword [rsp + 0x60]
jmp 0x140027469
mov word [rsi + 8], r11w
mov rsi, qword [rsp + 0x60]
jmp case.0x140027281.86
call fcn.14001fd84
mov rcx, rdi
mov rbx, rax
call fcn.14001fd84
mov dl, byte [r15]
mov r11, rax
cmp dl, 0x66
jne 0x140027e28
and rbx, rax
jmp 0x140027e30
cmp dl, 0x67
jne 0x140027e35
or rbx, rax
xor r10d, r10d
jmp 0x140027eaa
xor r10d, r10d
test rax, rax
je 0x140027eaa
jns 0x140027e5d
mov rcx, r11
mov eax, 0xd1
sub al, dl
neg rcx
mov dl, al
mov rax, r11
lea r11d, [r10 + 0x40]
cmp rax, 0xffffffffffffffc0
cmovg r11, rcx
cmp r11, 0x40
jl 0x140027e7a
test rbx, rbx
jns 0x140027e72
cmp dl, 0x68
je 0x140027e72
or eax, 0xffffffff
jmp 0x140027e75
mov eax, r10d
movsxd rbx, eax
jmp 0x140027eaa
mov rcx, r11
cmp dl, 0x68
jne 0x140027e8a
shl rbx, cl
mov r8, rbx
jmp 0x140027ea7
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x140027ea7
or rdx, 0xffffffffffffffff
mov ecx, 0x40
sub cl, r11b
shl rdx, cl
or r8, rdx
mov rbx, r8
mov eax, 0x3e40
mov r8d, 4
mov qword [rsi], rbx
and word [rsi + 8], ax
or word [rsi + 8], r8w
mov rsi, qword [rsp + 0x60]
jmp 0x1400275f0
movsxd rbx, dword [r15 + 4]
imul rbx, rbx, 0x38
add rbx, rsi
mov rcx, rbx
call fcn.14001fd84
mov ecx, 0x3e40
mov r8d, 4
and word [rbx + 8], cx
or word [rbx + 8], r8w
mov qword [rbx], rax
movsxd rcx, dword [r15 + 8]
add rcx, rax
mov qword [rbx], rcx
mov r9, qword [rsp + 0x48]
jmp 0x140027446
movsxd rbx, dword [r15 + 4]
imul rbx, rbx, 0x38
add rbx, rsi
movzx eax, word [rbx + 8]
test r8b, al
jne 0x140027f66
mov r8b, byte [rsp + 0x40]
mov dl, 0x43
mov rcx, rbx
call fcn.140026f98
movzx eax, word [rbx + 8]
mov r8d, 4
xor r10d, r10d
test r8b, al
jne 0x140027f58
cmp dword [r15 + 8], r10d
je 0x14002cc7b
mov r9, qword [rsp + 0x48]
mov r11d, 1
jmp 0x140028709
mov r9, qword [rsp + 0x48]
mov edx, 2
lea r11d, [rdx - 1]
mov ecx, 0x3e40
and ax, cx
or ax, r8w
mov word [rbx + 8], ax
jmp case.0x140027281.86
movsxd rbx, dword [r15 + 4]
imul rbx, rbx, 0x38
add rbx, rsi
test byte [rbx + 8], 0x24
je case.0x140027281.86
mov rcx, rbx
call fcn.14001fde4
mov eax, 0x3e40
and word [rbx + 8], ax
mov eax, 8
or word [rbx + 8], ax
movsd qword [rbx], xmm0
jmp 0x140027469
movsxd rbx, dword [r15 + 4]
mov eax, 0x4000
imul rbx, rbx, 0x38
add rbx, rsi
test word [rbx + 8], ax
je 0x140027fd9
mov rcx, rbx
call fcn.14001fa68
xor r10d, r10d
mov r13d, eax
jmp 0x140027fdc
mov r13d, r10d
test r13d, r13d
jne 0x14002981a
mov r8b, byte [rsp + 0x40]
mov dl, byte [r15 + 8]
mov rcx, rbx
call fcn.14001ff84
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
je 0x14002746c
mov rbx, qword [rsp + 0x50]
jmp 0x14002ce0a
movsxd r13, dword [r15 + 4]
imul r13, r13, 0x38
add r13, rsi
movsxd rsi, dword [r15 + 0xc]
movzx r12d, word [r13 + 8]
imul rsi, rsi, 0x38
add rsi, qword [rsp + 0x60]
movzx edi, word [rsi + 8]
movzx eax, di
and ax, r12w
test r8b, al
je 0x14002809b
mov rax, qword [r13]
lea rcx, [0x140000000]
cmp qword [rsi], rax
jle 0x140028071
cmp byte [rbx + rcx + 0xb7b88], r10b
mov rsi, qword [rsp + 0x60]
mov r13d, dword [rsp + 0x30]
mov dword [rsp + 0x78], r11d
jne 0x140028709
jmp 0x140027916
mov r13d, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x60]
jge 0x14002808c
or dword [rsp + 0x78], 0xffffffff
cmp byte [rbx + rcx + 0xb7b7c], r10b
jmp 0x140028066
cmp byte [rbx + rcx + 0xb7b82], r10b
mov dword [rsp + 0x78], r10d
jmp 0x140028066
movzx ecx, di
or cx, r12w
test r11b, cl
je 0x1400280f2
mov ecx, 0x80
test byte [r15 + 2], cl
je 0x1400280e4
test r11b, al
je 0x1400280cb
mov eax, 0x100
test ax, di
jne 0x1400280cb
mov dword [rsp + 0x78], r10d
jmp 0x1400281f6
mov al, dil
and al, r11b
neg al
sbb edx, edx
and edx, 0xfffffffe
add edx, r11d
mov dword [rsp + 0x78], edx
jmp 0x1400281db
mov eax, 0x10
test byte [r15 + 2], al
jmp 0x140028057
mov al, byte [r15 + 2]
and al, 0x47
cmp al, 0x43
jl 0x140028139
test dl, cl
je 0x1400281b6
mov al, r12b
and al, 0x2e
cmp al, dl
jne 0x140028120
xor edx, edx
mov rcx, r13
call fcn.140026f00
movzx edi, word [rsi + 8]
mov edx, 2
mov al, dil
and al, 0x2e
cmp al, dl
jne 0x1400281b6
xor edx, edx
mov rcx, rsi
call fcn.140026f00
jmp 0x1400281b6
cmp al, 0x42
jne 0x1400281b6
mov bl, byte [rsp + 0x40]
test dl, r12b
jne 0x140028187
test r12b, 0x2c
je 0x140028187
mov r8b, r11b
mov dl, bl
mov rcx, r13
call fcn.14001fac4
movzx r11d, word [r13 + 8]
mov r14d, 0x3e40
xor r11w, r12w
mov edx, 2
and r11w, r14w
xor r12w, r11w
lea r11d, [rdx - 1]
cmp r13, rsi
jne 0x14002818d
movzx edi, r12w
or di, dx
jmp 0x14002818d
mov r14d, 0x3e40
test dl, dil
jne 0x1400281b6
test dil, 0x2c
je 0x1400281b6
mov r8b, r11b
mov dl, bl
mov rcx, rsi
call fcn.14001fac4
movzx r11d, di
xor r11w, word [rsi + 8]
and r11w, r14w
xor di, r11w
mov r8, qword [r15 + 0x10]
mov rdx, r13
mov rcx, rsi
call fcn.14002407c
mov r9, qword [rsp + 0x48]
xor r10d, r10d
lea r11d, [r10 + 1]
lea r8d, [r10 + 4]
mov edx, eax
mov dword [rsp + 0x78], eax
test edx, edx
jns 0x1400281f4
movzx eax, byte [r15]
lea rcx, [0x140000000]
movzx ecx, byte [rax + rcx + 0xb7b7c]
jmp 0x14002821e
jne 0x14002820b
movzx eax, byte [r15]
lea rcx, [0x140000000]
movzx ecx, byte [rax + rcx + 0xb7b82]
jmp 0x14002821e
movzx eax, byte [r15]
lea rcx, [0x140000000]
movzx ecx, byte [rax + rcx + 0xb7b88]
mov word [rsi + 8], di
mov word [r13 + 8], r12w
mov r13d, dword [rsp + 0x30]
test ecx, ecx
jne 0x14002a00c
mov r12, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
jmp 0x1400272e0
test edi, edi
je 0x140028709
jmp case.0x140027281.86
test byte [r15 + 2], r11b
jne 0x14002825b
mov rsi, r10
jmp 0x140028262
mov rsi, qword [r15 - 8]
add rsi, r8
movsxd rax, dword [r15 + 0xc]
mov ecx, dword [r15 + 4]
mov edx, dword [r15 + 8]
mov r14, qword [r15 + 0x10]
mov dword [rbp - 0x68], ecx
mov dword [rsp + 0x68], edx
mov r12d, r10d
mov rbx, r10
mov qword [rbp - 0x58], rax
test rax, rax
jle 0x140028234
lea r13, [r14 + 0x20]
test rsi, rsi
je 0x140028296
mov edi, dword [rsi + rbx*4]
jmp 0x140028299
mov edi, r12d
mov r8, qword [rsp + 0x60]
mov rax, qword [r14 + 0x18]
add edx, edi
imul rdx, rdx, 0x38
movzx r15d, byte [rax + rbx]
add ecx, edi
add rdx, r8
and r15d, r11d
imul rcx, rcx, 0x38
add rcx, r8
mov r8, qword [r13]
call fcn.14002407c
xor r10d, r10d
mov ecx, eax
mov dword [rsp + 0x78], eax
lea r11d, [r10 + 1]
test eax, eax
jne 0x140028300
mov ecx, dword [rbp - 0x68]
mov edx, dword [rsp + 0x68]
add rbx, r11
add r12d, r11d
add r13, 8
cmp rbx, qword [rbp - 0x58]
jl 0x14002828c
mov r15, qword [rbp - 0x70]
mov r13d, dword [rsp + 0x30]
mov r12, qword [rsp + 0x58]
jmp 0x140027675
mov rax, qword [r14 + 0x18]
mov rsi, qword [rsp + 0x60]
mov r9d, 2
test byte [rbx + rax], r9b
je 0x140028346
mov ecx, dword [rbp - 0x68]
add ecx, edi
imul rcx, rcx, 0x38
test byte [rcx + rsi + 8], r11b
jne 0x140028336
mov ecx, dword [rsp + 0x68]
add ecx, edi
imul rcx, rcx, 0x38
test byte [rcx + rsi + 8], r11b
je 0x140028342
mov ecx, dword [rsp + 0x78]
neg ecx
mov dword [rsp + 0x78], ecx
jmp 0x140028346
mov ecx, dword [rsp + 0x78]
mov r13d, dword [rsp + 0x30]
mov r12, qword [rsp + 0x58]
mov r8d, 4
test r15d, r15d
je 0x140028361
neg ecx
mov dword [rsp + 0x78], ecx
mov r15, qword [rbp - 0x70]
jmp 0x140027c6c
test edi, edi
jns 0x140028384
mov eax, dword [r15 + 4]
sub eax, r11d
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp case.0x140027281.86
jne 0x14002838c
mov eax, dword [r15 + 8]
jmp 0x140028372
mov eax, dword [r15 + 0xc]
jmp 0x140028372
movsxd rcx, dword [r15 + 4]
imul rcx, rcx, 0x38
add rcx, rsi
call fcn.14001fe14
movsxd rcx, dword [r15 + 8]
mov edx, 2
movsxd rbx, eax
imul rcx, rcx, 0x38
add rcx, rsi
call fcn.14001fe14
cmp byte [r15], 0x2c
movsxd r11, eax
lea rax, [0x140000000]
jne 0x1400283db
lea rdx, [rbx + rbx*2]
add rdx, r11
movzx eax, byte [rdx + rax + 0xb8ad8]
jmp 0x1400283ea
lea rcx, [rbx + rbx*2]
add rcx, r11
movzx eax, byte [rcx + rax + 0xb8ae8]
movsxd rcx, dword [r15 + 0xc]
mov r9, qword [rsp + 0x48]
mov edx, 2
lea r11d, [rdx - 1]
lea r8d, [rdx + 2]
imul rcx, rcx, 0x38
add rcx, rsi
cmp eax, edx
jne 0x140028421
mov eax, 0x3e40
and word [rcx + 8], ax
or word [rcx + 8], r11w
xor r10d, r10d
jmp case.0x140027281.86
cdqe
mov qword [rcx], rax
mov eax, 0x3e40
and word [rcx + 8], ax
or word [rcx + 8], r8w
jmp 0x140028419
movsxd rcx, dword [r15 + 4]
mov edx, dword [r15 + 0xc]
imul rcx, rcx, 0x38
add rcx, rsi
call fcn.14001fe14
mov edx, 0x2400
movsxd rcx, eax
movsxd rax, dword [r15 + 0x10]
xor rcx, rax
movsxd rax, dword [r15 + 8]
imul rax, rax, 0x38
add rax, rsi
test word [rax + 8], dx
je 0x140028472
mov rdx, rcx
jmp 0x140027d99
mov r8d, 4
mov qword [rax], rcx
mov word [rax + 8], r8w
jmp 0x140027eff
movsxd rcx, dword [r15 + 4]
movsxd rbx, dword [r15 + 8]
imul rcx, rcx, 0x38
imul rbx, rbx, 0x38
add rcx, rsi
add rbx, rsi
test byte [rcx + 8], r11b
jne 0x1400284dc
xor edx, edx
call fcn.14001fe14
xor r10d, r10d
test eax, eax
mov eax, 0x2400
mov ecx, r10d
sete cl
test word [rbx + 8], ax
je 0x1400284c9
mov rdx, rcx
mov rcx, rbx
jmp 0x1400278a1
mov r8d, 4
mov qword [rbx], rcx
mov word [rbx + 8], r8w
jmp 0x1400275f0
mov eax, 0x2400
test word [rbx + 8], ax
je 0x1400284f4
mov rcx, rbx
call fcn.14001fca0
jmp 0x140027469
mov word [rbx + 8], r11w
jmp case.0x140027281.86
movsxd rbx, dword [r15 + 8]
movsxd rdi, dword [r15 + 4]
mov eax, 0x2400
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
add rbx, rsi
add rdi, rsi
test word [rbx + 8], ax
je 0x140028534
mov rcx, rbx
call fcn.14001fca0
xor r10d, r10d
lea r11d, [r10 + 1]
lea r8d, [r10 + 4]
jmp 0x140028539
mov word [rbx + 8], r11w
test byte [rdi + 8], r11b
jne 0x140028361
mov rcx, rdi
mov word [rbx + 8], r8w
call fcn.14001fd84
not rax
mov qword [rbx], rax
jmp 0x140027469
mov r10, qword [r14 + 0x100]
test r10, r10
je 0x1400285cf
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [r14 + 0x88]
imul rcx
mov r8, rdx
sar r8, 2
mov rax, r8
shr rax, 0x3f
add r8, rax
mov rax, qword [r10 + 0x30]
mov r9d, r8d
and r8d, 7
shr r9, 3
mov ecx, r8d
mov dl, byte [r9 + rax]
mov eax, r11d
shl eax, cl
test al, dl
jne 0x140028701
mov rdx, qword [r10 + 0x30]
mov eax, r11d
shl al, cl
or byte [rdx + r9], al
mov r9, qword [rsp + 0x48]
mov edx, 2
lea r8d, [rdx + 2]
jmp 0x1400285e3
mov rcx, qword [r14 + 0x88]
mov eax, dword [r15 + 4]
cmp dword [rcx + 4], eax
je 0x140028706
mov rax, qword [r14 + 0x88]
mov ecx, dword [rax + 4]
mov dword [r15 + 4], ecx
jmp 0x140028419
movsxd rcx, dword [r15 + 4]
mov edx, dword [r15 + 0xc]
imul rcx, rcx, 0x38
add rcx, rsi
call fcn.14001fe14
xor r10d, r10d
test eax, eax
mov r11d, 1
jne 0x14002a00c
jmp 0x14002767a
cmp dword [r15 + 0xc], r10d
movsxd rcx, dword [r15 + 4]
mov edx, r10d
sete dl
imul rcx, rcx, 0x38
add rcx, rsi
call fcn.14001fe14
xor r10d, r10d
lea r11d, [r10 + 1]
test eax, eax
je 0x14002a00c
jmp 0x14002767a
movsxd rax, dword [r15 + 4]
imul rax, rax, 0x38
test byte [rax + rsi + 8], r11b
jne 0x140028709
jmp case.0x140027281.86
movsxd rax, dword [r15 + 4]
imul rax, rax, 0x38
test byte [rax + rsi + 8], r11b
jne 0x14002868d
movsxd rax, dword [r15 + 0xc]
imul rax, rax, 0x38
test byte [rax + rsi + 8], r11b
jne 0x14002868d
movsxd rax, dword [r15 + 8]
jmp 0x140027d85
movsxd rax, dword [r15 + 8]
mov ecx, 0x2400
imul rax, rax, 0x38
add rax, rsi
test word [rax + 8], cx
je 0x1400286ab
mov rcx, rax
jmp 0x1400284ea
mov word [rax + 8], r11w
jmp case.0x140027281.86
movsxd rax, dword [r15 + 4]
imul rax, rax, 0x38
test byte [rax + rsi + 8], r11b
jmp 0x140028245
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 2], r10b
je case.0x140027281.86
movsxd rax, dword [r15 + 0xc]
mov ecx, 0x2400
imul rax, rax, 0x38
add rax, rsi
test word [rax + 8], cx
je 0x14002871f
mov rcx, rax
call fcn.14001fca0
mov r11d, 1
mov r9, qword [rsp + 0x48]
xor r10d, r10d
mov eax, dword [r15 + 8]
sub eax, r11d
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp 0x1400288fd
mov word [rax + 8], r11w
jmp 0x140028709
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov r13d, dword [r15 + 8]
mov rbx, qword [rax + rcx*8]
mov dword [rsp + 0x68], r13d
cmp byte [rbx + 3], r10b
je 0x140028789
mov rdx, qword [rbx + 0x20]
test rdx, rdx
je 0x14002876f
lea eax, [r13 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x14002876f
cmp byte [rbx + 2], r10b
jne 0x14002876f
mov rbx, qword [rbx + 0x30]
lea r13d, [rax - 1]
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x68], r13d
jmp 0x1400287ab
mov rcx, rbx
call fcn.140023a0c
mov r9, qword [rsp + 0x48]
xor r10d, r10d
lea r11d, [r10 + 1]
lea r8d, [r10 + 4]
jmp 0x14002879f
mov rax, qword [rbx + 0x38]
cmp byte [rax], r10b
je 0x14002879c
mov rcx, rbx
call fcn.140023a5c
jmp 0x140028777
mov eax, r10d
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002d142
movsxd r12, dword [r15 + 0xc]
mov eax, dword [r14 + 0x30]
mov rdi, qword [rbx + 0x60]
imul r12, r12, 0x38
add r12, rsi
mov qword [rbp - 0x78], rdi
mov qword [rbp - 0x18], r12
cmp dword [rbx + 0x28], eax
je 0x14002890d
cmp byte [rbx + 2], r10b
je 0x140028828
mov eax, 3
cmp byte [rbx], al
jne 0x1400287fe
movsxd rcx, dword [rbx + 0x2c]
imul rcx, rcx, 0x38
mov eax, dword [rcx + rsi + 0xc]
mov dword [rbx + 0x74], eax
mov dword [rbx + 0x70], eax
mov rax, qword [rcx + rsi + 0x10]
mov qword [rbx + 0x68], rax
jmp 0x14002887e
mov eax, 0x2400
test word [r12 + 8], ax
je 0x140028813
mov rcx, r12
jmp 0x1400278f8
mov r13d, dword [rsp + 0x30]
mov word [r12 + 8], r11w
mov r12, qword [rsp + 0x58]
jmp 0x1400272e0
mov rdi, qword [rbx + 0x38]
mov rcx, rdi
call fcn.140018220
mov eax, dword [rdi + 0x40]
xor r10d, r10d
mov dword [rbx + 0x70], eax
mov rax, qword [rdi + 0x88]
movzx ecx, word [rdi + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rdi + 0x38]
cmp ecx, edx
jle 0x14002885a
mov ecx, edx
test edx, edx
cmovs ecx, r10d
mov r8, qword [rsp + 0x58]
mov dword [rbx + 0x74], ecx
mov rax, qword [rdi + 0x38]
mov qword [rbx + 0x68], rax
mov eax, dword [r8 + 0x80]
cmp dword [rbx + 0x70], eax
ja 0x14002ceb2
mov rdi, qword [rbp - 0x78]
mov eax, dword [r14 + 0x30]
mov rcx, qword [rbx + 0x68]
mov dword [rbx + 0x28], eax
mov eax, 0x80
cmp byte [rcx], al
jae 0x14002889e
movzx eax, byte [rcx]
mov dword [rdi], eax
mov eax, 1
jmp 0x1400288ac
mov rdx, rdi
call fcn.140007268
xor r10d, r10d
movzx eax, al
movzx eax, al
mov word [rbx + 0x52], r10w
mov dword [rbx + 0x48], eax
mov eax, dword [rdi]
cmp dword [rbx + 0x74], eax
jae 0x140028907
mov qword [rbx + 0x68], r10
mov dword [rbx + 0x74], r10d
mov eax, dword [rdi]
cmp eax, 0x18003
ja 0x1400288d4
cmp eax, dword [rbx + 0x70]
jbe 0x14002890d
mov r11d, 1
mov r9, qword [rsp + 0x48]
mov eax, dword [r9 + 0xc]
test eax, eax
jle 0x14002cc86
mov r13d, dword [rsp + 0x30]
dec eax
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r15, [r9 + rax*8]
mov r12, qword [rsp + 0x58]
jmp 0x140027382
mov rax, qword [rbx + 0x68]
jmp 0x14002896f
movzx eax, word [rbx + 0x52]
cmp eax, r13d
ja 0x140028b4c
mov eax, dword [rdi]
cmp dword [rbx + 0x48], eax
jae 0x140028b1f
mov rax, qword [rbx + 0x68]
mov qword [rbp - 0x60], rax
test rax, rax
jne 0x140028973
lea r8d, [rax + 0x38]
lea rcx, [rbp + 0xe0]
xor edx, edx
call fcn.1400a2620
mov edx, dword [rdi]
mov rcx, qword [rbx + 0x38]
lea r8, [rbp + 0xe0]
call fcn.140020770
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002d11d
mov rax, qword [rbp + 0xf0]
mov qword [rbp - 0x60], rax
movzx r15d, word [rbx + 0x52]
mov rdx, qword [rbp - 0x78]
mov r11d, 1
mov r14d, dword [rdi + r15*4]
mov edi, dword [rbx + 0x48]
mov ecx, dword [rdx]
add rdi, rax
add rcx, rax
mov r13d, r15d
mov qword [rbp - 0x58], rcx
lea r12, [0x140000000]
movzx esi, byte [rdi]
mov eax, 0x80
mov dword [rbp - 0x20], esi
mov dword [rbx + r13*4 + 0x78], esi
cmp esi, eax
jae 0x1400289c1
movzx eax, byte [rsi + r12 + 0xb89c0]
add rdi, r11
jmp 0x140028a03
lea rdx, [rbp - 0x20]
mov rcx, rdi
call fcn.140007268
mov esi, dword [rbp - 0x20]
movzx r11d, al
mov eax, 0x80
mov dword [rbx + r13*4 + 0x78], esi
add rdi, r11
cmp esi, eax
jb 0x1400289ec
lea eax, [rsi - 0xc]
shr eax, 1
jmp 0x1400289f5
movzx eax, byte [rsi + r12 + 0xb89c0]
mov rcx, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x78]
mov r11d, 1
add r15d, r11d
add r14, rax
movsxd r13, r15d
mov dword [rdx + r13*4], r14d
cmp r15d, dword [rsp + 0x68]
ja 0x140028a1c
cmp rdi, rcx
jb 0x14002899f
mov r12, qword [rbp - 0x18]
cmp rdi, rcx
jb 0x140028a2f
ja 0x140028a37
mov eax, dword [rbx + 0x70]
cmp r14, rax
jne 0x140028a37
mov eax, dword [rbx + 0x70]
cmp r14, rax
jbe 0x140028a99
xor r10d, r10d
cmp dword [rdx], r10d
jne 0x140028a47
mov r15d, r10d
mov rdi, rcx
jmp 0x140028a9c
cmp qword [rbx + 0x68], r10
jne 0x140028a86
mov eax, 0x2400
test word [rbp + 0xe8], ax
jne 0x140028a64
cmp dword [rbp + 0x100], r10d
je 0x140028a86
lea rcx, [rbp + 0xe0]
call fcn.14001fce0
mov r15, qword [rbp - 0x70]
mov r14, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
xor r10d, r10d
jmp 0x1400288d4
mov r15, qword [rbp - 0x70]
mov r14, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
jmp 0x1400288da
xor r10d, r10d
sub edi, dword [rbp - 0x60]
mov word [rbx + 0x52], r15w
mov ecx, 0x2400
mov dword [rbx + 0x48], edi
cmp qword [rbx + 0x68], r10
jne 0x140028adc
test word [rbp + 0xe8], cx
jne 0x140028ac4
cmp dword [rbp + 0x100], r10d
je 0x140028adc
lea rcx, [rbp + 0xe0]
call fcn.14001fce0
xor r10d, r10d
mov ecx, 0x2400
lea r11d, [r10 + 1]
mov r15, qword [rbp - 0x70]
mov rdi, qword [rbp - 0x78]
mov r13d, dword [rsp + 0x68]
mov r14, qword [rsp + 0x70]
movzx eax, word [rbx + 0x52]
cmp eax, r13d
ja 0x140028b53
cmp byte [r15 + 1], 0xf5
jne 0x140028b2f
mov rdx, qword [r15 + 0x10]
mov r8d, 0x800
mov rcx, r12
call fcn.1400202d0
mov r13d, dword [rsp + 0x30]
mov r12, qword [rsp + 0x58]
jmp 0x140027def
mov esi, r10d
mov ecx, 0x2400
mov r11d, 1
jmp 0x140028aee
test word [r12 + 8], cx
je 0x140028b41
mov rcx, r12
call fcn.14001fca0
jmp 0x140028b10
mov word [r12 + 8], r11w
jmp 0x1400282f1
mov eax, r13d
mov esi, dword [rbx + rax*4 + 0x78]
mov eax, 0x2400
test word [r12 + 8], ax
je 0x140028b68
mov rcx, r12
call fcn.14001fca0
lea eax, [r13 + 1]
mov eax, dword [rdi + rax*4]
cmp dword [rbx + 0x74], eax
jb 0x140028c29
mov eax, r13d
mov edi, dword [rdi + rax*4]
add rdi, qword [rbx + 0x68]
cmp esi, 0xc
jae 0x140028b99
mov rcx, rdi
mov edx, esi
mov r8, r12
call fcn.140023aac
jmp 0x140028b10
mov al, byte [rsp + 0x40]
lea ebx, [rsi - 0xc]
shr ebx, 1
mov byte [r12 + 0xa], al
lea edx, [rbx + 2]
mov dword [r12 + 0xc], ebx
cmp dword [r12 + 0x20], edx
jge 0x140028bd6
mov eax, 1
xor r8d, r8d
mov rcx, r12
mov word [r12 + 8], ax
call fcn.14001f874
test eax, eax
jne 0x14002d0ec
jmp 0x140028be0
mov rax, qword [r12 + 0x18]
mov qword [r12 + 0x10], rax
mov rcx, qword [r12 + 0x10]
mov r8, rbx
mov rdx, rdi
call fcn.14009e430
mov r11, qword [r12 + 0x10]
xor r10d, r10d
mov byte [rbx + r11], r10b
mov rax, qword [r12 + 0x10]
lea r11d, [r10 + 1]
mov byte [rax + rbx + 1], r10b
mov eax, esi
lea rcx, [0x140000000]
and rax, r11
movzx eax, word [rcx + rax*2 + 0xb7da4]
mov word [r12 + 8], ax
jmp 0x1400282f1
mov al, byte [rsp + 0x40]
mov byte [r12 + 0xa], al
test byte [r15 + 2], 0xc0
je 0x140028c55
cmp esi, 0xc
jb 0x140028c48
mov eax, 1
test al, sil
je 0x140028c7e
mov eax, 0x80
test byte [r15 + 2], al
jne 0x140028c7e
jmp 0x140028c5a
mov eax, 0x80
cmp esi, eax
jb 0x140028c67
lea r8d, [rsi - 0xc]
shr r8d, 1
jmp 0x140028c79
lea rcx, [0x140000000]
mov eax, esi
movzx r8d, byte [rax + rcx + 0xb89c0]
test r8d, r8d
jne 0x140028c8a
lea rcx, [0x1400b7bd0]
jmp 0x140028b8a
mov rcx, qword [rbx + 0x38]
mov eax, r13d
mov r9, r12
mov edx, dword [rdi + rax*4]
call fcn.14002068c
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002d11d
mov rcx, qword [r12 + 0x10]
mov r8, r12
mov edx, esi
call fcn.140023aac
mov r8d, 0xefff
and word [r12 + 8], r8w
jmp 0x140028b15
movsxd rbx, dword [r15 + 4]
mov rdi, qword [r15 + 0x10]
imul rbx, rbx, 0x38
add rbx, rsi
mov r8b, byte [rsp + 0x40]
mov dl, byte [rdi]
mov rcx, rbx
call fcn.140026f98
cmp byte [rdi], 0x45
jne 0x140028d42
movzx eax, word [rbx + 8]
test al, 4
je 0x140028d42
movabs rcx, 0x7fffffffffff
cmp qword [rbx], rcx
jg 0x140028d25
movabs rcx, 0xffff800000000000
cmp qword [rbx], rcx
jl 0x140028d25
mov ecx, 0xfffb
and ax, cx
or ax, 0x20
jmp 0x140028d3e
pxor xmm0, xmm0
mov ecx, 0xfffb
cvtsi2sd xmm0, qword [rbx]
and ax, cx
or ax, 8
movsd qword [rbx], xmm0
mov word [rbx + 8], ax
mov r11d, 1
xor r10d, r10d
add rdi, r11
cmp byte [rdi], r10b
je 0x14002ca13
add rbx, 0x38
jmp 0x140028cdd
mov eax, dword [r15 + 8]
movsxd r11, dword [r15 + 4]
mov rdi, qword [r15 + 0x10]
imul r11, r11, 0x38
add r11, rsi
mov r8d, 1
mov r13, r10
sub eax, r8d
mov r14d, r10d
mov qword [rbp - 0x60], r10
movsxd r12, eax
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x78], r11
movzx esi, byte [rax + 0xc3]
movsxd rax, dword [r15 + 0xc]
imul r12, r12, 0x38
add r12, r11
mov dword [rbp - 0x64], esi
imul rax, rax, 0x38
add rax, qword [rsp + 0x60]
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x40], rax
test rdi, rdi
je 0x140028e15
mov r12b, byte [rsp + 0x40]
lea rbx, [r11 + 8]
lea esi, [r8 + 0x1f]
mov r15d, 0xfffb
mov dl, byte [rdi]
lea rcx, [rbx - 8]
mov r8b, r12b
call fcn.140026f98
cmp byte [rdi], 0x45
jne 0x140028df1
movzx eax, word [rbx]
test al, 4
je 0x140028df1
and ax, r15w
or ax, si
mov word [rbx], ax
mov r8d, 1
xor r10d, r10d
add rbx, 0x38
add rdi, r8
cmp byte [rdi], r10b
jne 0x140028dcd
mov r15, qword [rbp - 0x70]
mov esi, dword [rbp - 0x64]
mov r11, qword [rbp - 0x78]
mov r12, qword [rbp - 0x50]
movsxd r9, esi
lea rbx, [r12 + 0x24]
mov qword [rbp - 0x58], r9
movzx ecx, word [rbx - 0x1c]
test r8b, cl
je 0x140028e44
mov eax, 0x4000
and cx, ax
neg cx
sbb eax, eax
and eax, 0xa
add r14d, r8d
mov dword [rbx], eax
jmp 0x140028fab
test cl, 0x24
je 0x140028f26
mov r8, qword [rbx - 0x24]
mov rdx, r8
test r8, r8
jns 0x140028e5c
not rdx
mov edi, 1
add r14d, edi
cmp rdx, 0x7f
ja 0x140028e90
mov rax, r8
and rax, rdi
cmp rax, r8
jne 0x140028e82
lea eax, [rdi + 3]
cmp r9, rax
jl 0x140028e82
lea eax, [rdx + 8]
jmp 0x140028ee0
mov r8, rdi
add r13, rdi
mov dword [rbx], r8d
jmp 0x140028fab
cmp rdx, 0x7fff
ja 0x140028ea5
mov edx, 2
add r13, rdx
mov dword [rbx], edx
jmp 0x140028f1e
cmp rdx, 0x7fffff
ja 0x140028eb5
mov eax, 3
jmp 0x140028ec3
cmp rdx, 0x7fffffff
ja 0x140028ec8
mov eax, 4
add r13, rax
jmp 0x140028ee0
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x140028ee4
add r13, 6
mov eax, 5
mov dword [rbx], eax
jmp 0x140028f1e
mov edx, 8
add r13, rdx
lea eax, [rdx + 0x18]
test al, cl
je 0x140028f18
pxor xmm0, xmm0
mov eax, 0xffdf
mov dword [rbx], 7
cvtsi2sd xmm0, r8
and cx, ax
or cx, dx
mov word [rbx - 0x1c], cx
movsd qword [rbx - 0x24], xmm0
jmp 0x140028f1e
mov dword [rbx], 6
mov r8, rdi
jmp 0x140028fab
mov edx, 8
test dl, cl
je 0x140028f3d
add r14d, r8d
mov dword [rbx], 7
add r13, rdx
jmp 0x140028fab
mov esi, dword [rbx - 0x18]
mov eax, ecx
shr eax, 1
and eax, r8d
lea r12d, [rax + rsi*2 + 0xc]
mov eax, 0x4000
test ax, cx
je 0x140028f88
movsxd rax, dword [rbx - 0x24]
lea r12d, [r12 + rax*2]
test r13, r13
je 0x140028f84
lea rcx, [rbx - 0x24]
call fcn.14001fa68
xor r10d, r10d
test eax, eax
jne 0x14002d0e7
add esi, dword [rbx - 0x24]
mov r9, qword [rbp - 0x58]
lea r8d, [r10 + 1]
jmp 0x140028f88
add qword [rbp - 0x60], rax
mov eax, esi
mov ecx, r8d
add r13, rax
mov eax, r12d
jmp 0x140028f98
add ecx, r8d
shr rax, 7
test rax, rax
jne 0x140028f95
mov r11, qword [rbp - 0x78]
add r14d, ecx
mov dword [rbx], r12d
lea rax, [rbx - 0x24]
cmp rax, r11
je 0x140028fbd
sub rbx, 0x38
jmp 0x140028e21
cmp r14d, 0x7e
jle 0x140028ff2
mov edx, r8d
movsxd rax, r14d
jmp 0x140028fce
add edx, r8d
shr rax, 7
test rax, rax
jne 0x140028fcb
add r14d, edx
mov ecx, r8d
movsxd rax, r14d
jmp 0x140028fe5
add ecx, r8d
shr rax, 7
test rax, rax
jne 0x140028fe2
cmp edx, ecx
jge 0x140028ff5
add r14d, r8d
mov r9, qword [rbp - 0x40]
mov r12, qword [rbp - 0x60]
movsxd rbx, r14d
movsxd rax, dword [r9 + 0x20]
lea rdi, [r13 + rbx]
lea rcx, [rdi + r12]
cmp rcx, rax
jg 0x14002901c
mov rax, qword [r9 + 0x18]
mov qword [r9 + 0x10], rax
jmp 0x14002906b
mov r8, qword [rsp + 0x58]
movsxd rax, dword [r8 + 0x80]
cmp rcx, rax
jg 0x14002cead
cmp dword [r9 + 0x20], edi
jge 0x14002904e
xor r8d, r8d
mov edx, edi
mov rcx, r9
call fcn.14001f874
mov r9, qword [rbp - 0x40]
mov r11, qword [rbp - 0x78]
jmp 0x14002905f
mov rax, qword [r9 + 0x18]
and word [r9 + 8], 0x2d
mov qword [r9 + 0x10], rax
mov eax, r10d
test eax, eax
jne 0x14002d0e7
lea r8d, [rax + 1]
mov eax, 0x10
mov dword [r9 + 0xc], edi
mov word [r9 + 8], ax
test r12, r12
je 0x14002908b
mov eax, 0x4010
mov dword [r9], r12d
mov word [r9 + 8], ax
mov rdi, qword [r9 + 0x10]
mov ecx, 0x80
lea rsi, [rdi + rbx]
cmp r14d, ecx
jae 0x1400290a5
mov byte [rdi], r14b
mov eax, r8d
jmp 0x1400290e7
cmp rbx, 0x7f
ja 0x1400290b2
and bl, 0x7f
mov byte [rdi], bl
jmp 0x1400290a0
cmp rbx, 0x3fff
ja 0x1400290d7
mov rax, rbx
mov r15d, 2
shr rax, 7
or al, cl
and bl, 0x7f
mov byte [rdi], al
mov byte [rdi + 1], bl
mov eax, r15d
jmp 0x1400290ed
mov rdx, rbx
mov rcx, rdi
call fcn.14000703c
mov ecx, 0x80
mov r15d, 2
mov r12, qword [rbp - 0x50]
movzx eax, al
add rdi, rax
mov r10d, dword [r11 + 0x24]
cmp r10d, ecx
jae 0x140029105
mov byte [rdi], r10b
jmp 0x140029113
mov rdx, r10
cmp r10, 0x7f
ja 0x14002911e
and dl, 0x7f
mov byte [rdi], dl
mov r9d, 1
mov eax, r9d
jmp 0x14002914b
cmp rdx, 0x3fff
ja 0x14002913d
mov rax, rdx
shr rax, 7
or al, cl
and dl, 0x7f
mov byte [rdi], al
mov byte [rdi + 1], dl
mov eax, r15d
jmp 0x140029145
mov rcx, rdi
call fcn.14000703c
mov r9d, 1
movzx eax, al
add rdi, rax
lea eax, [r10 - 1]
cmp eax, 6
ja 0x140029186
mov rdx, qword [r11]
lea rcx, [0x140000000]
movzx ecx, byte [r10 + rcx + 0xb89c0]
xor r10d, r10d
lea r8, [rsi + rcx]
mov ebx, ecx
sub r8, r9
mov byte [r8], dl
shr rdx, 8
dec ecx
jne 0x140029176
jmp 0x1400291b5
cmp r10d, 0xc
jb 0x1400291af
mov ebx, dword [r11 + 0xc]
xor r10d, r10d
test ebx, ebx
je 0x1400291b5
mov rdx, qword [r11 + 0x10]
mov r8d, ebx
mov rcx, rsi
call fcn.14009e430
mov r11, qword [rbp - 0x78]
xor r10d, r10d
jmp 0x1400291b5
xor r10d, r10d
mov ebx, r10d
add r11, 0x38
mov eax, ebx
mov ecx, 0x80
add rsi, rax
mov qword [rbp - 0x78], r11
cmp r11, r12
jbe 0x1400290f7
mov r15, qword [rbp - 0x70]
jmp 0x140027a62
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x38]
cmp dword [r15 + 0xc], r10d
je 0x1400291fc
mov rcx, rdx
call fcn.140018e94
mov rbx, rax
jmp 0x140029222
lea r8, [rbp - 0x18]
mov rcx, r12
mov qword [rbp - 0x18], r10
call fcn.14001dbb0
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002981a
mov rbx, qword [rbp - 0x18]
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov qword [rax], rbx
xor r10d, r10d
mov r11d, 1
mov eax, dword [r12 + 0x178]
mov rbx, qword [rsp + 0x50]
test eax, eax
jne 0x14002ce94
mov rdi, qword [rsp + 0x38]
cmp rdi, rbx
jb 0x14002ca0e
mov rdx, qword [r12 + 0x1e8]
test rdx, rdx
je 0x14002ca35
mov eax, dword [r12 + 0x1f8]
mov rcx, qword [r12 + 0x1f0]
add rbx, rax
mov qword [rsp + 0x50], rbx
call rdx
xor r10d, r10d
test eax, eax
jne 0x14002ce90
cmp rdi, rbx
jae 0x14002925c
jmp 0x140027a6c
mov r14d, dword [r15 + 4]
mov rdi, qword [r15 + 0x10]
test r14d, r14d
jne 0x140029378
cmp dword [r12 + 0xd8], r10d
jg 0x14002cca0
mov rcx, rdi
call fcn.140006368
mov r8d, dword [r12 + 0x2cc]
xor edx, edx
add r8d, dword [r12 + 0x2c8]
mov rcx, r12
movsxd rsi, eax
call fcn.140065004
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002d12c
lea rdx, [rsi + 0x21]
mov rcx, r12
call fcn.140003da8
xor r10d, r10d
mov rbx, rax
test rax, rax
je 0x14002ca35
lea r9, [rax + 0x20]
lea ecx, [rsi + 1]
mov rdx, rdi
movsxd r8, ecx
mov rcx, r9
mov qword [rax], r9
call fcn.14009e430
xor r10d, r10d
lea r11d, [r14 + 1]
cmp byte [r12 + 0x61], r10b
je 0x14002933f
mov byte [r12 + 0x61], r10b
mov byte [r12 + 0x69], r11b
jmp 0x140029347
add dword [r12 + 0x2c8], r11d
mov rax, qword [r12 + 0x2b8]
mov qword [rbx + 0x18], rax
mov rax, qword [r12 + 0x2d0]
mov qword [r12 + 0x2b8], rbx
mov qword [rbx + 8], rax
mov rax, qword [r12 + 0x2d8]
mov qword [rbx + 0x10], rax
jmp 0x140027675
mov r13, qword [r12 + 0x2b8]
mov esi, r10d
test r13, r13
je 0x14002cd02
mov rcx, qword [r13]
mov rdx, rdi
call fcn.1400065c0
xor r10d, r10d
test eax, eax
je 0x1400293ab
mov r13, qword [r13 + 0x18]
add esi, r11d
test r13, r13
jne 0x14002938c
test r13, r13
je 0x14002cd02
cmp dword [r12 + 0xd8], r10d
jle 0x1400293c7
cmp r14d, r11d
je 0x14002ccbc
cmp qword [r13 + 0x18], r10
jne 0x140029445
cmp byte [r12 + 0x69], r10b
je 0x140029445
mov ebx, r11d
mov dword [rsp + 0x68], ebx
cmp r14d, r11d
jne 0x14002944a
mov rdi, qword [rsp + 0x70]
mov edx, r11d
mov rcx, rdi
call fcn.1400232d4
xor r10d, r10d
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002d21d
lea eax, [r10 + 1]
mov rcx, rdi
mov byte [r12 + 0x61], al
call fcn.140023324
mov r8d, 5
cmp eax, r8d
je 0x14002ccc5
mov eax, dword [rdi + 0x38]
xor r10d, r10d
lea r11d, [r8 - 4]
mov dword [rsp + 0x30], eax
test eax, eax
je 0x14002943b
mov byte [r12 + 0x61], r10b
jmp 0x14002955a
mov byte [r12 + 0x69], r10b
jmp 0x14002955a
mov dword [rsp + 0x68], r10d
mov eax, dword [r12 + 0x2c8]
mov rcx, qword [rsp + 0x58]
mov r9d, 2
sub eax, esi
mov esi, eax
sub esi, r11d
mov dword [rbp - 0x64], esi
cmp r14d, r9d
jne 0x1400294c9
mov r12d, dword [r12 + 0x2c]
mov edi, r10d
and r12d, r11d
cmp dword [rcx + 0x28], r10d
jle 0x1400294cc
test r12d, r12d
mov esi, r10d
mov rbx, r10
sete sil
mov rcx, qword [rcx + 0x20]
mov r8d, esi
mov edx, 0x204
mov rcx, qword [rcx + rbx + 8]
call fcn.140017d14
xor r10d, r10d
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002d136
mov rcx, qword [rsp + 0x58]
lea r11d, [rax + 1]
add rbx, 0x20
add edi, r11d
cmp edi, dword [rcx + 0x28]
jl 0x14002948a
mov esi, dword [rbp - 0x64]
jmp 0x1400294d0
mov r12d, r10d
mov eax, dword [rsp + 0x30]
mov edi, r10d
cmp dword [rcx + 0x28], r10d
jle 0x140029514
mov rbx, r10
mov rcx, qword [rcx + 0x20]
mov r8d, esi
mov edx, r14d
mov rcx, qword [rcx + rbx + 8]
call fcn.140017ed8
xor r10d, r10d
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002d136
mov rcx, qword [rsp + 0x58]
lea r11d, [rax + 1]
add rbx, 0x20
add edi, r11d
cmp edi, dword [rcx + 0x28]
jl 0x1400294dc
test r12d, r12d
mov r12, qword [rsp + 0x58]
je 0x140029556
mov rax, qword [r12 + 8]
jmp 0x140029537
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], r11d
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140029525
mov rcx, r12
call fcn.14004074c
mov eax, dword [rsp + 0x30]
mov r11d, 1
or dword [r12 + 0x2c], r11d
xor r10d, r10d
mov ebx, dword [rsp + 0x68]
test eax, eax
jne 0x14002d127
cmp qword [r12 + 0x2b8], r13
je 0x1400295a1
mov rdx, qword [r12 + 0x2b8]
mov rcx, r12
mov rax, qword [rdx + 0x18]
mov qword [r12 + 0x2b8], rax
call fcn.140003a4c
dec dword [r12 + 0x2c8]
cmp qword [r12 + 0x2b8], r13
jne 0x14002956c
xor r10d, r10d
lea r11d, [r10 + 1]
cmp r14d, r11d
jne 0x1400295d2
mov rax, qword [r13 + 0x18]
mov rdx, r13
mov rcx, r12
mov qword [r12 + 0x2b8], rax
call fcn.140003a4c
xor r10d, r10d
test ebx, ebx
jne 0x14002ca30
dec dword [r12 + 0x2c8]
jmp 0x1400295fc
mov rax, qword [r13 + 8]
mov qword [r12 + 0x2d0], rax
mov rax, qword [r13 + 0x10]
mov qword [r12 + 0x2d8], rax
test ebx, ebx
je 0x1400295fc
mov eax, 2
cmp r14d, eax
jne 0x14002ca09
mov r8d, esi
mov edx, r14d
mov rcx, r12
call fcn.140065004
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002d12c
jmp 0x140027a6c
mov edx, dword [r15 + 8]
mov edi, r10d
mov dword [rbp - 0x68], r10d
test edx, edx
je 0x140029640
mov eax, dword [r12 + 0x30]
bt rax, 0x14
jb 0x14002cd29
movsxd rcx, dword [r15 + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
test rbx, rbx
je 0x140029779
lea r8, [rbp - 0x68]
mov rcx, rbx
call fcn.140016e98
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002cd34
test byte [r14 + 0xc8], 0x40
lea r11d, [rax + 1]
je 0x140029776
cmp dword [r15 + 8], r10d
je 0x140029776
cmp byte [r12 + 0x61], r10b
je 0x1400296aa
cmp dword [r12 + 0xd4], r11d
jle 0x140029776
cmp dword [r14 + 0x40], r10d
jne 0x1400296cc
add dword [r12 + 0x2cc], r11d
mov ecx, dword [r12 + 0x2cc]
add ecx, dword [r12 + 0x2c8]
mov dword [r14 + 0x40], ecx
mov r8d, dword [r14 + 0x40]
xor edx, edx
mov rcx, r12
sub r8d, r11d
call fcn.140065004
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x140029758
mov edi, dword [r14 + 0x40]
mov rsi, qword [rbx + 8]
cmp byte [rbx + 0x11], r10b
je 0x140029711
lea eax, [r13 + 1]
add dword [rbx + 0x14], eax
cmp byte [rbx + 0x12], r10b
jne 0x140029711
mov rcx, rbx
call fcn.140014408
xor r10d, r10d
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x140029735
cmp byte [rcx + 0xa], r10b
je 0x140029735
mov edx, edi
call fcn.140011124
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
jmp 0x14002973d
mov r13d, r10d
mov dword [rsp + 0x30], r10d
cmp byte [rbx + 0x11], r10b
je 0x140029753
dec dword [rbx + 0x14]
jne 0x140029753
mov rcx, rbx
call fcn.1400143e0
xor r10d, r10d
mov rsi, qword [rsp + 0x60]
mov rax, qword [r12 + 0x2d0]
mov r11d, 1
mov qword [r14 + 0x58], rax
mov rax, qword [r12 + 0x2d8]
mov qword [r14 + 0x60], rax
mov edi, dword [rbp - 0x68]
cmp word [r15 + 2], r10w
je 0x140029811
cmp edi, dword [r15 + 0xc]
jne 0x1400297a5
mov rax, qword [r12 + 0x20]
movsxd rcx, dword [r15 + 4]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [r15 + 0x10]
cmp dword [rcx + 4], eax
je 0x140029811
mov rdx, qword [r14 + 0xa8]
test rdx, rdx
je 0x1400297b9
mov rcx, r12
call fcn.140003a4c
lea rdx, str.database_schema_has_changed
mov rcx, r12
call fcn.140003f80
mov qword [r14 + 0xa8], rax
movsxd rdx, dword [r15 + 4]
mov rax, qword [r12 + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
cmp dword [rcx], edi
je 0x1400297f0
mov rcx, r12
call fcn.1400406d0
and dword [r14 + 0xc8], 0xfffffffd
mov r11d, 1
or dword [r14 + 0xc8], r11d
lea r13d, [r11 + 0x10]
xor r10d, r10d
mov dword [rsp + 0x30], r13d
test r13d, r13d
je 0x14002767a
mov edi, 1
mov rbx, qword [rsp + 0x50]
cmp byte [r12 + 0x63], r10b
je 0x14002d14c
mov r13d, 7
jmp 0x14002d165
movsxd rax, dword [r15 + 4]
mov rcx, qword [r12 + 0x20]
mov edx, dword [r15 + 0xc]
shl rax, 5
lea r8, [rbp - 4]
mov rcx, qword [rax + rcx + 8]
call fcn.14001da98
mov rdx, r15
mov rcx, r14
call fcn.140027114
movsxd rcx, dword [rbp - 4]
mov qword [rax], rcx
jmp 0x140027469
movsxd rbx, dword [r15 + 4]
mov r8d, dword [r15 + 0xc]
mov edx, dword [r15 + 8]
shl rbx, 5
add rbx, qword [r12 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.14001db1c
mov r11d, 1
mov r13d, eax
mov dword [rsp + 0x30], eax
lea edx, [r11 + 1]
cmp dword [r15 + 8], r11d
jne 0x1400298bd
movzx eax, word [r15 + 2]
mov ecx, dword [r15 + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
or dword [r12 + 0x2c], r11d
jmp 0x1400298ce
cmp dword [r15 + 8], edx
jne 0x1400298ce
mov rcx, qword [rbx + 0x18]
mov al, byte [r15 + 0xc]
mov byte [rcx + 0x70], al
xor r10d, r10d
cmp dword [r15 + 4], r11d
jne 0x1400298fd
mov rax, qword [r12 + 8]
jmp 0x1400298f0
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], r11d
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1400298de
and dword [r14 + 0xc8], 0xfffffffc
test r13d, r13d
jne 0x14002cde2
mov r9, qword [rsp + 0x48]
jmp 0x140027387
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je case.0x140027281.98
mov eax, dword [r15 + 8]
cmp dword [rdi + 0x4c], eax
je 0x140029a7a
mov eax, dword [r14 + 0xc8]
and al, 3
cmp al, r11b
je 0x14002cd77
movsxd r14, dword [r15 + 0xc]
mov r8, qword [rsp + 0x58]
mov r13d, dword [r15 + 8]
mov rax, r14
mov edi, r10d
mov r12, r10
shl rax, 5
add rax, qword [r8 + 0x20]
mov rcx, qword [rax + 8]
mov qword [rbp - 0x58], rcx
cmp bl, 0x63
jne 0x140029996
mov rax, qword [rax + 0x18]
movzx esi, word [r15 + 2]
mov ecx, 8
and esi, ecx
mov cl, byte [rax + 0x70]
mov rax, qword [rsp + 0x70]
or esi, 4
cmp cl, byte [rax + 0xc3]
jae 0x140029999
mov byte [rax + 0xc3], cl
jmp 0x140029999
mov esi, r10d
mov eax, 0x10
test byte [r15 + 2], al
je 0x1400299d3
mov rbx, r13
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.14001fd84
mov qword [rbx], rax
mov r13d, dword [rbx]
mov eax, 0x3e40
and word [rbx + 8], ax
mov eax, 4
or word [rbx + 8], ax
xor r10d, r10d
mov al, byte [r15 + 1]
cmp al, 0xf7
jne 0x1400299e7
mov r12, qword [r15 + 0x10]
movzx edi, word [r12 + 8]
jmp 0x1400299ef
cmp al, 0xfd
jne 0x1400299ef
mov edi, dword [r15 + 0x10]
mov edx, dword [r15 + 4]
mov r9d, r14d
mov r14, qword [rsp + 0x70]
mov r8d, edi
mov rcx, r14
mov byte [rsp + 0x20], r10b
call fcn.140026dbc
mov rdi, rax
test rax, rax
je 0x14002d0ec
mov rcx, qword [rdi + 0x38]
mov eax, 1
mov r9, r12
mov qword [rsp + 0x20], rcx
mov rcx, qword [rbp - 0x58]
mov byte [rdi + 2], al
mov eax, 4
mov r8d, esi
mov edx, r13d
or dword [rdi + 8], eax
mov dword [rdi + 0x4c], r13d
call fcn.1400180b8
mov rsi, qword [rsp + 0x60]
mov r9, qword [rsp + 0x48]
mov qword [rdi + 0x40], r12
cmp byte [r15 + 1], 0xf7
mov r12, qword [rsp + 0x58]
mov r13d, eax
mov dword [rsp + 0x30], eax
setne al
xor r10d, r10d
lea edx, [r10 + 2]
lea r11d, [r10 + 1]
lea r8d, [r10 + 4]
mov byte [rdi + 4], al
mov cl, byte [r15 + 2]
mov rax, qword [rdi + 0x38]
and cl, 3
mov byte [rax + 3], cl
test r13d, r13d
jne 0x14002981a
jmp case.0x140027281.86
movsxd rcx, dword [r15 + 8]
mov rax, qword [r14 + 0x78]
mov edx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
or r9d, 0xffffffff
mov rcx, r14
movsx r8d, word [rbx + 0x50]
mov byte [rsp + 0x20], r10b
call fcn.140026dbc
mov r11, rax
test rax, rax
je 0x14002d0f1
mov eax, 1
or dword [r11 + 8], eax
mov byte [r11 + 2], al
mov rcx, qword [rbx + 0x40]
mov eax, dword [r11 + 8]
mov qword [r11 + 0x40], rcx
mov cl, byte [rbx + 4]
mov byte [r11 + 4], cl
mov ecx, dword [rbx + 0x4c]
mov dword [r11 + 0x4c], ecx
xor eax, dword [rbx + 8]
mov ecx, 4
and eax, ecx
mov r8d, ecx
xor eax, dword [r11 + 8]
mov dword [r11 + 8], eax
mov rax, qword [rbx + 0x10]
mov qword [r11 + 0x10], rax
lea eax, [rcx + 4]
or dword [r11 + 8], eax
or dword [rbx + 8], eax
mov rax, qword [r11 + 0x38]
mov r9, qword [r11 + 0x40]
mov edx, dword [r11 + 0x4c]
mov rcx, qword [r11 + 0x10]
mov qword [rsp + 0x20], rax
call fcn.1400180b8
mov r13d, eax
mov dword [rsp + 0x30], eax
jmp 0x140027469
cmp dword [r15 + 0xc], r10d
jle 0x140029b63
movsxd rax, dword [r15 + 0xc]
lea rcx, [0x1400c4580]
imul rax, rax, 0x38
mov dword [rax + rsi + 0xc], r10d
movsxd rax, dword [r15 + 0xc]
imul rax, rax, 0x38
mov qword [rax + rsi + 0x10], rcx
movsxd rdx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x140029ba1
mov eax, 8
test byte [rbx + 8], al
jne 0x140029ba1
mov edx, dword [rbx + 0x4c]
mov rcx, qword [rbx + 0x10]
xor r8d, r8d
mov qword [rbx + 0x18], r10
mov dword [rbx + 0x28], r10d
call fcn.14001d7dc
mov r13d, eax
mov dword [rsp + 0x30], eax
jmp 0x140029ce1
mov r8d, dword [r15 + 8]
or r9d, 0xffffffff
mov rcx, r14
mov byte [rsp + 0x20], r10b
call fcn.140026dbc
mov rbx, rax
test rax, rax
je 0x14002d0f1
mov eax, 1
mov dword [rsp + 0x28], 0x41e
lea r9, [rbx + 0x10]
or dword [rbx + 8], eax
movzx ecx, word [r15 + 2]
mov r8, r12
or ecx, 5
xor edx, edx
mov dword [rsp + 0x20], ecx
mov rcx, qword [r12]
call fcn.140015e78
xor r10d, r10d
mov r13d, eax
test eax, eax
jne 0x14002981a
mov rcx, qword [rbx + 0x10]
lea edx, [rax + 1]
xor r8d, r8d
call fcn.140016e98
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x140029cb3
mov rsi, qword [r15 + 0x10]
mov rcx, qword [rbx + 0x10]
mov qword [rbx + 0x40], rsi
test rsi, rsi
je 0x140029c81
movzx r8d, word [r15 + 2]
lea rdx, [rbx + 0x4c]
or r8d, 2
call fcn.14001d590
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x140029c76
mov rax, qword [rbx + 0x38]
mov edx, dword [rbx + 0x4c]
mov rcx, qword [rbx + 0x10]
lea r8d, [r13 + 4]
mov r9, rsi
mov qword [rsp + 0x20], rax
call fcn.1400180b8
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
mov r12, qword [rsp + 0x58]
mov byte [rbx + 4], r10b
jmp 0x140029cae
mov rax, qword [rbx + 0x38]
mov esi, 1
xor r9d, r9d
lea r8d, [rsi + 3]
mov edx, esi
mov dword [rbx + 0x4c], esi
mov qword [rsp + 0x20], rax
call fcn.1400180b8
mov byte [rbx + 4], sil
mov r13d, eax
mov dword [rsp + 0x30], eax
xor r10d, r10d
mov rsi, qword [rsp + 0x60]
mov ecx, 8
mov eax, r10d
cmp word [r15 + 2], cx
lea r8d, [rcx - 4]
setne al
shl eax, 2
xor eax, dword [rbx + 8]
and eax, r8d
xor dword [rbx + 8], eax
test r13d, r13d
je 0x140029cf1
mov rcx, qword [rbx + 0x10]
call fcn.1400165b4
xor r10d, r10d
test r13d, r13d
jne 0x14002981a
lea r8d, [r10 + 4]
mov r11d, 1
mov byte [rbx + 2], r11b
jmp 0x140027c6c
mov r8d, dword [r15 + 8]
mov edx, dword [r15 + 4]
or r9d, 0xffffffff
mov rcx, r14
mov byte [rsp + 0x20], r11b
call fcn.140026dbc
test rax, rax
je 0x14002d0f1
mov rcx, qword [r15 + 0x10]
mov r8, rax
mov qword [rax + 0x40], rcx
mov edx, dword [r15 + 0xc]
mov rcx, r12
call fcn.14002e76c
xor r10d, r10d
mov dword [rsp + 0x30], eax
mov r13d, eax
test eax, eax
jne 0x14002981a
jmp 0x14002746c
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
test rcx, rcx
je 0x14002a00c
jmp 0x1400272e0
mov r8d, dword [r15 + 0xc]
mov edx, dword [r15 + 4]
mov eax, 3
or r9d, 0xffffffff
mov rcx, r14
mov byte [rsp + 0x20], al
call fcn.140026dbc
xor r10d, r10d
test rax, rax
je 0x14002d0f1
lea r11d, [r10 + 1]
mov byte [rax + 2], r11b
mov ecx, dword [r15 + 8]
mov byte [rax + 4], r11b
mov dword [rax + 0x2c], ecx
lea rcx, [0x1400d7f44]
mov qword [rax + 0x38], rcx
jmp 0x14002767a
movsxd rax, dword [r15 + 4]
mov rdx, qword [r14 + 0x78]
mov rcx, r14
mov rdx, qword [rdx + rax*8]
call fcn.1400228c8
movsxd r11, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
xor r10d, r10d
mov qword [rax + r11*8], r10
jmp 0x14002746c
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r15 + 4]
mov r14d, r10d
mov rsi, qword [rax + rcx*8]
mov word [rsi + 2], 0
mov dword [rsi + 0x28], r10d
cmp byte [rsi + 4], r10b
je 0x140029f31
movsxd rdi, dword [r15 + 0xc]
imul rdi, rdi, 0x38
add rdi, qword [rsp + 0x60]
movzx r12d, word [rdi + 8]
mov al, r12b
and al, 0x2e
cmp al, dl
jne 0x140029e32
xor edx, edx
mov rcx, rdi
call fcn.140026f00
mov rcx, rdi
call fcn.14001fd84
movzx ecx, word [rdi + 8]
mov word [rdi + 8], r12w
mov r13, rax
test cl, 0x24
jne 0x140029ef6
mov eax, 8
test al, cl
jne 0x140029ec5
lea r11d, [rax - 7]
test r11b, cl
jne 0x14002c4aa
cmp ebx, 0x18
jge 0x14002c4aa
mov rcx, qword [rsi + 0x38]
lea rdx, [rsp + 0x7c]
call fcn.1400189d4
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002d13b
mov r11d, 1
cmp dword [rsp + 0x7c], r10d
jne 0x14002a00c
mov r12, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov r11d, 1
lea r8d, [r11 + 3]
test r14d, r14d
je 0x140028361
add r15, 0x18
jmp 0x140027c6c
movsd xmm1, qword [rdi]
pxor xmm0, xmm0
cvtsi2sd xmm0, r13
comisd xmm0, xmm1
jbe 0x140029ee5
mov eax, 1
test al, bl
je 0x140029ef6
sub ebx, eax
jmp 0x140029ef6
comisd xmm1, xmm0
jbe 0x140029ef6
mov eax, 1
test al, bl
jne 0x140029ef6
add ebx, eax
mov rcx, qword [rsi + 0x38]
lea rax, [rsp + 0x7c]
xor r9d, r9d
mov r8, r13
xor edx, edx
mov qword [rsp + 0x20], rax
call fcn.140018a30
mov r12, qword [rsp + 0x58]
xor r10d, r10d
mov qword [rsi + 0x58], r13
mov dword [rsp + 0x30], eax
mov r13d, eax
test eax, eax
jne 0x14002d12c
jmp 0x140029fb2
mov rax, qword [rsi + 0x38]
test byte [rax + 3], dl
mov rax, qword [rsi + 0x40]
mov byte [rbp + 0x1e], r10b
mov qword [rbp + 8], rax
movzx eax, word [r15 + 0x10]
cmovne r14d, r11d
mov word [rbp + 0x18], ax
mov eax, ebx
lea rdx, [rbp + 8]
and al, r11b
neg al
movsxd rax, dword [r15 + 0xc]
sbb cl, cl
xor r9d, r9d
xor r8d, r8d
and cl, 0xfe
add cl, r11b
imul rax, rax, 0x38
add rax, qword [rsp + 0x60]
mov byte [rbp + 0x1a], cl
mov qword [rbp + 0x10], rax
mov rcx, qword [rsi + 0x38]
lea rax, [rsp + 0x7c]
mov qword [rsp + 0x20], rax
call fcn.140018a30
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002d12c
test r14d, r14d
je 0x140029fb2
cmp byte [rbp + 0x1e], r10b
je 0x140029e8e
mov eax, dword [rsp + 0x7c]
cmp ebx, 0x18
jl 0x14002a016
test eax, eax
js 0x140029fd0
jne 0x140029fc6
cmp ebx, 0x19
je 0x140029fd0
mov dword [rsp + 0x7c], r10d
jmp 0x140029e9f
mov rcx, qword [rsi + 0x38]
xor edx, edx
mov dword [rsp + 0x7c], r10d
call fcn.140018ff8
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
je 0x140029e9f
cmp eax, 0x65
jne 0x14002d12c
lea r11d, [rax - 0x64]
mov r13d, r10d
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x7c], r11d
mov rsi, qword [rsp + 0x60]
jmp 0x14002ab85
test eax, eax
jg 0x14002a037
jne 0x14002a021
cmp ebx, 0x16
je 0x14002a037
mov rax, qword [rsi + 0x38]
mov ecx, r10d
cmp byte [rax], r10b
setne cl
mov dword [rsp + 0x7c], ecx
jmp 0x140029e8e
mov rcx, qword [rsi + 0x38]
xor edx, edx
mov dword [rsp + 0x7c], r10d
call fcn.140019124
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
je 0x140029e9f
cmp eax, 0x65
jne 0x14002d12c
lea r11d, [rax - 0x64]
mov r13d, r10d
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x7c], r11d
jmp 0x140029e94
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r15 + 0x1c]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
cmp byte [rax], r10b
jne case.0x140027281.86
mov rax, qword [rbx + 0x40]
mov edi, dword [r15 + 4]
mov byte [rbp + 0x92], r10b
mov qword [rbp + 0x80], rax
movzx eax, word [r15 + 0x28]
mov dword [rbp - 0x1c], r10d
mov word [rbp + 0x90], ax
movsxd rax, dword [r15 + 0x24]
imul rax, rax, 0x38
add rax, rsi
mov qword [rbp + 0x88], rax
lea r9, [rbp - 0x1c]
lea r8, [rbp + 0x80]
mov rdx, rbx
mov rcx, r12
call fcn.140024acc
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002981a
mov eax, dword [rbp - 0x1c]
test eax, eax
jg 0x14002a12e
je 0x14002c49f
test edi, edi
jle 0x14002ca3a
mov rcx, qword [rbx + 0x38]
xor edx, edx
dec edi
call fcn.140018ff8
xor r10d, r10d
mov r13d, eax
test eax, eax
je 0x14002a0c9
cmp eax, 0x65
jne 0x14002981a
mov r13d, r10d
mov dword [rsp + 0x30], r10d
add r15, 0x18
jmp 0x140027f48
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r15 + 4]
mov rdx, qword [rax + rcx*8]
movzx eax, word [rdx + 0xc]
cmp eax, dword [r15 + 8]
jge 0x14002a15b
movzx eax, word [r15 + 8]
mov word [rdx + 0xc], ax
jmp 0x1400272e0
cmp eax, dword [r15 + 0xc]
jle 0x1400272e0
movzx eax, word [r15 + 0xc]
jmp 0x14002a152
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
cmp qword [rax + rcx*8], r10
je case.0x140027281.11
jmp case.0x140027281.86
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r15 + 4]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r15 + 0x10]
jge case.0x140027281.86
movsxd rbx, dword [r15 + 0xc]
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x60]
mov rsi, qword [rax + rcx*8]
cmp dword [r15 + 0x10], r10d
jle 0x14002a1e6
mov rax, qword [rsi + 0x40]
lea rdi, [rbp + 0xc8]
mov r12, r10
mov qword [rbp + 0xc8], rax
movzx eax, word [r15 + 0x10]
mov qword [rbp + 0xd0], rbx
mov word [rbp + 0xd8], ax
jmp 0x14002a238
mov eax, 0x4000
test word [rbx + 8], ax
je 0x14002a1fb
mov rcx, rbx
call fcn.14001fa68
jmp 0x14002a1fe
mov eax, r10d
test eax, eax
jne 0x14002d0f1
mov rcx, qword [rsi + 0x40]
call fcn.140023cc8
mov rdi, rax
mov r12, rax
test rax, rax
je 0x14002d0ec
mov r8, qword [rbx + 0x10]
mov edx, dword [rbx + 0xc]
mov rcx, qword [rsi + 0x40]
mov r9, rax
call fcn.140023d30
xor r10d, r10d
lea r11d, [r10 + 1]
mov byte [rdi + 0x12], r10b
cmp byte [r15], 0x1c
mov ebx, r10d
jne 0x14002a270
mov edx, r10d
cmp r10w, word [rdi + 0x10]
jae 0x14002a270
mov rcx, qword [rdi + 8]
add rcx, 8
test byte [rcx], r11b
jne 0x14002a26d
movzx eax, word [rdi + 0x10]
add edx, r11d
add rcx, 0x38
cmp edx, eax
jl 0x14002a257
jmp 0x14002a270
mov ebx, r11d
mov rcx, qword [rsi + 0x38]
lea rax, [rbp - 8]
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
mov qword [rsp + 0x20], rax
call fcn.140018a30
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test r12, r12
je 0x14002a2af
mov rdx, r12
mov r12, qword [rsp + 0x58]
mov rcx, r12
call fcn.140003a4c
xor r10d, r10d
jmp 0x14002a2b4
mov r12, qword [rsp + 0x58]
test r13d, r13d
jne 0x14002981a
mov eax, dword [rbp - 8]
lea r11d, [r13 + 1]
mov ecx, r10d
test eax, eax
mov dword [rsi + 0x2c], eax
mov eax, r11d
sete cl
mov byte [rsi + 3], r10b
mov dword [rsi + 0x28], r10d
sub al, cl
mov byte [rsi + 2], al
cmp byte [r15], 0x1e
jne 0x14002a2f2
test ecx, ecx
jne 0x14002a00c
jmp 0x140027675
test ebx, ebx
jne 0x14002a00c
test ecx, ecx
je 0x14002a00c
cmp byte [r15], 0x1b
lea r8d, [rbx + 4]
jne 0x14002ca42
movzx eax, word [r15 + 0x10]
mov word [rsi + 0xc], ax
mov rsi, qword [rsp + 0x60]
jmp 0x140027c6c
movsxd rdx, dword [r15 + 0xc]
imul rdx, rdx, 0x38
add rdx, rsi
test byte [rdx + 8], 0x24
jne case.0x140027281.32
lea rcx, [rbp + 0x228]
mov r8d, 0x38
call fcn.14009e430
mov r8b, byte [rsp + 0x40]
lea rcx, [rbp + 0x228]
mov dl, 0x43
call fcn.140026f98
mov eax, 4
xor r10d, r10d
test byte [rbp + 0x230], al
je 0x14002c49f
mov rdi, qword [rbp + 0x228]
jmp 0x14002a382
movsxd rax, dword [r15 + 0xc]
imul rax, rax, 0x38
mov rdi, qword [rax + rsi]
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
xor r9d, r9d
mov rbx, qword [rax + rcx*8]
lea rax, [rbp - 0x34]
mov r8, rdi
mov rcx, qword [rbx + 0x38]
xor edx, edx
mov dword [rbp - 0x34], r10d
mov qword [rsp + 0x20], rax
call fcn.140018a30
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x34]
mov qword [rbx + 0x58], rdi
mov dword [rbx + 0x28], r10d
mov word [rbx + 2], r10w
mov dword [rbx + 0x2c], eax
test eax, eax
je 0x14002a3eb
cmp dword [r15 + 8], r10d
jne 0x14002c49f
mov ecx, 0x164b7
call fcn.14007bc80
mov r13d, eax
mov dword [rsp + 0x30], eax
xor r10d, r10d
test r13d, r13d
jmp 0x140029d45
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov rcx, qword [r14 + 0x78]
movsxd rdx, dword [r15 + 4]
mov rdx, qword [rcx + rdx*8]
mov r11d, 1
mov rcx, qword [rdx + 0x18]
mov qword [rax], rcx
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov rdx, qword [rax + rcx*8]
add qword [rdx + 0x18], r11
jmp 0x1400277dc
mov rdx, r15
mov rcx, r14
mov qword [rbp - 0x78], r10
mov dword [rsp + 0x68], r10d
call fcn.140027114
movsxd rdx, dword [r15 + 4]
mov rcx, qword [r14 + 0x78]
mov rsi, rax
mov eax, 2
mov rdi, qword [rcx + rdx*8]
test byte [rdi + 8], al
jne 0x14002a4be
mov rcx, qword [rdi + 0x38]
lea rdx, [rsp + 0x68]
call fcn.1400189d4
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002981a
cmp dword [rsp + 0x68], r10d
je 0x14002a48a
lea eax, [r13 + 1]
mov qword [rbp - 0x78], rax
jmp 0x14002a4c1
mov rbx, qword [rdi + 0x38]
mov rcx, rbx
call fcn.140018220
mov r11, qword [rbx + 0x30]
movabs rax, 0x7fffffffffffffff
mov qword [rbp - 0x78], r11
cmp r11, rax
jl 0x14002a4b7
mov eax, 2
or dword [rdi + 8], eax
jmp 0x14002a4be
inc r11
mov qword [rbp - 0x78], r11
xor r10d, r10d
movsxd rdx, dword [r15 + 0xc]
test edx, edx
je 0x14002a55c
mov rax, qword [r14 + 0x100]
test rax, rax
je 0x14002a4f8
mov rcx, qword [rax + 8]
jmp 0x14002a4e6
mov rax, rcx
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x14002a4df
mov rbx, rdx
imul rbx, rbx, 0x38
add rbx, qword [rax + 0x20]
jmp 0x14002a504
mov rbx, rdx
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.14001fd84
mov ecx, 0x3e40
and word [rbx + 8], cx
mov ecx, 4
mov qword [rbx], rax
or word [rbx + 8], cx
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
je 0x14002cd82
mov edx, 2
test byte [rdi + 8], dl
jne 0x14002cd82
mov rcx, qword [rbp - 0x78]
inc rax
cmp rcx, rax
cmovl rcx, rax
xor r10d, r10d
mov qword [rbp - 0x78], rcx
mov qword [rbx], rcx
jmp 0x14002a561
mov edx, 2
test byte [rdi + 8], dl
je 0x14002a5d5
mov ebx, r10d
lea rdx, [rbp - 0x78]
mov ecx, 8
call fcn.140005b24
mov r8, qword [rbp - 0x78]
movabs rax, 0x3fffffffffffffff
and r8, rax
lea rax, [rsp + 0x68]
xor r9d, r9d
inc r8
xor edx, edx
mov qword [rsp + 0x20], rax
mov qword [rbp - 0x78], r8
mov rcx, qword [rdi + 0x38]
call fcn.140018a30
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002981a
cmp dword [rsp + 0x68], r10d
jne 0x14002a5d0
inc ebx
cmp ebx, 0x64
jl 0x14002a569
lea r13d, [rax + 0xd]
jmp 0x14002981a
mov edx, 2
mov byte [rdi + 3], r10b
mov dword [rdi + 0x28], r10d
mov rax, qword [rbp - 0x78]
mov qword [rsi], rax
mov rsi, qword [rsp + 0x60]
jmp 0x140027471
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r15 + 4]
movsxd rdx, dword [r15 + 8]
imul rdx, rdx, 0x38
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r15 + 0xc]
add rdx, rsi
imul rax, rax, 0x38
cmp byte [r15 + 1], 0xfa
mov r8, qword [rax + rsi]
mov qword [rbp + 0xa0], r8
jne 0x14002a641
cmp qword [r12 + 0x138], r10
je 0x14002a641
movsx rcx, byte [rbx + 1]
mov rax, qword [r12 + 0x20]
mov rdi, qword [r15 + 0x10]
shl rcx, 5
mov rsi, qword [rcx + rax]
jmp 0x14002a647
mov rdi, r10
mov rsi, r10
test byte [r15 + 2], r11b
je 0x14002a651
add dword [r14 + 0x3c], r11d
mov eax, 0x20
test byte [r15 + 2], al
je 0x14002a661
mov qword [r12 + 0x38], r8
mov rax, qword [rdx + 0x10]
movzx r8d, word [r15 + 2]
mov qword [rbp + 0xa8], rax
mov eax, dword [rdx + 0xc]
mov dword [rbp + 0xbc], eax
mov eax, 0x10
test al, r8b
je 0x14002a68a
mov r9d, dword [rbx + 0x2c]
jmp 0x14002a68d
mov r9d, r10d
mov eax, 0x4000
test word [rdx + 8], ax
je 0x14002a6a2
mov eax, dword [rdx]
mov dword [rbp + 0xc0], eax
jmp 0x14002a6a9
mov dword [rbp + 0xc0], r10d
mov qword [rbp + 0x98], r10
mov rcx, qword [rbx + 0x38]
lea rdx, [rbp + 0x98]
and r8d, 0x8a
call fcn.14001c664
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
mov byte [rbx + 3], r10b
mov dword [rbx + 0x28], r10d
test eax, eax
jne 0x14002981a
test rdi, rdi
je 0x14002ca35
mov al, byte [r15 + 2]
mov r9, qword [rdi]
mov rcx, qword [r12 + 0x130]
and al, 4
mov r8, rsi
neg al
mov rax, qword [rbp + 0xa0]
sbb edx, edx
mov qword [rsp + 0x20], rax
and edx, 5
add edx, 0x12
call qword [r12 + 0x138]
jmp 0x140027def
mov rcx, qword [r14 + 0x78]
movsxd rax, dword [r15 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r15 + 8]
mov rdx, qword [rcx + rax*8]
cmp dword [r15 + 0xc], r10d
je 0x14002a749
movsxd rax, dword [r15 + 0xc]
imul rax, rax, 0x38
mov r8, qword [rax + rsi]
jmp 0x14002a74c
mov r8, r10
mov rdx, qword [rdx + 0x38]
mov rcx, qword [r9 + 0x38]
call fcn.14001cb40
jmp 0x140029d39
cmp byte [r15 + 1], 0xfa
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov rdi, qword [rax + rcx*8]
mov r13d, dword [r15 + 8]
jne 0x14002a7b7
cmp qword [r12 + 0x138], r10
je 0x14002a7b7
movsx rcx, byte [rdi + 1]
mov rax, qword [r12 + 0x20]
mov rsi, qword [r15 + 0x10]
shl rcx, 5
mov r12, qword [rcx + rax]
test byte [r15 + 2], dl
je 0x14002a7bd
cmp byte [rdi + 4], r10b
je 0x14002a7bd
mov rbx, qword [rdi + 0x38]
mov rcx, rbx
call fcn.140018220
mov r11, qword [rbx + 0x30]
mov qword [rdi + 0x58], r11
jmp 0x14002a7bd
mov r12, r10
mov rsi, r10
mov dl, byte [r15 + 2]
mov rcx, qword [rdi + 0x38]
call fcn.14001cf0c
xor r10d, r10d
mov dword [rsp + 0x30], eax
mov qword [rdi + 0x28], r10
test eax, eax
jne 0x14002d118
lea r11d, [rax + 1]
test r11b, r13b
je 0x14002ca04
add dword [r14 + 0x3c], r11d
mov r8, qword [rsp + 0x58]
mov r10, qword [r8 + 0x138]
test r10, r10
je 0x14002ca1e
lea eax, [r11 + 0x7f]
test byte [rsi + 0x40], al
jne 0x14002ca1e
mov rax, qword [rdi + 0x58]
mov r9, qword [rsi]
mov r8, r12
mov r12, qword [rsp + 0x58]
lea edx, [r11 + 8]
mov qword [rsp + 0x20], rax
mov rcx, qword [r12 + 0x130]
call r10
mov r13d, dword [rsp + 0x30]
jmp 0x140027def
mov eax, dword [r14 + 0x3c]
add dword [r12 + 0x7c], eax
mov dword [r12 + 0x78], eax
mov dword [r14 + 0x3c], r10d
jmp case.0x140027281.86
movsxd rdx, dword [r15 + 0xc]
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
imul rdx, rdx, 0x38
mov r8d, dword [r15 + 0x10]
mov rcx, qword [rax + rcx*8]
lea r9, [rbp - 0x30]
add rdx, rsi
mov dword [rbp - 0x30], r10d
call fcn.14003054c
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002981a
cmp dword [rbp - 0x30], r10d
jmp 0x14002860f
movsxd rdx, dword [r15 + 8]
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
imul rdx, rdx, 0x38
mov rcx, qword [rax + rcx*8]
add rdx, rsi
call fcn.140030498
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002981a
movsxd rcx, dword [r15 + 0xc]
mov rax, qword [r14 + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x28], r10d
jmp 0x14002746c
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov rcx, qword [r14 + 0x78]
movsxd rdx, dword [r15 + 4]
mov rdx, qword [rcx + rdx*8]
mov rbx, rax
mov rdi, qword [rdx + 0x38]
mov rcx, rdi
call fcn.140018220
mov edx, dword [rdi + 0x40]
cmp edx, dword [r12 + 0x80]
ja 0x14002ceb5
mov r8, rbx
mov rcx, rdi
call fcn.140020770
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002981a
cmp dword [r15 + 0xc], r10d
jne 0x14002ca3a
mov eax, 0x1000
test word [rbx + 8], ax
je 0x14002ca3a
mov rcx, rbx
call fcn.14001fa0c
xor r10d, r10d
test eax, eax
jne 0x14002d0f1
jmp 0x14002746c
mov rdx, r15
mov rcx, r14
call fcn.140027114
movsxd rdx, dword [r15 + 4]
mov rcx, qword [r14 + 0x78]
mov rbx, qword [rcx + rdx*8]
xor r10d, r10d
mov rdi, rax
cmp byte [rbx + 2], r10b
je 0x14002a990
lea r11d, [r10 + 1]
mov word [rax + 8], r11w
jmp 0x14002767a
cmp byte [rbx + 3], r10b
je 0x14002a99f
mov rax, qword [rbx + 0x58]
jmp 0x14002aa36
mov edx, 2
cmp byte [rbx], dl
jne 0x14002a9dd
mov rcx, qword [rbx + 0x38]
lea rdx, [rbp - 0x10]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r14
mov r13d, eax
mov dword [rsp + 0x30], eax
call fcn.140024c90
xor r10d, r10d
test r13d, r13d
jne 0x14002981a
mov rax, qword [rbp - 0x10]
jmp 0x14002aa3a
mov rax, qword [rbx + 0x38]
cmp byte [rax], r10b
je 0x14002a9fe
mov rcx, rbx
call fcn.140023a5c
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
lea edx, [r10 + 2]
jmp 0x14002aa06
mov r13d, r10d
mov dword [rsp + 0x30], r10d
test r13d, r13d
jne 0x14002981a
cmp byte [rbx + 2], r10b
je 0x14002aa23
lea r11d, [r13 + 1]
mov word [rdi + 8], r11w
jmp 0x140029906
mov rbx, qword [rbx + 0x38]
mov rcx, rbx
call fcn.140018220
mov rax, qword [rbx + 0x30]
xor r10d, r10d
mov qword [rbp - 0x10], rax
mov qword [rdi], rax
jmp 0x14002746c
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov rbx, qword [rax + rcx*8]
mov byte [rbx + 2], r11b
mov dword [rbx + 0x28], r10d
cmp byte [rbx], r10b
jne 0x140028361
mov rbx, qword [rbx + 0x38]
mov rcx, qword [rbx + 0x18]
call fcn.1400039c4
xor r10d, r10d
lea r11d, [r10 + 1]
mov qword [rbx + 0x18], r10
mov byte [rbx], r11b
jmp 0x14002767a
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov dword [rbp - 0x38], r10d
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rdi + 0x38]
cmp bl, 0x85
jne 0x14002aaa5
or dword [rdi + 0x2c], 0xffffffff
cmp byte [rcx], r10b
je 0x140028361
lea rdx, [rbp - 0x38]
call fcn.1400189d4
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x38]
mov byte [rdi + 3], r10b
mov dword [rdi + 0x28], r10d
mov byte [rdi + 2], al
test r13d, r13d
jne 0x14002981a
cmp dword [r15 + 8], r10d
jle 0x14002ca3a
jmp 0x14002860d
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x38]
mov rcx, rbx
call fcn.1400187b0
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002ab1f
mov rcx, rbx
mov edi, r10d
mov dword [rbp - 0x48], r10d
call fcn.140018928
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
jmp 0x14002ab41
mov eax, 0x10
cmp r13d, eax
jne 0x14002ab3e
lea r11d, [rax - 0xf]
mov r13d, r10d
mov dword [rsp + 0x30], r10d
mov edi, r11d
mov dword [rbp - 0x48], r11d
jmp 0x14002ab47
mov edi, dword [rbp - 0x48]
mov r11d, 1
test r13d, r13d
jne 0x14002981a
test edi, edi
jne 0x14002a00c
mov rcx, rbx
call fcn.140018e94
xor r10d, r10d
test rax, rax
js 0x14002ca13
mov rcx, rax
call fcn.1400074f8
movsx ecx, ax
cmp ecx, dword [r15 + 0xc]
jge 0x14002ca13
mov dword [rbp - 0x48], r11d
mov r9, qword [rsp + 0x48]
jmp 0x140028709
add dword [r14 + 0xdc], r11d
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov ebx, r11d
mov rdi, qword [rax + rcx*8]
mov dword [rbp - 0x28], ebx
cmp byte [rdi], r11b
jne 0x14002abc8
lea rdx, [rbp - 0x28]
mov rcx, rdi
call fcn.14003033c
mov ebx, dword [rbp - 0x28]
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
jmp 0x14002ac1b
mov rsi, qword [rdi + 0x38]
mov rcx, rsi
call fcn.1400187b0
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002abf9
mov rcx, rsi
mov ebx, r10d
call fcn.140018928
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
jmp 0x14002ac0e
mov eax, 0x10
cmp r13d, eax
jne 0x14002ac0e
lea ebx, [rax - 0xf]
mov r13d, r10d
mov dword [rsp + 0x30], r10d
mov rsi, qword [rsp + 0x60]
mov byte [rdi + 3], r10b
mov dword [rdi + 0x28], r10d
test r13d, r13d
jne 0x14002981a
mov byte [rdi + 2], bl
test ebx, ebx
jmp 0x14002860f
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r12
mov rdx, rbx
call fcn.1400303e8
jmp 0x14002ac5f
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov edx, dword [r15 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x38]
call qword [r15 + 0x10]
xor r10d, r10d
mov dword [rsp + 0x30], eax
mov r13d, eax
mov dword [rbx + 0x28], r10d
test eax, eax
jne 0x14002ac8b
mov byte [rbx + 2], r10b
movzx eax, word [r15 + 2]
lea r11d, [r13 + 1]
add dword [r14 + rax*4 + 0xd4], r11d
jmp case.0x140027281.11
cmp r13d, 0x65
jne 0x14002981a
mov r11d, 1
mov r13d, r10d
mov dword [rsp + 0x30], r10d
mov byte [rbx + 2], r11b
jmp 0x140029239
movsxd rbx, dword [r15 + 8]
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
imul rbx, rbx, 0x38
mov rdi, qword [rax + rcx*8]
add rbx, rsi
test byte [r15 + 2], r11b
je 0x14002accd
add dword [r14 + 0x3c], r11d
mov eax, 0x4000
test word [rbx + 8], ax
je 0x14002ace8
mov rcx, rbx
call fcn.14001fa68
xor r10d, r10d
mov r13d, eax
jmp 0x14002aceb
mov r13d, r10d
test r13d, r13d
jne 0x14002981a
movsxd rax, dword [rbx + 0xc]
movzx r8d, word [r15 + 2]
mov qword [rbp + 0x1c8], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0x1c0], rax
movsxd rax, dword [r15 + 0xc]
imul rax, rax, 0x38
add rax, rsi
mov qword [rbp + 0x1d8], rax
movzx eax, word [r15 + 0x10]
mov word [rbp + 0x1e0], ax
lea eax, [r13 + 0x10]
test al, r8b
je 0x14002ad3c
mov r9d, dword [rdi + 0x2c]
jmp 0x14002ad3f
mov r9d, r10d
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp + 0x1c0]
and r8d, 0x8a
call fcn.14001c664
xor r10d, r10d
mov dword [rdi + 0x28], r10d
jmp 0x140029d3c
mov rax, qword [r14 + 0x78]
movsxd rbx, dword [r15 + 8]
movsxd rcx, dword [r15 + 4]
imul rbx, rbx, 0x38
mov rdi, qword [rax + rcx*8]
add rbx, rsi
mov eax, 0x4000
test word [rbx + 8], ax
je 0x14002ad94
mov rcx, rbx
call fcn.14001fa68
xor r10d, r10d
mov r13d, eax
jmp 0x14002ad97
mov r13d, r10d
test r13d, r13d
jne 0x14002981a
mov rdx, rbx
mov rcx, rdi
call fcn.14002f754
jmp 0x140029d39
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
lea rdx, [rbp + 0x68]
mov rbx, qword [rax + rcx*8]
xor r9d, r9d
xor r8d, r8d
mov rax, qword [rbx + 0x40]
mov rdi, qword [rbx + 0x38]
mov byte [rbp + 0x7a], r10b
mov qword [rbp + 0x68], rax
movzx eax, word [r15 + 0xc]
mov rcx, rdi
mov word [rbp + 0x78], ax
movsxd rax, dword [r15 + 8]
imul rax, rax, 0x38
add rax, rsi
mov qword [rbp + 0x70], rax
lea rax, [rbp + 4]
mov qword [rsp + 0x20], rax
call fcn.140018a30
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002981a
cmp dword [rbp + 4], r10d
jne 0x14002ae35
mov dl, 4
mov rcx, rdi
call fcn.14001cf0c
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002981a
jmp 0x14002ae40
cmp word [r15 + 2], r10w
jne 0x14002cd8d
mov qword [rbx + 0x28], 0
jmp 0x14002746c
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
cmp byte [rax], r10b
je 0x14002ae87
mov rcx, rbx
call fcn.140023a5c
mov r9, qword [rsp + 0x48]
xor r10d, r10d
lea edx, [r10 + 2]
lea r11d, [r10 + 1]
lea r8d, [r10 + 4]
mov r13d, eax
mov dword [rsp + 0x30], eax
jmp 0x14002ae8f
mov r13d, r10d
mov dword [rsp + 0x30], r10d
test r13d, r13d
jne 0x14002981a
cmp byte [rbx + 2], r10b
jne 0x14002868d
mov rdx, qword [rbx + 0x38]
lea r8, [rbp - 0x40]
mov rcx, r12
mov qword [rbp - 0x40], r10
call fcn.140024988
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002981a
cmp byte [r15], 0x89
jne 0x14002aefd
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r15 + 0xc]
lea r11d, [r13 + 1]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp - 0x40]
mov qword [rdx + 0x58], rax
mov word [rdx + 2], 0x100
mov rax, qword [r15 + 0x10]
mov qword [rdx + 0x20], rax
mov qword [rdx + 0x30], rbx
jmp 0x14002767a
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov rcx, qword [rbp - 0x40]
jmp 0x140029868
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], r10b
je case.0x140027281.86
call fcn.140023a0c
jmp 0x140029d39
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
cmp bl, 0x28
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x40]
mov rbx, qword [rdx + 0x38]
mov qword [rbp + 0x50], rax
movzx eax, word [r15 + 0x10]
mov rcx, rbx
mov word [rbp + 0x60], ax
sbb al, al
mov byte [rbp + 0x62], al
movsxd rax, dword [r15 + 0xc]
imul rax, rax, 0x38
add rax, rsi
mov qword [rbp + 0x58], rax
call fcn.140018220
mov r11d, dword [rbx + 0x40]
xor eax, eax
test r11, r11
jle 0x14002cdc0
cmp r11, 0x7fffffff
jg 0x14002cdc0
lea r8, [rbp + 0x118]
mov edx, r11d
mov rcx, rbx
mov word [rbp + 0x120], ax
mov qword [rbp + 0x140], r12
mov dword [rbp + 0x138], eax
call fcn.140020770
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002981a
mov rdx, qword [rbp + 0x128]
mov ecx, dword [rbp + 0x124]
lea r8, [rbp + 0x50]
xor r9d, r9d
call fcn.140024288
mov ebx, eax
mov eax, 0x2400
test word [rbp + 0x120], ax
jne 0x14002affa
xor r10d, r10d
cmp dword [rbp + 0x138], r10d
je 0x14002b009
lea rcx, [rbp + 0x118]
call fcn.14001fce0
xor r10d, r10d
mov r11d, 1
test byte [r15], r11b
jne 0x14002b018
neg ebx
jmp 0x14002b01b
add ebx, r11d
test ebx, ebx
jg 0x14002a00c
jmp 0x14002767a
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov r11d, 1
mov word [rax + 8], r11w
mov ecx, dword [r12 + 0xe0]
mov rdi, rax
add ecx, r11d
cmp dword [r12 + 0xd4], ecx
jg 0x14002cdcf
mov r8, qword [rsp + 0x58]
movsxd r13, dword [r15 + 0xc]
mov r12d, dword [r15 + 4]
mov rax, qword [r8 + 0x20]
xor ecx, ecx
mov rsi, r13
shl rsi, 5
mov dword [rbp - 0x2c], ecx
mov rbx, qword [rax + rsi + 8]
cmp byte [rbx + 0x11], cl
je 0x14002b092
add dword [rbx + 0x14], r11d
cmp byte [rbx + 0x12], cl
jne 0x14002b092
mov rcx, rbx
call fcn.140014408
lea r8, [rbp - 0x2c]
mov edx, r12d
mov rcx, rbx
call fcn.14001d898
xor r10d, r10d
mov r12d, eax
mov dword [rsp + 0x30], eax
cmp byte [rbx + 0x11], r10b
je 0x14002b0c1
dec dword [rbx + 0x14]
jne 0x14002b0c1
mov rcx, rbx
call fcn.1400143e0
xor r10d, r10d
movsxd r8, dword [rbp - 0x2c]
mov eax, 4
mov qword [rdi], r8
mov word [rdi + 8], ax
test r12d, r12d
jne 0x14002d118
mov r12, qword [rsp + 0x58]
test r8d, r8d
je 0x14002c9ec
mov r9, qword [r12 + 0x20]
mov r10d, dword [r15 + 4]
mov rax, qword [rsi + r9 + 0x18]
mov rdx, qword [rax + 0x10]
jmp 0x14002b110
mov rcx, qword [rdx + 0x10]
mov eax, dword [rcx + 0x38]
cmp eax, r8d
cmove eax, r10d
mov dword [rcx + 0x38], eax
mov rdx, qword [rdx]
test rdx, rdx
jne 0x14002b0fc
mov rax, qword [rsi + r9 + 0x18]
mov rdx, qword [rax + 0x28]
jmp 0x14002b134
mov rcx, qword [rdx + 0x10]
mov eax, dword [rcx + 0x58]
cmp eax, r8d
cmove eax, r10d
mov dword [rcx + 0x58], eax
mov rdx, qword [rdx]
test rdx, rdx
jne 0x14002b120
lea r11d, [rdx + 1]
lea eax, [r11 + r13]
mov r13d, dword [rsp + 0x30]
mov byte [rbp - 0x80], al
jmp 0x1400277d7
mov eax, dword [r15 + 0xc]
mov rcx, qword [r12 + 0x20]
mov edx, dword [r15 + 4]
neg eax
lea rax, [rbp - 0x24]
mov dword [rbp - 0x24], r10d
sbb r8, r8
and r8, rax
movsxd rax, dword [r15 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14001d7dc
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
cmp dword [r15 + 0xc], r10d
je 0x14002a3eb
movsxd rax, dword [rbp - 0x24]
add dword [r14 + 0x3c], eax
cmp dword [r15 + 0xc], r10d
jle 0x14002a3eb
movsxd rcx, dword [r15 + 0xc]
imul rcx, rcx, 0x38
add qword [rcx + rsi], rax
jmp 0x14002a3eb
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], r11b
jne 0x14002b1d6
mov rdx, qword [rcx + 0x38]
mov rcx, r12
call fcn.14002ebfc
jmp 0x140027469
mov rcx, qword [rcx + 0x38]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.14001d7dc
jmp 0x140029d39
mov rdx, r15
mov rcx, r14
call fcn.140027114
movsxd rcx, dword [r15 + 4]
mov r8d, dword [r15 + 0xc]
shl rcx, 5
mov rbx, rax
xor eax, eax
add rcx, qword [r12 + 0x20]
lea rdx, [rbp - 0x64]
mov dword [rbp - 0x64], eax
mov rcx, qword [rcx + 8]
call fcn.14001d590
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002981a
mov eax, dword [rbp - 0x64]
mov qword [rbx], rax
jmp 0x14002746c
add byte [r12 + 0x6c], r11b
mov rdx, qword [r15 + 0x10]
xor r9d, r9d
xor r8d, r8d
mov rcx, r12
mov qword [rsp + 0x20], r10
call fcn.1400509b8
dec byte [r12 + 0x6c]
jmp 0x140029d39
mov r9, qword [r15 + 0x10]
movsxd rbx, dword [r15 + 4]
test r9, r9
jne 0x14002b2c3
mov rcx, qword [r12 + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.140046e7c
and dword [r12 + 0x2c], 0xffffffef
movzx r9d, word [r15 + 2]
lea r8, [r14 + 0xa8]
mov edx, ebx
mov rcx, r12
call fcn.1400550b0
mov r11d, 1
or dword [r12 + 0x2c], r11d
and dword [r14 + 0xc8], 0xfffffffc
mov r13d, eax
mov dword [rsp + 0x30], eax
xor r10d, r10d
jmp 0x14002b396
mov r8, qword [r12 + 0x20]
mov qword [rbp + 0x20], r12
mov dword [rbp + 0x30], ebx
mov dword [rbp + 0x38], r10d
lea rax, [r14 + 0xa8]
mov qword [rsp + 0x20], r9
mov qword [rbp + 0x28], rax
mov rdx, rbx
lea r9, str.sqlite_master
shl rdx, 5
mov rax, qword [rdx + r8 + 8]
mov rcx, qword [rax + 8]
mov eax, dword [rcx + 0x40]
mov rcx, r12
mov dword [rbp + 0x40], eax
mov r8, qword [rdx + r8]
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
call fcn.1400058e0
xor edi, edi
mov rbx, rax
test rax, rax
je 0x14002cdea
lea eax, [rdi + 1]
lea r9, [rbp + 0x20]
lea r8, [fcn.140054e88]
mov rdx, rbx
mov rcx, r12
mov dword [rbp + 0x34], edi
mov byte [r12 + 0xbd], al
mov dword [rbp + 0x3c], edi
mov qword [rsp + 0x20], rdi
call fcn.1400509b8
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002b37c
mov r13d, dword [rbp + 0x34]
mov dword [rsp + 0x30], r13d
test r13d, r13d
jne 0x14002b37c
cmp dword [rbp + 0x3c], edi
jne 0x14002b37c
mov ecx, 0x16a9a
call fcn.14007bc80
mov r13d, eax
mov dword [rsp + 0x30], eax
mov rdx, rbx
mov rcx, r12
call fcn.140003a4c
xor r10d, r10d
lea r11d, [r10 + 1]
mov byte [r12 + 0xbd], r10b
test r13d, r13d
jne 0x14002cdf0
jmp 0x14002767a
mov edx, dword [r15 + 4]
mov rcx, r12
call fcn.14003eb10
jmp 0x140029d39
movsxd rcx, dword [r15 + 4]
mov rdx, qword [r15 + 0x10]
xor r8d, r8d
shl rcx, 5
add rcx, qword [r12 + 0x20]
mov rcx, qword [rcx + 0x18]
add rcx, 8
call fcn.140007910
xor r10d, r10d
test rax, rax
je 0x14002b3fb
cmp qword [r12 + 0x2e0], r10
jne 0x14002b3ed
dec dword [rax + 0x3c]
jne 0x14002b3fb
mov rdx, rax
mov rcx, r12
call fcn.14004087c
xor r10d, r10d
mov r11d, 1
or dword [r12 + 0x2c], r11d
jmp 0x14002767a
movsxd rcx, dword [r15 + 4]
mov rax, qword [r12 + 0x20]
mov rdx, qword [r15 + 0x10]
shl rcx, 5
xor r8d, r8d
mov rcx, qword [rcx + rax + 0x18]
add rcx, 0x20
call fcn.140007910
xor r10d, r10d
mov rdx, rax
test rax, rax
je 0x14002b3fb
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
cmp rcx, rdx
jne 0x14002b44f
mov rcx, qword [rdx + 0x28]
mov qword [rax + 0x10], rcx
jmp 0x14002b478
test rcx, rcx
je 0x14002b478
mov rax, qword [rcx + 0x28]
cmp rax, rdx
je 0x14002b465
mov rcx, rax
test rax, rax
jne 0x14002b454
test rcx, rcx
je 0x14002b478
cmp qword [rcx + 0x28], rdx
jne 0x14002b478
mov rax, qword [rdx + 0x28]
mov qword [rcx + 0x28], rax
mov rcx, r12
call fcn.140040578
jmp 0x14002b3f8
movsxd rcx, dword [r15 + 4]
mov rax, qword [r12 + 0x20]
mov rdx, qword [r15 + 0x10]
shl rcx, 5
xor r8d, r8d
mov rcx, qword [rcx + rax + 0x18]
add rcx, 0x38
call fcn.140007910
xor r10d, r10d
mov rbx, rax
test rax, rax
je 0x14002ca3a
mov rcx, qword [rax + 0x30]
cmp qword [rax + 0x28], rcx
jne 0x14002b4fb
mov rdx, qword [rax + 8]
add rcx, 8
xor r8d, r8d
call fcn.140007874
xor ecx, ecx
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x14002b4fb
add rdx, 0x68
jmp 0x14002b4ed
mov rax, qword [rdx]
cmp rax, rbx
je 0x14002b4f4
lea rdx, [rax + 0x40]
cmp qword [rdx], rcx
jne 0x14002b4e1
jmp 0x14002b4fb
mov rcx, qword [rax + 0x40]
mov qword [rdx], rcx
mov rdx, rbx
mov rcx, r12
call fcn.14005fcec
mov r11d, 1
or dword [r12 + 0x2c], r11d
jmp 0x1400277dc
movsxd rdi, dword [r15 + 0xc]
movzx eax, word [r15 + 2]
movsxd rbx, dword [r15 + 4]
imul rdi, rdi, 0x38
imul rbx, rbx, 0x38
mov rdx, qword [r12 + 0x20]
mov r8, qword [r15 + 0x10]
lea r9, [rbp]
mov qword [rsp + 0x28], r9
mov r9d, dword [r15 + 8]
shl rax, 5
mov rdx, qword [rax + rdx + 8]
add rdi, rsi
add r8, 4
mov ecx, dword [rdi]
add rbx, rsi
add ecx, r11d
mov dword [rsp + 0x20], ecx
mov rcx, r12
call fcn.14001e650
mov rsi, rax
mov eax, 0x2400
test word [rbx + 8], ax
je 0x14002b582
mov rcx, rbx
call fcn.14001fca0
mov edx, 1
jmp 0x14002b58b
mov edx, 1
mov word [rbx + 8], dx
mov eax, dword [rbp]
test eax, eax
je 0x14002b5c1
test rsi, rsi
je 0x14002d0f1
dec eax
mov r9b, dl
or r8d, 0xffffffff
movsxd rcx, eax
lea rax, [fcn.1400039c4]
mov rdx, rsi
sub qword [rdi], rcx
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400203ec
movzx ecx, byte [rsp + 0x40]
mov eax, 2
test byte [rbx + 8], al
je 0x140029230
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x140029230
mov dl, cl
mov rcx, rbx
call fcn.140005d88
jmp 0x140029230
movsxd rbx, dword [r15 + 4]
movsxd rdi, dword [r15 + 8]
mov eax, 0x10
imul rbx, rbx, 0x38
add rbx, rsi
imul rdi, rdi, 0x38
test byte [rbx + 8], al
jne 0x14002b61c
mov rcx, rbx
call fcn.1400201a0
test eax, eax
jne 0x14002d0f1
mov rdx, qword [rdi + rsi]
mov rcx, qword [rbx + 0x10]
call fcn.14000cf14
jmp 0x140027469
movsxd rbx, dword [r15 + 4]
mov eax, 0x10
imul rbx, rbx, 0x38
add rbx, rsi
test byte [rbx + 8], al
je 0x14002b6ce
mov rdi, qword [rbx + 0x10]
test byte [rdi + 0x32], dl
jne 0x14002b673
test byte [rdi + 0x32], r11b
jne 0x14002b66a
mov rcx, qword [rdi + 0x10]
call fcn.14000cfb0
xor r10d, r10d
mov qword [rdi + 0x10], rax
lea r11d, [r10 + 1]
mov eax, 3
or word [rdi + 0x32], ax
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x14002b6ce
mov rbx, qword [rax]
mov rax, qword [rax + 8]
mov qword [rdi + 0x10], rax
test rax, rax
jne 0x14002b697
mov rcx, rdi
call fcn.14000ce2c
xor r10d, r10d
movsxd rax, dword [r15 + 0xc]
mov ecx, 0x2400
imul rax, rax, 0x38
add rax, rsi
test word [rax + 8], cx
je 0x14002b6bd
mov rdx, rbx
mov rcx, rax
call fcn.140020108
jmp 0x140029230
mov ecx, 4
mov qword [rax], rbx
mov word [rax + 8], cx
jmp 0x140029233
mov eax, 0x2400
test word [rbx + 8], ax
je 0x14002b6e9
mov rcx, rbx
call fcn.14001fca0
xor r10d, r10d
jmp 0x14002c657
mov word [rbx + 8], r11w
jmp case.0x140027281.11
movsxd rbx, dword [r15 + 4]
movsxd rdi, dword [r15 + 0xc]
mov eax, 0x10
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
add rbx, rsi
add rdi, rsi
mov esi, dword [r15 + 0x10]
test byte [rbx + 8], al
jne 0x14002b72a
mov rcx, rbx
call fcn.1400201a0
xor r10d, r10d
test eax, eax
jne 0x14002d0f1
test esi, esi
je 0x14002b749
mov r8, qword [rdi]
mov rcx, qword [rbx + 0x10]
mov edx, esi
call fcn.14000d17c
xor r10d, r10d
test eax, eax
jne 0x14002c49f
test esi, esi
js 0x140027a6c
mov rdx, qword [rdi]
mov rcx, qword [rbx + 0x10]
call fcn.14000cf14
jmp 0x140027def
movsxd rbx, dword [r15 + 0xc]
mov r13, qword [r15 + 0x10]
imul rbx, rbx, 0x38
add rbx, rsi
cmp word [r15 + 2], r10w
je 0x14002b79e
mov rax, qword [r14 + 0x100]
mov rcx, qword [r13 + 0x20]
test rax, rax
je 0x14002b79e
cmp qword [rax + 0x38], rcx
je 0x14002b795
mov rax, qword [rax + 8]
test rax, rax
jne 0x14002b786
test rax, rax
jne 0x14002cb91
mov eax, dword [r12 + 0xa8]
cmp dword [r14 + 0x110], eax
jge 0x14002ce14
mov eax, 0x10
test byte [rbx + 8], al
jne 0x14002b9ab
mov ecx, dword [r13 + 0x10]
mov eax, dword [r13 + 0xc]
lea edi, [rcx + rax]
test ecx, ecx
jne 0x14002b7d3
add edi, r11d
mov eax, dword [r13 + 8]
lea ecx, [rdi + 2]
add eax, 7
cdq
imul ecx, ecx, 7
add ecx, dword [r13 + 0x10]
and edx, 7
add eax, edx
sar eax, 3
lea r12d, [rax + rcx*8]
mov rcx, qword [rsp + 0x58]
movsxd rdx, r12d
call fcn.140003d24
xor r10d, r10d
mov rsi, rax
test rax, rax
je 0x14002d0ec
mov eax, 0x2400
test word [rbx + 8], ax
jne 0x14002b81e
cmp dword [rbx + 0x20], r10d
je 0x14002b829
mov rcx, rbx
call fcn.14001fce0
xor r10d, r10d
sub r15, qword [rsp + 0x48]
mov dword [rbx + 0xc], r12d
mov r12, qword [rsp + 0x58]
mov qword [rbx + 0x10], rsi
mov eax, 0x410
movsxd rcx, edi
mov word [rbx + 8], ax
lea rax, [0x140021fb0]
add rcx, 2
mov qword [rbx + 0x30], rax
mov qword [rsi], r14
mov dword [rsi + 0x60], edi
imul rcx, rcx, 0x38
mov eax, dword [r13 + 0x10]
add rcx, rsi
mov dword [rsi + 0x64], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul r15
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x54], edx
mov rax, qword [r14 + 0x68]
mov qword [rsi + 0x20], rax
mov eax, dword [r14 + 0x28]
mov dword [rsi + 0x5c], eax
mov rax, qword [r14 + 0x78]
mov qword [rsi + 0x28], rax
mov eax, dword [r14 + 0x2c]
mov dword [rsi + 0x50], eax
mov rax, qword [r14 + 0x88]
mov qword [rsi + 0x10], rax
mov eax, dword [r14 + 0x90]
mov dword [rsi + 0x58], eax
mov rax, qword [r13 + 0x20]
mov qword [rsi + 0x38], rax
lea rax, [rsi + 0x70]
cmp rax, rcx
je 0x14002b8e2
mov edx, 0x80
mov word [rax + 8], dx
mov qword [rax + 0x28], r12
add rax, 0x38
cmp rax, rcx
jne 0x14002b8d1
mov r11d, 1
add dword [r14 + 0x110], r11d
mov rax, qword [r14 + 0x100]
lea rdx, [rsi + 0x70]
mov qword [rsi + 8], rax
mov rax, qword [r12 + 0x38]
mov qword [rsp + 0x60], rdx
mov qword [rsi + 0x40], rax
mov eax, dword [r14 + 0x3c]
mov dword [rsi + 0x68], eax
mov rax, qword [r14]
mov ecx, dword [rax + 0x78]
mov dword [rsi + 0x6c], ecx
mov rax, qword [r14 + 0x120]
mov qword [rsi + 0x48], rax
mov qword [r14 + 0x68], rdx
mov qword [r14 + 0x120], r10
mov dword [r14 + 0x3c], r10d
mov qword [r14 + 0x100], rsi
movsxd rcx, dword [rsi + 0x60]
mov dword [r14 + 0x28], ecx
movzx eax, word [rsi + 0x64]
mov dword [r14 + 0x2c], eax
imul rcx, rcx, 0x38
add rcx, rdx
mov qword [r14 + 0x78], rcx
movsxd rax, dword [r13 + 0x10]
lea rcx, [rcx + rax*8]
mov qword [rsi + 0x30], rcx
mov eax, dword [r13 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call fcn.1400a2620
mov rbx, qword [r13]
mov qword [r14 + 0x88], rbx
mov eax, dword [r13 + 8]
mov r13d, dword [rsp + 0x30]
lea r15, [rbx - 0x18]
mov dword [r14 + 0x90], eax
mov qword [rsp + 0x48], rbx
mov qword [rbp - 0x70], r15
jmp 0x140029230
mov rsi, qword [rbx + 0x10]
jmp 0x14002b8e8
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov r9, qword [r14 + 0x100]
movsxd rcx, dword [r9 + 0x54]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r9 + 0x10]
mov r8d, dword [rcx + rdx*8 + 4]
mov rcx, rax
add r8d, dword [r15 + 4]
movsxd rdx, r8d
imul rdx, rdx, 0x38
add rdx, qword [r9 + 0x20]
jmp 0x14002786f
mov eax, dword [r12 + 0x30]
bt rax, 0x13
movsxd rax, dword [r15 + 8]
jae 0x14002ba0b
add qword [r12 + 0x2d8], rax
jmp case.0x140027281.86
cmp dword [r15 + 4], r10d
je 0x14002ba1e
add qword [r12 + 0x2d0], rax
jmp case.0x140027281.86
add qword [r14 + 0x50], rax
jmp case.0x140027281.86
cmp dword [r15 + 4], r10d
je 0x14002ba48
cmp qword [r12 + 0x2d0], r10
jne case.0x140027281.86
cmp qword [r12 + 0x2d8], r10
jmp 0x140028245
cmp qword [r14 + 0x50], r10
jmp 0x14002ba35
mov rax, qword [r14 + 0x100]
test rax, rax
je 0x14002ba7a
mov rcx, qword [rax + 8]
jmp 0x14002ba67
mov rax, rcx
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x14002ba60
movsxd rdi, dword [r15 + 4]
imul rdi, rdi, 0x38
add rdi, qword [rax + 0x20]
jmp 0x14002ba85
movsxd rdi, dword [r15 + 4]
imul rdi, rdi, 0x38
add rdi, rsi
mov rcx, rdi
call fcn.14001fd84
mov r14d, 0x3e40
and word [rdi + 8], r14w
mov qword [rdi], rax
mov eax, 4
or word [rdi + 8], ax
movsxd rbx, dword [r15 + 8]
imul rbx, rbx, 0x38
add rbx, rsi
mov rcx, rbx
call fcn.14001fd84
and word [rbx + 8], r14w
mov r8d, 4
or word [rbx + 8], r8w
xor r10d, r10d
mov qword [rbx], rax
lea r11d, [r8 - 3]
cmp qword [rdi], rax
jge 0x140028361
mov qword [rdi], rax
jmp 0x140027c6c
movsxd rcx, dword [r15 + 4]
imul rcx, rcx, 0x38
mov rdx, qword [rcx + rsi]
test rdx, rdx
jle 0x1400272e0
movsxd rax, dword [r15 + 0xc]
sub rdx, rax
mov qword [rcx + rsi], rdx
jmp 0x140028709
movsxd rbx, dword [r15 + 4]
movsxd rdi, dword [r15 + 0xc]
mov rdx, r15
mov rcx, r14
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
call fcn.140027114
mov rcx, qword [rbx + rsi]
xor r10d, r10d
mov r11, rax
mov qword [rbp - 0x58], rcx
test rcx, rcx
jle 0x14002bb5a
cmp qword [rdi + rsi], r10
mov edx, r10d
lea rcx, [rbp - 0x58]
cmovg rdx, qword [rdi + rsi]
call fcn.14000743c
test eax, eax
jne 0x14002bb5a
mov rax, qword [rbp - 0x58]
mov qword [r11], rax
jmp 0x14002746c
or qword [r11], 0xffffffffffffffff
jmp 0x14002746c
movsxd rcx, dword [r15 + 4]
imul rcx, rcx, 0x38
mov rax, qword [rcx + rsi]
test rax, rax
je case.0x140027281.86
jle 0x140028709
dec rax
mov qword [rcx + rsi], rax
jmp 0x140028709
movsxd rcx, dword [r15 + 4]
movabs rbx, 0x8000000000000000
imul rcx, rcx, 0x38
mov rax, qword [rcx + rsi]
cmp rax, rbx
jle 0x14002bbac
dec rax
mov qword [rcx + rsi], rax
cmp qword [rcx + rsi], r10
jmp 0x140028245
movzx ebx, word [r15 + 2]
mov rcx, r12
lea rdx, [rbx*8 + 0x68]
call fcn.140003da8
xor r10d, r10d
mov r11, rax
test rax, rax
je 0x14002d0f1
mov qword [rax + 0x10], r10
lea rcx, [rax + rbx*8 + 0x30]
mov qword [rax], rcx
mov qword [rcx + 0x28], r12
mov dword [rcx + 0x20], r10d
lea eax, [r10 + 1]
mov word [rcx + 8], ax
mov rcx, qword [r15 + 0x10]
mov qword [r11 + 0x18], r14
mov qword [r11 + 8], rcx
mov byte [r11 + 0x28], r10b
mov dword [r11 + 0x24], r10d
mov byte [r11 + 0x29], bl
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x48]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r11 + 0x20], edx
mov qword [r15 + 0x10], r11
lea r11d, [r10 + 1]
mov word [r15], 0xf09f
movsxd rdx, dword [r15 + 0xc]
mov rbx, qword [r15 + 0x10]
imul rdx, rdx, 0x38
add rdx, rsi
cmp qword [rbx + 0x10], rdx
je 0x14002bc96
movzx r8d, byte [rbx + 0x29]
mov qword [rbx + 0x10], rdx
sub r8d, r11d
movsxd r9, r8d
js 0x14002bc96
lea r10, [rbx + r9*8 + 0x30]
mov r12d, 8
mov eax, dword [r15 + 8]
add eax, r8d
sub r8d, r11d
cdqe
imul rax, rax, 0x38
add rax, rsi
mov qword [r10], rax
sub r10, r12
sub r9, r11
jns 0x14002bc73
mov r12, qword [rsp + 0x58]
add dword [rdx + 0xc], r11d
cmp dword [r15 + 4], 0
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
lea r8, [rbx + 0x30]
mov rcx, rbx
je 0x14002bcb5
call qword [rax + 0x30]
jmp 0x14002bcb8
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
xor r10d, r10d
test eax, eax
je 0x14002ca3a
lea edi, [r10 + 1]
jle 0x14002bcf5
mov rcx, qword [rbx]
mov dl, dil
call fcn.140020888
lea rdx, [0x1400be018]
mov rcx, r14
mov r8, rax
call fcn.140020dd8
mov r13d, dword [rbx + 0x24]
xor r10d, r10d
mov dword [rsp + 0x30], r13d
cmp byte [rbx + 0x28], r10b
je 0x14002bd37
cmp dword [r15 - 0x14], r10d
je 0x14002bd33
movsxd rax, dword [r15 - 0x14]
mov ecx, 0x2400
imul rax, rax, 0x38
add rax, rsi
test word [rax + 8], cx
je 0x14002bd27
mov rdx, rdi
mov rcx, rax
call fcn.140020108
xor r10d, r10d
jmp 0x14002bd33
mov ecx, 4
mov qword [rax], rdi
mov word [rax + 8], cx
mov byte [rbx + 0x28], r10b
mov rcx, qword [rbx]
mov eax, 0x2400
test word [rcx + 8], ax
jne 0x14002bd4b
cmp dword [rcx + 0x20], r10d
je 0x14002bd53
call fcn.14001fce0
xor r10d, r10d
mov rax, qword [rbx]
mov r11d, 1
mov word [rax + 8], r11w
mov dword [rbx + 0x24], r10d
test r13d, r13d
jne 0x14002cde2
jmp 0x14002767a
movsxd rbx, dword [r15 + 4]
imul rbx, rbx, 0x38
add rbx, rsi
cmp dword [r15 + 0xc], r10d
je 0x14002be02
movsxd rdi, dword [r15 + 0xc]
mov rsi, qword [r15 + 0x10]
xor edx, edx
lea r8d, [rdx + 0x38]
lea rcx, [rbp + 0x188]
imul rdi, rdi, 0x38
add rdi, qword [rsp + 0x60]
call fcn.1400a2620
mov eax, 0x2400
test word [rdi + 8], ax
je 0x14002bdbc
mov rcx, rdi
call fcn.14001fca0
jmp 0x14002bdc5
mov eax, 1
mov word [rdi + 8], ax
lea rcx, [rbp + 0x188]
mov qword [rbp + 0x188], rdi
mov qword [rbp + 0x198], rbx
mov qword [rbp + 0x190], rsi
call qword [rsi + 0x28]
movsxd rbx, dword [r15 + 0xc]
mov r13d, dword [rbp + 0x1ac]
mov rsi, qword [rsp + 0x60]
imul rbx, rbx, 0x38
add rbx, rsi
mov dword [rsp + 0x30], r13d
jmp 0x14002be15
mov rdx, qword [r15 + 0x10]
mov rcx, rbx
call fcn.14001fbf4
mov r13d, eax
mov dword [rsp + 0x30], eax
xor r10d, r10d
test r13d, r13d
jne 0x14002ce2b
movzx ecx, byte [rsp + 0x40]
lea eax, [r10 + 2]
test byte [rbx + 8], al
je 0x14002be44
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x14002be44
mov dl, cl
mov rcx, rbx
call fcn.140005d88
xor r10d, r10d
test byte [rbx + 8], 0x12
je 0x14002be6c
mov edx, dword [rbx + 0xc]
mov eax, 0x4000
test word [rbx + 8], ax
je 0x14002be5a
add edx, dword [rbx]
mov rax, qword [rbx + 0x28]
mov ecx, r10d
cmp edx, dword [rax + 0x80]
setg cl
jmp 0x14002be6f
mov ecx, r10d
test ecx, ecx
jne 0x14002ceb5
jmp 0x14002746c
mov r8d, dword [r15 + 8]
mov edx, dword [r15 + 4]
or dword [rbp + 0x268], 0xffffffff
or dword [rbp + 0x264], 0xffffffff
lea rax, [rbp + 0x268]
lea r9, [rbp + 0x264]
mov rcx, r12
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x260], r10d
call fcn.14007a96c
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
je 0x14002bee4
lea eax, [r10 + 5]
cmp r13d, eax
jne 0x14002981a
lea r11d, [r10 + 1]
mov r13d, r10d
mov dword [rsp + 0x30], r10d
mov dword [rbp + 0x260], r11d
jmp 0x14002beea
mov r11d, 1
movsxd rbx, dword [r15 + 0xc]
mov rdi, r10
mov ecx, 0x2400
imul rbx, rbx, 0x38
add rbx, rsi
mov esi, 3
lea r12d, [rsi + 1]
movsxd rax, dword [rbp + rdi*4 + 0x260]
test word [rbx + 8], cx
je 0x14002bf2c
mov rdx, rax
mov rcx, rbx
call fcn.140020108
mov ecx, 0x2400
mov r11d, 1
jmp 0x14002bf34
mov qword [rbx], rax
mov word [rbx + 8], r12w
add rdi, r11
add rbx, 0x38
cmp rdi, rsi
jl 0x14002bf06
mov r12, qword [rsp + 0x58]
jmp 0x1400277d7
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov r8, qword [rsp + 0x58]
mov ebx, dword [r15 + 0xc]
mov rcx, qword [r8 + 0x20]
movsxd rdx, dword [r15 + 4]
mov r12, rax
shl rdx, 5
cmp ebx, 0xffffffff
mov eax, 3
mov r13, qword [rdx + rcx + 8]
mov rcx, qword [r13 + 8]
mov rdi, qword [rcx]
movzx esi, byte [rdi + 9]
cmove ebx, esi
xor edx, edx
cmp byte [rdi + 0x14], al
jae 0x14002bf9e
mov rax, qword [rdi + 0x50]
cmp qword [rax], rdx
je 0x14002bfa0
cmp qword [rdi + 0x60], rdx
jle 0x14002bfa0
mov ebx, esi
lea rcx, [0x1400b87fc]
cmp byte [rdi + 0x13], dl
jne 0x14002bfb3
mov rcx, qword [rdi + 0xd0]
mov r9d, 5
cmp ebx, r9d
jne 0x14002bfe8
call fcn.140006368
test eax, eax
je 0x14002bfe6
mov rax, qword [rdi + 0x48]
mov rcx, qword [rax]
cmp byte [rdi + 0x11], dl
jne 0x14002bfe6
cmp byte [rdi + 8], dl
jne 0x14002bfe8
lea eax, [r9 - 3]
cmp dword [rcx], eax
jl 0x14002bfe6
cmp qword [rcx + 0x68], rdx
jne 0x14002bfe8
mov ebx, esi
cmp ebx, esi
je 0x14002c080
cmp esi, r9d
je 0x14002bffe
cmp ebx, r9d
jne 0x14002c080
cmp byte [r8 + 0x61], dl
je 0x14002ce52
mov eax, 1
cmp dword [r8 + 0xd4], eax
jg 0x14002ce52
cmp esi, r9d
jne 0x14002c040
mov rdx, r8
mov rcx, rdi
call fcn.1400116fc
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14002c08c
mov edx, ebx
mov rcx, rdi
call fcn.1400114ec
xor edx, edx
jmp 0x14002c05e
mov eax, 4
cmp esi, eax
jne 0x14002c056
lea edx, [rax - 2]
mov rcx, rdi
call fcn.1400114ec
xor edx, edx
mov eax, dword [rsp + 0x30]
test eax, eax
jne 0x14002c08c
mov eax, 5
mov rcx, r13
cmp ebx, eax
mov eax, 1
sete dl
add edx, eax
call fcn.14001ebec
mov r13d, eax
mov dword [rsp + 0x30], eax
jmp 0x14002c085
mov r13d, dword [rsp + 0x30]
test r13d, r13d
je 0x14002c093
jmp 0x14002c091
mov r13d, dword [rsp + 0x30]
mov ebx, esi
mov edx, ebx
mov rcx, rdi
call fcn.1400114ec
mov ecx, 0xa02
mov word [r12 + 8], cx
cmp eax, 6
jne 0x14002c0b3
xor eax, eax
mov ecx, eax
jmp 0x14002c0c4
lea rcx, [0x140000000]
cdqe
mov rcx, qword [rcx + rax*8 + 0xb9e38]
mov qword [r12 + 0x10], rcx
call fcn.140006368
mov r11d, 1
mov dword [r12 + 0xc], eax
movzx eax, byte [rsp + 0x40]
mov byte [r12 + 0xa], r11b
cmp eax, r11d
je 0x14002c0f8
mov dl, al
mov rcx, r12
call fcn.140005d88
mov r11d, 1
mov r12, qword [rsp + 0x58]
xor r10d, r10d
test r13d, r13d
jne 0x14002981a
jmp 0x140027675
cmp dword [r15 + 8], r10d
je 0x14002c121
movsxd r9, dword [r15 + 8]
imul r9, r9, 0x38
add r9, rsi
jmp 0x14002c124
mov r9, r10
mov r8d, dword [r15 + 4]
lea rcx, [r14 + 0xa8]
mov rdx, r12
call fcn.140063a44
jmp 0x140029d39
movsxd rcx, dword [r15 + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.140017780
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
je 0x14002ca3a
cmp eax, 0x65
jne 0x14002981a
mov r13d, r10d
mov dword [rsp + 0x30], r10d
jmp 0x140027f48
cmp dword [r15 + 4], r10d
jne 0x14002c1b3
mov rax, qword [r12 + 8]
mov ecx, dword [r15 + 8]
test rax, rax
je case.0x140027281.86
inc ecx
and ecx, 3
and dword [rax + 0xc8], 0xfffffffc
or dword [rax + 0xc8], ecx
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14002c198
jmp case.0x140027281.86
mov eax, dword [r15 + 8]
add eax, r11d
xor eax, dword [r14 + 0xc8]
and eax, 3
xor dword [r14 + 0xc8], eax
jmp case.0x140027281.86
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r15 + 4]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
or byte [rax + 1], 0x40
jmp case.0x140027281.86
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r15 + 4]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
and byte [rax + 1], 0xbf
jmp case.0x140027281.86
mov r8b, byte [r15 + 0xc]
test r8b, r8b
jne 0x14002c21b
mov eax, dword [r12 + 0x30]
bt rax, 0xa
jb 0x140027387
movsxd rax, dword [r15 + 4]
mov rcx, qword [r12 + 0x20]
mov edx, dword [r15 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14001ea94
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test eax, eax
je 0x14002746c
cmp al, 6
jne 0x14002981a
mov r8, qword [r15 + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, r14
call fcn.140020dd8
jmp 0x14002cc98
mov rbx, qword [r15 + 0x10]
mov rcx, r12
mov rdx, rbx
call fcn.140064f20
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
test rbx, rbx
je 0x14002a3eb
mov rdx, qword [rbx + 0x10]
mov rcx, r14
call fcn.140024c90
jmp 0x14002a3e8
xor edx, edx
lea rcx, [rbp + 0x150]
lea r8d, [rdx + 0x38]
call fcn.1400a2620
movsxd rdx, dword [r15 + 8]
lea rcx, [rbp + 0x150]
imul rdx, rdx, 0x38
add rdx, rsi
mov qword [rbp + 0x178], r12
call fcn.140020310
mov edi, 1
lea rcx, [rbp + 0x150]
mov dl, dil
mov r13d, eax
mov dword [rsp + 0x30], eax
call fcn.140020888
xor r10d, r10d
test rax, rax
je 0x14002c30e
mov edx, dword [r15 + 4]
lea r9, [r14 + 0xa8]
mov r8, rax
mov rcx, r12
call fcn.140064a34
xor r10d, r10d
mov r13d, eax
mov dword [rsp + 0x30], eax
mov eax, 0x2400
test word [rbp + 0x158], ax
jne 0x14002c325
cmp dword [rbp + 0x170], r10d
je 0x14002c334
lea rcx, [rbp + 0x150]
call fcn.14001fce0
xor r10d, r10d
test r13d, r13d
jne 0x14002981f
mov r9, qword [rsp + 0x48]
mov r11, rdi
jmp 0x140027382
add dword [r12 + 0xe0], r11d
mov r8, qword [r15 + 0x10]
mov edx, dword [r15 + 4]
mov rcx, r12
call fcn.140064da0
dec dword [r12 + 0xe0]
jmp 0x140029d39
mov rax, qword [r15 + 0x10]
mov qword [rbp - 0x60], r10
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14002cea2
mov rdi, qword [rbx]
test rdi, rdi
je 0x14002cea2
lea rdx, [rbp - 0x60]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r14
mov r13d, eax
mov dword [rsp + 0x30], eax
call fcn.140024c90
xor r10d, r10d
test r13d, r13d
jne 0x14002981a
mov rax, qword [rbp - 0x60]
or r9d, 0xffffffff
xor r8d, r8d
mov qword [rax], rbx
mov edx, dword [r15 + 4]
lea eax, [r13 + 2]
mov rcx, r14
mov byte [rsp + 0x20], al
call fcn.140026dbc
mov rcx, qword [rbp - 0x60]
xor r10d, r10d
test rax, rax
je 0x14002ce88
lea r11d, [r13 + 1]
mov qword [rax + 0x38], rcx
add dword [rbx + 8], r11d
jmp 0x14002767a
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
movsxd rdx, dword [r15 + 0xc]
imul rdx, rdx, 0x38
mov r12, qword [rax + rcx*8]
add rdx, rsi
xor eax, eax
mov rbx, qword [r12 + 0x38]
mov r13d, dword [rdx]
lea r10, [rdx + 0x38]
movsxd r9, dword [r10]
mov rsi, qword [rbx]
mov rdx, qword [r14 + 0x70]
mov rdi, qword [rsi]
mov ecx, eax
test r9d, r9d
jle 0x14002c459
lea r14d, [rax + 1]
mov r8d, r14d
movsxd rax, r8d
add r8d, r14d
imul rax, rax, 0x38
add rax, r10
mov qword [rdx + rcx*8], rax
add rcx, r14
cmp rcx, r9
jl 0x14002c43b
mov r14, qword [rsp + 0x70]
mov r8, qword [r15 + 0x10]
mov qword [rsp + 0x20], rdx
mov rcx, rbx
mov edx, r13d
call qword [rdi + 0x40]
mov rdx, rsi
mov rcx, r14
mov r13d, eax
mov dword [rsp + 0x30], eax
call fcn.140024c90
xor r10d, r10d
test r13d, r13d
jne 0x14002d11d
mov rcx, rbx
call qword [rdi + 0x50]
xor r10d, r10d
mov byte [r12 + 2], r10b
test eax, eax
je 0x140027a67
mov r11d, 1
jmp 0x14002a00c
mov r13d, dword [rsp + 0x30]
xor r10d, r10d
jmp 0x14002a00c
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
movsxd rbx, dword [r15 + 0xc]
imul rbx, rbx, 0x38
mov rdi, qword [rax + rcx*8]
add rbx, rsi
cmp byte [rdi + 2], r10b
jne 0x1400284dc
mov rax, qword [rdi + 0x38]
xor edx, edx
lea rcx, [rbp + 0x1f0]
mov rsi, qword [rax]
lea r8d, [rdx + 0x38]
mov r12, qword [rsi]
call fcn.1400a2620
mov eax, 1
mov qword [rbp + 0x1f0], rbx
test byte [r15 + 2], al
je 0x14002c52e
mov ecx, 0x2400
test word [rbx + 8], cx
je 0x14002c51b
mov rcx, rbx
call fcn.14001fca0
jmp 0x14002c51f
mov word [rbx + 8], ax
mov eax, 0x4001
mov word [rbx + 8], ax
xor eax, eax
mov dword [rbx], eax
jmp 0x14002c53b
mov ecx, 0x3e40
and word [rbx + 8], cx
or word [rbx + 8], ax
mov r8d, dword [r15 + 8]
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp + 0x1f0]
call qword [r12 + 0x58]
mov rdx, rsi
mov rcx, r14
mov r13d, eax
mov dword [rsp + 0x30], eax
call fcn.140024c90
xor eax, eax
lea edi, [rax + 1]
cmp dword [rbp + 0x214], eax
jle 0x14002c597
mov dl, dil
mov rcx, rbx
call fcn.140020888
lea rdx, [0x1400be018]
mov rcx, r14
mov r8, rax
call fcn.140020dd8
mov r13d, dword [rbp + 0x214]
mov dword [rsp + 0x30], r13d
movzx ecx, byte [rsp + 0x40]
mov eax, 2
test byte [rbx + 8], al
je 0x14002c5b8
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x14002c5b8
mov dl, cl
mov rcx, rbx
call fcn.140005d88
test byte [rbx + 8], 0x12
je 0x14002c5e3
mov edx, dword [rbx + 0xc]
mov eax, 0x4000
test word [rbx + 8], ax
je 0x14002c5ce
add edx, dword [rbx]
mov rax, qword [rbx + 0x28]
xor r10d, r10d
cmp edx, dword [rax + 0x80]
mov ecx, r10d
setg cl
jmp 0x14002c5e9
xor r10d, r10d
mov ecx, r10d
mov r12, qword [rsp + 0x58]
test ecx, ecx
jne 0x14002ceb5
test r13d, r13d
jne 0x14002981f
jmp 0x140027a6c
movsxd rcx, dword [r15 + 4]
mov rax, qword [r14 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], r10b
jne case.0x140027281.86
mov rcx, qword [rdi + 0x38]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r14
mov r13d, eax
mov dword [rsp + 0x30], eax
call fcn.140024c90
xor r10d, r10d
test r13d, r13d
jne 0x14002981a
mov rcx, qword [rdi + 0x38]
call qword [rsi + 0x50]
xor r10d, r10d
test eax, eax
jne 0x140029233
mov r11d, 1
mov eax, dword [r15 + 8]
sub eax, r11d
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0x48]
lea r15, [rax + rcx*8]
mov qword [rbp - 0x70], r15
jmp 0x140029239
mov edi, dword [r12 + 0x30]
mov eax, 0x4000000
or qword [r12 + 0x30], rax
movsxd rbx, dword [r15 + 4]
and edi, eax
mov rax, qword [r15 + 0x10]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x60]
mov rsi, qword [rax + 0x10]
test byte [rbx + 8], dl
je 0x14002c6c0
cmp byte [rbx + 0xa], r11b
je 0x14002c6c0
mov dl, r11b
mov rcx, rbx
call fcn.140005d88
xor r10d, r10d
mov r13d, eax
jmp 0x14002c6c3
mov r13d, r10d
test r13d, r13d
jne 0x14002981a
mov rax, qword [rsi]
mov rdx, qword [rbx + 0x10]
mov rcx, rsi
call qword [rax + 0x98]
mov r13d, eax
mov dword [rsp + 0x30], eax
test edi, edi
jne 0x14002c6ee
btr qword [r12 + 0x30], 0x1a
mov rdx, rsi
mov rcx, r14
call fcn.140024c90
and dword [r14 + 0xc8], 0xfffffffc
xor r10d, r10d
test r13d, r13d
jne 0x14002981a
jmp 0x140027a6c
cmp byte [r12 + 0x63], r10b
jne 0x14002d0f1
mov rax, qword [r15 + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14002cea2
mov r10, qword [rbx]
xor r11d, r11d
test r10, r10
je 0x14002cea2
movsxd rdx, dword [r15 + 8]
cmp qword [r10 + 0x68], r11
je 0x140027446
movsxd rax, dword [r15 + 0xc]
mov dil, byte [r12 + 0x68]
mov r8, qword [r14 + 0x70]
imul rax, rax, 0x38
add rax, rsi
mov ecx, r11d
test edx, edx
jle 0x14002c77a
lea r11d, [rcx + 1]
mov qword [r8 + rcx*8], rax
add rcx, r11
add rax, 0x38
cmp rcx, rdx
jl 0x14002c76a
mov al, byte [r15 + 2]
lea r9, [rbp + 0x48]
mov rcx, rbx
mov byte [r12 + 0x68], al
call qword [r10 + 0x68]
mov rdx, rbx
mov rcx, r14
mov byte [r12 + 0x68], dil
mov r13d, eax
mov dword [rsp + 0x30], eax
call fcn.140024c90
xor r10d, r10d
test r13d, r13d
jne 0x14002c7bc
cmp dword [r15 + 4], r10d
je 0x14002c7bc
mov rax, qword [rbp + 0x48]
mov qword [r12 + 0x38], rax
cmp r13b, 0x13
jne 0x14002c80d
mov rax, qword [r15 + 0x10]
cmp byte [rax + 0x1c], r10b
je 0x14002c80d
mov r8d, 4
cmp word [r15 + 2], r8w
jne 0x14002c7e6
mov r13d, r10d
mov dword [rsp + 0x30], r10d
jmp 0x1400275f0
mov eax, 5
cmp word [r15 + 2], ax
jne 0x14002c7f9
mov eax, 2
jmp 0x14002c7fe
movzx eax, word [r15 + 2]
mov byte [r14 + 0xc2], al
mov r11d, 1
jmp 0x14002c81b
mov r11d, 1
add dword [r14 + 0x3c], r11d
lea r8d, [r11 + 3]
test r13d, r13d
jne 0x14002981a
jmp 0x140027c6c
mov rdx, r15
mov rcx, r14
call fcn.140027114
mov rcx, qword [r12 + 0x20]
movsxd rdx, dword [r15 + 4]
shl rdx, 5
mov rdx, qword [rdx + rcx + 8]
mov rcx, qword [rdx + 8]
mov edx, dword [rcx + 0x40]
mov qword [rax], rdx
jmp 0x140027469
mov rdx, r15
mov rcx, r14
call fcn.140027114
movsxd rdx, dword [r15 + 4]
mov rcx, qword [r12 + 0x20]
shl rdx, 5
xor r10d, r10d
mov rsi, rax
mov rbx, qword [rdx + rcx + 8]
mov edx, dword [r15 + 0xc]
mov edi, r10d
test edx, edx
je 0x14002c88f
mov rcx, qword [rbx + 8]
mov edi, dword [rcx + 0x40]
cmp edi, edx
cmovb edi, edx
cmp byte [rbx + 0x11], r10b
je 0x14002c8ae
mov eax, 1
add dword [rbx + 0x14], eax
cmp byte [rbx + 0x12], r10b
jne 0x14002c8ae
mov rcx, rbx
call fcn.140014408
xor r10d, r10d
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
test edi, edi
je 0x14002c8bf
mov dword [rcx + 0xc0], edi
mov edi, dword [rcx + 0xc0]
cmp byte [rbx + 0x11], r10b
je 0x14002c8db
dec dword [rbx + 0x14]
jne 0x14002c8db
mov rcx, rbx
call fcn.1400143e0
xor r10d, r10d
mov qword [rsi], rdi
jmp 0x140027a6c
movsxd rbx, dword [r15 + 0xc]
mov rdi, qword [r15 + 0x10]
imul rbx, rbx, 0x38
add rbx, rsi
cmp qword [rdi], rbx
je 0x14002c937
movzx edx, byte [rdi + 0x29]
mov qword [rdi + 0x18], r14
mov qword [rdi], rbx
sub edx, r11d
movsxd r8, edx
js 0x14002c937
lea r9, [rdi + r8*8 + 0x30]
mov r12d, 8
mov eax, dword [r15 + 8]
add eax, edx
sub edx, r11d
cdqe
imul rax, rax, 0x38
add rax, rsi
mov qword [r9], rax
sub r9, r12
sub r8, r11
jns 0x14002c915
mov r12, qword [rsp + 0x58]
mov eax, 0x3e40
lea r8, [rdi + 0x30]
mov rcx, rdi
and word [rbx + 8], ax
or word [rbx + 8], r11w
mov rax, qword [rdi + 8]
movzx edx, byte [rdi + 0x29]
call qword [rax + 0x18]
mov eax, dword [rdi + 0x24]
xor r10d, r10d
test eax, eax
je 0x14002c9af
jle 0x14002c988
mov dl, 1
mov rcx, rbx
call fcn.140020888
lea rdx, [0x1400be018]
mov rcx, r14
mov r8, rax
call fcn.140020dd8
mov r13d, dword [rdi + 0x24]
mov dword [rsp + 0x30], r13d
mov r9d, dword [r15 + 4]
mov r8d, dword [rdi + 0x20]
lea rdx, [r14 + 0x120]
mov rcx, r12
call fcn.140023820
xor r10d, r10d
mov dword [rdi + 0x24], r10d
test r13d, r13d
jne 0x14002981a
test byte [rbx + 8], 0x12
je 0x14002ca3a
movzx ecx, byte [rsp + 0x40]
mov eax, 2
test byte [rbx + 8], al
je 0x14002c9dd
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x14002c9dd
mov dl, cl
mov rcx, rbx
call fcn.140005d88
xor r10d, r10d
mov rcx, rbx
call fcn.140020268
test eax, eax
jmp 0x14002be71
mov r13d, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x60]
mov r11d, 1
mov r8, rax
jmp 0x140028361
mov r12, qword [rsp + 0x58]
mov r13d, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x60]
mov r8d, 4
jmp 0x140028361
mov r13d, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x60]
mov r12, r8
xor r10d, r10d
jmp 0x14002ca13
mov r13d, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x60]
mov r11d, 1
jmp 0x14002ca13
mov rsi, qword [rsp + 0x60]
jmp 0x140028361
mov r11d, 1
jmp 0x140028361
mov al, byte [r12 + 0x6a]
test al, 0x41
je 0x14002cb34
cmp byte [r14 + 0xc5], r10b
jne 0x14002cb34
mov r9, qword [r15 + 0x10]
test r9, r9
jne 0x14002ca8a
mov r9, qword [r14 + 0xf0]
test r9, r9
je 0x14002cb2f
test al, 0x40
je 0x14002cab9
mov rdx, r9
mov rcx, r14
call fcn.140026a34
mov rcx, qword [r12 + 0xf8]
mov rdx, rax
mov rbx, rax
call qword [r12 + 0xf0]
mov rcx, rbx
call fcn.1400039c4
jmp 0x14002cb1e
cmp dword [r12 + 0xdc], r11d
jle 0x14002cb08
lea rdx, str.____s
mov r8, r9
mov rcx, r12
call fcn.1400058e0
mov rdx, qword [r12 + 0xf8]
mov r8, r14
mov r9, rax
mov ecx, 1
mov rbx, rax
call qword [r12 + 0xf0]
xor r10d, r10d
test rbx, rbx
je 0x14002cb21
mov rdx, rbx
mov rcx, r12
call fcn.140003a4c
jmp 0x14002cb1e
mov rdx, qword [r12 + 0xf8]
mov r8, r14
mov ecx, r11d
call qword [r12 + 0xf0]
xor r10d, r10d
mov r8d, 4
lea r11d, [r8 - 3]
lea edx, [r8 - 2]
mov r9, qword [rsp + 0x48]
mov eax, dword [0x1400d396c]
cmp dword [r15 + 4], eax
jl 0x14002cb81
cmp byte [r15], 0xae
je case.0x140027281.86
mov edx, r11d
cmp dword [r14 + 0x90], r11d
jle 0x14002cb7d
mov eax, 0x18
mov rcx, qword [r14 + 0x88]
cmp byte [rax + rcx], 0x11
jne 0x14002cb6d
mov dword [rax + rcx + 4], r10d
add edx, r11d
add rax, 0x18
cmp edx, dword [r14 + 0x90]
jl 0x14002cb5b
mov dword [r15 + 4], r10d
add dword [r15 + 4], r11d
add dword [r14 + 0xec], r11d
jmp 0x140028709
mov r13d, dword [rsp + 0x30]
jmp case.0x140027281.86
mov ecx, dword [r15 + 4]
mov dword [r14 + 0x38], ecx
mov al, byte [r15 + 8]
mov dword [r14 + 0x34], ebx
mov byte [r14 + 0xc2], al
test ecx, ecx
je 0x14002cc42
mov rcx, r14
cmp word [r15 + 2], r10w
je 0x14002cc0c
movzx r8d, word [r15 + 2]
lea rax, [0x140000000]
lea rdx, str._s_constraint_failed
mov r8, qword [rax + r8*8 + 0xb8ab0]
call fcn.140020dd8
mov r9, qword [r15 + 0x10]
test r9, r9
je 0x14002cc1c
mov r8, qword [r14 + 0xa8]
lea rdx, str._z:__s
mov rcx, r12
call fcn.1400058e0
mov qword [r14 + 0xa8], rax
jmp 0x14002cc1c
mov r8, qword [r15 + 0x10]
lea rdx, [0x1400be018]
call fcn.140020dd8
mov rax, qword [r14 + 0xa8]
mov r9, qword [r14 + 0xf0]
mov ecx, dword [r15 + 4]
lea rdx, str.abort_at__d_in___s_:__s
mov r8d, ebx
mov qword [rsp + 0x20], rax
call fcn.140005a5c
mov rcx, r14
call fcn.140023324
mov rbx, qword [rsp + 0x50]
mov r13d, eax
mov eax, 5
cmp r13d, eax
jne 0x14002cc62
mov dword [r14 + 0x38], eax
jmp 0x14002cc73
mov eax, dword [r14 + 0x38]
neg eax
sbb r13d, r13d
and r13d, 0xffffff9c
add r13d, 0x65
xor r10d, r10d
jmp 0x14002d22a
mov r13d, 0x14
jmp 0x14002981a
mov ecx, 0x15ccb
call fcn.14007bc80
mov r12, qword [rsp + 0x58]
mov r13d, eax
xor r10d, r10d
jmp 0x14002981a
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov r14, qword [rsp + 0x70]
mov rcx, r14
call fcn.140020dd8
mov r13d, 5
jmp 0x14002cc98
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
jmp 0x14002cca7
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
mov r14, rdi
sub rcx, qword [rsp + 0x48]
mov r13d, r8d
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xor r10d, r10d
mov dword [rdi + 0x34], edx
mov byte [r12 + 0x61], r10b
mov dword [rdi + 0x38], r8d
jmp 0x14002d225
mov r14, qword [rsp + 0x70]
lea rdx, str.no_such_savepoint:__s
mov r8, rdi
mov rcx, r14
call fcn.140020dd8
mov edi, 1
mov r13d, edi
xor r10d, r10d
jmp 0x14002981f
mov r13d, 8
jmp 0x14002981a
mov rbx, qword [rsp + 0x50]
mov eax, 5
cmp r13b, al
jne 0x14002ce0a
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
mov dword [r14 + 0x38], r13d
sub rcx, qword [rsp + 0x48]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r14 + 0x34], edx
jmp 0x14002d22a
mov r13d, 0x204
jmp 0x14002981a
mov r13d, 0xd
jmp 0x14002cc98
lea rax, [0x1400c2b84]
mov r13d, 0x30b
lea r8, str.index_corruption
lea rdx, str._s_at_line__d_of___.10s_
mov r9d, 0x168d1
mov ecx, r13d
mov qword [rsp + 0x20], rax
call fcn.140005a5c
jmp 0x14002cc98
mov ecx, 0x1699d
call fcn.14007bc80
jmp 0x14002cc95
mov eax, 2
xor r10d, r10d
lea r13d, [rax + 4]
mov byte [r14 + 0xc2], al
mov rdi, r11
jmp 0x14002981f
mov r13d, 7
mov rcx, r12
call fcn.14004074c
mov rbx, qword [rsp + 0x50]
cmp r13d, 7
je 0x14002d0f6
xor r10d, r10d
mov edi, 1
jmp 0x140029824
lea rdx, str.too_many_levels_of_trigger_recursion
mov rcx, r14
mov r13d, r11d
call fcn.140020dd8
jmp 0x14002cc98
mov edi, 1
mov rcx, rbx
mov dl, dil
call fcn.140020888
lea rdx, [0x1400be018]
mov rcx, r14
mov r8, rax
call fcn.140020dd8
jmp 0x14002cd21
lea rax, str.into
cmp ebx, r9d
lea r8, str.out_of
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov edi, 1
mov rcx, r14
cmove r8, rax
mov r13d, edi
call fcn.140020dd8
mov r12, qword [rsp + 0x58]
jmp 0x14002cd21
call qword [rdi + 0x38]
jmp 0x14002d0f1
or rbx, 0xffffffffffffffff
mov edi, 1
lea r13d, [rdi + 8]
jmp 0x140029824
mov r13d, 6
jmp 0x14002981a
mov r14, qword [rsp + 0x70]
mov r12, r8
lea rdx, str.string_or_blob_too_big
mov rcx, r14
call fcn.140020dd8
mov r13d, 0x12
jmp 0x14002cc98
cmp qword [r14 + 0x50], r10
jle case.0x140027281.81
mov byte [r14 + 0xc2], dl
mov dword [r14 + 0x38], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov rcx, r14
call fcn.140020dd8
jmp 0x14002cd19
mov eax, dword [r14 + 0x30]
mov edi, r10d
add eax, edx
or eax, r11d
mov dword [r14 + 0x30], eax
movsxd rax, dword [r15 + 4]
imul rax, rax, 0x38
add rsi, rax
mov qword [r14 + 0xa0], rsi
cmp dword [r15 + 8], r10d
jle 0x14002cf82
lea rbx, [rsi + 8]
mov eax, 0x1000
test word [rbx], ax
je 0x14002cf4c
movsxd rcx, edi
imul rcx, rcx, 0x38
add rcx, rsi
call fcn.14001fa0c
test eax, eax
jne 0x14002d0f1
lea edx, [rax + 2]
lea r11d, [rax + 1]
movzx eax, word [rbx]
mov ecx, 0x202
and ax, cx
cmp ax, dx
jne 0x14002cf6e
lea rcx, [rbx - 8]
call fcn.14001f9b0
mov edx, 2
lea r11d, [rdx - 1]
add edi, r11d
add rbx, 0x38
cmp edi, dword [r15 + 8]
jl 0x14002cf24
xor r10d, r10d
lea r8d, [r10 + 4]
cmp byte [r12 + 0x63], r10b
jne 0x14002d0f1
test byte [r12 + 0x6a], r8b
je 0x14002cfb1
mov rdx, qword [r12 + 0xf8]
xor r9d, r9d
mov r8, r14
lea ecx, [r9 + 4]
call qword [r12 + 0xf0]
xor r10d, r10d
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
mov r13d, 0x64
sub rcx, qword [rsp + 0x48]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [r14 + 0x34], edx
jmp 0x14002d225
mov ebx, dword [r15 + 4]
movzx eax, byte [r12 + 0x61]
mov ecx, dword [r15 + 8]
cmp ebx, eax
je 0x14002d0c1
test ecx, ecx
je 0x14002d018
mov edx, 0x204
mov rcx, r12
call fcn.1400799e8
mov edi, 1
mov byte [r12 + 0x61], dil
jmp 0x14002d053
test ebx, ebx
je 0x14002d032
cmp dword [r12 + 0xd8], r10d
jle 0x14002d032
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x14002ccac
mov edx, r11d
mov rcx, r14
call fcn.1400232d4
xor r10d, r10d
mov r13d, eax
test eax, eax
jne 0x14002d225
mov byte [r12 + 0x61], bl
lea edi, [rax + 1]
mov rcx, r14
call fcn.140023324
mov r8d, 5
cmp eax, r8d
jne 0x14002d0a5
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
mov r13d, r8d
sub rcx, qword [rsp + 0x48]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, edi
sub al, bl
mov dword [r14 + 0x34], edx
mov byte [r12 + 0x61], al
mov dword [r14 + 0x38], r8d
xor r10d, r10d
jmp 0x14002d225
mov rcx, r12
call fcn.140079444
mov r11d, dword [r14 + 0x38]
neg r11d
sbb r13d, r13d
and r13d, 0xffffff9c
add r13d, 0x65
jmp 0x14002d09d
lea rax, str.cannot_rollback___no_transaction_is_active
test ecx, ecx
lea rdx, str.cannot_commit___no_transaction_is_active
cmovne rdx, rax
lea rax, str.cannot_start_a_transaction_within_a_transaction
test ebx, ebx
cmove rdx, rax
jmp 0x14002ceeb
mov r14, qword [rsp + 0x70]
mov r12, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
mov rcx, r12
call fcn.1400040d8
lea rdx, str.out_of_memory
mov rcx, r14
call fcn.140020dd8
mov r13d, 7
jmp 0x14002ce07
mov r13d, dword [rsp + 0x30]
mov r12, qword [rsp + 0x58]
jmp 0x14002981a
mov r13d, dword [rsp + 0x30]
mov r14, qword [rsp + 0x70]
jmp 0x14002981a
mov r13d, dword [rsp + 0x30]
mov r14, qword [rsp + 0x70]
jmp 0x14002d11d
mov r13d, dword [rsp + 0x30]
jmp 0x14002981a
cmp r13d, 0x210a
jne 0x14002d165
mov ecx, 0x171c6
call fcn.14007bc80
xor r10d, r10d
mov r13d, eax
cmp qword [r14 + 0xa8], r10
jne 0x14002d191
cmp r13d, 0xc0a
je 0x14002d191
mov ecx, r13d
call fcn.140079b2c
lea rdx, [0x1400be018]
mov rcx, r14
mov r8, rax
call fcn.140020dd8
mov edx, r13d
mov rcx, r12
mov dword [r14 + 0x38], r13d
call fcn.1400063e4
mov r9, qword [r14 + 0xf0]
mov r11, r15
sub r11, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
mov ecx, r13d
imul r11
mov rax, qword [r14 + 0xa8]
sar rdx, 2
mov qword [rsp + 0x20], rax
mov r8, rdx
shr r8, 0x3f
add r8, rdx
lea rdx, str.statement_aborts_at__d:___s___s
call fcn.140005a5c
mov rcx, r14
call fcn.140023324
cmp r13d, 0xc0a
jne 0x14002d1fe
mov rcx, r12
call fcn.1400040d8
mov al, byte [rbp - 0x80]
xor r10d, r10d
mov r13d, edi
test al, al
je 0x14002d22a
movzx edx, al
mov rcx, r12
sub edx, edi
call fcn.1400406d0
jmp 0x14002cc73
mov r13d, dword [rsp + 0x30]
mov r14, rdi
mov rbx, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x38]
cmp rdi, rbx
jb 0x14002d262
mov rdx, qword [r12 + 0x1e8]
test rdx, rdx
je 0x14002d262
mov eax, dword [r12 + 0x1f8]
mov rcx, qword [r12 + 0x1f0]
add rbx, rax
call rdx
xor r10d, r10d
test eax, eax
je 0x14002d22f
jmp 0x14002ce90
add dword [r14 + 0xe4], edi
cmp dword [r14 + 0xd0], r10d
je 0x14002d27a
mov rcx, r14
call fcn.140021e80
mov eax, r13d
mov rcx, qword [rbp + 0x270]
xor rcx, rsp
call fcn.14009e400
lea r11, [rsp + 0x380]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret