Function at 0x1800611e0
Capabilities:
Encrypt data using speck
Reference sql statements

Disassembly:
mov r11, rsp
push rbp
push rsi
push r15
lea rbp, [r11 - 0x158]
sub rsp, 0x240
mov rax, qword [0x1800fb080]
xor rax, rsp
mov qword [rbp + 0xd0], rax
mov r8, qword [rcx + 0x88]
xor eax, eax
mov qword [r11 + 0x10], rbx
mov rsi, rcx
mov qword [r11 + 0x18], rdi
mov r15d, eax
mov qword [r11 + 0x20], r12
xor dil, dil
mov r12, qword [rcx]
mov qword [r11 - 0x28], r14
mov r11, qword [rcx + 0x68]
mov byte [rbp - 0x64], dil
xor edi, edi
mov r10d, edi
movzx r9d, byte [r12 + 0x64]
mov r14d, edi
mov byte [rsp + 0x40], r9b
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x48], r8
mov dword [rsp + 0x54], eax
mov qword [rbp - 0x80], r12
mov dword [rsp + 0x50], edi
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x58], r11
cmp dword [rcx + 0xc8], eax
je 0x18006128b
call fcn.18002ba40
mov r11, qword [rsp + 0x58]
mov r10d, edi
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
cmp qword [r12 + 0x200], rdi
je 0x1800612ad
mov ecx, dword [r12 + 0x210]
xor edx, edx
mov eax, dword [rsi + 0xdc]
div ecx
sub ecx, edx
mov ebx, ecx
jmp 0x1800612b4
mov rbx, 0xffffffffffffffff
cmp dword [rsi + 0x34], 7
mov edx, 1
mov qword [rsp + 0x238], r13
movaps xmmword [rsp + 0x220], xmm6
movaps xmmword [rsp + 0x210], xmm7
movaps xmmword [rsp + 0x200], xmm8
movaps xmmword [rsp + 0x1f0], xmm9
movaps xmmword [rsp + 0x1e0], xmm10
mov qword [rsp + 0x68], rbx
je 0x180067924
mov dword [rsi + 0x34], edi
mov qword [rsi + 0x48], rdi
mov eax, dword [r12 + 0x188]
mov dword [r12 + 0x288], edi
test eax, eax
jne 0x180067900
movsxd rax, dword [rsi + 0x30]
xorps xmm10, xmm10
movdqa xmm8, xmmword [0x1800ee390]
movdqa xmm7, xmmword [0x1800ee380]
movdqa xmm9, xmmword [0x1800ee3a0]
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
lea rcx, [0x180000000]
movzx ebx, byte [r13]
inc r14
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x70], r14
cmp ebx, 0xb5
ja case.default.0x18006137d
movsxd rax, ebx
mov ecx, dword [rcx + rax*4 + 0x67b0c]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov rbx, qword [rsp + 0x48]
movabs rdx, 0xaaaaaaaaaaaaaaab
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
mov rax, rbx
sub rax, r8
sar rax, 3
imul rax, rdx
mov word [rcx + r11 + 0x14], 4
cdqe
mov qword [rcx + r11], rax
jmp case.0x18006137d.9
movsxd rax, dword [r13 + 4]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 4
je case.0x18006137d.89
mov rax, qword [rax + r11]
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
mov eax, dword [r13 + 0xc]
dec eax
cdqe
mov qword [rcx + r11], rax
mov word [rcx + r11 + 0x14], 4
cmp dword [r13 + 8], 0
jne 0x1800621d1
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movsxd rax, dword [r13 + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r11]
lea rcx, [rax + rax*2]
mov eax, dword [r8 + rcx*8 + 8]
dec eax
mov word [rdx + r11 + 0x14], di
cdqe
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
jmp 0x1800617ae
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
sub rbx, r8
imul rdx, rax, 0x38
sar rbx, 3
movabs rax, 0xaaaaaaaaaaaaaaab
imul rax, rbx
movsxd rcx, dword [rdx + r11]
cdqe
mov word [rdx + r11 + 0x14], 4
mov qword [rdx + r11], rax
lea rcx, [rcx + rcx*2]
lea r13, [r8 + rcx*8]
jmp 0x1800617ae
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je case.0x18006137d.89
mov rbx, qword [rsi + 0x100]
test rbx, rbx
je 0x1800672ed
cmp dword [r13 + 4], 0
jne 0x1800672ed
mov rax, qword [rbx + 8]
mov rcx, r12
mov rdx, qword [rsi + 0x38]
dec dword [rsi + 0x110]
mov qword [rsi + 0x100], rax
call fcn.180030290
mov rcx, rbx
call fcn.18002cb50
cmp dword [r13 + 8], 4
jne 0x180061503
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov r8, qword [rsi + 0x88]
mov r11, qword [rsi + 0x68]
movzx r9d, byte [rsp + 0x40]
cdqe
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x58], r11
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
mov r10d, dword [rsp + 0x50]
jmp 0x1800617ae
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], ax
je 0x18006155d
call fcn.180061090
mov r8, qword [rsp + 0x60]
mov rcx, rax
mov edx, 1
jmp 0x180061563
mov word [rcx + 0x14], 4
movsxd rax, dword [r13 + 4]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov qword [rcx], rax
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movsxd rax, dword [r13 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x1800615d5
mov rcx, rdx
call fcn.180061090
mov r8, qword [rsp + 0x60]
mov rdx, rax
mov rax, qword [r13 + 0x10]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x1800617ae
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [rdx + 0x14], 4
mov rax, qword [r13 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x1800617ae
movsxd rax, dword [r13 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x180061621
mov rcx, rdx
call fcn.180061090
mov r8, qword [rsp + 0x60]
mov rdx, rax
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [rdx + 0x14], 8
mov rax, qword [r13 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x1800617ae
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x18006166a
mov rcx, rbx
call fcn.180061090
mov rbx, rax
jmp 0x180061670
mov word [rbx + 0x14], 4
mov rdx, qword [r13 + 0x10]
test rdx, rdx
jne 0x18006167d
mov eax, edi
jmp 0x180061692
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], 0
jne 0x180061684
and eax, 0x3fffffff
movzx edi, byte [rsp + 0x40]
mov dword [r13 + 4], eax
cmp dil, 1
je 0x18006171d
xor r14d, r14d
mov r9b, 1
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x20], r14
mov rcx, rbx
call fcn.180057590
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800675fa
mov edx, edi
mov rcx, rbx
call fcn.180056430
test eax, eax
jne 0x18006791f
mov eax, 0x2000
mov dword [rbx + 0x20], r14d
or word [rbx + 0x14], ax
mov rax, qword [rsp + 0x48]
cmp byte [rax + 1], 0xfa
jne 0x180061705
mov rdx, qword [rax + 0x10]
mov rcx, r12
call fcn.180008740
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
mov byte [rax + 1], 0xfa
mov rax, qword [rbx + 8]
mov qword [r13 + 0x10], rax
mov eax, dword [rbx + 0x10]
mov dword [r13 + 4], eax
cmp eax, dword [r12 + 0x88]
jg 0x1800675fa
mov byte [r13], 0x49
jmp 0x180061737
movzx edi, byte [rsp + 0x40]
movsxd rax, dword [r13 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x180061759
mov rcx, rdx
call fcn.180061090
mov rdx, rax
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov word [rdx + 0x14], 0x2202
mov rax, qword [r13 + 0x10]
mov qword [rdx + 8], rax
mov eax, dword [r13 + 4]
mov dword [rdx + 0x10], eax
mov byte [rdx + 0x16], dil
movsxd rax, dword [r13 + 0xc]
test eax, eax
jle 0x180067155
imul rcx, rax, 0x38
movzx eax, word [r13 + 2]
cmp qword [rcx + r11], rax
jne 0x180067155
mov word [rdx + 0x14], 0x2210
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
xor edi, edi
mov edx, 1
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rbx, qword [rsp + 0x48]
mov r8d, 0x9000
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], r8w
je 0x1800617fb
call fcn.180061090
mov rcx, rax
mov edx, 1
mov r8d, 0x9000
jmp 0x180061801
mov word [rcx + 0x14], 4
cmp dword [rbx + 4], 0
mov esi, edx
mov edi, dword [rbx + 0xc]
mov r9d, 0x101
mov eax, dword [rbx + 8]
cmovne si, r9w
xor r14d, r14d
mov word [rcx + 0x14], si
sub edi, eax
mov dword [rcx + 0x10], r14d
lea rbx, [rcx + 0x14]
test edi, edi
jle 0x180067134
test word [rbx + 0x38], r8w
lea rbx, [rbx + 0x38]
je 0x18006184b
lea rcx, [rbx - 0x14]
call fcn.180056b60
mov r8d, 0x9000
dec edi
mov word [rbx], si
mov dword [rbx - 4], r14d
test edi, edi
jg 0x180061831
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1800617a7
movsxd rax, dword [r13 + 4]
mov ebx, 0xffc1
imul rcx, rax, 0x38
movzx eax, word [rcx + r11 + 0x14]
and ax, bx
or ax, 1
mov word [rcx + r11 + 0x14], ax
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x1800618d0
mov rcx, rbx
call fcn.180061090
mov rbx, rax
jmp 0x1800618d6
mov word [rbx + 0x14], 4
mov rax, qword [rsp + 0x48]
mov rcx, rbx
mov rdx, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
test rdx, rdx
jne 0x180061904
mov edx, eax
call fcn.1800571b0
mov rcx, rbx
call fcn.180056760
test eax, eax
jne 0x18006791f
jmp 0x180061914
mov r8, rax
mov qword [rsp + 0x20], rdi
xor r9d, r9d
call fcn.180057590
movzx r9d, byte [rsp + 0x40]
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov byte [rbx + 0x16], r9b
jmp 0x1800617ae
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
add rdi, qword [rsi + 0x80]
lea rcx, [rdi - 0x38]
call fcn.180057450
test eax, eax
jne 0x1800675fa
movsxd rax, dword [rbx + 8]
mov r11, qword [rsp + 0x58]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x180061984
mov rcx, rbx
call fcn.180057190
mov r11, qword [rsp + 0x58]
movups xmm0, xmmword [rdi - 0x38]
mov r13, qword [rsp + 0x48]
mov ecx, 0xafff
mov r10d, dword [rsp + 0x50]
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi - 0x28]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 0x14]
and ax, cx
or ax, 0x2040
mov word [rbx + 0x14], ax
jmp 0x1800617a1
mov rcx, qword [rsp + 0x48]
mov r14d, 0x9000
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
xor r13d, r13d
nop
test word [rbx + 0x14], r14w
jne 0x1800619ed
cmp dword [rbx + 0x20], r13d
je 0x1800619fa
mov rcx, rbx
call fcn.180056ba0
mov edx, 1
movups xmm0, xmmword [rdi]
mov eax, 0x4000
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movsd xmm1, qword [rdi + 0x30]
movsd qword [rbx + 0x30], xmm1
mov word [rdi + 0x14], dx
mov dword [rdi + 0x20], r13d
test word [rbx + 0x14], ax
je 0x180061a42
mov rcx, rbx
call fcn.1800566d0
test eax, eax
jne 0x18006791a
mov edx, 1
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x1800619e0
mov rsi, qword [rsp + 0x78]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
xor edi, edi
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rcx, qword [rsp + 0x48]
mov r14d, 0x4000
mov r13, rcx
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
nop dword [rax]
mov r8d, r14d
mov rdx, rdi
mov rcx, rbx
call fcn.1800574c0
test word [rbx + 0x14], r14w
je 0x180061ad5
mov rcx, rbx
call fcn.1800566d0
test eax, eax
jne 0x18006791a
movzx eax, word [rbx + 0x14]
bt ax, 0xb
jae 0x180061af3
test byte [r13 + 2], 2
je 0x180061af3
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
dec esi
test eax, eax
je 0x18006711e
add rbx, 0x38
add rdi, 0x38
jmp 0x180061ab0
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r11
add rcx, r11
mov r8d, 0x4000
call fcn.1800574c0
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
jmp 0x1800617ae
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, r11
mov rax, qword [rcx + r11]
mov ecx, 0x9000
test word [r8 + 0x14], cx
je 0x180061ba0
mov rdx, rax
mov rcx, r8
call fcn.180057200
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov r13, qword [rsp + 0x48]
jmp 0x1800617ae
mov qword [r8], rax
mov word [r8 + 0x14], 4
mov r13, qword [rsp + 0x48]
lea rcx, [0x180000000]
mov r8, qword [rsp + 0x60]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
xor edx, edx
mov rcx, rsi
call fcn.18002dc10
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x180061b34
mov rdi, qword [rsp + 0x48]
mov r13d, 1
mov rbx, qword [rsp + 0x68]
mov r14, qword [rsp + 0x70]
mov eax, 0xb
jmp 0x180067424
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul r14, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add r14, r11
imul rdi, rax, 0x38
movzx r15d, word [r14 + 0x14]
add rbx, r11
movzx eax, r15b
add rdi, r11
or al, byte [rbx + 0x14]
test al, 1
je 0x180061c5e
mov rcx, rdi
call fcn.180057190
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
jmp 0x1800617a7
test r15b, 0x12
jne 0x180061c91
xor r8d, r8d
movzx edx, r9b
mov rcx, r14
call fcn.1800567d0
test eax, eax
jne 0x18006791f
movzx r15d, word [r14 + 0x14]
mov r13d, 0xfffd
and r15w, r13w
mov eax, 0x400
jmp 0x180061cac
mov eax, 0x400
test ax, r15w
je 0x180061ca6
mov rcx, r14
call fcn.180056760
jmp 0x180061c73
mov r13d, 0xfffd
movzx esi, word [rbx + 0x14]
test sil, 0x12
jne 0x180061cc8
movzx edx, byte [rsp + 0x40]
xor r8d, r8d
mov rcx, rbx
call fcn.1800567d0
jmp 0x180061cd5
test ax, si
je 0x180061ce5
mov rcx, rbx
call fcn.180056760
test eax, eax
jne 0x18006791a
movzx esi, word [rbx + 0x14]
and si, r13w
mov r8, qword [rbp - 0x80]
mov edx, dword [rbx + 0x10]
add edx, dword [r14 + 0x10]
movsxd r12, edx
movsxd rax, dword [r8 + 0x88]
cmp r12, rax
jg 0x1800675f2
xor r13d, r13d
mov rcx, rdi
mov r8d, r13d
cmp rdi, rbx
sete r8b
add edx, 2
call fcn.180056450
test eax, eax
jne 0x180067916
movzx eax, word [rdi + 0x14]
mov ecx, 0xf242
and ax, cx
or ax, 2
mov word [rdi + 0x14], ax
cmp rdi, rbx
je 0x180061d51
movsxd r8, dword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rdi + 8]
call fcn.1800d6a70
mov word [rbx + 0x14], si
movsxd rcx, dword [rbx + 0x10]
add rcx, qword [rdi + 8]
movsxd r8, dword [r14 + 0x10]
mov rdx, qword [r14 + 8]
call fcn.1800d6a70
movzx r9d, byte [rsp + 0x40]
mov word [r14 + 0x14], r15w
cmp r9b, 1
jbe 0x180061d7b
and r12, 0xfffffffffffffffe
mov rax, qword [rdi + 8]
mov r15d, dword [rsp + 0x54]
mov rsi, qword [rsp + 0x78]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov byte [r12 + rax], r13b
mov rax, qword [rdi + 8]
mov byte [rax + r12 + 1], r13b
mov eax, 0x200
or word [rdi + 0x14], ax
mov r13, qword [rsp + 0x48]
mov dword [rdi + 0x10], r12d
mov r12, qword [rbp - 0x80]
mov byte [rdi + 0x16], r9b
jmp 0x1800617a7
mov rcx, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 0xc]
add rsi, r11
imul r14, rax, 0x38
movzx ebx, word [rsi + 0x14]
add rdi, r11
add r14, r11
movzx ecx, word [rdi + 0x14]
movzx eax, cl
and al, bl
test al, 4
jne 0x180061e34
or cl, bl
test cl, 1
jne 0x180061fae
and bx, 0x2d
jne 0x180061e17
mov rcx, rsi
call fcn.180060fe0
movzx ebx, ax
movzx eax, word [rdi + 0x14]
and ax, 0x2d
jne 0x180061e29
mov rcx, rdi
call fcn.180060fe0
and bl, al
test bl, 4
je 0x180061ef5
movzx edx, byte [r13]
mov r8, qword [rdi]
mov rcx, qword [rsi]
mov qword [rbp - 8], r8
sub edx, 0x6a
je 0x180061ec3
sub edx, 1
je 0x180061eb5
sub edx, 1
je 0x180061ea7
cmp edx, 1
je 0x180061e7b
mov edx, 1
test rcx, rcx
je 0x180061fa9
cmp rcx, 0xffffffffffffffff
mov rax, r8
cmove rcx, rdx
cqo
idiv rcx
mov qword [rbp - 8], rdx
jmp 0x180061ed3
test rcx, rcx
je 0x180061fa4
cmp rcx, 0xffffffffffffffff
jne 0x180061e99
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x180061ef5
mov rax, r8
cqo
idiv rcx
mov qword [rbp - 8], rax
jmp 0x180061ed3
mov rdx, rcx
lea rcx, [rbp - 8]
call fcn.180031a00
jmp 0x180061ecf
mov rdx, rcx
lea rcx, [rbp - 8]
call fcn.180031990
jmp 0x180061ecf
mov rdx, rcx
lea rcx, [rbp - 8]
call fcn.180031940
test eax, eax
jne 0x180061ef5
mov rax, qword [rbp - 8]
mov ecx, 0xf244
mov qword [r14], rax
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 4
mov word [r14 + 0x14], ax
jmp 0x18006185d
mov rcx, rsi
call fcn.180056d40
mov rcx, rdi
movaps xmm6, xmm0
call fcn.180056d40
movzx ecx, byte [r13]
sub ecx, 0x6a
je 0x180061f74
sub ecx, 1
je 0x180061f6e
sub ecx, 1
je 0x180061f68
cmp ecx, 1
je 0x180061f59
mov rcx, rsi
call fcn.18000ad50
mov rcx, rdi
mov rbx, rax
call fcn.18000ad50
mov qword [rbp - 8], rax
mov edx, 1
test rbx, rbx
je 0x180061fa9
cmp rbx, 0xffffffffffffffff
xorps xmm0, xmm0
cmove rbx, rdx
cqo
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x180061f78
ucomisd xmm6, xmm10
jp 0x180061f62
je 0x180061fa4
divsd xmm0, xmm6
jmp 0x180061f78
mulsd xmm0, xmm6
jmp 0x180061f78
subsd xmm0, xmm6
jmp 0x180061f78
addsd xmm0, xmm6
movq rax, xmm0
movabs rcx, 0xfffffffffffff
test rcx, rax
movabs rdx, 0x7ff0000000000000
setne cl
and rax, rdx
cmp rax, rdx
sete al
test al, cl
je 0x180061ff8
mov edx, 1
mov r8, qword [rsp + 0x60]
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x180061fc7
mov rcx, r14
call fcn.180056b60
jmp 0x18006185d
mov rsi, qword [rsp + 0x78]
lea rcx, [0x180000000]
mov r11, qword [rsp + 0x58]
xor edi, edi
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [r14 + 0x14], dx
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movzx eax, word [r14 + 0x14]
mov ecx, 0xf248
and ax, cx
movsd qword [r14], xmm0
or ax, 8
mov word [r14 + 0x14], ax
jmp 0x18006185d
movsxd rax, dword [r13 + 4]
test eax, eax
je case.0x18006137d.89
imul rcx, rax, 0x38
xor edx, edx
add rcx, r11
call fcn.180057240
jmp 0x180061b34
mov rcx, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
movsxd rax, dword [r13 + 0xc]
add rdi, r11
imul rsi, rax, 0x38
add rcx, r11
add rsi, r11
movzx eax, byte [rcx + 0x14]
or al, byte [rdi + 0x14]
test al, 1
je 0x1800620a5
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x180062085
mov rcx, rsi
call fcn.180056b60
jmp 0x18006185d
mov word [rsi + 0x14], dx
lea rcx, [0x180000000]
mov rsi, qword [rsp + 0x78]
xor edi, edi
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
call fcn.18000ad50
mov rcx, rdi
mov rbx, rax
call fcn.18000ad50
movzx ecx, byte [r13]
mov rdx, rax
cmp cl, 0x66
jne 0x1800620c7
and rbx, rax
jmp 0x18006213a
cmp cl, 0x67
jne 0x1800620d1
or rbx, rdx
jmp 0x18006213a
test rdx, rdx
je 0x18006213a
jns 0x1800620eb
mov eax, 0xd1
sub al, cl
movzx ecx, al
cmp rdx, 0xffffffffffffffc0
jle 0x1800620f1
neg rdx
cmp rdx, 0x40
jl 0x180062108
test rbx, rbx
jns 0x180062104
cmp cl, 0x68
je 0x180062104
mov rbx, 0xffffffffffffffff
jmp 0x18006213a
xor ebx, ebx
jmp 0x18006213a
cmp cl, 0x68
mov rcx, rdx
jne 0x180062118
shl rbx, cl
mov r8, rbx
jmp 0x180062137
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x180062137
mov ecx, 0x40
mov rax, 0xffffffffffffffff
sub cl, dl
shl rax, cl
or r8, rax
mov rbx, r8
movzx eax, word [rsi + 0x14]
mov ecx, 0xf244
and ax, cx
mov qword [rsi], rbx
or ax, 4
mov word [rsi + 0x14], ax
jmp 0x18006185d
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, r11
mov rcx, rbx
call fcn.18000ad50
movzx ecx, word [rbx + 0x14]
mov edx, 0xf244
and cx, dx
mov qword [rbx], rax
or cx, 4
mov word [rbx + 0x14], cx
movsxd rcx, dword [r13 + 8]
add rcx, rax
mov qword [rbx], rcx
jmp 0x180061b34
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, r11
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x180062228
movzx r8d, r9b
mov dl, 0x43
mov rcx, rbx
call fcn.180060f00
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x180062219
cmp dword [r13 + 8], 0
je 0x1800673ec
mov r8, qword [rsp + 0x60]
mov edx, 1
mov eax, dword [r13 + 8]
mov rsi, qword [rsp + 0x78]
dec eax
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
cdqe
lea rcx, [rax + rax*2]
lea r12, [r8 + rcx*8]
mov qword [rsp + 0x48], r12
lea rcx, [0x180000000]
mov r13, qword [rsp + 0x48]
mov r12, qword [rbp - 0x80]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov r11, qword [rsp + 0x58]
mov edx, 1
mov r8, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov ecx, 0xf244
mov r10d, dword [rsp + 0x50]
and ax, cx
or ax, 4
lea rcx, [0x180000000]
mov word [rbx + 0x14], ax
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
je case.0x18006137d.89
call fcn.180056ea0
jmp 0x180061b34
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x1800622a0
mov rcx, rbx
call fcn.180056760
mov r15d, eax
test eax, eax
jne 0x18006740a
movzx r8d, byte [rsp + 0x40]
mov rcx, rbx
movzx edx, byte [r13 + 8]
call fcn.180056ff0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
jmp 0x180061b34
mov rcx, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul r14, rax, 0x38
add r15, r11
add r14, r11
movzx esi, word [r15 + 0x14]
movzx edi, word [r14 + 0x14]
movzx ecx, di
and cx, si
test cl, 4
je 0x18006239d
mov rcx, qword [r14]
mov edx, 1
cmp rcx, qword [r15]
lea rcx, [0x180000000]
mov r15d, dword [rsp + 0x54]
jle 0x180062343
xor edi, edi
cmp byte [rbx + rcx + 0xe5af8], dil
jne 0x1800621d1
mov rsi, qword [rsp + 0x78]
mov r10d, edx
mov dword [rsp + 0x50], edx
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
jge 0x180062373
xor edi, edi
cmp byte [rbx + rcx + 0xe5aec], dil
jne 0x1800621d1
mov rsi, qword [rsp + 0x78]
mov r10d, 0xffffffff
mov dword [rsp + 0x50], r10d
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
xor edi, edi
cmp byte [rbx + rcx + 0xe5af2], dil
jne 0x1800621d1
mov rsi, qword [rsp + 0x78]
mov r10d, edi
mov dword [rsp + 0x50], edi
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movzx eax, di
or ax, si
test al, 1
je 0x18006241a
movzx eax, word [r13 + 2]
test al, al
jns 0x1800623ea
test cl, 1
je 0x1800623cf
mov eax, 0x100
test ax, di
jne 0x1800623cf
movzx eax, byte [r13]
xor edx, edx
mov dword [rsp + 0x50], edx
jmp 0x180062515
movzx eax, di
not ax
and eax, 1
lea r10d, [rax*2 - 1]
mov dword [rsp + 0x50], r10d
jmp 0x1800624eb
mov r15d, dword [rsp + 0x54]
xor edi, edi
test al, 0x10
jne 0x1800621d1
mov rsi, qword [rsp + 0x78]
lea rcx, [0x180000000]
mov r10d, edx
mov dword [rsp + 0x50], edx
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movzx ecx, byte [r13 + 2]
and cl, 0x47
cmp cl, 0x43
jb 0x18006245e
test al, 2
je 0x1800624d0
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x180062448
xor edx, edx
mov rcx, r15
call fcn.180060df0
movzx edi, word [r14 + 0x14]
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x1800624d0
xor edx, edx
mov rcx, r14
call fcn.180060df0
jmp 0x1800624d0
cmp cl, 0x42
jne 0x1800624d0
test al, 2
je 0x1800624d0
test sil, 2
jne 0x1800624a2
test sil, 0x2c
je 0x1800624a2
mov r8b, 1
movzx edx, r9b
mov rcx, r15
call fcn.1800567d0
xor si, word [r15 + 0x14]
mov ebx, 0xdbf
and si, bx
xor si, word [r15 + 0x14]
cmp r15, r14
jne 0x1800624a7
movzx edi, si
or di, 2
jmp 0x1800624a7
mov ebx, 0xdbf
test dil, 2
jne 0x1800624d0
test dil, 0x2c
je 0x1800624d0
movzx edx, byte [rsp + 0x40]
mov r8b, 1
mov rcx, r14
call fcn.1800567d0
xor di, word [r14 + 0x14]
and di, bx
xor di, word [r14 + 0x14]
mov r8, qword [r13 + 0x10]
mov rdx, r15
mov rcx, r14
call fcn.18002f240
mov r11, qword [rsp + 0x58]
mov r10d, eax
mov dword [rsp + 0x50], eax
movzx eax, byte [r13]
mov ecx, r10d
movzx r9d, si
test r10d, r10d
jns 0x18006250d
lea rcx, [0x180000000]
movzx edx, byte [rax + rcx + 0xe5aec]
jmp 0x180062545
mov dword [rsp + 0x50], ecx
test ecx, ecx
jne 0x18006252b
mov r10d, dword [rsp + 0x50]
lea rcx, [0x180000000]
movzx edx, byte [rax + rcx + 0xe5af2]
jmp 0x180062545
lea rdx, [0x180000000]
mov dword [rsp + 0x50], ecx
movzx edx, byte [rax + rdx + 0xe5af8]
lea rcx, [0x180000000]
mov r8, qword [rsp + 0x60]
mov word [r14 + 0x14], di
xor edi, edi
test dl, dl
mov word [r15 + 0x14], si
mov r15d, dword [rsp + 0x54]
mov edx, 1
jne 0x1800621d1
mov rsi, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
test r10d, r10d
je 0x1800621d1
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rax, qword [rsp + 0x48]
test byte [rax + 2], 1
jne 0x1800625af
mov r12, rdi
jmp 0x1800625b7
mov r12, qword [rax - 8]
add r12, 4
mov rcx, qword [rax + 0x10]
xor r13d, r13d
mov r8d, dword [rax + 4]
mov ebx, r13d
mov r9d, dword [rax + 8]
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x20], rcx
mov dword [rbp - 0x78], r8d
mov dword [rbp - 0x70], r9d
mov qword [rbp + 0x30], rax
test rax, rax
jle 0x1800672da
lea r14, [rcx + 0x20]
nop word [rax + rax]
test r12, r12
je 0x1800625fb
mov edx, dword [r12 + rbx*4]
jmp 0x1800625fd
mov edx, edi
mov rax, qword [rcx + 0x18]
lea ecx, [rdx + r9]
imul r13, rcx, 0x38
movzx esi, byte [rax + rbx]
lea ecx, [rdx + r8]
mov r8, qword [r14]
add r13, r11
imul r15, rcx, 0x38
mov rdx, r13
and esi, 1
add r15, r11
mov rcx, r15
call fcn.18002f240
mov dword [rsp + 0x50], eax
mov r10d, eax
test eax, eax
jne 0x18006266f
mov rcx, qword [rbp - 0x20]
inc edi
mov r8d, dword [rbp - 0x78]
inc rbx
mov r9d, dword [rbp - 0x70]
add r14, 8
mov r11, qword [rsp + 0x58]
cmp rbx, qword [rbp + 0x30]
jl 0x1800625f0
mov r15d, dword [rsp + 0x54]
mov r12, qword [rbp - 0x80]
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
jmp 0x1800617a1
mov rax, qword [rbp - 0x20]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x180062693
test byte [r15 + 0x14], 1
jne 0x18006268b
test byte [r13 + 0x14], 1
je 0x180062693
neg r10d
mov dword [rsp + 0x50], r10d
mov r15d, dword [rsp + 0x54]
mov edx, 1
mov r12, qword [rbp - 0x80]
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
test esi, esi
je 0x18006715a
mov rsi, qword [rsp + 0x78]
lea rcx, [0x180000000]
movzx r9d, byte [rsp + 0x40]
neg r10d
mov r8, qword [rsp + 0x60]
xor edi, edi
mov dword [rsp + 0x50], r10d
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
test r10d, r10d
jns 0x18006270c
mov eax, dword [r13 + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
jne 0x180062733
mov eax, dword [r13 + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov eax, dword [r13 + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movsxd rax, dword [r13 + 4]
mov r14d, 2
imul rcx, rax, 0x38
mov edx, r14d
add rcx, r11
call fcn.180056d70
movsxd rcx, dword [r13 + 8]
mov edx, r14d
imul rcx, rcx, 0x38
mov ebx, eax
add rcx, qword [rsp + 0x58]
call fcn.180056d70
lea rdx, [0x180000000]
lea eax, [rax + rbx*2]
add eax, ebx
movsxd r9, eax
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x2c
jne 0x1800627ac
movzx r9d, byte [r9 + rdx + 0xe7588]
jmp 0x1800627b5
movzx r9d, byte [r9 + rdx + 0xe7598]
movsxd rax, dword [rax + 0xc]
mov r11, qword [rsp + 0x58]
imul rdx, rax, 0x38
movzx ecx, word [rdx + r11 + 0x14]
cmp r9b, r14b
jne 0x1800627f9
mov r13, qword [rsp + 0x48]
mov eax, 0xf241
movzx r9d, byte [rsp + 0x40]
and cx, ax
mov r10d, dword [rsp + 0x50]
or cx, 1
mov r8, qword [rsp + 0x60]
mov word [rdx + r11 + 0x14], cx
jmp 0x1800617ae
mov r13, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
movzx eax, r9b
movzx r9d, byte [rsp + 0x40]
mov qword [rdx + r11], rax
mov eax, 0xf244
and cx, ax
or cx, 4
mov word [rdx + r11 + 0x14], cx
jmp 0x1800617ae
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
mov edx, dword [rbx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.180056d70
movsxd rdx, dword [rbx + 0x10]
movsxd rcx, eax
mov rax, rbx
movsxd rax, dword [rbx + 8]
xor rdx, rcx
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
call fcn.180057240
jmp 0x180061b2f
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rcx, r11
add rbx, r11
test byte [rcx + 0x14], 1
jne 0x1800628a6
xor edx, edx
call fcn.180056d70
test eax, eax
mov rdx, rdi
mov rcx, rbx
sete dl
call fcn.180057240
jmp 0x180061b2f
mov rcx, rbx
call fcn.180057190
jmp 0x180061b2f
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
mov rcx, rbx
call fcn.180057190
test byte [rdi + 0x14], 1
jne 0x180067119
mov rcx, rdi
mov word [rbx + 0x14], 4
call fcn.18000ad50
mov r13, qword [rsp + 0x48]
not rax
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov qword [rbx], rax
jmp 0x1800617a7
mov rcx, qword [rsi + 0x100]
test rcx, rcx
je 0x180062985
mov r8, qword [rcx + 0x28]
movabs rdx, 0xaaaaaaaaaaaaaaab
mov rax, r13
sub rax, qword [rsi + 0x88]
sar rax, 3
imul rax, rdx
mov edx, eax
and eax, 7
shr rdx, 3
movzx ecx, byte [rdx + r8]
bt ecx, eax
jb 0x1800621c7
bts ecx, eax
mov byte [rdx + r8], cl
mov edx, 1
mov rax, qword [rsi + 0x88]
mov r8, qword [rsp + 0x60]
mov ecx, dword [rax + 4]
mov dword [r13 + 4], ecx
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rcx, qword [rsi + 0x88]
mov eax, dword [r13 + 4]
cmp dword [rcx + 4], eax
je 0x1800621d1
mov rax, rcx
mov ecx, dword [rcx + 4]
mov dword [r13 + 4], ecx
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movsxd rax, dword [r13 + 4]
mov edx, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.180056d70
test eax, eax
mov r8, qword [rsp + 0x60]
mov edx, 1
jne 0x1800621d1
mov r11, qword [rsp + 0x58]
lea rcx, [0x180000000]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rax, qword [rsp + 0x48]
mov edx, edi
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r11
call fcn.180056d70
mov r13, qword [rsp + 0x48]
mov edx, 1
mov r8, qword [rsp + 0x60]
test eax, eax
je 0x1800621d1
mov r11, qword [rsp + 0x58]
lea rcx, [0x180000000]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x1800621d1
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
test eax, eax
js 0x180062ae7
mov r13, qword [rsp + 0x48]
mov rcx, rax
mov rax, qword [rsi + 0x78]
movsxd rdx, dword [r13 + 0xc]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0x4a]
cmp edx, eax
jge 0x180062adf
mov ecx, dword [rcx + rdx*4 + 0x70]
cmp ecx, 0xc
jb 0x180062acb
test cl, 1
mov edx, 4
mov eax, 8
cmove dx, ax
jmp 0x180062b0c
mov rax, rcx
lea rcx, [0x180000000]
movzx edx, byte [rax + rcx + 0xe7550]
jmp 0x180062b13
mov ecx, dword [r13 + 0x10]
dec ecx
jmp 0x180062b04
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.18000adc0
mov r13, qword [rsp + 0x48]
mov r8, qword [rsp + 0x60]
lea ecx, [rax - 1]
mov edx, 1
shl dx, cl
lea rcx, [0x180000000]
test word [r13 + 2], dx
jne 0x1800621cc
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov edx, 1
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x180062b78
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x180062b78
movsxd rax, dword [r13 + 8]
xor edx, edx
imul rcx, rax, 0x38
add rcx, r11
call fcn.180057240
jmp 0x180061b34
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
add rcx, r11
call fcn.180057190
jmp 0x180061b34
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x1800621d1
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movsxd rcx, dword [r13 + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x1800617ae
cmp byte [rdx + 2], 0
je 0x1800617ae
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.180057190
jmp 0x1800621c7
movsxd rcx, dword [r13 + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
mov r14d, dword [rcx + 8]
mov dword [rbp - 0x78], r14d
mov eax, dword [rsi + 0x2c]
mov r13, qword [rbx + 0x58]
cmp dword [rbx + 0x20], eax
je 0x180062c48
cmp byte [rbx + 2], 0
jne 0x180062ca3
cmp byte [rbx + 3], 0
mov rdi, qword [rbx + 0x30]
je 0x180062c41
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x180062c6d
lea eax, [r14 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x180062c6d
mov rbx, qword [rbx + 0x28]
lea r14d, [rax - 1]
jmp 0x180062bff
cmp byte [rdi], 0
je 0x180062c84
jmp 0x180062c55
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x180062e25
mov rcx, rbx
call fcn.18002e790
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x180062c03
jmp 0x18006740a
mov rcx, rbx
call fcn.18002e720
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
mov rcx, rdi
call fcn.180013de0
lea rsi, [rbx + 0x6c]
mov dword [rbx + 0x68], eax
mov rdx, rsi
mov rcx, rdi
call fcn.180014420
mov rcx, rax
jmp 0x180062cd1
cmp byte [rbx], 3
jne 0x180062df9
movsxd rax, dword [rbx + 0x24]
test eax, eax
jle 0x180062df9
imul rcx, rax, 0x38
lea rsi, [rbx + 0x6c]
add rcx, qword [rsp + 0x58]
mov eax, dword [rcx + 0x10]
mov dword [rsi], eax
mov dword [rbx + 0x68], eax
mov rcx, qword [rcx + 8]
mov rax, qword [rsp + 0x78]
lea r12, [rbx + 0x40]
mov qword [rbx + 0x60], rcx
mov eax, dword [rax + 0x2c]
mov dword [rbx + 0x20], eax
movzx eax, byte [rcx]
mov dword [r13], eax
cmp eax, 0x80
jae 0x180062cf9
mov eax, 1
jmp 0x180062d08
mov rcx, qword [rbx + 0x60]
mov rdx, r13
call fcn.1800317d0
movzx eax, al
mov rcx, r12
lea rdi, [rbx + 0x4a]
mov dword [rcx], eax
xor ecx, ecx
mov word [rdi], cx
mov eax, dword [r13]
cmp dword [rsi], eax
jae 0x180062df3
mov qword [rbx + 0x60], rcx
mov dword [rsi], ecx
mov eax, dword [r13]
cmp eax, 0x18003
ja 0x180062ed2
cmp eax, dword [rbx + 0x68]
ja 0x180062ed2
mov rsi, qword [rsp + 0x78]
movzx eax, word [rdi]
cmp eax, r14d
ja 0x180062f7f
mov eax, dword [r13]
lea r12, [rbx + 0x40]
cmp dword [r12], eax
jae 0x180062f1d
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x70], rax
test rax, rax
jne 0x180062dae
xorps xmm0, xmm0
mov qword [rbp + 0x80], rax
movups xmmword [rbp + 0x50], xmm0
lea r8, [rbp + 0x50]
movups xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x70], xmm0
mov edx, dword [r13]
mov rcx, qword [rbx + 0x30]
call fcn.180057a20
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006795b
mov rax, qword [rbp + 0x58]
mov qword [rbp - 0x70], rax
movzx r15d, word [rdi]
mov edi, dword [r12]
mov r14d, r15d
mov r12d, dword [r13]
add rdi, rax
add r12, rax
mov esi, dword [r13 + r15*4]
nop dword [rax + rax]
movzx eax, byte [rdi]
mov dword [rbp - 0x74], eax
mov dword [rbx + r14*4 + 0x70], eax
mov ecx, dword [rbp - 0x74]
cmp ecx, 0x80
jae 0x180062e2e
inc rdi
call fcn.18002e820
movzx eax, al
jmp 0x180062e52
mov rax, qword [rbx + 0x60]
jmp 0x180062daa
mov r13, qword [rsp + 0x48]
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
call fcn.180057190
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1800617a7
lea rdi, [rbx + 0x4a]
jmp 0x180062d45
lea rdx, [rbp - 0x74]
mov rcx, rdi
call fcn.1800317d0
movzx eax, al
add rdi, rax
mov eax, dword [rbp - 0x74]
mov dword [rbx + r14*4 + 0x70], eax
mov ecx, dword [rbp - 0x74]
call fcn.18002e800
mov eax, eax
inc r15d
add rsi, rax
movsxd r14, r15d
mov dword [r13 + r14*4], esi
cmp r15d, dword [rbp - 0x78]
ja 0x180062e71
cmp rdi, r12
jb 0x180062dd0
jmp 0x180062e76
cmp rdi, r12
jb 0x180062ea9
cmp rdi, r12
ja 0x180062eb1
mov eax, dword [rbx + 0x68]
cmp rsi, rax
jne 0x180062eb1
sub edi, dword [rbp - 0x70]
cmp qword [rbx + 0x60], 0
mov word [rbx + 0x4a], r15w
mov dword [rbx + 0x40], edi
jne 0x180062e9e
lea rcx, [rbp + 0x50]
call fcn.180056c70
mov edx, dword [rbp - 0x74]
xor edi, edi
mov r14d, dword [rbp - 0x78]
jmp 0x180062f24
mov eax, dword [rbx + 0x68]
cmp rsi, rax
jbe 0x180062e83
cmp dword [r13], 0
jne 0x180062ec2
xor eax, eax
mov rdi, r12
mov r15d, eax
jmp 0x180062e83
cmp qword [rbx + 0x60], 0
jne 0x180062ed2
lea rcx, [rbp + 0x50]
call fcn.180056c70
mov r8, qword [rsp + 0x60]
mov eax, dword [r8 + 0xc]
test eax, eax
jle 0x1800673f4
mov r12, qword [rbp - 0x80]
dec eax
mov rsi, qword [rsp + 0x78]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r15, [r8 + rax*8]
mov qword [rsp + 0x48], r15
mov r13, qword [rsp + 0x48]
mov r15d, dword [rsp + 0x54]
jmp 0x1800617ac
xor edi, edi
mov edx, edi
mov dword [rbp - 0x74], edx
movzx eax, word [rbx + 0x4a]
cmp eax, r14d
ja 0x180062f89
mov rdx, qword [rsp + 0x48]
movsxd rax, dword [rdx + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
cmp byte [rdx + 1], 0xf6
jne 0x180062f67
mov rdx, qword [rdx + 0x10]
mov r8d, 0x2000
call fcn.1800574c0
mov r15d, dword [rsp + 0x54]
mov r12, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x78]
jmp 0x180061b2f
call fcn.180057190
mov r15d, dword [rsp + 0x54]
mov r12, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x78]
jmp 0x180061b2f
mov eax, r14d
mov edx, dword [rbx + rax*4 + 0x70]
mov dword [rbp - 0x74], edx
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 0xc]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [rsp + 0x58]
test word [rdi + 0x14], ax
je 0x180062fb6
mov rcx, rdi
call fcn.180057190
mov edx, dword [rbp - 0x74]
mov r8, qword [rsp + 0x48]
lea eax, [r14 + 1]
mov eax, dword [r13 + rax*4]
cmp dword [rbx + 0x6c], eax
jb 0x1800630b4
mov eax, r14d
mov esi, dword [r13 + rax*4]
add rsi, qword [rbx + 0x60]
cmp edx, 0xc
jae 0x180062ff2
mov r8, rdi
mov rcx, rsi
call fcn.18002e830
mov r15d, dword [rsp + 0x54]
mov r12, qword [rbp - 0x80]
jmp 0x180061858
movzx ecx, byte [rsp + 0x40]
lea ebx, [rdx - 0xc]
mov r12, qword [rbp - 0x80]
shr ebx, 1
mov dword [rdi + 0x10], ebx
mov byte [rdi + 0x16], cl
lea edx, [rbx + 2]
cmp dword [rdi + 0x20], edx
jge 0x18006303a
cmp ebx, dword [r12 + 0x88]
jg 0x1800675f5
lfence
xor r8d, r8d
mov word [rdi + 0x14], 1
mov rcx, rdi
call fcn.180056450
test eax, eax
jne 0x18006791a
jmp 0x180063042
mov rax, qword [rdi + 0x28]
mov qword [rdi + 8], rax
mov rcx, qword [rdi + 8]
mov r8, rbx
mov rdx, rsi
call fcn.1800d6a70
mov rax, qword [rdi + 8]
lea rcx, [0x180000000]
mov r15d, dword [rsp + 0x54]
mov edx, 1
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov byte [rbx + rax], 0
mov rax, qword [rdi + 8]
mov byte [rbx + rax + 1], 0
mov eax, dword [rbp - 0x74]
and eax, 1
movzx eax, word [rcx + rax*2 + 0xe7528]
mov word [rdi + 0x14], ax
xor edi, edi
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movzx ecx, byte [rsp + 0x40]
mov byte [rdi + 0x16], cl
movzx eax, word [r8 + 2]
mov edx, dword [rbp - 0x74]
test al, 0xc0
je 0x1800630d6
cmp edx, 0xc
jb 0x1800630d2
test dl, 1
je 0x1800630e4
test al, al
js 0x1800630e4
mov ecx, edx
call fcn.18002e800
test eax, eax
jne 0x180063101
mov edx, dword [rbp - 0x74]
mov r8, rdi
lea rcx, [0x1800e5910]
call fcn.18002e830
mov r15d, dword [rsp + 0x54]
mov r12, qword [rbp - 0x80]
jmp 0x180061858
mov r12, qword [rbp - 0x80]
cmp eax, dword [r12 + 0x88]
jg 0x1800675f5
lfence
mov rcx, qword [rbx + 0x30]
mov r9, rdi
mov edx, r14d
mov r8d, eax
mov edx, dword [r13 + rdx*4]
call fcn.180057900
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x180067405
mov edx, dword [rbp - 0x74]
mov r8, rdi
mov rcx, qword [rdi + 8]
call fcn.18002e830
mov ecx, 0xbfff
and word [rdi + 0x14], cx
jmp 0x180061858
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
mov r14, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rsi, rax, 0x38
mov r15, qword [r14 + 8]
xor eax, eax
add rsi, r11
cmp ax, word [r14 + 0x36]
jge 0x1800672cb
lea rbx, [r15 + 0xc]
movzx eax, word [rbx + 6]
test al, 0x60
je 0x1800631a2
test al, 0x20
jne 0x180063252
cmp dword [r13 + 0xc], 0
jne 0x18006324e
movzx edx, byte [rbx]
movzx r8d, r9b
mov rcx, rsi
call fcn.180060f00
movzx ecx, word [rsi + 0x14]
test cl, 1
jne 0x18006324e
mov eax, dword [rbx - 4]
shr eax, 4
and eax, 0xf
sub eax, 2
je 0x180063245
sub eax, 1
je 0x180063240
sub eax, 1
je 0x180063240
sub eax, 1
je 0x1800631e9
cmp eax, 1
jne 0x18006324e
test cl, 2
jmp 0x180063248
test cl, 4
je 0x18006323b
mov rdx, qword [rsi]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov rax, rsi
ja 0x180063216
or cx, 0x20
jmp 0x180063226
xorps xmm0, xmm0
or cx, 8
cvtsi2sd xmm0, rdx
movsd qword [rsi], xmm0
mov edx, 0x14
mov r8d, 0xfffb
and cx, r8w
mov word [rax + rdx], cx
jmp 0x18006324e
test cl, 0x28
jmp 0x180063248
test cl, 4
jmp 0x180063248
test cl, 0x10
je 0x18006743b
add rsi, 0x38
movsx eax, word [r14 + 0x36]
inc edi
movzx r9d, byte [rsp + 0x40]
add rbx, 0x18
cmp edi, eax
jl 0x180063187
mov r15d, dword [rsp + 0x54]
jmp 0x18006185d
mov rax, qword [rsp + 0x48]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r11
nop dword [rax]
movzx r8d, r9b
movzx edx, al
mov rcx, rbx
call fcn.180060f00
cmp byte [rdi], 0x45
jne 0x1800632f1
movzx ecx, word [rbx + 0x14]
test cl, 4
je 0x1800632f1
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov eax, 0xfffb
ja 0x1800632da
and cx, ax
or cx, 0x20
jmp 0x1800632ed
xorps xmm0, xmm0
and cx, ax
cvtsi2sd xmm0, rdx
or cx, 8
movsd qword [rbx], xmm0
mov word [rbx + 0x14], cx
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x180067119
movzx r9d, byte [rsp + 0x40]
add rbx, 0x38
jmp 0x180063290
mov rcx, qword [rsp + 0x48]
mov rsi, rdi
mov r12d, edi
mov r13, rdi
movsxd rax, dword [rcx + 4]
mov rdi, qword [rcx + 0x10]
imul r15, rax, 0x38
mov eax, dword [rcx + 8]
dec eax
add r15, r11
cdqe
imul r14, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add r14, r15
mov qword [rbp - 0x70], r15
add rcx, r11
mov qword [rbp - 0x20], r14
mov qword [rbp + 0x30], rcx
test rdi, rdi
je 0x18006339d
lea rbx, [r15 + 0x14]
mov r15d, 0xfffb
nop dword [rax]
movzx edx, byte [rdi]
lea rcx, [rbx - 0x14]
movzx r8d, r9b
call fcn.180060f00
cmp byte [rdi], 0x45
jne 0x180063387
movzx eax, word [rbx]
test al, 4
je 0x180063387
and ax, r15w
or ax, 0x20
mov word [rbx], ax
movzx r9d, byte [rsp + 0x40]
inc rdi
add rbx, 0x38
cmp byte [rdi], 0
jne 0x180063360
mov r15, qword [rbp - 0x70]
lea rdi, [r14 + 0x24]
movzx ecx, word [rdi - 0x10]
test cl, 1
je 0x1800633c2
inc r12d
mov eax, 0x400
and cx, ax
neg cx
sbb ebx, ebx
and ebx, 0xa
jmp 0x18006350d
test cl, 0x24
je 0x1800634a7
mov r8, qword [rdi - 0x24]
mov rdx, r8
test r8, r8
jns 0x1800633da
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x180063411
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x180063404
mov rax, qword [rsp + 0x78]
cmp byte [rax + 0xbb], 4
jb 0x180063404
lea ebx, [rdx + 8]
jmp 0x18006350d
inc rsi
mov ebx, 1
jmp 0x18006350d
cmp rdx, 0x7fff
ja 0x180063428
add rsi, 2
mov ebx, 2
jmp 0x18006350d
cmp rdx, 0x7fffff
ja 0x18006343f
add rsi, 3
mov ebx, 3
jmp 0x18006350d
cmp rdx, 0x7fffffff
ja 0x180063456
add rsi, 4
mov ebx, 4
jmp 0x18006350d
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x180063473
add rsi, 6
mov ebx, 5
jmp 0x18006350d
add rsi, 8
test cl, 0x20
je 0x1800634a0
xorps xmm0, xmm0
mov eax, 0xffdf
cvtsi2sd xmm0, r8
and cx, ax
mov ebx, 7
or cx, 8
mov word [rdi - 0x10], cx
movsd qword [rdi - 0x24], xmm0
jmp 0x18006350d
mov ebx, 6
jmp 0x18006350d
test cl, 8
je 0x1800634ba
inc r12d
mov ebx, 7
add rsi, 8
jmp 0x18006350d
mov r14d, dword [rdi - 0x14]
mov eax, ecx
shr eax, 1
and eax, 1
bt cx, 0xa
lea ebx, [r14 + 6]
lea ebx, [rax + rbx*2]
jae 0x1800634fd
movsxd rax, dword [rdi - 0x24]
lea ebx, [rbx + rax*2]
test rsi, rsi
je 0x1800634f6
lea rcx, [rdi - 0x24]
call fcn.180056760
test eax, eax
jne 0x180067916
add r14d, dword [rdi - 0x24]
jmp 0x1800634f9
add r13, rax
mov r15, qword [rbp - 0x70]
mov eax, r14d
mov ecx, ebx
add rsi, rax
call fcn.180031850
add r12d, eax
mov rax, rdi
mov dword [rax], ebx
lea rax, [rdi - 0x24]
cmp rax, r15
je 0x180063524
sub rdi, 0x38
jmp 0x1800633a1
cmp r12d, 0x7e
jle 0x180063543
movsxd rcx, r12d
call fcn.180031850
add r12d, eax
mov ebx, eax
movsxd rcx, r12d
call fcn.180031850
cmp ebx, eax
jge 0x180063546
inc r12d
mov rdi, qword [rbp + 0x30]
movsxd r14, r12d
movsxd rax, dword [rdi + 0x20]
lea rbx, [rsi + r14]
lea rcx, [rbx + r13]
cmp rcx, rax
jg 0x180063568
mov rax, qword [rdi + 0x28]
mov qword [rdi + 8], rax
jmp 0x18006358e
mov r8, qword [rbp - 0x80]
movsxd rax, dword [r8 + 0x88]
cmp rcx, rax
jg 0x1800675f2
mov edx, ebx
mov rcx, rdi
call fcn.180056650
test eax, eax
jne 0x180067916
mov dword [rdi + 0x10], ebx
mov word [rdi + 0x14], 0x10
test r13, r13
je 0x1800635a5
mov dword [rdi], r13d
mov word [rdi + 0x14], 0x410
mov rdi, qword [rdi + 8]
lea rsi, [r14 + rdi]
cmp r12d, 0x80
jge 0x1800635be
mov byte [rdi], r12b
inc rdi
jmp 0x1800635cf
movsxd rdx, r12d
mov rcx, rdi
call fcn.1800315a0
movsxd rcx, eax
add rdi, rcx
mov r14, qword [rbp - 0x20]
lea rbx, [r15 + 0x10]
mov eax, dword [rbx + 0x14]
cmp eax, 7
ja 0x180063635
mov byte [rdi], al
inc rdi
test eax, eax
je 0x18006367c
mov rdx, qword [rbx - 0x10]
lea rcx, [0x180000000]
movzx ecx, byte [rax + rcx + 0xe3650]
mov r10d, 0xffffffff
mov r9d, ecx
add ecx, r10d
lea r8, [rcx + rsi]
mov byte [r8], dl
je 0x180063630
nop dword [rax]
nop dword [rax + rax]
shr rdx, 8
lea r8, [r8 - 1]
mov byte [r8], dl
add ecx, r10d
jne 0x180063620
add rsi, r9
jmp 0x18006367c
cmp eax, 0x80
jae 0x18006364f
mov byte [rdi], al
inc rdi
cmp eax, 0xe
jb 0x18006367c
movsxd rax, dword [rbx]
test eax, eax
jle 0x18006367c
jmp 0x180063667
mov rdx, rax
mov rcx, rdi
call fcn.1800315a0
movsxd rcx, eax
movsxd rax, dword [rbx]
add rdi, rcx
test eax, eax
je 0x18006367c
mov rdx, qword [rbx - 8]
mov r8, rax
mov rcx, rsi
call fcn.1800d6a70
movsxd rax, dword [rbx]
add rsi, rax
lea rax, [rbx - 0x10]
cmp rax, r14
je 0x180067110
add rbx, 0x38
jmp 0x1800635d7
cmp dword [r13 + 0xc], 0
movsxd rcx, dword [r13 + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x30]
je 0x1800636b7
mov rcx, rdx
call fcn.1800152b0
mov qword [rbp + 0x18], rax
jmp 0x1800636d6
lea r8, [rbp + 0x18]
mov qword [rbp + 0x18], rdi
mov rcx, r12
call fcn.18001c460
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
mov rdx, r13
mov rcx, rsi
call fcn.1800610c0
mov rcx, qword [rbp + 0x18]
mov qword [rax], rcx
jmp 0x180066ce8
mov rax, qword [rsp + 0x48]
mov r13d, dword [rax + 4]
mov rdi, qword [rax + 0x10]
test r13d, r13d
jne 0x1800637e5
cmp dword [r12 + 0xe0], r13d
jg 0x180067499
mov rcx, rdi
call fcn.180030490
mov r8d, dword [r12 + 0x2e4]
xor edx, edx
add r8d, dword [r12 + 0x2e0]
mov rcx, r12
movsxd rsi, eax
call fcn.180050910
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x180067405
lea rdx, [rsi + 0x21]
mov rcx, r12
call fcn.180008a30
mov rbx, rax
test rax, rax
je 0x1800637b9
lea r9, [rax + 0x20]
mov rdx, rdi
lea ecx, [rsi + 1]
mov qword [rax], r9
movsxd r8, ecx
mov rcx, r9
call fcn.1800d6a70
cmp byte [r12 + 0x65], r15b
je 0x180063785
mov byte [r12 + 0x65], r15b
mov byte [r12 + 0x6d], 1
jmp 0x18006378d
inc dword [r12 + 0x2e0]
mov rax, qword [r12 + 0x2d0]
mov qword [rbx + 0x18], rax
mov rax, qword [r12 + 0x2e8]
mov qword [r12 + 0x2d0], rbx
mov qword [rbx + 8], rax
mov rax, qword [r12 + 0x2f0]
mov qword [rbx + 0x10], rax
mov rsi, qword [rsp + 0x78]
cmp byte [rsi + 0xbd], 3
je 0x18006750c
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1800617a7
mov rbx, qword [r12 + 0x2d0]
xor eax, eax
mov r14d, eax
test rbx, rbx
je 0x18006381b
nop word [rax + rax]
mov rcx, qword [rbx]
mov rdx, rdi
call fcn.180030990
test eax, eax
je 0x18006383b
mov rbx, qword [rbx + 0x18]
inc r14d
test rbx, rbx
jne 0x180063800
mov r8, rdi
lea rdx, str.no_such_savepoint:__s
mov rcx, rsi
call fcn.1800299c0
mov r13d, 1
mov r15d, r13d
jmp 0x180067410
cmp dword [r12 + 0xe0], 0
jle 0x180063850
cmp r13d, 1
je 0x1800674b3
cmp qword [rbx + 0x18], 0
jne 0x1800638b3
cmp byte [r12 + 0x6d], 0
je 0x1800638b3
mov edi, 1
mov dword [rbp - 0x78], edi
cmp r13d, edi
jne 0x1800638ba
mov edx, edi
mov rcx, rsi
call fcn.18002dc10
mov r15d, eax
test eax, eax
jne 0x180067512
mov rcx, rsi
mov byte [r12 + 0x65], dil
call fcn.18002dc80
cmp eax, 5
je 0x1800674d8
mov r15d, dword [rsi + 0x34]
mov dword [rsp + 0x54], r15d
test r15d, r15d
jne 0x1800674cd
mov byte [r12 + 0x6d], r15b
jmp 0x1800639ca
xor ecx, ecx
mov dword [rbp - 0x78], ecx
jmp 0x1800638bc
xor ecx, ecx
mov eax, dword [r12 + 0x2e0]
sub eax, r14d
lea r14d, [rax - 1]
mov rax, qword [rbp - 0x80]
cmp r13d, 2
jne 0x18006392a
mov r12d, dword [r12 + 0x2c]
mov esi, ecx
and r12d, 1
cmp dword [rax + 0x28], 0
jle 0x18006392d
mov r15d, r12d
mov rdi, rcx
xor r15d, 1
mov rcx, qword [rax + 0x20]
mov r8d, r15d
mov edx, 0x204
mov rcx, qword [rdi + rcx + 8]
call fcn.180013810
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180067951
mov rax, qword [rbp - 0x80]
inc esi
add rdi, 0x20
cmp esi, dword [rax + 0x28]
jl 0x1800638f0
mov r15d, dword [rsp + 0x54]
xor ecx, ecx
jmp 0x18006392d
mov r12d, ecx
cmp dword [rax + 0x28], 0
mov esi, ecx
jle 0x180063972
mov rdi, rcx
nop dword [rax + rax]
mov rcx, qword [rax + 0x20]
mov r8d, r14d
mov edx, r13d
mov rcx, qword [rdi + rcx + 8]
call fcn.180013b00
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x180067401
mov rax, qword [rbp - 0x80]
inc esi
add rdi, 0x20
cmp esi, dword [rax + 0x28]
jl 0x180063940
test r12d, r12d
mov r12, qword [rbp - 0x80]
je 0x1800639b9
mov rcx, qword [r12 + 8]
test rcx, rcx
je 0x1800639ab
nop word [rax + rax]
mov eax, dword [rcx + 0xc0]
and eax, 0xfffffffd
or eax, 1
mov dword [rcx + 0xc0], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x180063990
mov rcx, r12
call fcn.180034640
or dword [r12 + 0x2c], 1
mov rsi, qword [rsp + 0x78]
test r15d, r15d
jne 0x18006740a
mov edi, dword [rbp - 0x78]
mov rcx, qword [r12 + 0x2d0]
cmp rcx, rbx
je 0x180063a0c
nop word [rax + rax]
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, r12
mov qword [r12 + 0x2d0], rax
call fcn.180008680
dec dword [r12 + 0x2e0]
mov rcx, qword [r12 + 0x2d0]
cmp rcx, rbx
jne 0x1800639e0
cmp r13d, 1
jne 0x180063a3b
mov rax, qword [rbx + 0x18]
mov rdx, rbx
mov rcx, r12
mov qword [r12 + 0x2d0], rax
call fcn.180008680
test edi, edi
jne 0x1800637be
dec dword [r12 + 0x2e0]
jmp 0x180063a61
mov rax, qword [rbx + 8]
mov qword [r12 + 0x2e8], rax
mov rax, qword [rbx + 0x10]
mov qword [r12 + 0x2f0], rax
test edi, edi
je 0x180063a61
cmp r13d, 2
jne 0x1800637be
mov r8d, r14d
mov edx, r13d
mov rcx, r12
call fcn.180050910
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
jmp 0x1800637be
mov rcx, qword [rsp + 0x48]
mov dword [rbp - 0x78], edi
mov edx, dword [rcx + 8]
test edx, edx
je 0x180063aaa
mov rax, qword [r12 + 0x30]
movabs r8, 0x200100000
test r8, rax
jne 0x180067575
movsxd rbx, dword [rcx + 4]
shl rbx, 5
add rbx, qword [r12 + 0x20]
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x180063b76
lea r8, [rbp - 0x78]
mov rcx, rdi
call fcn.180012280
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x180067594
test byte [rsi + 0xc0], 0x20
mov r13, qword [rsp + 0x48]
je 0x180063b84
cmp dword [r13 + 8], eax
je 0x180063b84
cmp byte [r12 + 0x65], al
je 0x180063b0d
cmp dword [r12 + 0xdc], 1
jle 0x180063b84
mov r8d, dword [rsi + 0x40]
test r8d, r8d
jne 0x180063b32
inc dword [r12 + 0x2e4]
mov r8d, dword [r12 + 0x2e4]
add r8d, dword [r12 + 0x2e0]
mov dword [rsi + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, r12
call fcn.180050910
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x180063b5c
mov edx, dword [rsi + 0x40]
mov rcx, rdi
call fcn.180013a80
mov r15d, eax
mov dword [rsp + 0x54], eax
mov rax, qword [r12 + 0x2e8]
mov qword [rsi + 0x58], rax
mov rax, qword [r12 + 0x2f0]
mov qword [rsi + 0x60], rax
jmp 0x180063b7b
mov r13, qword [rsp + 0x48]
test r15d, r15d
jne 0x18006740a
cmp word [r13 + 2], 0
je 0x180061862
mov eax, dword [r13 + 0xc]
cmp dword [rbp - 0x78], eax
jne 0x180063baa
mov rcx, qword [rbx + 0x18]
mov eax, dword [r13 + 0x10]
cmp dword [rcx + 4], eax
je 0x180061862
mov rdx, qword [rsi + 0xa8]
mov rcx, r12
call fcn.180008740
lea rdx, str.database_schema_has_changed
mov rcx, r12
call fcn.180008d40
mov qword [rsi + 0xa8], rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x78]
cmp dword [rcx], eax
je 0x180063bf8
mov rcx, r12
call fcn.180034410
mov eax, dword [rsi + 0xc0]
mov r15d, 0x11
and eax, 0xffffffed
or eax, 1
mov dword [rsi + 0xc0], eax
jmp 0x18006740a
movsxd rax, dword [r13 + 4]
lea r8, [rbp + 0x14]
mov rcx, qword [r12 + 0x20]
mov edx, dword [r13 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.18001c2e0
mov rdx, r13
mov rcx, rsi
call fcn.1800610c0
movsxd rcx, dword [rbp + 0x14]
mov qword [rax], rcx
jmp 0x180061b34
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [r12 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.18001c370
mov r13, qword [rsp + 0x48]
mov r15d, eax
mov dword [rsp + 0x54], eax
mov eax, dword [r13 + 8]
cmp eax, 1
jne 0x180063ca7
movzx eax, word [r13 + 2]
mov ecx, dword [r13 + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
mov rcx, r12
or dword [r12 + 0x2c], 1
mov edx, dword [r13 + 4]
call fcn.180099570
jmp 0x180063cb8
cmp eax, 2
jne 0x180063cb8
mov rcx, qword [rbx + 0x18]
movzx eax, byte [r13 + 0xc]
mov byte [rcx + 0x70], al
cmp dword [r13 + 4], 1
jne 0x180063cd0
xor edx, edx
mov rcx, r12
call fcn.1800302a0
and dword [rsi + 0xc0], 0xfffffffc
test r15d, r15d
jne 0x18006740a
jmp 0x180061b34
movsxd rcx, dword [r13 + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x180063d06
mov eax, dword [r13 + 8]
cmp dword [rdi + 0x44], eax
jne 0x180063d06
mov rcx, qword [rdi + 0x30]
call fcn.18000f0b0
jmp 0x180063e17
xor edi, edi
mov eax, dword [rsi + 0xc0]
and al, 3
cmp al, 1
je 0x1800675d9
mov rax, qword [rsp + 0x48]
xor ecx, ecx
mov r8, qword [rbp - 0x80]
mov r14d, ecx
movsxd r12, dword [rax + 0xc]
mov r15d, dword [rax + 8]
mov rax, r12
shl rax, 5
add rax, qword [r8 + 0x20]
mov r8, qword [rsp + 0x48]
mov r13, qword [rax + 8]
cmp bl, 0x71
jne 0x180063d6f
mov rax, qword [rax + 0x18]
movzx esi, word [r8 + 2]
and esi, 8
or esi, 4
movzx ecx, byte [rax + 0x70]
mov rax, qword [rsp + 0x78]
cmp cl, byte [rax + 0xbb]
jae 0x180063d71
mov byte [rax + 0xbb], cl
jmp 0x180063d71
mov esi, ecx
test byte [r8 + 2], 0x10
je 0x180063d8f
imul rbx, r15, 0x38
add rbx, r11
mov rcx, rbx
call fcn.180056e40
mov r8, qword [rsp + 0x48]
mov r15d, dword [rbx]
movzx eax, byte [r8 + 1]
cmp al, 0xf8
jne 0x180063da3
mov r14, qword [r8 + 0x10]
movzx edi, word [r14 + 8]
jmp 0x180063dab
cmp al, 0xfd
jne 0x180063dab
mov edi, dword [r8 + 0x10]
mov rbx, qword [rsp + 0x48]
xor r9d, r9d
mov rcx, qword [rsp + 0x78]
mov r8d, edi
mov edx, dword [rbx + 4]
call fcn.180060c60
mov rdi, rax
test rax, rax
je 0x180067916
mov rcx, qword [rax + 0x30]
mov r9, r14
or dword [rax + 8], 4
mov r8d, esi
mov qword [rsp + 0x20], rcx
mov edx, r15d
mov rcx, r13
mov byte [rax + 1], r12b
mov byte [rax + 2], 1
mov dword [rax + 0x44], r15d
call fcn.180013cd0
mov r12, qword [rbp - 0x80]
mov r15d, eax
mov rsi, qword [rsp + 0x78]
mov qword [rdi + 0x38], r14
cmp byte [rbx + 1], 0xf8
mov dword [rsp + 0x54], eax
setne al
mov byte [rdi + 4], al
mov rax, qword [rsp + 0x48]
mov rcx, qword [rdi + 0x30]
movzx edx, word [rax + 2]
and edx, 3
call fcn.18000f2e0
test r15d, r15d
jne 0x18006740a
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1800617a7
mov r15, qword [rsp + 0x48]
xor r9d, r9d
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r15 + 8]
mov edx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, rsi
movsx r8d, word [rbx + 0x48]
call fcn.180060c60
mov r10, rax
test rax, rax
je 0x18006791f
mov edx, dword [rax + 8]
mov r8d, 4
mov byte [rax + 2], 1
or edx, 1
mov dword [rax + 8], edx
mov rcx, qword [rbx + 0x38]
mov qword [rax + 0x38], rcx
mov ecx, edx
movzx eax, byte [rbx + 4]
mov byte [r10 + 4], al
mov eax, dword [rbx + 0x44]
mov dword [r10 + 0x44], eax
xor ecx, dword [rbx + 8]
and ecx, 4
xor ecx, edx
mov dword [r10 + 8], ecx
or ecx, 8
mov rax, qword [rbx + 0x10]
mov qword [r10 + 0x10], rax
mov dword [r10 + 8], ecx
or dword [rbx + 8], 8
mov rax, qword [r10 + 0x30]
mov r9, qword [r10 + 0x38]
mov edx, dword [r10 + 0x44]
mov rcx, qword [r10 + 0x10]
mov qword [rsp + 0x20], rax
call fcn.180013cd0
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x180061b2f
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 0xc]
test eax, eax
jle 0x180063f1b
imul rcx, rax, 0x38
mov dword [rcx + r11 + 0x10], edi
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x1800e23ff]
mov qword [rcx + r11 + 8], rax
movsxd rdx, dword [r15 + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x180063f6a
test byte [rbx + 8], 8
jne 0x180063f6a
movsx eax, word [rbx + 0x48]
cmp dword [r15 + 8], eax
jg 0x180063f6a
mov edx, dword [rbx + 0x44]
xor r8d, r8d
mov rcx, qword [rbx + 0x10]
mov qword [rbx + 0x18], rdi
mov dword [rbx + 0x20], edi
call fcn.18001bdb0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
mov byte [rbx + 2], 1
jmp 0x180061b2f
mov r8d, dword [r15 + 8]
xor r9d, r9d
mov rcx, rsi
call fcn.180060c60
mov rbx, rax
test rax, rax
je 0x18006791f
or dword [rax + 8], 1
lea r9, [rax + 0x10]
movzx ecx, word [r15 + 2]
mov r8, r12
or ecx, 5
mov dword [rsp + 0x28], 0x41e
mov dword [rsp + 0x20], ecx
xor edx, edx
mov rcx, qword [r12]
call fcn.180010dd0
mov r15d, eax
mov r13d, 1
test eax, eax
jne 0x180067410
mov rcx, qword [rbx + 0x10]
xor r8d, r8d
mov edx, r13d
call fcn.180012280
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006406a
mov rax, qword [rsp + 0x48]
mov rcx, qword [rbx + 0x10]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x38], r14
test r14, r14
je 0x18006403c
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x44]
or r8d, 2
call fcn.18001baa0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x180064036
mov rax, qword [rbx + 0x30]
mov r9, r14
mov edx, dword [rbx + 0x44]
mov r8d, 4
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.180013cd0
mov r15d, eax
mov dword [rsp + 0x54], eax
mov byte [rbx + 4], 0
jmp 0x180064065
mov rax, qword [rbx + 0x30]
xor r9d, r9d
mov r8d, 4
mov qword [rsp + 0x20], rax
mov edx, r13d
mov dword [rbx + 0x44], r13d
call fcn.180013cd0
mov r15d, eax
mov dword [rsp + 0x54], eax
mov byte [rbx + 4], r13b
mov rsi, qword [rsp + 0x78]
mov rax, qword [rsp + 0x48]
xor edi, edi
mov ecx, edi
cmp word [rax + 2], 8
mov eax, 4
cmovne ecx, eax
mov eax, dword [rbx + 8]
and eax, 0xfffffffb
or ecx, eax
mov dword [rbx + 8], ecx
test r15d, r15d
jne 0x1800675e4
mov byte [rbx + 2], 1
jmp 0x180061b2f
mov r15, qword [rsp + 0x48]
mov r9b, 1
mov rcx, rsi
mov r8d, dword [r15 + 8]
mov edx, dword [r15 + 4]
call fcn.180060c60
test rax, rax
je 0x18006791f
mov rcx, qword [r15 + 0x10]
mov r8, rax
mov qword [rax + 0x38], rcx
mov rcx, r12
mov edx, dword [r15 + 0xc]
call fcn.180094a80
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
jmp 0x180061b2f
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
mov edx, 1
test rcx, rcx
je 0x1800621d1
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rax, qword [rsp + 0x48]
mov r9b, 3
mov rcx, rsi
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.180060c60
test rax, rax
je 0x18006791f
mov r13, qword [rsp + 0x48]
mov byte [rax + 2], 1
mov ecx, dword [r13 + 8]
mov dword [rax + 0x24], ecx
lea rcx, [0x1800ffb28]
mov qword [rax + 0x30], rcx
mov byte [rax + 4], 1
jmp 0x180061b34
mov rdx, qword [rsi + 0x78]
mov rcx, rsi
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.18002c6b0
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov qword [rax + rcx*8], rdi
jmp 0x180061b2f
mov rax, qword [rsi + 0x78]
mov r12d, edi
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [r15 + 4]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi + 4], 0
mov word [rsi + 2], 0
mov dword [rsi + 0x20], edi
je 0x1800642eb
movsxd rax, dword [r15 + 0xc]
imul rdi, rax, 0x38
add rdi, r11
movzx r14d, word [rdi + 0x14]
movzx eax, r14b
and al, 0x2e
cmp al, 2
jne 0x1800641ec
xor edx, edx
mov rcx, rdi
call fcn.180060df0
mov rcx, rdi
call fcn.18000ad50
movzx ecx, word [rdi + 0x14]
mov r15, rax
mov word [rdi + 0x14], r14w
test cl, 0x24
jne 0x1800642b9
test cl, 8
jne 0x180064297
test cl, 1
jne 0x180066b2e
cmp ebx, 0x17
jae 0x180066b2e
mov rcx, qword [rsi + 0x30]
lea rdx, [rbp - 0x68]
call fcn.180014a50
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x180067401
xor edi, edi
cmp dword [rbp - 0x68], edi
jne 0x1800665e1
mov r11, qword [rsp + 0x58]
test r12d, r12d
mov r12, qword [rbp - 0x80]
mov edx, 1
mov r10d, dword [rsp + 0x50]
je 0x180067125
add qword [rsp + 0x48], 0x18
lea rcx, [0x180000000]
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
movsd xmm1, qword [rdi]
mov rcx, r15
call fcn.18002f1f0
test eax, eax
jle 0x1800642b0
test bl, 1
jne 0x1800642b9
dec ebx
jmp 0x1800642b9
jns 0x1800642b9
test bl, 1
je 0x1800642b9
inc ebx
mov rcx, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
lea r9, [rbp - 0x68]
xor r8d, r8d
mov rdx, r15
call fcn.180014a70
mov qword [rsi + 0x50], r15
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180067401
xor r13d, r13d
jmp 0x18006436d
mov rax, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
mov r13d, 0
lea r8, [rbp - 0x68]
mov ecx, 0xffffffff
mov r12d, r13d
movzx r14d, byte [rax + 3]
mov rax, qword [rsi + 0x38]
and r14b, 2
mov qword [rbp - 0x58], rax
movzx eax, word [r15 + 0x10]
setne r12b
mov word [rbp - 0x3c], ax
lea eax, [rbx - 1]
test al, 1
mov byte [rbp - 0x36], r13b
mov eax, edx
lea rdx, [rbp - 0x58]
cmovne eax, ecx
mov byte [rbp - 0x3a], al
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp - 0x50], rcx
mov rcx, qword [rdi]
call fcn.180014d70
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x180067401
test r14b, r14b
je 0x18006436d
cmp byte [rbp - 0x36], r13b
je 0x180064240
mov eax, dword [rbp - 0x68]
cmp ebx, 0x17
jl 0x1800643d0
test eax, eax
js 0x18006438a
jne 0x180064380
cmp ebx, 0x18
je 0x18006438a
xor edi, edi
mov dword [rbp - 0x68], edi
jmp 0x18006424b
mov dword [rbp - 0x68], r13d
xor edx, edx
mov rcx, qword [rdi]
call fcn.180015490
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x180064240
cmp eax, 0x65
jne 0x180067401
mov r13, qword [rsp + 0x48]
xor edi, edi
mov r8, qword [rsp + 0x60]
mov edx, 1
mov r15d, edi
mov dword [rsp + 0x54], edi
mov dword [rbp - 0x68], edx
jmp 0x1800621d1
test eax, eax
jg 0x1800643eb
jne 0x1800643db
cmp ebx, 0x15
je 0x1800643eb
mov rcx, qword [rdi]
call fcn.1800152a0
mov dword [rbp - 0x68], eax
jmp 0x180064240
mov dword [rbp - 0x68], r13d
xor edx, edx
mov rcx, qword [rdi]
call fcn.180015640
jmp 0x180064398
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0x1c]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi + 0x30]
cmp byte [rax], 0
jne 0x180061a6e
mov rax, qword [rdi + 0x38]
mov rcx, r13
mov qword [rbp - 0x58], rax
mov byte [rbp - 0x3a], 0
movzx eax, word [rcx + 0x28]
mov ebx, dword [rcx + 4]
mov word [rbp - 0x3c], ax
movsxd rax, dword [rcx + 0x24]
imul rcx, rax, 0x38
add rcx, r11
xor eax, eax
mov qword [rbp - 0x50], rcx
mov dword [rbp], eax
nop dword [rax]
lea r9, [rbp]
mov rdx, rdi
lea r8, [rbp - 0x58]
mov rcx, r12
call fcn.180030170
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
mov eax, dword [rbp]
test eax, eax
jle 0x180064482
cmp word [r13 + 2], r15w
je 0x1800644bf
test eax, eax
jns 0x180066b38
test ebx, ebx
jle 0x18006711e
mov rcx, qword [rdi + 0x30]
xor edx, edx
dec ebx
call fcn.180015490
mov r15d, eax
test eax, eax
je 0x180064450
cmp eax, 0x65
jne 0x18006740a
xor edi, edi
mov r15d, edi
mov dword [rsp + 0x54], edi
add r13, 0x18
jmp 0x1800621c7
xor edi, edi
add r13, 0x18
jmp 0x1800621c7
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
movzx ecx, word [rdx + 0xc]
mov eax, dword [rax + 8]
cmp ecx, eax
jge 0x1800644f9
mov word [rdx + 0xc], ax
mov r13, qword [rsp + 0x48]
jmp 0x1800617ae
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
cmp ecx, eax
lea rcx, [0x180000000]
jle 0x180062b2e
mov word [rdx + 0xc], ax
mov edx, 1
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je case.0x18006137d.9
cmp byte [rdx + 2], 0
je 0x1800644ef
jmp case.0x18006137d.9
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r13 + 0x10]
jge case.0x18006137d.89
mov r15, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r15 + 0x10]
add rcx, r11
mov word [rbp - 0x3c], ax
mov qword [rbp - 0x50], rcx
test ax, ax
je 0x1800645cc
mov rax, qword [rbx + 0x38]
lea rsi, [rbx + 0x24]
mov qword [rbp - 0x58], rax
lea rdx, [rbp - 0x58]
mov byte [rbp - 0x3a], 0
mov r8, rsi
mov rcx, qword [rbx + 0x30]
call fcn.180014d70
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x18006463b
mov eax, 0x400
test word [rcx + 0x14], ax
je 0x1800645e4
call fcn.180056760
test eax, eax
jne 0x18006791f
mov rcx, qword [rbx + 0x38]
call fcn.18002eaa0
mov rdi, rax
test rax, rax
je 0x18006791f
mov rdx, qword [rbp - 0x50]
mov r9, rax
mov rcx, qword [rbx + 0x38]
mov r8, qword [rdx + 8]
mov edx, dword [rdx + 0x10]
call fcn.18002eb00
mov byte [rdi + 0x1e], 0
lea rsi, [rbx + 0x24]
mov rcx, qword [rbx + 0x30]
mov r8, rsi
mov rdx, rdi
call fcn.180014d70
mov rdx, rdi
mov dword [rsp + 0x54], eax
mov rcx, r12
mov r15d, eax
call fcn.180008680
xor edi, edi
test r15d, r15d
jne 0x180067405
mov ecx, dword [rsi]
test ecx, ecx
mov byte [rbx + 3], r15b
setne al
mov dword [rbx + 0x20], edi
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax]
cmp al, 0x1d
jne 0x1800646a2
mov r13, qword [rsp + 0x48]
mov edx, 1
mov r8, qword [rsp + 0x60]
test ecx, ecx
je 0x1800621d1
mov rsi, qword [rsp + 0x78]
lea rcx, [0x180000000]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
test ecx, ecx
jne 0x1800665e1
cmp al, 0x1b
jne 0x1800646e5
movzx edx, word [rbp - 0x3c]
mov rcx, rdi
test rdx, rdx
je 0x180067119
mov rax, qword [rbp - 0x50]
add rax, 0x14
test byte [rax], 1
jne 0x1800665e1
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x1800646c6
mov rsi, qword [rsp + 0x78]
jmp 0x180061b2f
mov r13, qword [rsp + 0x48]
mov edx, 1
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
cmp byte [r13], 0x1a
jne 0x18006715a
movzx eax, word [r13 + 0x10]
lea rcx, [0x180000000]
mov rsi, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
mov word [rbx + 0xc], ax
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
jne case.0x18006137d.31
movups xmm0, xmmword [rcx]
movzx r8d, r9b
mov dl, 0x43
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp - 0x58], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rbp - 0x48], xmm1
movsd xmm1, qword [rcx + 0x30]
lea rcx, [rbp - 0x58]
movups xmmword [rbp - 0x38], xmm0
movsd qword [rbp - 0x28], xmm1
call fcn.180060f00
test byte [rbp - 0x44], 4
je 0x1800665e1
mov rdi, qword [rbp - 0x58]
jmp 0x180064799
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r11]
mov rax, qword [rsp + 0x48]
lea r9, [rbp - 0x14]
xor r8d, r8d
mov rdx, rdi
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
xor eax, eax
mov rcx, qword [rbx + 0x30]
mov dword [rbp - 0x14], eax
call fcn.180014a70
mov r13, qword [rsp + 0x48]
mov r15d, eax
mov qword [rbx + 0x50], rdi
xor edi, edi
mov dword [rbx + 0x20], edi
mov word [rbx + 2], 0
mov dword [rsp + 0x54], eax
mov eax, dword [rbp - 0x14]
mov dword [rbx + 0x24], eax
cmp dword [rbp - 0x14], edi
je 0x180064803
cmp dword [r13 + 8], edi
jne 0x1800621c7
mov ecx, 0x14d0
call fcn.180007730
mov r15d, eax
mov dword [rsp + 0x54], eax
test r15d, r15d
jne 0x18006740a
jmp 0x180061b34
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x18006483f
mov rcx, rdx
call fcn.180061090
mov r8, qword [rsp + 0x60]
mov rdx, rax
jmp 0x180064845
mov word [rdx + 0x14], 4
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [rbx + 4]
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov rcx, qword [rax + rcx*8]
mov r10d, dword [rsp + 0x50]
mov rax, qword [rcx + 0x18]
mov qword [rdx], rax
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x1800617ae
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
mov qword [rbp - 0x70], rdi
mov dword [rbp - 0x78], edi
movsxd rax, dword [rbx + 8]
imul rsi, rax, 0x38
mov eax, 0x9000
add rsi, qword [r14 + 0x68]
test word [rsi + 0x14], ax
je 0x1800648bc
mov rcx, rsi
call fcn.180061090
mov rsi, rax
jmp 0x1800648c2
mov word [rsi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov rax, qword [r14 + 0x78]
mov rdi, qword [rax + rcx*8]
test byte [rdi + 8], 2
jne 0x180064932
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp - 0x78]
call fcn.180014a50
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006796c
cmp dword [rbp - 0x78], eax
je 0x180064901
mov r13d, 1
mov qword [rbp - 0x70], r13
jmp 0x180064938
mov rcx, qword [rdi + 0x30]
call fcn.180013dc0
movabs rcx, 0x7fffffffffffffff
mov qword [rbp - 0x70], rax
mov r13d, 1
cmp rax, rcx
jl 0x180064929
or dword [rdi + 8], 2
jmp 0x180064938
inc rax
mov qword [rbp - 0x70], rax
jmp 0x180064938
mov r13d, 1
movsxd rax, dword [rbx + 0xc]
test eax, eax
je 0x1800649ce
mov rcx, qword [r14 + 0x100]
test rcx, rcx
je 0x18006497a
mov rax, qword [rcx + 8]
test rax, rax
je 0x18006496c
nop dword [rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x180064960
movsxd rax, dword [rbx + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rcx + 0x18]
jmp 0x180064983
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x58]
mov rcx, rbx
call fcn.18000ad50
movzx ecx, word [rbx + 0x14]
mov edx, 0xf244
and cx, dx
mov qword [rbx], rax
or cx, 4
mov word [rbx + 0x14], cx
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
je 0x180064a2d
test byte [rdi + 8], 2
jne 0x180064a2d
lea rcx, [rax + 1]
mov rax, qword [rbp - 0x70]
cmp rax, rcx
jge 0x1800649cb
mov rax, rcx
mov qword [rbp - 0x70], rcx
mov qword [rbx], rax
test byte [rdi + 8], 2
je 0x180064a3b
xor eax, eax
mov ebx, eax
nop dword [rax + rax]
lea rdx, [rbp - 0x70]
mov ecx, 8
call fcn.180056160
mov rdx, qword [rbp - 0x70]
lea r9, [rbp - 0x78]
movabs rax, 0x3fffffffffffffff
xor r8d, r8d
and rdx, rax
inc rdx
mov qword [rbp - 0x70], rdx
mov rcx, qword [rdi + 0x30]
call fcn.180014a70
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x180064a33
cmp dword [rbp - 0x78], eax
jne 0x180064a3b
inc ebx
cmp ebx, 0x64
jl 0x1800649e0
mov r15d, 0xd
mov rsi, r14
jmp 0x180067410
mov r13, qword [rsp + 0x48]
xor eax, eax
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov dword [rdi + 0x20], eax
mov byte [rdi + 3], 0
mov rax, qword [rbp - 0x70]
mov qword [rsi], rax
mov rsi, r14
jmp 0x1800617a7
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 8]
movsxd rcx, dword [r15 + 4]
imul rdx, rax, 0x38
mov rax, qword [rsi + 0x78]
add rdx, r11
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
cmp byte [r15 + 1], 0xfb
mov r8, qword [rcx + r11]
mov qword [rbp - 0x50], r8
jne 0x180064ac1
cmp qword [r12 + 0x130], 0
je 0x180064ac1
movsx rcx, byte [rbx + 1]
mov rax, qword [r12 + 0x20]
mov rdi, qword [r15 + 0x10]
shl rcx, 5
xor r14d, r14d
mov rsi, qword [rcx + rax]
jmp 0x180064ac7
xor r14d, r14d
mov esi, r14d
test byte [r15 + 2], 1
je 0x180064ae3
mov rax, qword [rsp + 0x78]
inc qword [rax + 0x38]
test byte [r15 + 2], 0x20
je 0x180064ae3
mov qword [r12 + 0x38], r8
mov rax, qword [rdx + 8]
movzx r8d, word [r15 + 2]
mov qword [rbp - 0x48], rax
mov eax, dword [rdx + 0x10]
mov dword [rbp - 0x34], eax
test r8b, 0x10
je 0x180064b02
mov r9d, dword [rbx + 0x24]
jmp 0x180064b05
mov r9d, r14d
mov eax, 0x400
test word [rdx + 0x14], ax
je 0x180064b17
mov eax, dword [rdx]
mov dword [rbp - 0x30], eax
jmp 0x180064b1b
mov dword [rbp - 0x30], r14d
mov qword [rbp - 0x58], r14
lea rdx, [rbp - 0x58]
mov rcx, qword [rbx + 0x30]
and r8d, 0x8a
call fcn.18001a520
mov dword [rsp + 0x54], eax
mov r15d, eax
mov byte [rbx + 3], 0
mov dword [rbx + 0x20], r14d
test eax, eax
jne 0x180067405
test rdi, rdi
je 0x180067119
mov rax, qword [rsp + 0x48]
mov edx, 0x12
mov rcx, qword [rbp - 0x50]
mov r8, rsi
mov r9, qword [rdi]
mov qword [rsp + 0x20], rcx
test byte [rax + 2], 4
mov eax, 0x17
mov rcx, qword [r12 + 0x128]
cmovne edx, eax
mov rax, qword [r12 + 0x130]
call qword [case.0x180005c07.0]
jmp 0x180061858
mov r15, qword [rsp + 0x48]
mov rcx, qword [rsi + 0x78]
movsxd rax, dword [r15 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r15 + 8]
mov rdx, qword [rcx + rax*8]
movsxd rax, dword [r15 + 0xc]
test eax, eax
je 0x180064bbe
imul rcx, rax, 0x38
mov r8, qword [rcx + r11]
jmp 0x180064bc1
mov r8, rdi
mov rdx, qword [rdx + 0x30]
mov rcx, qword [r9 + 0x30]
call fcn.18001aaa0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
jmp 0x180061b2f
mov r15, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
cmp byte [r15 + 1], 0xfb
movsxd rcx, dword [r15 + 4]
mov r14d, dword [r15 + 8]
mov rbx, qword [rax + rcx*8]
jne 0x180064c3b
cmp qword [r12 + 0x130], 0
je 0x180064c3b
movsx rcx, byte [rbx + 1]
mov rax, qword [r12 + 0x20]
mov rdi, qword [r15 + 0x10]
shl rcx, 5
test byte [r15 + 2], 2
mov rsi, qword [rcx + rax]
je 0x180064c3e
cmp byte [rbx + 4], 0
je 0x180064c3e
mov rcx, qword [rbx + 0x30]
call fcn.180013dc0
mov qword [rbx + 0x50], rax
jmp 0x180064c3e
mov rsi, rdi
movzx edx, byte [r15 + 2]
mov rcx, qword [rbx + 0x30]
call fcn.18001afe0
mov r15d, eax
mov dword [rsp + 0x54], eax
xor eax, eax
mov qword [rbx + 0x20], rax
test r15d, r15d
jne 0x180067405
test r14b, 1
je 0x180067119
mov rax, qword [rsp + 0x78]
inc qword [rax + 0x38]
mov rax, qword [r12 + 0x130]
test rax, rax
je 0x180067119
test rdi, rdi
je 0x180067119
test byte [rdi + 0x30], 0x80
jne 0x180067119
mov rcx, qword [rbx + 0x50]
mov r8, rsi
mov r9, qword [rdi]
mov edx, 9
mov qword [rsp + 0x20], rcx
mov rcx, qword [r12 + 0x128]
call qword [case.0x180005c07.0]
jmp 0x180061858
mov rdx, qword [rsi + 0x38]
mov rcx, r12
call fcn.180030290
mov qword [rsi + 0x38], rdi
jmp 0x180061b34
mov r15, qword [rsp + 0x48]
lea r9, [rbp + 8]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r15 + 4]
mov r8d, dword [r15 + 0x10]
mov rcx, qword [rax + rcx*8]
movsxd rax, dword [r15 + 0xc]
imul rdx, rax, 0x38
mov dword [rbp + 8], edi
add rdx, r11
call fcn.180097540
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
mov r13, qword [rsp + 0x48]
cmp dword [rbp + 8], eax
jmp 0x1800629ce
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [rsi + 0x78]
add rdx, r11
mov rcx, qword [rax + rcx*8]
call fcn.180097470
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0xc]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x20], edi
jmp 0x180061b2f
mov r15, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, r15
call fcn.1800610c0
mov rcx, qword [rsi + 0x78]
mov rbx, rax
movsxd rdx, dword [r15 + 4]
mov rdx, qword [rcx + rdx*8]
mov rdi, qword [rdx + 0x30]
mov rcx, rdi
call fcn.180013de0
cmp eax, dword [r12 + 0x88]
ja 0x1800675fa
lfence
mov r8, rbx
mov edx, eax
mov rcx, rdi
call fcn.180057a20
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
mov r13, qword [rsp + 0x48]
cmp dword [r13 + 0xc], eax
jne 0x18006711e
mov eax, 0x4000
test word [rbx + 0x14], ax
je 0x18006711e
mov rcx, rbx
call fcn.1800566d0
test eax, eax
jne 0x18006791f
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1800617a7
mov rbx, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, rbx
call fcn.1800610c0
movsxd rdx, dword [rbx + 4]
mov rdi, rax
mov rcx, qword [rsi + 0x78]
mov rbx, qword [rcx + rdx*8]
cmp byte [rbx + 2], 0
je 0x180064e34
mov edx, 1
mov word [rax + 0x14], dx
jmp 0x180061a54
cmp byte [rbx + 3], 0
je 0x180064e5f
mov rax, qword [rbx + 0x50]
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov qword [rbp + 0x20], rax
mov qword [rdi], rax
jmp 0x1800617a7
cmp byte [rbx], 2
jne 0x180064eb8
mov rcx, qword [rbx + 0x30]
lea rdx, [rbp + 0x20]
mov rbx, qword [rcx]
mov rax, qword [rbx]
mov rax, qword [rax + 0x60]
call qword [case.0x180005c07.0]
mov rdx, rbx
mov rcx, rsi
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.180030370
test r15d, r15d
jne 0x18006740a
mov rax, qword [rbp + 0x20]
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov qword [rdi], rax
jmp 0x1800617a7
mov rcx, rbx
call fcn.18002e7f0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
cmp byte [rbx + 2], al
je 0x180064ee2
mov edx, 1
mov word [rdi + 0x14], dx
jmp 0x180061a54
mov rcx, qword [rbx + 0x30]
call fcn.180013dc0
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov qword [rbp + 0x20], rax
mov qword [rdi], rax
jmp 0x1800617a7
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rax, qword [rax + rdx*8]
test rax, rax
jne 0x180064f52
mov r9b, 3
mov r8d, 1
mov rcx, rsi
call fcn.180060c60
test rax, rax
je 0x18006791f
or dword [rax + 8], 8
lea rcx, [0x1800ffb28]
mov qword [rax + 0x30], rcx
mov dword [rax + 0x24], edi
mov byte [rax + 4], 1
cmp byte [rax], 0
mov byte [rax + 2], 1
mov dword [rax + 0x20], edi
jne 0x180067119
mov rcx, qword [rax + 0x30]
call fcn.18000f0b0
jmp 0x180061b2f
mov rax, qword [rsp + 0x48]
xor r14d, r14d
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
mov rsi, qword [rdi + 0x30]
mov dword [rbp - 0x18], r14d
cmp bl, 0x89
jne 0x180064fa8
mov rcx, rsi
mov dword [rdi + 0x24], 0xffffffff
call fcn.180013db0
test eax, eax
jne 0x180067119
cmp byte [rsi], r14b
jne 0x180064fcb
test byte [rsi + 1], 8
je 0x180064fcb
mov dword [rbp - 0x18], r14d
mov word [rdi + 2], r14w
mov dword [rdi + 0x20], r14d
xor edi, edi
mov r15d, edi
mov dword [rsp + 0x54], edi
jmp 0x180064ff8
lea rdx, [rbp - 0x18]
mov rcx, rsi
call fcn.1800149e0
mov r15d, eax
mov dword [rsp + 0x54], eax
movzx eax, byte [rbp - 0x18]
mov byte [rdi + 2], al
mov byte [rdi + 3], r14b
mov dword [rdi + 0x20], r14d
test r15d, r15d
jne 0x180067405
xor edi, edi
mov r13, qword [rsp + 0x48]
cmp dword [r13 + 8], r14d
jle 0x18006711e
mov edx, 1
mov r8, qword [rsp + 0x60]
cmp dword [rbp - 0x18], r14d
jne 0x1800621d1
mov rsi, qword [rsp + 0x78]
jmp 0x1800629de
mov rax, qword [rsp + 0x48]
lea rdx, [rbp - 0x10]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x30]
mov rcx, rbx
call fcn.180014990
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
cmp dword [rbp - 0x10], eax
jne 0x1800665e1
mov rcx, rbx
call fcn.1800152b0
test rax, rax
js 0x180065096
lfence
mov rcx, rax
call fcn.180031b10
mov r13, qword [rsp + 0x48]
movsx ecx, ax
cmp ecx, dword [r13 + 0xc]
jge 0x18006509b
mov r8, qword [rsp + 0x60]
mov edx, 1
mov dword [rbp - 0x10], edx
jmp 0x1800621d1
mov r13, qword [rsp + 0x48]
cmp dword [rbp - 0x10], 0
jmp 0x1800629ce
inc dword [rsi + 0xd4]
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov dword [rbp - 0x60], edx
cmp byte [rbx], 1
jne 0x1800650d8
lea rdx, [rbp - 0x60]
mov rcx, rbx
call fcn.1800972a0
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x18006510c
mov rdi, qword [rbx + 0x30]
mov rcx, rdi
call fcn.180014570
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x180065134
xor eax, eax
mov rcx, rdi
mov dword [rbp - 0x60], eax
call fcn.180014770
mov r15d, eax
mov dword [rsp + 0x54], eax
xor edi, edi
mov byte [rbx + 3], 0
mov dword [rbx + 0x20], edi
test r15d, r15d
jne 0x18006740a
mov r13, qword [rsp + 0x48]
movzx eax, byte [rbp - 0x60]
mov byte [rbx + 2], al
cmp dword [r13 + 8], r15d
jle 0x18006711e
cmp dword [rbp - 0x60], r15d
jmp 0x1800629ce
cmp eax, 0x10
jne 0x180065103
xor edi, edi
mov eax, 1
mov dword [rbp - 0x60], eax
mov r15d, edi
mov dword [rsp + 0x54], edi
jmp 0x180065105
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r12
mov rdx, rbx
call fcn.180097330
jmp 0x1800651a8
mov r15, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r15 + 4]
mov edx, dword [r15 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.180015640
jmp 0x1800651a8
mov r15, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r15 + 4]
mov edx, dword [r15 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.180015490
mov r15d, eax
mov dword [rsp + 0x54], eax
mov dword [rbx + 0x20], edi
test eax, eax
jne 0x1800651ce
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x48]
movzx eax, word [rax + 2]
inc dword [rsi + rax*4 + 0xcc]
jmp 0x180066cc5
cmp r15d, 0x65
jne 0x18006740a
mov r15d, edi
mov dword [rsp + 0x54], edi
mov byte [rbx + 2], 1
jmp 0x180066ce3
mov r15, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r15 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r15 + 8]
imul rbx, rax, 0x38
add rbx, r11
test byte [r15 + 2], 1
je 0x18006520f
inc qword [rsi + 0x38]
mov eax, 0x400
test word [rbx + 0x14], ax
je 0x180065237
mov rcx, rbx
call fcn.180056760
mov r15d, eax
test eax, eax
jne 0x18006740a
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rax, dword [rbx + 0x10]
movzx r8d, word [r15 + 2]
mov qword [rbp - 0x50], rax
mov rax, qword [rbx + 8]
mov qword [rbp - 0x58], rax
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r15 + 0x10]
add rcx, r11
mov word [rbp - 0x38], ax
mov qword [rbp - 0x40], rcx
test r8b, 0x10
je 0x180065270
mov r9d, dword [rdi + 0x24]
jmp 0x180065275
xor eax, eax
mov r9d, eax
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp - 0x58]
and r8d, 0x8a
call fcn.18001a520
mov r15d, eax
mov dword [rsp + 0x54], eax
xor eax, eax
mov dword [rdi + 0x20], eax
test r15d, r15d
jne 0x18006740a
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1800617a7
mov rbx, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x1800652f2
mov rcx, rbx
call fcn.180056760
mov r15d, eax
test eax, eax
jne 0x18006740a
mov rdx, rbx
mov rcx, rdi
call fcn.180095fe0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1800617a7
mov r15, qword [rsp + 0x48]
lea r8, [rbp + 0x10]
mov rax, qword [rsi + 0x78]
lea rdx, [rbp - 0x58]
movsxd rcx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
mov rdi, qword [rbx + 0x30]
mov qword [rbp - 0x58], rax
movzx eax, word [r15 + 0xc]
mov word [rbp - 0x3c], ax
movsxd rax, dword [r15 + 8]
imul rcx, rax, 0x38
mov byte [rbp - 0x3a], 0
add rcx, r11
mov qword [rbp - 0x50], rcx
mov rcx, rdi
call fcn.180014d70
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
cmp dword [rbp + 0x10], eax
jne 0x1800653ac
mov dl, 4
mov rcx, rdi
call fcn.18001afe0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
mov r13, qword [rsp + 0x48]
xor edi, edi
mov qword [rbx + 0x20], rdi
jmp 0x180061b34
mov r13, qword [rsp + 0x48]
cmp word [r13 + 2], 0
je 0x1800653c9
mov rcx, r12
call fcn.1800353b0
test eax, eax
je 0x180067614
xor edi, edi
mov qword [rbx + 0x20], rdi
jmp 0x180061b34
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x180065407
mov rcx, rbx
call fcn.18002e790
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
jmp 0x18006540e
mov r15d, edi
mov dword [rsp + 0x54], edi
cmp byte [rbx + 2], 0
jne 0x18006548d
mov qword [rbp + 0x28], rdi
lea r8, [rbp + 0x28]
mov rdx, qword [rbx + 0x30]
mov rcx, r12
call fcn.18002ff70
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x8d
jne 0x180065476
movsxd rcx, dword [rax + 0xc]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
mov byte [rdx + 2], r15b
mov rax, qword [rbp + 0x28]
mov qword [rdx + 0x50], rax
mov rax, qword [rsp + 0x48]
mov byte [rdx + 3], 1
mov dword [rdx + 0x20], edi
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x28], rbx
jmp 0x180061b2f
mov rdx, rax
mov rcx, rsi
call fcn.1800610c0
mov rcx, qword [rbp + 0x28]
mov qword [rax], rcx
jmp 0x180061b2f
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
call fcn.180057190
jmp 0x180061b2f
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x180065e09
call fcn.18002e720
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
jmp 0x180061b2f
mov r15, qword [rsp + 0x48]
cmp bl, 0x2a
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r15 + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x38]
mov qword [rbp - 0x58], rax
movzx eax, word [r15 + 0x10]
mov word [rbp - 0x3c], ax
sbb al, al
mov byte [rbp - 0x3a], al
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp - 0x50], rcx
mov rbx, qword [rdx + 0x30]
mov rcx, rbx
call fcn.180013d60
mov edi, dword [rbx + 0x40]
lea rax, [rdi - 1]
cmp rax, 0x7ffffffe
ja 0x180067632
xor r8d, r8d
lea rcx, [rbp + 0x88]
mov rdx, r12
call fcn.180057170
lea r8, [rbp + 0x88]
mov edx, edi
mov rcx, rbx
call fcn.180057a20
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
mov rdx, qword [rbp + 0x90]
lea r8, [rbp - 0x58]
mov ecx, dword [rbp + 0x98]
xor r9d, r9d
call fcn.18002f330
lea rcx, [rbp + 0x88]
mov ebx, eax
call fcn.180056c90
mov r13, qword [rsp + 0x48]
lea ecx, [rbx + 1]
mov r8, qword [rsp + 0x60]
neg ebx
mov edx, 1
test byte [r13], 1
cmovne ebx, ecx
xor edi, edi
test ebx, ebx
jg 0x1800621d1
jmp 0x1800629de
mov r15, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, r15
call fcn.1800610c0
mov r13d, 1
mov rbx, rax
mov word [rax + 0x14], r13w
mov ecx, dword [r12 + 0xe8]
inc ecx
cmp dword [r12 + 0xdc], ecx
jg 0x18006766f
movsxd rdi, dword [r15 + 0xc]
lea r8, [rbp - 0xc]
mov rcx, qword [r12 + 0x20]
xor eax, eax
mov edx, dword [r15 + 4]
mov r9, rdi
shl r9, 5
mov dword [rbp - 0xc], eax
mov rcx, qword [r9 + rcx + 8]
call fcn.18001c280
mov r15d, eax
mov dword [rsp + 0x54], eax
mov word [rbx + 0x14], 4
movsxd rax, dword [rbp - 0xc]
mov qword [rbx], rax
test r15d, r15d
jne 0x180067410
mov r8d, dword [rbp - 0xc]
test r8d, r8d
je 0x180067119
mov rax, qword [rsp + 0x48]
mov edx, edi
mov rcx, r12
mov r9d, dword [rax + 4]
call fcn.1800396d0
mov r13, qword [rsp + 0x48]
inc dil
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov byte [rbp - 0x64], dil
jmp 0x1800617a7
mov r15, qword [rsp + 0x48]
lea r8, [rbp - 0x20]
mov rcx, qword [r12 + 0x20]
mov qword [rbp - 0x20], rdi
movsxd rax, dword [r15 + 8]
mov edx, dword [r15 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.18001bdb0
mov r13, qword [rsp + 0x48]
mov r15d, eax
mov r11, qword [rsp + 0x58]
mov dword [rsp + 0x54], eax
cmp dword [r13 + 0xc], 0
je 0x1800656cc
mov rdx, qword [rbp - 0x20]
add qword [rsi + 0x38], rdx
movsxd rax, dword [r13 + 0xc]
test eax, eax
jle 0x1800656cc
imul rcx, rax, 0x38
add qword [rcx + r11], rdx
test r15d, r15d
jne 0x18006740a
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
jmp 0x1800617ae
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x180065711
mov rdx, qword [rcx + 0x30]
mov rcx, r12
call fcn.180095090
jmp 0x180061b2f
mov rcx, qword [rcx + 0x30]
call fcn.18001be90
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
jmp 0x180061b2f
mov r15, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, r15
call fcn.1800610c0
movsxd rcx, dword [r15 + 4]
lea rdx, [rbp + 4]
mov r8d, dword [r15 + 0xc]
mov rbx, rax
shl rcx, 5
add rcx, qword [r12 + 0x20]
mov dword [rbp + 4], edi
mov rcx, qword [rcx + 8]
call fcn.18001baa0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
mov eax, dword [rbp + 4]
mov qword [rbx], rax
jmp 0x180061b2f
mov rax, qword [rsp + 0x48]
xor r9d, r9d
inc byte [r12 + 0x70]
xor r8d, r8d
mov rcx, r12
mov qword [rsp + 0x20], rdi
mov rdx, qword [rax + 0x10]
call fcn.1800078d0
dec byte [r12 + 0x70]
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18006740a
jmp 0x180061b2f
mov r15, qword [rsp + 0x48]
mov rcx, qword [r12 + 0x20]
cmp qword [r15 + 0x10], 0
movsxd rbx, dword [r15 + 4]
jne 0x180065811
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.180045240
and dword [r12 + 0x2c], 0xffffffef
lea r8, [rsi + 0xa8]
movzx r9d, word [r15 + 2]
mov edx, ebx
mov rcx, r12
call fcn.180009560
or dword [r12 + 0x2c], 1
mov r15d, eax
and dword [rsi + 0xc0], 0xfffffffc
mov dword [rsp + 0x54], eax
jmp 0x1800658d9
mov dword [rbp - 0x48], ebx
lea rax, [rsi + 0xa8]
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x40], edi
shl rbx, 5
mov rcx, qword [rcx + rbx + 8]
call fcn.180010ad0
mov r8, qword [r12 + 0x20]
lea r9, str.sqlite_master
mov dword [rbp - 0x38], eax
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
mov rax, qword [r15 + 0x10]
mov rcx, r12
mov qword [rsp + 0x20], rax
mov r8, qword [r8 + rbx]
call fcn.18004e920
mov rbx, rax
mov rcx, r12
test rax, rax
je 0x180067681
lea r9, [rbp - 0x58]
mov byte [r12 + 0xc5], 1
lea r8, [fcn.1800092a0]
mov dword [rbp - 0x44], edi
mov rdx, rax
mov dword [rbp - 0x3c], edi
mov qword [rsp + 0x20], rdi
call fcn.1800078d0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800658c5
mov r15d, dword [rbp - 0x44]
mov dword [rsp + 0x54], r15d
test r15d, r15d
jne 0x1800658c5
cmp dword [rbp - 0x3c], r15d
jne 0x1800658c5
mov ecx, 0x1acc
call fcn.180007730
mov r15d, eax
mov dword [rsp + 0x54], eax
mov rdx, rbx
mov rcx, r12
call fcn.180008680
mov byte [r12 + 0xc5], 0
test r15d, r15d
je 0x180061b2f
mov rcx, r12
call fcn.180034640
mov rbx, qword [rsp + 0x68]
cmp r15d, 7
je 0x180067924
mov eax, 0xb
mov r13d, 1
jmp 0x18006741a
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov edx, dword [rax + 4]
call fcn.18005fbe0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
jmp 0x180061b2f
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.180034f90
jmp 0x180061b2f
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1800340e0
jmp 0x180061b2f
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.18006a7c0
jmp 0x180061b2f
mov r15, qword [rsp + 0x48]
lea r9, [rbp + 0x40]
mov rdx, qword [r12 + 0x20]
mov qword [rsp + 0x30], r9
lea r9, [rbp + 0xc]
mov qword [rsp + 0x28], r9
movsxd rax, dword [r15 + 0xc]
mov r8, qword [r15 + 0x10]
mov r9d, dword [r15 + 8]
add r8, 4
imul rdi, rax, 0x38
movsxd rax, dword [r15 + 4]
imul rbx, rax, 0x38
movzx eax, word [r15 + 2]
add rdi, r11
shl rax, 5
add rbx, r11
mov ecx, dword [rdi]
mov rdx, qword [rax + rdx + 8]
inc ecx
mov dword [rsp + 0x20], ecx
mov rcx, r12
call fcn.18001d310
mov r15d, eax
mov dword [rsp + 0x54], eax
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x1800659f6
mov rcx, rbx
call fcn.180056b60
mov r13d, 1
jmp 0x180065a01
mov r13d, 1
mov word [rbx + 0x14], r13w
mov eax, dword [rbp + 0xc]
test eax, eax
je 0x180065a3b
test r15d, r15d
jne 0x18006768b
dec eax
mov r9b, 1
movsxd rcx, eax
mov r8, 0xffffffffffffffff
sub qword [rdi], rcx
lea rax, [fcn.180008570]
mov rdx, qword [rbp + 0x40]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.180057590
movzx edx, byte [rsp + 0x40]
mov rcx, rbx
call fcn.180056430
jmp 0x180066ce3
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 0x14], 0x10
jne 0x180065a7e
mov rcx, rbx
call fcn.180057340
test eax, eax
jne 0x18006791f
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.1800a7250
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
jmp 0x1800617a7
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
test byte [rbx + 0x14], 0x10
je 0x180065aeb
mov rcx, qword [rbx + 8]
lea rdx, [rbp + 0x48]
call fcn.1800a76b0
test eax, eax
je 0x180065aeb
mov rax, qword [rsp + 0x48]
mov rdx, qword [rbp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
call fcn.180057240
jmp 0x180066ce3
mov rcx, rbx
call fcn.180057190
jmp 0x180066cc5
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 0x14], 0x10
jne 0x180065b2c
mov rcx, rbx
call fcn.180057340
test eax, eax
jne 0x18006791a
test esi, esi
je 0x180065b48
mov r8, qword [rdi]
mov edx, esi
mov rcx, qword [rbx + 8]
call fcn.1800a7730
test eax, eax
jne 0x180066b33
test esi, esi
js 0x180061858
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.1800a7250
jmp 0x180061858
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
mov r15, qword [rcx + 0x10]
imul r14, rax, 0x38
add r14, r11
cmp word [rcx + 2], 0
je 0x180065ba3
mov rax, qword [rsi + 0x100]
mov rcx, qword [r15 + 0x20]
test rax, rax
je 0x180065ba3
nop word [rax + rax]
cmp qword [rax + 0x30], rcx
je 0x1800672ac
mov rax, qword [rax + 8]
test rax, rax
jne 0x180065b90
mov eax, dword [r12 + 0xb0]
cmp dword [rsi + 0x110], eax
jge 0x180067699
test byte [r14 + 0x14], 0x10
jne 0x180065cc3
mov edx, dword [r15 + 0x10]
mov ecx, dword [r15 + 0xc]
add ecx, edx
test edx, edx
lea edi, [rcx + 1]
cmovne edi, ecx
lea eax, [rdi + 2]
imul ecx, eax, 7
mov eax, dword [r15 + 8]
add ecx, edx
add eax, 7
jns 0x180065be8
add eax, 7
sar eax, 3
lea esi, [rax + rcx*8]
mov rcx, r12
movsxd rdx, esi
call fcn.1800089a0
mov rbx, rax
test rax, rax
je 0x18006791a
mov rcx, r14
call fcn.180056c70
mov dword [r14 + 0x10], esi
lea rax, [0x18002bd00]
mov rsi, qword [rsp + 0x78]
movabs rcx, 0xaaaaaaaaaaaaaaab
mov qword [r14 + 0x30], rax
mov word [r14 + 0x14], 0x1010
mov qword [r14 + 8], rbx
mov dword [rbx + 0x58], edi
mov qword [rbx], rsi
mov eax, dword [r15 + 0x10]
mov dword [rbx + 0x5c], eax
mov rax, qword [rsp + 0x48]
sub rax, qword [rsp + 0x60]
sar rax, 3
imul rax, rcx
mov dword [rbx + 0x4c], eax
mov rax, qword [rsi + 0x68]
mov qword [rbx + 0x18], rax
mov eax, dword [rsi + 0x24]
mov dword [rbx + 0x54], eax
mov rax, qword [rsi + 0x78]
mov qword [rbx + 0x20], rax
mov eax, dword [rsi + 0x28]
mov dword [rbx + 0x48], eax
mov rax, qword [rsi + 0x88]
mov qword [rbx + 0x10], rax
mov eax, dword [rsi + 0x90]
mov dword [rbx + 0x50], eax
mov rax, qword [r15 + 0x20]
mov qword [rbx + 0x30], rax
movsxd rax, edi
xor edi, edi
add rax, 2
imul rcx, rax, 0x38
lea rax, [rbx + 0x70]
add rcx, rbx
cmp rax, rcx
je 0x180065cc7
nop dword [rax]
mov word [rax + 0x14], di
mov qword [rax + 0x18], r12
add rax, 0x38
cmp rax, rcx
jne 0x180065cb0
jmp 0x180065cc7
mov rbx, qword [r14 + 8]
inc dword [rsi + 0x110]
lea rdx, [rbx + 0x70]
mov rax, qword [rsi + 0x100]
mov qword [rbx + 8], rax
mov rax, qword [r12 + 0x38]
mov qword [rbx + 0x38], rax
mov rax, qword [rsi + 0x38]
mov qword [rbx + 0x60], rax
mov rax, qword [rsi]
mov qword [rsp + 0x58], rdx
mov rcx, qword [rax + 0x78]
mov qword [rbx + 0x68], rcx
mov rax, qword [rsi + 0x120]
mov qword [rbx + 0x40], rax
mov qword [rsi + 0x68], rdx
mov qword [rsi + 0x120], rdi
mov qword [rsi + 0x38], rdi
mov qword [rsi + 0x100], rbx
movsxd rcx, dword [rbx + 0x58]
mov dword [rsi + 0x24], ecx
movzx eax, word [rbx + 0x5c]
mov dword [rsi + 0x28], eax
imul rcx, rcx, 0x38
add rcx, rdx
mov qword [rsi + 0x78], rcx
movsxd rax, dword [r15 + 0x10]
lea rcx, [rcx + rax*8]
mov qword [rbx + 0x28], rcx
mov eax, dword [r15 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call fcn.1800d66b0
mov r8, qword [r15]
mov r14, qword [rsp + 0x70]
mov qword [rsi + 0x88], r8
mov eax, dword [r15 + 8]
mov r15d, dword [rsp + 0x54]
mov dword [rsi + 0x90], eax
lea rax, [r8 - 0x18]
mov qword [rsp + 0x60], r8
jmp 0x180066cde
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul r9, rax, 0x38
mov eax, 0x9000
add r9, qword [rsi + 0x68]
test word [r9 + 0x14], ax
je 0x180065db3
mov rcx, r9
call fcn.180061090
mov r9, rax
jmp 0x180065dba
mov word [r9 + 0x14], 4
mov r8, qword [rsi + 0x100]
movsxd rax, dword [r8 + 0x4c]
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x10]
mov edx, dword [rax + rcx*8 + 4]
mov rcx, r9
mov rax, qword [rsp + 0x48]
add edx, dword [rax + 4]
movsxd rax, edx
imul rdx, rax, 0x38
add rdx, qword [r8 + 0x18]
jmp 0x180061b24
mov eax, dword [r12 + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x48]
jae 0x180065e23
movsxd rax, dword [rax + 8]
add qword [r12 + 0x2f0], rax
mov r13, qword [rsp + 0x48]
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
cmp dword [rax + 4], 0
lea rcx, [0x180000000]
movsxd rax, dword [rax + 8]
mov r13, qword [rsp + 0x48]
je 0x180065e4f
add qword [r12 + 0x2e8], rax
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
add qword [rsi + 0x50], rax
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
cmp dword [r13 + 4], 0
je 0x180065e9b
cmp qword [r12 + 0x2e8], 0
jne case.0x18006137d.89
cmp qword [r12 + 0x2f0], 0
je 0x1800621d1
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
cmp qword [rsi + 0x50], 0
jmp 0x180065e71
mov rcx, qword [rsi + 0x100]
test rcx, rcx
je 0x180065edf
mov rax, qword [rcx + 8]
test rax, rax
je 0x180065ecc
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x180065ec0
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x180065eef
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
mov rcx, rdi
call fcn.18000ad50
mov qword [rdi], rax
mov r14d, 0xf244
movzx eax, word [rdi + 0x14]
and ax, r14w
or ax, 4
mov word [rdi + 0x14], ax
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x58]
mov rcx, rbx
call fcn.18000ad50
movzx ecx, word [rbx + 0x14]
mov edx, 1
mov r13, qword [rsp + 0x48]
and cx, r14w
mov r11, qword [rsp + 0x58]
or cx, 4
mov r10d, dword [rsp + 0x50]
mov word [rbx + 0x14], cx
mov qword [rbx], rax
cmp qword [rdi], rax
jge 0x18006715a
mov qword [rdi], rax
jmp 0x180061a63
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r11]
test rdx, rdx
jle 0x1800617ae
mov rax, r13
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r11], rdx
jmp 0x1800621cc
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, rsi
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
call fcn.1800610c0
mov rcx, qword [rbx]
mov rsi, rax
mov qword [rbp + 0x38], rcx
test rcx, rcx
jle 0x180065ff6
mov rdx, qword [rdi]
lea rcx, [rbp + 0x38]
test rdx, rdx
mov edi, 0
cmovle rdx, rdi
call fcn.180031940
test eax, eax
jne 0x180065ff8
mov rax, qword [rbp + 0x38]
mov qword [rsi], rax
mov rsi, qword [rsp + 0x78]
jmp 0x180061b2f
xor edi, edi
mov qword [rsi], 0xffffffffffffffff
mov rsi, qword [rsp + 0x78]
jmp 0x180061b2f
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
test rax, rax
je 0x180065e09
mov r13, qword [rsp + 0x48]
jle 0x1800621d1
dec rax
mov qword [rcx + r11], rax
jmp 0x1800621d1
mov rax, qword [rsp + 0x48]
movabs rbx, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
cmp rax, rbx
jle 0x180066061
dec rax
mov qword [rcx + r11], rax
mov r13, qword [rsp + 0x48]
test rax, rax
je 0x1800621d1
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rax, qword [rsp + 0x48]
mov rcx, r12
movzx edi, word [rax + 2]
mov esi, edi
lea rdx, [rdi*8 + 0x68]
call fcn.180008a30
mov rbx, rax
test rax, rax
je 0x18006791a
add rsi, 6
xor r14d, r14d
mov r8d, 1
mov qword [rax + 0x10], r14
mov rdx, r12
lea rcx, [rax + rsi*8]
mov qword [rax], rcx
call fcn.180057170
mov rax, qword [rsp + 0x48]
movabs rdx, 0xaaaaaaaaaaaaaaab
mov rsi, qword [rsp + 0x78]
mov rcx, qword [rax + 0x10]
mov qword [rbx + 8], rcx
mov rcx, rax
sub rcx, qword [rsp + 0x60]
sar rcx, 3
imul rcx, rdx
mov qword [rbx + 0x18], rsi
mov dword [rbx + 0x20], ecx
movzx ecx, byte [rsp + 0x40]
mov byte [rbx + 0x28], cl
mov byte [rbx + 0x29], r14b
mov dword [rbx + 0x24], r14d
mov byte [rbx + 0x2a], dil
mov word [rax], 0xf1a3
mov qword [rax + 0x10], rbx
jmp 0x180066122
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
mov rdi, qword [rsp + 0x58]
imul r10, rax, 0x38
add r10, rdi
cmp qword [rbx + 0x10], r10
je 0x180066186
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov qword [rbx + 0x10], r10
sub rdx, 1
lea r9d, [rax - 1]
js 0x180066186
mov r12, qword [rsp + 0x48]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax]
mov eax, dword [r12 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, rdi
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x180066160
mov r12, qword [rbp - 0x80]
inc dword [r10 + 0x10]
lea r8, [rbx + 0x30]
mov r13, qword [rsp + 0x48]
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
cmp dword [r13 + 4], 0
je 0x1800661ab
mov rax, qword [rax + 0x30]
jmp 0x1800661af
mov rax, qword [rax + 0x18]
call qword [case.0x180005c07.0]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x18006714d
jle 0x1800661e7
mov rcx, qword [rbx]
mov dl, 1
call fcn.180057b40
mov r8, rax
lea rdx, [0x1800e2804]
mov rcx, rsi
call fcn.1800299c0
mov r15d, dword [rbx + 0x24]
mov dword [rsp + 0x54], r15d
cmp byte [rbx + 0x29], 0
je 0x180066214
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x18006620b
imul rcx, rax, 0x38
mov edx, 1
add rcx, rdi
call fcn.180057240
mov r13, qword [rsp + 0x48]
mov byte [rbx + 0x29], 0
mov rcx, qword [rbx]
mov eax, 0x9000
test word [rcx + 0x14], ax
jne 0x180066228
cmp dword [rcx + 0x20], 0
je 0x18006622d
call fcn.180056ba0
mov rax, qword [rbx]
xor edi, edi
mov edx, 1
mov word [rax + 0x14], dx
mov dword [rbx + 0x24], edi
test r15d, r15d
jne 0x180067964
mov r11, qword [rsp + 0x58]
lea rcx, [0x180000000]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, qword [rcx + 0x10]
add rbx, r11
test eax, eax
je 0x1800662ba
imul rdx, rax, 0x38
mov r8, rcx
mov rcx, rbx
add rdx, r11
call fcn.180056ad0
mov r15d, eax
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x58]
jmp 0x1800662cc
mov rdx, rcx
mov rcx, rbx
call fcn.1800569b0
mov r15d, eax
mov dword [rsp + 0x54], eax
mov rcx, rbx
test r15d, r15d
jne 0x1800676b0
movzx edx, byte [rsp + 0x40]
call fcn.180056430
jmp 0x180061b2f
lea rax, [rbp + 0xc8]
mov dword [rbp + 0xc0], edi
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0xc4]
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov qword [rbp + 0xc4], 0xffffffffffffffff
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.180006220
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x180066345
cmp eax, 5
jne 0x18006740a
mov eax, 1
mov dword [rsp + 0x54], edi
mov dword [rbp + 0xc0], eax
mov r15d, edi
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x58]
lfence
movsxd rax, dword [rbp + 0xc0]
mov r14d, 0x9000
test word [rbx + 0x14], r14w
je 0x180066380
mov rdx, rax
mov rcx, rbx
call fcn.180057200
mov edx, 4
jmp 0x18006638c
mov edx, 4
mov qword [rbx], rax
mov word [rbx + 0x14], dx
lea rcx, [rbx + 0x38]
movsxd rax, dword [rbp + 0xc4]
test word [rbx + 0x4c], r14w
je 0x1800663ad
mov rdx, rax
call fcn.180057200
mov edx, 4
jmp 0x1800663b4
mov qword [rcx], rax
mov word [rbx + 0x4c], dx
lea rcx, [rbx + 0x70]
movsxd rax, dword [rbp + 0xc8]
test word [rbx + 0x84], r14w
je 0x1800663d6
mov rdx, rax
call fcn.180057200
jmp 0x180061b2f
mov qword [rcx], rax
mov word [rbx + 0x84], dx
jmp 0x180061b2f
mov r15, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, r15
call fcn.1800610c0
movsxd rdx, dword [r15 + 4]
mov r14, rax
mov rcx, qword [r12 + 0x20]
mov ebx, dword [r15 + 0xc]
shl rdx, 5
mov r15, qword [rdx + rcx + 8]
mov rcx, r15
call fcn.18001c5f0
mov rcx, rax
mov rsi, rax
call fcn.1800442e0
cmp ebx, 0xffffffff
mov rcx, rsi
mov edi, eax
cmove ebx, eax
call fcn.1800442f0
test eax, eax
mov r13d, 1
mov edx, r13d
mov rcx, rsi
cmove ebx, edi
call fcn.180043e60
cmp ebx, 5
jne 0x180066479
mov rcx, rax
call fcn.180030490
test eax, eax
je 0x180066464
mov rcx, rsi
call fcn.180044320
test eax, eax
jne 0x180066479
mov ebx, edi
mov r15d, dword [rsp + 0x54]
test r15d, r15d
je 0x180066505
jmp 0x180066503
cmp ebx, edi
je 0x180066466
cmp edi, 5
je 0x180066487
cmp ebx, 5
jne 0x180066466
cmp byte [r12 + 0x65], 0
je 0x1800676cc
cmp dword [r12 + 0xdc], r13d
jg 0x1800676cc
cmp edi, 5
jne 0x1800664c5
mov rdx, r12
mov rcx, rsi
call fcn.180044630
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x1800664fe
mov edx, ebx
mov rcx, rsi
call fcn.180044150
jmp 0x1800664de
cmp edi, 4
jne 0x1800664d7
mov edx, 2
mov rcx, rsi
call fcn.180044150
cmp dword [rsp + 0x54], 0
jne 0x1800664fe
xor eax, eax
mov rcx, r15
mov edx, eax
cmp ebx, 5
sete dl
inc edx
call fcn.18001da90
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x18006646b
mov r15d, dword [rsp + 0x54]
mov ebx, edi
mov edx, ebx
mov rcx, rsi
call fcn.180044150
mov ecx, eax
mov word [r14 + 0x14], 0x2202
call fcn.180045a60
mov rcx, rax
mov qword [r14 + 8], rax
call fcn.180030490
movzx edx, byte [rsp + 0x40]
mov rcx, r14
mov dword [r14 + 0x10], eax
mov byte [r14 + 0x16], r13b
call fcn.180056430
mov rsi, qword [rsp + 0x78]
test r15d, r15d
jne 0x180067410
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1800617a7
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 8]
test eax, eax
je 0x18006657c
imul r9, rax, 0x38
add r9, r11
jmp 0x18006657f
mov r9, rdi
mov r8d, dword [r15 + 4]
lea rcx, [rsi + 0xa8]
mov rdx, r12
call fcn.1800ab360
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x18006740a
jmp 0x180061b2f
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.180012ff0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x180067119
cmp eax, 0x65
jne 0x18006740a
mov r15d, edi
mov dword [rsp + 0x54], edi
mov r13, qword [rsp + 0x48]
jmp 0x1800621c7
mov rcx, qword [rsp + 0x48]
cmp dword [rcx + 4], 0
jne 0x180066606
mov edx, dword [rcx + 8]
mov rcx, r12
call fcn.1800302a0
jmp 0x180061b2f
mov ecx, dword [rcx + 8]
mov eax, dword [rsi + 0xc0]
inc ecx
mov r13, qword [rsp + 0x48]
xor ecx, eax
and ecx, 3
xor ecx, eax
mov dword [rsi + 0xc0], ecx
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
lea rcx, [0x180000000]
or byte [rax + 1], 0x40
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
lea rcx, [0x180000000]
and byte [rax + 1], 0xbf
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rax, qword [rsp + 0x48]
movzx r8d, byte [rax + 0xc]
test r8b, r8b
jne 0x1800666bd
mov eax, dword [r12 + 0x30]
bt rax, 0xa
jb 0x180061baa
mov r15, qword [rsp + 0x48]
mov rcx, qword [r12 + 0x20]
movsxd rax, dword [r15 + 4]
mov edx, dword [r15 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.18001d950
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x180061b2f
mov rdi, qword [rsp + 0x48]
cmp al, 6
jne 0x180066708
mov r8, qword [rdi + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, rsi
call fcn.1800299c0
mov rbx, qword [rsp + 0x68]
mov eax, 0xb
mov r13d, 1
jmp 0x18006741f
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov rbx, qword [rax + 0x10]
mov rdx, rbx
call fcn.1800507f0
mov dword [rsp + 0x54], eax
mov r15d, eax
test rbx, rbx
je 0x180066749
mov rdx, qword [rbx + 0x10]
mov rcx, rsi
call fcn.180030370
test r15d, r15d
jne 0x18006740a
jmp 0x180061b2f
mov rax, qword [rsp + 0x48]
lea rcx, [rbp - 0x58]
xorps xmm0, xmm0
mov qword [rbp - 0x58], rdi
xorps xmm1, xmm1
mov qword [rbp - 0x28], rdi
movdqu xmmword [rbp - 0x50], xmm0
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
movdqu xmmword [rbp - 0x38], xmm1
mov qword [rbp - 0x40], r12
add rdx, r11
call fcn.180057500
mov dl, 1
mov dword [rsp + 0x54], eax
lea rcx, [rbp - 0x58]
mov r15d, eax
call fcn.180057b40
test rax, rax
je 0x1800667c4
mov r8, rax
lea r9, [rsi + 0xa8]
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov edx, dword [rax + 4]
call fcn.180050140
mov r15d, eax
mov dword [rsp + 0x54], eax
mov eax, 0x9000
test word [rbp - 0x44], ax
jne 0x1800667d5
cmp dword [rbp - 0x38], 0
je 0x1800667de
lea rcx, [rbp - 0x58]
call fcn.180056ba0
test r15d, r15d
jne 0x18006740a
jmp 0x180061b2f
mov rax, qword [rsp + 0x48]
mov rcx, r12
inc dword [r12 + 0xe8]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1800505a0
dec dword [r12 + 0xe8]
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18006740a
jmp 0x180061b2f
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x70], rdi
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x18006770c
mov rdi, qword [rbx]
test rdi, rdi
je 0x18006770c
mov rax, qword [rdi + 0x30]
lea rdx, [rbp - 0x70]
mov rcx, rbx
call qword [case.0x180005c07.0]
mov rdx, rbx
mov rcx, rsi
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.180030370
test r15d, r15d
jne 0x18006740a
mov rax, qword [rbp - 0x70]
mov r9b, 2
xor r8d, r8d
mov rcx, rsi
mov qword [rax], rbx
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 4]
call fcn.180060c60
mov rcx, qword [rbp - 0x70]
test rax, rax
je 0x1800676fd
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov qword [rax + 0x30], rcx
inc dword [rbx + 8]
jmp 0x1800617a7
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
mov ecx, 0x10
call fcn.1800083b0
mov rbx, rax
test rax, rax
je 0x18006791f
mov rcx, qword [rdi + 0x30]
mov qword [rax], rcx
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0xc]
imul rdx, rcx, 0x38
mov rcx, rsi
add rdx, qword [rsp + 0x58]
mov qword [rbx + 8], rdx
mov rdx, rax
call fcn.1800610c0
lea r9, [0x18000bbe0]
mov rdx, rbx
lea r8, str.ValueList
mov rcx, rax
mov word [rax + 0x14], 1
call fcn.180057260
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
jmp 0x1800617a7
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [rsi + 0x78]
add rdx, r11
movsxd rdi, dword [rdx + 0x38]
lea r11, [rdx + 0x38]
movq xmm4, r11
mov r13, qword [rax + rcx*8]
mov rax, qword [rsp + 0x78]
mov r12d, dword [rdx]
punpcklqdq xmm4, xmm4
mov rsi, qword [r13 + 0x30]
mov rbx, qword [rax + 0x70]
xor eax, eax
mov r9d, eax
mov edx, eax
mov r15, qword [rsi]
mov r14, qword [r15]
test edi, edi
jle 0x180066aa1
cmp edi, 8
jb 0x180066aa1
cmp dword [0x1800fb068], 6
jl 0x180066aa1
mov eax, edi
and eax, 0x80000007
jge 0x1800669c1
dec eax
or eax, 0xfffffff8
inc eax
mov r10d, edi
lea rcx, [rbx + 0x20]
sub r10d, eax
mov r8d, 4
movq xmm3, xmm9
movd xmm1, r9d
pshufd xmm1, xmm1, 0
lea eax, [r8 - 2]
paddd xmm1, xmm3
movd xmm2, eax
pshufd xmm2, xmm2, 0
lea eax, [r8 + 2]
paddd xmm2, xmm3
lea rcx, [rcx + 0x40]
movq xmm0, xmm8
add r9d, 8
paddd xmm1, xmm0
add rdx, 8
pmovsxdq xmm0, xmm1
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movq xmm0, xmm8
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movdqu xmmword [rcx - 0x60], xmm1
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movd xmm2, r8d
movdqu xmmword [rcx - 0x50], xmm1
add r8d, 8
pshufd xmm2, xmm2, 0
movq xmm0, xmm8
paddd xmm2, xmm3
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm3
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movq xmm0, xmm8
paddd xmm2, xmm0
movdqu xmmword [rcx - 0x40], xmm1
pmovsxdq xmm0, xmm2
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movdqu xmmword [rcx - 0x30], xmm1
cmp r9d, r10d
jl 0x1800669d1
cmp rdx, rdi
jge 0x180066ac9
lea r8d, [r9 + 1]
nop word [rax + rax]
movsxd rax, r8d
inc r8d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbx + rdx*8], rcx
inc rdx
cmp rdx, rdi
jl 0x180066ab0
mov rax, qword [rsp + 0x48]
mov r9d, edi
mov edx, r12d
mov qword [rsp + 0x20], rbx
mov rcx, rsi
mov r8, qword [rax + 0x10]
mov rax, qword [r14 + 0x40]
call qword [case.0x180005c07.0]
mov rcx, qword [rsp + 0x78]
mov rdx, r15
mov dword [rsp + 0x54], eax
call fcn.180030370
mov r15d, dword [rsp + 0x54]
test r15d, r15d
jne 0x180067401
mov rax, qword [r14 + 0x50]
mov rcx, rsi
call qword [case.0x180005c07.0]
mov byte [r13 + 2], r15b
test eax, eax
je 0x180062fe9
mov r13, qword [rsp + 0x48]
xor edi, edi
jmp 0x1800621c7
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
xor edi, edi
jmp 0x1800621c7
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
imul rbx, rax, 0x38
add rbx, r11
cmp byte [rdi + 2], 0
je 0x180066b88
mov rcx, rbx
call fcn.180057190
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
jmp 0x1800617a7
mov rax, qword [rdi + 0x30]
xorps xmm0, xmm0
mov rsi, qword [rax]
xor eax, eax
test byte [rcx + 2], 1
mov r14, qword [rsi]
movups xmmword [rbp - 0x58], xmm0
mov qword [rbp - 0x58], rbx
movups xmmword [rbp - 0x38], xmm0
mov byte [rbp - 0x30], r9b
movups xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x28], rax
je 0x180066bcd
mov rcx, rbx
call fcn.180057190
mov rcx, qword [rsp + 0x48]
xor eax, eax
mov dword [rbx], eax
mov eax, 0x401
jmp 0x180066bdd
movzx eax, word [rbx + 0x14]
mov edx, 0xf241
and ax, dx
or ax, 1
mov word [rbx + 0x14], ax
lea rdx, [rbp - 0x58]
mov r8d, dword [rcx + 8]
mov rcx, qword [rdi + 0x30]
mov rax, qword [r14 + 0x58]
call qword [case.0x180005c07.0]
mov rdx, rsi
mov rsi, qword [rsp + 0x78]
mov rcx, rsi
mov dword [rsp + 0x54], eax
mov r15d, eax
call fcn.180030370
cmp dword [rbp - 0x34], 0
jle 0x180066c37
mov rcx, rbx
call fcn.18000ad80
mov r8, rax
lea rdx, [0x1800e2804]
mov rcx, rsi
call fcn.1800299c0
mov r15d, dword [rbp - 0x34]
mov dword [rsp + 0x54], r15d
movzx edx, byte [rsp + 0x40]
mov rcx, rbx
call fcn.180056430
test r15d, r15d
jne 0x18006740a
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1800617a7
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x1800672e3
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
mov rax, qword [rsi + 0x48]
call qword [case.0x180005c07.0]
mov rcx, qword [rsp + 0x78]
mov rdx, rbx
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.180030370
test r15d, r15d
jne 0x180067405
mov rcx, qword [rdi + 0x30]
mov rax, qword [rsi + 0x50]
call qword [case.0x180005c07.0]
test eax, eax
jne 0x180066ce3
mov r8, qword [rsp + 0x60]
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [r8 + rcx*8]
mov qword [rsp + 0x48], rax
mov r13, qword [rsp + 0x48]
mov eax, dword [r12 + 0x188]
mov rbx, qword [rsp + 0x68]
test eax, eax
jne 0x1800678fb
cmp r14, rbx
jb 0x18006711e
nop word [rax + rax]
mov rax, qword [r12 + 0x200]
test rax, rax
je 0x18006711e
mov ecx, dword [r12 + 0x210]
add rbx, rcx
mov rcx, qword [r12 + 0x208]
mov qword [rsp + 0x68], rbx
call qword [case.0x180005c07.0]
test eax, eax
jne 0x180067717
cmp r14, rbx
jae 0x180066d10
jmp 0x18006185d
mov rcx, qword [rsp + 0x48]
mov edi, dword [r12 + 0x30]
or qword [r12 + 0x30], 0x4000000
and edi, 0x4000000
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, r11
test byte [rbx + 0x14], 2
jne 0x180066d89
mov byte [rbx + 0x16], 1
jmp 0x180066da4
cmp byte [rbx + 0x16], 1
je 0x180066da4
mov dl, 1
mov rcx, rbx
call fcn.180058480
mov r15d, eax
test eax, eax
jne 0x180067405
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 8]
mov rax, qword [rax + 0x98]
call qword [case.0x180005c07.0]
mov dword [rsp + 0x54], eax
mov r15d, eax
test edi, edi
jne 0x180066dcf
and qword [r12 + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rsi, qword [rsp + 0x78]
mov rcx, rsi
call fcn.180030370
and dword [rsi + 0xc0], 0xfffffffc
test r15d, r15d
jne 0x18006740a
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1800617a7
cmp byte [r12 + 0x67], 0
mov qword [rbp - 0x20], rdi
jne 0x18006791f
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x18006770c
mov r10, qword [rbx]
test r10, r10
je 0x18006770c
cmp qword [r10 + 0x68], 0
mov r13, qword [rsp + 0x48]
movsxd rdx, dword [r13 + 8]
je 0x180061528
movsxd rax, dword [r13 + 0xc]
mov r15, r13
movzx edi, byte [r12 + 0x6c]
mov r8, qword [rsi + 0x70]
imul rcx, rax, 0x38
xor eax, eax
add rcx, r11
test edx, edx
jle 0x180066e80
nop dword [rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x180066e70
movzx eax, byte [r15 + 2]
lea r9, [rbp - 0x20]
mov byte [r12 + 0x6c], al
mov rcx, rbx
mov rax, qword [r10 + 0x68]
call qword [case.0x180005c07.0]
mov rdx, rbx
mov byte [r12 + 0x6c], dil
mov rcx, rsi
mov dword [rsp + 0x54], eax
mov r15d, eax
call fcn.180030370
mov r13, qword [rsp + 0x48]
test r15d, r15d
jne 0x180066eed
cmp dword [r13 + 4], r15d
je 0x180066ecb
mov rax, qword [rbp - 0x20]
mov qword [r12 + 0x38], rax
inc qword [rsi + 0x38]
test r15d, r15d
jne 0x18006740a
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1800617a7
cmp r15b, 0x13
jne 0x180066ecb
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x1c], 0
je 0x180066ecb
movzx ecx, word [r13 + 2]
cmp ecx, 4
jne 0x180067739
xor edi, edi
mov r15d, edi
mov dword [rsp + 0x54], edi
jmp 0x180061b34
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x180066f4c
mov rcx, rdx
call fcn.180061090
mov r8, qword [rsp + 0x60]
mov rdx, rax
jmp 0x180066f52
mov word [rdx + 0x14], 4
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
mov r10d, dword [rsp + 0x50]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov qword [rdx], rcx
jmp 0x1800617ae
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x180066fb6
mov rcx, rbx
call fcn.180061090
mov rbx, rax
jmp 0x180066fbc
mov word [rbx + 0x14], 4
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rdi, qword [rcx + rax + 8]
xor eax, eax
mov edx, eax
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc], edx
je 0x180066ff7
mov rcx, rdi
call fcn.180010ad0
mov edx, eax
mov rax, qword [rsp + 0x48]
cmp edx, dword [rax + 0xc]
cmovb edx, dword [rax + 0xc]
mov rcx, rdi
call fcn.180011c70
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov eax, eax
mov qword [rbx], rax
jmp 0x1800617a7
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, r11
cmp qword [rbx], rdi
je 0x180067086
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov byte [rbx + 0x28], r9b
sub rdx, 1
mov qword [rbx + 0x18], rsi
mov qword [rbx], rdi
lea r9d, [rax - 1]
js 0x180067086
mov r12, qword [rsp + 0x48]
lea r8, [rbx + 0x30]
lea r8, [r8 + rdx*8]
nop
mov eax, dword [r12 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r11
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x180067060
mov r12, qword [rbp - 0x80]
movzx eax, word [rdi + 0x14]
lea r8, [rbx + 0x30]
mov ecx, 0xf241
and ax, cx
mov rcx, rbx
or ax, 1
mov word [rdi + 0x14], ax
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
mov rax, qword [rax + 0x18]
call qword [case.0x180005c07.0]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x180067119
jle 0x1800670e1
mov dl, 1
mov rcx, rdi
call fcn.180057b40
mov r8, rax
lea rdx, [0x1800e2804]
mov rcx, rsi
call fcn.1800299c0
mov r15d, dword [rbx + 0x24]
mov dword [rsp + 0x54], r15d
mov rax, qword [rsp + 0x48]
lea rdx, [rsi + 0x120]
mov r8d, dword [rbx + 0x20]
mov rcx, r12
mov r9d, dword [rax + 4]
call fcn.18002e260
xor edi, edi
mov dword [rbx + 0x24], edi
test r15d, r15d
jne 0x18006740a
jmp 0x180061b2f
mov r15d, dword [rsp + 0x54]
mov r12, qword [rbp - 0x80]
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x180067150
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
jmp 0x180061a63
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov rsi, qword [rsp + 0x78]
jmp 0x180061a63
mov r11, rdi
mov r10d, dword [rsp + 0x50]
mov edx, 1
mov rsi, qword [rsp + 0x78]
jmp 0x180061a63
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xf7ff
and word [rcx + r11 + 0x14], ax
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1800610f0
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
div rcx
mov rcx, qword [rbx + 8]
mov r8, rdx
and edx, 7
shr r8, 3
movsx eax, byte [r8 + rcx]
bts eax, edx
mov byte [r8 + rcx], al
jmp 0x180061b2f
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1800610f0
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
mov r13, qword [rsp + 0x48]
div rcx
mov rax, qword [rbx + 8]
mov rcx, rdx
shr rcx, 3
movsx r8d, byte [rcx + rax]
movzx eax, dl
and al, 7
mov edx, 1
movzx eax, al
bt r8d, eax
mov r8, qword [rsp + 0x60]
jb 0x180067235
inc dword [rsi + 0xec]
jmp 0x1800621d1
inc dword [rsi + 0xe8]
jmp 0x1800629de
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 4]
cmp eax, dword [0x1800fdd78]
jl 0x180067296
cmp bl, 0xb5
je 0x180065e09
cmp dword [rsi + 0x90], 1
jle 0x18006728f
mov eax, 0x18
nop word [rax + rax]
mov rcx, qword [rsi + 0x88]
cmp byte [rax + rcx], 0xf
jne 0x180067281
mov dword [rax + rcx + 4], edi
inc edx
add rax, 0x18
cmp edx, dword [rsi + 0x90]
jl 0x180067270
mov eax, edi
mov edx, 1
mov r13, qword [rsp + 0x48]
inc eax
mov dword [r13 + 4], eax
inc dword [rsi + 0xe4]
jmp 0x1800621d1
mov r15d, dword [rsp + 0x54]
lea rcx, [0x180000000]
mov r13, qword [rsp + 0x48]
mov r14, qword [rsp + 0x70]
add r13, 0x18
jmp 0x18006134b
mov r15d, dword [rsp + 0x54]
mov rsi, qword [rsp + 0x78]
jmp 0x180061a6e
mov r12, qword [rbp - 0x80]
jmp 0x180061a5e
mov r13, qword [rsp + 0x48]
jmp 0x180061a6e
mov r15, qword [rsp + 0x48]
mov ecx, dword [r15 + 4]
mov dword [rsi + 0x34], ecx
movzx eax, byte [r15 + 8]
mov byte [rsi + 0xba], al
test ecx, ecx
je 0x1800673ac
movzx eax, word [r15 + 2]
mov rcx, rsi
test ax, ax
je 0x18006735f
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x180000000]
mov r8, qword [rax + r8*8 + 0xe7528]
call fcn.1800299c0
mov r9, qword [r15 + 0x10]
test r9, r9
je 0x18006736f
mov r8, qword [rsi + 0xa8]
lea rdx, str._z:__s
mov rcx, r12
call fcn.18004e920
mov qword [rsi + 0xa8], rax
jmp 0x18006736f
mov r8, qword [r15 + 0x10]
lea rdx, [0x1800e2804]
call fcn.1800299c0
mov r9, qword [rsi + 0xf0]
lea rdx, str.abort_at__d_in___s_:__s
mov ecx, dword [r15 + 4]
movabs rax, 0xaaaaaaaaaaaaaaab
mov r8, r15
sub r8, qword [rsp + 0x60]
sar r8, 3
imul r8, rax
mov rax, qword [rsi + 0xa8]
mov qword [rsp + 0x20], rax
call fcn.18004ea80
mov rcx, rsi
call fcn.18002dc80
mov rdi, qword [rsp + 0x48]
mov r15d, eax
mov rbx, qword [rsp + 0x68]
mov r13d, 1
mov r14, qword [rsp + 0x70]
cmp eax, 5
jne 0x1800673d9
mov dword [rsi + 0x34], eax
jmp 0x180067527
cmp dword [rsi + 0x34], 0
mov r15d, 0x65
cmovne r15d, r13d
jmp 0x180067527
mov r15d, 0x14
jmp 0x18006740a
mov ecx, 0xc0d
call fcn.180007730
mov r15d, eax
mov r12, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x78]
mov r13d, 1
mov eax, 0xb
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x48]
mov r14, qword [rsp + 0x70]
cmp byte [r12 + 0x67], 0
je 0x180067974
mov r15d, 7
jmp 0x1800679aa
movsxd rax, edi
mov rcx, rsi
lea rdi, [rax + rax*2]
mov ebx, dword [r15 + rdi*8 + 8]
shr ebx, 4
and ebx, 0xf
dec ebx
call fcn.1800611c0
mov rsi, qword [rsp + 0x78]
lea rdx, str.cannot_store__s_value_in__s_column__s._s
mov r8, rax
mov rcx, rsi
mov rax, qword [r15 + rdi*8]
mov qword [rsp + 0x28], rax
mov rax, qword [r14]
mov qword [rsp + 0x20], rax
lea rax, [0x180000000]
mov r9, qword [rax + rbx*8 + 0xfdba0]
call fcn.1800299c0
mov r15d, 0xc13
jmp 0x18006740a
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, rsi
call fcn.1800299c0
mov r15d, 5
jmp 0x18006740a
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, rsi
call fcn.1800299c0
mov r15d, 5
jmp 0x18006740a
mov byte [r12 + 0x65], 0
jmp 0x18006740a
mov rdi, qword [rsp + 0x48]
movabs rcx, 0xaaaaaaaaaaaaaaab
mov rax, rdi
mov r15d, 5
sub rax, qword [rsp + 0x60]
sar rax, 3
imul rax, rcx
mov dword [rsi + 0x30], eax
mov byte [r12 + 0x65], 0
mov dword [rsi + 0x34], r15d
jmp 0x180067517
mov r15d, 0x65
mov rdi, qword [rsp + 0x48]
mov r13d, 1
mov rbx, qword [rsp + 0x68]
mov r14, qword [rsp + 0x70]
cmp r14, rbx
jb 0x180067a82
mov rax, qword [r12 + 0x200]
test rax, rax
je 0x180067a82
mov ecx, dword [r12 + 0x210]
add rbx, rcx
mov rcx, qword [r12 + 0x208]
call qword [case.0x180005c07.0]
test eax, eax
je 0x180067527
mov rbx, 0xffffffffffffffff
mov eax, 0xb
mov r15d, 9
jmp 0x180067424
bt rax, 0x14
mov r15d, 8
mov eax, 0xb
mov r13d, 1
cmovae r15d, eax
jmp 0x180067415
mov rdi, qword [rsp + 0x48]
mov r13d, 1
mov rbx, qword [rsp + 0x68]
mov r14, qword [rsp + 0x70]
cmp r15b, 5
jne 0x180061bf7
mov rax, rdi
mov dword [rsi + 0x34], r15d
sub rax, qword [rsp + 0x60]
movabs rcx, 0xaaaaaaaaaaaaaaab
sar rax, 3
imul rax, rcx
mov dword [rsi + 0x30], eax
jmp 0x180067527
mov r15d, 0x204
jmp 0x18006740a
mov rcx, qword [rbx + 0x10]
call fcn.180011790
jmp 0x180067410
mov r12, r8
mov rsi, qword [rsp + 0x78]
lea rdx, str.string_or_blob_too_big
mov rcx, rsi
call fcn.1800299c0
mov r15d, 0x12
jmp 0x18006740a
lea r8, str.index_corruption
mov edx, 0x1903
mov ecx, 0x30b
call fcn.180007700
mov r15d, eax
jmp 0x18006740a
lea rax, [0x1800e2424]
mov r9d, 0x19d0
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.18004ea80
mov eax, 0xb
mov r13d, 1
mov r15d, eax
jmp 0x180067415
mov r15d, 6
mov byte [rsi + 0xba], 2
jmp 0x180067410
call fcn.180034640
jmp 0x18006791f
mov rcx, qword [rbp + 0x40]
call fcn.180008570
jmp 0x180067410
mov r15d, edx
mov rcx, rsi
lea rdx, str.too_many_levels_of_trigger_recursion
call fcn.1800299c0
jmp 0x18006740a
call fcn.18000ad80
mov r8, rax
lea rdx, [0x1800e2804]
mov rcx, rsi
call fcn.1800299c0
jmp 0x18006740a
mov rsi, qword [rsp + 0x78]
lea rax, str.into
cmp ebx, 5
lea r8, str.out_of
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov rcx, rsi
cmove r8, rax
mov r15d, r13d
call fcn.1800299c0
jmp 0x180067410
mov rax, qword [rdi + 0x38]
call qword [case.0x180005c07.0]
jmp 0x18006791f
mov r15d, 6
jmp 0x18006740a
mov rsi, qword [rsp + 0x78]
mov rbx, 0xffffffffffffffff
mov r15d, 9
mov eax, 0xb
mov r13d, 1
jmp 0x18006741a
movzx eax, cl
cmp ecx, 5
mov ecx, 2
cmove eax, ecx
mov byte [rsi + 0xba], al
jmp 0x18006740a
mov eax, dword [rsi + 0x2c]
mov r15, qword [rsp + 0x48]
add eax, 2
or eax, 1
mov dword [rsi + 0x2c], eax
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rsi + 0xa0], rcx
cmp byte [r12 + 0x67], 0
jne 0x18006791f
test byte [r12 + 0x6e], 4
je 0x1800677af
mov rdx, qword [r12 + 0x100]
xor r9d, r9d
mov rax, qword [r12 + 0xf8]
mov r8, rsi
mov ecx, 4
call qword [case.0x180005c07.0]
mov r8, qword [rsp + 0x60]
mov rax, r15
movabs rcx, 0xaaaaaaaaaaaaaaab
sub rax, r8
mov r15d, 0x64
sar rax, 3
imul rax, rcx
inc eax
mov dword [rsi + 0x30], eax
jmp 0x180067512
mov r15, qword [rsp + 0x48]
movzx eax, byte [r12 + 0x65]
mov ebx, dword [r15 + 4]
mov ecx, dword [r15 + 8]
cmp ebx, eax
je 0x1800678c4
test ecx, ecx
je 0x180067807
mov edx, 0x204
mov rcx, r12
call fcn.180005c40
mov al, 1
jmp 0x18006784b
test ebx, ebx
je 0x180067830
cmp dword [r12 + 0xe0], 0
jle 0x180067830
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, rsi
call fcn.1800299c0
mov r15d, 5
jmp 0x18006740a
mov rcx, rsi
call fcn.18002dc10
mov r15d, eax
test eax, eax
jne 0x180067512
mov r15, qword [rsp + 0x48]
movzx eax, bl
mov rcx, rsi
mov byte [r12 + 0x65], al
call fcn.18002dc80
cmp eax, 5
jne 0x18006789e
mov rdi, qword [rsp + 0x48]
mov rax, r15
sub rax, qword [rsp + 0x60]
movabs rcx, 0xaaaaaaaaaaaaaaab
sar rax, 3
mov r13d, 1
imul rax, rcx
mov r15d, 5
mov dword [rsi + 0x30], eax
mov eax, r13d
sub al, bl
mov byte [r12 + 0x65], al
mov dword [rsi + 0x34], r15d
jmp 0x18006751d
mov rcx, r12
call fcn.1800051b0
cmp dword [rsi + 0x34], 0
mov r15d, 0x65
mov rdi, qword [rsp + 0x48]
mov r13d, 1
cmovne r15d, r13d
jmp 0x18006751d
test ebx, ebx
jne 0x1800678d1
lea rdx, str.cannot_start_a_transaction_within_a_transaction
jmp 0x1800678e5
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
cmovne rdx, rax
mov rcx, rsi
call fcn.1800299c0
mov r13d, 1
mov r15d, r13d
jmp 0x180067410
mov rsi, qword [rsp + 0x78]
mov r15d, 9
mov eax, 0xb
mov r13d, 1
jmp 0x18006741a
mov r12, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x68]
mov rcx, r12
call fcn.180009010
lea rdx, str.out_of_memory
mov rcx, rsi
call fcn.1800299c0
mov eax, 0xb
mov r15d, 7
mov r13d, 1
jmp 0x18006741a
mov r15d, dword [rsp + 0x54]
jmp 0x180067401
mov r12, qword [rbp - 0x80]
jmp 0x18006740a
mov r13, rdx
jmp 0x180067410
mov rsi, r14
jmp 0x18006740a
cmp r15d, 0x210a
jne 0x1800679aa
lea rcx, [0x1800e2424]
mov r9d, 0x225f
mov qword [rsp + 0x20], rcx
lea r8, str.database_corruption
mov ecx, eax
lea rdx, str._s_at_line__d_of___.10s_
call fcn.18004ea80
mov r15d, 0xb
cmp qword [rsi + 0xa8], 0
jne 0x1800679d7
cmp r15d, 0xc0a
je 0x1800679d7
mov ecx, r15d
call fcn.180005dc0
mov r8, rax
lea rdx, [0x1800e2804]
mov rcx, rsi
call fcn.1800299c0
mov edx, r15d
mov dword [rsi + 0x34], r15d
mov rcx, r12
call fcn.180030540
mov r9, qword [rsi + 0xf0]
lea rdx, str.statement_aborts_at__d:___s___s
movabs rax, 0xaaaaaaaaaaaaaaab
mov r8, rdi
sub r8, qword [rsp + 0x60]
mov ecx, r15d
sar r8, 3
imul r8, rax
mov rax, qword [rsi + 0xa8]
mov qword [rsp + 0x20], rax
call fcn.18004ea80
cmp byte [rsi + 0xbd], 2
jne 0x180067a33
mov rcx, rsi
call fcn.18002dc80
cmp r15d, 0xc0a
jne 0x180067a46
mov rcx, r12
call fcn.180009010
jmp 0x180067a63
cmp r15d, 0xb
jne 0x180067a63
cmp byte [r12 + 0x65], 0
jne 0x180067a63
movabs rax, 0x200000000
or qword [r12 + 0x30], rax
movzx eax, byte [rbp - 0x64]
mov r15d, r13d
test al, al
je 0x180067527
lea edx, [rax - 1]
mov rcx, r12
call fcn.180034410
jmp 0x180067527
add dword [rsi + 0xdc], r14d
cmp dword [rsi + 0xc8], 0
movaps xmm10, xmmword [rsp + 0x1e0]
movaps xmm9, xmmword [rsp + 0x1f0]
movaps xmm8, xmmword [rsp + 0x200]
movaps xmm7, xmmword [rsp + 0x210]
movaps xmm6, xmmword [rsp + 0x220]
mov r14, qword [rsp + 0x230]
mov r13, qword [rsp + 0x238]
mov r12, qword [rsp + 0x278]
mov rdi, qword [rsp + 0x270]
mov rbx, qword [rsp + 0x268]
je 0x180067aed
mov rcx, rsi
call fcn.18002bae0
mov eax, r15d
mov rcx, qword [rbp + 0xd0]
xor rcx, rsp
call fcn.1800c0500
add rsp, 0x240
pop r15
pop rsi
pop rbp
ret