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

Disassembly:
mov r11, rsp
push rbp
push r12
push r13
lea rbp, [r11 - 0x318]
sub rsp, 0x400
mov rax, qword [0x14031b848]
xor rax, rsp
mov qword [rbp + 0x2d8], rax
xor r9d, r9d
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rsi
xor al, al
mov rsi, qword [rcx]
mov r13, rcx
mov qword [r11 + 0x20], rdi
mov r10d, r9d
mov qword [r11 - 0x20], r14
mov edi, r9d
mov r8d, r9d
mov r14, qword [rcx + 0x88]
movzx r12d, byte [rsi + 0x64]
mov r11, qword [rcx + 0x68]
mov byte [rsp + 0x50], r12b
mov qword [rbp - 0x80], rcx
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x48], r14
mov dword [rsp + 0x40], r9d
mov qword [rsp + 0x70], rsi
mov byte [rbp - 0x64], al
mov dword [rsp + 0x54], r9d
mov qword [rsp + 0x60], r11
cmp dword [rcx + 0xd0], edi
je 0x14022b2f2
call fcn.14022b160
mov r10d, dword [rsp + 0x40]
mov r8d, edi
mov r11, qword [rsp + 0x60]
xor r9d, r9d
cmp qword [rsi + 0x210], rdi
je 0x14022b312
mov ecx, dword [rsi + 0x220]
xor edx, edx
mov eax, dword [r13 + 0xe4]
div ecx
sub ecx, edx
mov ebx, ecx
jmp 0x14022b319
mov rbx, 0xffffffffffffffff
cmp dword [r13 + 0x34], 7
mov edx, 1
mov qword [rsp + 0x3f0], r15
movaps xmmword [rsp + 0x3e0], xmm6
mov qword [rsp + 0x68], rbx
je 0x14022bf3a
mov dword [r13 + 0x34], r9d
mov qword [r13 + 0x48], r9
mov dword [rsi + 0x298], r9d
mov eax, dword [rsi + 0x198]
test eax, eax
jne 0x1402339ed
movsxd rax, dword [r13 + 0x30]
xorps xmm6, xmm6
lea rcx, [rax + rax*2]
mov eax, dword [rbp - 0x44]
lea r15, [r14 + rcx*8]
mov dword [rbp - 0x58], eax
lea rcx, [0x140000000]
movzx ebx, byte [r15]
inc rdi
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x78], rdi
cmp ebx, 0xb5
ja case.default.0x14022b3a8
movsxd rax, ebx
mov ecx, dword [rcx + rax*4 + 0x233bcc]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
sub rcx, r14
imul r8, rax, 0x38
mov eax, 4
mov word [r8 + r11 + 0x14], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r11], rax
jmp case.0x14022b3a8.9
movsxd rax, dword [r15 + 4]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 4
je case.0x14022b3a8.89
mov rax, qword [rax + r11]
lea rcx, [rax + rax*2]
lea r15, [r14 + rcx*8]
jmp case.0x14022b3a8.89
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
mov eax, dword [r15 + 0xc]
dec eax
cdqe
mov qword [rcx + r11], rax
mov eax, 4
mov word [rcx + r11 + 0x14], ax
cmp dword [r15 + 8], 0
jne 0x14022cacc
jmp case.0x14022b3a8.89
movsxd rax, dword [r15 + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r11]
lea rcx, [rax + rax*2]
mov eax, dword [r14 + rcx*8 + 8]
dec eax
mov word [rdx + r11 + 0x14], r9w
cdqe
lea rcx, [rax + rax*2]
lea r15, [r14 + rcx*8]
mov edx, 1
jmp case.0x14022b3a8.89
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
sub rbx, r14
imul r8, rax, 0x38
mov eax, 4
mov word [r8 + r11 + 0x14], ax
movabs rax, 0x2aaaaaaaaaaaaaab
movsxd rcx, dword [r8 + r11]
imul rbx
lea rcx, [rcx + rcx*2]
sar rdx, 2
lea r15, [r14 + rcx*8]
mov rax, rdx
shr rax, 0x3f
add rax, rdx
mov edx, 1
cdqe
mov qword [r8 + r11], rax
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je case.0x14022b3a8.89
mov rcx, qword [r13 + 0x108]
mov r10, qword [rsp + 0x48]
test rcx, rcx
je 0x140233242
cmp dword [r10 + 4], 0
jne 0x140233242
mov rax, qword [rcx + 8]
mov qword [r13 + 0x108], rax
dec dword [r13 + 0x118]
mov rax, qword [r13 + 0x38]
mov qword [rsi + 0x78], rax
add qword [rsi + 0x80], rax
call fcn.140234930
mov r15, qword [rsp + 0x48]
mov r14, qword [r13 + 0x88]
mov qword [rsp + 0x58], r14
cmp dword [r15 + 8], 4
jne 0x14022b546
cdqe
lea rcx, [rax + rax*2]
mov eax, dword [r14 + rcx*8 + 8]
dec eax
mov r11, qword [r13 + 0x68]
cdqe
mov qword [rsp + 0x60], r11
lea rcx, [rax + rax*2]
lea r10, [r14 + rcx*8]
mov qword [rsp + 0x48], r10
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x54]
xor r9d, r9d
lea edx, [r9 + 1]
jmp case.0x14022b3a8.89
movsxd rax, dword [r15 + 8]
mov ebx, 0x9000
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], bx
je 0x14022b5a1
call fcn.1401db030
xor r9d, r9d
mov rcx, rax
lea edx, [r9 + 1]
jmp 0x14022b5aa
mov eax, 4
mov word [rcx + 0x14], ax
movsxd rax, dword [r15 + 4]
mov qword [rcx], rax
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
movsxd rax, dword [r15 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x14022b5ec
mov rcx, rdx
call fcn.1401db030
mov rdx, rax
xor r9d, r9d
jmp 0x14022b5f5
mov eax, 4
mov word [rdx + 0x14], ax
mov rax, qword [r15 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x40]
mov edx, 1
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
movsxd rax, dword [r15 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x14022b63d
mov rcx, rdx
call fcn.1401db030
mov rdx, rax
xor r9d, r9d
mov eax, 8
jmp 0x14022b5f1
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x14022b675
mov rcx, rbx
call fcn.1401db030
mov r10, qword [rsp + 0x48]
mov rbx, rax
xor r9d, r9d
jmp 0x14022b67e
mov eax, 4
mov word [rbx + 0x14], ax
mov rdx, qword [r10 + 0x10]
test rdx, rdx
jne 0x14022b68c
mov eax, r9d
jmp 0x14022b6a1
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], 0
jne 0x14022b693
and eax, 0x3fffffff
mov dword [r10 + 4], eax
cmp r12b, 1
je 0x14022b742
mov qword [rsp + 0x20], r9
mov r8, 0xffffffffffffffff
mov r9b, 1
mov rcx, rbx
call fcn.140236670
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1402336bc
test byte [rbx + 0x14], 2
movzx r12d, byte [rsp + 0x50]
jne 0x14022b6e4
mov byte [rbx + 0x16], r12b
jmp 0x14022b6fe
cmp byte [rbx + 0x16], r12b
je 0x14022b6fe
movzx edx, r12b
mov rcx, rbx
call fcn.140236a90
test eax, eax
jne 0x14022bf35
mov r10, qword [rsp + 0x48]
xor eax, eax
mov dword [rbx + 0x20], eax
mov eax, 0x2000
or word [rbx + 0x14], ax
cmp byte [r10 + 1], 0xfa
jne 0x14022b72e
mov rdx, qword [r10 + 0x10]
test rdx, rdx
je 0x14022b72e
mov rcx, rsi
call fcn.1401f9570
mov r10, qword [rsp + 0x48]
mov byte [r10 + 1], 0xfa
mov rax, qword [rbx + 8]
mov qword [r10 + 0x10], rax
mov eax, dword [rbx + 0x10]
mov dword [r10 + 4], eax
cmp eax, dword [rsi + 0x88]
jg 0x1402336bc
mov byte [r10], 0x49
jmp 0x14022b759
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x14022b780
mov rcx, rdx
call fcn.1401db030
mov r10, qword [rsp + 0x48]
mov rdx, rax
mov r11, qword [rsp + 0x60]
mov eax, 0x2202
mov word [rdx + 0x14], ax
xor r9d, r9d
mov rax, qword [r10 + 0x10]
mov qword [rdx + 8], rax
mov eax, dword [r10 + 4]
mov dword [rdx + 0x10], eax
mov byte [rdx + 0x16], r12b
movsxd rax, dword [r10 + 0xc]
test eax, eax
jle 0x1402300fb
imul rcx, rax, 0x38
movzx eax, word [r10 + 2]
cmp qword [rcx + r11], rax
jne 0x1402300fb
mov r15, qword [rsp + 0x48]
mov eax, 0x2210
mov word [rdx + 0x14], ax
jmp 0x14022b604
mov r10, qword [rsp + 0x48]
mov r8d, 0x9000
movsxd rax, dword [r10 + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], r8w
je 0x14022b810
call fcn.1401db030
mov r10, qword [rsp + 0x48]
xor r9d, r9d
mov rcx, rax
mov r8d, 0x9000
lea edx, [r9 + 1]
jmp 0x14022b819
mov eax, 4
mov word [rcx + 0x14], ax
cmp dword [r10 + 4], 0
lea rbx, [rcx + 0x14]
mov edi, dword [r10 + 0xc]
mov esi, edx
mov eax, dword [r10 + 8]
mov r10d, 0x101
cmovne si, r10w
sub edi, eax
mov word [rbx], si
mov dword [rcx + 0x10], r9d
test edi, edi
jle 0x1402300dd
nop dword [rax + rax]
test word [rbx + 0x38], r8w
lea rbx, [rbx + 0x38]
je 0x14022b86d
lea rcx, [rbx - 0x14]
call fcn.14024c0f0
xor r9d, r9d
mov r8d, 0x9000
dec edi
mov word [rbx], si
mov dword [rbx - 4], r9d
test edi, edi
jg 0x14022b850
mov rsi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x48]
jmp 0x14022b5ff
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
mov eax, 0xffc1
add rcx, r11
and word [rcx + 0x14], ax
or word [rcx + 0x14], 1
jmp case.0x14022b3a8.89
movsxd rax, dword [r15 + 8]
mov ecx, 0x9000
imul rbx, rax, 0x38
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], cx
je 0x14022b8d3
mov rcx, rbx
call fcn.1401db030
mov rbx, rax
xor r9d, r9d
mov ecx, 0x9000
jmp 0x14022b8dc
mov eax, 4
mov word [rbx + 0x14], ax
mov rax, qword [rsp + 0x48]
mov rdx, qword [rax + 0x10]
movsxd rdi, dword [rax + 4]
test rdx, rdx
jne 0x14022b95f
test word [rbx + 0x14], cx
jne 0x14022b8f9
cmp dword [rbx + 0x20], edx
je 0x14022b901
mov rcx, rbx
call fcn.14024c0a0
mov eax, 0x410
mov rcx, rbx
mov word [rbx + 0x14], ax
xor eax, eax
mov dword [rbx + 0x10], eax
mov edx, eax
test edi, edi
cmovns edx, edi
mov dword [rbx], edx
test edx, edx
mov byte [rbx + 0x16], 1
mov qword [rbx + 8], rax
mov eax, 1
cmovle edx, eax
mov r8d, eax
call fcn.140236120
test eax, eax
jne 0x14022bf30
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
add rcx, qword [rbx + 8]
movsxd r8, dword [rbx]
call fcn.140264380
mov eax, dword [rbx]
add dword [rbx + 0x10], eax
mov eax, 0xf9ff
and word [rbx + 0x14], ax
jmp 0x14022b972
mov qword [rsp + 0x20], r9
mov r8, rdi
xor r9d, r9d
mov rcx, rbx
call fcn.140236670
mov byte [rbx + 0x16], r12b
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
mov rsi, qword [r13 + 0x80]
movsxd rax, dword [r10 + 4]
imul rdi, rax, 0x38
movzx eax, word [rdi + rsi - 0x24]
test al, 0x12
je 0x14022b9c7
bt ax, 0xa
mov ecx, dword [rdi + rsi - 0x28]
jae 0x14022b9b6
add ecx, dword [rdi + rsi - 0x38]
mov rax, qword [rdi + rsi - 0x20]
cmp ecx, dword [rax + 0x88]
jg 0x1402336b2
movsxd rax, dword [r10 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x14022b9f1
mov rcx, rbx
call fcn.14024c0f0
mov r11, qword [rsp + 0x60]
xor r9d, r9d
lea edx, [r9 + 1]
movups xmm0, xmmword [rdi + rsi - 0x38]
mov r10d, dword [rsp + 0x40]
mov ecx, 0xafff
mov r15, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x54]
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + rsi - 0x28]
mov rsi, qword [rsp + 0x70]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 0x14]
and ax, cx
mov ecx, 0x2040
or ax, cx
mov word [rbx + 0x14], ax
jmp case.0x14022b3a8.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
mov eax, 0x9000
test word [rbx + 0x14], ax
jne 0x14022ba64
cmp dword [rbx + 0x20], 0
je 0x14022ba73
mov rcx, rbx
call fcn.14024c0a0
xor r9d, r9d
lea edx, [r9 + 1]
movups xmm0, xmmword [rdi]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movsd xmm1, qword [rdi + 0x30]
movsd qword [rbx + 0x30], xmm1
mov word [rdi + 0x14], dx
mov dword [rdi + 0x20], r9d
movzx eax, word [rbx + 0x14]
bt ax, 0xe
jae 0x14022bb33
test al, 0x12
je 0x14022bb23
bt ax, 0xa
jae 0x14022bb03
mov edx, dword [rbx]
add edx, dword [rbx + 0x10]
test edx, edx
jg 0x14022bacb
test al, 0x10
je 0x14022bb03
mov eax, 1
mov edx, eax
jmp 0x14022bad0
mov eax, 1
mov r8d, eax
mov rcx, rbx
call fcn.140236120
test eax, eax
jne 0x14022bf2b
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
add rcx, qword [rbx + 8]
movsxd r8, dword [rbx]
call fcn.140264380
mov eax, dword [rbx]
add dword [rbx + 0x10], eax
mov eax, 0xf9ff
and word [rbx + 0x14], ax
cmp dword [rbx + 0x20], 0
je 0x14022bb13
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x14022bb23
mov rcx, rbx
call fcn.14024c040
test eax, eax
jne 0x14022bf2b
mov eax, 0xbfff
and word [rbx + 0x14], ax
xor r9d, r9d
lea edx, [r9 + 1]
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x14022ba53
mov r10d, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x14022bb9e
mov r8d, 0x4000
mov rdx, rdi
mov rcx, rbx
call fcn.14024aca0
jmp 0x14022bbcb
movups xmm0, xmmword [rdi]
mov eax, 0x2000
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + 0x10]
movsd qword [rbx + 0x10], xmm1
test word [rdi + 0x14], ax
jne 0x14022bbcb
mov eax, 0xcfff
and word [rbx + 0x14], ax
mov eax, 0x4000
or word [rbx + 0x14], ax
movzx eax, word [rbx + 0x14]
bt ax, 0xe
jae 0x14022bc60
test al, 0x12
je 0x14022bc53
bt ax, 0xa
jae 0x14022bc33
mov edx, dword [rbx]
add edx, dword [rbx + 0x10]
test edx, edx
jg 0x14022bbfb
test al, 0x10
je 0x14022bc33
mov eax, 1
mov edx, eax
jmp 0x14022bc00
mov eax, 1
mov r8d, eax
mov rcx, rbx
call fcn.140236120
test eax, eax
jne 0x14022bf2b
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
add rcx, qword [rbx + 8]
movsxd r8, dword [rbx]
call fcn.140264380
mov eax, dword [rbx]
add dword [rbx + 0x10], eax
mov eax, 0xf9ff
and word [rbx + 0x14], ax
cmp dword [rbx + 0x20], 0
je 0x14022bc43
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x14022bc53
mov rcx, rbx
call fcn.14024c040
test eax, eax
jne 0x14022bf2b
mov eax, 0xbfff
and word [rbx + 0x14], ax
movzx eax, word [rbx + 0x14]
bt ax, 0xb
jae 0x14022bc7f
mov r10, qword [rsp + 0x48]
test byte [r10 + 2], 2
je 0x14022bc7f
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
dec esi
test eax, eax
je 0x14022bdd3
add rbx, 0x38
add rdi, 0x38
jmp 0x14022bb80
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r11
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14022bcd3
mov r8d, 0x4000
call fcn.14024aca0
mov r11, qword [rsp + 0x60]
jmp 0x14022b55e
movups xmm0, xmmword [rdx]
mov r15, qword [rsp + 0x48]
mov eax, 0x2000
movups xmmword [rcx], xmm0
movsd xmm1, qword [rdx + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rdx + 0x14], ax
mov edx, 1
jne case.0x14022b3a8.89
mov eax, 0xcfff
and word [rcx + 0x14], ax
mov eax, 0x4000
or word [rcx + 0x14], ax
jmp case.0x14022b3a8.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, r11
mov rax, qword [rcx + r11]
mov ecx, 0x9000
test word [r8 + 0x14], cx
je 0x14022bd50
mov rcx, r8
mov rdx, rax
call fcn.14024d340
mov r11, qword [rsp + 0x60]
jmp 0x14022b55e
mov r15, qword [rsp + 0x48]
mov qword [r8], rax
mov eax, 4
mov word [r8 + 0x14], ax
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
cmp qword [r13 + 0x50], 0
jg 0x14023334f
mov r10d, r9d
mov dword [rsp + 0x40], r9d
jmp case.0x14022b3a8.89
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rsi, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov rax, qword [rsp + 0x48]
add rsi, r11
add rbx, r11
movsxd rax, dword [rax + 0xc]
movzx r15d, word [rsi + 0x14]
imul r13, rax, 0x38
movzx eax, r15b
or al, byte [rbx + 0x14]
add r13, r11
test al, 1
je 0x14022bdf6
mov eax, 0x9000
test word [r13 + 0x14], ax
je 0x14022bde2
mov rcx, r13
call fcn.14024c0f0
mov rsi, qword [rsp + 0x70]
mov r11, qword [rsp + 0x60]
jmp 0x14022b55e
mov rsi, qword [rsp + 0x70]
mov word [r13 + 0x14], dx
mov r15, qword [rsp + 0x48]
jmp case.0x14022b3a8.89
test r15b, 0x12
jne 0x14022be88
cmp dword [rsi + 0x20], 0x20
jge 0x14022be2b
xor r8d, r8d
mov rcx, rsi
lea edx, [r8 + 0x20]
call fcn.140236120
test eax, eax
je 0x14022be3d
mov byte [rsi + 0x16], 0
mov rsi, qword [rsp + 0x70]
mov r13, qword [rbp - 0x80]
jmp 0x14022bf35
mov rax, qword [rsi + 0x28]
and r15w, 0x2d
mov qword [rsi + 8], rax
mov word [rsi + 0x14], r15w
mov rdx, qword [rsi + 8]
mov r8, rsi
mov ecx, 0x20
call fcn.14024c130
mov byte [rsi + 0x16], 1
mov r14d, 0x202
or word [rsi + 0x14], r14w
movzx eax, word [rsi + 0x14]
cmp r12b, 1
je 0x14022be77
movzx edx, r12b
mov rcx, rsi
call fcn.140236a90
movzx eax, word [rsi + 0x14]
mov r15d, 0xfffd
mov edx, 0x400
and r15w, ax
jmp 0x14022befc
mov edx, 0x400
test dx, r15w
je 0x14022bef6
mov edx, dword [rsi]
add edx, dword [rsi + 0x10]
test edx, edx
jg 0x14022beab
test r15b, 0x10
je 0x14022bee8
mov eax, 1
mov edx, eax
jmp 0x14022beb0
mov eax, 1
mov r8d, eax
mov rcx, rsi
call fcn.140236120
test eax, eax
jne 0x14022be1d
movsxd rcx, dword [rsi + 0x10]
xor edx, edx
add rcx, qword [rsi + 8]
movsxd r8, dword [rsi]
call fcn.140264380
mov eax, dword [rsi]
add dword [rsi + 0x10], eax
mov eax, 0xf9ff
and word [rsi + 0x14], ax
movzx r15d, word [rsi + 0x14]
mov eax, 0xfffd
mov edx, 0x400
and r15w, ax
mov r14d, 0x202
movzx edi, word [rbx + 0x14]
test dil, 0x12
jne 0x14022bf9e
cmp dword [rbx + 0x20], 0x20
jge 0x14022bf5c
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 0x20]
call fcn.140236120
test eax, eax
je 0x14022bf6c
mov byte [rbx + 0x16], 0
mov r13, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x68]
mov rcx, rsi
call fcn.140210a60
lea rdx, str.out_of_memory
mov rcx, r13
call fcn.14022b200
mov r10d, 7
jmp 0x140230eb1
mov rax, qword [rbx + 0x28]
and di, 0x2d
mov qword [rbx + 8], rax
mov word [rbx + 0x14], di
mov rdx, qword [rbx + 8]
mov r8, rbx
mov ecx, 0x20
call fcn.14024c130
mov byte [rbx + 0x16], 1
or word [rbx + 0x14], r14w
movzx edi, word [rbx + 0x14]
cmp r12b, 1
je 0x14022bff7
movzx edx, r12b
mov rcx, rbx
call fcn.140236a90
jmp 0x14022bff3
test dx, di
je 0x14022bfff
mov edx, dword [rbx]
add edx, dword [rbx + 0x10]
test edx, edx
jg 0x14022bfbb
test dil, 0x10
je 0x14022bff7
mov eax, 1
mov edx, eax
jmp 0x14022bfc0
mov eax, 1
mov r8d, eax
mov rcx, rbx
call fcn.140236120
test eax, eax
jne 0x14022bf27
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
add rcx, qword [rbx + 8]
movsxd r8, dword [rbx]
call fcn.140264380
mov eax, dword [rbx]
add dword [rbx + 0x10], eax
mov eax, 0xf9ff
and word [rbx + 0x14], ax
movzx edi, word [rbx + 0x14]
mov eax, 0xfffd
and di, ax
mov r9, qword [rsp + 0x70]
mov edx, dword [rbx + 0x10]
add edx, dword [rsi + 0x10]
movsxd r14, edx
movsxd rax, dword [r9 + 0x88]
cmp r14, rax
jg 0x1402336a9
xor eax, eax
mov rcx, r13
mov r8d, eax
cmp r13, rbx
sete r8b
add edx, 2
call fcn.140236120
test eax, eax
jne 0x14022bf27
mov eax, 0xf242
and word [r13 + 0x14], ax
or word [r13 + 0x14], 2
cmp r13, rbx
je 0x14022c066
movsxd r8, dword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [r13 + 8]
call fcn.140263720
mov word [rbx + 0x14], di
movsxd rcx, dword [rbx + 0x10]
add rcx, qword [r13 + 8]
movsxd r8, dword [rsi + 0x10]
mov rdx, qword [rsi + 8]
call fcn.140263720
mov word [rsi + 0x14], r15w
cmp r12b, 1
jbe 0x14022c08a
and r14, 0xfffffffffffffffe
mov rax, qword [r13 + 8]
mov byte [r14 + rax], 0
mov rax, qword [r13 + 8]
mov byte [rax + r14 + 1], 0
mov eax, 0x200
or word [r13 + 0x14], ax
mov dword [r13 + 0x10], r14d
mov byte [r13 + 0x16], r12b
mov rsi, qword [rsp + 0x70]
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov r14, qword [rsp + 0x58]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 4]
imul rdi, rax, 0x38
movsxd rax, dword [r10 + 8]
imul rsi, rax, 0x38
movsxd rax, dword [r10 + 0xc]
add rdi, r11
imul r14, rax, 0x38
movzx ebx, word [rdi + 0x14]
add rsi, r11
add r14, r11
movzx edx, word [rsi + 0x14]
movzx eax, dl
and al, bl
test al, 4
jne 0x14022c147
movzx eax, dl
or al, bl
test al, 1
jne 0x14022c473
and bx, 0x2d
jne 0x14022c126
mov rcx, rdi
call fcn.1401be230
movzx edx, word [rsi + 0x14]
movzx ebx, ax
and dx, 0x2d
jne 0x14022c137
mov rcx, rsi
call fcn.1401be230
movzx edx, ax
and dl, bl
test dl, 4
je 0x14022c303
mov r10, qword [rsp + 0x48]
movzx ecx, byte [r10]
mov r9, qword [rdi]
mov r8, qword [rsi]
sub ecx, 0x6a
je 0x14022c2ca
sub ecx, 1
je 0x14022c25d
sub ecx, 1
je 0x14022c1c5
cmp ecx, 1
je 0x14022c193
test r9, r9
je 0x14022c470
cmp r9, 0xffffffffffffffff
mov eax, 1
cmove r9, rax
mov rax, r8
cqo
idiv r9
mov r8, rdx
jmp 0x14022c29d
test r9, r9
je 0x14022c470
cmp r9, 0xffffffffffffffff
jne 0x14022c1b5
movabs rcx, 0x8000000000000000
cmp r8, rcx
je 0x14022c303
mov rax, r8
cqo
idiv r9
mov r8, rax
jmp 0x14022c29d
test r9, r9
jle 0x14022c1fb
movabs rax, 0x7fffffffffffffff
cqo
idiv r9
cmp r8, rax
jg 0x14022c303
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jge 0x14022c257
jmp 0x14022c303
jns 0x14022c257
test r8, r8
jle 0x14022c21b
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jge 0x14022c257
jmp 0x14022c303
jns 0x14022c257
movabs rcx, 0x8000000000000000
cmp r9, rcx
je 0x14022c303
cmp r8, rcx
je 0x14022c303
movabs rax, 0x8000000000000001
mov rcx, r8
cqo
neg rcx
idiv r9
cmp rcx, rax
jg 0x14022c303
imul r8, r9
jmp 0x14022c29d
movabs rcx, 0x8000000000000000
cmp r9, rcx
jne 0x14022c27a
test r8, r8
jns 0x14022c303
sub r8, rcx
jmp 0x14022c29d
neg r9
jns 0x14022c2cf
test r8, r8
jns 0x14022c29a
movabs rcx, 0x8000000000000001
lea rax, [r9 + 1]
sub rcx, r8
cmp rcx, rax
jg 0x14022c303
add r8, r9
mov qword [r14], r8
mov ecx, 0xf244
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 4
mov rsi, qword [rsp + 0x70]
mov r11, qword [rsp + 0x60]
mov word [r14 + 0x14], ax
mov r14, qword [rsp + 0x58]
jmp 0x14022b55e
test r9, r9
js 0x14022c2e8
test r8, r8
jle 0x14022c29a
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x14022c29a
jmp 0x14022c303
test r8, r8
jns 0x14022c29a
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x14022c29a
movzx eax, word [rdi + 0x14]
test al, 8
je 0x14022c311
movsd xmm2, qword [rdi]
jmp 0x14022c333
test al, 0x24
je 0x14022c31f
xorps xmm2, xmm2
cvtsi2sd xmm2, qword [rdi]
jmp 0x14022c333
test al, 0x12
je 0x14022c330
mov rcx, rdi
call fcn.1401d7440
movaps xmm2, xmm0
jmp 0x14022c333
movaps xmm2, xmm6
movzx eax, word [rsi + 0x14]
test al, 8
je 0x14022c341
movsd xmm0, qword [rsi]
jmp 0x14022c360
test al, 0x24
je 0x14022c34f
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rsi]
jmp 0x14022c360
test al, 0x12
je 0x14022c35d
mov rcx, rsi
call fcn.1401d7440
jmp 0x14022c360
movaps xmm0, xmm6
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax]
sub ecx, 0x6a
je 0x14022c43c
sub ecx, 1
je 0x14022c436
sub ecx, 1
je 0x14022c430
cmp ecx, 1
je 0x14022c422
movzx eax, word [rdi + 0x14]
test al, 0x24
je 0x14022c39b
mov rbx, qword [rdi]
xor ecx, ecx
jmp 0x14022c3cd
test al, 8
je 0x14022c3af
movsd xmm0, qword [rdi]
call fcn.1401c1bd0
mov rbx, rax
xor ecx, ecx
jmp 0x14022c3cd
test al, 0x12
je 0x14022c3c9
cmp qword [rdi + 8], 0
je 0x14022c3c9
mov rcx, rdi
call fcn.1401d7410
mov rbx, rax
xor ecx, ecx
jmp 0x14022c3cd
xor ecx, ecx
mov ebx, ecx
movzx eax, word [rsi + 0x14]
test al, 0x24
je 0x14022c3da
mov rax, qword [rsi]
jmp 0x14022c401
test al, 8
je 0x14022c3e9
movsd xmm0, qword [rsi]
call fcn.1401c1bd0
jmp 0x14022c401
test al, 0x12
je 0x14022c3fe
cmp qword [rsi + 8], 0
je 0x14022c3fe
mov rcx, rsi
call fcn.1401d7410
jmp 0x14022c401
mov rax, rcx
test rbx, rbx
je 0x14022c470
cmp rbx, 0xffffffffffffffff
mov edx, 1
xorps xmm0, xmm0
cmove rbx, rdx
cqo
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x14022c440
ucomisd xmm2, xmm6
jp 0x14022c42a
je 0x14022c470
divsd xmm0, xmm2
jmp 0x14022c440
mulsd xmm0, xmm2
jmp 0x14022c440
subsd xmm0, xmm2
jmp 0x14022c440
addsd xmm0, xmm2
movabs rcx, 0xfffffffffffff
movsd qword [rbp - 0x60], xmm0
mov rax, qword [rbp - 0x60]
movabs rdx, 0x7ff0000000000000
test rcx, rax
setne cl
and rax, rdx
cmp rax, rdx
sete al
test al, cl
je 0x14022c4be
xor r9d, r9d
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x14022c49b
mov rcx, r14
call fcn.14024c0f0
mov r11, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x70]
mov r14, qword [rsp + 0x58]
jmp 0x14022b55e
mov r10d, dword [rsp + 0x40]
mov edx, 1
mov rsi, qword [rsp + 0x70]
mov word [r14 + 0x14], dx
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022d456
movsd qword [r14], xmm0
mov ecx, 0xf248
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 8
jmp 0x14022c2b1
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
test eax, eax
je 0x14022bdec
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14022c50d
xor edx, edx
call fcn.14024d340
mov r11, qword [rsp + 0x60]
jmp 0x14022b55e
mov r15, qword [rsp + 0x48]
mov eax, 4
mov qword [rcx], r9
mov word [rcx + 0x14], ax
jmp case.0x14022b3a8.89
mov rsi, qword [rsp + 0x48]
movsxd rax, dword [rsi + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rsi + 8]
imul rcx, rax, 0x38
movsxd rax, dword [rsi + 0xc]
add rdi, r11
imul rsi, rax, 0x38
movzx edx, word [rdi + 0x14]
add rcx, r11
movzx eax, dl
add rsi, r11
movzx r8d, word [rcx + 0x14]
or al, r8b
test al, 1
je 0x14022c5a5
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x14022c588
mov rcx, rsi
call fcn.14024c0f0
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x48]
jmp 0x14022b568
mov r15, qword [rsp + 0x48]
mov edx, 1
mov r8d, dword [rsp + 0x54]
mov word [rsi + 0x14], dx
mov rsi, qword [rsp + 0x70]
jmp case.0x14022b3a8.89
mov eax, r8d
test r8b, 0x24
je 0x14022c5b3
mov rbx, qword [rcx]
jmp 0x14022c5e4
test al, 8
je 0x14022c5c5
movsd xmm0, qword [rcx]
call fcn.1401c1bd0
mov rbx, rax
jmp 0x14022c5e4
test al, 0x12
je 0x14022c5e1
cmp qword [rcx + 8], 0
je 0x14022c5e1
call fcn.1401d7410
movzx edx, word [rdi + 0x14]
mov rbx, rax
xor r9d, r9d
jmp 0x14022c5e4
mov rbx, r9
movzx eax, dx
test al, 0x24
je 0x14022c5f0
mov rcx, qword [rdi]
jmp 0x14022c61d
test al, 8
je 0x14022c602
movsd xmm0, qword [rdi]
call fcn.1401c1bd0
mov rcx, rax
jmp 0x14022c61d
test al, 0x12
je 0x14022c61a
cmp qword [rdi + 8], 0
je 0x14022c61a
mov rcx, rdi
call fcn.1401d7410
mov rcx, rax
jmp 0x14022c61d
mov rcx, r9
mov r15, qword [rsp + 0x48]
movzx edx, byte [r15]
cmp dl, 0x66
jne 0x14022c630
and rbx, rcx
jmp 0x14022c6a5
cmp dl, 0x67
jne 0x14022c63a
or rbx, rcx
jmp 0x14022c6a5
test rcx, rcx
je 0x14022c6a5
jns 0x14022c654
mov eax, 0xd1
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x14022c65a
neg rcx
cmp rcx, 0x40
jl 0x14022c673
test rbx, rbx
jns 0x14022c66d
cmp dl, 0x68
je 0x14022c66d
mov rbx, 0xffffffffffffffff
jmp 0x14022c6a5
xor eax, eax
mov ebx, eax
jmp 0x14022c6a5
cmp dl, 0x68
jne 0x14022c680
shl rbx, cl
mov r8, rbx
jmp 0x14022c6a2
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x14022c6a2
mov eax, 0x40
mov rdx, 0xffffffffffffffff
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
mov r10d, dword [rsp + 0x40]
mov eax, 0xf244
mov r11, qword [rsp + 0x60]
mov qword [rsi], rbx
and word [rsi + 0x14], ax
or word [rsi + 0x14], 4
mov rsi, qword [rsp + 0x70]
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
mov rcx, rbx
call fcn.1402362b0
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 8]
add qword [rbx], rax
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 4]
imul rbx, rax, 0x38
add rbx, r11
movzx ecx, word [rbx + 0x14]
test cl, 4
jne 0x14022c769
test cl, 0x28
jne 0x14022c737
test cl, 2
je 0x14022c744
mov rcx, rbx
call fcn.1401b3e90
mov r10, qword [rsp + 0x48]
xor r9d, r9d
mov r11, qword [rsp + 0x60]
jmp 0x14022c73f
mov rcx, rbx
call fcn.1402353a0
mov edx, 1
movzx eax, word [rbx + 0x14]
movzx ecx, ax
test al, 4
jne 0x14022c769
cmp dword [r10 + 8], 0
je 0x14023338e
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
jmp 0x14022cff8
mov eax, 0xf244
and cx, ax
or cx, 4
mov word [rbx + 0x14], cx
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, r11
movzx eax, word [rcx + 0x14]
test al, 0x24
je 0x14022bdec
test al, 8
je 0x14022c7b3
movsd xmm0, qword [rcx]
jmp 0x14022c7bb
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rcx]
mov r15, qword [rsp + 0x48]
mov ebx, 0xf248
and ax, bx
movsd qword [rcx], xmm0
or ax, 8
mov word [rcx + 0x14], ax
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
movzx eax, word [rbx + 0x14]
bt ax, 0xa
jae 0x14022c842
mov edx, dword [rbx]
add edx, dword [rbx + 0x10]
test edx, edx
jg 0x14022c80a
test al, 0x10
je 0x14022c842
mov eax, 1
mov edx, eax
jmp 0x14022c80f
mov eax, 1
mov r8d, eax
mov rcx, rbx
call fcn.140236120
test eax, eax
jne 0x14023339e
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
add rcx, qword [rbx + 8]
movsxd r8, dword [rbx]
call fcn.140264380
mov eax, dword [rbx]
add dword [rbx + 0x10], eax
mov eax, 0xf9ff
and word [rbx + 0x14], ax
mov rax, qword [rsp + 0x48]
movzx r8d, r12b
mov rcx, rbx
movzx edx, byte [rax + 8]
call fcn.140235c80
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2f3
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul r14, rax, 0x38
add r15, r11
add r14, r11
movzx esi, word [r15 + 0x14]
movzx edi, word [r14 + 0x14]
movzx edx, di
and dx, si
test dl, 4
je 0x14022c935
mov rax, qword [r14]
cmp rax, qword [r15]
mov r15, rcx
jle 0x14022c8e0
mov rax, qword [0x140318488]
cmp byte [rbx + rax], 0
mov r14, qword [rsp + 0x58]
mov edx, 1
jne 0x14022cff8
mov rsi, qword [rsp + 0x70]
mov r8d, edx
mov dword [rsp + 0x54], edx
jmp case.0x14022b3a8.89
mov r14, qword [rsp + 0x58]
mov edx, 1
jge 0x14022c912
mov rax, qword [0x140318478]
cmp byte [rbx + rax], 0
jne 0x14022cff8
mov rsi, qword [rsp + 0x70]
mov r8d, 0xffffffff
mov dword [rsp + 0x54], r8d
jmp case.0x14022b3a8.89
mov rax, qword [0x140318480]
cmp byte [rbx + rax], 0
jne 0x14022cff8
mov rsi, qword [rsp + 0x70]
mov r8d, r9d
mov dword [rsp + 0x54], r9d
jmp case.0x14022b3a8.89
movzx ecx, di
or cx, si
test cl, 1
je 0x14022c99f
mov rax, qword [rsp + 0x48]
movzx eax, word [rax + 2]
test al, al
jns 0x14022c993
test dl, 1
je 0x14022c978
mov eax, 0x100
test ax, di
jne 0x14022c978
mov rax, qword [rsp + 0x48]
mov r8d, r9d
mov rdx, qword [0x140318480]
mov dword [rsp + 0x54], r9d
movzx ecx, byte [rax]
jmp 0x14022caa5
movzx eax, di
not ax
and eax, 1
lea r8d, [rax*2 - 1]
mov dword [rsp + 0x54], r8d
jmp 0x14022ca7d
mov r15, qword [rsp + 0x48]
test al, 0x10
jmp 0x14022c8bf
mov rbx, qword [rsp + 0x48]
movzx eax, byte [rbx + 2]
and al, 0x47
cmp al, 0x43
jb 0x14022c9ea
test cl, 2
je 0x14022ca5f
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x14022c9d0
xor edx, edx
mov rcx, r15
call fcn.1401b3e90
movzx edi, word [r14 + 0x14]
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x14022ca5f
xor edx, edx
mov rcx, r14
call fcn.1401b3e90
jmp 0x14022ca5f
cmp al, 0x42
jne 0x14022ca5f
test cl, 2
je 0x14022ca5f
test sil, 2
jne 0x14022ca30
test sil, 0x2c
je 0x14022ca30
mov r8b, 1
movzx edx, r12b
mov rcx, r15
call fcn.1402369e0
xor si, word [r15 + 0x14]
mov r13d, 0xdbf
and si, r13w
xor si, word [r15 + 0x14]
cmp r15, r14
jne 0x14022ca36
movzx edi, si
or di, 2
jmp 0x14022ca36
mov r13d, 0xdbf
test dil, 2
jne 0x14022ca5f
test dil, 0x2c
je 0x14022ca5f
mov r8b, 1
movzx edx, r12b
mov rcx, r14
call fcn.1402369e0
xor di, word [r14 + 0x14]
and di, r13w
xor di, word [r14 + 0x14]
mov r8, qword [rbx + 0x10]
mov rdx, r15
mov rcx, r14
call fcn.140210460
mov r11, qword [rsp + 0x60]
mov r8d, eax
mov dword [rsp + 0x54], eax
xor r9d, r9d
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax]
test r8d, r8d
jns 0x14022ca93
mov rdx, qword [0x140318478]
jmp 0x14022caa5
jne 0x14022ca9e
mov rdx, qword [0x140318480]
jmp 0x14022caa5
mov rdx, qword [0x140318488]
add rdx, rcx
movzx eax, byte [rdx]
mov edx, 1
mov word [r14 + 0x14], di
mov r14, qword [rsp + 0x58]
mov word [r15 + 0x14], si
mov r15, qword [rsp + 0x48]
test al, al
je 0x1402331ea
mov r10d, dword [rsp + 0x40]
jmp 0x14022cff8
test r8d, r8d
je 0x14022cff8
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
test byte [rax + 2], 1
jne 0x14022caf4
mov r13, r9
jmp 0x14022cafc
mov r13, qword [rax - 8]
add r13, 4
mov rdx, qword [rax + 0x10]
xor ecx, ecx
mov r8d, dword [rax + 4]
mov r15d, ecx
mov r9d, dword [rax + 8]
mov ebx, ecx
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x60], rdx
mov dword [rbp - 0x70], r8d
mov dword [rbp - 0x78], r9d
mov qword [rbp - 0x50], rax
test rax, rax
jle 0x14022b563
lea r12, [rdx + 0x20]
test r13, r13
je 0x14022cb3c
mov ecx, dword [r13 + rbx*4]
jmp 0x14022cb3f
mov ecx, r15d
mov rax, qword [rdx + 0x18]
lea r14d, [rcx + r9]
lea esi, [rcx + r8]
mov r8, qword [r12]
imul rdx, r14, 0x38
imul rcx, rsi, 0x38
movzx edi, byte [rax + rbx]
add rdx, r11
and edi, 1
add rcx, r11
call fcn.140210460
mov r11, qword [rsp + 0x60]
mov r8d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x14022cbbd
mov rdx, qword [rbp - 0x60]
inc r15d
mov r8d, dword [rbp - 0x70]
inc rbx
mov r9d, dword [rbp - 0x78]
add r12, 8
cmp rbx, qword [rbp - 0x50]
jl 0x14022cb30
mov r10d, dword [rsp + 0x40]
lea edx, [rax + 1]
mov rsi, qword [rsp + 0x70]
mov r8d, eax
mov r15, qword [rsp + 0x48]
xor r9d, r9d
movzx r12d, byte [rsp + 0x50]
mov r14, qword [rsp + 0x58]
jmp case.0x14022b3a8.89
mov rax, qword [rbp - 0x60]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x14022cbeb
imul rax, rsi, 0x38
test byte [rax + r11 + 0x14], 1
jne 0x14022cbe3
imul rax, r14, 0x38
test byte [rax + r11 + 0x14], 1
je 0x14022cbeb
neg r8d
mov dword [rsp + 0x54], r8d
mov r10d, dword [rsp + 0x40]
mov edx, 1
mov rsi, qword [rsp + 0x70]
lea rcx, [0x140000000]
mov r15, qword [rsp + 0x48]
movzx r12d, byte [rsp + 0x50]
mov r14, qword [rsp + 0x58]
test edi, edi
je 0x14022cc1d
neg r8d
mov dword [rsp + 0x54], r8d
xor r9d, r9d
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x14022b377
mov rax, qword [rsp + 0x48]
test r8d, r8d
jns 0x14022cc50
mov eax, dword [rax + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r14 + rcx*8]
jmp case.0x14022b3a8.89
jne 0x14022cc66
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r14 + rcx*8]
jmp case.0x14022b3a8.89
mov eax, dword [rax + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r14 + rcx*8]
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
mov edi, 2
mov edx, edi
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, r11
call fcn.14022a3c0
mov ebx, eax
mov edx, edi
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 8]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x60]
call fcn.14022a3c0
lea eax, [rax + rbx*2]
add eax, ebx
lea rbx, [0x140000000]
movsxd rcx, eax
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x2c
jne 0x14022ccd4
movzx edx, byte [rcx + rbx + 0x28bd58]
jmp 0x14022ccdc
movzx edx, byte [rcx + rbx + 0x28bd68]
movsxd rax, dword [rax + 0xc]
mov r11, qword [rsp + 0x60]
imul rcx, rax, 0x38
add rcx, r11
cmp dl, dil
jne 0x14022cd0a
movzx eax, word [rcx + 0x14]
mov edx, 0xf241
and ax, dx
or ax, 1
mov word [rcx + 0x14], ax
jmp 0x14022b55e
movzx eax, dl
mov edx, 0xf244
mov qword [rcx], rax
movzx eax, word [rcx + 0x14]
and ax, dx
or ax, 4
mov word [rcx + 0x14], ax
jmp 0x14022b55e
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 4]
mov edx, dword [r10 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.14022a3c0
mov r11, qword [rsp + 0x60]
movsxd rcx, eax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 0x10]
movsxd rax, dword [rax + 8]
xor rdx, rcx
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
jne 0x14022bd41
mov eax, 4
mov qword [rcx], rdx
mov word [rcx + 0x14], ax
jmp 0x14022b55e
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rcx, r11
add rbx, r11
movzx eax, word [rcx + 0x14]
test al, 1
jne 0x1402329aa
test al, 0x24
je 0x14022cdb8
cmp qword [rcx], 0
mov rax, r9
sete al
jmp 0x14022cde7
test al, 8
je 0x14022cdc2
movsd xmm0, qword [rcx]
jmp 0x14022cdd7
test al, 0x12
je 0x14022cde4
call fcn.1401d7440
mov r11, qword [rsp + 0x60]
xor r9d, r9d
lea edx, [r9 + 1]
ucomisd xmm0, xmm6
jp 0x14022cddf
je 0x14022cde4
mov rax, r9
jmp 0x14022cde7
mov rax, rdx
mov ecx, 0x9000
test word [rbx + 0x14], cx
je 0x14022ce07
mov rcx, rbx
mov rdx, rax
call fcn.14024d340
mov r11, qword [rsp + 0x60]
jmp 0x14022b55e
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x54]
mov qword [rbx], rax
mov eax, 4
mov word [rbx + 0x14], ax
jmp case.0x14022b3a8.89
mov r15, qword [rsp + 0x48]
mov word [rbx + 0x14], dx
jmp case.0x14022b3a8.89
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 4]
imul rbx, rax, 0x38
movsxd rax, dword [r10 + 8]
imul rdi, rax, 0x38
add rbx, r11
mov eax, 0x9000
add rdi, r11
test word [rdi + 0x14], ax
je 0x14022ce71
mov rcx, rdi
call fcn.14024c0f0
mov r11, qword [rsp + 0x60]
xor r9d, r9d
lea edx, [r9 + 1]
jmp 0x14022ce75
mov word [rdi + 0x14], dx
test byte [rbx + 0x14], 1
jne 0x14022c779
mov eax, 4
mov word [rdi + 0x14], ax
movzx eax, word [rbx + 0x14]
test al, 0x24
je 0x14022cead
mov rax, qword [rbx]
mov r10d, dword [rsp + 0x40]
not rax
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov qword [rdi], rax
jmp 0x14022b568
test al, 8
je 0x14022ced4
movsd xmm0, qword [rbx]
call fcn.1401c1bd0
mov r10d, dword [rsp + 0x40]
not rax
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov qword [rdi], rax
jmp 0x14022b568
test al, 0x12
je 0x14022cf01
cmp qword [rbx + 8], 0
je 0x14022cf01
mov rcx, rbx
call fcn.1401d7410
mov r10d, dword [rsp + 0x40]
not rax
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov qword [rdi], rax
jmp 0x14022b568
mov r10d, dword [rsp + 0x40]
mov rax, r9
mov r15, qword [rsp + 0x48]
not rax
mov r11, qword [rsp + 0x60]
mov qword [rdi], rax
jmp 0x14022b568
mov r8, qword [r13 + 0x108]
test r8, r8
je 0x14022cf97
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [r13 + 0x88]
mov r9, qword [r8 + 0x28]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov ecx, edx
and edx, 7
shr rcx, 3
movzx eax, byte [rcx + r9]
bt eax, edx
jb 0x14022cfeb
mov r15, qword [rsp + 0x48]
bts eax, edx
mov r8d, dword [rsp + 0x54]
mov byte [rcx + r9], al
xor r9d, r9d
mov rcx, qword [r13 + 0x88]
lea edx, [r9 + 1]
mov eax, dword [rcx + 4]
mov dword [r15 + 4], eax
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
mov rcx, qword [r13 + 0x88]
mov eax, dword [rax + 4]
cmp dword [rcx + 4], eax
je 0x14022c75f
mov r15, qword [rsp + 0x48]
mov eax, dword [rcx + 4]
mov r8d, dword [rsp + 0x54]
mov dword [r15 + 4], eax
jmp case.0x14022b3a8.89
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 4]
mov edx, dword [r10 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.14022a3c0
test eax, eax
je 0x14022b976
mov r10d, dword [rsp + 0x40]
xor r9d, r9d
mov r15, qword [rsp + 0x48]
mov edx, 1
mov eax, dword [r15 + 8]
mov r11, qword [rsp + 0x60]
dec eax
movzx r12d, byte [rsp + 0x50]
mov r8d, dword [rsp + 0x54]
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r14 + rcx*8]
mov qword [rsp + 0x48], rsi
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
mov edx, r9d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r11
call fcn.14022a3c0
test eax, eax
jne 0x14022b976
jmp 0x14022cfe6
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x14022cff8
jmp case.0x14022b3a8.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
test eax, eax
js 0x14022d0dc
mov rcx, rax
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0xc]
movzx eax, word [rdx + 0x4a]
cmp ecx, eax
jge 0x14022d0cd
mov ecx, dword [rdx + rcx*4 + 0x70]
cmp ecx, 0xc
jb 0x14022d0b9
test cl, 1
mov edx, 4
mov eax, 8
cmove dx, ax
jmp 0x14022d101
mov rax, rcx
lea rcx, [0x140000000]
movzx edx, byte [rax + rcx + 0x28bd78]
jmp 0x14022d108
mov rax, qword [rsp + 0x48]
mov edx, 1
mov ecx, dword [rax + 0x10]
jmp 0x14022d0fc
movsxd rax, dword [rcx + 0xc]
lea rbx, [0x140000000]
imul rcx, rax, 0x38
movzx eax, word [rcx + r11 + 0x14]
and eax, 0x3f
movzx ecx, byte [rax + rbx + 0x291e20]
dec ecx
shl dx, cl
lea rcx, [0x140000000]
mov r15, qword [rsp + 0x48]
test word [r15 + 2], dx
jne 0x14022cff3
mov edx, 1
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x14022b377
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x14022d19a
movsxd rax, dword [rbx + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x14022d19a
mov rax, rbx
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14022d186
xor edx, edx
call fcn.14024d340
mov r10d, dword [rsp + 0x40]
mov r15, rbx
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov eax, 4
mov qword [rcx], r9
mov word [rcx + 0x14], ax
mov r15, rbx
jmp case.0x14022b3a8.89
mov rax, rbx
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14022d1ca
call fcn.14024c0f0
mov r10d, dword [rsp + 0x40]
mov r15, rbx
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov word [rcx + 0x14], dx
mov r15, rbx
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x14022cff8
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x14022f2bd
cmp byte [rdx + 2], 0
je 0x14022f2bd
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14022d242
call fcn.14024c0f0
jmp 0x14022cfe6
mov r15, qword [rsp + 0x48]
mov edx, 1
mov word [rcx + 0x14], dx
jmp 0x14022cff8
mov rax, qword [rsp + 0x48]
mov r14, qword [rbp - 0x80]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
mov r13d, dword [rcx + 8]
mov dword [rbp - 0x78], r13d
nop word [rax + rax]
mov r15, qword [rbx + 0x58]
mov eax, dword [r14 + 0x2c]
mov qword [rbp - 0x50], r15
cmp dword [rbx + 0x20], eax
je 0x14022d2ca
cmp byte [rbx + 2], 0
jne 0x14022d378
cmp byte [rbx + 3], 0
mov rdi, qword [rbx + 0x30]
je 0x14022d2c3
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x14022d31f
lea eax, [r13 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x14022d31f
mov rbx, qword [rbx + 0x28]
lea r13d, [rax - 1]
jmp 0x14022d273
cmp byte [rdi], 0
je 0x14022d332
jmp 0x14022d2d7
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x14022d479
mov rcx, rbx
call fcn.140235130
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
je 0x14022d280
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x78]
mov r14, qword [rsp + 0x48]
mov eax, 0xb
xor r12d, r12d
mov rbx, qword [rsp + 0x68]
mov r15, qword [rsp + 0x58]
cmp byte [rsi + 0x67], 0
je 0x140233a0a
mov r10d, 7
jmp 0x140233a40
mov rcx, rbx
call fcn.140234670
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2ea
mov rcx, rdi
call fcn.1401ce0f0
mov eax, dword [rdi + 0x40]
mov dword [rbx + 0x68], eax
mov rax, qword [rdi + 0x88]
movzx ecx, word [rdi + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rdi + 0x38]
cmp ecx, edx
jle 0x14022d36c
test edx, edx
mov ecx, edx
mov r9d, 0
cmovs ecx, r9d
mov dword [rbx + 0x6c], ecx
mov rax, qword [rdi + 0x38]
jmp 0x14022d3a6
mov dword [rbx + 0x6c], ecx
xor r9d, r9d
mov rax, qword [rdi + 0x38]
jmp 0x14022d3a6
cmp byte [rbx], 3
jne 0x14022d41b
movsxd rax, dword [rbx + 0x24]
test eax, eax
jle 0x14022d41b
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
xor r9d, r9d
mov eax, dword [rcx + 0x10]
mov dword [rbx + 0x6c], eax
mov dword [rbx + 0x68], eax
mov rax, qword [rcx + 8]
mov qword [rbx + 0x60], rax
mov eax, dword [r14 + 0x2c]
mov dword [rbx + 0x20], eax
mov rax, qword [rbx + 0x60]
movzx ecx, byte [rax]
mov dword [r15], ecx
cmp ecx, 0x80
jae 0x14022d3ca
mov eax, 1
jmp 0x14022d3dc
mov rcx, qword [rbx + 0x60]
mov rdx, r15
call fcn.14020ace0
movzx eax, al
xor r9d, r9d
mov dword [rbx + 0x40], eax
mov word [rbx + 0x4a], r9w
mov ecx, dword [r15]
cmp dword [rbx + 0x6c], ecx
jae 0x14022d40c
mov qword [rbx + 0x60], r9
mov dword [rbx + 0x6c], r9d
mov eax, dword [r15]
cmp eax, 0x18003
ja 0x14022d674
cmp eax, dword [rbx + 0x68]
jbe 0x14022d47c
jmp 0x14022d674
mov r9, qword [rbx + 0x60]
xor eax, eax
mov qword [rbp - 0x60], r9
jmp 0x14022d539
mov rax, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14022d445
call fcn.14024c0f0
jmp 0x14022c0b4
mov r15, qword [rsp + 0x48]
mov edx, 1
mov word [rcx + 0x14], dx
xor r9d, r9d
mov r8d, dword [rsp + 0x54]
mov r14, qword [rsp + 0x58]
lea rcx, [0x140000000]
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x14022b377
xor r9d, r9d
movzx eax, word [rbx + 0x4a]
cmp eax, r13d
ja 0x14022d7a1
mov edx, dword [rbx + 0x40]
mov ecx, dword [r15]
cmp edx, ecx
jae 0x14022d6b5
mov r9, qword [rbx + 0x60]
mov qword [rbp - 0x60], r9
test r9, r9
jne 0x14022d53c
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp + 0x20], rax
movups xmmword [rbp], xmm0
movups xmmword [rbp + 0x10], xmm0
mov r10, qword [rbx + 0x30]
mov r8d, dword [r15]
mov rax, qword [r10 + 0x88]
movzx ecx, word [r10 + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [r10 + 0x38]
cmp ecx, edx
jle 0x14022d4e7
test edx, edx
mov ecx, edx
mov rax, r9
cmovs ecx, eax
jmp 0x14022d4e9
xor eax, eax
mov r9, qword [r10 + 0x38]
mov qword [rbp - 0x60], r9
mov qword [rbp - 8], r9
cmp r8d, ecx
ja 0x14022d50d
mov ecx, 0x4010
mov dword [rbp], r8d
mov word [rbp + 4], cx
mov dword [rsp + 0x40], eax
jmp 0x14022d532
lea r9, [rbp - 0x10]
xor edx, edx
mov rcx, r10
call fcn.140235fb0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2ea
mov r9, qword [rbp - 8]
mov qword [rbp - 0x60], r9
movzx eax, word [rbx + 0x4a]
mov ecx, dword [r15]
mov edx, dword [rbx + 0x40]
movzx r12d, ax
mov r14d, edx
mov esi, r12d
add r14, r9
mov r13d, ecx
add r13, r9
mov r15d, dword [r15 + r12*4]
movzx edi, byte [r14]
mov dword [rbp - 0x70], edi
mov dword [rbx + rsi*4 + 0x70], edi
cmp edi, 0x80
jae 0x14022d57a
lea rcx, [0x140000000]
inc r14
movzx eax, byte [rdi + rcx + 0x291c80]
jmp 0x14022d5b1
lea rdx, [rbp - 0x70]
mov rcx, r14
call fcn.14020ace0
mov edi, dword [rbp - 0x70]
movzx eax, al
add r14, rax
mov dword [rbx + rsi*4 + 0x70], edi
cmp edi, 0x80
jb 0x14022d5a2
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x14022d5b1
lea rcx, [0x140000000]
movzx eax, byte [rdi + rcx + 0x291c80]
add r15, rax
inc r12d
mov rax, qword [rbp - 0x50]
movsxd rsi, r12d
mov dword [rax + rsi*4], r15d
cmp r12d, dword [rbp - 0x78]
ja 0x14022d5cf
cmp r14, r13
jb 0x14022d553
jmp 0x14022d5d4
cmp r14, r13
jb 0x14022d629
cmp r14, r13
ja 0x14022d631
mov eax, dword [rbx + 0x68]
cmp r15, rax
jne 0x14022d631
mov r15, qword [rbp - 0x50]
sub r14d, dword [rbp - 0x60]
mov word [rbx + 0x4a], r12w
mov dword [rbx + 0x40], r14d
cmp qword [rbx + 0x60], 0
jne 0x14022d618
mov eax, 0x9000
test word [rbp + 4], ax
jne 0x14022d60a
cmp dword [rbp + 0x10], 0
je 0x14022d618
lea rcx, [rbp - 0x10]
call fcn.14024c0a0
movzx r12d, word [rbx + 0x4a]
mov r13d, dword [rbp - 0x78]
xor r9d, r9d
mov rsi, qword [rsp + 0x70]
jmp 0x14022d6bc
mov eax, dword [rbx + 0x68]
cmp r15, rax
jbe 0x14022d5e1
mov r15, qword [rbp - 0x50]
cmp dword [r15], 0
jne 0x14022d645
xor eax, eax
mov r14, r13
mov r12d, eax
jmp 0x14022d5e5
cmp qword [rbx + 0x60], 0
jne 0x14022d666
mov eax, 0x9000
test word [rbp + 4], ax
jne 0x14022d65d
cmp dword [rbp + 0x10], 0
je 0x14022d666
lea rcx, [rbp - 0x10]
call fcn.14024c0a0
mov rsi, qword [rsp + 0x70]
xor r9d, r9d
movzx r12d, byte [rsp + 0x50]
mov r14, qword [rsp + 0x58]
mov eax, dword [r14 + 0xc]
test eax, eax
jle 0x1402333ae
dec eax
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r10, [r14 + rax*8]
mov qword [rsp + 0x48], r10
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov edx, 1
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
mov edi, r9d
movzx r12d, ax
movzx eax, r12w
cmp eax, r13d
ja 0x14022d796
mov r10, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movsxd rax, dword [r10 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
cmp byte [r10 + 1], 0xf6
jne 0x14022d75d
mov rax, qword [r10 + 0x10]
mov edx, 0x9000
test word [rcx + 0x14], dx
je 0x14022d70d
mov r8d, 0x2000
mov rdx, rax
call fcn.14024aca0
movzx r12d, byte [rsp + 0x50]
jmp 0x14022c0b4
movups xmm0, xmmword [rax]
mov r10d, dword [rsp + 0x40]
mov edx, 0x2000
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x58]
movups xmmword [rcx], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rax + 0x14], dx
jne 0x14022fe5a
movzx r12d, byte [rsp + 0x50]
mov eax, 0xafff
and word [rcx + 0x14], ax
or word [rcx + 0x14], dx
mov edx, 1
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
mov eax, 0x9000
test word [rcx + 0x14], ax
je 0x14022d778
call fcn.14024c0f0
movzx r12d, byte [rsp + 0x50]
jmp 0x14022c0b4
mov r10d, dword [rsp + 0x40]
mov edx, 1
mov r15, qword [rsp + 0x48]
movzx r12d, byte [rsp + 0x50]
mov word [rcx + 0x14], dx
jmp 0x14022d456
movzx r12d, byte [rsp + 0x50]
mov r14d, r13d
jmp 0x14022d7a9
mov r14d, r13d
mov edi, dword [rbx + r14*4 + 0x70]
mov rdx, qword [rsp + 0x48]
movsxd rax, dword [rdx + 0xc]
imul rsi, rax, 0x38
mov eax, 0x9000
add rsi, qword [rsp + 0x60]
test word [rsi + 0x14], ax
je 0x14022d7d3
mov rcx, rsi
call fcn.14024c0f0
mov rdx, qword [rsp + 0x48]
lea eax, [r13 + 1]
mov eax, dword [r15 + rax*4]
cmp dword [rbx + 0x6c], eax
jb 0x14022d8be
mov r14d, dword [r15 + r14*4]
add r14, qword [rbx + 0x60]
cmp edi, 0xc
jae 0x14022d803
mov r8, rsi
mov edx, edi
mov rcx, r14
call fcn.140238230
jmp 0x14022c0af
lea ebx, [rdi - 0xc]
shr ebx, 1
mov dword [rsi + 0x10], ebx
mov byte [rsi + 0x16], r12b
lea edx, [rbx + 2]
cmp dword [rsi + 0x20], edx
jge 0x14022d84b
mov r9, qword [rsp + 0x70]
cmp ebx, dword [r9 + 0x88]
jg 0x1402336a9
mov eax, 1
xor r8d, r8d
mov rcx, rsi
mov word [rsi + 0x14], ax
call fcn.140236120
test eax, eax
jne 0x14022bf27
mov rcx, qword [rsi + 8]
jmp 0x14022d853
mov rcx, qword [rsi + 0x28]
mov qword [rsi + 8], rcx
mov r8, rbx
mov rdx, r14
call fcn.140263720
mov rax, qword [rsi + 8]
lea rcx, [0x140000000]
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x54]
mov r14, qword [rsp + 0x58]
mov byte [rbx + rax], 0
mov rax, qword [rsi + 8]
mov byte [rax + rbx + 1], 0
mov eax, edi
and eax, 1
xor r9d, r9d
movzx eax, word [rcx + rax*2 + 0x28bd74]
mov word [rsi + 0x14], ax
lea edx, [r9 + 1]
mov rsi, qword [rsp + 0x70]
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x14022b377
mov byte [rsi + 0x16], r12b
movzx eax, word [rdx + 2]
test al, 0xc0
je 0x14022d8d9
cmp edi, 0xc
jb 0x14022d8d5
test dil, 1
je 0x14022d901
test al, al
js 0x14022d901
cmp edi, 0x80
jb 0x14022d8ea
lea r8d, [rdi - 0xc]
shr r8d, 1
jmp 0x14022d8fc
mov eax, edi
lea rcx, [0x140000000]
movzx r8d, byte [rax + rcx + 0x291c80]
test r8d, r8d
jne 0x14022d917
mov r8, rsi
lea rcx, [0x14028d900]
mov edx, edi
call fcn.140238230
jmp 0x14022c0af
mov r9, qword [rsp + 0x70]
cmp r8d, dword [r9 + 0x88]
jg 0x1402336a9
mov edx, dword [r15 + r14*4]
mov r9, rsi
mov rcx, qword [rbx + 0x30]
call fcn.140235fb0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x1402339f8
mov rcx, qword [rsi + 8]
mov r8, rsi
mov edx, edi
call fcn.140238230
mov eax, 0xbfff
and word [rsi + 0x14], ax
jmp 0x14022c0af
mov rax, qword [rsp + 0x48]
mov esi, r9d
mov r14, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov r15, qword [r14 + 8]
add rbx, r11
cmp r9w, word [r14 + 0x36]
jge 0x140233223
lea rdi, [r15 + 0xc]
nop
movzx eax, word [rdi + 6]
test al, 0x60
je 0x14022d9af
test al, 0x20
jne 0x14022dab9
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc], 0
jne 0x14022dab5
movzx ecx, byte [rdi]
cmp cl, 0x43
jl 0x14022d9e0
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x14022da15
test al, 0x28
jne 0x14022d9d1
test al, 2
je 0x14022da15
mov rcx, rbx
call fcn.1401b3e90
jmp 0x14022da15
cmp cl, 0x45
jg 0x14022da15
mov rcx, rbx
call fcn.1402353a0
jmp 0x14022da15
cmp cl, 0x42
jne 0x14022da15
movzx ecx, word [rbx + 0x14]
movzx eax, cx
test cl, 2
jne 0x14022da09
test cl, 0x2c
je 0x14022da09
mov r8b, 1
movzx edx, r12b
mov rcx, rbx
call fcn.1402369e0
movzx eax, word [rbx + 0x14]
mov ecx, 0xffd3
and ax, cx
mov word [rbx + 0x14], ax
movzx edx, word [rbx + 0x14]
test dl, 1
jne 0x14022dab0
mov eax, dword [rdi - 4]
shr eax, 4
and eax, 0xf
sub eax, 2
je 0x14022daa7
sub eax, 1
je 0x14022daa2
sub eax, 1
je 0x14022daa2
sub eax, 1
je 0x14022da49
cmp eax, 1
jne 0x14022dab0
test dl, 2
jmp 0x14022daaa
test dl, 4
je 0x14022da9d
mov rcx, qword [rbx]
movabs rax, 0x800000000000
add rax, rcx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x14022da7f
or dx, 0x20
mov eax, 0xfffb
and dx, ax
mov word [rbx + 0x14], dx
jmp 0x14022dab0
xorps xmm0, xmm0
or dx, 8
cvtsi2sd xmm0, rcx
mov eax, 0xfffb
and dx, ax
movsd qword [rbx], xmm0
mov word [rbx + 0x14], dx
jmp 0x14022dab0
test dl, 0x28
jmp 0x14022daaa
test dl, 4
jmp 0x14022daaa
test dl, 0x10
je 0x1402333c4
mov edx, 1
add rbx, 0x38
movsx eax, word [r14 + 0x36]
inc esi
add rdi, 0x18
cmp esi, eax
jl 0x14022d990
mov r10d, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022d453
mov rax, qword [rsp + 0x48]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx ecx, byte [rdi]
add rbx, r11
nop dword [rax]
cmp cl, 0x43
jl 0x14022db2e
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x14022db63
test al, 0x28
jne 0x14022db1f
test al, 2
je 0x14022db63
mov rcx, rbx
call fcn.1401b3e90
jmp 0x14022db63
cmp cl, 0x45
jg 0x14022db63
mov rcx, rbx
call fcn.1402353a0
jmp 0x14022db63
cmp cl, 0x42
jne 0x14022db63
movzx ecx, word [rbx + 0x14]
movzx eax, cx
test cl, 2
jne 0x14022db57
test cl, 0x2c
je 0x14022db57
mov r8b, 1
movzx edx, r12b
mov rcx, rbx
call fcn.1402369e0
movzx eax, word [rbx + 0x14]
mov ecx, 0xffd3
and ax, cx
mov word [rbx + 0x14], ax
cmp byte [rdi], 0x45
jne 0x14022dbba
movzx ecx, word [rbx + 0x14]
test cl, 4
je 0x14022dbba
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x14022db9e
mov eax, 0xfffb
and cx, ax
or cx, 0x20
jmp 0x14022dbb6
xorps xmm0, xmm0
mov eax, 0xfff9
cvtsi2sd xmm0, rdx
and cx, ax
or cx, 8
movsd qword [rbx], xmm0
mov word [rbx + 0x14], cx
movzx ecx, byte [rdi + 1]
inc rdi
test cl, cl
je 0x14022fe74
add rbx, 0x38
mov edx, 1
jmp 0x14022db00
mov rcx, qword [rsp + 0x48]
mov r15, r9
mov r12d, r9d
mov r13, r9
movsxd rax, dword [rcx + 4]
mov rdi, qword [rcx + 0x10]
imul r11, rax, 0x38
mov eax, dword [rcx + 8]
add r11, qword [rsp + 0x60]
dec eax
cdqe
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rsi, r11
mov qword [rbp - 0x60], r11
add rcx, qword [rsp + 0x60]
mov qword [rbp - 0x50], rsi
mov qword [rbp - 0x70], rcx
test rdi, rdi
je 0x14022dc7d
movzx eax, byte [rdi]
lea rbx, [r11 + 0x14]
movzx r14d, byte [rsp + 0x50]
mov esi, 0xfffb
nop dword [rax]
nop dword [rax + rax]
lea rcx, [rbx - 0x14]
movzx r8d, r14b
movzx edx, al
call fcn.1401b3e10
cmp byte [rdi], 0x45
jne 0x14022dc66
movzx eax, word [rbx]
test al, 4
je 0x14022dc66
and ax, si
or ax, 0x20
mov word [rbx], ax
movzx eax, byte [rdi + 1]
inc rdi
add rbx, 0x38
test al, al
jne 0x14022dc40
mov r11, qword [rbp - 0x60]
mov rsi, qword [rbp - 0x50]
lea r14, [rsi + 0x24]
movzx ecx, word [r14 - 0x10]
test cl, 1
je 0x14022dcac
mov eax, 0x400
mov r8d, 1
and cx, ax
neg cx
sbb eax, eax
and eax, 0xa
mov dword [r14], eax
inc r12d
jmp 0x14022de58
test cl, 0x24
je 0x14022ddd1
mov r8, qword [r14 - 0x24]
mov rdx, r8
test r8, r8
jns 0x14022dcc4
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x14022dd09
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x14022dcf6
mov rax, qword [rbp - 0x80]
cmp byte [rax + 0xc3], 4
jb 0x14022dcf6
lea eax, [rdx + 8]
mov r8d, 1
mov dword [r14], eax
jmp 0x14022de58
mov eax, 1
inc r15
mov dword [r14], eax
mov r8d, eax
jmp 0x14022de58
cmp rdx, 0x7fff
ja 0x14022dd27
mov eax, 2
add r15, 2
mov dword [r14], eax
lea r8d, [rax - 1]
jmp 0x14022de58
cmp rdx, 0x7fffff
ja 0x14022dd45
mov eax, 3
add r15, 3
mov dword [r14], eax
lea r8d, [rax - 2]
jmp 0x14022de58
cmp rdx, 0x7fffffff
ja 0x14022dd63
mov eax, 4
add r15, 4
mov dword [r14], eax
lea r8d, [rax - 3]
jmp 0x14022de58
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x14022dd87
mov eax, 5
add r15, 6
mov dword [r14], eax
lea r8d, [rax - 4]
jmp 0x14022de58
add r15, 8
test cl, 0x20
je 0x14022ddc0
mov eax, 0xffdf
xorps xmm0, xmm0
cvtsi2sd xmm0, r8
and cx, ax
mov eax, 7
or cx, 8
lea r8d, [rax - 6]
movsd qword [r14 - 0x24], xmm0
mov word [r14 - 0x10], cx
mov dword [r14], eax
jmp 0x14022de58
mov eax, 6
mov dword [r14], eax
lea r8d, [rax - 5]
jmp 0x14022de58
test cl, 8
je 0x14022ddec
inc r12d
mov dword [r14], 7
add r15, 8
mov r8d, 1
jmp 0x14022de58
mov edi, dword [r14 - 0x14]
mov eax, ecx
shr eax, 1
and eax, 1
bt cx, 0xa
lea esi, [rdi + 6]
lea esi, [rax + rsi*2]
jae 0x14022de2a
movsxd rax, dword [r14 - 0x24]
lea esi, [rsi + rax*2]
test r15, r15
je 0x14022de27
lea rcx, [r14 - 0x24]
call fcn.140235e90
test eax, eax
jne 0x14022bf27
add edi, dword [r14 - 0x24]
jmp 0x14022de2a
add r13, rax
mov eax, edi
mov r8d, 1
add r15, rax
mov ecx, r8d
mov eax, esi
shr rax, 7
test rax, rax
je 0x14022de4e
inc ecx
shr rax, 7
test rax, rax
jne 0x14022de43
mov r11, qword [rbp - 0x60]
add r12d, ecx
mov dword [r14], esi
lea rax, [r14 - 0x24]
cmp rax, r11
je 0x14022de6a
sub r14, 0x38
jmp 0x14022dc81
cmp r12d, 0x7e
jle 0x14022deaf
movsxd rax, r12d
mov edx, r8d
shr rax, 7
test rax, rax
je 0x14022de8b
nop
inc edx
shr rax, 7
test rax, rax
jne 0x14022de80
add r12d, edx
mov ecx, r8d
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x14022deab
nop dword [rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x14022dea0
cmp edx, ecx
jge 0x14022deb2
inc r12d
mov rsi, qword [rbp - 0x70]
movsxd rbx, r12d
movsxd rdx, dword [rsi + 0x20]
lea rdi, [r15 + rbx]
lea rcx, [rdi + r13]
cmp rcx, rdx
jle 0x14022defe
mov r9, qword [rsp + 0x70]
movsxd rax, dword [r9 + 0x88]
cmp rcx, rax
jg 0x1402336a9
cmp edx, edi
jge 0x14022defe
xor r8d, r8d
mov edx, edi
mov rcx, rsi
call fcn.140236120
test eax, eax
jne 0x14022bf27
mov r11, qword [rbp - 0x60]
jmp 0x14022df06
mov rax, qword [rsi + 0x28]
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], edi
mov eax, 0x10
mov word [rsi + 0x14], ax
test r13, r13
je 0x14022df23
mov eax, 0x410
mov dword [rsi], r13d
mov word [rsi + 0x14], ax
mov rdi, qword [rsi + 8]
lea rsi, [rbx + rdi]
cmp r12d, 0x80
jge 0x14022df3c
mov byte [rdi], r12b
inc rdi
jmp 0x14022df7f
cmp rbx, 0x7f
ja 0x14022df4e
and bl, 0x7f
mov eax, 1
mov byte [rdi], bl
jmp 0x14022df7a
cmp rbx, 0x3fff
ja 0x14022df6f
mov rax, rbx
shr rax, 7
or al, 0x80
mov byte [rdi], al
and bl, 0x7f
mov byte [rdi + 1], bl
mov eax, 2
jmp 0x14022df7a
mov rdx, rbx
mov rcx, rdi
call fcn.1401e1390
cdqe
add rdi, rax
mov r14, qword [rbp - 0x50]
lea rbx, [r11 + 0x10]
mov eax, dword [rbx + 0x14]
cmp eax, 7
ja 0x14022dfe5
mov byte [rdi], al
inc rdi
test eax, eax
je 0x14022e05b
mov rdx, qword [rbx - 0x10]
lea rcx, [0x140000000]
movzx ecx, byte [rax + rcx + 0x291c80]
mov r10d, 0xffffffff
mov r9d, ecx
add ecx, r10d
lea r8, [rcx + rsi]
mov byte [r8], dl
je 0x14022dfe0
nop dword [rax]
nop dword [rax + rax]
shr rdx, 8
lea r8, [r8 - 1]
mov byte [r8], dl
add ecx, r10d
jne 0x14022dfd0
add rsi, r9
jmp 0x14022e05b
cmp eax, 0x80
jae 0x14022dfff
mov byte [rdi], al
inc rdi
cmp eax, 0xe
jb 0x14022e05b
movsxd rax, dword [rbx]
test eax, eax
jle 0x14022e05b
jmp 0x14022e046
mov rdx, rax
cmp rax, 0x7f
ja 0x14022e014
and dl, 0x7f
mov eax, 1
mov byte [rdi], dl
jmp 0x14022e03a
cmp rdx, 0x3fff
ja 0x14022e032
shr rax, 7
or al, 0x80
mov byte [rdi], al
and dl, 0x7f
mov byte [rdi + 1], dl
mov eax, 2
jmp 0x14022e03a
mov rcx, rdi
call fcn.1401e1390
cdqe
add rdi, rax
movsxd rax, dword [rbx]
test eax, eax
je 0x14022e05b
mov rdx, qword [rbx - 8]
mov r8, rax
mov rcx, rsi
call fcn.140263720
movsxd rax, dword [rbx]
add rsi, rax
lea rax, [rbx - 0x10]
cmp rax, r14
je 0x14022fe43
add rbx, 0x38
jmp 0x14022df87
mov r10, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
cmp dword [r10 + 0xc], 0
movsxd rcx, dword [r10 + 4]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x30]
je 0x14022e09a
mov rcx, rdx
call fcn.1401f2ac0
mov rbx, rax
jmp 0x14022e0bd
lea r8, [rbp - 0x60]
mov qword [rbp - 0x60], r9
mov rcx, rsi
call fcn.1401f0540
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2f3
mov rbx, qword [rbp - 0x60]
mov rax, qword [rsp + 0x48]
mov ecx, 0x9000
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, qword [r13 + 0x68]
test word [rax + 0x14], cx
je 0x14022e0e9
mov rcx, rax
call fcn.1401db030
mov qword [rax], rbx
jmp 0x1402304dd
mov ecx, 4
mov word [rax + 0x14], cx
mov qword [rax], rbx
jmp 0x1402304dd
mov rbx, qword [rsp + 0x48]
mov r10d, dword [rbx + 4]
mov rsi, qword [rbx + 0x10]
mov dword [rbp - 0x78], r10d
test r10d, r10d
jne 0x14022e1ea
mov rdi, qword [rsp + 0x70]
cmp dword [rdi + 0xe0], r10d
jg 0x140233433
test rsi, rsi
jne 0x14022e130
mov ebx, r9d
jmp 0x14022e146
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rsi + rbx], 0
jne 0x14022e137
and ebx, 0x3fffffff
mov r8d, dword [rdi + 0x2f4]
xor edx, edx
add r8d, dword [rdi + 0x2f0]
mov rcx, rdi
call fcn.140239da0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x140233a02
mov edx, ebx
mov rcx, rdi
add rdx, 0x21
call fcn.1401f9700
mov rdi, rax
test rax, rax
je 0x14022e4d6
lea r9, [rax + 0x20]
mov rdx, rsi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call fcn.140263720
mov rsi, qword [rsp + 0x70]
cmp byte [rsi + 0x65], 0
je 0x14022e1b2
mov byte [rsi + 0x65], 0
mov byte [rsi + 0x6d], 1
jmp 0x14022e1b8
inc dword [rsi + 0x2f0]
mov rax, qword [rsi + 0x2e0]
mov r10d, dword [rsp + 0x40]
mov qword [rdi + 0x18], rax
mov qword [rsi + 0x2e0], rdi
mov rax, qword [rsi + 0x2f8]
mov qword [rdi + 8], rax
mov rax, qword [rsi + 0x300]
mov qword [rdi + 0x10], rax
jmp 0x14022e4f1
mov r13d, r9d
mov r9, qword [rsp + 0x70]
mov r12, qword [r9 + 0x2e0]
test r12, r12
je 0x14022e2f2
lea r11, [0x140000000]
nop dword [rax]
mov r8, qword [r12]
mov r9, rsi
sub r9, r8
nop word [rax + rax]
movzx eax, byte [r8]
movzx edx, byte [r9 + r8]
cmp eax, edx
jne 0x14022e2c3
test eax, eax
jne 0x14022e2d9
mov rsi, qword [rsp + 0x70]
cmp dword [rsi + 0xe0], eax
jle 0x14022e250
cmp r10d, 1
je 0x14023345d
cmp qword [r12 + 0x18], 0
jne 0x14022e321
cmp byte [rsi + 0x6d], 0
je 0x14022e321
mov r15d, 1
cmp r10d, r15d
jne 0x14022e328
mov rdi, qword [rbp - 0x80]
mov rax, qword [rdi]
mov rcx, qword [rax + 0x300]
add rcx, qword [rax + 0x2f8]
test rcx, rcx
jg 0x1402334d9
mov rcx, rdi
mov byte [rsi + 0x65], r15b
call fcn.140234c40
cmp eax, 5
je 0x140233497
mov r10d, dword [rdi + 0x34]
mov dword [rsp + 0x40], r10d
test r10d, r10d
jne 0x140233483
mov byte [rsi + 0x6d], r10b
jmp 0x14022e436
movzx ecx, byte [rax + r11 + 0x28d7e0]
movzx eax, byte [rdx + r11 + 0x28d7e0]
cmp ecx, eax
jne 0x14022e2e1
inc r8
jmp 0x14022e220
mov r12, qword [r12 + 0x18]
inc r13d
test r12, r12
jne 0x14022e210
mov r13, qword [rbp - 0x80]
lea rdx, str.no_such_savepoint:__s
mov rcx, r13
mov r8, rsi
call fcn.14022b200
mov rsi, qword [rsp + 0x70]
mov eax, 1
mov r10d, eax
mov dword [rsp + 0x40], eax
mov r14, rbx
jmp 0x14022d2f8
xor ecx, ecx
mov r15d, ecx
jmp 0x14022e32a
xor ecx, ecx
mov eax, dword [rsi + 0x2f0]
sub eax, r13d
lea r13d, [rax - 1]
mov eax, dword [rsi + 0x28]
cmp r10d, 2
jne 0x14022e3a9
mov r14d, dword [rsi + 0x2c]
mov edi, ecx
and r14d, 1
test eax, eax
jle 0x14022e3ac
mov esi, r14d
mov rbx, rcx
xor esi, 1
nop word [rax + rax]
mov r9, qword [rsp + 0x70]
mov r8d, esi
mov edx, 0x204
mov rcx, qword [r9 + 0x20]
mov rcx, qword [rbx + rcx + 8]
call fcn.1401f3880
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x1402339f8
mov rax, qword [rsp + 0x70]
inc edi
add rbx, 0x20
mov eax, dword [rax + 0x28]
cmp edi, eax
jl 0x14022e360
mov r10d, dword [rbp - 0x78]
xor ecx, ecx
mov rsi, qword [rsp + 0x70]
jmp 0x14022e3ac
mov r14d, ecx
mov edi, ecx
test eax, eax
jle 0x14022e3f2
mov rbx, rcx
nop word [rax + rax]
mov rcx, qword [rsi + 0x20]
mov r8d, r13d
mov edx, r10d
mov rcx, qword [rbx + rcx + 8]
call fcn.1401f2b20
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2ea
mov r10d, dword [rbp - 0x78]
inc edi
add rbx, 0x20
cmp edi, dword [rsi + 0x28]
jl 0x14022e3c0
test r14d, r14d
je 0x14022e423
mov rax, qword [rsi + 8]
test rax, rax
je 0x14022e417
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14022e400
mov rcx, rsi
call fcn.14021c0a0
or dword [rsi + 0x2c], 1
mov r10d, dword [rsp + 0x40]
test r10d, r10d
jne 0x14022d2ea
mov r14, qword [rsp + 0x58]
mov rcx, qword [rsi + 0x2e0]
cmp rcx, r12
je 0x14022e46a
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, rsi
mov qword [rsi + 0x2e0], rax
call fcn.1401f9570
dec dword [rsi + 0x2f0]
mov rcx, qword [rsi + 0x2e0]
cmp rcx, r12
jne 0x14022e442
mov ebx, dword [rbp - 0x78]
cmp ebx, 1
jne 0x14022e496
mov rax, qword [r12 + 0x18]
mov rdx, r12
mov rcx, rsi
mov qword [rsi + 0x2e0], rax
call fcn.1401f9570
test r15d, r15d
jne 0x14022e4e2
dec dword [rsi + 0x2f0]
jmp 0x14022e4b8
mov rax, qword [r12 + 8]
mov qword [rsi + 0x2f8], rax
mov rax, qword [r12 + 0x10]
mov qword [rsi + 0x300], rax
test r15d, r15d
je 0x14022e4b8
cmp ebx, 2
jne 0x14022e4e2
mov r8d, r13d
mov edx, ebx
mov rcx, rsi
call fcn.140239da0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2ea
jmp 0x14022e4e7
mov r10d, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
jmp 0x14022e4f1
mov r10d, dword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
movzx r12d, byte [rsp + 0x50]
cmp byte [r13 + 0xc5], 3
jne 0x14022b97b
mov rdi, qword [rsp + 0x78]
mov r12d, 0x65
mov r14, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x68]
mov r15, qword [rsp + 0x58]
nop dword [rax]
cmp rdi, rbx
jb 0x140233b64
mov rdx, qword [rsi + 0x210]
test rdx, rdx
je 0x140233b64
mov eax, dword [rsi + 0x220]
mov rcx, qword [rsi + 0x218]
add rbx, rax
call rdx
test eax, eax
je 0x14022e520
mov r10d, 9
mov rbx, 0xffffffffffffffff
mov dword [rsp + 0x40], r10d
xor r12d, r12d
lea eax, [r12 + 0xb]
jmp 0x14022d30a
mov rcx, qword [rsp + 0x48]
mov dword [rbp - 0x78], r9d
mov edx, dword [rcx + 8]
test edx, edx
je 0x14022e595
mov rax, qword [rsi + 0x30]
movabs r8, 0x200100000
test r8, rax
jne 0x14023351c
movsxd r14, dword [rcx + 4]
shl r14, 5
add r14, qword [rsi + 0x20]
mov rbx, qword [r14 + 8]
test rbx, rbx
je 0x14022e6b1
lea r8, [rbp - 0x78]
mov rcx, rbx
call fcn.1401ef7e0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14023353d
test byte [r13 + 0xc8], 0x20
je 0x14022e6ba
mov rax, qword [rsp + 0x48]
cmp dword [rax + 8], r10d
je 0x14022e6ba
cmp byte [rsi + 0x65], r10b
je 0x14022e5f9
cmp dword [rsi + 0xdc], 1
jle 0x14022e6ba
mov r8d, dword [r13 + 0x40]
test r8d, r8d
jne 0x14022e61a
inc dword [rsi + 0x2f4]
mov r8d, dword [rsi + 0x2f0]
add r8d, dword [rsi + 0x2f4]
mov dword [r13 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, rsi
call fcn.140239da0
mov dword [rsp + 0x40], eax
mov r12d, eax
test eax, eax
jne 0x14022e690
mov edi, dword [r13 + 0x40]
mov rsi, qword [rbx + 8]
cmp byte [rbx + 0x11], al
je 0x14022e64f
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], al
jne 0x14022e64f
mov rcx, rbx
call fcn.1401b7c60
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x14022e669
cmp byte [rcx + 0xa], 0
je 0x14022e669
mov edx, edi
call fcn.1401db840
jmp 0x14022e66b
xor eax, eax
cmp byte [rbx + 0x11], 0
mov r12d, eax
mov dword [rsp + 0x40], eax
je 0x14022e686
sub dword [rbx + 0x14], 1
jne 0x14022e686
mov rcx, rbx
call fcn.140248600
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
mov rax, qword [rsi + 0x2f8]
mov r10d, dword [rsp + 0x40]
movzx r12d, byte [rsp + 0x50]
mov qword [r13 + 0x58], rax
mov rax, qword [rsi + 0x300]
mov qword [r13 + 0x60], rax
test r10d, r10d
jne 0x14022d2f3
mov r15, qword [rsp + 0x48]
cmp word [r15 + 2], 0
je 0x14022c0be
mov eax, dword [r15 + 0xc]
cmp dword [rbp - 0x78], eax
jne 0x140233589
mov rcx, qword [r14 + 0x18]
mov rax, r15
mov eax, dword [rax + 0x10]
cmp dword [rcx + 4], eax
jne 0x140233589
mov r11, qword [rsp + 0x60]
mov r14, qword [rsp + 0x58]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
lea r8, [rbp - 0x38]
mov rcx, qword [rsi + 0x20]
movsxd rax, dword [r10 + 4]
mov edx, dword [r10 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1401f0d90
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], ax
je 0x14022e757
call fcn.1401db030
mov r10d, dword [rsp + 0x40]
mov rcx, rax
movsxd rax, dword [rbp - 0x38]
mov r11, qword [rsp + 0x60]
mov qword [rcx], rax
jmp 0x14022b568
mov r10d, dword [rsp + 0x40]
mov eax, 4
mov r11, qword [rsp + 0x60]
mov word [rcx + 0x14], ax
movsxd rax, dword [rbp - 0x38]
mov qword [rcx], rax
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [rsi + 0x20]
mov rcx, qword [rbx + 8]
call fcn.1401f3990
mov r10d, eax
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 8]
cmp eax, 1
jne 0x14022e7d8
mov r10, qword [rsp + 0x48]
movzx eax, word [r10 + 2]
mov ecx, dword [r10 + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
mov rcx, rsi
or dword [rsi + 0x2c], 1
mov edx, dword [r10 + 4]
call fcn.140205950
mov r10d, dword [rsp + 0x40]
jmp 0x14022e7ed
cmp eax, 2
jne 0x14022e7ed
mov rax, qword [rsp + 0x48]
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rax + 0xc]
mov byte [rcx + 0x70], al
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 4], 1
jne 0x14022e821
mov rax, qword [rsi + 8]
test rax, rax
je 0x14022e819
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14022e802
and dword [r13 + 0xc8], 0xfffffffc
test r10d, r10d
jne 0x14023361b
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r10 + 4]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x14022e871
mov eax, dword [r10 + 8]
cmp dword [rdi + 0x44], eax
jne 0x14022e871
mov rcx, qword [rdi + 0x30]
add rdi, 0x30
call fcn.1401efb50
mov r10d, dword [rsp + 0x40]
jmp 0x14022e987
mov r10, qword [rsp + 0x48]
jmp 0x14022e876
mov rdi, qword [rsp + 0x78]
mov eax, dword [r13 + 0xc8]
and al, 3
cmp al, 1
je 0x140233623
movsxd r12, dword [r10 + 0xc]
mov edi, r9d
mov r15d, dword [r10 + 8]
mov rax, r12
shl rax, 5
mov r14, r9
add rax, qword [rsi + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x71
jne 0x14022e8d0
mov rax, qword [rax + 0x18]
movzx esi, word [r10 + 2]
and esi, 8
or esi, 4
movzx ecx, byte [rax + 0x70]
mov rax, qword [rbp - 0x80]
cmp cl, byte [rax + 0xc3]
jae 0x14022e8d3
mov byte [rax + 0xc3], cl
jmp 0x14022e8d3
mov esi, r9d
test byte [r10 + 2], 0x10
je 0x14022e8f1
imul rbx, r15, 0x38
add rbx, r11
mov rcx, rbx
call fcn.1402362b0
mov r10, qword [rsp + 0x48]
mov r15d, dword [rbx]
movzx eax, byte [r10 + 1]
cmp al, 0xf8
jne 0x14022e905
mov r14, qword [r10 + 0x10]
movzx edi, word [r14 + 8]
jmp 0x14022e90d
cmp al, 0xfd
jne 0x14022e90d
mov edi, dword [r10 + 0x10]
mov edx, dword [r10 + 4]
xor r9d, r9d
mov rcx, qword [rbp - 0x80]
mov r8d, edi
call fcn.1401b1f60
mov rbx, rax
test rax, rax
je 0x14022bf27
mov byte [rax + 1], r12b
lea rdi, [rax + 0x30]
mov byte [rax + 2], 1
mov r9, r14
or dword [rax + 8], 4
mov r8d, esi
mov dword [rax + 0x44], r15d
mov edx, r15d
mov rcx, qword [rdi]
mov qword [rsp + 0x20], rcx
mov rcx, r13
call fcn.1401f0760
mov rsi, qword [rsp + 0x70]
mov r10d, eax
mov r13, qword [rbp - 0x80]
movzx r12d, byte [rsp + 0x50]
mov qword [rbx + 0x38], r14
mov r14, qword [rsp + 0x58]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x48]
cmp byte [rax + 1], 0xf8
setne al
mov byte [rbx + 4], al
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax + 2]
mov rax, qword [rdi]
and cl, 3
mov byte [rax + 3], cl
test r10d, r10d
jne 0x14022d2ee
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
xor r9d, r9d
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r10 + 8]
mov edx, dword [r10 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, r13
movsx r8d, word [rbx + 0x48]
call fcn.1401b1f60
mov r10, rax
test rax, rax
je 0x14022bf35
mov byte [rax + 2], 1
mov r8d, 4
or dword [rax + 8], 1
mov rcx, qword [rbx + 0x38]
mov qword [rax + 0x38], rcx
movzx ecx, byte [rbx + 4]
mov byte [rax + 4], cl
mov ecx, dword [rbx + 0x44]
mov dword [rax + 0x44], ecx
mov ecx, dword [rax + 8]
xor ecx, dword [rbx + 8]
and ecx, 4
xor ecx, dword [rax + 8]
mov dword [rax + 8], ecx
or ecx, 8
mov rax, qword [rbx + 0x10]
mov qword [r10 + 0x10], rax
mov dword [r10 + 8], ecx
or dword [rbx + 8], 8
mov rax, qword [r10 + 0x30]
mov r9, qword [r10 + 0x38]
mov edx, dword [r10 + 0x44]
mov rcx, qword [r10 + 0x10]
mov qword [rsp + 0x20], rax
call fcn.1401f0760
mov r11, qword [rsp + 0x60]
mov r10d, eax
mov r15, qword [rsp + 0x48]
mov dword [rsp + 0x40], eax
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 0xc]
test eax, eax
jle 0x14022ea81
imul rcx, rax, 0x38
mov dword [rcx + r11 + 0x10], r9d
movsxd rax, dword [r10 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x140293e68]
mov qword [rcx + r11 + 8], rax
movsxd rdx, dword [r10 + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x14022eadb
test byte [rbx + 8], 8
jne 0x14022eadb
movsx eax, word [rbx + 0x48]
cmp dword [r10 + 8], eax
jg 0x14022eadb
mov qword [rbx + 0x18], r9
xor r8d, r8d
mov dword [rbx + 0x20], r9d
mov edx, dword [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
call fcn.1401efc10
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2f3
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov byte [rbx + 2], 1
jmp 0x14022b568
mov r8d, dword [r10 + 8]
xor r9d, r9d
mov rcx, r13
call fcn.1401b1f60
mov rbx, rax
test rax, rax
je 0x14022bf35
or dword [rax + 8], 1
lea r9, [rbx + 0x10]
mov rax, qword [rsp + 0x48]
mov r8, rsi
mov dword [rsp + 0x28], 0x41e
xor edx, edx
movzx ecx, word [rax + 2]
or ecx, 5
mov dword [rsp + 0x20], ecx
mov rcx, qword [rsi]
call fcn.1401f1f60
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2ee
mov rcx, qword [rbx + 0x10]
mov r15d, 1
mov edx, r15d
xor r8d, r8d
call fcn.1401ef7e0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022ebe7
mov rax, qword [rsp + 0x48]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x38], r14
test r14, r14
je 0x14022ebb2
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
or r8d, 2
call fcn.1401f06f0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022ebac
mov rax, qword [rbx + 0x30]
lea r8d, [r15 + 3]
mov edx, dword [rbx + 0x44]
mov r9, r14
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.1401f0760
mov r10d, eax
mov dword [rsp + 0x40], eax
mov byte [rbx + 4], 0
jmp 0x14022ebdd
mov dword [rbx + 0x44], r15d
xor r9d, r9d
mov rax, qword [rbx + 0x30]
mov edx, r15d
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.1401f0760
mov r10d, eax
mov dword [rsp + 0x40], eax
mov byte [rbx + 4], r15b
mov r14, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x70]
xor eax, eax
mov ecx, eax
mov rax, qword [rsp + 0x48]
cmp word [rax + 2], 8
mov eax, 4
cmovne ecx, eax
mov eax, dword [rbx + 8]
and eax, 0xfffffffb
or ecx, eax
mov dword [rbx + 8], ecx
test r10d, r10d
jne 0x140233633
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov byte [rbx + 2], 1
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
mov r9b, 1
mov rcx, r13
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.1401b1f60
test rax, rax
je 0x14022bf35
mov rdx, qword [rsp + 0x48]
mov r8, rax
mov rcx, qword [rdx + 0x10]
mov qword [rax + 0x38], rcx
mov rcx, rsi
mov edx, dword [rdx + 0xc]
call fcn.140238590
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2f3
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
mov edx, 1
test rcx, rcx
jne case.0x14022b3a8.89
jmp 0x14022cff8
mov rax, qword [rsp + 0x48]
mov r9b, 3
mov rcx, r13
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.1401b1f60
test rax, rax
je 0x14022bf35
mov r15, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov byte [rax + 2], 1
mov ecx, dword [r15 + 8]
mov dword [rax + 0x24], ecx
lea rcx, [0x14031bb44]
mov byte [rax + 4], 1
mov qword [rax + 0x30], rcx
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
mov r8, qword [r13 + 0x78]
movsxd rcx, dword [rax + 4]
mov rdx, qword [r8 + rcx*8]
test rdx, rdx
je 0x14022ed2d
mov rcx, r13
call fcn.140234ad0
mov rax, qword [rsp + 0x48]
xor r9d, r9d
mov r8, qword [r13 + 0x78]
mov ecx, dword [rax + 4]
movsxd rax, ecx
mov qword [r8 + rax*8], r9
jmp 0x14022d697
mov rax, qword [r13 + 0x78]
mov r12d, r9d
mov r10, qword [rsp + 0x48]
movsxd rcx, dword [r10 + 4]
mov r15, qword [rax + rcx*8]
mov byte [r15 + 2], 0
mov byte [r15 + 3], 0
mov dword [r15 + 0x20], r9d
cmp byte [r15 + 4], 0
je 0x14022eec4
movsxd rax, dword [r10 + 0xc]
imul rdi, rax, 0x38
add rdi, r11
movzx r14d, word [rdi + 0x14]
movzx eax, r14b
movzx ecx, r14w
and al, 0x2e
cmp al, 2
jne 0x14022ed95
xor edx, edx
mov rcx, rdi
call fcn.1401b3e90
movzx ecx, word [rdi + 0x14]
xor r9d, r9d
movzx eax, cx
test al, 0x24
je 0x14022eda1
mov rsi, qword [rdi]
jmp 0x14022edd2
test al, 8
je 0x14022edb3
movsd xmm0, qword [rdi]
call fcn.1401c1bd0
mov rsi, rax
jmp 0x14022edd2
test al, 0x12
je 0x14022edcf
cmp qword [rdi + 8], 0
je 0x14022edcf
mov rcx, rdi
call fcn.1401d7410
movzx ecx, word [rdi + 0x14]
mov rsi, rax
jmp 0x14022edd2
mov rsi, r9
mov word [rdi + 0x14], r14w
test cl, 0x24
jne 0x14022ee8f
test cl, 8
jne 0x14022ee6d
test cl, 1
jne 0x14022ee63
cmp ebx, 0x17
jae 0x14022ee63
mov rcx, qword [r15 + 0x30]
cmp byte [rcx], 0
jne 0x14022ee39
test byte [rcx + 1], 8
je 0x14022ee39
mov rsi, qword [rsp + 0x70]
xor r9d, r9d
mov r15, qword [rsp + 0x48]
mov r10d, r9d
mov r11, qword [rsp + 0x60]
movzx r12d, byte [rsp + 0x50]
mov r8d, dword [rsp + 0x54]
lea edx, [r9 + 1]
mov r14, qword [rsp + 0x58]
mov dword [rbp - 0x68], r9d
mov dword [rsp + 0x40], r9d
jmp case.0x14022b3a8.89
lea rdx, [rbp - 0x68]
call fcn.1401b7b90
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x140233429
xor r9d, r9d
cmp dword [rbp - 0x68], 0
jne 0x14022fc27
jmp 0x14022f07f
mov r14, qword [rsp + 0x58]
jmp 0x14022cfe6
movsd xmm1, qword [rdi]
mov rcx, rsi
call fcn.14020ddf0
test eax, eax
jle 0x14022ee86
test bl, 1
jne 0x14022ee8f
dec ebx
jmp 0x14022ee8f
jns 0x14022ee8f
test bl, 1
je 0x14022ee8f
inc ebx
mov rcx, qword [r15 + 0x30]
lea r9, [rbp - 0x68]
xor r8d, r8d
mov rdx, rsi
call fcn.1401f30b0
mov qword [r15 + 0x50], rsi
mov r10d, eax
mov rsi, qword [rsp + 0x70]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14022d2ee
mov r14, qword [rsp + 0x58]
jmp 0x14022ef4c
mov rax, qword [r15 + 0x30]
lea r8, [rbp - 0x68]
mov ecx, dword [r10 + 0x10]
movzx edi, byte [rax + 3]
mov rax, qword [r15 + 0x38]
and dil, 2
mov qword [rbp + 0x188], rax
lea eax, [rbx - 1]
mov word [rbp + 0x1a4], cx
setne r12b
test al, 1
mov ecx, 0xffffffff
mov eax, edx
lea rdx, [rbp + 0x188]
cmovne eax, ecx
mov byte [rbp + 0x1a6], al
movsxd rax, dword [r10 + 0xc]
imul rcx, rax, 0x38
mov byte [rbp + 0x1aa], 0
add rcx, r11
mov qword [rbp + 0x190], rcx
mov rcx, qword [r15 + 0x30]
call fcn.1401f0e90
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2ee
test dil, dil
je 0x14022ef4c
cmp byte [rbp + 0x1aa], al
je 0x14022ee51
mov eax, dword [rbp - 0x68]
cmp ebx, 0x17
jl 0x14022f002
test eax, eax
js 0x14022ef6f
jne 0x14022ef63
cmp ebx, 0x18
je 0x14022ef6f
xor r9d, r9d
mov dword [rbp - 0x68], r9d
jmp 0x14022f07f
mov rcx, qword [r15 + 0x30]
xor r9d, r9d
mov dword [rbp - 0x68], r9d
mov word [rcx + 0x46], r9w
and byte [rcx + 1], 0xf9
cmp byte [rcx], r9b
je 0x14022ef8f
call fcn.1401b7e30
jmp 0x14022efcd
movzx r8d, word [rcx + 0x56]
mov rdx, qword [rcx + 0x88]
lea eax, [r8 + 1]
mov word [rcx + 0x56], ax
cmp ax, word [rdx + 0x18]
jb 0x14022efb5
mov word [rcx + 0x56], r8w
call fcn.1401b7e30
jmp 0x14022efcd
cmp byte [rdx + 8], r9b
je 0x14022efc8
mov r10d, r9d
mov dword [rsp + 0x40], r9d
jmp 0x14022f07f
call fcn.1401d7850
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
je 0x14022f07c
cmp eax, 0x65
jne 0x14022d2ee
mov r15, qword [rsp + 0x48]
xor r9d, r9d
mov edx, 1
mov dword [rsp + 0x40], r9d
mov dword [rbp - 0x68], edx
mov r10d, r9d
jmp 0x14022cff8
test eax, eax
jg 0x14022f024
jne 0x14022f00d
cmp ebx, 0x15
je 0x14022f024
mov rax, qword [r15 + 0x30]
xor r9d, r9d
mov ecx, r9d
cmp byte [rax], cl
setne cl
mov dword [rbp - 0x68], ecx
jmp 0x14022ee54
mov rcx, qword [r15 + 0x30]
xor r9d, r9d
mov dword [rbp - 0x68], r9d
and byte [rcx + 1], 0xf1
mov word [rcx + 0x46], r9w
cmp byte [rcx], r9b
jne 0x14022f064
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x14022f064
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], r9b
je 0x14022f064
dec dx
mov dword [rsp + 0x40], r9d
mov word [rcx + 0x56], dx
mov r10d, r9d
jmp 0x14022f07f
call fcn.1401b8660
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
je 0x14022f07c
cmp eax, 0x65
jmp 0x14022efdf
xor r9d, r9d
mov r11, qword [rsp + 0x60]
mov r14, qword [rsp + 0x58]
test r12d, r12d
je 0x14022fe87
add qword [rsp + 0x48], 0x18
mov edx, 1
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
movzx r12d, byte [rsp + 0x50]
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0x1c]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi + 0x30]
cmp byte [rax], 0
jne 0x14022bdec
mov rcx, qword [rsp + 0x48]
mov rax, qword [rdi + 0x38]
mov qword [rbp + 0x220], rax
mov byte [rbp + 0x23e], 0
movzx eax, word [rcx + 0x28]
mov esi, dword [rcx + 4]
mov word [rbp + 0x23c], ax
movsxd rax, dword [rcx + 0x24]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x228], rcx
nop dword [rax]
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.1401ce0f0
mov ecx, dword [rbx + 0x40]
lea rax, [rcx - 1]
cmp rax, 0x7ffffffe
ja 0x14023365f
mov rax, qword [rsp + 0x70]
xor r12d, r12d
mov word [rbp + 0xc4], r12w
mov qword [rbp + 0xc8], rax
mov dword [rbp + 0xd0], r12d
mov rax, qword [rbx + 0x88]
movzx edx, word [rbx + 0x44]
mov r8d, dword [rax + 0x58]
sub r8d, dword [rbx + 0x38]
cmp edx, r8d
jle 0x14022f16f
test r8d, r8d
mov edx, r8d
cmovs edx, r12d
mov rax, qword [rbx + 0x38]
mov qword [rbp + 0xb8], rax
cmp ecx, edx
ja 0x14022f192
mov edx, 0x4010
mov dword [rbp + 0xc0], ecx
mov word [rbp + 0xc4], dx
jmp 0x14022f1c2
mov r8d, ecx
lea r9, [rbp + 0xb0]
mov rcx, rbx
xor edx, edx
call fcn.140235fb0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x140233646
mov ecx, dword [rbp + 0xc0]
mov rax, qword [rbp + 0xb8]
xor r9d, r9d
lea r8, [rbp + 0x220]
mov rdx, rax
call fcn.140237450
mov ebx, eax
cmp dword [rbp + 0xd0], r12d
je 0x14022f1eb
lea rcx, [rbp + 0xb0]
call fcn.14024c0a0
xor r9d, r9d
mov dword [rsp + 0x40], r9d
mov r10d, r9d
test ebx, ebx
jle 0x14022f208
mov rax, qword [rsp + 0x48]
cmp word [rax + 2], r9w
je 0x14022f285
test ebx, ebx
jns 0x14022cfee
test esi, esi
jle 0x14022fe80
mov dword [rdi + 0x20], r9d
dec esi
mov rcx, qword [rdi + 0x30]
mov word [rcx + 0x46], r9w
and byte [rcx + 1], 0xf9
cmp byte [rcx], r9b
je 0x14022f235
call fcn.1401b7e30
jmp 0x14022f26a
movzx r8d, word [rcx + 0x56]
mov rdx, qword [rcx + 0x88]
lea eax, [r8 + 1]
mov word [rcx + 0x56], ax
cmp ax, word [rdx + 0x18]
jb 0x14022f25b
mov word [rcx + 0x56], r8w
call fcn.1401b7e30
jmp 0x14022f26a
cmp byte [rdx + 8], r9b
jne 0x14022f110
call fcn.1401d7850
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
je 0x14022f110
cmp eax, 0x65
jne 0x140233646
xor r9d, r9d
add qword [rsp + 0x48], 0x18
mov r10d, r9d
mov dword [rsp + 0x40], r9d
jmp 0x14022cfee
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
movzx ecx, word [rdx + 0xc]
mov eax, dword [rax + 8]
cmp ecx, eax
jge 0x14022f2cc
mov word [rdx + 0xc], ax
mov r15, qword [rsp + 0x48]
mov edx, 1
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
cmp ecx, eax
lea rcx, [0x140000000]
jle 0x14022d118
mov word [rdx + 0xc], ax
mov edx, 1
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x14022b377
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je case.0x14022b3a8.9
cmp byte [rdx + 2], 0
je 0x14022f2bd
jmp case.0x14022b3a8.9
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r15 + 0x10]
jge case.0x14022b3a8.89
mov rax, qword [r13 + 0x78]
mov r10, qword [rsp + 0x48]
movsxd rcx, dword [r10 + 4]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r10 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x90], rcx
movzx eax, word [r10 + 0x10]
mov word [rbp + 0xa4], ax
test ax, ax
je 0x14022f3b5
mov rax, qword [rbx + 0x38]
lea rsi, [rbx + 0x24]
mov qword [rbp + 0x88], rax
lea rdx, [rbp + 0x88]
mov byte [rbp + 0xa6], 0
mov r8, rsi
mov rcx, qword [rbx + 0x30]
call fcn.1401f0e90
mov r10d, eax
mov dword [rsp + 0x40], eax
jmp 0x14022f435
mov eax, 0x400
test word [rcx + 0x14], ax
je 0x14022f3cd
call fcn.140235e90
test eax, eax
jne 0x14022bf35
mov rcx, qword [rbx + 0x38]
call fcn.14022a320
mov rdi, rax
test rax, rax
je 0x14022bf30
mov rcx, qword [rbp + 0x90]
mov r9, rax
mov r8, qword [rcx + 8]
mov edx, dword [rcx + 0x10]
mov rcx, qword [rbx + 0x38]
call fcn.140237d50
mov byte [rdi + 0x1e], 0
lea rsi, [rbx + 0x24]
mov rcx, qword [rbx + 0x30]
mov r8, rsi
mov rdx, rdi
call fcn.1401f0e90
mov rcx, qword [rsp + 0x70]
mov rdx, rdi
mov r12d, eax
mov dword [rsp + 0x40], eax
call fcn.1401f9570
mov rdi, qword [rsp + 0x78]
mov r10d, r12d
movzx r12d, byte [rsp + 0x50]
test r10d, r10d
jne 0x1402337af
mov ecx, dword [rsi]
test ecx, ecx
setne al
xor r9d, r9d
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x48]
mov byte [rbx + 3], r10b
mov dword [rbx + 0x20], r9d
movzx eax, byte [rax]
cmp al, 0x1d
jne 0x14022f471
test ecx, ecx
je 0x14022cfee
mov rsi, qword [rsp + 0x70]
jmp 0x14022d69c
test ecx, ecx
jne 0x14022cfee
cmp al, 0x1b
jne 0x14022f4bf
movzx edx, word [rbp + 0xa4]
mov rcx, r9
test rdx, rdx
je 0x14022fe80
mov rax, qword [rbp + 0x90]
add rax, 0x14
nop dword [rax + rax]
test byte [rax], 1
jne 0x14022cfee
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x14022f4a0
mov rsi, qword [rsp + 0x70]
jmp 0x14022d69c
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
cmp al, 0x1a
jne 0x14022fe5a
mov rsi, qword [rsp + 0x70]
mov rax, r15
mov r8d, dword [rsp + 0x54]
mov edx, 1
movzx eax, word [rax + 0x10]
mov word [rbx + 0xc], ax
jmp case.0x14022b3a8.89
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
jne 0x14022f58e
movups xmm0, xmmword [rcx]
movups xmmword [rbp + 0x1e8], xmm0
movups xmm2, xmmword [rcx + 0x10]
movups xmmword [rbp + 0x1f8], xmm2
movups xmm0, xmmword [rcx + 0x20]
movq rax, xmm2
movups xmmword [rbp + 0x208], xmm0
shr rax, 0x20
movsd xmm1, qword [rcx + 0x30]
movsd qword [rbp + 0x218], xmm1
test al, 4
jne 0x14022f573
test al, 0x28
jne 0x14022f562
test al, 2
je 0x14022f573
lea rcx, [rbp + 0x1e8]
call fcn.1401b3e90
mov r10, qword [rsp + 0x48]
xor r9d, r9d
jmp 0x14022f56e
lea rcx, [rbp + 0x1e8]
call fcn.1402353a0
mov edx, 1
test byte [rbp + 0x1fc], 4
je 0x14022c75a
mov rdi, qword [rbp + 0x1e8]
jmp 0x14022f59a
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r11]
movsxd rcx, dword [r10 + 4]
xor r8d, r8d
mov rax, qword [r13 + 0x78]
mov rdx, rdi
mov dword [rbp - 0x70], r9d
lea r9, [rbp - 0x70]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.1401f30b0
mov qword [rbx + 0x50], rdi
xor r9d, r9d
mov byte [rbx + 2], 0
mov r10d, eax
mov dword [rbx + 0x20], r9d
mov dword [rsp + 0x40], eax
mov eax, dword [rbp - 0x70]
mov byte [rbx + 3], r9b
mov dword [rbx + 0x24], eax
test eax, eax
je 0x140232f8e
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 8], r9d
jne 0x14022cff3
lea rax, [0x1402994d4]
mov r9d, 0x17754
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.1401af710
mov rdi, qword [rsp + 0x78]
mov eax, 0xb
mov r10d, eax
mov dword [rsp + 0x40], eax
mov r14, r15
jmp 0x14022d2fd
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x14022f668
mov rcx, rdx
call fcn.1401db030
mov r10, qword [rsp + 0x48]
mov rdx, rax
xor r9d, r9d
jmp 0x14022f671
mov eax, 4
mov word [rdx + 0x14], ax
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r10 + 4]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x18]
mov qword [rdx], rax
movsxd rcx, dword [r10 + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x14022d697
mov rsi, qword [rsp + 0x48]
mov rbx, r9
mov qword [rbp - 0x70], rbx
mov dword [rbp - 0x78], r9d
movsxd rax, dword [rsi + 8]
imul r14, rax, 0x38
mov eax, 0x9000
add r14, qword [r13 + 0x68]
test word [r14 + 0x14], ax
je 0x14022f6d1
mov rcx, r14
call fcn.1401db030
mov r14, rax
xor r9d, r9d
jmp 0x14022f6db
mov eax, 4
mov word [r14 + 0x14], ax
movsxd rcx, dword [rsi + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
test byte [rsi + 8], 2
jne 0x14022f75b
mov rcx, qword [rsi + 0x30]
cmp byte [rcx], 0
jne 0x14022f733
test byte [rcx + 1], 8
je 0x14022f733
mov r12d, r9d
mov dword [rsp + 0x40], r9d
movzx r12d, byte [rsp + 0x50]
mov rbx, qword [rsi + 0x30]
mov rcx, rbx
call fcn.1401ce0f0
mov rbx, qword [rbx + 0x30]
movabs r15, 0x7fffffffffffffff
mov qword [rbp - 0x70], rbx
cmp rbx, r15
jl 0x14022f7a6
or dword [rsi + 8], 2
jmp 0x14022f765
lea rdx, [rbp - 0x78]
call fcn.1401b7b90
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x1402337af
cmp dword [rbp - 0x78], eax
je 0x14022f70a
mov eax, 1
mov ebx, eax
mov qword [rbp - 0x70], rax
movabs r15, 0x7fffffffffffffff
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 0xc]
test edx, edx
je 0x14022f7df
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x14022f7af
mov rax, qword [rcx + 8]
test rax, rax
je 0x14022f79c
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14022f790
imul rdi, rdx, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x14022f7b8
inc rbx
mov qword [rbp - 0x70], rbx
jmp 0x14022f765
imul rdi, rdx, 0x38
add rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.1402362b0
mov rax, qword [rdi]
cmp rax, r15
je 0x14022f844
test byte [rsi + 8], 2
jne 0x14022f844
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp - 0x70], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x14022f859
xor eax, eax
mov edi, eax
nop dword [rax]
lea rdx, [rbp - 0x70]
mov ecx, 8
call fcn.1401a5a60
mov rbx, qword [rbp - 0x70]
lea r9, [rbp - 0x78]
mov rcx, qword [rsi + 0x30]
movabs rax, 0x3fffffffffffffff
and rbx, rax
xor r8d, r8d
inc rbx
mov rdx, rbx
mov qword [rbp - 0x70], rbx
call fcn.1401f30b0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x140233429
cmp dword [rbp - 0x78], eax
jne 0x14022f85e
inc edi
cmp edi, 0x64
jl 0x14022f7f0
mov rsi, qword [rsp + 0x70]
mov r10d, 0xd
mov dword [rsp + 0x40], r10d
jmp 0x14022d2ee
mov r10d, dword [rsp + 0x40]
mov byte [rsi + 3], 0
xor r9d, r9d
mov dword [rsi + 0x20], r9d
mov qword [r14], rbx
mov rsi, qword [rsp + 0x70]
mov edx, 1
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x54]
mov r14, qword [rsp + 0x58]
jmp case.0x14022b3a8.89
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 8]
movsxd rcx, dword [r10 + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, r11
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r10 + 0xc]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
mov qword [rbp + 0x128], rax
cmp byte [r10 + 1], 0xfb
jne 0x14022f8e6
cmp qword [rsi + 0x140], 0
je 0x14022f8e6
movsx rcx, byte [rbx + 1]
mov rax, qword [rsi + 0x20]
mov rdi, qword [r10 + 0x10]
shl rcx, 5
mov rsi, qword [rcx + rax]
jmp 0x14022f8ec
mov rdi, r9
mov rsi, r9
test byte [r10 + 2], 1
je 0x14022f911
inc qword [r13 + 0x38]
test byte [r10 + 2], 0x20
je 0x14022f911
mov r9, qword [rsp + 0x70]
mov rax, qword [rbp + 0x128]
mov qword [r9 + 0x38], rax
xor r9d, r9d
mov rax, qword [rdx + 8]
mov qword [rbp + 0x130], rax
mov eax, dword [rdx + 0x10]
mov dword [rbp + 0x144], eax
test byte [r10 + 2], 0x10
je 0x14022f930
mov r9d, dword [rbx + 0x24]
mov eax, 0x400
test word [rdx + 0x14], ax
je 0x14022f947
mov eax, dword [rdx]
mov dword [rbp + 0x148], eax
xor eax, eax
jmp 0x14022f94f
xor eax, eax
mov dword [rbp + 0x148], eax
mov qword [rbp + 0x120], rax
lea rdx, [rbp + 0x120]
movzx r8d, word [r10 + 2]
mov rcx, qword [rbx + 0x30]
and r8d, 0x8a
call fcn.1401f1340
xor r9d, r9d
mov byte [rbx + 3], 0
mov dword [rsp + 0x40], eax
mov r10d, eax
mov dword [rbx + 0x20], r9d
test eax, eax
jne 0x140233429
test rdi, rdi
je 0x14022fe80
mov rax, qword [rsp + 0x48]
mov r8, rsi
mov rsi, qword [rsp + 0x70]
mov edx, 0x12
mov r9, qword [rdi]
test byte [rax + 2], 4
mov eax, 0x17
mov rcx, qword [rsi + 0x138]
cmovne edx, eax
mov rax, qword [rbp + 0x128]
mov qword [rsp + 0x20], rax
call qword [rsi + 0x140]
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15, qword [rsp + 0x48]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
mov rcx, qword [r13 + 0x78]
movsxd rax, dword [r10 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r10 + 8]
mov rdx, qword [rcx + rax*8]
movsxd rax, dword [r10 + 0xc]
test eax, eax
je 0x14022fa0e
imul rcx, rax, 0x38
mov r8, qword [rcx + r11]
jmp 0x14022fa13
xor eax, eax
mov r8d, eax
mov rdx, qword [rdx + 0x30]
mov rcx, qword [r9 + 0x30]
call fcn.1401f3330
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2f3
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
cmp byte [r10 + 1], 0xfb
movsxd rcx, dword [r10 + 4]
mov r15d, dword [r10 + 8]
mov rdi, qword [rax + rcx*8]
jne 0x14022faa1
cmp qword [rsi + 0x140], 0
je 0x14022faa1
mov rax, qword [rsi + 0x20]
movsx rcx, byte [rdi + 1]
mov rsi, qword [r10 + 0x10]
shl rcx, 5
test byte [r10 + 2], 2
mov r14, qword [rcx + rax]
je 0x14022faa7
cmp byte [rdi + 4], 0
je 0x14022faa7
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.1401ce0f0
mov rax, qword [rbx + 0x30]
mov r10, qword [rsp + 0x48]
mov qword [rdi + 0x50], rax
jmp 0x14022faa7
mov r14, r9
mov rsi, r9
movzx edx, byte [r10 + 2]
mov rcx, qword [rdi + 0x30]
call fcn.1401f07f0
xor r9d, r9d
mov dword [rsp + 0x40], eax
mov dword [rdi + 0x20], r9d
mov r10d, eax
mov dword [rdi + 0x24], r9d
test eax, eax
jne 0x140233429
test r15b, 1
je 0x14022fe1a
inc qword [r13 + 0x38]
mov rax, qword [rsp + 0x70]
mov r10, qword [rax + 0x140]
test r10, r10
je 0x14022fe15
test rsi, rsi
je 0x14022fe15
test byte [rsi + 0x30], 0x80
jne 0x14022fe15
mov r9, qword [rsi]
mov r8, r14
mov rax, qword [rdi + 0x50]
mov edx, 9
mov rsi, qword [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsi + 0x138]
call r10
jmp 0x14022c0b4
mov rax, qword [r13 + 0x38]
mov qword [rsi + 0x78], rax
add qword [rsi + 0x80], rax
mov qword [r13 + 0x38], r9
jmp case.0x14022b3a8.89
mov r10, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r10 + 4]
mov edi, dword [r10 + 0x10]
mov rdx, qword [rax + rcx*8]
movsxd rax, dword [r10 + 0xc]
imul r15, rax, 0x38
mov rbx, qword [rdx + 0x30]
mov rsi, qword [rdx + 0x38]
add r15, r11
mov r14, qword [rbx + 0x30]
test r14, r14
jne 0x14022fb92
mov rcx, rsi
call fcn.14022a320
mov qword [rbx + 0x30], rax
mov r14, rax
test rax, rax
je 0x14022fcc0
mov word [rax + 0x1c], di
cmp byte [rbx + 0x58], 0
je 0x14022fbce
cmp byte [rbx + 0x59], 0
je 0x14022fbac
mov rax, qword [rbx + 0x10]
mov r8, qword [rax + 0x28]
add rax, 0x14
jmp 0x14022fbd6
mov rdx, qword [rbx + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov r8, qword [rax + 0x28]
add rax, 0x14
jmp 0x14022fbd6
mov rax, qword [rbx + 0x38]
lea r8, [rax + 0x10]
mov edx, dword [rax]
mov r9, r14
mov rcx, rsi
call fcn.140237d50
xor r9d, r9d
mov ecx, r9d
test edi, edi
jle 0x14022fc04
mov rax, qword [r14 + 8]
add rax, 0x14
test byte [rax], 1
jne 0x14022fc31
inc ecx
add rax, 0x38
cmp ecx, edi
jl 0x14022fbf5
mov rdx, qword [r15 + 8]
mov r8, r14
mov ecx, dword [r15 + 0x10]
call fcn.140237450
xor r9d, r9d
mov dword [rsp + 0x40], r9d
mov r10d, r9d
test eax, eax
je 0x14022f86c
mov r14, qword [rsp + 0x58]
jmp 0x14022cfee
mov r14, qword [rsp + 0x58]
mov r10d, r9d
mov dword [rsp + 0x40], r9d
jmp 0x14022cfee
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rbx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rbx, r11
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
cmp byte [rax + 0x58], 0
je 0x14022fc9f
cmp byte [rax + 0x59], 0
je 0x14022fc7d
mov rax, qword [rax + 0x10]
mov rsi, qword [rax + 0x28]
add rax, 0x14
jmp 0x14022fca7
mov rdx, qword [rax + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov rsi, qword [rax + 0x28]
add rax, 0x14
jmp 0x14022fca7
mov rax, qword [rax + 0x38]
lea rsi, [rax + 0x10]
movsxd rdi, dword [rax]
cmp dword [rbx + 0x20], edi
jge 0x14022fcd5
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.140236120
test eax, eax
je 0x14022fce2
mov rsi, qword [rsp + 0x70]
mov r10d, 7
mov dword [rsp + 0x40], r10d
jmp 0x14022d2ee
mov rax, qword [rbx + 0x28]
mov qword [rbx + 8], rax
and word [rbx + 0x14], 0x2d
mov dword [rbx + 0x10], edi
mov eax, 0xf250
and word [rbx + 0x14], ax
mov r8, rdi
or word [rbx + 0x14], 0x10
mov rdx, rsi
mov rcx, qword [rbx + 8]
call fcn.140263720
mov rax, qword [rsp + 0x48]
xor r9d, r9d
mov rsi, qword [rsp + 0x70]
mov r10d, r9d
mov dword [rsp + 0x40], r9d
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x20], r9d
jmp 0x14022d69c
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x14022fd55
mov rcx, rbx
call fcn.1401db030
mov rbx, rax
jmp 0x14022fd5e
mov eax, 4
mov word [rbx + 0x14], ax
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + 0x30]
mov rcx, rdi
call fcn.1401ce0f0
mov edx, dword [rdi + 0x40]
cmp edx, dword [rsi + 0x88]
ja 0x1402336b7
mov r8, rbx
mov rcx, rdi
call fcn.1402360c0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2ee
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 0xc], eax
jne 0x14022fe52
movzx eax, word [rbx + 0x14]
bt ax, 0xe
jae 0x14022fe52
test al, 0x12
je 0x14022fdfd
bt ax, 0xa
jae 0x14022fddd
mov rcx, rbx
call fcn.140235e90
test eax, eax
jne 0x14022bf30
cmp dword [rbx + 0x20], 0
je 0x14022fded
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x14022fdfd
mov rcx, rbx
call fcn.14024c040
test eax, eax
jne 0x14022bf30
mov r10d, dword [rsp + 0x40]
mov eax, 0xbfff
and word [rbx + 0x14], ax
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov edx, 1
mov r14, qword [rsp + 0x58]
mov r11, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x70]
movzx r12d, byte [rsp + 0x50]
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x58]
xor r9d, r9d
mov r11, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x70]
mov edx, 1
movzx r12d, byte [rsp + 0x50]
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
jmp 0x14022fe52
mov r15, qword [rsp + 0x48]
jmp 0x14022fe55
mov r15, qword [rsp + 0x48]
jmp 0x14022fe5a
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [r13 + 0x68]
test word [rdi + 0x14], ax
je 0x14022febe
mov rcx, rdi
call fcn.1401db030
xor r9d, r9d
mov rdi, rax
lea edx, [r9 + 1]
jmp 0x14022fec7
mov eax, 4
mov word [rdi + 0x14], ax
movsxd rcx, dword [rbx + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x14022fef6
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x54]
mov word [rdi + 0x14], dx
jmp case.0x14022b3a8.89
cmp byte [rbx + 3], 0
je 0x14022ff1b
mov rax, qword [rbx + 0x50]
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov qword [rbp - 0x30], rax
mov qword [rdi], rax
jmp 0x14022b568
cmp byte [rbx], 2
mov rcx, qword [rbx + 0x30]
jne 0x14022ff6b
mov rbx, qword [rcx]
lea rdx, [rbp - 0x30]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r13
mov r12d, eax
mov dword [rsp + 0x40], eax
call fcn.140239a40
mov r10d, r12d
test r12d, r12d
jne 0x14022d2ee
mov rax, qword [rbp - 0x30]
movzx r12d, byte [rsp + 0x50]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov qword [rdi], rax
jmp 0x14022b568
cmp byte [rcx], 0
je 0x14022ff8c
mov rcx, rbx
call fcn.140235130
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2ee
xor r9d, r9d
jmp 0x14022ff94
mov r10d, r9d
mov dword [rsp + 0x40], r9d
cmp byte [rbx + 2], 0
je 0x14022ffb7
mov r15, qword [rsp + 0x48]
mov edx, 1
mov r11, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x54]
mov word [rdi + 0x14], dx
jmp case.0x14022b3a8.89
mov rbx, qword [rbx + 0x30]
mov rcx, rbx
call fcn.1401ce0f0
mov rax, qword [rbx + 0x30]
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov qword [rbp - 0x30], rax
mov qword [rdi], rax
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rax, qword [rax + rdx*8]
test rax, rax
jne 0x14023002a
mov r9b, 3
lea r8d, [rax + 1]
mov rcx, r13
call fcn.1401b1f60
test rax, rax
je 0x14022bf35
xor r9d, r9d
lea rcx, [0x14031bb44]
mov dword [rax + 0x24], r9d
mov byte [rax + 4], 1
or dword [rax + 8], 8
mov qword [rax + 0x30], rcx
mov byte [rax + 2], 1
mov dword [rax + 0x20], r9d
cmp byte [rax], 0
jne 0x140230333
mov rcx, qword [rax + 0x30]
call fcn.1401efb50
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15, qword [rsp + 0x48]
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov eax, r9d
mov dword [rbp - 0x70], eax
mov rcx, qword [rdi + 0x30]
cmp bl, 0x89
jne 0x140230114
mov dword [rdi + 0x24], 0xffffffff
cmp byte [rcx], 0
je 0x140230100
lea rdx, [rbp - 0x70]
call fcn.1401b7b90
mov r10d, eax
mov dword [rsp + 0x40], eax
mov eax, dword [rbp - 0x70]
xor r9d, r9d
mov byte [rdi + 2], al
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], r9d
test r10d, r10d
jne 0x1402336db
lea edx, [r10 + 1]
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 8], 0
jle 0x140230338
test eax, eax
jne 0x14022cff3
mov r11, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
mov rsi, qword [rsp + 0x70]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
mov edx, 1
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
cmp byte [rcx], 0
jne 0x140230088
test byte [rcx + 1], 8
je 0x140230088
mov byte [rdi + 2], al
mov r10d, r9d
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], r9d
mov dword [rsp + 0x40], r9d
jmp 0x1402300b6
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x30]
mov rcx, rbx
call fcn.1401d7ae0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x1402301d5
xor eax, eax
mov rcx, rbx
mov dword [rbp - 0x58], eax
call fcn.1401d7850
mov r10d, eax
mov dword [rsp + 0x40], eax
mov edx, dword [rbp - 0x58]
mov r11d, r10d
mov dword [rbp - 0x58], edx
test r10d, r10d
jne 0x14022d2f3
mov dword [rsp + 0x40], r10d
test edx, edx
jne 0x14023297b
mov rcx, rbx
call fcn.1401f2ac0
test rax, rax
js 0x1402301f7
mov rcx, rax
call fcn.14020fb50
mov r15, qword [rsp + 0x48]
movsx ecx, ax
cmp ecx, dword [r15 + 0xc]
jge 0x1402301fc
mov edx, 1
mov dword [rsp + 0x40], r11d
mov dword [rbp - 0x58], edx
mov r10d, r11d
xor r9d, r9d
jmp 0x14022cff8
cmp eax, 0x10
jne 0x14023017b
mov r15, qword [rsp + 0x48]
xor r9d, r9d
mov edx, 1
mov dword [rsp + 0x40], r9d
mov dword [rbp - 0x58], edx
mov r10d, r9d
jmp 0x14022cff8
mov r15, qword [rsp + 0x48]
mov eax, dword [rbp - 0x58]
mov r10d, r11d
mov dword [rsp + 0x40], r11d
mov r11, qword [rsp + 0x60]
mov dword [rbp - 0x58], eax
jmp 0x14022b568
inc dword [r13 + 0xdc]
mov rax, qword [rsp + 0x48]
mov edi, edx
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi], 1
mov rbx, qword [rsi + 0x30]
jne 0x1402302a3
cmp byte [rbx + 0x58], 0
mov r12d, r9d
mov dword [rsp + 0x40], r9d
jne 0x14023026f
cmp qword [rbx + 0x38], 0
lea rdx, [rbx + 0x38]
je 0x140230268
lea rcx, [rbx + 0x60]
mov edi, r9d
call fcn.14024ec80
mov r12d, eax
mov dword [rsp + 0x40], eax
xor r9d, r9d
jmp 0x1402302d4
mov edi, 1
jmp 0x1402302d4
mov rcx, rbx
call fcn.14024dbc0
mov edx, eax
mov rcx, rbx
call fcn.14024dd30
mov dword [rsp + 0x40], eax
mov r12d, eax
test eax, eax
jne 0x140230263
mov rcx, rbx
call fcn.14024e9b0
xor r9d, r9d
mov dword [rsp + 0x40], eax
mov edi, r9d
mov r12d, eax
jmp 0x1402302d4
mov rcx, rbx
call fcn.1401d7ae0
mov dword [rsp + 0x40], eax
mov r12d, eax
test eax, eax
jne 0x140230309
xor eax, eax
mov rcx, rbx
mov edi, eax
call fcn.1401d7850
mov r12d, eax
mov dword [rsp + 0x40], eax
xor r9d, r9d
mov byte [rsi + 3], 0
mov dword [rsi + 0x20], r9d
mov r10d, dword [rsp + 0x40]
test r10d, r10d
jne 0x140233429
mov r15, qword [rsp + 0x48]
mov byte [rsi + 2], dil
cmp dword [r15 + 8], r10d
jle 0x14023031e
test edi, edi
jne 0x14022cff3
mov rsi, qword [rsp + 0x70]
movzx r12d, byte [rsp + 0x50]
jmp 0x14022d6a1
cmp eax, 0x10
jne 0x1402302c9
xor r9d, r9d
lea edi, [rax - 0xf]
mov r12d, r9d
mov dword [rsp + 0x40], r9d
jmp 0x1402302cc
mov rsi, qword [rsp + 0x70]
movzx r12d, byte [rsp + 0x50]
mov r10d, dword [rsp + 0x40]
jmp 0x14022d6a1
mov r15, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x40]
jmp 0x14022d6a1
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rbx, qword [rdi + 0x30]
cmp byte [rbx + 0x58], 0
je 0x1402303d7
cmp byte [rbx + 0x59], 0
je 0x14023039f
mov rcx, qword [rbx + 0x10]
call fcn.14024cdb0
xor r9d, r9d
mov dword [rsp + 0x40], eax
mov r12d, eax
test eax, eax
jne 0x14023040d
mov rax, qword [rbx + 0x10]
cmp qword [rax + 0x18], r9
jne 0x14023040d
mov r12d, 0x65
mov dword [rsp + 0x40], r12d
mov r10d, r12d
jmp 0x14023049e
mov rcx, qword [rbx + 0x18]
lea rdx, [rbp - 0x70]
mov dword [rbp - 0x70], r9d
call fcn.14024c740
xor r9d, r9d
mov dword [rsp + 0x40], eax
mov r12d, eax
test eax, eax
jne 0x14023040d
cmp dword [rbp - 0x70], r9d
je 0x14023040d
mov r12d, 0x65
mov dword [rsp + 0x40], r12d
mov r10d, r12d
jmp 0x14023049e
mov rdx, qword [rbx + 0x38]
mov rax, qword [rdx + 8]
mov qword [rbx + 0x38], rax
mov qword [rdx + 8], r9
cmp qword [rbx + 0x40], 0
jne 0x1402303f9
mov rcx, rsi
call fcn.14024e8b0
xor r9d, r9d
cmp qword [rbx + 0x38], 0
mov r12d, 0x65
cmovne r12d, r9d
mov dword [rsp + 0x40], r12d
mov r10d, dword [rsp + 0x40]
jmp 0x14023049e
mov rax, qword [r13 + 0x78]
mov rbx, qword [rsp + 0x48]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rdi + 0x30]
and byte [rcx + 1], 0xf1
mov word [rcx + 0x46], r9w
cmp byte [rcx], 0
jne 0x140230465
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x140230465
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], 0
je 0x140230465
dec dx
mov dword [rsp + 0x40], r9d
mov word [rcx + 0x56], dx
mov r12d, r9d
mov dword [rdi + 0x20], r9d
jmp 0x1402304ac
call fcn.1401b8660
mov r10d, eax
mov dword [rsp + 0x40], eax
xor r9d, r9d
jmp 0x1402304a3
mov r10, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r10 + 4]
mov edx, dword [r10 + 0xc]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rdi + 0x30]
call fcn.1401f1f20
mov r10d, eax
mov dword [rsp + 0x40], eax
xor r9d, r9d
mov rbx, qword [rsp + 0x48]
mov dword [rdi + 0x20], r9d
test r10d, r10d
jne 0x1402304c1
mov byte [rdi + 2], 0
movzx eax, word [rbx + 2]
inc dword [r13 + rax*4 + 0xd4]
jmp 0x140232b74
cmp r10d, 0x65
jne 0x14022d2ee
mov r12d, r9d
mov dword [rsp + 0x40], r9d
mov byte [rdi + 2], 1
movzx r12d, byte [rsp + 0x50]
mov eax, dword [rsi + 0x198]
mov rdi, qword [rsp + 0x78]
test eax, eax
jne 0x1402339e8
mov r14, qword [rsp + 0x68]
cmp rdi, r14
jb 0x140232f9c
nop
mov rdx, qword [rsi + 0x210]
test rdx, rdx
je 0x140232f9c
mov eax, dword [rsi + 0x220]
mov rcx, qword [rsi + 0x218]
add r14, rax
mov qword [rsp + 0x68], r14
call rdx
test eax, eax
jne 0x14023381c
cmp rdi, r14
jae 0x140230500
jmp 0x14022c0b4
mov r10, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r10 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r10 + 8]
imul rbx, rax, 0x38
add rbx, r11
test byte [r10 + 2], 1
je 0x140230560
inc qword [r13 + 0x38]
mov eax, 0x400
test word [rbx + 0x14], ax
je 0x14023058f
mov rcx, rbx
call fcn.140235e90
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2ee
mov r10, qword [rsp + 0x48]
xor r9d, r9d
mov r11, qword [rsp + 0x60]
movsxd rax, dword [rbx + 0x10]
mov qword [rbp + 0x2a0], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x298], rax
movsxd rax, dword [r10 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x2b0], rcx
movzx eax, word [r10 + 0x10]
mov word [rbp + 0x2b8], ax
movzx r8d, word [r10 + 2]
test r8b, 0x10
je 0x1402305d2
mov r9d, dword [rdi + 0x24]
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x298]
and r8d, 0x8a
call fcn.1401f1340
xor r9d, r9d
mov dword [rsp + 0x40], eax
mov dword [rdi + 0x20], r9d
mov r10d, eax
test eax, eax
jne 0x14022d2ee
jmp 0x14022d69c
mov r10, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r10 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r10 + 8]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x140230642
mov rcx, rbx
call fcn.140235e90
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2ee
mov rdx, rbx
mov rcx, rdi
call fcn.140238bc0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2ee
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov rax, qword [r13 + 0x78]
lea r8, [rbp - 0x34]
mov r10, qword [rsp + 0x48]
lea rdx, [rbp + 0x270]
movsxd rcx, dword [r10 + 4]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi + 0x38]
mov rbx, qword [rdi + 0x30]
mov qword [rbp + 0x270], rax
movzx eax, word [r10 + 0xc]
mov word [rbp + 0x28c], ax
mov byte [rbp + 0x28e], 0
movsxd rax, dword [r10 + 8]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x278], rcx
mov rcx, rbx
call fcn.1401f0e90
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2ee
cmp dword [rbp - 0x34], eax
jne 0x140230705
mov dl, 4
mov rcx, rbx
call fcn.1401f07f0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2ee
mov r15, qword [rsp + 0x48]
xor r9d, r9d
mov dword [rdi + 0x20], r9d
mov dword [rdi + 0x24], r9d
jmp 0x14022d6a1
mov r15, qword [rsp + 0x48]
cmp word [r15 + 2], 0
je 0x140230724
mov eax, dword [rsi + 0x30]
and eax, 0x10000001
cmp rax, 1
jne 0x1402336e5
xor r9d, r9d
mov dword [rdi + 0x20], r9d
mov dword [rdi + 0x24], r9d
jmp 0x14022d6a1
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x14023076d
mov rcx, rbx
call fcn.140235130
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2f3
xor r9d, r9d
lea edx, [rax + 1]
jmp 0x140230775
mov r10d, r9d
mov dword [rsp + 0x40], r9d
cmp byte [rbx + 2], 0
jne 0x14023083e
mov rdx, qword [rbx + 0x30]
lea r8, [rbp - 0x60]
mov rcx, rsi
mov qword [rbp - 0x60], r9
call fcn.140235190
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2f3
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x8d
jne 0x1402307e5
movsxd rcx, dword [rax + 0xc]
xor r9d, r9d
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp - 0x60]
mov byte [rdx + 2], r10b
mov qword [rdx + 0x50], rax
mov rax, qword [rsp + 0x48]
mov byte [rdx + 3], 1
mov dword [rdx + 0x20], r9d
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x28], rbx
jmp 0x14022d69c
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], ax
je 0x14023081f
call fcn.1401db030
mov r10d, dword [rsp + 0x40]
mov rcx, rax
mov rax, qword [rbp - 0x60]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov qword [rcx], rax
jmp 0x14022b568
mov r15, qword [rsp + 0x48]
mov eax, 4
mov r11, qword [rsp + 0x60]
mov word [rcx + 0x14], ax
mov rax, qword [rbp - 0x60]
mov qword [rcx], rax
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x140230877
call fcn.14024c0f0
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15, qword [rsp + 0x48]
jmp 0x14022b568
mov r15, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x54]
mov word [rcx + 0x14], dx
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x14022bdec
call fcn.140234670
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2f3
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
cmp bl, 0x2a
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r10 + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x38]
mov rbx, qword [rdx + 0x30]
mov qword [rbp + 0x248], rax
movzx eax, word [r10 + 0x10]
mov word [rbp + 0x264], ax
sbb al, al
mov byte [rbp + 0x266], al
movsxd rax, dword [r10 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x250], rcx
mov rcx, rbx
call fcn.1401ce0f0
mov r10d, dword [rbx + 0x40]
lea eax, [r10 - 1]
cmp eax, 0x7ffffffe
ja 0x140233728
mov qword [rbp + 0x100], rsi
xor r8d, r8d
mov word [rbp + 0xfc], r8w
mov dword [rbp + 0x108], r8d
mov rax, qword [rbx + 0x88]
movzx ecx, word [rbx + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rbx + 0x38]
cmp ecx, edx
jle 0x140230962
test edx, edx
mov ecx, edx
cmovs ecx, r8d
mov rdx, qword [rbx + 0x38]
mov qword [rbp + 0xf0], rdx
cmp r10d, ecx
ja 0x140230995
mov eax, 0x4010
mov dword [rbp + 0xf8], r10d
mov r12d, r8d
mov word [rbp + 0xfc], ax
movzx r12d, byte [rsp + 0x50]
mov dword [rsp + 0x40], r8d
jmp 0x1402309c6
lea r9, [rbp + 0xe8]
mov r8d, r10d
xor edx, edx
mov rcx, rbx
call fcn.140235fb0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2f3
mov r10d, dword [rbp + 0xf8]
mov rdx, qword [rbp + 0xf0]
xor r9d, r9d
lea r8, [rbp + 0x248]
mov ecx, r10d
call fcn.140237450
cmp dword [rbp + 0x108], 0
mov ebx, eax
je 0x1402309ef
lea rcx, [rbp + 0xe8]
call fcn.14024c0a0
mov r15, qword [rsp + 0x48]
test byte [r15], 1
jne 0x1402309fe
neg ebx
jmp 0x140230a00
inc ebx
mov r10d, dword [rsp + 0x40]
test ebx, ebx
jg 0x140232980
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [r13 + 0x68]
test word [rdi + 0x14], ax
je 0x140230a4b
mov rcx, rdi
call fcn.1401db030
mov rcx, qword [rsp + 0x48]
mov rdi, rax
xor r9d, r9d
mov edx, 1
mov word [rdi + 0x14], dx
mov eax, dword [rsi + 0xe8]
inc eax
cmp dword [rsi + 0xdc], eax
jg 0x14023373e
mov rax, qword [rsp + 0x70]
movsxd r15, dword [rcx + 0xc]
mov esi, dword [rcx + 4]
mov r14, r15
shl r14, 5
mov rax, qword [rax + 0x20]
mov dword [rbp - 0x70], r9d
mov rbx, qword [r14 + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x140230a9a
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x140230a9a
mov rcx, rbx
call fcn.1401b7c60
lea r8, [rbp - 0x70]
mov edx, esi
mov rcx, rbx
call fcn.1401b73c0
cmp byte [rbx + 0x11], 0
mov r10d, eax
mov dword [rsp + 0x40], eax
je 0x140230ac8
sub dword [rbx + 0x14], 1
jne 0x140230ac8
mov rcx, rbx
call fcn.140248600
mov r10d, dword [rsp + 0x40]
movsxd rdx, dword [rbp - 0x70]
mov eax, 4
mov word [rdi + 0x14], ax
mov qword [rdi], rdx
test r10d, r10d
jne 0x140233429
mov rsi, qword [rsp + 0x70]
test edx, edx
je 0x140232fa1
mov rax, qword [rsp + 0x48]
mov r9, qword [rsi + 0x20]
mov r8d, dword [rax + 4]
mov rcx, qword [r14 + r9 + 0x18]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140230b2a
nop dword [rax]
mov rcx, qword [rax + 0x10]
cmp dword [rcx + 0x28], edx
jne 0x140230b1d
mov dword [rcx + 0x28], r8d
mov rax, qword [rax]
test rax, rax
jne 0x140230b10
mov rcx, qword [r14 + r9 + 0x18]
mov rax, qword [rcx + 0x28]
test rax, rax
je 0x140230b48
mov rcx, qword [rax + 0x10]
cmp dword [rcx + 0x58], edx
jne 0x140230b40
mov dword [rcx + 0x58], r8d
mov rax, qword [rax]
test rax, rax
jne 0x140230b33
mov r11, qword [rsp + 0x60]
lea eax, [r15 + 1]
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x58]
mov byte [rbp - 0x64], al
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
lea r8, [rbp - 0x28]
mov qword [rbp - 0x28], r9
mov rcx, qword [rsi + 0x20]
movsxd rax, dword [r10 + 8]
mov edx, dword [r10 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1401efc10
mov r15, qword [rsp + 0x48]
mov r10d, eax
mov r11, qword [rsp + 0x60]
mov dword [rsp + 0x40], eax
cmp dword [r15 + 0xc], 0
je 0x140230bc1
mov rax, qword [rbp - 0x28]
add qword [r13 + 0x38], rax
mov rax, r15
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x140230bc1
imul rcx, rax, 0x38
mov rax, qword [rbp - 0x28]
add qword [rcx + r11], rax
test r10d, r10d
jne 0x14022d2f3
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x140230c05
mov rdx, qword [rcx + 0x30]
mov rcx, rsi
call fcn.140238780
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15, qword [rsp + 0x48]
jmp 0x14022b568
mov rcx, qword [rcx + 0x30]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.1401efc10
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2f3
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [r13 + 0x68]
test word [rdi + 0x14], ax
je 0x140230c62
mov rcx, rdi
call fcn.1401db030
mov rdi, rax
xor r9d, r9d
jmp 0x140230c6b
mov eax, 4
mov word [rdi + 0x14], ax
movsxd rcx, dword [rbx + 4]
mov rax, qword [rsp + 0x70]
mov esi, dword [rbx + 0xc]
shl rcx, 5
mov dword [rbp - 0x70], r9d
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x140230c9f
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x140230c9f
mov rcx, rbx
call fcn.1401b7c60
mov r8d, esi
lea rdx, [rbp - 0x70]
mov rcx, rbx
call fcn.1401b6f10
cmp byte [rbx + 0x11], 0
mov r10d, eax
mov dword [rsp + 0x40], eax
je 0x140230cce
sub dword [rbx + 0x14], 1
jne 0x140230cce
mov rcx, rbx
call fcn.140248600
mov r10d, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
test r10d, r10d
jne 0x14022d2ee
mov eax, dword [rbp - 0x70]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov qword [rdi], rax
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
xor r8d, r8d
inc byte [rsi + 0x70]
mov rcx, rsi
mov qword [rsp + 0x20], r9
xor r9d, r9d
mov rdx, qword [rax + 0x10]
call fcn.1401a39e0
dec byte [rsi + 0x70]
mov r10d, eax
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14022d2f3
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
cmp qword [r10 + 0x10], 0
movsxd rbx, dword [r10 + 4]
jne 0x140230d8d
mov rcx, qword [rsi + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.14021dbe0
mov rax, qword [rsp + 0x48]
lea r8, [r13 + 0xa8]
and dword [rsi + 0x2c], 0xffffffef
mov edx, ebx
mov rcx, rsi
movzx r9d, word [rax + 2]
call fcn.14020bd90
or dword [rsi + 0x2c], 1
mov r10d, eax
and dword [r13 + 0xc8], 0xfffffffc
mov dword [rsp + 0x40], eax
jmp 0x140230e8c
mov dword [rbp + 0x40], r9d
lea rax, [r13 + 0xa8]
mov qword [rbp + 0x30], rax
lea r9, str.sqlite_master
mov qword [rbp + 0x28], rsi
mov rdx, rbx
mov dword [rbp + 0x38], ebx
mov rax, qword [rsi + 0x20]
shl rdx, 5
mov rcx, qword [rdx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov dword [rbp + 0x48], ecx
mov rcx, rsi
mov r8, qword [rsi + 0x20]
mov rax, qword [r10 + 0x10]
mov qword [rsp + 0x20], rax
mov r8, qword [rdx + r8]
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
call fcn.14020fe20
mov rbx, rax
mov rcx, rsi
test rax, rax
je 0x140233756
xor eax, eax
mov byte [rsi + 0xc5], 1
lea r9, [rbp + 0x28]
mov dword [rbp + 0x3c], eax
lea r8, [fcn.14020ba90]
mov dword [rbp + 0x44], eax
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.1401a39e0
mov dword [rsp + 0x40], eax
mov r12d, eax
test eax, eax
jne 0x140230e6f
mov r12d, dword [rbp + 0x3c]
mov dword [rsp + 0x40], r12d
test r12d, r12d
jne 0x140230e6f
cmp dword [rbp + 0x44], r12d
jne 0x140230e6f
lea rax, [0x1402994d4]
mov r15d, 0xb
mov ecx, r15d
mov qword [rsp + 0x20], rax
mov r9d, 0x17d50
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.1401af710
mov r12d, r15d
mov dword [rsp + 0x40], r15d
mov rdx, rbx
mov rcx, rsi
call fcn.1401f9570
mov r10d, dword [rsp + 0x40]
movzx r12d, byte [rsp + 0x50]
mov byte [rsi + 0xc5], 0
test r10d, r10d
je 0x14022b97b
mov rcx, rsi
call fcn.14021c0a0
mov r10d, dword [rsp + 0x40]
mov rbx, qword [rsp + 0x68]
cmp r10d, 7
je 0x14022bf3a
mov r14, qword [rsp + 0x48]
xor r12d, r12d
mov dword [rsp + 0x40], r10d
lea eax, [r12 + 0xb]
jmp 0x14022d305
mov rax, qword [rsp + 0x48]
mov rcx, rsi
mov edx, dword [rax + 4]
call fcn.1401ed350
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2f3
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rdx, qword [rax + 0x10]
shl rcx, 5
add rcx, qword [rsi + 0x20]
mov rcx, qword [rcx + 0x18]
add rcx, 8
call fcn.14020afd0
test rax, rax
je 0x140230f3f
cmp qword [rsi + 0x308], 0
jne 0x140230f34
mov ecx, 0xffffffff
add dword [rax + 0x2c], ecx
jne 0x140230f3f
mov rdx, rax
mov rcx, rsi
call fcn.1401c1440
or dword [rsi + 0x2c], 1
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
xor r8d, r8d
mov rax, qword [rsi + 0x20]
movsxd rcx, dword [r10 + 4]
mov rdx, qword [r10 + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
add rcx, 0x20
call fcn.14020afd0
mov rdx, rax
test rax, rax
je 0x140230f3f
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
cmp rcx, rdx
jne 0x140230fba
mov rcx, qword [rdx + 0x28]
mov qword [rax + 0x10], rcx
mov rcx, rsi
call fcn.140206730
or dword [rsi + 0x2c], 1
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15, qword [rsp + 0x48]
jmp 0x14022b568
test rcx, rcx
je 0x140230ff9
nop
mov rax, qword [rcx + 0x28]
cmp rax, rdx
je 0x140230ff1
mov rcx, rax
test rax, rax
jne 0x140230fc0
mov rcx, rsi
call fcn.140206730
or dword [rsi + 0x2c], 1
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15, qword [rsp + 0x48]
jmp 0x14022b568
mov rax, qword [rdx + 0x28]
mov qword [rcx + 0x28], rax
mov rcx, rsi
call fcn.140206730
or dword [rsi + 0x2c], 1
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15, qword [rsp + 0x48]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
xor r8d, r8d
mov rax, qword [rsi + 0x20]
movsxd rcx, dword [r10 + 4]
mov rdx, qword [r10 + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
add rcx, 0x38
call fcn.14020afd0
mov rbx, rax
test rax, rax
je 0x14022b976
mov rcx, qword [rax + 0x30]
cmp qword [rax + 0x28], rcx
jne 0x1402310bc
mov rdx, qword [rax + 8]
add rcx, 8
xor r8d, r8d
call fcn.1401c7c80
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x1402310bc
mov rax, qword [rdx + 0x58]
add rdx, 0x58
test rax, rax
je 0x1402310bc
nop dword [rax + rax]
cmp rax, rbx
je 0x1402310b5
lea rdx, [rax + 0x40]
mov rax, qword [rax + 0x40]
test rax, rax
jne 0x140231080
mov rdx, rbx
mov rcx, rsi
call fcn.1401fab40
or dword [rsi + 0x2c], 1
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15, qword [rsp + 0x48]
jmp 0x14022b568
mov rax, qword [rax + 0x40]
mov qword [rdx], rax
mov rdx, rbx
mov rcx, rsi
call fcn.1401fab40
or dword [rsi + 0x2c], 1
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15, qword [rsp + 0x48]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
lea r9, [rbp - 0x18]
mov rdx, qword [rsi + 0x20]
mov qword [rsp + 0x30], r9
lea r9, [rbp - 0x44]
mov qword [rsp + 0x28], r9
movsxd rax, dword [r10 + 0xc]
mov r8, qword [r10 + 0x10]
mov r9d, dword [r10 + 8]
add r8, 4
imul rdi, rax, 0x38
movsxd rax, dword [r10 + 4]
imul rbx, rax, 0x38
movzx eax, word [r10 + 2]
add rdi, r11
shl rax, 5
add rbx, r11
mov ecx, dword [rdi]
mov rdx, qword [rax + rdx + 8]
inc ecx
mov dword [rsp + 0x20], ecx
mov rcx, rsi
call fcn.1401f1880
mov r12d, eax
mov dword [rsp + 0x40], eax
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x140231156
mov rcx, rbx
call fcn.14024c0f0
jmp 0x14023115f
mov eax, 1
mov word [rbx + 0x14], ax
mov eax, dword [rbp - 0x44]
test eax, eax
je 0x140231199
test r12d, r12d
jne 0x140233760
mov rdx, qword [rbp - 0x18]
dec eax
movsxd rcx, eax
mov r9b, 1
sub qword [rdi], rcx
lea rax, [fcn.1401a5910]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov r8, 0xffffffffffffffff
call fcn.140236670
test byte [rbx + 0x14], 2
movzx r12d, byte [rsp + 0x50]
jne 0x1402311ae
mov byte [rbx + 0x16], r12b
jmp 0x1402304dd
cmp byte [rbx + 0x16], r12b
je 0x1402304dd
movzx edx, r12b
mov rcx, rbx
call fcn.140236a90
jmp 0x1402304dd
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 0x14], 0x10
jne 0x1402311fa
mov rcx, rbx
call fcn.140236560
test eax, eax
jne 0x14022bf30
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.14021cb60
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15, qword [rsp + 0x48]
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
movzx eax, word [rdi + 0x14]
test al, 0x10
je 0x1402312c4
mov rbx, qword [rdi + 8]
movzx eax, word [rbx + 0x32]
test al, 2
jne 0x140231264
test al, 1
jne 0x14023125c
mov rcx, qword [rbx + 0x10]
call fcn.1401e6ca0
mov qword [rbx + 0x10], rax
mov edx, 1
movzx eax, word [rbx + 0x32]
or ax, 3
mov word [rbx + 0x32], ax
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x1402312c0
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x140231285
mov rcx, rbx
call fcn.14021ca10
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsp + 0x60]
test word [rcx + 0x14], ax
je 0x1402312af
mov rdx, rdi
call fcn.14024d340
jmp 0x1402304dd
mov eax, 4
mov qword [rcx], rdi
mov word [rcx + 0x14], ax
jmp 0x1402304dd
movzx eax, word [rdi + 0x14]
mov ecx, 0x9000
test cx, ax
je 0x1402312db
mov rcx, rdi
call fcn.14024c0f0
jmp case.0x14022b3a8.9
mov word [rdi + 0x14], dx
jmp case.0x14022b3a8.9
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov edi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rsi, rax, 0x38
add rbx, r11
add rsi, r11
test byte [rbx + 0x14], 0x10
jne 0x140231318
mov rcx, rbx
call fcn.140236560
test eax, eax
jne 0x14022bf2b
test edi, edi
je 0x14023133a
mov r8, qword [rsi]
mov edx, edi
mov rcx, qword [rbx + 8]
call fcn.14021cbd0
test eax, eax
jne 0x140232976
test edi, edi
js 0x140231c73
mov rdx, qword [rsi]
mov rcx, qword [rbx + 8]
call fcn.14021cb60
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x48]
jmp 0x14022b568
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
mov r12, qword [rcx + 0x10]
imul r15, rax, 0x38
add r15, r11
cmp word [rcx + 2], 0
je 0x1402313a3
mov rax, qword [r13 + 0x108]
mov rcx, qword [r12 + 0x20]
test rax, rax
je 0x1402313a3
nop dword [rax + rax]
cmp qword [rax + 0x30], rcx
je 0x140233232
mov rax, qword [rax + 8]
test rax, rax
jne 0x140231390
mov eax, dword [r13 + 0x118]
cmp eax, dword [rsi + 0xb0]
jge 0x140233773
test byte [r15 + 0x14], 0x10
jne 0x14023150b
mov edx, dword [r12 + 0x10]
mov ecx, dword [r12 + 0xc]
add ecx, edx
test edx, edx
lea esi, [rcx + 1]
cmovne esi, ecx
lea eax, [rsi + 2]
imul ecx, eax, 7
mov eax, dword [r12 + 8]
add ecx, edx
add eax, 7
jns 0x1402313ea
add eax, 7
sar eax, 3
lea edi, [rax + rcx*8]
mov rcx, qword [rsp + 0x70]
movsxd rbx, edi
mov rdx, rbx
call fcn.1401f9700
mov r14, rax
test rax, rax
je 0x14022bf2b
mov r8, rbx
xor edx, edx
mov rcx, rax
call fcn.140264380
mov eax, 0x9000
test word [r15 + 0x14], ax
jne 0x14023142c
cmp dword [r15 + 0x20], 0
je 0x140231434
mov rcx, r15
call fcn.14024c0a0
mov rcx, qword [rsp + 0x48]
mov eax, 0x1010
sub rcx, qword [rsp + 0x58]
xor r9d, r9d
mov word [r15 + 0x14], ax
lea rax, [0x140234910]
mov qword [r15 + 8], r14
mov dword [r15 + 0x10], edi
mov qword [r15 + 0x30], rax
mov qword [r14], r13
mov dword [r14 + 0x58], esi
mov eax, dword [r12 + 0x10]
mov dword [r14 + 0x5c], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r14 + 0x4c], edx
mov rax, qword [r13 + 0x68]
mov qword [r14 + 0x18], rax
mov eax, dword [r13 + 0x24]
mov dword [r14 + 0x54], eax
mov rax, qword [r13 + 0x78]
mov qword [r14 + 0x20], rax
mov eax, dword [r13 + 0x28]
mov dword [r14 + 0x48], eax
mov rax, qword [r13 + 0x88]
mov qword [r14 + 0x10], rax
mov eax, dword [r13 + 0x90]
mov dword [r14 + 0x50], eax
mov rax, qword [r12 + 0x20]
mov qword [r14 + 0x30], rax
movsxd rax, esi
mov rsi, qword [rsp + 0x70]
add rax, 2
imul rcx, rax, 0x38
lea rax, [r14 + 0x70]
add rcx, r14
cmp rax, rcx
je 0x140231502
nop dword [rax + rax]
mov word [rax + 0x14], r9w
mov qword [rax + 0x18], rsi
add rax, 0x38
cmp rax, rcx
jne 0x1402314f0
mov eax, dword [r13 + 0x118]
jmp 0x14023150f
mov r14, qword [r15 + 8]
inc eax
lea rdx, [r14 + 0x70]
mov dword [r13 + 0x118], eax
mov rax, qword [r13 + 0x108]
mov qword [r14 + 8], rax
mov rax, qword [rsi + 0x38]
mov qword [r14 + 0x38], rax
mov rax, qword [r13 + 0x38]
mov qword [r14 + 0x60], rax
mov rax, qword [r13]
mov qword [rsp + 0x60], rdx
mov rcx, qword [rax + 0x78]
mov qword [r14 + 0x68], rcx
mov rax, qword [r13 + 0x128]
mov qword [r14 + 0x40], rax
mov qword [r13 + 0x128], r9
mov qword [r13 + 0x38], r9
mov qword [r13 + 0x108], r14
mov qword [r13 + 0x68], rdx
movsxd rcx, dword [r14 + 0x58]
mov dword [r13 + 0x24], ecx
movzx eax, word [r14 + 0x5c]
mov dword [r13 + 0x28], eax
imul rcx, rcx, 0x38
add rdx, rcx
mov qword [r13 + 0x78], rdx
movsxd rax, dword [r12 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [r14 + 0x28], rcx
mov eax, dword [r12 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call fcn.140264380
mov r14, qword [r12]
mov qword [r13 + 0x88], r14
mov eax, dword [r12 + 8]
mov qword [rsp + 0x58], r14
lea rcx, [r14 - 0x18]
mov dword [r13 + 0x90], eax
mov qword [rsp + 0x48], rcx
jmp 0x1402304d7
mov rax, qword [rsp + 0x48]
mov ebx, 0x9000
movsxd rax, dword [rax + 8]
imul r9, rax, 0x38
add r9, qword [r13 + 0x68]
test word [r9 + 0x14], bx
je 0x140231601
mov rcx, r9
call fcn.1401db030
mov r9, rax
jmp 0x14023160b
mov eax, 4
mov word [r9 + 0x14], ax
mov r8, qword [r13 + 0x108]
movsxd rax, dword [r8 + 0x4c]
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x10]
mov edx, dword [rax + rcx*8 + 4]
mov rax, qword [rsp + 0x48]
add edx, dword [rax + 4]
movsxd rax, edx
imul rcx, rax, 0x38
add rcx, qword [r8 + 0x18]
test word [r9 + 0x14], bx
je 0x140231657
mov rdx, rcx
mov r8d, 0x4000
mov rcx, r9
call fcn.14024aca0
mov r11, qword [rsp + 0x60]
jmp 0x14022b55e
movups xmm0, xmmword [rcx]
mov r10d, dword [rsp + 0x40]
mov eax, 0x2000
mov r15, qword [rsp + 0x48]
mov edx, 1
mov r11, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x54]
movups xmmword [r9], xmm0
movsd xmm1, qword [rcx + 0x10]
movsd qword [r9 + 0x10], xmm1
test word [rcx + 0x14], ax
lea rcx, [0x140000000]
jne 0x14022cc1d
mov eax, 0xcfff
and word [r9 + 0x14], ax
mov eax, 0x4000
or word [r9 + 0x14], ax
xor r9d, r9d
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x14022b377
mov eax, dword [rsi + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x48]
mov r15, rax
jae 0x1402316e3
movsxd rax, dword [rax + 8]
add qword [rsi + 0x300], rax
jmp case.0x14022b3a8.89
cmp dword [rax + 4], 0
lea rcx, [0x140000000]
movsxd rax, dword [rax + 8]
je 0x14023170d
add qword [rsi + 0x2f8], rax
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x14022b377
add qword [r13 + 0x50], rax
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x14022b377
cmp dword [r15 + 4], 0
je 0x14023174b
cmp qword [rsi + 0x2f8], 0
jne case.0x14022b3a8.89
cmp qword [rsi + 0x300], 0
je 0x14022cff8
jmp case.0x14022b3a8.89
cmp qword [r13 + 0x50], 0
jne case.0x14022b3a8.89
cmp qword [rsi + 0x300], 0
je 0x14022cff8
jmp case.0x14022b3a8.89
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x14023179f
mov rax, qword [rcx + 8]
test rax, rax
je 0x14023178c
nop
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140231780
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x1402317af
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
mov rcx, rdi
call fcn.1402362b0
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 8]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.1402362b0
mov rax, qword [rbx]
mov r10d, dword [rsp + 0x40]
cmp qword [rdi], rax
jge 0x14022b980
mov r11, qword [rsp + 0x60]
mov qword [rdi], rax
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r11]
test rdx, rdx
jle 0x14022b466
mov rax, r15
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r11], rdx
jmp 0x14022cff3
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rbx, r11
imul r8, rax, 0x38
add rdi, r11
mov eax, 0x9000
add r8, qword [r13 + 0x68]
test word [r8 + 0x14], ax
je 0x140231869
mov rcx, r8
call fcn.1401db030
mov r11, qword [rsp + 0x60]
mov r8, rax
xor r9d, r9d
jmp 0x140231873
mov eax, 4
mov word [r8 + 0x14], ax
mov rdx, qword [rbx]
test rdx, rdx
jle 0x1402318bc
mov rcx, qword [rdi]
test rcx, rcx
cmovle rcx, r9
test rcx, rcx
js 0x14023189c
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jl 0x1402318bc
mov r10d, dword [rsp + 0x40]
lea rax, [rcx + rdx]
mov r15, qword [rsp + 0x48]
mov edx, 1
mov qword [r8], rax
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
mov r10d, dword [rsp + 0x40]
mov rax, 0xffffffffffffffff
mov r15, qword [rsp + 0x48]
mov qword [r8], rax
mov r8d, dword [rsp + 0x54]
lea edx, [rax + 2]
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
test rax, rax
je 0x14022bdec
mov r15, qword [rsp + 0x48]
jle 0x14022cff8
dec rax
mov qword [rcx + r11], rax
jmp 0x14022cff8
mov rax, qword [rsp + 0x48]
movabs rbx, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
cmp rax, rbx
jle 0x140231935
dec rax
mov qword [rcx + r11], rax
mov r15, qword [rsp + 0x48]
test rax, rax
je 0x14022cff8
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
mov rcx, rsi
movzx ebx, word [rax + 2]
lea rdx, [rbx*8 + 0x68]
call fcn.1401f9700
mov r8, rax
test rax, rax
je 0x14022bf30
mov r10, qword [rsp + 0x48]
lea rcx, [rbx + 6]
lea rcx, [rax + rcx*8]
xor r9d, r9d
mov qword [rax + 0x10], r9
mov qword [rax], rcx
mov eax, 1
mov word [rcx + 0x14], ax
movabs rax, 0x2aaaaaaaaaaaaaab
mov qword [rcx + 0x18], rsi
mov dword [rcx + 0x20], r9d
mov rcx, qword [r10 + 0x10]
mov qword [r8 + 8], rcx
mov rcx, r10
sub rcx, r14
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r8 + 0x20], edx
mov qword [r8 + 0x18], r13
mov byte [r8 + 0x29], r9b
mov dword [r8 + 0x24], r9d
mov byte [r8 + 0x28], r12b
mov byte [r8 + 0x2a], bl
mov byte [r10 + 1], 0xf1
mov qword [r10 + 0x10], r8
mov byte [r10], 0xa3
jmp 0x1402319ea
mov r10, qword [rsp + 0x48]
mov rbx, qword [r10 + 0x10]
movsxd rax, dword [r10 + 0xc]
mov rdi, qword [rsp + 0x60]
imul r10, rax, 0x38
add r10, rdi
cmp qword [rbx + 0x10], r10
je 0x140231a55
mov qword [rbx + 0x10], r10
movzx eax, byte [rbx + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x140231a55
mov rsi, qword [rsp + 0x48]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop word [rax + rax]
mov eax, dword [rsi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, rdi
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x140231a30
mov rsi, qword [rsp + 0x70]
inc dword [r10 + 0x10]
lea r8, [rbx + 0x30]
mov r15, qword [rsp + 0x48]
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
cmp dword [r15 + 4], 0
je 0x140231a79
call qword [rax + 0x30]
jmp 0x140231a7c
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x14022c6ee
jle 0x140231ae9
mov rcx, qword [rbx]
test rcx, rcx
jne 0x140231a95
xor eax, eax
jmp 0x140231ac8
movzx edx, word [rcx + 0x14]
mov r8d, 0x202
movzx eax, dx
and ax, r8w
cmp ax, r8w
jne 0x140231ab8
cmp byte [rcx + 0x16], 1
jne 0x140231ab8
mov rax, qword [rcx + 8]
jmp 0x140231ac8
test dl, 1
je 0x140231ac1
xor eax, eax
jmp 0x140231ac8
mov dl, 1
call fcn.14024a850
mov r8, rax
lea rdx, [0x1402945d0]
mov rcx, r13
call fcn.14022b200
mov r12d, dword [rbx + 0x24]
mov dword [rsp + 0x40], r12d
movzx r12d, byte [rsp + 0x50]
cmp byte [rbx + 0x29], 0
je 0x140231b2d
mov rax, r15
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x140231b29
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, rdi
test word [rcx + 0x14], ax
je 0x140231b18
mov edx, 1
call fcn.14024d340
jmp 0x140231b29
mov eax, 1
mov qword [rcx], rax
mov eax, 4
mov word [rcx + 0x14], ax
mov byte [rbx + 0x29], 0
mov rax, qword [rbx]
mov ecx, 0x9000
test word [rax + 0x14], cx
jne 0x140231b41
cmp dword [rax + 0x20], 0
je 0x140231b4c
mov rcx, rax
call fcn.14024c0a0
mov rax, qword [rbx]
mov r10d, dword [rsp + 0x40]
xor r9d, r9d
mov edx, 1
mov word [rax + 0x14], dx
mov dword [rbx + 0x24], r9d
test r10d, r10d
jne 0x14022d2ee
mov r8d, dword [rsp + 0x54]
mov r11, rdi
jmp case.0x14022b3a8.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov rsi, qword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, r11
test eax, eax
je 0x140231c2d
imul rdi, rax, 0x38
xorps xmm0, xmm0
movups xmmword [rbp + 0x150], xmm0
movups xmmword [rbp + 0x160], xmm0
xor eax, eax
mov qword [rbp + 0x180], rax
add rdi, r11
mov eax, 0x9000
movups xmmword [rbp + 0x170], xmm0
test word [rdi + 0x14], ax
je 0x140231bd4
mov rcx, rdi
call fcn.14024c0f0
jmp 0x140231bd8
mov word [rdi + 0x14], dx
mov qword [rbp + 0x150], rdi
mov qword [rbp + 0x160], rbx
mov qword [rbp + 0x158], rsi
mov rax, qword [rbx + 0x18]
movzx ecx, byte [rax + 0x64]
mov byte [rbp + 0x178], cl
lea rcx, [rbp + 0x150]
call qword [rsi + 0x28]
mov rax, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rbp + 0x174]
mov rdi, qword [rsp + 0x78]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
mov dword [rsp + 0x40], r10d
add rbx, r11
jmp 0x140231c44
mov rdx, rsi
mov rcx, rbx
call fcn.140235ef0
mov r11, qword [rsp + 0x60]
mov r10d, eax
mov dword [rsp + 0x40], eax
test r10d, r10d
jne 0x140233790
test byte [rbx + 0x14], 2
jne 0x140231c61
mov rsi, qword [rsp + 0x70]
mov byte [rbx + 0x16], r12b
jmp 0x14022b563
cmp byte [rbx + 0x16], r12b
je 0x140231c78
movzx edx, r12b
mov rcx, rbx
call fcn.140236a90
mov r10d, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov rbx, qword [rsp + 0x48]
lea rax, [rbp + 0x2d0]
mov dword [rbp + 0x2c8], r9d
mov rcx, rsi
lea r9, [rbp + 0x2cc]
mov dword [rbp + 0x2d0], 0xffffffff
mov dword [rbp + 0x2cc], 0xffffffff
mov r8d, dword [rbx + 8]
mov edx, dword [rbx + 4]
mov qword [rsp + 0x20], rax
call fcn.1401f3d40
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
je 0x140231cfc
cmp eax, 5
jne 0x14023347b
xor eax, eax
mov r12d, eax
mov dword [rsp + 0x40], eax
movzx r12d, byte [rsp + 0x50]
mov eax, 1
mov dword [rbp + 0x2c8], eax
movsxd rax, dword [rbx + 0xc]
mov ecx, 0x9000
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
xor eax, eax
mov edi, eax
lea r14d, [rax + 4]
nop word [rax + rax]
movsxd rax, dword [rbp + rdi*4 + 0x2c8]
test word [rbx + 0x14], cx
je 0x140231d40
mov rdx, rax
mov rcx, rbx
call fcn.14024d340
mov ecx, 0x9000
jmp 0x140231d48
mov qword [rbx], rax
mov word [rbx + 0x14], r14w
inc rdi
add rbx, 0x38
cmp rdi, 3
jl 0x140231d20
jmp 0x14022c0b4
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul r13, rax, 0x38
mov rax, qword [rbp - 0x80]
add r13, qword [rax + 0x68]
mov eax, 0x9000
test word [r13 + 0x14], ax
je 0x140231d8b
mov rcx, r13
call fcn.1401db030
mov r13, rax
xor r9d, r9d
jmp 0x140231d95
mov eax, 4
mov word [r13 + 0x14], ax
mov rax, qword [rsi + 0x20]
movsxd rcx, dword [rbx + 4]
shl rcx, 5
cmp dword [rbx + 0xc], 0xffffffff
mov r15, qword [rcx + rax + 8]
mov rax, qword [r15 + 8]
mov rdi, qword [rax]
movzx r14d, byte [rdi + 9]
mov esi, r14d
cmovne esi, dword [rbx + 0xc]
cmp byte [rdi + 0x15], 3
jae 0x140231dd4
mov rax, qword [rdi + 0x50]
cmp qword [rax], 0
je 0x140231dd7
cmp qword [rdi + 0x60], 0
jle 0x140231dd7
mov esi, r14d
cmp byte [rdi + 0x13], 0
jne 0x140231df2
lea rax, [0x1403194a0]
cmp qword [rdi], rax
je 0x140231df2
mov rcx, qword [rdi + 0xd8]
jmp 0x140231df9
lea rcx, [0x1402901ac]
cmp esi, 5
jne 0x140231e77
test rcx, rcx
je 0x140231e3f
mov rax, 0xffffffffffffffff
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140231e10
and eax, 0x3fffffff
je 0x140231e3f
cmp byte [rdi + 0x11], 0
mov rax, qword [rdi + 0x48]
mov rcx, qword [rax]
jne 0x140231e3f
cmp byte [rdi + 8], 0
jne 0x140231e77
cmp dword [rcx], 2
jl 0x140231e3f
cmp qword [rcx + 0x68], 0
jne 0x140231e77
mov esi, r14d
mov r12d, dword [rsp + 0x40]
test r12d, r12d
je 0x140231e4f
mov esi, r14d
mov edx, esi
mov rcx, rdi
call fcn.140212a10
mov ecx, 0x2202
mov word [r13 + 0x14], cx
cmp eax, 6
jne 0x140232000
xor eax, eax
mov qword [r13 + 8], rax
jmp 0x140232033
cmp esi, r14d
je 0x140231e42
cmp r14d, 5
je 0x140231e87
cmp esi, 5
jne 0x140231e42
mov r12, qword [rsp + 0x70]
cmp byte [r12 + 0x65], 0
je 0x1402337b9
cmp dword [r12 + 0xdc], 1
jg 0x1402337b9
cmp r14d, 5
jne 0x140231fc0
cmp qword [rdi + 0x128], 0
mov ebx, r9d
jne 0x140231f3a
mov dword [rbp - 0x48], r9d
movzx eax, byte [rdi + 0x16]
cmp al, 1
jb 0x140231ecf
cmp al, r14b
jne 0x140231ef4
cmp byte [rdi + 0x11], 0
jne 0x140231eea
mov rcx, qword [rdi + 0x48]
mov edx, 1
mov rax, qword [rcx]
call qword [rax + 0x38]
mov ebx, eax
test eax, eax
jne 0x140231ef4
cmp byte [rdi + 0x16], 5
je 0x140231ef4
mov byte [rdi + 0x16], 1
test ebx, ebx
jne 0x140231fa5
mov rax, qword [rdi]
lea r9, [rbp - 0x48]
mov rdx, qword [rdi + 0x130]
xor r8d, r8d
mov rcx, rax
call qword [rax + 0x38]
mov ebx, eax
test eax, eax
jne 0x140231fa5
cmp dword [rbp - 0x48], eax
je 0x140231f30
mov rcx, rdi
call fcn.1401db990
mov ebx, eax
test eax, eax
jne 0x140231fa5
cmp qword [rdi + 0x128], 0
je 0x140231fa5
mov rcx, rdi
call fcn.1401db680
mov ebx, eax
test eax, eax
jne 0x140231fa5
mov rax, qword [rdi + 0x118]
mov rdx, r12
movzx r8d, byte [rdi + 0xf]
mov r9d, dword [rdi + 0xc8]
mov rcx, qword [rdi + 0x128]
mov qword [rsp + 0x20], rax
call fcn.14023a5b0
mov ebx, eax
mov dword [rsp + 0x40], eax
mov r12d, eax
mov rcx, rdi
xor eax, eax
mov qword [rdi + 0x128], rax
call fcn.1401db720
test ebx, ebx
je 0x140231fa5
cmp byte [rdi + 8], 0
jne 0x140231fa5
mov edx, 1
mov rcx, rdi
call fcn.1401dc360
jmp 0x140231e4c
mov dword [rsp + 0x40], ebx
mov r12d, ebx
test ebx, ebx
jne 0x140231e4c
mov edx, esi
mov rcx, rdi
call fcn.140212a10
jmp 0x140231fe0
cmp r14d, 4
jne 0x140231fd2
lea edx, [r14 - 2]
mov rcx, rdi
call fcn.140212a10
mov r12d, dword [rsp + 0x40]
test r12d, r12d
jne 0x140231e4c
xor eax, eax
mov rcx, r15
mov edx, eax
cmp esi, 5
sete dl
inc edx
call fcn.1401f3000
mov r12d, eax
mov dword [rsp + 0x40], eax
jmp 0x140231e47
cdqe
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x28d0d8]
mov qword [r13 + 8], rcx
test rcx, rcx
jne 0x14023201e
xor eax, eax
jmp 0x140232033
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x140232025
and eax, 0x3fffffff
movzx r12d, byte [rsp + 0x50]
mov dword [r13 + 0x10], eax
mov byte [r13 + 0x16], 1
cmp r12b, 1
je 0x140232054
movzx edx, r12b
mov rcx, r13
call fcn.140236a90
mov r10d, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
test r10d, r10d
jne 0x14022d2ea
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov r14, qword [rsp + 0x58]
jmp 0x14022b568
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 8]
test eax, eax
je 0x14023208f
imul r9, rax, 0x38
add r9, r11
mov r8d, dword [r10 + 4]
lea rcx, [r13 + 0xa8]
mov rdx, rsi
call fcn.14021d3f0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x14022d2f3
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax + 8]
cmp byte [rsi + 0x11], 0
mov rdi, qword [rsi + 8]
je 0x1402320f1
inc dword [rsi + 0x14]
cmp byte [rsi + 0x12], 0
jne 0x1402320f1
mov rcx, rsi
call fcn.1401b7c60
cmp byte [rdi + 0x21], 0
jne 0x140232107
mov r12d, 0x65
mov dword [rsp + 0x40], r12d
jmp 0x1402321e2
mov rax, qword [rdi + 0x18]
mov r14d, dword [rdi + 0x40]
mov edx, r14d
mov rcx, qword [rax + 0x50]
mov ebx, dword [rcx + 0x24]
mov rcx, rdi
bswap ebx
mov r8d, ebx
call fcn.1401c77c0
mov r15d, eax
cmp r14d, eax
jb 0x1402321cc
cmp ebx, r14d
jae 0x1402321cc
test ebx, ebx
je 0x1402321bf
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x140232165
xor r8d, r8d
xor edx, edx
call fcn.1401e72a0
mov dword [rsp + 0x40], eax
mov r12d, eax
test eax, eax
jne 0x1402321dd
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x14023217d
nop
and byte [rax + 1], 0xfb
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x140232170
xor r9d, r9d
mov r8d, r14d
mov edx, r15d
mov rcx, rdi
call fcn.1401cf440
mov dword [rsp + 0x40], eax
mov r12d, eax
test eax, eax
jne 0x1402321dd
mov rcx, qword [rdi + 0x18]
mov rcx, qword [rcx + 0x70]
call fcn.140213150
mov edx, dword [rdi + 0x40]
mov r12d, eax
mov dword [rsp + 0x40], eax
mov rax, qword [rdi + 0x18]
bswap edx
mov rcx, qword [rax + 0x50]
mov dword [rcx + 0x1c], edx
jmp 0x1402321dd
mov r12d, 0x65
mov dword [rsp + 0x40], r12d
jmp 0x1402321dd
mov ecx, 0x11c5e
call fcn.1401f7570
mov r12d, eax
mov dword [rsp + 0x40], eax
mov r14, qword [rsp + 0x58]
cmp byte [rsi + 0x11], 0
je 0x1402321f6
sub dword [rsi + 0x14], 1
jne 0x1402321f6
mov rcx, rsi
call fcn.140248600
mov r10d, dword [rsp + 0x40]
test r10d, r10d
je 0x140233209
cmp r10d, 0x65
jne 0x140233429
xor r9d, r9d
mov r10d, r9d
mov dword [rsp + 0x40], r9d
jmp 0x14022cfee
mov rax, qword [rsp + 0x48]
cmp dword [rax + 4], 0
jne 0x140232260
mov ecx, dword [rax + 8]
mov rax, qword [rsi + 8]
test rax, rax
je 0x14022bdec
inc ecx
and ecx, 3
nop
and dword [rax + 0xc8], 0xfffffffc
or dword [rax + 0xc8], ecx
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140232240
mov r15, qword [rsp + 0x48]
jmp case.0x14022b3a8.89
mov eax, dword [rax + 8]
mov r15, qword [rsp + 0x48]
inc eax
xor eax, dword [r13 + 0xc8]
and eax, 3
xor dword [r13 + 0xc8], eax
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
or byte [rax + 1], 0x40
jmp case.0x14022b3a8.89
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
and byte [rax + 1], 0xbf
jmp case.0x14022b3a8.89
movzx r14d, byte [r15 + 0xc]
test r14b, r14b
jne 0x1402322e4
movabs rax, 0x400000000
test qword [rsi + 0x30], rax
jne 0x14022d45b
mov r10, qword [rsp + 0x48]
mov rax, qword [rsi + 0x20]
mov dword [rsp + 0x40], r9d
movsxd rcx, dword [r10 + 4]
mov edi, dword [r10 + 8]
mov r10d, r9d
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x1402323e3
inc dword [rbx + 0x14]
inc r14b
cmp byte [rbx + 0x12], 0
jne 0x140232324
mov rcx, rbx
call fcn.1401b7c60
movzx r8d, r14b
mov edx, edi
mov rcx, rbx
call fcn.1401e14a0
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x1402323bf
mov rsi, qword [rbx + 8]
mov rax, qword [rsi + 0x78]
test rax, rax
je 0x140232363
nop
cmp dword [rax + 8], edi
jne 0x14023235a
cmp qword [rax], rbx
je 0x1402323a8
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140232350
mov ecx, 0x18
call fcn.14020fe50
xor r9d, r9d
test rax, rax
je 0x1402323ad
mov qword [rax + 0xc], r9
mov dword [rax + 0x14], r9d
mov dword [rax + 8], edi
mov qword [rax], rbx
mov rcx, qword [rsi + 0x78]
mov qword [rax + 0x10], rcx
mov qword [rsi + 0x78], rax
cmp r14b, byte [rax + 0xc]
jbe 0x140232399
mov byte [rax + 0xc], r14b
mov rsi, qword [rsp + 0x70]
mov r10d, r9d
mov dword [rsp + 0x40], r9d
jmp 0x1402323c2
xor r9d, r9d
jmp 0x14023238f
mov rsi, qword [rsp + 0x70]
mov r10d, 7
mov dword [rsp + 0x40], r10d
jmp 0x1402323c2
xor r9d, r9d
cmp byte [rbx + 0x11], 0
je 0x1402323de
sub dword [rbx + 0x14], 1
jne 0x1402323de
mov rcx, rbx
call fcn.140248600
mov r10d, dword [rsp + 0x40]
xor r9d, r9d
mov edx, 1
test r10d, r10d
je 0x14022c4af
mov r14, qword [rsp + 0x48]
cmp r10b, 6
jne 0x140233453
mov r8, qword [r14 + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, r13
call fcn.14022b200
mov r10d, dword [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
jmp 0x14022d2f8
movsxd rdx, dword [rsi + 0x224]
mov r12d, r9d
mov rbx, qword [r15 + 0x10]
mov dword [rsp + 0x40], r9d
test edx, edx
jle 0x140232457
cmp qword [rsi + 0x248], 0
jne 0x140232457
mov r10d, 6
mov dword [rsp + 0x40], r10d
test rbx, rbx
je 0x14022d2f3
jmp 0x14023251c
test rbx, rbx
jne 0x140232472
movzx r12d, byte [rsp + 0x50]
lea edx, [rbx + 1]
mov r10d, r9d
mov dword [rsp + 0x40], r9d
jmp case.0x14022b3a8.89
mov rax, qword [rbx + 0x10]
mov rdi, qword [rax]
cmp qword [rdi + 0x70], 0
je 0x140232517
mov rcx, r9
test edx, edx
jle 0x1402324a7
mov rax, qword [rsi + 0x248]
cmp qword [rax], rbx
je 0x140232546
inc rcx
add rax, 8
cmp rcx, rdx
jl 0x140232492
mov rcx, rsi
call fcn.1401cebd0
mov dword [rsp + 0x40], eax
mov r12d, eax
test eax, eax
jne 0x140232517
mov rcx, qword [rbx + 0x10]
call qword [rdi + 0x70]
mov dword [rsp + 0x40], eax
mov r12d, eax
test eax, eax
jne 0x140232517
mov edx, dword [rsi + 0x2f4]
add edx, dword [rsi + 0x2f0]
movsxd rcx, dword [rsi + 0x224]
mov rax, qword [rsi + 0x248]
mov qword [rax + rcx*8], rbx
inc dword [rsi + 0x224]
inc dword [rbx + 0x18]
test edx, edx
je 0x140232517
cmp qword [rdi + 0xa0], 0
je 0x140232517
mov dword [rbx + 0x20], edx
dec edx
mov rcx, qword [rbx + 0x10]
call qword [rdi + 0xa0]
mov r12d, eax
mov dword [rsp + 0x40], eax
mov rdi, qword [rsp + 0x78]
mov rdx, qword [rbx + 0x10]
mov rcx, r13
call fcn.140239a40
mov r10d, dword [rsp + 0x40]
test r10d, r10d
jne 0x14022d2f3
mov r11, qword [rsp + 0x60]
movzx r12d, byte [rsp + 0x50]
jmp 0x14022b568
mov dword [rsp + 0x40], r9d
jmp 0x140232517
mov rax, qword [rsp + 0x48]
lea rcx, [rbp + 0x50]
xorps xmm0, xmm0
mov qword [rbp + 0x50], r9
xorps xmm1, xmm1
mov qword [rbp + 0x80], r9
movdqu xmmword [rbp + 0x58], xmm0
mov qword [rbp + 0x68], rsi
movdqu xmmword [rbp + 0x70], xmm1
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, r11
call fcn.140235df0
movzx ecx, word [rbp + 0x64]
mov r12d, eax
mov dword [rsp + 0x40], eax
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x1402325ac
cmp byte [rbp + 0x66], 1
jne 0x1402325ac
mov rax, qword [rbp + 0x58]
jmp 0x1402325c4
test cl, 1
jne 0x140232711
mov dl, 1
lea rcx, [rbp + 0x50]
call fcn.14024a850
movzx ecx, word [rbp + 0x64]
mov r15, qword [rsp + 0x48]
test rax, rax
je 0x140232716
movsxd rcx, dword [r15 + 4]
lea rbx, [r13 + 0xa8]
mov r8, qword [rsi + 0x20]
mov rdx, rax
shl rcx, 5
mov r8, qword [rcx + r8]
mov rcx, rsi
call fcn.140203c20
mov r14, qword [rsp + 0x70]
xor r8d, r8d
mov rsi, rax
mov rcx, qword [rax + 0x48]
mov rdi, qword [rcx]
lea rcx, [r14 + 0x228]
mov rdx, rdi
call fcn.1401c7c80
mov r8, qword [rax + 0x10]
test r8, r8
je 0x1402326dd
mov rcx, qword [r8]
mov r9, qword [rcx + 8]
test r9, r9
je 0x1402326dd
cmp qword [rcx + 0x28], 0
je 0x1402326dd
mov rdx, rsi
mov qword [rsp + 0x20], rbx
mov rcx, r14
call fcn.14024f5d0
mov dword [rsp + 0x40], eax
mov r12d, eax
test eax, eax
jne 0x14023266f
mov rax, qword [rsi + 0x50]
test rax, rax
je 0x14023266f
cmp qword [rax], r14
je 0x140232685
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x140232661
movzx ecx, word [rbp + 0x64]
mov rsi, r14
mov r14, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x78]
jmp 0x140232716
mov rcx, r14
call fcn.1401cebd0
mov dword [rsp + 0x40], eax
mov r12d, eax
test eax, eax
jne 0x14023266f
mov rdx, qword [rsi + 0x50]
mov rsi, r14
test rdx, rdx
je 0x1402326b2
cmp qword [rdx], rsi
je 0x1402326b2
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x1402326a4
movsxd rcx, dword [rsi + 0x224]
mov rax, qword [rsi + 0x248]
mov rdi, qword [rsp + 0x78]
mov r14, qword [rsp + 0x58]
mov qword [rax + rcx*8], rdx
inc dword [rsi + 0x224]
inc dword [rdx + 0x18]
movzx ecx, word [rbp + 0x64]
jmp 0x140232716
mov r8, rdi
lea rdx, str.no_such_module:__s
mov rcx, r14
mov rsi, r14
call fcn.14020fe20
mov rdi, qword [rsp + 0x78]
mov r14, qword [rsp + 0x58]
mov qword [rbx], rax
mov eax, 1
movzx ecx, word [rbp + 0x64]
mov r12d, eax
mov dword [rsp + 0x40], eax
jmp 0x140232716
mov r15, qword [rsp + 0x48]
mov eax, 0x9000
test ax, cx
jne 0x14023272a
cmp dword [rbp + 0x70], 0
je 0x140232528
lea rcx, [rbp + 0x50]
call fcn.14024c0a0
jmp 0x140232528
mov rax, qword [rsp + 0x48]
mov rcx, rsi
inc dword [rsi + 0xe8]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.140238fe0
dec dword [rsi + 0xe8]
mov r10d, eax
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14022d2f3
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x40], r9
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14023380c
mov rdi, qword [rbx]
test rdi, rdi
je 0x140233807
lea rdx, [rbp - 0x40]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r13
mov r12d, eax
mov dword [rsp + 0x40], eax
call fcn.140239a40
mov r10d, r12d
test r12d, r12d
jne 0x14022d2ee
mov rax, qword [rbp - 0x40]
mov r9b, 2
xor r8d, r8d
mov rcx, r13
mov qword [rax], rbx
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 4]
call fcn.1401b1f60
mov rcx, qword [rbp - 0x40]
test rax, rax
je 0x1402337ff
mov r15, qword [rsp + 0x48]
mov r10d, r12d
movzx r12d, byte [rsp + 0x50]
mov r11, qword [rsp + 0x60]
mov qword [rax + 0x30], rcx
inc dword [rbx + 8]
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
call fcn.140246870
test eax, eax
jne 0x14022bf35
lea ecx, [rax + 0x10]
call fcn.14020fe50
mov rdi, rax
test rax, rax
je 0x14022bf30
mov rcx, qword [rbx + 0x30]
mov qword [rax], rcx
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0xc]
imul rdx, rcx, 0x38
add rdx, qword [rsp + 0x60]
mov qword [rdi + 8], rdx
movsxd rcx, dword [rax + 8]
mov eax, 0x9000
imul rbx, rcx, 0x38
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x14023287e
mov rcx, rbx
call fcn.1401db030
mov rbx, rax
mov eax, 1
mov rcx, rbx
mov word [rbx + 0x14], ax
call fcn.14024c0a0
mov r10d, dword [rsp + 0x40]
lea rax, str.ValueList
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov qword [rbx], rax
mov eax, 0x1a01
mov qword [rbx + 8], rdi
mov word [rbx + 0x14], ax
lea rax, [0x140238f70]
mov byte [rbx + 0x17], 0x70
mov qword [rbx + 0x30], rax
jmp 0x14022b568
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, r11
movsxd r9, dword [rdx + 0x38]
lea r11, [rdx + 0x38]
mov r13, qword [rax + rcx*8]
mov rax, qword [rbp - 0x80]
mov edx, dword [rdx]
mov rsi, qword [r13 + 0x30]
mov rdi, qword [rax + 0x70]
xor eax, eax
mov r8d, eax
mov r15, qword [rsi]
mov r14, qword [r15]
test r9d, r9d
jle 0x14023292a
mov r10d, 1
movsxd rax, r10d
inc r10d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rdi + r8*8], rcx
inc r8
cmp r8, r9
jl 0x140232911
mov rax, qword [rsp + 0x48]
mov rcx, rsi
mov qword [rsp + 0x20], rdi
mov r8, qword [rax + 0x10]
call qword [r14 + 0x40]
mov rcx, qword [rbp - 0x80]
mov rdx, r15
mov r12d, eax
mov dword [rsp + 0x40], eax
call fcn.140239a40
mov r10d, r12d
test r12d, r12d
jne 0x1402339f8
mov rcx, rsi
call qword [r14 + 0x50]
mov byte [r13 + 2], r12b
test eax, eax
je 0x1402331f9
mov r14, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
xor r9d, r9d
jmp 0x14022cff3
mov rbx, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul rbx, rax, 0x38
add rbx, r11
cmp byte [rdi + 2], 0
je 0x1402329d5
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x14022ce27
mov rcx, rbx
call fcn.14024c0f0
mov r10d, dword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15, qword [rsp + 0x48]
jmp 0x14022b568
mov rax, qword [rdi + 0x30]
xorps xmm0, xmm0
mov rsi, qword [rax]
xor eax, eax
mov r14, qword [rsi]
mov qword [rbp + 0x1e0], rax
mov rax, qword [rsp + 0x48]
movups xmmword [rbp + 0x1b0], xmm0
mov qword [rbp + 0x1b0], rbx
movups xmmword [rbp + 0x1d0], xmm0
mov byte [rbp + 0x1d8], r12b
movups xmmword [rbp + 0x1c0], xmm0
test byte [rax + 2], 1
je 0x140232a42
mov ecx, 0x9000
test word [rbx + 0x14], cx
je 0x140232a34
mov rcx, rbx
call fcn.14024c0f0
mov rax, qword [rsp + 0x48]
xor r9d, r9d
mov ecx, 0x401
mov word [rbx + 0x14], cx
mov dword [rbx], r9d
jmp 0x140232a50
mov ecx, 0xf241
and word [rbx + 0x14], cx
or word [rbx + 0x14], 1
mov r8d, dword [rax + 8]
lea rdx, [rbp + 0x1b0]
mov rcx, qword [rdi + 0x30]
call qword [r14 + 0x58]
mov rdx, rsi
mov rcx, r13
mov r12d, eax
mov dword [rsp + 0x40], eax
call fcn.140239a40
cmp dword [rbp + 0x1d4], 0
jle 0x140232acf
movzx ecx, word [rbx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x140232a9e
cmp byte [rbx + 0x16], 1
jne 0x140232a9e
mov rax, qword [rbx + 8]
jmp 0x140232ab1
test cl, 1
je 0x140232aa7
xor eax, eax
jmp 0x140232ab1
mov dl, 1
mov rcx, rbx
call fcn.14024a850
mov r8, rax
lea rdx, [0x1402945d0]
mov rcx, r13
call fcn.14022b200
mov r12d, dword [rbp + 0x1d4]
mov dword [rsp + 0x40], r12d
test byte [rbx + 0x14], 2
movzx r12d, byte [rsp + 0x50]
jne 0x140232ae1
mov byte [rbx + 0x16], r12b
jmp 0x140232af3
cmp byte [rbx + 0x16], r12b
je 0x140232af3
movzx edx, r12b
mov rcx, rbx
call fcn.140236a90
mov r10d, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
test r10d, r10d
jne 0x14022d2ee
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov r14, qword [rsp + 0x58]
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x14022bdec
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r13
mov r12d, eax
mov dword [rsp + 0x40], eax
call fcn.140239a40
mov r10d, r12d
test r12d, r12d
jne 0x140233429
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
mov rsi, qword [rsp + 0x70]
test eax, eax
jne 0x1402304d7
movzx r12d, byte [rsp + 0x50]
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [r14 + rcx*8]
mov qword [rsp + 0x48], rax
jmp 0x1402304dd
mov edi, dword [rsi + 0x30]
or qword [rsi + 0x30], 0x4000000
and edi, 0x4000000
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, r11
test byte [rbx + 0x14], 2
jne 0x140232bcd
mov byte [rbx + 0x16], 1
jmp 0x140232bec
cmp byte [rbx + 0x16], 1
je 0x140232bec
mov dl, 1
mov rcx, rbx
call fcn.140236a90
mov dword [rsp + 0x40], eax
mov r10d, eax
test eax, eax
jne 0x140233429
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 8]
call qword [rax + 0x98]
mov dword [rsp + 0x40], eax
mov r12d, eax
test edi, edi
jne 0x140232c14
mov rax, qword [rsp + 0x70]
and qword [rax + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rcx, r13
call fcn.140239a40
and dword [r13 + 0xc8], 0xfffffffc
mov r10d, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
test r10d, r10d
jne 0x14022d2ee
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movzx r12d, byte [rsp + 0x50]
jmp 0x14022b568
mov qword [rbp - 0x20], r9
cmp byte [rsi + 0x67], 0
jne 0x14022bf35
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14023380c
mov r10, qword [rbx]
test r10, r10
je 0x14023380c
cmp qword [r10 + 0x68], 0
mov r15, qword [rsp + 0x48]
movsxd rdx, dword [r15 + 8]
je 0x1402331db
movsxd rax, dword [r15 + 0xc]
movzx edi, byte [rsi + 0x6c]
mov r8, qword [r13 + 0x70]
imul rcx, rax, 0x38
mov rax, r9
add rcx, r11
test edx, edx
jle 0x140232cc0
nop dword [rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x140232cb0
mov rax, r15
lea r9, [rbp - 0x20]
mov rcx, rbx
movzx eax, byte [rax + 2]
mov byte [rsi + 0x6c], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [rsi + 0x6c], dil
mov rcx, r13
mov dword [rsp + 0x40], eax
mov r12d, eax
call fcn.140239a40
mov r10d, r12d
test r12d, r12d
jne 0x140232d03
cmp dword [r15 + 4], r12d
je 0x140232d3a
mov rax, qword [rbp - 0x20]
mov qword [rsi + 0x38], rax
jmp 0x140232d3a
cmp r10b, 0x13
jne 0x140232d3a
mov rax, r15
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x1c], 0
je 0x140232d3a
movzx ecx, word [r15 + 2]
cmp ecx, 4
jne 0x14023382c
movzx r12d, byte [rsp + 0x50]
xor r9d, r9d
mov r10d, r9d
mov dword [rsp + 0x40], r9d
jmp 0x14022d6a1
inc qword [r13 + 0x38]
test r10d, r10d
jne 0x14022d2ee
mov r11, qword [rsp + 0x60]
movzx r12d, byte [rsp + 0x50]
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x140232d83
mov rcx, rdx
call fcn.1401db030
mov rdx, rax
xor r9d, r9d
jmp 0x140232d8c
mov eax, 4
mov word [rdx + 0x14], ax
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov qword [rdx], rcx
jmp 0x14022d697
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 8]
imul rsi, rax, 0x38
mov eax, 0x9000
add rsi, qword [r13 + 0x68]
test word [rsi + 0x14], ax
je 0x140232de2
mov rcx, rsi
call fcn.1401db030
mov r10, qword [rsp + 0x48]
mov rsi, rax
xor r9d, r9d
jmp 0x140232deb
mov eax, 4
mov word [rsi + 0x14], ax
mov rax, qword [rsp + 0x70]
mov edi, r9d
movsxd rcx, dword [r10 + 4]
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
mov ecx, dword [r10 + 0xc]
test ecx, ecx
je 0x140232e18
mov rax, qword [rbx + 8]
mov edi, dword [rax + 0x40]
cmp edi, ecx
cmovb edi, ecx
cmp byte [rbx + 0x11], 0
je 0x140232e2f
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x140232e2f
mov rcx, rbx
call fcn.1401b7c60
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
test edi, edi
je 0x140232e42
mov dword [rcx + 0xbc], edi
jmp 0x140232e48
mov edi, dword [rcx + 0xbc]
cmp byte [rbx + 0x11], 0
je 0x140232e5c
sub dword [rbx + 0x14], 1
jne 0x140232e5c
mov rcx, rbx
call fcn.140248600
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov eax, edi
mov qword [rsi], rax
mov rsi, qword [rsp + 0x70]
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r11
cmp qword [rdi], rbx
je 0x140232ee5
mov qword [rdi + 0x18], r13
mov qword [rdi], rbx
mov byte [rdi + 0x28], r12b
movzx eax, byte [rdi + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x140232ee5
mov rsi, qword [rsp + 0x48]
lea r8, [rdi + 0x30]
lea r8, [r8 + rdx*8]
nop dword [rax + rax]
mov eax, dword [rsi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r11
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x140232ec0
mov rsi, qword [rsp + 0x70]
mov eax, 0xf241
lea r8, [rdi + 0x30]
and word [rbx + 0x14], ax
mov rcx, rdi
or word [rbx + 0x14], 1
mov rax, qword [rdi + 8]
movzx edx, byte [rdi + 0x2a]
call qword [rax + 0x18]
mov eax, dword [rdi + 0x24]
test eax, eax
je 0x14022b976
jle 0x140232f66
movzx ecx, word [rbx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x140232f32
cmp byte [rbx + 0x16], 1
jne 0x140232f32
mov rax, qword [rbx + 8]
jmp 0x140232f45
test cl, 1
je 0x140232f3b
xor eax, eax
jmp 0x140232f45
mov dl, 1
mov rcx, rbx
call fcn.14024a850
mov r8, rax
lea rdx, [0x1402945d0]
mov rcx, r13
call fcn.14022b200
mov r12d, dword [rdi + 0x24]
mov dword [rsp + 0x40], r12d
movzx r12d, byte [rsp + 0x50]
mov rax, qword [rsp + 0x48]
lea rdx, [r13 + 0x128]
mov r8d, dword [rdi + 0x20]
mov rcx, rsi
mov r9d, dword [rax + 4]
call fcn.14022abb0
mov r10d, dword [rsp + 0x40]
xor r9d, r9d
mov dword [rdi + 0x24], r9d
test r10d, r10d
jne 0x14022d2ee
jmp 0x14022d69c
mov r10d, dword [rsp + 0x40]
mov r14, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14022b568
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xf7ff
and word [rcx + r11 + 0x14], ax
jmp case.0x14022b3a8.89
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1401c74d0
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
div rcx
mov rcx, qword [rbx + 8]
mov r8, rdx
and edx, 7
shr r8, 3
movsx eax, byte [r8 + rcx]
bts eax, edx
mov byte [r8 + rcx], al
jmp 0x14022b568
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1401c74d0
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
mov r10d, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
div rcx
mov rax, qword [rbx + 8]
mov rcx, rdx
shr rcx, 3
movsx r8d, byte [rcx + rax]
movzx eax, dl
and al, 7
mov edx, 1
movzx eax, al
bt r8d, eax
jb 0x140233089
inc dword [r13 + 0xf4]
xor r9d, r9d
jmp 0x14022cff8
inc dword [r13 + 0xf0]
mov r11, qword [rsp + 0x60]
xor r9d, r9d
mov r8d, dword [rsp + 0x54]
jmp case.0x14022b3a8.89
movzx eax, byte [rsi + 0x6e]
test al, 0x41
je 0x140233166
cmp byte [r13 + 0xc3], 0xfe
je 0x140233166
mov r9, qword [r15 + 0x10]
test r9, r9
jne 0x1402330d5
mov r9, qword [r13 + 0xf8]
test r9, r9
je 0x140233163
test al, 0x40
je 0x140233101
mov rdx, r9
mov rcx, r13
call fcn.140233eb0
mov rcx, qword [rsi + 0x100]
mov rdx, rax
mov rbx, rax
call qword [rsi + pe_nt_image_headers64]
mov rcx, rbx
call fcn.1401a5910
jmp 0x14023315e
cmp dword [rsi + 0xe4], 1
jle 0x140233149
mov r8, r9
lea rdx, str.____s
mov rcx, rsi
call fcn.14020fe20
mov rdx, qword [rsi + 0x100]
mov r9, rax
mov r8, r13
mov ecx, 1
mov rbx, rax
call qword [rsi + pe_nt_image_headers64]
test rbx, rbx
je 0x14023315e
mov rdx, rbx
mov rcx, rsi
call fcn.1401f9570
jmp 0x14023315e
mov rdx, qword [rsi + 0x100]
mov r8, r13
mov ecx, 1
call qword [rsi + pe_nt_image_headers64]
mov edx, 1
xor r9d, r9d
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
mov eax, dword [rax + 4]
cmp eax, dword [0x140318468]
jl 0x1402331c4
cmp byte [r15], 0xb5
je 0x14022b5b1
cmp dword [r13 + 0x90], 1
jle 0x1402331c1
mov eax, 0x18
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [r13 + 0x88]
cmp byte [rax + rcx], 0xf
jne 0x1402331b2
mov dword [rax + rcx + 4], r9d
inc edx
add rax, 0x18
cmp edx, dword [r13 + 0x90]
jl 0x1402331a0
mov eax, r9d
mov r10d, dword [rsp + 0x40]
inc eax
mov dword [r15 + 4], eax
inc dword [r13 + 0xec]
jmp 0x14022cff3
mov r10d, dword [rsp + 0x40]
mov edx, 1
jmp case.0x14022b3a8.89
mov r10d, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
jmp case.0x14022b3a8.89
mov rsi, qword [rsp + 0x70]
movzx r12d, byte [rsp + 0x50]
jmp 0x14022c0b4
mov rsi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movzx r12d, byte [rsp + 0x50]
jmp 0x14022b568
mov rsi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x48]
jmp 0x14022d45b
mov r15, qword [rsp + 0x48]
movzx r12d, byte [rsp + 0x50]
jmp case.0x14022b3a8.89
mov ecx, dword [r10 + 4]
mov dword [r13 + 0x34], ecx
movzx eax, byte [r10 + 8]
mov byte [r13 + 0xc2], al
test ecx, ecx
je 0x14023330e
movzx eax, word [r10 + 2]
mov rcx, r13
test ax, ax
je 0x1402332b6
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x28bd30]
call fcn.14022b200
mov rbx, qword [rsp + 0x48]
mov r9, qword [rbx + 0x10]
test r9, r9
je 0x1402332cb
mov r8, qword [r13 + 0xa8]
lea rdx, str._z:__s
mov rcx, rsi
call fcn.14020fe20
mov qword [r13 + 0xa8], rax
jmp 0x1402332cb
mov r8, qword [r10 + 0x10]
lea rdx, [0x1402945d0]
call fcn.14022b200
mov rbx, qword [rsp + 0x48]
mov r9, qword [r13 + 0xf8]
mov rcx, rbx
sub rcx, r14
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [r13 + 0xa8]
mov ecx, dword [rbx + 4]
sar rdx, 2
mov r8, rdx
mov qword [rsp + 0x20], rax
shr r8, 0x3f
add r8, rdx
lea rdx, str.abort_at__d_in___s_:__s
call fcn.1401af710
mov rcx, r13
call fcn.140234c40
mov r14, qword [rsp + 0x48]
mov r12d, eax
mov rbx, qword [rsp + 0x68]
mov r15, qword [rsp + 0x58]
cmp eax, 5
jne 0x140233336
mov dword [r13 + 0x34], eax
jmp 0x14022e520
cmp dword [r13 + 0x34], 0
mov r12d, 0x65
mov eax, 1
cmovne r12d, eax
jmp 0x14022e520
mov dword [r13 + 0x34], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov rcx, r13
mov byte [r13 + 0xc2], 2
call fcn.14022b200
movsx r10d, byte [r13 + 0xc4]
sar r10d, 7
and r10d, 0x312
inc r10d
mov dword [rsp + 0x40], r10d
jmp 0x14022d2f3
mov r10d, 0x14
mov dword [rsp + 0x40], r10d
jmp 0x14022d2f3
mov r10d, 7
mov dword [rsp + 0x40], r10d
jmp 0x14022d2f3
mov ecx, 0x16e90
call fcn.1401f7570
mov r10d, eax
mov dword [rsp + 0x40], eax
jmp 0x14022d2ea
lea r10, [0x140000000]
movsxd rax, esi
and edx, 0x3f
lea rcx, [rax + rax*2]
mov r9d, dword [r15 + rcx*8 + 8]
mov rax, qword [r15 + rcx*8]
mov rcx, r13
movzx r8d, byte [rdx + r10 + 0x291e20]
lea rdx, str.cannot_store__s_value_in__s_column__s._s
shr r9d, 4
and r9d, 0xf
mov qword [rsp + 0x28], rax
mov rax, qword [r14]
dec r9d
mov r8, qword [r10 + r8*8 + 0x318750]
mov qword [rsp + 0x20], rax
mov r9, qword [r10 + r9*8 + 0x318498]
call fcn.14022b200
mov r10d, 0xc13
mov dword [rsp + 0x40], r10d
mov rsi, qword [rsp + 0x70]
jmp 0x14022d2ee
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.14022b200
mov r10d, 5
mov rsi, rdi
mov dword [rsp + 0x40], r10d
mov r14, rbx
mov rdi, qword [rsp + 0x78]
jmp 0x14022d2f8
mov r13, qword [rbp - 0x80]
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.14022b200
mov r10d, 5
mov dword [rsp + 0x40], r10d
mov r14, rbx
jmp 0x14022d2f8
mov r13, rdi
mov byte [rsi + 0x65], 0
mov rdi, qword [rsp + 0x78]
mov r14, rbx
jmp 0x14022d2f8
mov rcx, rbx
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r14
mov r12d, 5
imul rcx
mov r13, rdi
mov r14, rbx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rdi + 0x30], edx
mov byte [rsi + 0x65], 0
mov dword [rdi + 0x34], r12d
mov rdi, qword [rsp + 0x78]
jmp 0x14022e50f
mov dword [rdi + 0x34], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov rcx, rdi
mov byte [rdi + 0xc2], 2
mov r13, rdi
call fcn.14022b200
movsx r12d, byte [rdi + 0xc4]
mov r14, rbx
mov rdi, qword [rsp + 0x78]
sar r12d, 7
and r12d, 0x312
inc r12d
jmp 0x14022e50f
bt rax, 0x14
mov r10d, 8
mov eax, 0xb
mov r14, rcx
cmovae r10d, eax
mov dword [rsp + 0x40], r10d
jmp 0x14022d2fd
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x68]
cmp r10b, 5
jne 0x14022e561
mov r12d, dword [rsp + 0x40]
mov rcx, r14
sub rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r13 + 0x30], edx
mov dword [r13 + 0x34], r10d
jmp 0x14022e520
mov rdx, qword [r13 + 0xa8]
test rdx, rdx
je 0x14023359d
mov rcx, rsi
call fcn.1401f9570
mov edx, 0x1c
mov rcx, rsi
call fcn.1401f9700
test rax, rax
je 0x1402335cf
movups xmm0, xmmword [str.database_schema_has_changed]
movups xmmword [rax], xmm0
movsd xmm1, qword [0x1402936e0]
movsd qword [rax + 0x10], xmm1
mov ecx, dword [0x1402936e8]
mov dword [rax + 0x18], ecx
mov qword [r13 + 0xa8], rax
mov rax, r15
movsxd rdx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x78]
cmp dword [rcx], eax
je 0x1402335fc
mov rcx, rsi
call fcn.14021c140
mov eax, dword [r13 + 0xc8]
mov r10d, 0x11
and eax, 0xffffffed
mov dword [rsp + 0x40], r10d
or eax, 1
mov dword [r13 + 0xc8], eax
mov r14, r15
jmp 0x14022d2f8
mov r10d, 0x204
mov dword [rsp + 0x40], r10d
jmp 0x14022d2f3
mov rcx, qword [rbx + 0x10]
call fcn.1401efcf0
mov r10d, dword [rsp + 0x40]
jmp 0x14022d2ee
mov rsi, qword [rsp + 0x70]
mov eax, 0xb
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x78]
jmp 0x14022d300
lea rax, [0x1402994d4]
mov r9d, 0x1579e
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.1401af710
mov rsi, qword [rsp + 0x70]
mov eax, 0xb
mov r14, qword [rsp + 0x48]
mov r10d, eax
mov rdi, qword [rsp + 0x78]
mov dword [rsp + 0x40], eax
jmp 0x14022d2fd
mov r13, qword [rbp - 0x80]
mov rsi, r9
jmp 0x1402336b7
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
lea rdx, str.string_or_blob_too_big
mov rcx, r13
call fcn.14022b200
mov r10d, 0x12
mov dword [rsp + 0x40], r10d
jmp 0x14022d2f3
mov dword [rsp + 0x40], r10d
jmp 0x14022d2ee
mov r12d, 0x30b
lea rax, [0x1402994d4]
mov ecx, r12d
mov qword [rsp + 0x20], rax
mov r9d, 0x17b87
mov dword [rsp + 0x40], r12d
lea r8, str.index_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.1401af710
mov rdi, qword [rsp + 0x78]
mov r10d, r12d
mov r14, r15
jmp 0x14022d2f8
mov ecx, 0x17c54
call fcn.1401f7570
mov r10d, eax
mov dword [rsp + 0x40], eax
jmp 0x14022d2f3
mov r10d, 6
mov byte [r13 + 0xc2], 2
mov dword [rsp + 0x40], r10d
jmp 0x14022d2ee
call fcn.14021c0a0
jmp 0x14022bf35
mov rcx, qword [rbp - 0x18]
call fcn.1401a5910
mov r10d, dword [rsp + 0x40]
jmp 0x14022d2ee
mov dword [rsp + 0x40], edx
mov rcx, r13
lea rdx, str.too_many_levels_of_trigger_recursion
call fcn.14022b200
mov r10d, dword [rsp + 0x40]
jmp 0x14022d2f3
mov rcx, rbx
call fcn.1401a8ab0
mov r8, rax
lea rdx, [0x1402945d0]
mov rcx, r13
call fcn.14022b200
mov r10d, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
jmp 0x14022d2f3
mov r13, qword [rbp - 0x80]
lea r8, str.out_of
mov eax, 1
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov dword [rsp + 0x40], eax
cmp esi, 5
lea rax, str.into
mov rcx, r13
cmove r8, rax
call fcn.14022b200
mov r10d, dword [rsp + 0x40]
mov rsi, r12
mov rdi, qword [rsp + 0x78]
mov r14, rbx
jmp 0x14022d2f8
call qword [rdi + 0x38]
jmp 0x14022bf30
mov rdi, qword [rsp + 0x78]
mov r10d, 6
mov dword [rsp + 0x40], r10d
jmp 0x14022d2f3
mov rbx, 0xffffffffffffffff
lea r10d, [rbx + 0xa]
jmp 0x140230eb1
mov rdi, qword [rsp + 0x78]
cmp ecx, 5
movzx eax, cl
mov r14, r15
mov ecx, 2
cmove eax, ecx
mov byte [r13 + 0xc2], al
jmp 0x14022d2f8
mov eax, dword [r13 + 0x2c]
mov rbx, qword [rsp + 0x48]
add eax, 2
or eax, 1
mov dword [r13 + 0x2c], eax
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
add rcx, r11
mov qword [r13 + 0xa0], rcx
cmp byte [rsi + 0x67], 0
jne 0x14022bf35
test byte [rsi + 0x6e], 4
je 0x14023389a
mov rdx, qword [rsi + 0x100]
xor r9d, r9d
mov r8, r13
lea ecx, [r9 + 4]
call qword [rsi + pe_nt_image_headers64]
mov rcx, rbx
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r14
mov r12d, 0x64
imul rcx
mov r14, rbx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [r13 + 0x30], edx
jmp 0x14022e50f
mov rax, qword [rsp + 0x48]
mov ebx, dword [rax + 4]
mov ecx, dword [rax + 8]
movzx eax, byte [rsi + 0x65]
cmp ebx, eax
je 0x1402339ae
test ecx, ecx
je 0x1402338fb
mov edx, 0x204
mov rcx, rsi
call fcn.14021c8b0
mov al, 1
jmp 0x14023393d
test ebx, ebx
je 0x140233927
cmp dword [rsi + 0xe0], 0
jle 0x140233927
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r13
call fcn.14022b200
mov r10d, 5
mov dword [rsp + 0x40], r10d
jmp 0x14022d2f3
mov rcx, r13
call fcn.14022a530
mov r12d, eax
test eax, eax
jne 0x14022e50a
movzx eax, bl
mov rcx, r13
mov byte [rsi + 0x65], al
call fcn.140234c40
cmp eax, 5
jne 0x14023398d
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r14
mov r12d, 5
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 1
mov dword [r13 + 0x30], edx
sub al, bl
mov byte [rsi + 0x65], al
mov dword [r13 + 0x34], r12d
jmp 0x14022e50a
mov rcx, rsi
call fcn.1401f41a0
cmp dword [r13 + 0x34], 0
mov r12d, 0x65
mov eax, 1
cmovne r12d, eax
jmp 0x14022e50a
test ebx, ebx
jne 0x1402339bb
lea rdx, str.cannot_start_a_transaction_within_a_transaction
jmp 0x1402339cf
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
cmovne rdx, rax
mov rcx, r13
call fcn.14022b200
mov eax, 1
mov r10d, eax
mov dword [rsp + 0x40], eax
jmp 0x14022d2f3
mov rbx, qword [rsp + 0x68]
mov r10d, 9
jmp 0x140230eb1
mov rsi, qword [rsp + 0x70]
jmp 0x14022d2ea
mov rsi, rdi
jmp 0x14022d2ee
cmp r10d, 0x210a
jne 0x140233a45
lea rcx, [0x1402994d4]
mov r9d, 0x184e6
mov qword [rsp + 0x20], rcx
lea r8, str.database_corruption
mov ecx, eax
lea rdx, str._s_at_line__d_of___.10s_
call fcn.1401af710
mov r10d, 0xb
mov dword [rsp + 0x40], r10d
cmp qword [r13 + 0xa8], 0
jne 0x140233a7d
cmp r10d, 0xc0a
je 0x140233a7d
mov ecx, r10d
call fcn.1401a6af0
mov r8, rax
lea rdx, [0x1402945d0]
mov rcx, r13
call fcn.14022b200
mov r10d, dword [rsp + 0x40]
mov dword [r13 + 0x34], r10d
jmp 0x140233a8a
mov dword [r13 + 0x34], r10d
cmp r10d, 0xc0a
je 0x140233abb
movzx eax, r10b
sub eax, 0xa
test eax, 0xfffffffb
jne 0x140233abb
mov rcx, qword [rsi]
mov rax, qword [rcx + 0x80]
test rax, rax
je 0x140233ab5
xor r8d, r8d
xor edx, edx
call rax
mov r10d, dword [rsp + 0x40]
jmp 0x140233ab8
mov eax, r12d
mov dword [rsi + 0x5c], eax
mov r9, qword [r13 + 0xf8]
mov rcx, r14
sub rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [r13 + 0xa8]
mov ecx, r10d
sar rdx, 2
mov r8, rdx
mov qword [rsp + 0x20], rax
shr r8, 0x3f
add r8, rdx
lea rdx, str.statement_aborts_at__d:___s___s
call fcn.1401af710
cmp byte [r13 + 0xc5], 2
jne 0x140233b10
mov rcx, r13
call fcn.140234c40
mov r12d, dword [rsp + 0x40]
cmp r12d, 0xc0a
jne 0x140233b28
mov rcx, rsi
call fcn.140210a60
jmp 0x140233b42
cmp r12d, 0xb
jne 0x140233b42
cmp byte [rsi + 0x65], 0
jne 0x140233b42
movabs rax, 0x200000000
or qword [rsi + 0x30], rax
movzx eax, byte [rbp - 0x64]
mov r12d, 1
test al, al
je 0x14022e520
lea edx, [rax - 1]
mov rcx, rsi
call fcn.14021c140
jmp 0x14022e520
add dword [r13 + 0xe4], edi
cmp dword [r13 + 0xd0], 0
movaps xmm6, xmmword [rsp + 0x3e0]
mov r15, qword [rsp + 0x3f0]
mov r14, qword [rsp + 0x3f8]
mov rdi, qword [rsp + 0x438]
mov rsi, qword [rsp + 0x430]
mov rbx, qword [rsp + 0x428]
je 0x140233bad
mov rcx, r13
call fcn.14024bfb0
mov eax, r12d
mov rcx, qword [rbp + 0x2d8]
xor rcx, rsp
call fcn.140262f00
add rsp, 0x400
pop r13
pop r12
pop rbp
ret