Function at 0x18007be00
Capabilities:
Reference sql statements

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xf8]
sub rsp, 0x1d0
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x1800ff5a8]
xor rax, rsp
mov qword [rbp + 0xb0], rax
mov rdi, qword [rcx]
xor r12d, r12d
mov rsi, qword [rcx + 8]
mov rdx, rcx
mov qword [rsp + 0x50], rcx
xor r14b, r14b
mov r9d, r12d
mov qword [rsp + 0x78], rsi
mov rax, qword [rdi + 0x10]
mov r13d, r12d
mov rbx, qword [rdx + 0x10]
mov r15d, r12d
mov qword [rsp + 0x60], rbx
mov rbx, qword [rdi + 0x40]
mov rcx, qword [rax + 0x18]
mov dword [rsp + 0x44], r12d
mov qword [rsp + 0x68], rdi
mov byte [rsp + 0x40], r14b
movzx eax, byte [rcx + 0x71]
mov rcx, rdx
mov byte [rsp + 0x48], al
mov dword [rbp - 0x74], r12d
mov qword [rsp + 0x70], r12
mov dword [rbp - 0x78], r12d
mov qword [rbp - 0x68], r12
mov qword [rbp - 0x80], rbx
call fcn.18007bd70
mov rax, qword [rsp + 0x50]
cmp dword [rax + 0x94], 7
je 0x180081d6a
mov dword [rax + 0x94], r12d
mov qword [rax + 0x28], r12
mov eax, dword [rdi + 0x150]
mov dword [rdi + 0x2c8], r12d
test eax, eax
jne 0x180081d0d
mov r13, qword [rsp + 0x50]
mov r8d, 2
mov rax, qword [rdi + 0x198]
xorps xmm6, xmm6
mov qword [rsp + 0x58], rax
mov dword [rbp - 0x70], r8d
mov r13d, dword [r13 + 0x90]
mov r11d, 4
cmp byte [rdi + 0x2a], r12b
jne 0x180081d64
movsxd rbx, r13d
lea r14, [rbx + rbx*2]
test rax, rax
je 0x18007bf48
mov eax, dword [rbp - 0x74]
cmp dword [rdi + 0x1a8], eax
jne 0x18007bf43
mov rcx, qword [rdi + 0x1a0]
call qword [rdi + 0x198]
test eax, eax
jne 0x1800816e1
mov eax, r12d
mov r11d, 4
inc eax
mov dword [rbp - 0x74], eax
test byte [rsi + r14*8 + 2], 2
je 0x18007bf7d
movsxd rax, dword [rsi + r14*8 + 8]
imul rax, rax, 0x38
add rax, qword [rsp + 0x60]
mov rcx, rax
mov qword [rsp + 0x70], rax
call fcn.180084470
mov r10, qword [rsp + 0x70]
mov r11d, 4
mov word [r10 + 0x24], r11w
jmp 0x18007bf82
mov r10, qword [rsp + 0x70]
movzx eax, byte [rsi + r14*8]
dec eax
cmp eax, 0x90
ja case.0x18007bfa7.17
lea rdx, [0x180000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0x81d9c]
add rcx, rdx
jmp rcx
mov eax, dword [rdi + 0x150]
test eax, eax
jne 0x180081d07
mov r13d, dword [rsi + r14*8 + 8]
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x58]
add rcx, qword [rsp + 0x60]
mov word [rcx + 0x24], r11w
mov qword [rcx + 0x18], rbx
mov r13d, dword [rsi + r14*8 + 8]
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x60]
mov r13d, dword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
mov eax, dword [rcx + 0x18]
mov word [rcx + 0x24], r11w
mov dword [rbp - 0x60], eax
mov rax, qword [rsp + 0x58]
mov qword [rcx + 0x18], rbx
mov r13d, dword [rbp - 0x60]
inc r13d
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x60]
test byte [rcx + rax + 0x24], 1
je case.0x18007bfa7.17
mov rdx, qword [rsp + 0x50]
cmp dword [rsi + r14*8 + 4], r12d
jne 0x1800816ec
mov r8, qword [rdx + 0xe8]
test r8, r8
je 0x1800816ec
mov rax, qword [r8 + 0x60]
dec dword [rdx + 0xf8]
mov qword [rdx + 0xe8], rax
mov eax, dword [rdx + 0xa4]
add dword [rdi + 0x50], eax
mov dword [rdi + 0x4c], eax
mov rax, qword [r8 + 0x10]
mov rdx, qword [r8]
mov rcx, qword [rdx]
mov qword [rdx + 8], rax
mov eax, dword [r8 + 0x18]
mov dword [rdx + 0x34], eax
mov rax, qword [r8 + 0x20]
mov qword [rdx + 0x10], rax
mov eax, dword [r8 + 0x28]
mov dword [rdx + 0x30], eax
mov rax, qword [r8 + 0x30]
mov qword [rdx + 0x70], rax
movzx eax, word [r8 + 0x38]
mov word [rdx + 0x52], ax
mov rax, qword [r8 + 0x50]
mov qword [rcx + 0x40], rax
mov eax, dword [r8 + 0x58]
mov dword [rdx + 0xa4], eax
cmp dword [rsi + r14*8 + 8], 4
mov rax, qword [rdi + 0x40]
movsxd r13, dword [r8 + 8]
mov qword [rbp - 0x80], rax
jne 0x18007c107
mov rax, qword [rsp + 0x50]
lea rcx, [r13*2]
add rcx, r13
mov rax, qword [rax + 8]
mov r13d, dword [rax + rcx*8 + 8]
dec r13d
mov rax, qword [rsp + 0x50]
inc r13d
mov rsi, qword [rsp + 0x50]
mov rax, qword [rax + 0x10]
mov rsi, qword [rsi + 8]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x78], rsi
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 4]
inc r13d
mov qword [r10 + 0x18], rax
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
mov rax, qword [rsi + r14*8 + 0x10]
inc r13d
mov rcx, qword [rax]
mov rax, qword [rsp + 0x58]
mov qword [r10 + 0x18], rcx
jmp 0x18007bf04
mov eax, 8
inc r13d
mov word [r10 + 0x24], ax
mov rax, qword [rsi + r14*8 + 0x10]
mov rcx, qword [rax]
mov rax, qword [rsp + 0x58]
mov qword [r10 + 0x10], rcx
jmp 0x18007bf04
mov rdi, qword [rsi + r14*8 + 0x10]
mov byte [rsi + r14*8], 9
mov rax, rdi
test rdi, rdi
jne 0x18007c199
mov eax, r12d
jmp 0x18007c1af
cmp byte [rdi], r12b
je 0x18007c1a8
nop
inc rax
cmp byte [rax], r12b
jne 0x18007c1a0
sub eax, edi
and eax, 0x3fffffff
cmp byte [rsp + 0x48], 1
mov dword [rsi + r14*8 + 4], eax
je 0x18007c310
test rdi, rdi
jne 0x18007c210
test byte [r10 + 0x24], 0x40
je 0x18007c1e4
mov rdx, qword [r10 + 0x18]
mov rcx, qword [rdx]
mov rax, qword [rcx + 0xf0]
mov qword [rdx + 0x60], rax
mov qword [rcx + 0xf0], rdx
test byte [r10 + 0x24], 0x20
je 0x18007c1f9
mov rcx, qword [r10 + 0x18]
call fcn.1800733b0
mov r10, qword [rsp + 0x70]
mov eax, 0xbf01
mov byte [r10 + 0x26], 5
and word [r10 + 0x24], ax
or word [r10 + 0x24], 1
jmp 0x18007c283
mov rax, qword [r10]
test rax, rax
je 0x18007c21d
mov esi, dword [rax + 0x60]
jmp 0x18007c222
mov esi, 0x3b9aca00
movsxd rcx, esi
mov ebx, r12d
mov rax, r12
test esi, esi
js 0x18007c240
nop
cmp byte [rdi + rax], r12b
je 0x18007c240
inc ebx
inc rax
cmp rax, rcx
jle 0x18007c230
mov rcx, r10
call fcn.180084470
mov r9, qword [rsp + 0x70]
mov rdx, qword [r9 + 0x30]
mov rcx, qword [r9]
call fcn.18005c7d0
mov r10, qword [rsp + 0x70]
mov qword [r10 + 0x30], r12
mov qword [r10 + 8], rdi
mov qword [r10 + 0x28], r12
mov dword [r10 + 0x20], ebx
mov dword [r10 + 0x24], 0x1030a02
cmp ebx, esi
jg 0x180081b46
mov rsi, qword [rsp + 0x78]
test byte [r10 + 0x24], 2
mov r15d, r12d
movzx ecx, byte [rsp + 0x48]
mov dword [rsp + 0x44], r12d
je 0x18007c2b8
movzx eax, byte [r10 + 0x27]
cmp eax, ecx
je 0x18007c2b8
movzx edx, cl
mov rcx, r10
call fcn.180084b00
test eax, eax
jne 0x180081d5f
mov r10, qword [rsp + 0x70]
movzx eax, word [r10 + 0x24]
mov ecx, 0xfbff
and ax, cx
mov qword [r10 + 0x30], r12
mov ecx, 0x800
or ax, cx
mov word [r10 + 0x24], ax
cmp byte [rsi + r14*8 + 1], 0xff
jne 0x18007c2f2
mov rdx, qword [rsi + r14*8 + 0x10]
mov rcx, qword [rsp + 0x68]
call fcn.18005c7d0
mov r10, qword [rsp + 0x70]
mov byte [rsi + r14*8 + 1], 0xff
mov r11d, 4
mov rax, qword [r10 + 8]
mov qword [rsi + r14*8 + 0x10], rax
mov eax, dword [r10 + 0x20]
mov dword [rsi + r14*8 + 4], eax
mov rdi, qword [rsp + 0x68]
mov eax, dword [rdi + 0x60]
cmp dword [rsi + r14*8 + 4], eax
jg 0x180081b4b
mov eax, 0xa02
inc r13d
mov word [r10 + 0x24], ax
mov rax, qword [rsi + r14*8 + 0x10]
mov qword [r10 + 8], rax
mov eax, dword [rsi + r14*8 + 4]
mov dword [r10 + 0x20], eax
movzx eax, byte [rsp + 0x48]
mov byte [r10 + 0x27], al
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
mov r8d, dword [rsi + r14*8 + 4]
xor r9d, r9d
mov rdx, qword [rsi + r14*8 + 0x10]
mov rcx, r10
mov qword [rsp + 0x20], r12
call fcn.180084740
movzx eax, byte [rsp + 0x48]
inc r13d
mov r9, qword [rsp + 0x70]
mov byte [r9 + 0x27], al
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
mov eax, dword [rsi + r14*8 + 4]
dec eax
cdqe
imul rdx, rax, 0x38
mov rax, qword [rsp + 0x50]
add rdx, qword [rax + 0x78]
mov qword [rbp - 0x60], rdx
movzx eax, word [rdx + 0x24]
test al, 0x12
je 0x18007c3d3
mov r8d, dword [rdx + 0x20]
mov ecx, 0x4000
test cx, ax
je 0x18007c3be
add r8d, dword [rdx + 0x18]
mov rax, qword [rdx]
mov ecx, r12d
cmp r8d, dword [rax + 0x60]
setg cl
test ecx, ecx
jne 0x180081b4b
mov r8d, 0x800
mov rcx, r10
call fcn.180084960
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
mov edx, dword [rsi + r14*8 + 0xc]
mov r9, qword [rsp + 0x60]
mov dword [rbp - 0x58], edx
movsxd rax, dword [rsi + r14*8 + 4]
imul rbx, rax, 0x38
mov dword [rbp - 0x54], eax
movsxd rcx, dword [rsi + r14*8 + 8]
add rbx, r9
imul r14, rcx, 0x38
mov dword [rbp - 0x50], ecx
add r14, r9
mov qword [rsp + 0x70], r14
test edx, edx
je 0x18007c46c
nop dword [rax]
nop word [rax + rax]
dec edx
mov rcx, r14
mov dword [rbp - 0x58], edx
mov rdx, rbx
mov rax, qword [r14 + 0x30]
mov qword [rbp - 0x60], rax
mov qword [r14 + 0x30], r12
call fcn.180084260
mov rax, qword [rbp - 0x60]
add r14, 0x38
mov qword [rbx + 0x30], rax
add rbx, 0x38
mov edx, dword [rbp - 0x58]
test edx, edx
jne 0x18007c430
mov qword [rsp + 0x70], r14
lea r11d, [rdx + 4]
mov rax, qword [rsp + 0x58]
dec edx
mov dword [rbp - 0x58], edx
inc r13d
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 8]
mov ebx, 0x1000
imul r9, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 4]
mov r8d, ebx
add r9, qword [rsp + 0x60]
imul rdx, rax, 0x38
mov rcx, r9
mov qword [rsp + 0x70], r9
add rdx, qword [rsp + 0x60]
mov r14, r9
call fcn.180084960
test word [r14 + 0x24], bx
je 0x18007eff2
mov rcx, r14
call fcn.1800841e0
test eax, eax
jne 0x180081d64
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 8]
mov r8d, 0x1000
imul r9, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 4]
add r9, qword [rsp + 0x60]
imul rdx, rax, 0x38
mov rcx, r9
mov qword [rsp + 0x70], r9
add rdx, qword [rsp + 0x60]
call fcn.180084960
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
mov rax, qword [rsp + 0x50]
cmp qword [rax + 0xc8], r12
jg 0x1800817c9
mov edx, 1
mov rcx, rax
call fcn.18007b7c0
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne case.0x18007bfa7.17
mov rcx, qword [rsp + 0x50]
mov eax, dword [rcx + 0x8c]
add eax, 2
or eax, 1
mov dword [rcx + 0x8c], eax
movsxd rax, dword [rsi + r14*8 + 4]
imul rdx, rax, 0x38
mov dword [rbp - 0x58], r12d
add rdx, qword [rsp + 0x60]
mov qword [rcx + 0x28], rdx
mov qword [rbp - 0x60], rdx
cmp dword [rsi + r14*8 + 8], r12d
jle 0x1800817a6
movsxd rax, r12d
imul rcx, rax, 0x38
mov eax, 0x1000
add rcx, rdx
test word [rcx + 0x24], ax
je 0x18007c5aa
call fcn.1800841e0
test eax, eax
jne 0x180081d64
mov r12d, dword [rbp - 0x58]
mov rdx, qword [rbp - 0x60]
movsxd rax, r12d
imul rcx, rax, 0x38
add rcx, rdx
call fcn.1800842d0
movsxd rax, dword [rbp - 0x58]
imul rcx, rax, 0x38
add rcx, qword [rbp - 0x60]
call fcn.1800849d0
mov r12d, dword [rbp - 0x58]
inc r12d
mov dword [rbp - 0x58], r12d
cmp r12d, dword [rsi + r14*8 + 8]
jge 0x1800817a6
mov rdx, qword [rbp - 0x60]
jmp 0x18007c580
movsxd rax, dword [rsi + r14*8 + 4]
mov rcx, qword [rsp + 0x60]
imul rdi, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 8]
imul rbx, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 0xc]
add rdi, rcx
imul r14, rax, 0x38
add rbx, rcx
add r14, rcx
movzx ecx, word [rdi + 0x24]
movzx eax, cl
mov qword [rsp + 0x70], r14
or al, byte [rbx + 0x24]
test al, 1
je 0x18007c63c
mov rcx, r14
call fcn.180084610
mov rax, qword [rsp + 0x58]
inc r13d
mov rdi, qword [rsp + 0x68]
jmp 0x18007befe
mov eax, 0x4000
test ax, cx
je 0x18007c65b
mov rcx, rdi
call fcn.180083c70
test eax, eax
jne 0x180081d5f
mov eax, 0x4000
test word [rbx + 0x24], ax
je 0x18007c671
mov rcx, rbx
call fcn.180083c70
test eax, eax
jne 0x180081d5f
test byte [rdi + 0x24], 0x12
jne 0x18007c68c
movzx edx, byte [rsp + 0x48]
mov rcx, rdi
call fcn.180084a00
test eax, eax
jne 0x180081d5f
test byte [rbx + 0x24], 0x12
jne 0x18007c6a7
movzx edx, byte [rsp + 0x48]
mov rcx, rbx
call fcn.180084a00
test eax, eax
jne 0x180081d5f
mov eax, dword [rbx + 0x20]
add eax, dword [rdi + 0x20]
movsxd rcx, eax
mov rax, qword [rsp + 0x68]
mov qword [rbp - 0x60], rcx
movsxd rax, dword [rax + 0x60]
cmp rcx, rax
jg 0x180081b46
mov eax, 0xbf02
mov r8d, r12d
and word [r14 + 0x24], ax
mov rcx, r14
or word [r14 + 0x24], 2
mov edx, dword [rbp - 0x60]
cmp r14, rbx
sete r8b
add edx, 2
call fcn.180083fa0
test eax, eax
jne 0x180081d5f
cmp r14, rbx
je 0x18007c70c
movsxd r8, dword [rbx + 0x20]
mov rdx, qword [rbx + 8]
mov rcx, qword [r14 + 8]
call fcn.18009b430
movsxd rcx, dword [rbx + 0x20]
add rcx, qword [r14 + 8]
movsxd r8, dword [rdi + 0x20]
mov rdx, qword [rdi + 8]
call fcn.18009b430
mov rax, qword [rbp - 0x60]
mov rcx, qword [r14 + 8]
mov rdi, qword [rsp + 0x68]
mov byte [rax + rcx], r12b
mov rax, qword [rbp - 0x60]
mov rcx, qword [r14 + 8]
mov byte [rcx + rax + 1], r12b
mov eax, 0x200
or word [r14 + 0x24], ax
mov eax, dword [rbp - 0x60]
inc r13d
mov dword [r14 + 0x20], eax
movzx eax, byte [rsp + 0x48]
mov byte [r14 + 0x27], al
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 4]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.180030c30
movsxd rax, dword [rsi + r14*8 + 8]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.180030c30
movsxd rax, dword [rsi + r14*8 + 0xc]
movzx ecx, word [rdi + 0x24]
imul r9, rax, 0x38
movzx eax, word [rbx + 0x24]
add r9, qword [rsp + 0x60]
or ecx, eax
mov qword [rsp + 0x70], r9
mov dword [rbp - 0x60], ecx
test cl, 1
jne 0x18007ca5e
movzx eax, byte [rdi + 0x24]
and al, byte [rbx + 0x24]
test al, 4
je 0x18007c8c8
mov r8, qword [rbx + 0x18]
mov qword [rbp - 0x58], r8
mov rdx, qword [rdi + 0x18]
mov qword [rbp - 0x50], rdx
movzx ecx, byte [rsi + r14*8]
sub ecx, 0x56
je 0x18007c977
sub ecx, 1
je 0x18007c876
sub ecx, 1
je 0x18007c858
cmp ecx, 1
je 0x18007c822
test r8, r8
je 0x18007ca5e
cmp r8, 0xffffffffffffffff
mov eax, 1
cmove r8, rax
mov rax, rdx
cqo
mov qword [rbp - 0x58], r8
idiv r8
jmp 0x18007c9bb
test r8, r8
je 0x18007ca5e
cmp r8, 0xffffffffffffffff
jne 0x18007c844
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x18007c8c8
mov rax, rdx
cqo
idiv r8
mov rdx, rax
mov qword [rbp - 0x50], rax
jmp 0x18007c9bf
mov rdx, r8
lea rcx, [rbp - 0x50]
call fcn.18006b570
test eax, eax
jne 0x18007c8c8
mov rdx, qword [rbp - 0x50]
mov r9, qword [rsp + 0x70]
jmp 0x18007c9bf
movabs r10, 0x8000000000000000
cmp r8, r10
jne 0x18007c892
test rdx, rdx
jns 0x18007c8c8
sub rdx, r10
jmp 0x18007c9bb
neg r8
js 0x18007c94a
test rdx, rdx
jle 0x18007c8b6
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, r8
jl 0x18007c96d
add rdx, r8
mov eax, r12d
mov qword [rbp - 0x50], rdx
test eax, eax
je 0x18007c9bf
mov rcx, rbx
call fcn.180085100
mov rcx, rdi
movsd qword [rbp - 0x48], xmm0
call fcn.180085100
movsd qword [rbp - 0x40], xmm0
movzx ecx, byte [rsi + r14*8]
sub ecx, 0x56
je 0x18007ca06
sub ecx, 1
je 0x18007c9ff
sub ecx, 1
je 0x18007c9f8
cmp ecx, 1
je 0x18007c9e5
cvttsd2si rcx, qword [rbp - 0x48]
cvttsd2si rax, xmm0
mov qword [rbp - 0x58], rcx
mov qword [rbp - 0x50], rax
test rcx, rcx
je 0x18007ca59
cmp rcx, 0xffffffffffffffff
mov edx, 1
xorps xmm0, xmm0
cmove rcx, rdx
cqo
idiv rcx
mov qword [rbp - 0x58], rcx
cvtsi2sd xmm0, rdx
jmp 0x18007ca0b
test rdx, rdx
jns 0x18007c8b6
movabs rax, 0x8000000000000001
lea rcx, [r8 + 1]
sub rax, rdx
cmp rax, rcx
jle 0x18007c8b6
mov eax, 1
jmp 0x18007c8c0
test r8, r8
js 0x18007c999
test rdx, rdx
jle 0x18007c9b8
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, r8
jl 0x18007c8c8
jmp 0x18007c9b8
test rdx, rdx
jns 0x18007c9b8
movabs rcx, 0x8000000000000001
lea rax, [r8 + 1]
sub rcx, rdx
cmp rcx, rax
jg 0x18007c8c8
add rdx, r8
mov qword [rbp - 0x50], rdx
mov rdi, qword [rsp + 0x68]
mov eax, 0xbf04
and word [r9 + 0x24], ax
or word [r9 + 0x24], 4
mov rax, qword [rsp + 0x58]
inc r13d
mov qword [r9 + 0x18], rdx
jmp 0x18007befe
movsd xmm1, qword [rbp - 0x48]
ucomisd xmm1, xmm6
jp 0x18007c9f2
je 0x18007ca59
divsd xmm0, xmm1
jmp 0x18007ca0b
mulsd xmm0, qword [rbp - 0x48]
jmp 0x18007ca0b
subsd xmm0, qword [rbp - 0x48]
jmp 0x18007ca0b
addsd xmm0, qword [rbp - 0x48]
movsd qword [rbp - 0x40], xmm0
call fcn.18006a130
test eax, eax
jne 0x18007ca59
mov r14, qword [rsp + 0x70]
mov eax, 0xbf08
movsd xmm0, qword [rbp - 0x40]
and word [r14 + 0x24], ax
or word [r14 + 0x24], 8
movsd qword [r14 + 0x10], xmm0
test byte [rbp - 0x60], 8
jne 0x18007ca47
mov rcx, r14
call fcn.180083200
mov rdi, qword [rsp + 0x68]
inc r13d
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
mov r9, qword [rsp + 0x70]
mov rcx, r9
call fcn.180084610
mov rax, qword [rsp + 0x58]
inc r13d
mov rdi, qword [rsp + 0x68]
jmp 0x18007befe
movzx ecx, byte [rsi + r14*8 + 3]
mov rax, qword [rsp + 0x50]
mov r9, qword [rsp + 0x60]
mov dword [rbp + 0x18], ecx
mov r8, qword [rax + 0x18]
mov qword [rbp + 0x10], r8
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rbx, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 8]
imul rdx, rax, 0x38
add rbx, r9
mov eax, r12d
add rdx, r9
mov qword [rsp + 0x70], rbx
mov qword [rbp - 0x58], rdx
mov dword [rbp - 0x60], eax
test ecx, ecx
jle 0x18007cb0a
nop
cdqe
mov qword [r8 + rax*8], rdx
mov eax, 0x1000
mov rcx, qword [rbp - 0x58]
test word [rcx + 0x24], ax
je 0x18007cae6
call fcn.1800841e0
test eax, eax
jne 0x180081d64
mov rcx, qword [rbp - 0x58]
call fcn.1800849d0
mov eax, dword [rbp - 0x60]
mov rdx, qword [rbp - 0x58]
inc eax
add rdx, 0x38
mov dword [rbp - 0x60], eax
mov qword [rbp - 0x58], rdx
cmp eax, dword [rbp + 0x18]
jge 0x18007cb0a
mov r8, qword [rbp + 0x10]
jmp 0x18007cac0
cmp byte [rsi + r14*8 + 1], 0xfb
mov rax, qword [rsi + r14*8 + 0x10]
jne 0x18007cb1d
mov qword [rbp - 0x48], r12
jmp 0x18007cb24
mov qword [rbp - 0x48], rax
mov rax, qword [rax]
mov qword [rbp - 0x50], rax
xor edx, edx
mov eax, 1
mov qword [rbp - 0x40], rdi
mov rcx, rdi
mov word [rbp - 0x1c], ax
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], r12
call fcn.18005c7d0
mov qword [rbp - 0x38], r12
mov eax, 1
mov qword [rbp - 0x10], r12
mov qword [rbp - 0x18], r12
movups xmm0, xmmword [rbx]
movaps xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rbx + 0x10]
movaps xmmword [rbp - 0x30], xmm1
movups xmm0, xmmword [rbx + 0x20]
movaps xmmword [rbp - 0x20], xmm0
movsd xmm1, qword [rbx + 0x30]
movsd qword [rbp - 0x10], xmm1
mov word [rbx + 0x24], ax
mov qword [rbx + 0x28], r12
mov qword [rbx + 0x30], r12
mov ebx, 0xbf01
movzx eax, word [rbp - 0x1c]
and ax, bx
mov dword [rbp], r12d
or ax, 1
mov word [rbp - 0x1c], ax
mov rax, qword [rbp - 0x50]
test byte [rax + 3], 8
je 0x18007cbb0
mov rax, qword [rsi + r14*8 - 8]
mov qword [rbp + 8], rax
mov rax, qword [rbp - 0x80]
lea rcx, [rbp - 0x50]
mov qword [rdi + 0x40], rax
mov rax, qword [rbp - 0x50]
mov r8, qword [rbp + 0x10]
mov edx, dword [rbp + 0x18]
call qword [rax + 0x18]
mov rcx, qword [rbp - 0x48]
mov rax, qword [rdi + 0x40]
mov qword [rbp - 0x80], rax
test rcx, rcx
je 0x18007cbf4
mov edx, dword [rsi + r14*8 + 4]
call fcn.18007bb30
mov rax, qword [rbp - 0x48]
mov qword [rsi + r14*8 + 0x10], rax
mov byte [rsi + r14*8 + 1], 0xf9
cmp byte [rdi + 0x2a], r12b
jne 0x1800817fd
cmp dword [rbp], r12d
je 0x18007cc99
test byte [rbp - 0x1c], 1
je 0x18007cc13
mov r9, r12
jmp 0x18007cc78
movzx ecx, word [rbp - 0x1c]
movzx eax, cx
shr ax, 3
and ax, 2
or cx, ax
mov eax, 0x4000
mov word [rbp - 0x1c], cx
test ax, cx
je 0x18007cc3c
lea rcx, [rbp - 0x40]
call fcn.180083c70
test byte [rbp - 0x1c], 2
je 0x18007cc5e
cmp byte [rbp - 0x19], 1
je 0x18007cc53
mov dl, 1
lea rcx, [rbp - 0x40]
call fcn.180084b00
lea rcx, [rbp - 0x40]
call fcn.1800842d0
jmp 0x18007cc6c
mov edx, 1
lea rcx, [rbp - 0x40]
call fcn.180084a00
cmp byte [rbp - 0x19], 1
mov r9, r12
cmove r9, qword [rbp - 0x38]
mov rcx, qword [rsp + 0x50]
lea r8, [0x1800cd984]
add rcx, 0x58
mov rdx, rdi
call fcn.1800763c0
mov r15d, dword [rbp]
mov dword [rsp + 0x44], r15d
test byte [rbp - 0x1c], 2
movzx ecx, byte [rsp + 0x48]
je 0x18007ccb8
movzx eax, byte [rbp - 0x19]
cmp eax, ecx
je 0x18007ccb8
movzx edx, cl
lea rcx, [rbp - 0x40]
call fcn.180084b00
mov r14, qword [rsp + 0x70]
mov rcx, r14
call fcn.180084470
mov rdx, qword [r14 + 0x30]
mov rcx, qword [r14]
call fcn.18005c7d0
mov qword [r14 + 8], r12
mov eax, 1
mov qword [r14 + 0x30], r12
mov qword [r14 + 0x28], r12
movaps xmm0, xmmword [rbp - 0x40]
movups xmmword [r14], xmm0
movaps xmm1, xmmword [rbp - 0x30]
movups xmmword [r14 + 0x10], xmm1
movaps xmm0, xmmword [rbp - 0x20]
movups xmmword [r14 + 0x20], xmm0
movsd xmm1, qword [rbp - 0x10]
movsd qword [r14 + 0x30], xmm1
mov word [rbp - 0x1c], ax
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], r12
movzx eax, word [r14 + 0x24]
test al, 0x12
je case.0x18007bfa7.17
mov edx, dword [r14 + 0x20]
mov ecx, 0x4000
test cx, ax
je 0x18007cd32
add edx, dword [r14 + 0x18]
mov rax, qword [r14]
mov ecx, r12d
cmp edx, dword [rax + 0x60]
setg cl
test ecx, ecx
jne 0x180081b4b
jmp case.0x18007bfa7.17
mov rdx, qword [rsp + 0x60]
movsxd rax, dword [rsi + r14*8 + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 8]
imul rcx, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 0xc]
add rbx, rdx
imul r9, rax, 0x38
add rcx, rdx
add r9, rdx
mov qword [rsp + 0x70], r9
movzx eax, byte [rcx + 0x24]
or al, byte [rbx + 0x24]
test al, 1
je 0x18007cd99
mov rcx, r9
call fcn.180084610
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
call fcn.180083170
mov rcx, rbx
mov qword [rbp - 0x60], rax
call fcn.180083170
mov qword [rbp - 0x50], rax
mov rcx, rax
movzx edx, byte [rsi + r14*8]
mov byte [rbp - 0x48], dl
cmp dl, 0x52
jne 0x18007cdce
mov r8, qword [rbp - 0x60]
and r8, rax
mov qword [rbp - 0x60], r8
jmp 0x18007ce80
cmp dl, 0x53
jne 0x18007cde3
mov r8, qword [rbp - 0x60]
or r8, rcx
mov qword [rbp - 0x60], r8
jmp 0x18007ce80
test rcx, rcx
je 0x18007ce7c
jns 0x18007ce08
mov eax, 0xa9
sub al, dl
mov byte [rbp - 0x48], al
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x18007ce23
neg rcx
mov qword [rbp - 0x50], rcx
cmp rcx, 0x40
jl 0x18007ce37
cmp qword [rbp - 0x60], r12
jge 0x18007ce2e
cmp dl, 0x54
je 0x18007ce2e
or r8, 0xffffffffffffffff
mov qword [rbp - 0x60], r8
jmp 0x18007ce80
mov eax, 0x40
mov qword [rbp - 0x50], rax
jmp 0x18007ce0e
mov r8, r12
mov qword [rbp - 0x60], r12
jmp 0x18007ce80
cmp dl, 0x54
jne 0x18007ce4d
mov r8, qword [rbp - 0x60]
shl r8, cl
mov qword [rbp - 0x58], r8
mov qword [rbp - 0x60], r8
jmp 0x18007ce80
mov rax, qword [rbp - 0x60]
mov r8, rax
shr r8, cl
mov qword [rbp - 0x58], r8
test rax, rax
jns 0x18007ce76
or rdx, 0xffffffffffffffff
mov ecx, 0x40
sub cl, byte [rbp - 0x50]
shl rdx, cl
or r8, rdx
mov qword [rbp - 0x58], r8
mov qword [rbp - 0x60], r8
jmp 0x18007ce80
mov r8, qword [rbp - 0x60]
mov rax, qword [rsp + 0x70]
mov ecx, 0xbf04
and word [rax + 0x24], cx
or word [rax + 0x24], 4
mov qword [rax + 0x18], r8
inc r13d
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 4]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.1800841b0
movsxd rax, dword [rsi + r14*8 + 8]
add qword [rbx + 0x18], rax
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 4]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.180030c30
test byte [rbx + 0x24], 8
je 0x18007cef4
mov rcx, rbx
call fcn.180083200
movzx eax, word [rbx + 0x24]
test al, 4
jne 0x18007cf16
mov eax, dword [rsi + r14*8 + 8]
test eax, eax
je 0x1800818c0
mov r13d, eax
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
mov ecx, 0xbf04
and ax, cx
or ax, 4
mov word [rbx + 0x24], ax
inc r13d
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
test byte [rcx + 0x24], 4
je 0x18007cf52
call fcn.1800843d0
mov r11d, 4
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 4]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
movzx eax, word [rbx + 0x24]
test al, 1
jne case.0x18007bfa7.17
shr ax, 3
and ax, 2
or word [rbx + 0x24], ax
movzx eax, word [rbx + 0x24]
test al, 2
jne 0x18007cf9e
test al, 0xc
je 0x18007cf9e
movzx edx, byte [rsp + 0x48]
mov rcx, rbx
call fcn.180084a00
mov eax, 0xfff3
and word [rbx + 0x24], ax
mov eax, 0x4000
test word [rbx + 0x24], ax
je 0x18007cfcf
mov rcx, rbx
call fcn.180083c70
mov r15d, eax
mov dword [rsp + 0x44], eax
mov eax, 0xbfe3
and word [rbx + 0x24], ax
jmp case.0x18007bfa7.17
mov eax, 0xbfe3
mov dword [rsp + 0x44], r12d
and word [rbx + 0x24], ax
mov r15d, r12d
jmp case.0x18007bfa7.17
movsxd rax, dword [rsi + r14*8 + 4]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
movzx eax, word [rbx + 0x24]
test al, 1
jne case.0x18007bfa7.17
test al, 0x10
jne 0x18007d039
test al, 2
jne 0x18007d01e
test al, 0xc
je 0x18007d01e
movzx edx, byte [rsp + 0x48]
mov rcx, rbx
call fcn.180084a00
mov r11d, 4
mov eax, 0xbf10
and word [rbx + 0x24], ax
or word [rbx + 0x24], 0x10
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007bf04
mov ecx, 0xff10
and ax, cx
mov word [rbx + 0x24], ax
inc r13d
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
call fcn.180084350
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
test byte [rcx + 0x24], 1
jne 0x18007cf52
call fcn.1800841b0
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
test byte [rcx + 0x24], 1
jne 0x18007cf52
jmp 0x18007cf47
movsxd rax, dword [rsi + r14*8 + 4]
mov r9, qword [rsp + 0x60]
imul rbx, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rdi, rax, 0x38
add rbx, r9
add rdi, r9
movzx edx, word [rbx + 0x24]
mov word [rbp - 0x5a], dx
movzx ecx, word [rdi + 0x24]
movzx eax, cl
mov word [rbp - 0x58], cx
or al, dl
test al, 1
je 0x18007d164
movzx eax, byte [rsi + r14*8 + 3]
test al, al
jns 0x18007d111
and cx, dx
movzx r8d, cx
not r8w
and r8d, 1
mov dword [rbp - 0x60], r8d
jmp 0x18007d1e8
test al, 0x10
je 0x18007d146
movsxd rax, dword [rsi + r14*8 + 8]
mov ecx, 0xbf01
mov rdi, qword [rsp + 0x68]
imul rax, rax, 0x38
add rax, r9
mov qword [rsp + 0x70], rax
and word [rax + 0x24], cx
or word [rax + 0x24], 1
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007bf04
test al, 8
je 0x18007d152
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
mov rdi, qword [rsp + 0x68]
inc r13d
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
movzx edx, byte [rsi + r14*8 + 3]
and dl, 0x67
mov byte [rbp - 0x5c], dl
je 0x18007d1a1
movzx r8d, byte [rsp + 0x48]
mov rcx, rbx
call fcn.180030bd0
movzx r8d, byte [rsp + 0x48]
mov rcx, rdi
movzx edx, byte [rbp - 0x5c]
call fcn.180030bd0
mov rax, qword [rsp + 0x68]
cmp byte [rax + 0x2a], r12b
jne 0x180081d5a
mov eax, 0x4000
test word [rbx + 0x24], ax
je 0x18007d1b9
mov rcx, rbx
call fcn.180083c70
mov eax, 0x4000
test word [rdi + 0x24], ax
je 0x18007d1c7
mov rcx, rdi
call fcn.180083c70
mov r8, qword [rsi + r14*8 + 0x10]
mov rdx, rbx
mov rcx, rdi
call fcn.18006aea0
mov r9, qword [rsp + 0x60]
mov r8d, eax
mov dword [rbp - 0x60], eax
mov r11d, 4
movzx edx, byte [rsi + r14*8]
mov eax, r12d
sub edx, 0x4b
je 0x18007d231
sub edx, 1
je 0x18007d229
sub edx, 1
je 0x18007d221
sub edx, 1
je 0x18007d219
cmp edx, 1
je 0x18007d211
test r8d, r8d
setns al
jmp 0x18007d237
test r8d, r8d
sets al
jmp 0x18007d237
test r8d, r8d
setle al
jmp 0x18007d237
test r8d, r8d
setg al
jmp 0x18007d237
test r8d, r8d
sete al
jmp 0x18007d237
test r8d, r8d
setne al
mov dword [rbp - 0x60], eax
test byte [rsi + r14*8 + 3], 0x10
je 0x18007d26b
movsxd rax, dword [rsi + r14*8 + 8]
imul rcx, rax, 0x38
mov eax, 0xbf04
add rcx, r9
mov qword [rsp + 0x70], rcx
and word [rcx + 0x24], ax
or word [rcx + 0x24], 4
movsxd rax, dword [rbp - 0x60]
mov qword [rcx + 0x18], rax
jmp 0x18007d277
test eax, eax
je 0x18007d277
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
movzx eax, byte [rbp - 0x5a]
inc r13d
mov byte [rbx + 0x24], al
movzx eax, byte [rbp - 0x58]
mov byte [rdi + 0x24], al
mov rdi, qword [rsp + 0x68]
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
mov rax, qword [rsi + r14*8 + 0x10]
inc r13d
mov qword [rbp - 0x68], rax
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
mov eax, dword [rsi + r14*8 + 0xc]
mov ecx, r12d
mov dword [rbp - 0x60], eax
mov rdx, qword [rsi + r14*8 + 0x10]
mov qword [rbp - 0x50], rdx
mov r10d, dword [rsi + r14*8 + 4]
mov dword [rbp - 0x58], r10d
mov r11d, dword [rsi + r14*8 + 8]
mov dword [rbp - 0x54], r11d
mov dword [rbp - 0x5c], ecx
test eax, eax
jle 0x18007d369
mov rbx, qword [rsp + 0x60]
mov r8, qword [rbp - 0x68]
test r8, r8
je 0x18007d2f9
movsxd rax, ecx
mov r9d, dword [r8 + rax*4]
mov dword [rbp - 0x48], r9d
jmp 0x18007d2ff
mov r9d, ecx
mov dword [rbp - 0x48], ecx
movsxd rcx, ecx
mov r8, qword [rdx + rcx*8 + 0x18]
mov qword [rbp - 0x40], r8
mov rax, qword [rdx + 0x10]
movzx ecx, byte [rax + rcx]
lea eax, [r9 + r11]
mov dword [rbp - 0x38], ecx
movsxd rcx, eax
lea eax, [r9 + r10]
imul rdx, rcx, 0x38
movsxd rcx, eax
imul rcx, rcx, 0x38
add rdx, rbx
add rcx, rbx
call fcn.18006aea0
mov dword [rbp - 0x78], eax
mov r14d, eax
test eax, eax
jne 0x18007d35c
mov ecx, dword [rbp - 0x5c]
inc ecx
mov dword [rbp - 0x5c], ecx
cmp ecx, dword [rbp - 0x60]
jge 0x18007d369
mov rdx, qword [rbp - 0x50]
mov r11d, dword [rbp - 0x54]
mov r10d, dword [rbp - 0x58]
jmp 0x18007d2e3
cmp dword [rbp - 0x38], r12d
je 0x18007d369
neg r14d
mov dword [rbp - 0x78], r14d
mov rax, qword [rsp + 0x58]
inc r13d
mov qword [rbp - 0x68], r12
jmp 0x18007befe
mov ebx, dword [rbp - 0x78]
test ebx, ebx
jns 0x18007d390
mov r13d, dword [rsi + r14*8 + 4]
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
jne 0x18007d3a1
mov r13d, dword [rsi + r14*8 + 8]
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
mov r13d, dword [rsi + r14*8 + 0xc]
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 4]
mov rbx, qword [rsp + 0x60]
imul rcx, rax, 0x38
add rcx, rbx
test byte [rcx + 0x24], 1
je 0x18007d3d2
mov r8d, 2
mov ecx, r8d
jmp 0x18007d3e6
call fcn.180083170
test rax, rax
mov ecx, r12d
mov r8d, 2
setne cl
mov dword [rbp - 0x60], ecx
movsxd rax, dword [rsi + r14*8 + 8]
imul rdx, rax, 0x38
add rdx, rbx
test byte [rdx + 0x24], 1
je 0x18007d400
mov edx, r8d
jmp 0x18007d414
mov rcx, rdx
call fcn.180083170
mov ecx, dword [rbp - 0x60]
test rax, rax
mov edx, r12d
setne dl
lea eax, [rdx + rcx*2]
mov dword [rbp - 0x5c], edx
add eax, ecx
lea rcx, [0x180000000]
cmp byte [rsi + r14*8], 0x45
cdqe
jne 0x18007d436
movzx ecx, byte [rax + rcx + 0xca8e0]
jmp 0x18007d43e
movzx ecx, byte [rax + rcx + 0xca8f8]
mov dword [rbp - 0x60], ecx
movsxd rax, dword [rsi + r14*8 + 0xc]
imul r14, rax, 0x38
add r14, rbx
mov qword [rsp + 0x70], r14
cmp ecx, 2
jne 0x18007d474
mov eax, 0xbf01
and word [r14 + 0x24], ax
or word [r14 + 0x24], 1
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
movsxd rax, ecx
mov qword [r14 + 0x18], rax
mov eax, 0xbf04
and word [r14 + 0x24], ax
or word [r14 + 0x24], 4
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 8]
add rcx, qword [rsp + 0x60]
imul r14, rax, 0x38
add r14, qword [rsp + 0x60]
test byte [rcx + 0x24], 1
mov qword [rsp + 0x70], r14
je 0x18007d4d4
mov rcx, r14
call fcn.180084610
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
call fcn.180083170
test rax, rax
mov rdx, r12
mov rcx, r14
sete dl
call fcn.1800845c0
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 8]
add rcx, qword [rsp + 0x60]
imul r14, rax, 0x38
add r14, qword [rsp + 0x60]
test byte [rcx + 0x24], 1
mov qword [rsp + 0x70], r14
je 0x18007d533
mov rcx, r14
call fcn.180084610
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
call fcn.180083170
not rax
mov rcx, r14
mov rdx, rax
call fcn.1800845c0
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
test byte [rcx + 0x24], 1
je 0x18007d571
mov ecx, dword [rsi + r14*8 + 0xc]
mov dword [rbp - 0x60], ecx
jmp 0x18007d5a3
call fcn.180085100
ucomisd xmm0, xmm6
jp 0x18007d581
mov ecx, r12d
je 0x18007d586
mov ecx, 1
mov dword [rbp - 0x60], ecx
mov r11d, 4
cmp byte [rsi + r14*8], 0x1b
jne 0x18007d5a3
mov eax, r12d
test ecx, ecx
sete al
mov ecx, eax
mov dword [rbp - 0x60], eax
test ecx, ecx
je 0x18007cf52
mov r13d, dword [rsi + r14*8 + 8]
mov rax, qword [rsp + 0x58]
dec r13d
inc r13d
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x60]
test byte [rcx + rax + 0x24], 1
je 0x18007cf52
mov r13d, dword [rsi + r14*8 + 8]
mov rax, qword [rsp + 0x58]
dec r13d
inc r13d
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x60]
test byte [rcx + rax + 0x24], 1
jne 0x18007cf52
mov r13d, dword [rsi + r14*8 + 8]
mov rax, qword [rsp + 0x58]
dec r13d
inc r13d
jmp 0x18007bf04
mov eax, dword [rsi + r14*8 + 4]
mov edx, 0xbf01
mov rbx, qword [rsp + 0x60]
mov dword [rbp - 0x50], eax
mov eax, dword [rsi + r14*8 + 8]
mov dword [rbp - 0x4c], eax
xor eax, eax
mov qword [rbp], rax
mov qword [rbp + 8], rax
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], rax
mov qword [rbp - 0x48], r12
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rcx, rax, 0x38
add rcx, rbx
mov qword [rbp - 8], rcx
movzx eax, word [rcx + 0x24]
and ax, dx
or ax, 1
mov word [rcx + 0x24], ax
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rbp - 0x50]
mov qword [rbp - 0x40], r12
mov rax, qword [rax + 0x70]
mov rdx, qword [rax + rcx*8]
mov qword [rbp - 0x48], rdx
mov rax, qword [rdx]
mov qword [rbp - 0x38], rax
test rax, rax
je 0x18007d7a8
mov rcx, rdx
call fcn.18007ba20
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x180081a6b
mov rdx, qword [rbp - 0x48]
cmp byte [rdx + 0x28], r12b
je 0x18007d6d2
mov rax, qword [rsp + 0x58]
inc r13d
mov dword [rbp - 0x60], r12d
jmp 0x18007befe
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x8c]
cmp dword [rdx + 0x5c], eax
jne 0x18007d6f5
mov ecx, dword [rdx + 0x60]
mov dword [rbp - 0x60], ecx
mov rax, qword [rdx + 0x78]
mov qword [rbp - 0x40], rax
jmp 0x18007d7ef
mov rbx, qword [rbp - 0x38]
cmp byte [rdx + 0x2b], r12b
je 0x18007d742
cmp byte [rbx + 0x6f], 1
je 0x18007d71c
mov ecx, r12d
mov qword [rbp - 0x58], r12
mov dword [rbp - 0x60], ecx
mov r15d, r12d
mov dword [rsp + 0x44], r12d
jmp 0x18007d7ef
mov rcx, rbx
call fcn.180042c00
mov rax, qword [rbx + 0x38]
mov r15d, r12d
mov rdx, qword [rbp - 0x48]
mov ecx, eax
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x60], eax
mov dword [rsp + 0x44], r12d
jmp 0x18007d7ef
cmp word [rbx + 0x56], r12w
jne 0x18007d798
movsx rax, word [rbx + 0x7a]
lea r8, [rbx + 0x38]
mov r10, qword [rbx + rax*8 + 0xa8]
movzx edx, word [rbx + rax*2 + 0x7c]
mov r9, qword [r10 + 0x70]
movzx eax, word [r10 + 0xc]
lea ecx, [rax + rdx*2]
movzx eax, byte [rcx + r9]
movzx edx, byte [rcx + r9 + 1]
mov rcx, r10
shl rax, 8
or rdx, rax
movzx eax, word [r10 + 0x12]
and rdx, rax
add rdx, r9
call fcn.1800348f0
mov byte [rbx + 0x6e], 1
mov rdx, qword [rbp - 0x48]
mov ecx, dword [rbx + 0x48]
mov r15d, r12d
mov dword [rbp - 0x60], ecx
mov dword [rsp + 0x44], r12d
jmp 0x18007d7ef
movsxd rax, dword [rdx + 0x1c]
test eax, eax
jle 0x18007de21
imul rcx, rax, 0x38
add rcx, rbx
mov qword [rbp + 0x58], rcx
mov eax, dword [rcx + 0x20]
mov dword [rbp - 0x60], eax
mov rax, qword [rcx + 8]
mov qword [rbp - 0x40], rax
test byte [rsi + r14*8 + 3], 0x20
je 0x18007d7da
mov eax, r12d
jmp 0x18007d7e5
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x8c]
mov dword [rdx + 0x5c], eax
mov rdx, qword [rbp - 0x48]
mov ecx, dword [rbp - 0x60]
test ecx, ecx
je case.0x18007bfa7.17
cmp ecx, dword [rdi + 0x60]
ja 0x180081b4b
movsxd r8, dword [rdx + 0x20]
mov r15, qword [rsp + 0x50]
mov dword [rbp - 0x20], r8d
mov rcx, qword [rdx + 0x68]
mov qword [rbp - 0x30], rcx
mov eax, dword [r15 + 0x8c]
cmp dword [rdx + 0x5c], eax
jne 0x18007d841
mov rax, qword [rdx + 0x70]
mov r15d, 0x2460
mov r10, qword [rbp + 0x28]
movzx r9d, word [rbp + 0x24]
mov r11, qword [rbp + 8]
mov qword [rbp - 0x28], rax
jmp 0x18007dbe6
lea rcx, [rcx + r8*4]
mov dword [rbp + 0x54], r12d
mov qword [rbp - 0x28], rcx
mov qword [rdx + 0x70], rcx
mov ecx, dword [rbp - 0x60]
mov rax, qword [rbp - 0x48]
mov dword [rax + 0x60], ecx
mov ecx, dword [r15 + 0x8c]
mov rax, qword [rbp - 0x48]
mov dword [rax + 0x5c], ecx
mov rcx, qword [rbp - 0x40]
test rcx, rcx
je 0x18007d87b
mov qword [rbp - 0x10], rcx
jmp 0x18007d941
mov r8, qword [rbp - 0x48]
cmp byte [r8 + 0x2b], r12b
je 0x18007d8a2
mov rcx, qword [rbp - 0x38]
lea rdx, [rbp + 0x54]
call fcn.180058030
mov r8, qword [rbp - 0x48]
mov rcx, rax
mov qword [rbp - 0x10], rax
jmp 0x18007d927
mov rbx, qword [rbp - 0x38]
mov rcx, r12
cmp byte [rbx + 0x6f], 1
jne 0x18007d923
movsx rax, word [rbx + 0x7a]
mov rdi, qword [rbx + rax*8 + 0xa8]
cmp word [rbx + 0x56], cx
jne 0x18007d8fe
movzx ecx, word [rbx + rax*2 + 0x7c]
lea r8, [rbx + 0x38]
mov r9, qword [rdi + 0x70]
movzx eax, word [rdi + 0xc]
lea ecx, [rax + rcx*2]
movzx eax, byte [rcx + r9]
movzx edx, byte [rcx + r9 + 1]
mov rcx, rdi
shl rax, 8
or rdx, rax
movzx eax, word [rdi + 0x12]
and rdx, rax
add rdx, r9
call fcn.1800348f0
mov r8, qword [rbp - 0x48]
movzx edx, word [rbx + 0x50]
add rdx, qword [rbx + 0x40]
mov ecx, r12d
cmp byte [rdi + 2], r12b
jne 0x18007d912
mov ecx, dword [rbx + 0x38]
movzx eax, word [rbx + 0x52]
mov rdi, qword [rsp + 0x68]
sub eax, ecx
mov dword [rbp + 0x54], eax
add rcx, rdx
mov qword [rbp - 0x10], rcx
mov eax, dword [rbp + 0x54]
cmp dword [rbp - 0x60], eax
ja 0x18007d939
mov qword [rbp - 0x40], rcx
mov qword [r8 + 0x78], rcx
jmp 0x18007d93d
mov qword [r8 + 0x78], r12
mov rcx, qword [rbp - 0x10]
movzx eax, byte [rcx]
cmp al, 0x80
jae 0x18007d959
movzx r8d, al
mov ebx, 1
mov dword [rbp + 0x48], r8d
mov eax, ebx
jmp 0x18007d972
lea rdx, [rbp + 0x48]
call fcn.180067440
mov r8d, dword [rbp + 0x48]
mov ebx, 1
mov rcx, qword [rbp - 0x10]
movzx eax, al
movzx r9d, al
mov dword [rbp + 0x50], r9d
cmp r8d, 0x18003
ja 0x1800818cb
mov r10d, dword [rbp - 0x20]
lea edx, [r10*4 + 3]
add edx, r10d
cmp edx, r8d
cmovg edx, r8d
mov dword [rbp - 0x1c], edx
cmp qword [rbp - 0x40], r12
jne 0x18007d9fa
cmp dword [rbp + 0x54], edx
jge 0x18007d9fa
mov rax, qword [rbp - 0x48]
mov r8d, edx
mov rcx, qword [rbp - 0x38]
xor edx, edx
mov word [rbp + 0x24], r12w
mov qword [rbp], r12
movzx r9d, byte [rax + 0x2b]
lea rax, [rbp]
mov qword [rsp + 0x20], rax
call fcn.180083db0
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne case.0x18007bfa7.17
mov rcx, qword [rbp + 8]
mov r9d, dword [rbp + 0x50]
mov r8d, dword [rbp + 0x48]
mov edx, dword [rbp - 0x1c]
mov r10d, dword [rbp - 0x20]
mov qword [rbp - 0x10], rcx
movsxd rax, edx
mov edx, r12d
add rax, rcx
movsxd r9, r9d
add r9, rcx
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x38], r9
mov dword [rbp - 0x18], edx
test r10d, r10d
jle 0x18007dabb
nop dword [rax]
cmp r9, rax
movsxd rcx, edx
mov rax, qword [rbp - 0x28]
jae 0x18007daf4
mov dword [rax + rcx*4], r8d
mov r8, qword [rbp + 0x38]
movsxd rcx, dword [rbp - 0x18]
movzx eax, byte [r8]
cmp al, 0x80
jae 0x18007da52
movzx edx, al
mov rax, qword [rbp - 0x30]
mov dword [rax + rcx*4], edx
mov eax, ebx
jmp 0x18007da65
mov rax, qword [rbp - 0x30]
lea rdx, [rax + rcx*4]
mov rcx, r8
call fcn.180067440
movzx eax, al
mov r9, qword [rbp + 0x38]
movsxd rdx, dword [rbp - 0x18]
movzx eax, al
add r9, rax
mov rax, qword [rbp - 0x30]
mov qword [rbp + 0x38], r9
mov r8d, dword [rax + rdx*4]
cmp r8d, 0xc
jb 0x18007da8d
lea eax, [r8 - 0xc]
shr eax, 1
jmp 0x18007da9d
lea rcx, [0x180000000]
movzx eax, byte [r8 + rcx + 0xca3e8]
mov r8d, dword [rbp + 0x48]
add r8d, eax
mov dword [rbp + 0x4c], eax
mov dword [rbp + 0x48], r8d
cmp r8d, eax
jae 0x18007db03
mov rax, qword [rbp + 0x40]
inc rax
mov qword [rbp + 0x38], rax
movzx eax, word [rbp + 0x24]
mov r15d, 0x2460
test r15w, ax
je 0x18007db8c
mov ecx, 0x2000
test cx, ax
je 0x18007db16
mov rdx, qword [rbp + 0x18]
lea rcx, [rbp]
call fcn.180083ce0
lea rcx, [rbp]
call fcn.180084440
jmp 0x18007db8c
mov dword [rax + rcx*4], r12d
mov r8d, dword [rbp + 0x48]
mov r9, qword [rbp + 0x38]
mov edx, dword [rbp - 0x18]
inc edx
mov dword [rbp - 0x18], edx
cmp edx, dword [rbp - 0x20]
jge 0x18007dabb
mov rax, qword [rbp + 0x40]
jmp 0x18007da20
mov ecx, 0x400
test cx, ax
je 0x18007db35
mov rax, qword [rbp + 0x28]
test rax, rax
je 0x18007db35
mov rcx, qword [rbp + 8]
call rax
mov qword [rbp + 0x28], r12
jmp 0x18007db8c
movzx eax, byte [rbp + 0x24]
test al, 0x20
je 0x18007db48
mov rcx, qword [rbp + 0x18]
call fcn.1800733b0
jmp 0x18007db8c
test al, 0x40
je 0x18007db8c
mov rdx, qword [rbp + 0x18]
mov rax, qword [rdx]
mov rcx, qword [rax + 0xf0]
mov qword [rdx + 0x60], rcx
mov qword [rax + 0xf0], rdx
test byte [rbp + 0x24], 0x20
je 0x18007db74
mov rcx, qword [rbp + 0x18]
call fcn.1800733b0
movzx eax, word [rbp + 0x24]
mov ecx, 0xbf01
and ax, cx
mov byte [rbp + 0x26], 5
or ax, 1
mov word [rbp + 0x24], ax
mov rdx, qword [rbp + 0x30]
mov rcx, qword [rbp]
call fcn.18005c7d0
mov rdx, qword [rbp + 0x38]
mov r11, r12
mov r8, qword [rbp + 0x40]
mov r10, r12
mov qword [rbp + 8], r12
mov r9d, ebx
mov qword [rbp + 0x30], r12
mov qword [rbp + 0x28], r12
mov word [rbp + 0x24], bx
cmp rdx, r8
ja 0x18007ddf3
mov eax, dword [rbp + 0x48]
mov ecx, dword [rbp - 0x60]
cmp eax, ecx
ja 0x18007ddf3
cmp rdx, r8
jne 0x18007dbde
cmp eax, ecx
jne 0x18007ddf3
mov rax, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x30]
movsxd rdx, dword [rbp - 0x4c]
cmp dword [rax + rdx*4], r12d
je 0x18007dd8a
cmp qword [rbp - 0x40], r12
je 0x18007dc17
mov rcx, qword [rbp - 8]
call fcn.180084470
movsxd rdx, dword [rbp - 0x4c]
mov rax, qword [rbp - 0x28]
mov ecx, dword [rax + rdx*4]
add rcx, qword [rbp - 0x40]
jmp 0x18007dd6c
mov eax, dword [rcx + rdx*4]
cmp eax, 0xc
jb 0x18007dc26
add eax, 0xfffffff4
shr eax, 1
jmp 0x18007dc35
lea rcx, [0x180000000]
movzx eax, byte [rax + rcx + 0xca3e8]
mov rbx, qword [rbp - 8]
mov dword [rbp - 0x1c], eax
test r15w, r9w
je 0x18007dcdc
mov eax, 0x2000
test ax, r9w
je 0x18007dc69
mov rdx, qword [rbp + 0x18]
lea rcx, [rbp]
call fcn.180083ce0
lea rcx, [rbp]
call fcn.180084440
jmp 0x18007dcdc
mov eax, 0x400
test ax, r9w
je 0x18007dc85
test r10, r10
je 0x18007dc85
mov rcx, r11
call r10
mov qword [rbp + 0x28], r12
jmp 0x18007dcdc
movzx eax, byte [rbp + 0x24]
test al, 0x20
je 0x18007dc98
mov rcx, qword [rbp + 0x18]
call fcn.1800733b0
jmp 0x18007dcdc
test al, 0x40
je 0x18007dcdc
mov rdx, qword [rbp + 0x18]
mov rax, qword [rdx]
mov rcx, qword [rax + 0xf0]
mov qword [rdx + 0x60], rcx
mov qword [rax + 0xf0], rdx
test byte [rbp + 0x24], 0x20
je 0x18007dcc4
mov rcx, qword [rbp + 0x18]
call fcn.1800733b0
movzx eax, word [rbp + 0x24]
mov ecx, 0xbf01
and ax, cx
mov byte [rbp + 0x26], 5
or ax, 1
mov word [rbp + 0x24], ax
mov rdx, qword [rbp + 0x30]
mov rcx, qword [rbp]
call fcn.18005c7d0
mov qword [rbp + 8], r12
mov eax, 1
mov qword [rbp + 0x30], r12
mov qword [rbp + 0x28], r12
movups xmm0, xmmword [rbx]
movaps xmmword [rbp], xmm0
movups xmm1, xmmword [rbx + 0x10]
movaps xmmword [rbp + 0x10], xmm1
movups xmm0, xmmword [rbx + 0x20]
movaps xmmword [rbp + 0x20], xmm0
movsd xmm1, qword [rbx + 0x30]
movsd qword [rbp + 0x30], xmm1
mov word [rbx + 0x24], ax
mov qword [rbx + 0x28], r12
mov qword [rbx + 0x30], r12
mov rax, qword [rbp - 0x48]
movsxd rcx, dword [rbp - 0x4c]
mov r8d, dword [rbp - 0x1c]
movzx r9d, byte [rax + 0x2b]
lea rax, [rbp]
mov qword [rsp + 0x20], rax
mov rax, qword [rbp - 0x28]
mov edx, dword [rax + rcx*4]
mov rcx, qword [rbp - 0x38]
call fcn.180083db0
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne case.0x18007bfa7.17
mov rcx, qword [rbp + 8]
movsxd rdx, dword [rbp - 0x4c]
mov qword [rbp - 0x10], rcx
mov rax, qword [rbp - 0x30]
mov r8, qword [rbp - 8]
mov edx, dword [rax + rdx*4]
call fcn.180085900
mov rax, qword [rbp - 8]
movzx ecx, byte [rsp + 0x48]
mov byte [rax + 0x27], cl
jmp 0x18007dda6
cmp byte [rsi + r14*8 + 1], 0xf8
jne 0x18007dda6
mov rdx, qword [rsi + r14*8 + 0x10]
mov r8d, 0x800
mov rcx, qword [rbp - 8]
call fcn.180084960
cmp qword [rbp + 0x30], r12
je 0x18007ddde
mov rax, qword [rbp - 8]
mov ecx, 0xe7ff
and word [rax + 0x24], cx
mov ecx, 0x200
mov rax, qword [rbp - 8]
or word [rax + 0x24], cx
mov rax, qword [rbp - 8]
mov rcx, qword [rbp + 8]
mov qword [rax + 8], rcx
mov rcx, qword [rbp - 8]
mov rax, qword [rbp + 0x30]
mov qword [rcx + 0x30], rax
mov rcx, qword [rbp - 8]
call fcn.1800841e0
mov r15d, eax
mov dword [rsp + 0x44], eax
jmp case.0x18007bfa7.17
lea r9, [0x1800d1164]
mov r8d, 0xfe41
lea rdx, str.database_corruption_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.18002a740
mov r15d, 0xb
mov dword [rsp + 0x44], r15d
jmp case.0x18007bfa7.17
mov dword [rbp - 0x60], r12d
jmp case.0x18007bfa7.17
mov rcx, qword [rsi + r14*8 + 0x10]
mov qword [rbp - 0x60], rcx
movsxd rax, dword [rsi + r14*8 + 4]
imul rbx, rax, 0x38
movzx eax, byte [rcx]
add rbx, qword [rsp + 0x60]
mov byte [rbp - 0x58], al
test al, al
je 0x18007deaa
movzx edi, byte [rsp + 0x48]
mov esi, 0x4000
nop word [rax + rax]
inc rcx
mov qword [rbp - 0x60], rcx
test word [rbx + 0x24], si
je 0x18007de79
mov rcx, rbx
call fcn.180083c70
movzx eax, byte [rbp - 0x58]
movzx r8d, dil
movzx edx, al
mov rcx, rbx
call fcn.180030bd0
mov rcx, qword [rbp - 0x60]
add rbx, 0x38
movzx eax, byte [rcx]
mov byte [rbp - 0x58], al
test al, al
jne 0x18007de60
mov rsi, qword [rsp + 0x78]
mov r11d, 4
mov rdi, qword [rsp + 0x68]
mov rax, qword [rsp + 0x58]
inc rcx
mov qword [rbp - 0x60], rcx
inc r13d
jmp 0x18007bf04
mov qword [rbp - 0x50], r12
mov r11d, r12d
mov dword [rbp - 0x48], r12d
mov r10d, r12d
mov dword [rbp - 0x38], r12d
movsxd rax, dword [rsi + r14*8 + 4]
imul rdi, rax, 0x38
mov dword [rbp - 0x18], eax
mov rbx, qword [rsi + r14*8 + 0x10]
add rdi, qword [rsp + 0x60]
mov qword [rbp - 0x28], rdi
mov r9, rdi
mov qword [rbp - 0x10], rbx
mov eax, dword [rsi + r14*8 + 8]
mov dword [rbp - 0x18], eax
dec eax
movsxd rcx, eax
mov rax, qword [rsp + 0x50]
imul rdx, rcx, 0x38
movzx eax, byte [rax + 0x9d]
add rdx, rdi
mov dword [rbp - 8], eax
mov qword [rbp - 0x20], rdx
movsxd rax, dword [rsi + r14*8 + 0xc]
imul r14, rax, 0x38
mov qword [rbp - 0x58], rdi
add r14, qword [rsp + 0x60]
mov qword [rsp + 0x70], r14
cmp rdi, rdx
ja 0x18007e054
movzx esi, byte [rsp + 0x48]
lea r14, [0x180000000]
mov eax, 0x4000
movabs r15, 0x4924924924924925
test rbx, rbx
je 0x18007df9b
mov rdx, r9
mov rax, r15
sub rdx, rdi
movzx r8d, sil
imul rdx
mov rcx, r9
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movzx edx, byte [rdx + rbx]
call fcn.180030bd0
mov r10d, dword [rbp - 0x38]
mov eax, 0x4000
mov r11d, dword [rbp - 0x48]
mov r9, qword [rbp - 0x58]
mov rbx, qword [rbp - 0x10]
mov rdi, qword [rbp - 0x28]
test word [r9 + 0x24], ax
je 0x18007dfc4
cmp dword [r9 + 0x20], r12d
jle 0x18007dfc4
mov rcx, r9
call fcn.180083c70
mov r10d, dword [rbp - 0x38]
mov r11d, dword [rbp - 0x48]
mov r9, qword [rbp - 0x58]
mov rbx, qword [rbp - 0x10]
mov rdi, qword [rbp - 0x28]
mov edx, dword [rbp - 8]
mov rcx, r9
call fcn.180085c50
mov r8d, eax
mov dword [rbp - 0x30], r8d
cmp eax, 0xc
jb 0x18007dfe3
lea edx, [r8 - 0xc]
shr edx, 1
jmp 0x18007dfec
movzx edx, byte [r8 + r14 + 0xca3e8]
movsxd rax, edx
mov rcx, r8
add qword [rbp - 0x50], rax
mov eax, r12d
mov dword [rbp], edx
nop dword [rax]
inc eax
shr rcx, 7
test rcx, rcx
je 0x18007e010
cmp eax, 9
jl 0x18007e000
add r11d, eax
mov eax, 0x4000
mov dword [rbp - 0x48], r11d
test word [r9 + 0x24], ax
je 0x18007e029
add r10d, dword [r9 + 0x18]
jmp 0x18007e02f
test edx, edx
cmovne r10d, r12d
add r9, 0x38
mov dword [rbp - 0x38], r10d
mov qword [rbp - 0x58], r9
cmp r9, qword [rbp - 0x20]
jbe 0x18007df53
mov r15d, dword [rsp + 0x44]
mov rsi, qword [rsp + 0x78]
mov r14, qword [rsp + 0x70]
movsxd rax, r11d
mov edx, r12d
nop word [rax + rax]
inc edx
shr rax, 7
test rax, rax
je 0x18007e070
cmp edx, 9
jl 0x18007e060
add r11d, edx
mov dword [rbp - 0x34], edx
mov dword [rbp - 0x48], r11d
mov eax, r12d
movsxd rcx, r11d
inc eax
shr rcx, 7
test rcx, rcx
je 0x18007e090
cmp eax, 9
jl 0x18007e080
cmp edx, eax
jge 0x18007e09b
inc r11d
mov dword [rbp - 0x48], r11d
mov rdi, qword [rsp + 0x68]
movsxd rax, r10d
movsxd rcx, r11d
sub rcx, rax
add rcx, qword [rbp - 0x50]
mov qword [rbp - 0x40], rcx
movsxd rax, dword [rdi + 0x60]
cmp rcx, rax
jg 0x180081b4b
mov edx, ecx
xor r8d, r8d
mov rcx, r14
call fcn.180083fa0
test eax, eax
jne 0x180081d64
mov ecx, dword [rbp - 0x48]
mov r8, qword [r14 + 8]
mov qword [rbp - 0x60], r8
cmp ecx, 0x80
jae 0x18007e0f6
movzx eax, byte [rbp - 0x48]
mov ebx, 1
mov byte [r8], al
mov eax, ebx
jmp 0x18007e126
test ecx, 0xffffc000
jne 0x18007e116
mov eax, ecx
shr eax, 7
or al, 0x80
and cl, 0x7f
mov byte [r8], al
mov byte [r8 + 1], cl
mov eax, 2
jmp 0x18007e121
mov rdx, rcx
mov rcx, r8
call fcn.180071f00
mov ebx, 1
mov rcx, qword [rbp - 0x20]
movzx r8d, al
mov rax, qword [rbp - 0x28]
mov dword [rbp - 4], r8d
mov qword [rbp - 0x58], rax
cmp rax, rcx
ja 0x18007e1d5
mov esi, 2
nop dword [rax + rax]
mov edx, dword [rbp - 8]
mov rcx, rax
call fcn.180085c50
mov r9d, eax
mov dword [rbp - 0x30], r9d
cmp eax, 0x80
jae 0x18007e17b
mov rcx, qword [rbp - 0x60]
movzx eax, r9b
movsxd rdx, r8d
mov byte [rdx + rcx], al
mov eax, ebx
jmp 0x18007e1a9
movsxd rcx, r8d
add rcx, qword [rbp - 0x60]
test r9d, 0xffffc000
jne 0x18007e1a1
mov eax, r9d
shr eax, 7
or al, 0x80
and r9b, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], r9b
mov eax, esi
jmp 0x18007e1a9
mov rdx, r9
call fcn.180071f00
mov r8d, dword [rbp - 4]
mov rcx, qword [rbp - 0x20]
movzx eax, al
add r8d, eax
mov rax, qword [rbp - 0x58]
add rax, 0x38
mov dword [rbp - 4], r8d
mov qword [rbp - 0x58], rax
cmp rax, rcx
jbe 0x18007e150
mov rsi, qword [rsp + 0x78]
mov rax, qword [rbp - 0x28]
mov qword [rbp - 0x58], rax
cmp rax, rcx
ja 0x18007e216
nop
mov edx, dword [rbp - 0x40]
mov r9d, dword [rbp - 8]
sub edx, r8d
movsxd rcx, r8d
mov r8, rax
add rcx, qword [rbp - 0x60]
call fcn.180085b60
mov r8d, dword [rbp - 4]
add r8d, eax
mov rax, qword [rbp - 0x58]
add rax, 0x38
mov dword [rbp - 4], r8d
mov qword [rbp - 0x58], rax
cmp rax, qword [rbp - 0x20]
jbe 0x18007e1e0
mov eax, dword [rbp - 0x40]
mov dword [r14 + 0x20], eax
mov eax, 0x410
mov word [r14 + 0x24], ax
mov qword [r14 + 0x28], r12
mov eax, dword [rbp - 0x38]
test eax, eax
je 0x18007e240
mov dword [r14 + 0x18], eax
mov eax, 0x4410
mov word [r14 + 0x24], ax
mov rax, qword [rsp + 0x58]
inc r13d
mov byte [r14 + 0x27], 1
jmp 0x18007befe
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x70]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx]
mov qword [rbp - 0x58], rcx
test rcx, rcx
je 0x18007e292
lea rdx, [rbp - 0x60]
call fcn.180056db0
mov r9, qword [rsp + 0x70]
mov r15d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rbp - 0x60]
mov qword [r9 + 0x18], rax
jmp case.0x18007bfa7.17
mov r9, qword [rsp + 0x70]
mov rax, r12
mov qword [rbp - 0x60], rax
mov qword [r9 + 0x18], rax
jmp case.0x18007bfa7.17
mov esi, dword [rsi + r14*8 + 4]
mov rbx, qword [rsp + 0x78]
mov dword [rbp - 0x60], esi
mov rbx, qword [rbx + r14*8 + 0x10]
mov qword [rbp - 0x58], rbx
test esi, esi
jne 0x18007e39f
cmp dword [rdi + 0xb4], r12d
jg 0x1800819a5
test rbx, rbx
jne 0x18007e2dc
mov ebx, r12d
jmp 0x18007e2f2
cmp byte [rbx], r12b
je 0x18007e2e9
inc rbx
cmp byte [rbx], r12b
jne 0x18007e2e1
sub ebx, dword [rbp - 0x58]
and ebx, 0x3fffffff
mov dword [rbp - 0x50], ebx
xor edx, edx
mov r8d, dword [rdi + 0x324]
mov rcx, rdi
add r8d, dword [rdi + 0x320]
call fcn.180086d50
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x180081a6b
mov edx, dword [rbp - 0x50]
mov rcx, rdi
add edx, 0x19
call fcn.18005c880
mov qword [rbp - 0x48], rax
test rax, rax
je 0x18007e38d
lea rcx, [rax + 0x18]
mov qword [rax], rcx
mov eax, dword [rbp - 0x50]
mov rdx, qword [rbp - 0x58]
inc eax
movsxd r8, eax
call fcn.18009b430
cmp byte [rdi + 0x28], r12b
je 0x18007e35e
mov byte [rdi + 0x28], r12b
mov byte [rdi + 0x328], 1
jmp 0x18007e364
inc dword [rdi + 0x320]
mov rax, qword [rbp - 0x48]
mov rcx, qword [rdi + 0x318]
mov qword [rax + 0x10], rcx
mov rax, qword [rbp - 0x48]
mov rcx, qword [rdi + 0x330]
mov qword [rdi + 0x318], rax
mov rax, qword [rbp - 0x48]
mov qword [rax + 8], rcx
mov rsi, qword [rsp + 0x78]
inc r13d
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
mov r14, qword [rsp + 0x68]
mov edi, r12d
mov dword [rbp - 0x30], r12d
mov r11, qword [r14 + 0x318]
mov qword [rbp - 0x40], r11
test r11, r11
je 0x18007e3e1
nop dword [rax + rax]
mov rcx, qword [r11]
mov rdx, rbx
call fcn.1800774d0
test eax, eax
je 0x18007e404
inc edi
mov dword [rbp - 0x30], edi
mov r11, qword [r11 + 0x10]
mov qword [rbp - 0x40], r11
test r11, r11
jne 0x18007e3c0
mov rcx, qword [rsp + 0x50]
lea r8, str.no_such_savepoint:__s
add rcx, 0x58
mov r9, rbx
mov rdx, r14
mov rdi, r14
call fcn.1800763c0
jmp 0x1800817ed
cmp dword [r14 + 0xb4], r12d
jg 0x18007e5da
cmp esi, 2
jne 0x18007e424
cmp dword [r14 + 0xb0], 1
jg 0x18007e5da
cmp qword [r11 + 0x10], r12
jne 0x18007e486
cmp byte [r14 + 0x328], r12b
je 0x18007e486
mov ebx, 1
cmp esi, ebx
jne 0x18007e489
mov rax, qword [rsp + 0x50]
mov rdx, qword [rax]
cmp qword [rdx + 0x330], r12
jg 0x1800819e8
mov rcx, rax
mov byte [r14 + 0x28], bl
mov rdi, r14
call fcn.1800828f0
cmp eax, 5
mov rax, qword [rsp + 0x50]
je 0x1800819c8
mov byte [r14 + 0x328], r12b
mov r15d, dword [rax + 0x94]
mov dword [rsp + 0x44], r15d
jmp 0x18007e52f
mov ebx, r12d
mov r8d, dword [r14 + 0x320]
mov eax, r12d
sub r8d, edi
mov dword [rbp - 0x2c], eax
dec r8d
mov rdi, r14
mov dword [rbp - 0x30], r8d
cmp dword [r14 + 8], r12d
jle 0x18007e4f0
nop dword [rax]
mov rcx, qword [r14 + 0x10]
mov edx, esi
cdqe
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.180059420
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x180081a6b
mov eax, dword [rbp - 0x2c]
mov esi, dword [rbp - 0x60]
inc eax
mov dword [rbp - 0x2c], eax
cmp eax, dword [r14 + 8]
jge 0x18007e4ec
mov r8d, dword [rbp - 0x30]
jmp 0x18007e4b0
mov r11, qword [rbp - 0x40]
cmp esi, 2
jne 0x18007e536
mov r14d, 0x200
test dword [rdi + 0x18], r14d
je 0x18007e536
mov rax, qword [rdi + 0xa8]
test rax, rax
je 0x18007e520
nop dword [rax]
mov byte [rax + 0x9b], 1
mov rax, qword [rax + 0x68]
test rax, rax
jne 0x18007e510
or edx, 0xffffffff
mov rcx, rdi
call fcn.180072d30
or dword [rdi + 0x18], r14d
mov esi, dword [rbp - 0x60]
mov r11, qword [rbp - 0x40]
cmp qword [rdi + 0x318], r11
je 0x18007e578
nop
mov rax, qword [rdi + 0x318]
mov rcx, rdi
mov qword [rbp - 0x38], rax
mov rax, qword [rax + 0x10]
mov qword [rdi + 0x318], rax
mov rdx, qword [rbp - 0x38]
call fcn.18005c7d0
dec dword [rdi + 0x320]
mov r11, qword [rbp - 0x40]
cmp qword [rdi + 0x318], r11
jne 0x18007e540
mov esi, dword [rbp - 0x60]
cmp esi, 1
jne 0x18007e5a4
mov rax, qword [r11 + 0x10]
mov rcx, rdi
mov qword [rdi + 0x318], rax
mov rdx, qword [rbp - 0x40]
call fcn.18005c7d0
test ebx, ebx
jne case.0x18007bfa7.17
dec dword [rdi + 0x320]
jmp 0x18007e5b7
mov rax, qword [r11 + 8]
mov qword [rdi + 0x330], rax
test ebx, ebx
jne case.0x18007bfa7.17
mov r8d, dword [rbp - 0x30]
mov rcx, rdi
mov edx, dword [rbp - 0x60]
call fcn.180086d50
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x180081a6b
jmp case.0x18007bfa7.17
mov rcx, qword [rsp + 0x50]
lea rax, str.rollback
cmp esi, 2
lea r9, str.release
lea r8, str.cannot__s_savepoint___SQL_statements_in_progress
mov rdx, r14
cmove r9, rax
mov rdi, r14
add rcx, 0x58
call fcn.1800763c0
mov r15d, 5
mov dword [rsp + 0x44], r15d
jmp case.0x18007bfa7.17
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rdi + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov qword [rbp - 0x60], rcx
test rcx, rcx
je case.0x18007bfa7.17
mov edx, dword [rsi + r14*8 + 8]
call fcn.1800564f0
mov dword [rsp + 0x44], eax
mov r15d, eax
cmp eax, 5
je 0x180081a11
test eax, eax
jne 0x180081a6b
cmp dword [rsi + r14*8 + 8], r12d
je case.0x18007bfa7.17
mov rdx, qword [rsp + 0x50]
cmp byte [rdx + 0x9f], r12b
je case.0x18007bfa7.17
cmp byte [rdi + 0x28], r12b
je 0x18007e68b
cmp dword [rdi + 0xb0], 1
jle case.0x18007bfa7.17
cmp dword [rdx + 0xb0], r12d
jne 0x18007e6ac
inc dword [rdi + 0x324]
mov ecx, dword [rdi + 0x324]
add ecx, dword [rdi + 0x320]
mov dword [rdx + 0xb0], ecx
mov r8d, dword [rdx + 0xb0]
mov rcx, rdi
dec r8d
xor edx, edx
call fcn.180086d50
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x18007e71f
mov rsi, qword [rbp - 0x60]
mov rax, qword [rsp + 0x50]
mov rcx, rsi
mov rbx, qword [rsi + 8]
mov edi, dword [rax + 0xb0]
call fcn.180057430
mov rcx, qword [rbx]
mov edx, edi
call fcn.18006ce20
mov r15d, eax
mov dword [rsp + 0x44], eax
cmp byte [rsi + 0x11], r12b
je 0x18007e71a
sub dword [rsi + 0x14], 1
jne 0x18007e71a
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x58]
test rcx, rcx
je 0x18007e716
call qword [0x1800fe200]
mov byte [rsi + 0x12], r12b
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x50]
mov rax, qword [rdi + 0x330]
mov qword [rsi + 0xd0], rax
jmp case.0x18007bfa7.17
movsxd rax, dword [rsi + r14*8 + 4]
lea r8, [rbp - 0x60]
mov dword [rbp - 0x5c], eax
mov edx, dword [rsi + r14*8 + 0xc]
mov dword [rbp - 0x58], edx
mov rcx, qword [rdi + 0x10]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1800576d0
movsxd rax, dword [rbp - 0x60]
inc r13d
mov r9, qword [rsp + 0x70]
mov qword [r9 + 0x18], rax
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 4]
shl rax, 5
add rax, qword [rdi + 0x10]
mov qword [rbp - 0x60], rax
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.1800841b0
mov rcx, qword [rbp - 0x60]
mov r8d, dword [rbx + 0x18]
mov edx, dword [rsi + r14*8 + 8]
mov rcx, qword [rcx + 8]
call fcn.180059cf0
mov r15d, eax
mov dword [rsp + 0x44], eax
mov eax, dword [rsi + r14*8 + 8]
cmp eax, 1
jne 0x18007e7dc
mov rax, qword [rbp - 0x60]
mov rcx, qword [rax + 0x18]
mov eax, dword [rbx + 0x18]
mov dword [rcx], eax
mov eax, 0x200
or dword [rdi + 0x18], eax
jmp 0x18007e7f0
cmp eax, 2
jne 0x18007e7f0
mov rax, qword [rbp - 0x60]
mov rcx, qword [rax + 0x18]
movzx eax, byte [rbx + 0x18]
mov byte [rcx + 0x70], al
cmp dword [rsi + r14*8 + 4], 1
jne case.0x18007bfa7.17
mov rax, qword [rdi + 0xa8]
test rax, rax
je 0x18007e820
nop dword [rax + rax]
mov byte [rax + 0x9b], 1
mov rax, qword [rax + 0x68]
test rax, rax
jne 0x18007e810
mov rsi, qword [rsp + 0x50]
mov byte [rsi + 0x9b], r12b
jmp case.0x18007bfa7.17
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rdi + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov qword [rbp - 0x58], rcx
test rcx, rcx
je 0x18007e874
lea r8, [rbp - 0x60]
mov edx, 1
call fcn.1800576d0
mov rax, qword [rdi + 0x10]
movsxd rcx, dword [rsi + r14*8 + 4]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rcx + 4]
mov ecx, dword [rbp - 0x60]
jmp 0x18007e87d
mov ecx, r12d
mov eax, r12d
mov dword [rbp - 0x60], ecx
mov dword [rbp - 0x5c], eax
cmp ecx, dword [rsi + r14*8 + 8]
jne 0x18007e892
cmp eax, dword [rsi + r14*8 + 0xc]
je case.0x18007bfa7.17
mov r15, qword [rsp + 0x50]
mov rcx, rdi
mov rdx, qword [r15 + 0x58]
call fcn.18005c7d0
lea rdx, str.database_schema_has_changed
mov rcx, rdi
call fcn.18005ca20
mov qword [r15 + 0x58], rax
mov rax, qword [rdi + 0x10]
movsxd rdx, dword [rsi + r14*8 + 4]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x60]
cmp dword [rcx], eax
je 0x18007e8da
mov rcx, rdi
call fcn.180072d30
mov byte [r15 + 0x9b], 1
mov r15d, 0x11
mov dword [rsp + 0x44], r15d
jmp case.0x18007bfa7.17
mov r15, qword [rsp + 0x50]
cmp byte [r15 + 0x9b], r12b
jne 0x180081a58
mov dword [rbp - 0x60], r12d
mov r8d, r12d
mov qword [rbp - 0x58], r12
movsxd rdx, dword [rsi + r14*8 + 8]
mov dword [rbp - 0x50], edx
movsxd r9, dword [rsi + r14*8 + 0xc]
mov dword [rbp - 0x4c], r9d
mov rcx, r9
shl rcx, 5
add rcx, qword [rdi + 0x10]
mov qword [rbp - 0x30], rcx
mov rax, qword [rcx + 8]
mov qword [rbp - 0x40], rax
cmp byte [rsi + r14*8], 0x27
jne 0x18007e962
mov dword [rbp - 0x48], 1
mov rax, qword [rcx + 0x18]
movzx ecx, byte [rax + 0x70]
mov rax, r15
cmp cl, byte [r15 + 0x9d]
jae 0x18007e966
mov byte [r15 + 0x9d], cl
jmp 0x18007e966
mov dword [rbp - 0x48], r12d
cmp byte [rsi + r14*8 + 3], r8b
je 0x18007e995
imul rbx, rdx, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.1800841b0
mov eax, dword [rbx + 0x18]
mov dword [rbp - 0x50], eax
cmp eax, 2
jl 0x180081a32
mov r9d, dword [rbp - 0x4c]
mov r8d, dword [rbp - 0x60]
movzx eax, byte [rsi + r14*8 + 1]
cmp al, 0xfa
jne 0x18007e9cc
mov rax, qword [r15]
mov rdx, qword [rsi + r14*8 + 0x10]
mov qword [rbp - 0x58], rdx
mov rcx, qword [rax + 0x10]
mov rax, qword [rcx + 0x18]
movzx ecx, byte [rax + 0x71]
mov byte [rdx + 8], cl
mov rax, qword [rbp - 0x58]
mov r9d, dword [rbp - 0x4c]
movzx r8d, word [rax + 0xa]
inc r8d
jmp 0x18007e9d5
cmp al, 0xf2
jne 0x18007e9d9
mov r8d, dword [rsi + r14*8 + 0x10]
mov dword [rbp - 0x60], r8d
mov edx, dword [rsi + r14*8 + 4]
mov rcx, qword [rsp + 0x50]
mov dword [rsp + 0x20], 1
call fcn.18002ede0
mov qword [rbp - 0x38], rax
test rax, rax
je 0x180081d64
mov byte [rax + 0x28], 1
mov rax, qword [rbp - 0x38]
mov byte [rax + 0x2c], 1
mov rax, qword [rbp - 0x38]
mov r9, qword [rbp - 0x58]
mov r8d, dword [rbp - 0x48]
mov edx, dword [rbp - 0x50]
mov rcx, qword [rax]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rbp - 0x40]
call fcn.180057010
mov rcx, qword [rbp - 0x58]
mov r15d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rbp - 0x38]
mov qword [rax + 0x10], rcx
cmp r15d, 0x10
jne 0x18007ea51
mov rax, qword [rbp - 0x38]
mov r15d, r12d
mov dword [rsp + 0x44], r12d
mov qword [rax], r12
cmp byte [rsi + r14*8 + 1], 0xfa
mov rax, qword [rbp - 0x38]
setne cl
test cl, cl
mov byte [rax + 0x2a], cl
sete cl
mov rax, qword [rbp - 0x38]
mov byte [rax + 0x2b], cl
jmp case.0x18007bfa7.17
mov r8d, dword [rsi + r14*8 + 8]
mov ebx, 1
mov edx, dword [rsi + r14*8 + 4]
or r9d, 0xffffffff
mov rcx, qword [rsp + 0x50]
mov dword [rsp + 0x20], ebx
call fcn.18002ede0
mov qword [rbp - 0x60], rax
test rax, rax
je 0x180081d64
mov byte [rax + 0x28], bl
mov r8, rdi
movzx eax, byte [rsi + r14*8 + 3]
xor edx, edx
mov r9, qword [rbp - 0x60]
or eax, 9
mov rcx, qword [rdi]
add r9, 8
mov dword [rsp + 0x28], 0x41e
mov dword [rsp + 0x20], eax
call fcn.1800588a0
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x18007ebd5
mov rcx, qword [rbp - 0x60]
mov edx, ebx
mov rcx, qword [rcx + 8]
call fcn.1800564f0
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x18007ebd5
cmp qword [rsi + r14*8 + 0x10], r12
je 0x18007ebaa
mov rax, qword [rbp - 0x60]
mov rbx, qword [rax + 8]
mov rcx, rbx
call fcn.180057430
lea r8d, [r15 + 2]
mov rcx, rbx
lea rdx, [rbp - 0x6c]
call fcn.180033de0
mov r15d, eax
mov dword [rsp + 0x44], eax
cmp byte [rbx + 0x11], r12b
je 0x18007eb4f
sub dword [rbx + 0x14], 1
jne 0x18007eb4f
mov rax, qword [rbx + 8]
mov rcx, qword [rax + 0x58]
test rcx, rcx
je 0x18007eb4b
call qword [0x1800fe200]
mov byte [rbx + 0x12], r12b
test r15d, r15d
jne 0x18007eba0
mov rcx, qword [rbp - 0x60]
lea r8d, [r15 + 1]
mov r9, qword [rsi + r14*8 + 0x10]
mov edx, dword [rbp - 0x6c]
mov rax, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x20], rax
call fcn.180057010
mov rdx, qword [rsi + r14*8 + 0x10]
mov r15d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rbp - 0x60]
mov qword [rax + 0x10], rdx
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
mov rcx, qword [rax + 0x10]
mov rax, qword [rcx + 0x18]
movzx eax, byte [rax + 0x71]
mov byte [rdx + 8], al
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x2a], r12b
jmp 0x18007ebd5
mov rcx, qword [rbp - 0x60]
xor r9d, r9d
mov r8d, ebx
mov edx, ebx
mov rax, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x20], rax
call fcn.180057010
mov r15d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x2a], bl
cmp byte [rsi + r14*8 + 3], 0x10
mov rax, qword [rbp - 0x60]
setne cl
mov byte [rax + 0x2c], cl
mov rcx, qword [rbp - 0x60]
cmp byte [rcx + 0x2a], r12b
sete al
mov byte [rcx + 0x2b], al
jmp case.0x18007bfa7.17
mov r8d, dword [rsi + r14*8 + 0xc]
or r9d, 0xffffffff
mov edx, dword [rsi + r14*8 + 4]
mov rcx, qword [rsp + 0x50]
mov dword [rsp + 0x20], r12d
call fcn.18002ede0
mov qword [rbp - 0x60], rax
test rax, rax
je 0x180081d64
mov byte [rax + 0x28], 1
inc r13d
mov rax, qword [rbp - 0x60]
mov ecx, dword [rsi + r14*8 + 8]
mov dword [rax + 0x1c], ecx
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x2a], 1
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x2b], r12b
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
mov rcx, qword [rsp + 0x50]
movsxd rax, dword [rsi + r14*8 + 4]
mov rdx, qword [rcx + 0x70]
mov rdx, qword [rdx + rax*8]
call fcn.180082760
mov rax, qword [rsp + 0x50]
inc r13d
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rax + 0x70]
mov qword [rax + rcx*8], r12
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x70]
mov rdx, qword [rax + rcx*8]
mov qword [rbp - 0x58], rdx
cmp qword [rdx], r12
je 0x18007bfb7
movzx eax, byte [rsi + r14*8]
mov dword [rbp - 0x5c], eax
mov byte [rdx + 0x28], r12b
mov r10, qword [rbp - 0x58]
cmp byte [r10 + 0x2a], r12b
je 0x18007eed3
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.180030c30
mov rcx, rbx
call fcn.180083170
mov qword [rbp - 0x28], rax
mov rax, qword [rbp - 0x58]
mov byte [rax + 0x25], r12b
movzx eax, word [rbx + 0x24]
test al, 4
jne 0x18007ee83
test al, 8
jne 0x18007ed07
mov r13d, dword [rsi + r14*8 + 8]
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
mov r8, qword [rbp - 0x28]
movabs rax, 0x8000000000000000
cmp r8, rax
jne 0x18007ee42
movsd xmm1, qword [rbx + 0x10]
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
comisd xmm0, xmm1
ja 0x18007ed3b
comisd xmm1, xmm6
jbe 0x18007ee42
mov dword [rbp - 0x60], 1
comisd xmm6, xmmword [rbx + 0x10]
jbe 0x18007eda4
cmp dword [rbp - 0x5c], 0x2e
jl 0x18007ee35
mov rax, qword [rbp - 0x58]
mov rbx, qword [rax]
mov rcx, rbx
call fcn.180046a80
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x18007ee22
cmp byte [rbx + 0x6f], r12b
jne 0x18007ed8f
mov dword [rbp - 0x60], 1
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
mov dword [rsp + 0x44], eax
jmp case.0x18007bfa7.17
mov rcx, rbx
mov dword [rbp - 0x60], r12d
call fcn.1800468f0
mov r15d, eax
mov dword [rsp + 0x44], eax
jmp 0x18007ee22
cmp dword [rbp - 0x5c], 0x2d
jg 0x18007ee35
mov rax, qword [rbp - 0x58]
mov rbx, qword [rax]
cmp byte [rbx + 0x6f], 1
jne 0x18007edd6
cmp byte [rbx + 0x6d], r12b
je 0x18007edd6
mov r13d, dword [rsi + r14*8 + 8]
mov r15d, r12d
dec r13d
mov dword [rsp + 0x44], r12d
jmp case.0x18007bfa7.17
mov rcx, rbx
call fcn.180046a80
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x18007ee22
cmp byte [rbx + 0x6f], r12b
jne 0x18007ee07
mov dword [rbp - 0x60], 1
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
mov dword [rsp + 0x44], eax
jmp case.0x18007bfa7.17
mov rcx, rbx
mov dword [rbp - 0x60], r12d
call fcn.1800469e0
test eax, eax
mov dword [rsp + 0x44], eax
mov r15d, eax
sete al
mov byte [rbx + 0x6d], al
test r15d, r15d
jne 0x180081a6b
cmp dword [rbp - 0x60], r12d
je case.0x18007bfa7.17
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
jmp case.0x18007bfa7.17
mov eax, dword [rbp - 0x5c]
add eax, 0xffffffd4
test eax, 0xfffffffd
je 0x18007ee67
xorps xmm0, xmm0
cvtsi2sd xmm0, r8
comisd xmm0, xmmword [rbx + 0x10]
jbe 0x18007ee87
dec r8
mov qword [rbp - 0x28], r8
jmp 0x18007ee87
movsd xmm0, qword [rbx + 0x10]
xorps xmm1, xmm1
cvtsi2sd xmm1, r8
comisd xmm0, xmm1
jbe 0x18007ee87
inc r8
mov qword [rbp - 0x28], r8
jmp 0x18007ee87
mov r8, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x58]
lea rax, [rbp - 0x60]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor edx, edx
mov rcx, qword [rcx]
call fcn.180058300
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x180081a6b
cmp dword [rbp - 0x60], r12d
jne 0x18007ef53
mov rax, qword [rbp - 0x58]
mov byte [rax + 0x25], 1
mov rcx, qword [rbp - 0x58]
mov rax, qword [rbp - 0x28]
mov qword [rcx + 0x50], rax
jmp 0x18007ef53
mov eax, dword [rsi + r14*8 + 0x10]
mov dword [rbp - 0x30], eax
mov rax, qword [r10 + 0x10]
mov qword [rbp - 0x50], rax
movzx eax, word [rbp - 0x30]
mov word [rbp - 0x48], ax
movzx eax, word [rbp - 0x5c]
and ax, 1
shl ax, 3
mov word [rbp - 0x46], ax
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rcx, rax, 0x38
mov eax, 0x4000
add rcx, qword [rsp + 0x60]
mov qword [rbp - 0x38], rcx
test word [rcx + 0x24], ax
je 0x18007ef21
call fcn.180083c70
mov r10, qword [rbp - 0x58]
mov rcx, qword [r10]
lea rax, [rbp - 0x60]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
lea rdx, [rbp - 0x50]
call fcn.180058300
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x180081a6b
mov rax, qword [rbp - 0x58]
mov byte [rax + 0x25], r12b
mov rax, qword [rbp - 0x58]
mov byte [rax + 0x29], r12b
mov rax, qword [rbp - 0x58]
mov dword [rax + 0x5c], r12d
mov ecx, dword [rbp - 0x5c]
mov eax, dword [rbp - 0x60]
cmp ecx, 0x2e
jl 0x18007ef9c
test eax, eax
js 0x18007ef8a
jne 0x18007ef79
cmp ecx, 0x2f
je 0x18007ef8a
mov rax, qword [rsp + 0x58]
inc r13d
mov dword [rbp - 0x60], r12d
jmp 0x18007befe
mov rcx, qword [rbp - 0x58]
lea rdx, [rbp - 0x60]
mov rcx, qword [rcx]
call fcn.180058720
jmp 0x18007efcd
test eax, eax
jg 0x18007efbd
jne 0x18007efa7
cmp ecx, 0x2c
je 0x18007efbd
mov rax, qword [rbp - 0x58]
mov rcx, qword [rax]
mov eax, r12d
cmp byte [rcx + 0x6f], 1
setne al
mov dword [rbp - 0x60], eax
jmp 0x18007efe4
mov rcx, qword [rbp - 0x58]
lea rdx, [rbp - 0x60]
mov rcx, qword [rcx]
call fcn.180058fb0
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x180081a6b
mov rax, qword [rbp - 0x58]
mov byte [rax + 0x25], r12b
cmp dword [rbp - 0x60], r12d
je 0x18007eff2
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x70]
mov rdx, qword [rax + rcx*8]
mov qword [rbp - 0x60], rdx
cmp qword [rdx], r12
je 0x18007cf52
mov byte [rdx + 0x28], r12b
movsxd rax, dword [rsi + r14*8 + 8]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
call fcn.180083170
mov rcx, qword [rbp - 0x60]
mov r11d, 4
inc r13d
mov qword [rcx + 0x48], rax
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x25], r12b
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x29], 1
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
mov rax, qword [rsp + 0x50]
mov r8d, r12d
mov dword [rbp - 0x60], r12d
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rax + 0x70]
mov rcx, qword [rax + rcx*8]
mov qword [rbp - 0x58], rcx
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rdx, rax, 0x38
add rdx, qword [rsp + 0x60]
cmp qword [rcx], r8
je 0x18007f162
cmp dword [rsi + r14*8 + 0x10], r12d
jle 0x18007f0c4
mov rax, qword [rcx + 0x10]
mov qword [rbp - 0x40], rax
movzx eax, word [rsi + r14*8 + 0x10]
mov word [rbp - 0x38], ax
mov eax, 0x10
mov qword [rbp - 0x28], rdx
lea rdx, [rbp - 0x40]
mov word [rbp - 0x36], ax
mov qword [rbp - 0x48], rdx
jmp 0x18007f0fa
mov r8, qword [rdx + 8]
lea r9, [rbp - 0x20]
mov edx, dword [rdx + 0x20]
mov rcx, qword [rcx + 0x10]
mov dword [rsp + 0x20], 0xcf
call fcn.180085430
mov qword [rbp - 0x48], rax
test rax, rax
je 0x180081d64
or word [rax + 0xa], 0x10
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x58]
mov rcx, qword [rcx]
lea rax, [rbp - 0x50]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
call fcn.180058300
mov r15d, eax
mov dword [rsp + 0x44], eax
cmp dword [rsi + r14*8 + 0x10], r12d
jne 0x18007f134
mov rdx, qword [rbp - 0x48]
test byte [rdx + 0xa], 1
je 0x18007f134
mov rcx, qword [rdx]
mov rcx, qword [rcx]
call fcn.18005c7d0
test r15d, r15d
jne case.0x18007bfa7.17
cmp dword [rbp - 0x50], r12d
lea r11d, [r15 + 4]
mov eax, r12d
sete al
mov dword [rbp - 0x60], eax
mov rax, qword [rbp - 0x58]
mov byte [rax + 0x29], r12b
mov rax, qword [rbp - 0x58]
mov dword [rax + 0x5c], r12d
mov r8d, dword [rbp - 0x60]
cmp byte [rsi + r14*8], 0x32
jne 0x18007f187
test r8d, r8d
je 0x18007cf52
mov r13d, dword [rsi + r14*8 + 8]
mov rax, qword [rsp + 0x58]
dec r13d
inc r13d
jmp 0x18007bf04
test r8d, r8d
jne 0x18007cf52
mov r13d, dword [rsi + r14*8 + 8]
mov rax, qword [rsp + 0x58]
dec r13d
inc r13d
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rbx, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 0x10]
add rbx, qword [rsp + 0x60]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x50]
add rcx, qword [rsp + 0x60]
mov qword [rbp - 0x40], rcx
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rax + 0x70]
mov rdx, qword [rax + rcx*8]
mov qword [rbp - 0x58], rdx
mov dword [rdx + 0x58], r12d
movzx edx, r12w
mov rax, qword [rbp - 0x58]
mov dword [rax + 0x5c], r12d
mov r11, qword [rbp - 0x58]
mov r9, qword [rbp - 0x40]
mov r10, qword [r11]
mov qword [rbp - 0x50], r10
mov rax, qword [r11 + 0x10]
movzx r8d, word [rax + 0xa]
mov word [rbp - 0x48], r8w
mov word [rbp - 0x60], dx
cmp r12w, r8w
jae 0x18007f232
movzx eax, dx
imul rcx, rax, 0x38
test byte [rcx + r9 + 0x24], 1
jne 0x18007f2b1
inc dx
mov word [rbp - 0x60], dx
cmp dx, r8w
jb 0x18007f212
test r10, r10
je case.0x18007bfa7.17
mov rax, qword [r11 + 0x10]
inc r8w
mov qword [rbp - 0x38], rax
mov rcx, rbx
mov eax, 0x20
mov word [rbp - 0x30], r8w
mov word [rbp - 0x2e], ax
mov qword [rbp - 0x20], r9
call fcn.1800841b0
mov rax, qword [rbx + 0x18]
lea rdx, [rbp - 0x38]
mov rcx, qword [rbp - 0x50]
xor r9d, r9d
mov qword [rbp - 0x18], rax
xor r8d, r8d
mov rax, qword [rbp - 0x58]
add rax, 0x58
mov qword [rsp + 0x20], rax
call fcn.180058300
test byte [rbp - 0x2e], 0x20
mov r15d, eax
mov dword [rsp + 0x44], eax
jne 0x18007ee35
mov rax, qword [rbp - 0x28]
cmp rax, qword [rbp - 0x18]
je 0x18007ee35
mov qword [rbx + 0x18], rax
jmp case.0x18007bfa7.17
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
mov qword [rbp - 0x50], r12
jmp case.0x18007bfa7.17
movsxd rax, dword [rsi + r14*8 + 0xc]
movsxd rcx, dword [rsi + r14*8 + 4]
imul rbx, rax, 0x38
mov rax, qword [rsp + 0x50]
add rbx, qword [rsp + 0x60]
mov rax, qword [rax + 0x70]
mov rdx, qword [rax + rcx*8]
mov qword [rbp - 0x60], rdx
mov rcx, qword [rdx]
mov qword [rbp - 0x58], rcx
test rcx, rcx
je 0x18007f369
mov dword [rbp - 0x50], r12d
lea rax, [rbp - 0x50]
mov r8, qword [rbx + 0x18]
xor r9d, r9d
xor edx, edx
mov qword [rbp - 0x48], r8
mov qword [rsp + 0x20], rax
call fcn.180058300
mov rcx, qword [rbx + 0x18]
mov r15d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rbp - 0x60]
mov qword [rax + 0x50], rcx
cmp dword [rbp - 0x50], r12d
mov rax, qword [rbp - 0x60]
sete cl
mov byte [rax + 0x25], cl
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x28], r12b
mov rax, qword [rbp - 0x60]
mov dword [rax + 0x5c], r12d
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x29], r12b
mov ecx, dword [rbp - 0x50]
test ecx, ecx
je 0x18007f35d
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
mov rax, qword [rbp - 0x60]
mov dword [rax + 0x58], ecx
jmp case.0x18007bfa7.17
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
mov dword [rdx + 0x58], r12d
jmp case.0x18007bfa7.17
mov rdx, qword [rsp + 0x50]
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rdx + 0x70]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x40]
mov qword [r10 + 0x18], rax
mov rax, qword [rdx + 0x70]
movsxd rcx, dword [rsi + r14*8 + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x58]
inc qword [rdx + 0x40]
inc r13d
jmp 0x18007bf04
mov rax, qword [rsp + 0x50]
mov rdx, r12
mov qword [rbp - 0x60], rdx
mov dword [rbp - 0x50], r12d
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rax + 0x70]
mov r10, qword [rax + rcx*8]
mov qword [rbp - 0x58], r10
mov rax, qword [r10]
test rax, rax
je 0x18007f6f4
cmp byte [r10 + 0x27], dl
jne 0x18007f5bc
mov rax, qword [rax + 0x30]
mov qword [rbp - 0x60], rax
test rax, rax
jne 0x18007f4cb
mov rbx, qword [r10]
cmp byte [rbx + 0x6f], 1
jne 0x18007f408
cmp byte [rbx + 0x6d], dl
jne 0x18007f471
mov rcx, rbx
call fcn.180046a80
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x18007f454
cmp byte [rbx + 0x6f], r12b
jne 0x18007f439
mov r10, qword [rbp - 0x58]
mov dword [rsp + 0x44], eax
lea eax, [r15 + 1]
mov dword [rbp - 0x50], 1
jmp 0x18007f4c7
mov rcx, rbx
mov dword [rbp - 0x50], r12d
call fcn.1800469e0
test eax, eax
mov dword [rsp + 0x44], eax
mov r15d, eax
sete al
mov byte [rbx + 0x6d], al
test r15d, r15d
jne 0x180081a6b
cmp dword [rbp - 0x50], r12d
je 0x18007f46d
mov r10, qword [rbp - 0x58]
lea eax, [r15 + 1]
jmp 0x18007f4c7
mov r10, qword [rbp - 0x58]
mov rbx, qword [r10]
cmp byte [rbx + 0x6f], 1
je 0x18007f487
mov rax, r12
mov dword [rsp + 0x44], r12d
mov r15d, r12d
jmp 0x18007f4c4
mov rcx, rbx
call fcn.180042c00
mov rax, qword [rbx + 0x38]
movabs rcx, 0x7fffffffffffffff
mov qword [rbp - 0x60], rax
mov r15d, r12d
mov dword [rsp + 0x44], r12d
cmp rax, rcx
jne 0x18007f4c0
mov rax, qword [rbp - 0x58]
mov byte [rax + 0x27], 1
mov r10, qword [rbp - 0x58]
mov rax, qword [rbp - 0x60]
jmp 0x18007f4cb
mov r10, qword [rbp - 0x58]
inc rax
mov qword [rbp - 0x60], rax
movsxd rdx, dword [rsi + r14*8 + 0xc]
test edx, edx
je 0x18007f57c
mov rax, qword [rsp + 0x50]
mov rcx, qword [rax + 0xe8]
test rcx, rcx
je 0x18007f51f
mov qword [rbp - 0x40], rcx
mov rax, qword [rcx + 0x60]
test rax, rax
je 0x18007f510
nop word [rax + rax]
mov rcx, rax
mov qword [rbp - 0x40], rax
mov rax, qword [rax + 0x60]
test rax, rax
jne 0x18007f500
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rdx, rax, 0x38
add rdx, qword [rcx + 0x20]
jmp 0x18007f528
imul rdx, rdx, 0x38
add rdx, qword [rsp + 0x60]
mov rcx, rdx
mov qword [rbp - 0x48], rdx
call fcn.1800841b0
mov rdx, qword [rbp - 0x48]
movabs rax, 0x7fffffffffffffff
mov rcx, qword [rdx + 0x18]
cmp rcx, rax
je 0x180081a65
mov rax, qword [rbp - 0x58]
cmp byte [rax + 0x27], r12b
jne 0x180081a65
lea rax, [rcx + 1]
mov rcx, qword [rbp - 0x60]
cmp rcx, rax
cmovl rcx, rax
mov qword [rbp - 0x60], rcx
mov qword [rdx + 0x18], rcx
mov r10, qword [rbp - 0x58]
mov rax, qword [rbp - 0x60]
movabs rcx, 0x7fffffffffffffff
lea rdx, [rax + 1]
cmp rax, rcx
jl 0x18007f592
mov rdx, r12
mov r8, qword [r10]
mov rax, qword [r8 + 8]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x18007f5bc
mov eax, dword [r8 + 0x28]
cmp dword [rcx + 0x28], eax
jne 0x18007f5af
mov qword [rcx + 0x30], rdx
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x18007f5a2
mov r10, qword [rbp - 0x58]
cmp byte [r10 + 0x27], r12b
je 0x18007f6dc
mov r8, qword [rbp - 0x80]
lea rax, [rbp - 0x50]
mov dword [rbp - 0x4c], r12d
movabs r14, 0x3fffffffffffffff
and r8, r14
mov qword [rsp + 0x20], rax
inc r8
xor r9d, r9d
mov qword [rbp - 0x60], r8
xor edx, edx
mov rcx, qword [r10]
call fcn.180058300
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x18007f6d8
nop word [rax + rax]
mov ecx, dword [rbp - 0x50]
test ecx, ecx
jne 0x18007f6c6
mov eax, dword [rbp - 0x4c]
inc eax
mov dword [rbp - 0x4c], eax
cmp eax, 0x64
jge 0x18007f6c6
cmp dword [0x1800fe174], r12d
lea ebx, [rcx + 8]
lea rdi, [rbp - 0x60]
jne 0x18007f641
mov rsi, r12
jmp 0x18007f660
mov ecx, 5
call qword [0x1800fe1e0]
mov rsi, rax
test rax, rax
je 0x18007f660
mov rcx, rax
call qword [0x1800fe1f0]
nop dword [rax]
call fcn.18004d6d0
mov byte [rdi], al
lea rdi, [rdi + 1]
sub ebx, 1
jne 0x18007f660
test rsi, rsi
je 0x18007f67e
mov rcx, rsi
call qword [0x1800fe200]
cmp dword [rbp - 0x4c], 5
mov r8, qword [rbp - 0x60]
jge 0x18007f691
and r8d, 0xffffff
jmp 0x18007f694
and r8, r14
mov rcx, qword [rbp - 0x58]
lea rax, [rbp - 0x50]
inc r8
mov qword [rsp + 0x20], rax
mov qword [rbp - 0x60], r8
xor r9d, r9d
xor edx, edx
mov rcx, qword [rcx]
call fcn.180058300
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
je 0x18007f610
jmp 0x18007f6d3
test r15d, r15d
jne 0x18007f6d3
test ecx, ecx
je 0x180081a60
mov rdi, qword [rsp + 0x68]
mov r10, qword [rbp - 0x58]
mov byte [r10 + 0x25], r12b
mov rax, qword [rbp - 0x58]
mov byte [rax + 0x29], r12b
mov rax, qword [rbp - 0x58]
mov dword [rax + 0x5c], r12d
mov rdx, qword [rbp - 0x60]
mov r9, qword [rsp + 0x70]
mov qword [r9 + 0x18], rdx
jmp case.0x18007bfa7.17
movsxd rax, dword [rsi + r14*8 + 8]
mov r8, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x50]
imul r9, rax, 0x38
mov rax, qword [rdx + 0x70]
add r9, r8
mov qword [rbp - 0x60], r9
movsxd rcx, dword [rsi + r14*8 + 4]
mov rbx, qword [rax + rcx*8]
mov qword [rbp - 0x48], rbx
cmp byte [rsi + r14*8], 0x37
jne 0x18007f74a
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rcx, rax, 0x38
add rcx, r8
mov qword [rbp - 0x58], rcx
mov r8, qword [rcx + 0x18]
jmp 0x18007f74f
movsxd r8, dword [rsi + r14*8 + 0xc]
mov qword [rbp - 0x50], r8
test byte [rsi + r14*8 + 3], 1
je 0x18007f761
inc dword [rdx + 0xa4]
test byte [rsi + r14*8 + 3], 2
je 0x18007f77d
mov qword [rdi + 0x40], r8
mov rbx, qword [rbp - 0x48]
mov r9, qword [rbp - 0x60]
mov qword [rbp - 0x80], r8
mov r8, qword [rbp - 0x50]
test byte [r9 + 0x24], 1
je 0x18007f79c
mov qword [r9 + 8], r12
mov rax, qword [rbp - 0x60]
mov dword [rax + 0x20], r12d
mov rbx, qword [rbp - 0x48]
mov r8, qword [rbp - 0x50]
mov r9, qword [rbp - 0x60]
test byte [rsi + r14*8 + 3], 0x10
je 0x18007f7ae
mov r11d, dword [rbx + 0x58]
mov dword [rbp - 0x3c], r11d
jmp 0x18007f7b5
mov r11d, r12d
mov dword [rbp - 0x3c], r12d
mov eax, 0x4000
test word [r9 + 0x24], ax
je 0x18007f7c7
mov edx, dword [r9 + 0x18]
jmp 0x18007f7ca
mov edx, r12d
mov dword [rbp - 0x40], edx
mov r10, qword [rbx]
mov rax, qword [r10 + 8]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x18007f809
nop dword [rax]
mov eax, dword [r10 + 0x28]
cmp dword [rcx + 0x28], eax
jne 0x18007f7ed
mov qword [rcx + 0x30], r12
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x18007f7e0
mov r11d, dword [rbp - 0x3c]
mov edx, dword [rbp - 0x40]
mov rbx, qword [rbp - 0x48]
mov r8, qword [rbp - 0x50]
mov r9, qword [rbp - 0x60]
movzx eax, byte [rsi + r14*8 + 3]
mov rcx, qword [rbx]
and eax, 8
mov dword [rsp + 0x38], r11d
mov dword [rsp + 0x30], eax
mov eax, dword [r9 + 0x20]
mov r9, qword [r9 + 8]
mov dword [rsp + 0x28], edx
xor edx, edx
mov dword [rsp + 0x20], eax
call fcn.180057850
mov r15d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rbp - 0x48]
mov byte [rax + 0x25], r12b
mov rax, qword [rbp - 0x48]
mov byte [rax + 0x29], r12b
mov rax, qword [rbp - 0x48]
mov dword [rax + 0x5c], r12d
test r15d, r15d
jne case.0x18007bfa7.17
cmp qword [rdi + 0x108], r12
je case.0x18007bfa7.17
cmp qword [rsi + r14*8 + 0x10], r12
je case.0x18007bfa7.17
mov rax, qword [rbp - 0x48]
mov edx, 0x12
movsxd rcx, dword [rax + 0x18]
mov rax, qword [rdi + 0x10]
shl rcx, 5
mov r8, qword [rcx + rax]
mov eax, 0x17
mov qword [rbp - 0x38], r8
mov r9, qword [rsi + r14*8 + 0x10]
mov qword [rbp - 0x30], r9
test byte [rsi + r14*8 + 3], 4
cmovne edx, eax
mov rax, qword [rbp - 0x50]
mov dword [rbp - 0x28], edx
mov rcx, qword [rdi + 0x100]
mov qword [rsp + 0x20], rax
call qword [rdi + 0x108]
jmp case.0x18007bfa7.17
mov rax, qword [rsp + 0x50]
mov qword [rbp - 0x60], r12
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rax + 0x70]
mov rcx, qword [rax + rcx*8]
mov qword [rbp - 0x58], rcx
cmp qword [rdi + 0x108], r12
je 0x18007f8f9
cmp qword [rsi + r14*8 + 0x10], r12
je 0x18007f8f9
mov rax, qword [rcx + 0x50]
mov qword [rbp - 0x60], rax
call fcn.18007ba20
mov r15d, eax
test eax, eax
jne 0x180081a6b
mov r8, qword [rbp - 0x58]
mov rdx, qword [r8]
mov rax, qword [rdx + 8]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x18007f939
nop dword [rax]
mov eax, dword [rdx + 0x28]
cmp dword [rcx + 0x28], eax
jne 0x18007f92c
mov qword [rcx + 0x30], r12
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x18007f920
mov r8, qword [rbp - 0x58]
mov rcx, qword [r8]
call fcn.180057150
mov r15d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rbp - 0x58]
mov dword [rax + 0x5c], r12d
test r15d, r15d
jne 0x18007f996
mov r10, qword [rdi + 0x108]
test r10, r10
je 0x18007f996
mov r9, qword [rsi + r14*8 + 0x10]
test r9, r9
je 0x18007f996
mov rax, qword [rbp - 0x58]
lea edx, [r15 + 9]
mov r8, qword [rdi + 0x10]
movsxd rcx, dword [rax + 0x18]
mov rax, qword [rbp - 0x60]
shl rcx, 5
mov qword [rsp + 0x20], rax
mov r8, qword [rcx + r8]
mov rcx, qword [rdi + 0x100]
call r10
test byte [rsi + r14*8 + 8], 1
je case.0x18007bfa7.17
mov rsi, qword [rsp + 0x50]
inc dword [rsi + 0xa4]
jmp case.0x18007bfa7.17
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0xa4]
add dword [rdi + 0x50], eax
mov dword [rdi + 0x4c], eax
inc r13d
mov rax, qword [rsp + 0x50]
mov dword [rax + 0xa4], r12d
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 8]
movsxd rcx, dword [rsi + r14*8 + 4]
imul r9, rax, 0x38
mov rax, qword [rsp + 0x50]
add r9, qword [rsp + 0x60]
mov qword [rsp + 0x70], r9
mov rax, qword [rax + 0x70]
mov rcx, qword [rax + rcx*8]
mov qword [rbp - 0x60], rcx
mov rax, qword [rcx]
mov qword [rbp - 0x58], rax
call fcn.18007ba20
mov r15d, eax
test eax, eax
jne 0x180081a6b
mov rax, qword [rbp - 0x60]
mov rbx, qword [rbp - 0x58]
cmp byte [rax + 0x2b], r12b
je 0x18007fa59
cmp byte [rbx + 0x6f], 1
je 0x18007fa35
mov rcx, r12
jmp 0x18007fa41
mov rcx, rbx
call fcn.180042c00
mov rcx, qword [rbx + 0x38]
mov qword [rbp - 0x48], rcx
movsxd rax, dword [rdi + 0x60]
cmp rcx, rax
jg 0x180081b4b
mov edx, ecx
mov dword [rbp - 0x50], ecx
jmp 0x18007faba
cmp word [rbx + 0x56], r12w
jne 0x18007faab
movsx rax, word [rbx + 0x7a]
lea r8, [rbx + 0x38]
mov r10, qword [rbx + rax*8 + 0xa8]
movzx edx, word [rbx + rax*2 + 0x7c]
mov r9, qword [r10 + 0x70]
movzx eax, word [r10 + 0xc]
lea ecx, [rax + rdx*2]
movzx eax, byte [rcx + r9]
movzx edx, byte [rcx + r9 + 1]
mov rcx, r10
shl rax, 8
or rdx, rax
movzx eax, word [r10 + 0x12]
and rdx, rax
add rdx, r9
call fcn.1800348f0
mov byte [rbx + 0x6e], 1
mov edx, dword [rbx + 0x48]
mov dword [rbp - 0x50], edx
cmp edx, dword [rdi + 0x60]
ja 0x180081b4b
mov r14, qword [rsp + 0x70]
xor r8d, r8d
mov rcx, r14
call fcn.180083fa0
test eax, eax
jne 0x180081d64
mov eax, dword [rbp - 0x50]
xor edx, edx
mov r9, qword [r14 + 8]
mov dword [r14 + 0x20], eax
mov eax, 0xbf10
and word [r14 + 0x24], ax
or word [r14 + 0x24], 0x10
mov rax, qword [rbp - 0x60]
mov r8d, dword [rbp - 0x50]
mov rcx, qword [rbp - 0x58]
cmp byte [rax + 0x2b], r12b
je 0x18007fb1c
mov dword [rsp + 0x20], r12d
call fcn.18002da70
mov dword [rsp + 0x44], eax
mov r15d, eax
mov byte [r14 + 0x27], 1
jmp case.0x18007bfa7.17
call fcn.1800570e0
mov dword [rsp + 0x44], eax
mov r15d, eax
mov byte [r14 + 0x27], 1
jmp case.0x18007bfa7.17
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x70]
mov rcx, qword [rax + rcx*8]
mov qword [rbp - 0x60], rcx
cmp byte [rcx + 0x28], r12b
je 0x18007fb65
mov eax, 1
inc r13d
mov word [r10 + 0x24], ax
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
cmp byte [rcx + 0x29], r12b
je 0x18007fb81
mov rax, qword [rcx + 0x48]
mov r9, qword [rsp + 0x70]
mov qword [rbp - 0x58], rax
mov qword [r9 + 0x18], rax
jmp case.0x18007bfa7.17
mov rax, qword [rcx + 0x30]
test rax, rax
je 0x18007fbcb
mov rax, qword [rax]
lea rdx, [rbp - 0x58]
mov qword [rbp - 0x50], rax
mov r8, qword [rax]
mov qword [rbp - 0x48], r8
mov rcx, qword [rcx + 0x30]
call qword [r8 + 0x60]
mov rdx, qword [rbp - 0x50]
mov r15d, eax
mov rcx, qword [rsp + 0x50]
mov dword [rsp + 0x44], eax
call fcn.180043f20
mov r9, qword [rsp + 0x70]
mov rax, qword [rbp - 0x58]
mov qword [r9 + 0x18], rax
jmp case.0x18007bfa7.17
call fcn.18007ba20
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x180081a6b
mov rax, qword [rbp - 0x60]
cmp byte [rax + 0x25], r12b
je 0x18007fbff
mov rax, qword [rax + 0x50]
mov r9, qword [rsp + 0x70]
mov qword [rbp - 0x58], rax
mov qword [r9 + 0x18], rax
jmp case.0x18007bfa7.17
mov rbx, qword [rax]
cmp byte [rbx + 0x6f], 1
je 0x18007fc0d
mov rax, r12
jmp 0x18007fc19
mov rcx, rbx
call fcn.180042c00
mov rax, qword [rbx + 0x38]
mov r9, qword [rsp + 0x70]
mov r15d, r12d
mov qword [rbp - 0x58], rax
mov dword [rsp + 0x44], r12d
mov qword [r9 + 0x18], rax
jmp case.0x18007bfa7.17
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x70]
mov rdx, qword [rax + rcx*8]
mov qword [rbp - 0x60], rdx
mov byte [rdx + 0x28], 1
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x25], r12b
mov rax, qword [rbp - 0x60]
mov rbx, qword [rax]
test rbx, rbx
je 0x18007cf52
mov rcx, qword [rbx + 0x60]
call fcn.18002ab40
mov rax, qword [rsp + 0x58]
mov r11d, 4
inc r13d
mov qword [rbx + 0x60], r12
mov byte [rbx + 0x6f], r12b
jmp 0x18007bf04
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x70]
mov rdx, qword [rax + rcx*8]
mov qword [rbp - 0x60], rdx
mov rbx, qword [rdx]
mov qword [rbp - 0x58], rbx
test rbx, rbx
jne 0x18007fcb4
mov dword [rbp - 0x50], 1
jmp 0x18007fd0b
cmp byte [rbx + 0x6f], 1
jne 0x18007fcca
cmp byte [rbx + 0x6d], r12b
je 0x18007fcca
mov r15d, r12d
mov dword [rsp + 0x44], r12d
jmp 0x18007fd0b
mov rcx, rbx
call fcn.180046a80
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x18007fd07
cmp byte [rbx + 0x6f], r12b
jne 0x18007fcec
mov dword [rbp - 0x50], 1
jmp 0x18007fd07
mov rcx, rbx
mov dword [rbp - 0x50], r12d
call fcn.1800469e0
test eax, eax
mov dword [rsp + 0x44], eax
mov r15d, eax
sete al
mov byte [rbx + 0x6d], al
mov rdx, qword [rbp - 0x60]
movzx eax, byte [rbp - 0x50]
mov byte [rdx + 0x28], al
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x29], r12b
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x25], r12b
mov rax, qword [rbp - 0x60]
mov dword [rax + 0x5c], r12d
mov eax, dword [rsi + r14*8 + 8]
test eax, eax
jle case.0x18007bfa7.17
cmp dword [rbp - 0x50], r12d
je case.0x18007bfa7.17
lea r13d, [rax - 1]
jmp case.0x18007bfa7.17
mov rax, qword [rsp + 0x50]
inc dword [rax + 0xb8]
jmp 0x18007fd5c
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rax + 0x70]
mov rdx, qword [rax + rcx*8]
mov qword [rbp - 0x60], rdx
mov dword [rbp - 0x50], 1
mov rbx, qword [rdx]
mov qword [rbp - 0x58], rbx
test rbx, rbx
je 0x18007fddf
mov rcx, rbx
call fcn.180046a80
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x18007fdb5
cmp byte [rbx + 0x6f], r12b
jne 0x18007fda2
mov dword [rbp - 0x50], 1
jmp 0x18007fdb5
mov rcx, rbx
mov dword [rbp - 0x50], r12d
call fcn.1800468f0
mov r15d, eax
mov dword [rsp + 0x44], eax
cmp dword [rbp - 0x50], r12d
mov rax, qword [rbp - 0x60]
sete cl
mov byte [rax + 0x26], cl
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x29], r12b
mov rax, qword [rbp - 0x60]
mov dword [rax + 0x5c], r12d
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x25], r12b
mov rdx, qword [rbp - 0x60]
movzx eax, byte [rbp - 0x50]
mov byte [rdx + 0x28], al
cmp dword [rbp - 0x50], r12d
je case.0x18007bfa7.17
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
jmp case.0x18007bfa7.17
mov eax, dword [rdi + 0x150]
test eax, eax
jne 0x180081d07
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x70]
mov rdx, qword [rax + rcx*8]
mov qword [rbp - 0x60], rdx
test rdx, rdx
je case.0x18007bfa7.17
mov rcx, qword [rdx]
mov qword [rbp - 0x58], rcx
test rcx, rcx
jne 0x18007fe47
mov rax, qword [rsp + 0x58]
inc r13d
mov byte [rdx + 0x28], 1
jmp 0x18007bf04
mov dword [rbp - 0x50], 1
lea rdx, [rbp - 0x50]
cmp byte [rsi + r14*8], 0x43
jne 0x18007fe60
call fcn.180058720
jmp 0x18007fe65
call fcn.180058fb0
mov rcx, qword [rbp - 0x60]
mov r15d, eax
mov dword [rsp + 0x44], eax
movzx eax, byte [rbp - 0x50]
mov byte [rcx + 0x28], al
mov rax, qword [rbp - 0x60]
mov dword [rax + 0x5c], r12d
cmp dword [rbp - 0x50], r12d
jne 0x18007feab
mov r13d, dword [rsi + r14*8 + 8]
movzx eax, byte [rsi + r14*8 + 3]
dec r13d
test al, al
je 0x18007feab
movzx eax, al
dec eax
movsxd rcx, eax
mov rax, qword [rsp + 0x50]
inc dword [rax + rcx*4 + 0xb4]
mov rax, qword [rbp - 0x60]
mov byte [rax + 0x25], r12b
jmp case.0x18007bfa7.17
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x70]
mov rdx, qword [rax + rcx*8]
mov qword [rbp - 0x60], rdx
movsxd rax, dword [rsi + r14*8 + 8]
imul rbx, rax, 0x38
mov rcx, qword [rdx]
add rbx, qword [rsp + 0x60]
mov qword [rbp - 0x58], rcx
test rcx, rcx
je case.0x18007bfa7.17
mov eax, 0x4000
test word [rbx + 0x24], ax
je 0x18007ff16
mov rcx, rbx
call fcn.180083c70
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne case.0x18007bfa7.17
mov rcx, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x60]
movsxd r8, dword [rbx + 0x20]
mov dword [rbp - 0x50], r8d
mov r10, qword [rbx + 8]
mov qword [rbp - 0x48], r10
test byte [rsi + r14*8 + 3], 0x10
je 0x18007ff33
mov eax, dword [rdx + 0x58]
jmp 0x18007ff36
mov eax, r12d
mov dword [rsp + 0x38], eax
lea r9, [0x1800e4fe0]
mov eax, dword [rsi + r14*8 + 0xc]
mov rdx, r10
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], r12d
call fcn.180057850
mov r15d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rbp - 0x60]
mov dword [rax + 0x5c], r12d
jmp case.0x18007bfa7.17
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x70]
mov rax, qword [rax + rcx*8]
mov qword [rbp - 0x60], rax
mov r10, qword [rax]
mov qword [rbp - 0x58], r10
test r10, r10
je case.0x18007bfa7.17
mov rax, qword [rax + 0x10]
lea rdx, [rbp - 0x48]
mov qword [rbp - 0x48], rax
xor r9d, r9d
movzx eax, word [rsi + r14*8 + 0xc]
xor r8d, r8d
mov word [rbp - 0x40], ax
mov word [rbp - 0x3e], r12w
movsxd rax, dword [rsi + r14*8 + 8]
imul rcx, rax, 0x38
lea rax, [rbp - 0x50]
add rcx, qword [rsp + 0x60]
mov qword [rbp - 0x30], rcx
mov rcx, r10
mov qword [rsp + 0x20], rax
call fcn.180058300
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x18007fffb
cmp dword [rbp - 0x50], r12d
jne 0x18007fffb
mov rcx, qword [rbp - 0x58]
call fcn.180057150
mov r15d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rbp - 0x60]
mov dword [rax + 0x5c], r12d
jmp case.0x18007bfa7.17
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rsp + 0x50]
mov r14, qword [rsp + 0x70]
mov rax, qword [rax + 0x70]
mov rax, qword [rax + rcx*8]
mov qword [rbp - 0x58], rax
mov rax, qword [rax]
mov qword [rbp - 0x60], rax
mov eax, 1
mov word [r14 + 0x24], ax
cmp qword [rbp - 0x60], r12
je 0x18007cf52
mov rcx, qword [rbp - 0x58]
call fcn.18007ba20
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x180081a6b
mov rax, qword [rbp - 0x58]
cmp byte [rax + 0x28], r12b
jne 0x18007cf4c
mov rdx, qword [rbp - 0x60]
lea r8, [rbp - 0x50]
mov rcx, rdi
call fcn.180082e00
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x180081a6b
mov rax, qword [rbp - 0x50]
mov r11d, 4
mov qword [r14 + 0x18], rax
inc r13d
mov rax, qword [rsp + 0x58]
mov word [r14 + 0x24], r11w
jmp 0x18007bf04
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x70]
mov r9, qword [rax + rcx*8]
mov qword [rbp - 0x60], r9
cmp qword [r9], r12
je case.0x18007bfa7.17
mov rax, qword [r9 + 0x10]
mov qword [rbp - 0x50], rax
movzx eax, word [rsi + r14*8 + 0x10]
mov word [rbp - 0x48], ax
cmp byte [rsi + r14*8 + 3], r12b
je 0x1800800e6
mov eax, 0xc
mov word [rbp - 0x46], ax
jmp 0x1800800eb
mov word [rbp - 0x46], r11w
movsxd rax, dword [rsi + r14*8 + 0xc]
lea r8, [rbp - 0x58]
imul rcx, rax, 0x38
lea rdx, [rbp - 0x50]
add rcx, qword [rsp + 0x60]
mov qword [rbp - 0x38], rcx
mov rcx, r9
call fcn.180082c20
cmp byte [rsi + r14*8], 0x51
mov r15d, eax
mov dword [rsp + 0x44], eax
mov eax, dword [rbp - 0x58]
jne 0x180080122
neg eax
jmp 0x180080124
inc eax
mov dword [rbp - 0x58], eax
test eax, eax
jle case.0x18007bfa7.17
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
jmp case.0x18007bfa7.17
mov ecx, r12d
mov dword [rbp - 0x5c], ecx
mov rax, qword [rdi + 0xa8]
mov qword [rbp - 0x58], rax
test rax, rax
je 0x18008017f
cmp dword [rax + 0x54], 0xbdf20da3
jne 0x180080172
cmp byte [rax + 0x9e], 2
jae 0x180080172
cmp dword [rax + 0x90], r12d
jl 0x180080172
inc ecx
mov dword [rbp - 0x5c], ecx
mov rax, qword [rax + 0x68]
mov qword [rbp - 0x58], rax
test rax, rax
jne 0x180080152
mov eax, 1
mov word [r10 + 0x24], ax
cmp dword [rbp - 0x5c], eax
jg 0x180081ac7
movsxd rax, dword [rsi + r14*8 + 0xc]
mov dword [rbp - 0x50], eax
mov rcx, rax
mov rax, qword [rdi + 0x10]
mov ebx, dword [rsi + r14*8 + 4]
shl rcx, 5
mov rdi, qword [rcx + rax + 8]
mov rcx, rdi
call fcn.180057430
lea r8, [rbp - 0x60]
mov edx, ebx
mov rcx, rdi
call fcn.180034180
mov r15d, eax
mov dword [rsp + 0x44], eax
cmp byte [rdi + 0x11], r12b
je 0x1800801ef
sub dword [rdi + 0x14], 1
jne 0x1800801ef
mov rax, qword [rdi + 8]
mov rcx, qword [rax + 0x58]
test rcx, rcx
je 0x1800801eb
call qword [0x1800fe200]
mov byte [rdi + 0x12], r12b
mov r9, qword [rsp + 0x70]
mov eax, 4
mov word [r9 + 0x24], ax
movsxd rax, dword [rbp - 0x60]
mov qword [r9 + 0x18], rax
test r15d, r15d
jne 0x18008036e
mov r8d, dword [rbp - 0x60]
mov rdi, qword [rsp + 0x68]
test r8d, r8d
je case.0x18007bfa7.17
movsxd r9, dword [rbp - 0x50]
mov edx, dword [rsi + r14*8 + 4]
shl r9, 5
add r9, qword [rdi + 0x10]
mov rax, qword [r9 + 0x18]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x180080255
nop
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x20], r8d
jne 0x18008024d
mov dword [rax + 0x20], edx
mov rcx, qword [rcx]
test rcx, rcx
jne 0x180080240
mov rax, qword [r9 + 0x18]
mov rcx, qword [rax + 0x28]
test rcx, rcx
je 0x180080277
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x28], r8d
jne 0x18008026f
mov dword [rax + 0x28], edx
mov rcx, qword [rcx]
test rcx, rcx
jne 0x180080262
movzx r14d, byte [rbp - 0x50]
inc r14b
mov byte [rsp + 0x40], r14b
jmp case.0x18007bfa7.17
mov dword [rbp - 0x60], r12d
lea r8, [rbp - 0x60]
cmp dword [rsi + r14*8 + 0xc], r12d
movsxd rax, dword [rsi + r14*8 + 8]
mov rcx, qword [rdi + 0x10]
cmove r8, r12
mov edx, dword [rsi + r14*8 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1800567e0
mov r15d, eax
mov dword [rsp + 0x44], eax
cmp dword [rsi + r14*8 + 0xc], r12d
je case.0x18007bfa7.17
mov rax, qword [rsp + 0x50]
movsxd rdx, dword [rbp - 0x60]
add dword [rax + 0xa4], edx
movsxd rax, dword [rsi + r14*8 + 0xc]
test eax, eax
jle case.0x18007bfa7.17
mov rbx, qword [rsp + 0x60]
imul rcx, rax, 0x38
add qword [rcx + rbx + 0x18], rdx
jmp case.0x18007bfa7.17
mov dword [rbp - 0x60], r12d
mov ebx, r12d
movsxd rax, dword [rsi + r14*8 + 4]
shl rax, 5
add rax, qword [rdi + 0x10]
mov qword [rbp - 0x58], rax
cmp byte [rsi + r14*8], 0x62
setne bl
inc ebx
mov dword [rbp - 0x5c], ebx
mov rdi, qword [rax + 8]
mov rcx, rdi
call fcn.180057430
mov r8d, ebx
lea rdx, [rbp - 0x60]
mov rcx, rdi
call fcn.180033de0
mov r15d, eax
mov dword [rsp + 0x44], eax
cmp byte [rdi + 0x11], r12b
je 0x180080361
sub dword [rdi + 0x14], 1
jne 0x180080361
mov rax, qword [rdi + 8]
mov rcx, qword [rax + 0x58]
test rcx, rcx
je 0x18008035d
call qword [0x1800fe200]
mov byte [rdi + 0x12], r12b
mov r9, qword [rsp + 0x70]
movsxd rax, dword [rbp - 0x60]
mov qword [r9 + 0x18], rax
mov rdi, qword [rsp + 0x68]
jmp case.0x18007bfa7.17
movsxd rcx, dword [rsi + r14*8 + 4]
lea rax, str.sqlite_master
mov dword [rbp - 0x60], ecx
lea r9, str.sqlite_temp_master
mov qword [rbp - 0x48], rdi
lea rdx, str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s_ORDER_BY_rowid
cmp ecx, 1
cmovne r9, rax
shl rcx, 5
mov qword [rbp - 0x58], r9
mov eax, dword [rsi + r14*8 + 4]
mov dword [rbp - 0x40], eax
mov rax, qword [rsp + 0x50]
add rax, 0x58
mov qword [rbp - 0x38], rax
mov r8, qword [rdi + 0x10]
mov rax, qword [rsi + r14*8 + 0x10]
mov qword [rsp + 0x20], rax
mov r8, qword [rcx + r8]
mov rcx, rdi
call fcn.18006aa40
mov qword [rbp - 0x50], rax
test rax, rax
je 0x180081d64
mov byte [rdi + 0x94], 1
lea r9, [rbp - 0x48]
mov rdx, qword [rbp - 0x50]
lea r8, [fcn.1800682d0]
mov rcx, rdi
mov dword [rbp - 0x30], r12d
mov qword [rsp + 0x20], r12
call fcn.1800248a0
mov rdx, qword [rbp - 0x50]
test eax, eax
mov r15d, eax
mov rcx, rdi
cmove r15d, dword [rbp - 0x30]
mov dword [rsp + 0x44], r15d
call fcn.18005c7d0
mov byte [rdi + 0x94], r12b
cmp r15d, 7
je 0x180081d64
jmp case.0x18007bfa7.17
mov edx, dword [rsi + r14*8 + 4]
mov rcx, rdi
call fcn.180053a50
mov r15d, eax
mov dword [rsp + 0x44], eax
jmp case.0x18007bfa7.17
mov r8, qword [rsi + r14*8 + 0x10]
mov rcx, rdi
mov edx, dword [rsi + r14*8 + 4]
call fcn.180077e40
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
mov r8, qword [rsi + r14*8 + 0x10]
mov rcx, rdi
mov edx, dword [rsi + r14*8 + 4]
call fcn.180077d80
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
mov r8, qword [rsi + r14*8 + 0x10]
mov rcx, rdi
mov edx, dword [rsi + r14*8 + 4]
call fcn.180077eb0
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
mov edx, dword [rsi + r14*8 + 8]
mov rcx, rdi
mov dword [rbp - 0x60], edx
lea edx, [rdx*4 + 4]
call fcn.18005c880
mov qword [rbp - 0x58], rax
mov r8, rax
test rax, rax
je 0x180081d64
movsxd rcx, dword [rsi + r14*8 + 0xc]
imul rdx, rcx, 0x38
add rdx, qword [rsp + 0x60]
mov qword [rbp - 0x40], rdx
movsxd rcx, dword [rsi + r14*8 + 4]
imul rbx, rcx, 0x38
mov ecx, r12d
add rbx, qword [rsp + 0x60]
mov dword [rbp - 0x50], ecx
cmp dword [rbp - 0x60], r12d
jle 0x18008053b
nop word [rax + rax]
movsxd rax, ecx
imul rcx, rax, 0x38
add rcx, rbx
call fcn.180083170
movsxd rdx, dword [rbp - 0x50]
mov rcx, qword [rbp - 0x58]
mov dword [rcx + rdx*4], eax
mov ecx, dword [rbp - 0x50]
inc ecx
mov dword [rbp - 0x50], ecx
cmp ecx, dword [rbp - 0x60]
jl 0x180080510
mov r8, qword [rbp - 0x58]
movsxd rax, ecx
mov dword [r8 + rax*4], r12d
lea rax, [rbp - 0x4c]
movzx r10d, byte [rsi + r14*8 + 3]
mov rcx, qword [rdi + 0x10]
mov r8d, dword [rbp - 0x60]
mov rdx, qword [rbp - 0x58]
mov qword [rsp + 0x20], rax
mov rax, qword [rbp - 0x40]
shl r10, 5
mov r9d, dword [rax + 0x18]
mov rcx, qword [r10 + rcx + 8]
call fcn.180057b00
mov rdx, qword [rbp - 0x58]
mov rcx, rdi
mov qword [rbp - 0x48], rax
call fcn.18005c7d0
mov rcx, qword [rbp - 0x40]
movsxd rax, dword [rbp - 0x4c]
sub qword [rcx + 0x18], rax
mov rcx, rbx
call fcn.180084610
cmp dword [rbp - 0x4c], r12d
je 0x1800805c5
mov rdx, qword [rbp - 0x48]
test rdx, rdx
je 0x180081d64
lea rax, [fcn.18002ab40]
mov r9b, 1
or r8d, 0xffffffff
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.180084740
test byte [rbx + 0x24], 2
movzx ecx, byte [rsp + 0x48]
je 0x18007eff2
movzx eax, byte [rbx + 0x27]
cmp eax, ecx
je 0x18007eff2
movzx edx, cl
mov rcx, rbx
call fcn.180084b00
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 8]
add rbx, qword [rsp + 0x60]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x60]
test byte [rbx + 0x24], 0x20
jne 0x18008062c
mov rcx, rbx
call fcn.180084660
test byte [rbx + 0x24], 0x20
je 0x180081d5f
mov rdx, qword [rdi + 0x18]
mov rcx, qword [rbx + 0x18]
call fcn.180073480
mov rax, qword [rsp + 0x58]
inc r13d
mov rdi, qword [rsp + 0x68]
jmp 0x18007befe
mov eax, dword [rdi + 0x150]
test eax, eax
jne 0x180081d07
movsxd rax, dword [rsi + r14*8 + 4]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
test byte [rbx + 0x24], 0x20
je 0x1800806cb
mov rdi, qword [rbx + 0x18]
mov rcx, rdi
call fcn.180050670
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x1800806cb
mov rax, qword [rax]
mov qword [rbp - 0x60], rax
mov rax, qword [rdi + 0x10]
mov rcx, qword [rax + 8]
mov qword [rdi + 0x10], rcx
test rcx, rcx
jne 0x1800806a2
mov rcx, rdi
call fcn.1800733b0
movsxd rax, dword [rsi + r14*8 + 0xc]
mov rdx, qword [rbp - 0x60]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
call fcn.1800845c0
mov rax, qword [rsp + 0x58]
inc r13d
mov rdi, qword [rsp + 0x68]
jmp 0x18007befe
mov rcx, rbx
call fcn.180084610
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
mov rdi, qword [rsp + 0x68]
inc r13d
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 0xc]
add rbx, qword [rsp + 0x60]
imul rdi, rax, 0x38
mov eax, dword [rsi + r14*8 + 0x10]
add rdi, qword [rsp + 0x60]
mov dword [rbp - 0x60], eax
test byte [rbx + 0x24], 0x20
jne 0x18008072c
mov rcx, rbx
call fcn.180084660
test byte [rbx + 0x24], 0x20
je 0x180081d5f
mov eax, dword [rbp - 0x60]
test eax, eax
je 0x18008076c
js 0x180080737
and eax, 0xf
jmp 0x18008073c
mov eax, 0xff
mov r8, qword [rdi + 0x18]
movzx edx, al
mov rcx, qword [rbx + 0x18]
call fcn.180073530
mov dword [rbp - 0x5c], eax
test eax, eax
je 0x180080767
mov r13d, dword [rsi + r14*8 + 8]
mov rdi, qword [rsp + 0x68]
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
mov eax, dword [rbp - 0x60]
test eax, eax
js 0x1800806db
jmp 0x18008062c
mov r8, qword [rsi + r14*8 + 0x10]
mov qword [rbp - 0x38], r8
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rdx, rax, 0x38
add rdx, qword [rsp + 0x60]
mov qword [rbp - 0x58], rdx
cmp byte [rsi + r14*8 + 3], r12b
je 0x1800807cd
mov rcx, qword [r8 + 0x18]
mov rax, qword [rsp + 0x50]
mov qword [rbp - 0x30], rcx
mov rax, qword [rax + 0xe8]
mov qword [rbp - 0x40], rax
test rax, rax
je 0x1800807cd
cmp qword [rax + 0x40], rcx
je 0x18007bfff
mov rax, qword [rax + 0x60]
mov qword [rbp - 0x40], rax
test rax, rax
jne 0x1800807b6
mov rcx, qword [rsp + 0x50]
mov eax, dword [rdi + 0x88]
cmp dword [rcx + 0xf8], eax
jge 0x180081ae5
test byte [rdx + 0x24], 0x40
jne 0x1800809ba
mov eax, dword [r8 + 0xc]
mov rcx, rdi
add eax, dword [r8 + 0x10]
mov dword [rbp - 0x60], eax
imul eax, eax, 7
add eax, dword [r8 + 0x10]
lea edx, [rax*8 + 0x68]
mov dword [rbp - 0x5c], edx
call fcn.18005c920
mov qword [rbp - 0x40], rax
test rax, rax
je 0x180081d64
mov rcx, qword [rbp - 0x58]
call fcn.180084440
mov rax, qword [rbp - 0x58]
mov ecx, 0x40
mov word [rax + 0x24], cx
mov rcx, qword [rbp - 0x58]
mov rax, qword [rbp - 0x40]
mov qword [rcx + 0x18], rax
mov rax, qword [rbp - 0x40]
mov rcx, qword [rsp + 0x50]
mov qword [rax], rcx
mov ecx, dword [rbp - 0x60]
mov rax, qword [rbp - 0x40]
mov dword [rax + 0x48], ecx
mov rax, qword [rbp - 0x38]
mov ecx, dword [rax + 0x10]
mov rax, qword [rbp - 0x40]
mov dword [rax + 0x4c], ecx
mov rax, qword [rbp - 0x40]
mov dword [rax + 8], r13d
mov rax, qword [rbp - 0x40]
mov r13, qword [rsp + 0x50]
mov rcx, qword [r13 + 0x10]
mov qword [rax + 0x20], rcx
mov rax, qword [rbp - 0x40]
mov ecx, dword [r13 + 0x30]
mov dword [rax + 0x28], ecx
mov rcx, qword [r13 + 0x70]
mov rax, qword [rbp - 0x40]
mov qword [rax + 0x30], rcx
mov rax, qword [rbp - 0x40]
movzx ecx, word [r13 + 0x52]
mov word [rax + 0x38], cx
mov rcx, qword [r13 + 8]
mov rax, qword [rbp - 0x40]
mov qword [rax + 0x10], rcx
mov rax, qword [rbp - 0x40]
mov ecx, dword [r13 + 0x34]
mov dword [rax + 0x18], ecx
mov rax, qword [rbp - 0x38]
mov rcx, qword [rax + 0x18]
mov rax, qword [rbp - 0x40]
mov qword [rax + 0x40], rcx
mov rdx, qword [rbp - 0x40]
movsxd rax, dword [rdx + 0x48]
imul rcx, rax, 0x38
lea rax, [rdx + 0x68]
add rax, rcx
lea rcx, [rdx + 0x68]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x50], rcx
cmp rcx, rax
je 0x180080921
mov ebx, 1
nop dword [rax]
nop word [rax + rax]
mov word [rcx + 0x24], bx
mov rax, qword [rbp - 0x50]
mov qword [rax], rdi
mov rcx, qword [rbp - 0x50]
add rcx, 0x38
mov qword [rbp - 0x50], rcx
cmp rcx, qword [rbp - 0x48]
jne 0x180080900
mov rdx, qword [rbp - 0x40]
mov r11d, 4
inc dword [r13 + 0xf8]
mov rax, qword [r13 + 0xe8]
mov rcx, qword [rbp - 0x80]
mov qword [rdx + 0x60], rax
mov rax, qword [rbp - 0x40]
mov qword [rax + 0x50], rcx
mov ecx, dword [r13 + 0xa4]
mov rax, qword [rbp - 0x40]
mov dword [rax + 0x58], ecx
mov rax, qword [rbp - 0x40]
mov qword [r13 + 0xe8], rax
mov dword [r13 + 0xa4], r12d
lea rbx, [rax + 0x30]
mov qword [r13 + 0x10], rbx
mov ecx, dword [rax + 0x48]
mov dword [r13 + 0x30], ecx
movzx eax, word [rax + 0x4c]
mov word [r13 + 0x52], ax
lea eax, [rcx + 1]
mov qword [rsp + 0x60], rbx
cdqe
imul rcx, rax, 0x38
mov rax, qword [rbp - 0x38]
add rcx, rbx
mov qword [r13 + 0x70], rcx
mov rsi, qword [rax]
mov qword [r13 + 8], rsi
mov eax, dword [rax + 8]
mov dword [r13 + 0x34], eax
or r13d, 0xffffffff
mov rax, qword [rsp + 0x58]
inc r13d
mov qword [rsp + 0x78], rsi
jmp 0x18007bf04
mov rdx, qword [rdx + 0x18]
mov r13, rcx
mov qword [rbp - 0x40], rdx
jmp 0x180080927
mov rax, qword [rsp + 0x50]
mov r8, qword [rax + 0xe8]
mov qword [rbp - 0x60], r8
movsxd rax, dword [r8 + 8]
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x10]
mov eax, dword [rax + rcx*8 + 4]
mov rcx, r10
add eax, dword [rsi + r14*8 + 4]
cdqe
imul rdx, rax, 0x38
add rdx, qword [r8 + 0x20]
mov r8d, 0x1000
mov qword [rbp - 0x58], rdx
call fcn.180084960
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 8]
cmp dword [rsi + r14*8 + 4], r12d
je 0x180080a38
add qword [rdi + 0x330], rax
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007bf04
mov rcx, qword [rsp + 0x50]
add qword [rcx + 0xc8], rax
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007bf04
cmp dword [rsi + r14*8 + 4], r12d
je 0x180080a7a
cmp qword [rdi + 0x330], r12
jne 0x18007cf52
mov r13d, dword [rsi + r14*8 + 8]
mov rax, qword [rsp + 0x58]
dec r13d
inc r13d
jmp 0x18007bf04
mov rax, qword [rsp + 0x50]
cmp qword [rax + 0xc8], r12
jne 0x18007cf52
mov r13d, dword [rsi + r14*8 + 8]
mov rax, qword [rsp + 0x58]
dec r13d
inc r13d
jmp 0x18007bf04
mov rax, qword [rsp + 0x50]
mov rcx, qword [rax + 0xe8]
test rcx, rcx
je 0x180080adf
mov qword [rbp - 0x58], rcx
mov rax, qword [rcx + 0x60]
test rax, rax
je 0x180080ad0
nop
mov rcx, rax
mov qword [rbp - 0x58], rax
mov rax, qword [rax + 0x60]
test rax, rax
jne 0x180080ac0
movsxd rax, dword [rsi + r14*8 + 4]
imul rdx, rax, 0x38
add rdx, qword [rcx + 0x20]
jmp 0x180080aed
movsxd rax, dword [rsi + r14*8 + 4]
imul rdx, rax, 0x38
add rdx, qword [rsp + 0x60]
mov rcx, rdx
mov qword [rbp - 0x60], rdx
call fcn.1800841b0
movsxd rax, dword [rsi + r14*8 + 8]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.1800841b0
mov rax, qword [rbp - 0x60]
mov rcx, qword [rbx + 0x18]
cmp qword [rax + 0x18], rcx
jge 0x18007eff2
mov qword [rax + 0x18], rcx
inc r13d
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x60]
cmp qword [rcx + rax + 0x18], r12
jle 0x18007cf52
mov r13d, dword [rsi + r14*8 + 8]
mov rax, qword [rsp + 0x58]
dec r13d
inc r13d
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x60]
cmp qword [rcx + rax + 0x18], r12
jge 0x18007cf52
mov r13d, dword [rsi + r14*8 + 8]
mov rax, qword [rsp + 0x58]
dec r13d
inc r13d
jmp 0x18007bf04
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rsi + r14*8 + 0xc]
add rcx, qword [rsp + 0x60]
add qword [rcx + 0x18], rax
jne 0x18007cf52
mov r13d, dword [rsi + r14*8 + 8]
mov rax, qword [rsp + 0x58]
dec r13d
inc r13d
jmp 0x18007bf04
movzx ecx, byte [rsi + r14*8 + 3]
mov rbx, qword [rsp + 0x60]
mov dword [rbp - 0x60], ecx
movsxd rax, dword [rsi + r14*8 + 8]
imul rdx, rax, 0x38
mov rax, qword [rsp + 0x50]
add rdx, rbx
mov qword [rbp - 0x50], rdx
mov r8, qword [rax + 0x18]
mov eax, r12d
mov qword [rbp + 0x18], r8
mov dword [rbp - 0x5c], eax
test ecx, ecx
jle 0x180080c2e
nop word [rax + rax]
cdqe
mov qword [r8 + rax*8], rdx
mov rcx, qword [rbp - 0x50]
call fcn.1800849d0
mov eax, dword [rbp - 0x5c]
mov rdx, qword [rbp - 0x50]
inc eax
add rdx, 0x38
mov dword [rbp - 0x5c], eax
mov qword [rbp - 0x50], rdx
cmp eax, dword [rbp - 0x60]
jge 0x180080c2e
mov r8, qword [rbp + 0x18]
jmp 0x180080c00
mov rax, qword [rsi + r14*8 + 0x10]
mov qword [rbp - 0x48], rax
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rcx, rax, 0x38
mov eax, 1
add rcx, rbx
mov qword [rbp - 0x58], rcx
mov qword [rbp], rcx
inc dword [rcx + 0x20]
mov r9, qword [rbp - 0x48]
mov word [rbp - 0x14], ax
mov qword [rbp - 0x30], r12
mov qword [rbp - 8], r12
mov qword [rbp - 0x10], r12
mov qword [rbp - 0x38], rdi
mov dword [rbp + 8], r12d
mov qword [rbp + 0x10], r12
test byte [r9 + 3], 8
je 0x180080c83
mov rax, qword [rsi + r14*8 - 8]
mov qword [rbp + 0x10], rax
mov r8, qword [rbp + 0x18]
lea rcx, [rbp - 0x48]
mov edx, dword [rbp - 0x60]
call qword [r9 + 0x20]
cmp dword [rbp + 8], r12d
je 0x180080cc7
mov dl, 1
lea rcx, [rbp - 0x38]
call fcn.18007b020
mov rcx, qword [rsp + 0x50]
lea r8, [0x1800cd984]
add rcx, 0x58
mov r9, rax
mov rdx, rdi
call fcn.1800763c0
mov r15d, dword [rbp + 8]
mov dword [rsp + 0x44], r15d
lea rcx, [rbp - 0x38]
call fcn.180084470
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp - 0x38]
call fcn.18005c7d0
mov qword [rbp - 0x30], r12
mov qword [rbp - 8], r12
mov qword [rbp - 0x10], r12
jmp case.0x18007bfa7.17
movsxd rax, dword [rsi + r14*8 + 4]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
mov qword [rbp - 0x60], rcx
mov rdx, qword [rsi + r14*8 + 0x10]
call fcn.180083ce0
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
je 0x180080d3b
mov rcx, qword [rbp - 0x60]
mov dl, 1
call fcn.18007b020
mov rcx, qword [rsp + 0x50]
lea r8, [0x1800cd984]
add rcx, 0x58
mov r9, rax
mov rdx, rdi
call fcn.1800763c0
mov rcx, qword [rbp - 0x60]
movzx edx, byte [rsp + 0x48]
test byte [rcx + 0x24], 2
je 0x180080d5b
movzx eax, byte [rcx + 0x27]
cmp eax, edx
je 0x180080d5b
call fcn.180084b00
mov rcx, qword [rbp - 0x60]
call fcn.180084ad0
test eax, eax
jne 0x180081b4b
jmp case.0x18007bfa7.17
mov dword [rbp - 0x5c], r12d
lea rax, [rbp - 0x54]
mov qword [rbp - 0x58], 0xffffffffffffffff
lea r9, [rbp - 0x58]
mov r8d, dword [rsi + r14*8 + 8]
mov rcx, rdi
mov edx, dword [rsi + r14*8 + 4]
mov qword [rsp + 0x20], rax
call fcn.180059f30
mov dword [rsp + 0x44], eax
mov r15d, eax
cmp eax, 5
jne 0x180080db3
mov r15d, r12d
mov dword [rsp + 0x44], r12d
mov dword [rbp - 0x5c], 1
mov edx, r12d
mov dword [rbp - 0x60], edx
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
mov qword [rbp - 0x50], rcx
nop dword [rax + rax]
movsxd rax, edx
movsxd rdx, dword [rbp + rax*4 - 0x5c]
call fcn.1800845c0
mov edx, dword [rbp - 0x60]
mov rcx, qword [rbp - 0x50]
inc edx
add rcx, 0x38
mov dword [rbp - 0x60], edx
mov qword [rbp - 0x50], rcx
cmp edx, 3
jl 0x180080dd0
jmp case.0x18007bfa7.17
mov r8d, dword [rsi + r14*8 + 0xc]
mov dword [rbp - 0x50], r8d
mov rax, qword [rdi + 0x10]
movsxd rcx, dword [rsi + r14*8 + 4]
shl rcx, 5
cmp r8d, 0xffffffff
mov r10, qword [rcx + rax + 8]
mov qword [rbp - 0x60], r10
mov rax, qword [r10 + 8]
mov rcx, qword [rax]
mov qword [rbp - 0x58], rcx
movzx r9d, byte [rcx + 9]
cmove r8d, r9d
mov dword [rbp - 0x4c], r9d
mov dword [rbp - 0x50], r8d
cmp byte [rcx + 0x13], 3
jae 0x180080e4f
mov rax, qword [rcx + 0x50]
cmp qword [rax], r12
je 0x180080e56
cmp qword [rcx + 0x60], r12
jle 0x180080e56
mov r8d, r9d
mov dword [rbp - 0x50], r9d
mov rax, qword [rcx + 0xb0]
mov qword [rbp - 0x48], rax
cmp r8d, 5
jne 0x180080e81
cmp byte [rax], r12b
je 0x180080e75
call fcn.18006d7f0
test eax, eax
jne 0x180080e81
mov r8d, r9d
mov dword [rbp - 0x50], r9d
jmp 0x180080f14
cmp r8d, r9d
je 0x180080f14
cmp r9d, 5
je 0x180080e96
cmp r8d, 5
jne 0x180080f14
cmp byte [rdi + 0x28], r12b
je 0x180081b08
cmp dword [rdi + 0xb0], 1
jg 0x180081b08
cmp r9d, 5
jne 0x180080ecc
call fcn.18006c250
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
jne 0x180080f02
mov edx, dword [rbp - 0x50]
mov rcx, qword [rbp - 0x58]
jmp 0x180080ed6
cmp r9d, 4
jne 0x180080ee3
lea edx, [r9 - 2]
call fcn.18006d250
mov r10, qword [rbp - 0x60]
mov r8d, dword [rbp - 0x50]
mov edx, r12d
cmp r8d, 5
mov rcx, r10
sete dl
inc edx
call fcn.1800598f0
mov dword [rsp + 0x44], eax
mov r15d, eax
test eax, eax
je 0x180080f0c
mov r8d, dword [rbp - 0x4c]
mov dword [rbp - 0x50], r8d
jmp 0x180080f10
mov r8d, dword [rbp - 0x50]
mov rcx, qword [rbp - 0x58]
mov edx, r8d
call fcn.18006d250
mov dword [rbp - 0x50], eax
movsxd rax, dword [rsi + r14*8 + 8]
imul r14, rax, 0x38
mov eax, 0xa02
add r14, qword [rsp + 0x60]
mov qword [rsp + 0x70], r14
mov word [r14 + 0x24], ax
movsxd rax, dword [rbp - 0x50]
cmp eax, 6
jne 0x180080f4a
mov rcx, r12
jmp 0x180080f59
lea rcx, [0x180000000]
mov rcx, qword [rcx + rax*8 + 0xca928]
mov qword [r14 + 8], rcx
mov rax, rcx
test rcx, rcx
jne 0x180080f6a
mov eax, r12d
jmp 0x180080f7f
cmp byte [rcx], r12b
je 0x180080f78
nop
inc rax
cmp byte [rax], r12b
jne 0x180080f70
sub eax, ecx
and eax, 0x3fffffff
mov dword [r14 + 0x20], eax
movzx eax, byte [rsp + 0x48]
mov byte [r14 + 0x27], 1
cmp eax, 1
je case.0x18007bfa7.17
movzx edx, al
mov rcx, r14
call fcn.180084b00
jmp case.0x18007bfa7.17
mov rcx, qword [rsp + 0x50]
mov rdx, rdi
add rcx, 0x58
call fcn.180073a90
mov r15d, eax
mov dword [rsp + 0x44], eax
jmp case.0x18007bfa7.17
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rdi + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov qword [rbp - 0x60], rcx
call fcn.180057770
mov dword [rsp + 0x44], eax
mov r15d, eax
cmp eax, 0x65
jne case.0x18007bfa7.17
mov r13d, dword [rsi + r14*8 + 8]
mov r15d, r12d
dec r13d
mov dword [rsp + 0x44], r12d
jmp case.0x18007bfa7.17
cmp dword [rsi + r14*8 + 4], r12d
jne 0x18008101f
mov rcx, rdi
call fcn.18005e820
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007bf04
mov rax, qword [rsp + 0x50]
inc r13d
mov byte [rax + 0x9b], 1
mov rax, qword [rsp + 0x58]
jmp 0x18007bf04
movzx r8d, byte [rsi + r14*8 + 0xc]
test r8b, r8b
jne 0x180081050
test dword [rdi + 0x18], 0x80000
jne case.0x18007bfa7.17
movsxd rax, dword [rsi + r14*8 + 4]
mov rcx, qword [rdi + 0x10]
mov edx, dword [rsi + r14*8 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1800581c0
mov dword [rsp + 0x44], eax
mov r15d, eax
cmp al, 6
jne case.0x18007bfa7.17
mov rcx, qword [rsp + 0x50]
lea r8, str.database_table_is_locked:__s
mov r9, qword [rsi + r14*8 + 0x10]
add rcx, 0x58
mov rdx, rdi
call fcn.1800763c0
jmp case.0x18007bfa7.17
mov rdx, qword [rsi + r14*8 + 0x10]
mov rcx, rdi
mov qword [rbp - 0x60], rdx
call fcn.180086270
mov rdx, qword [rbp - 0x60]
mov r15d, eax
mov dword [rsp + 0x44], eax
test rdx, rdx
je case.0x18007bfa7.17
mov rdx, qword [rdx + 0x10]
mov rcx, qword [rsp + 0x50]
call fcn.180043f20
jmp case.0x18007bfa7.17
mov r9, qword [rsp + 0x50]
mov rcx, rdi
mov r8, qword [rsi + r14*8 + 0x10]
add r9, 0x58
mov edx, dword [rsi + r14*8 + 4]
call fcn.1800865d0
mov r15d, eax
mov dword [rsp + 0x44], eax
jmp case.0x18007bfa7.17
mov rax, qword [rsp + 0x50]
mov rcx, rdi
mov byte [rax + 0x9e], 2
mov r8, qword [rsi + r14*8 + 0x10]
mov edx, dword [rsi + r14*8 + 4]
call fcn.180086700
mov rsi, qword [rsp + 0x50]
mov r15d, eax
mov dword [rsp + 0x44], eax
mov byte [rsi + 0x9e], r12b
jmp case.0x18007bfa7.17
xorps xmm0, xmm0
lea rdx, [rbp - 0x58]
movdqa xmmword [rbp - 0x60], xmm0
mov rax, qword [rsi + r14*8 + 0x10]
mov rcx, qword [rax + 0x10]
mov qword [rbp - 0x50], rcx
mov rax, qword [rcx]
mov qword [rbp - 0x48], rax
call qword [rax + 0x30]
mov rdx, qword [rbp - 0x50]
mov r15d, eax
mov rcx, qword [rsp + 0x50]
mov dword [rsp + 0x44], eax
call fcn.180043f20
test r15d, r15d
jne case.0x18007bfa7.17
mov rcx, qword [rbp - 0x58]
or r9d, 0xffffffff
mov rax, qword [rbp - 0x50]
xor r8d, r8d
mov dword [rsp + 0x20], r12d
mov qword [rcx], rax
mov edx, dword [rsi + r14*8 + 4]
mov rcx, qword [rsp + 0x50]
call fcn.18002ede0
mov qword [rbp - 0x60], rax
test rax, rax
je 0x1800811c9
mov rcx, qword [rbp - 0x58]
inc r13d
mov qword [rax + 0x30], rcx
mov rax, qword [rbp - 0x58]
mov rcx, qword [rax]
mov rax, qword [rbp - 0x60]
mov rdx, qword [rcx]
mov qword [rax + 0x38], rdx
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
mov byte [rdi + 0x2a], 1
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x58]
call qword [rax + 0x38]
jmp case.0x18007bfa7.17
movsxd rax, dword [rsi + r14*8 + 0xc]
mov r15, qword [rsp + 0x50]
imul r8, rax, 0x38
mov rax, qword [r15 + 0x70]
add r8, qword [rsp + 0x60]
mov r9, qword [r15 + 0x18]
lea r10, [r8 + 0x38]
mov qword [rbp - 0x50], r8
mov qword [rbp - 0x48], r10
movsxd rcx, dword [rsi + r14*8 + 4]
mov rdx, qword [rax + rcx*8]
mov qword [rbp - 0x30], rdx
mov rcx, qword [rdx + 0x30]
mov qword [rbp - 0x40], rcx
mov rax, qword [rcx]
mov qword [rbp - 0x38], rax
mov r11, qword [rax]
mov qword [rbp - 0x58], r11
mov eax, dword [r10 + 0x18]
mov dword [rbp - 0x60], eax
mov edx, dword [r8 + 0x18]
mov r8d, r12d
mov dword [rbp - 0x5c], edx
mov qword [rbp - 0x28], r12
mov qword [rbp - 0x20], r9
test eax, eax
jle 0x18008129e
nop dword [rax]
nop dword [rax + rax]
lea eax, [r8 + 1]
movsxd rcx, eax
imul rdx, rcx, 0x38
movsxd rax, r8d
add rdx, r10
mov qword [r9 + rax*8], rdx
movsxd rax, dword [rbp - 0x24]
mov rcx, qword [rbp - 0x20]
mov rcx, qword [rcx + rax*8]
call fcn.1800849d0
mov r8d, dword [rbp - 0x24]
mov eax, dword [rbp - 0x60]
inc r8d
mov r9, qword [rbp - 0x20]
mov dword [rbp - 0x24], r8d
cmp r8d, eax
jge 0x180081293
mov r10, qword [rbp - 0x48]
jmp 0x180081250
mov rcx, qword [rbp - 0x40]
mov r11, qword [rbp - 0x58]
mov edx, dword [rbp - 0x5c]
mov byte [r15 + 0x9e], 1
mov r8, qword [rsi + r14*8 + 0x10]
mov qword [rsp + 0x20], r9
mov r9d, eax
call qword [r11 + 0x40]
mov rdx, qword [rbp - 0x38]
mov r15d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0x50]
mov rcx, rax
mov byte [rax + 0x9e], r12b
call fcn.180043f20
test r15d, r15d
jne 0x1800812eb
mov rax, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x40]
call qword [rax + 0x50]
mov dword [rbp - 0x28], eax
jmp 0x1800812ee
mov eax, dword [rbp - 0x28]
test eax, eax
je 0x1800812fa
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
mov rax, qword [rbp - 0x30]
mov byte [rax + 0x28], r12b
jmp case.0x18007bfa7.17
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x70]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
mov qword [rbp - 0x50], rcx
cmp byte [rbx + 0x28], r12b
je 0x180081343
call fcn.180084610
mov rax, qword [rsp + 0x58]
inc r13d
jmp 0x18007befe
mov rax, qword [rbx + 0x30]
lea rcx, [rbp - 0x48]
xor edx, edx
mov rax, qword [rax]
mov qword [rbp - 0x60], rax
lea r8d, [rdx + 0x60]
mov rax, qword [rax]
mov qword [rbp - 0x58], rax
call fcn.18009c1f0
mov rdx, qword [rbp - 0x50]
lea rcx, [rbp - 0x38]
call fcn.180084260
movzx eax, word [rbp - 0x14]
lea rdx, [rbp - 0x48]
mov ecx, 0xbf01
and ax, cx
or ax, 1
mov word [rbp - 0x14], ax
mov rax, qword [rbp - 0x58]
mov r8d, dword [rsi + r14*8 + 8]
mov rcx, qword [rbx + 0x30]
call qword [rax + 0x58]
mov rdx, qword [rbp - 0x60]
mov r15d, eax
mov rcx, qword [rsp + 0x50]
call fcn.180043f20
mov eax, dword [rbp + 8]
test eax, eax
movzx ecx, byte [rsp + 0x48]
cmovne r15d, eax
test byte [rbp - 0x14], 2
mov dword [rsp + 0x44], r15d
je 0x1800813d7
movzx eax, byte [rbp - 0x11]
cmp eax, ecx
je 0x1800813d7
movzx edx, cl
lea rcx, [rbp - 0x38]
call fcn.180084b00
mov rcx, qword [rbp - 0x50]
lea rdx, [rbp - 0x38]
call fcn.180084260
mov rcx, qword [rbp - 0x50]
call fcn.180084ad0
test eax, eax
jne 0x180081b4b
jmp case.0x18007bfa7.17
mov rax, qword [rsp + 0x50]
mov dword [rbp - 0x50], r12d
movsxd rcx, dword [rsi + r14*8 + 4]
mov rax, qword [rax + 0x70]
mov rdx, qword [rax + rcx*8]
mov qword [rbp - 0x48], rdx
cmp byte [rdx + 0x28], r12b
jne case.0x18007bfa7.17
mov rax, qword [rdx + 0x30]
mov rcx, qword [rax]
mov qword [rbp - 0x60], rcx
mov rax, qword [rcx]
mov rcx, qword [rsp + 0x50]
mov qword [rbp - 0x58], rax
mov byte [rcx + 0x9e], 1
mov rcx, qword [rdx + 0x30]
call qword [rax + 0x48]
mov rdx, qword [rbp - 0x60]
mov r15d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0x50]
mov rcx, rax
mov byte [rax + 0x9e], r12b
call fcn.180043f20
test r15d, r15d
jne 0x18008147b
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x58]
mov rcx, qword [rcx + 0x30]
call qword [rax + 0x50]
mov dword [rbp - 0x50], eax
jmp 0x18008147e
mov eax, dword [rbp - 0x50]
test eax, eax
jne case.0x18007bfa7.17
mov r13d, dword [rsi + r14*8 + 8]
dec r13d
jmp case.0x18007bfa7.17
mov rax, qword [rsi + r14*8 + 0x10]
mov rcx, qword [rax + 0x10]
mov qword [rbp - 0x60], rcx
movsxd rax, dword [rsi + r14*8 + 4]
imul rdx, rax, 0x38
add rdx, qword [rsp + 0x60]
mov qword [rbp - 0x58], rdx
mov rax, qword [rcx]
mov rdx, qword [rdx + 8]
call qword [rax + 0x98]
mov rdx, qword [rbp - 0x60]
mov r15d, eax
mov rcx, qword [rsp + 0x50]
mov dword [rsp + 0x44], eax
call fcn.180043f20
mov rsi, qword [rsp + 0x50]
mov byte [rsi + 0x9b], r12b
jmp case.0x18007bfa7.17
mov rax, qword [rsi + r14*8 + 0x10]
mov rcx, qword [rax + 0x10]
mov qword [rbp - 0x60], rcx
mov rax, qword [rcx]
mov qword [rbp - 0x58], rax
mov edx, dword [rsi + r14*8 + 8]
mov dword [rbp - 0x50], edx
cmp qword [rax + 0x68], r12
je case.0x18007bfa7.17
movzx ebx, byte [rdi + 0x2e]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x18]
mov qword [rbp - 0x40], rax
movsxd rax, dword [rsi + r14*8 + 0xc]
imul rcx, rax, 0x38
mov dword [rbp - 0x4c], r12d
add rcx, qword [rsp + 0x60]
mov qword [rbp - 0x38], rcx
test edx, edx
jle 0x180081564
call fcn.1800849d0
mov rax, qword [rbp - 0x38]
movsxd rdx, dword [rbp - 0x4c]
mov rcx, qword [rbp - 0x40]
mov qword [rcx + rdx*8], rax
mov rcx, qword [rbp - 0x38]
mov eax, dword [rbp - 0x4c]
add rcx, 0x38
inc eax
mov qword [rbp - 0x38], rcx
mov dword [rbp - 0x4c], eax
cmp eax, dword [rbp - 0x50]
jl 0x180081536
movzx eax, byte [rsi + r14*8 + 3]
lea r9, [rbp - 0x48]
mov byte [rdi + 0x2e], al
mov rax, qword [rbp - 0x58]
mov r8, qword [rbp - 0x40]
mov edx, dword [rbp - 0x50]
mov rcx, qword [rbp - 0x60]
call qword [rax + 0x68]
mov rcx, qword [rsp + 0x50]
mov r15d, eax
mov byte [rdi + 0x2e], bl
mov rdx, qword [rbp - 0x60]
mov dword [rsp + 0x44], eax
call fcn.180043f20
test r15d, r15d
jne 0x1800815c7
cmp dword [rsi + r14*8 + 4], r12d
je 0x18007f9a2
mov rax, qword [rbp - 0x48]
mov rsi, qword [rsp + 0x50]
mov qword [rdi + 0x40], rax
mov qword [rbp - 0x80], rax
inc dword [rsi + 0xa4]
jmp case.0x18007bfa7.17
cmp r15d, 0x13
jne 0x18007f9a2
mov rax, qword [rsi + r14*8 + 0x10]
cmp byte [rax + 0x1c], r12b
je 0x18007f9a2
cmp byte [rsi + r14*8 + 3], 4
jne 0x180081b6e
mov rax, qword [rsp + 0x58]
mov r15d, r12d
mov dword [rsp + 0x44], r12d
inc r13d
jmp 0x18007befe
mov rax, qword [rdi + 0x10]
movsxd rcx, dword [rsi + r14*8 + 4]
shl rcx, 5
inc r13d
mov rcx, qword [rcx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov rax, qword [rsp + 0x58]
mov qword [r10 + 0x18], rcx
jmp 0x18007bf04
movsxd rcx, dword [rsi + r14*8 + 4]
mov edx, r12d
mov rax, qword [rdi + 0x10]
mov r8d, dword [rsi + r14*8 + 0xc]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
test r8d, r8d
je 0x180081658
mov rax, qword [rcx + 8]
mov edx, dword [rax + 0x40]
cmp edx, r8d
cmovb edx, r8d
call fcn.1800582a0
mov r9, qword [rsp + 0x70]
inc r13d
movsxd rcx, eax
mov rax, qword [rsp + 0x58]
mov qword [r9 + 0x18], rcx
jmp 0x18007befe
cmp qword [rdi + 0xc0], r12
je case.0x18007bfa7.17
mov rdx, qword [rsi + r14*8 + 0x10]
mov rsi, qword [rsp + 0x50]
test rdx, rdx
jne 0x180081695
mov rdx, qword [rsi + 0xd8]
mov qword [rbp - 0x60], rdx
test rdx, rdx
je case.0x18007bfa7.17
mov rcx, rsi
call fcn.180081fe0
mov qword [rbp - 0x58], rax
mov rdx, rax
mov rcx, qword [rdi + 0xc8]
call qword [rdi + 0xc0]
mov rdx, qword [rbp - 0x58]
mov rcx, rdi
call fcn.18005c7d0
inc r13d
test r15d, r15d
jne 0x1800818f2
mov rsi, qword [rsp + 0x78]
mov rax, qword [rsp + 0x58]
jmp 0x18007befe
mov r15d, 9
jmp 0x1800818f2
mov ecx, dword [rsi + r14*8 + 4]
mov dword [rdx + 0x94], ecx
movzx eax, byte [rsi + r14*8 + 8]
mov byte [rdx + 0x98], al
mov dword [rdx + 0x90], r13d
mov r9, qword [rsi + r14*8 + 0x10]
test r9, r9
je 0x180081753
lea rcx, [rdx + 0x58]
mov rdx, rdi
lea r8, [0x1800cd984]
call fcn.1800763c0
mov rax, qword [rsi + r14*8 + 0x10]
lea rdx, str.abort_at__d_in___s_:__s
mov ecx, dword [rsi + r14*8 + 4]
mov r8d, r13d
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x50]
mov r9, qword [rax + 0xd8]
call fcn.18002a740
jmp 0x180081772
test ecx, ecx
je 0x180081777
mov r9, qword [rdx + 0xd8]
mov r8d, r13d
mov ecx, dword [rsi + r14*8 + 4]
lea rdx, str.constraint_failed_at__d_in___s_
call fcn.18002a740
mov rdx, qword [rsp + 0x50]
mov rcx, rdx
call fcn.1800828f0
cmp eax, 5
mov rax, qword [rsp + 0x50]
je 0x1800819d8
cmp dword [rax + 0x94], r12d
mov ebx, 0x65
mov eax, 1
cmovne ebx, eax
jmp 0x18008195c
cmp byte [rdi + 0x2a], 0
jne 0x180081d64
mov rdx, qword [rsp + 0x50]
lea eax, [r13 + 1]
mov ebx, 0x64
mov dword [rdx + 0x90], eax
jmp 0x18008195c
mov rdx, qword [rax]
lea rcx, [rax + 0x58]
lea r8, str.foreign_key_constraint_failed
mov dword [rax + 0x94], 0x13
mov byte [rax + 0x98], 2
call fcn.1800763c0
mov esi, 1
inc r13d
mov r15d, esi
jmp 0x1800818f7
movzx eax, word [rbp - 0x1c]
mov ecx, 0x2460
test cx, ax
je 0x1800818a2
mov ecx, 0x2000
test cx, ax
je 0x180081831
mov rdx, qword [rbp - 0x28]
lea rcx, [rbp - 0x40]
call fcn.180083ce0
lea rcx, [rbp - 0x40]
call fcn.180084440
jmp 0x1800818a2
mov ecx, 0x400
test cx, ax
je 0x180081850
mov rax, qword [rbp - 0x18]
test rax, rax
je 0x180081850
mov rcx, qword [rbp - 0x38]
call rax
mov qword [rbp - 0x18], r12
jmp 0x1800818a2
movzx eax, byte [rbp - 0x1c]
test al, 0x20
je 0x180081863
mov rcx, qword [rbp - 0x28]
call fcn.1800733b0
jmp 0x1800818a2
test al, 0x40
je 0x1800818a2
mov rdx, qword [rbp - 0x28]
mov rax, qword [rdx]
mov rcx, qword [rax + 0xf0]
mov qword [rdx + 0x60], rcx
mov qword [rax + 0xf0], rdx
test byte [rbp - 0x1c], 0x20
je 0x18008188f
mov rcx, qword [rbp - 0x28]
call fcn.1800733b0
movzx eax, word [rbp - 0x1c]
and ax, bx
mov byte [rbp - 0x1a], 5
or ax, 1
mov word [rbp - 0x1c], ax
mov rdx, qword [rbp - 0x10]
mov rcx, qword [rbp - 0x40]
call fcn.18005c7d0
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x10], r12
mov qword [rbp - 0x18], r12
jmp 0x180081d64
mov r15d, 0x14
jmp 0x180081a6b
lea r9, [0x1800d1164]
mov r8d, 0xfdf7
lea rdx, str.database_corruption_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.18002a740
mov r15d, 0xb
inc r13d
mov esi, 1
mov rax, qword [rsp + 0x50]
movzx r14d, byte [rsp + 0x40]
mov dword [rax + 0x94], r15d
lea rdx, str.statement_aborts_at__d:___s___s
mov rax, qword [rax + 0x58]
mov r8d, r13d
mov qword [rsp + 0x20], rax
mov ecx, r15d
mov rax, qword [rsp + 0x50]
mov r9, qword [rax + 0xd8]
call fcn.18002a740
mov rcx, qword [rsp + 0x50]
call fcn.1800828f0
cmp r15d, 0xc0a
jne 0x180081947
mov byte [rdi + 0x2a], 1
mov ebx, esi
test r14b, r14b
je 0x18008195c
movzx edx, r14b
mov rcx, rdi
dec edx
call fcn.180072d30
mov rax, qword [rbp - 0x80]
mov rcx, qword [rsp + 0x50]
mov qword [rdi + 0x40], rax
call fcn.180083260
mov eax, ebx
mov rcx, qword [rbp + 0xb0]
xor rcx, rsp
call fcn.180099e90
lea r11, [rsp + 0x1d0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov rcx, qword [rsp + 0x50]
lea r8, str.cannot_open_savepoint___SQL_statements_in_progress
add rcx, 0x58
mov rdx, rdi
call fcn.1800763c0
mov r15d, 5
jmp 0x1800818ef
mov rbx, qword [rsp + 0x50]
mov dword [rbx + 0x90], r13d
mov byte [r14 + 0x28], r12b
mov ebx, 5
mov dword [rax + 0x94], ebx
jmp 0x18008195c
lea rcx, [rax + 0x58]
mov dword [rax + 0x94], 0x13
lea r8, str.foreign_key_constraint_failed
mov byte [rax + 0x98], 2
call fcn.1800763c0
mov rdi, r14
jmp 0x18008195c
mov rbx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x50]
mov dword [rbx + 0x90], r13d
mov ebx, 5
mov dword [rax + 0x94], ebx
jmp 0x18008195c
lea r9, [0x1800d1164]
mov r8d, 0x10157
lea rdx, str.database_corruption_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.18002a740
mov r15d, 0xb
jmp 0x180081a6b
mov r15d, r11d
jmp 0x1800818ef
mov rdi, qword [rsp + 0x68]
mov r15d, 0xd
cmp byte [rdi + 0x2a], r12b
je 0x180081a79
mov r15d, 7
jmp 0x180081a86
cmp r15d, 0xc0a
je 0x1800818f2
movzx eax, r15b
cmp eax, 0x1b
jae 0x180081aa3
lea rcx, [0x180000000]
mov r9, qword [rcx + rax*8 + 0xccab0]
test r9, r9
jne 0x180081aaa
lea r9, str.unknown_error
mov rcx, qword [rsp + 0x50]
lea r8, [0x1800cd984]
add rcx, 0x58
mov rdx, rdi
call fcn.1800763c0
jmp 0x1800818f2
mov rax, qword [rsp + 0x50]
mov r15d, 6
inc r13d
mov byte [rax + 0x98], 2
lea esi, [r15 - 5]
jmp 0x1800818fc
mov esi, 1
lea r8, str.too_many_levels_of_trigger_recursion
add rcx, 0x58
mov rdx, rdi
mov r15d, esi
call fcn.1800763c0
inc r13d
jmp 0x1800818f7
mov rcx, qword [rsp + 0x50]
lea rax, str.into
cmp r8d, 5
lea r9, str.out_of
mov esi, 1
lea r8, str.cannot_change__s_wal_mode_from_within_a_transaction
cmove r9, rax
mov rdx, rdi
add rcx, 0x58
mov r15d, esi
call fcn.1800763c0
inc r13d
jmp 0x1800818f7
mov rdi, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x50]
lea r8, str.string_or_blob_too_big
add rcx, 0x58
mov rdx, rdi
call fcn.1800763c0
mov r15d, 0x12
jmp 0x1800818f2
movzx eax, byte [rsi + r14*8 + 3]
cmp al, 5
je 0x180081b7e
movzx eax, al
mov dword [rbp - 0x70], eax
mov rax, qword [rsp + 0x50]
inc r13d
mov ecx, dword [rbp - 0x70]
mov esi, 1
mov byte [rax + 0x98], cl
jmp 0x1800818fc
mov edx, dword [rsi + r14*8 + 4]
mov dword [rbp - 0x60], edx
mov ecx, dword [rsi + r14*8 + 8]
mov dword [rbp - 0x5c], ecx
test edx, edx
je 0x180081c1a
cmp byte [rdi + 0x28], r12b
jne 0x180081c1a
mov esi, 1
mov dword [rbp - 0x58], esi
test ecx, ecx
je 0x180081beb
cmp dword [rdi + 0xb0], esi
jle 0x180081c23
mov rcx, qword [rsp + 0x50]
lea r8, str.cannot_rollback_transaction___SQL_statements_in_progress
add rcx, 0x58
mov rdx, rdi
call fcn.1800763c0
inc r13d
lea r15d, [rsi + 4]
jmp 0x1800818f7
cmp dword [rdi + 0xb4], r12d
jle 0x180081c23
mov rcx, qword [rsp + 0x50]
lea r8, str.cannot_commit_transaction___SQL_statements_in_progress
add rcx, 0x58
mov rdx, rdi
call fcn.1800763c0
inc r13d
mov r15d, 5
jmp 0x1800818f7
mov dword [rbp - 0x58], r12d
mov esi, 1
movzx eax, byte [rdi + 0x28]
cmp edx, eax
jne 0x180081c68
test edx, edx
jne 0x180081c38
lea r8, str.cannot_start_a_transaction_within_a_transaction
jmp 0x180081c4c
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea r8, str.cannot_commit___no_transaction_is_active
cmovne r8, rax
mov rcx, qword [rsp + 0x50]
mov rdx, rdi
add rcx, 0x58
call fcn.1800763c0
inc r13d
mov r15d, esi
jmp 0x1800818f7
test ecx, ecx
je 0x180081c99
mov rcx, rdi
call fcn.180073220
mov byte [rdi + 0x28], 1
mov rcx, rdi
call fcn.18005a190
mov rax, qword [rsp + 0x50]
mov ebx, 0x65
cmp dword [rax + 0x94], r12d
cmovne ebx, esi
jmp 0x18008195c
mov rbx, qword [rsp + 0x50]
mov rdx, qword [rbx]
cmp qword [rdx + 0x330], r12
jle 0x180081cd2
lea rcx, [rbx + 0x58]
mov dword [rbx + 0x94], 0x13
lea r8, str.foreign_key_constraint_failed
mov byte [rbx + 0x98], 2
call fcn.1800763c0
mov ebx, esi
jmp 0x18008195c
movzx eax, byte [rbp - 0x60]
mov rcx, rbx
mov byte [rdi + 0x28], al
call fcn.1800828f0
cmp eax, 5
jne 0x180081c78
sub sil, byte [rbp - 0x60]
mov dword [rbx + 0x90], r13d
mov ebx, eax
mov rax, qword [rsp + 0x50]
mov byte [rdi + 0x28], sil
mov dword [rax + 0x94], ebx
jmp 0x18008195c
movzx r14d, byte [rsp + 0x40]
mov rax, qword [rsp + 0x50]
lea r9, str.unknown_error
mov rcx, qword [rsp + 0x50]
lea r8, [0x1800cd984]
mov r15d, 9
mov rdx, rdi
mov dword [rax + 0x94], r15d
mov rax, qword [str.interrupted]
test rax, rax
cmovne r9, rax
add rcx, 0x58
call fcn.1800763c0
mov rax, qword [rsp + 0x50]
lea esi, [r15 - 8]
jmp 0x180081902
mov rdi, rax
jmp 0x180081d64
mov rdi, qword [rsp + 0x68]
movzx r14d, byte [rsp + 0x40]
mov rcx, qword [rsp + 0x50]
lea r8, str.out_of_memory
add rcx, 0x58
mov byte [rdi + 0x2a], 1
mov rdx, rdi
call fcn.1800763c0
mov rax, qword [rsp + 0x50]
mov r15d, 7
lea esi, [r15 - 6]
jmp 0x180081902