Function at 0x140226730
Capabilities:
Encode data using xor
Encrypt data using speck
Reference sql statements

Disassembly:
mov r11, rsp
push rbp
push r13
push r15
lea rbp, [r11 - 0x348]
sub rsp, 0x430
mov rax, qword [0x140310880]
xor rax, rsp
mov qword [rbp + 0x2e0], rax
mov r9, qword [rcx + 0x88]
xor eax, eax
mov qword [r11 + 0x18], rsi
mov r13, rcx
mov rsi, qword [rcx]
mov r15d, eax
mov qword [r11 + 0x20], rdi
mov r10d, eax
mov qword [r11 - 0x20], r12
mov edi, eax
mov qword [r11 - 0x28], r14
xor r14b, r14b
mov r11, qword [rcx + 0x68]
mov byte [rbp - 0x64], r14b
movzx r14d, byte [rsi + 0x64]
mov byte [rsp + 0x48], r14b
mov qword [rbp - 0x78], rcx
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x40], r9
mov dword [rsp + 0x4c], eax
mov qword [rsp + 0x68], rsi
mov dword [rsp + 0x50], eax
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x60], r11
cmp dword [rcx + 0xd0], eax
je 0x1402267d2
call fcn.140226640
mov r11, qword [rsp + 0x60]
mov r10d, edi
mov r9, qword [rsp + 0x58]
cmp qword [rsi + 0x210], rdi
je 0x1402267f3
mov ecx, dword [rsi + 0x220]
xor edx, edx
mov eax, dword [r13 + 0xe4]
div ecx
sub ecx, edx
mov r12d, ecx
jmp 0x1402267fa
mov r12, 0xffffffffffffffff
cmp dword [r13 + 0x34], 7
mov qword [rsp + 0x458], rbx
movaps xmmword [rsp + 0x410], xmm6
movaps xmmword [rsp + 0x400], xmm7
movaps xmmword [rsp + 0x3f0], xmm8
mov qword [rsp + 0x70], r12
je 0x140228c61
xor edx, edx
mov dword [r13 + 0x34], edx
mov qword [r13 + 0x48], rdx
mov dword [rsi + 0x298], edx
mov eax, dword [rsi + 0x198]
test eax, eax
jne 0x14022eca0
movsxd rax, dword [r13 + 0x30]
xorps xmm8, xmm8
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
movzx ebx, byte [r12]
inc rdi
mov r8d, dword [0x140310840]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x78], rdi
cmp ebx, 0xb5
ja case.0x140226899.89
movsxd rax, ebx
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x22efb0]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
sub rcx, r9
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov word [r8 + r11 + 0x14], 4
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r11], rax
jmp case.0x140226899.9
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 4
je 0x140226e14
mov rax, qword [rax + r11]
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
dec eax
cdqe
mov qword [rcx + r11], rax
mov word [rcx + r11 + 0x14], 4
cmp dword [r12 + 8], 0
jne 0x140228410
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
xor edi, edi
movsxd rax, dword [rax + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r11]
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
mov word [rdx + r11 + 0x14], di
cdqe
xor edx, edx
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
sub rbx, r9
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
mov word [r8 + r11 + 0x14], 4
movsxd rcx, dword [r8 + r11]
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
lea rcx, [rcx + rcx*2]
cdqe
lea r12, [r9 + rcx*8]
mov qword [r8 + r11], rax
xor edx, edx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x140226e14
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x14022e58d
mov rax, qword [rsp + 0x40]
cmp dword [rax + 4], 0
jne 0x14022e58d
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.14022fa30
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 8], 4
jne 0x140226a71
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r13 + 0x88]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov r9, qword [r13 + 0x88]
mov r11, qword [r13 + 0x68]
cdqe
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x60], r11
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov r10d, dword [rsp + 0x50]
xor edx, edx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
mov ebx, 0x9000
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], bx
je 0x140226ad6
call fcn.1401d92b0
mov r9, qword [rsp + 0x58]
mov rcx, rax
xor edx, edx
jmp 0x140226adc
mov word [rcx + 0x14], 4
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
mov qword [rcx], rax
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x140226b37
mov rcx, rdx
call fcn.1401d92b0
mov r9, qword [rsp + 0x58]
mov rdx, rax
jmp 0x140226b3d
mov word [rdx + 0x14], 4
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov rax, qword [rax + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x140226a90
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x140226b87
mov rcx, rdx
call fcn.1401d92b0
mov r9, qword [rsp + 0x58]
mov rdx, rax
mov word [rdx + 0x14], 8
jmp 0x140226b3d
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x140226bbd
mov rcx, rbx
call fcn.1401d92b0
mov rcx, qword [rsp + 0x40]
mov rbx, rax
jmp 0x140226bc3
mov word [rbx + 0x14], 4
mov rdx, qword [rcx + 0x10]
test rdx, rdx
jne 0x140226bd4
xor r12d, r12d
mov eax, r12d
jmp 0x140226bf1
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp byte [rdx + rax], 0
jne 0x140226be0
and eax, 0x3fffffff
xor r12d, r12d
mov dword [rcx + 4], eax
cmp r14b, 1
je 0x140226c8f
mov r9b, 1
mov qword [rsp + 0x20], r12
mov r8, 0xffffffffffffffff
mov rcx, rbx
call fcn.140231540
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022e976
test byte [rbx + 0x14], 2
jne 0x140226c30
mov byte [rbx + 0x16], r14b
jmp 0x140226c4a
cmp byte [rbx + 0x16], r14b
je 0x140226c4a
movzx edx, r14b
mov rcx, rbx
call fcn.140231940
test eax, eax
jne 0x140228c5c
mov eax, 0x2000
mov dword [rbx + 0x20], r12d
or word [rbx + 0x14], ax
mov rax, qword [rsp + 0x40]
cmp byte [rax + 1], 0xfa
jne 0x140226c78
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x140226c78
mov rcx, rsi
call fcn.1401f6670
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x40]
mov byte [rax + 1], 0xfa
mov rax, qword [rbx + 8]
mov qword [rcx + 0x10], rax
mov eax, dword [rbx + 0x10]
mov dword [rcx + 4], eax
cmp eax, dword [rsi + 0x88]
jg 0x14022e976
mov byte [rcx], 0x49
jmp 0x140226ca5
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x140226ccc
mov rcx, rdx
call fcn.1401d92b0
mov rcx, qword [rsp + 0x40]
mov rdx, rax
mov r11, qword [rsp + 0x60]
mov word [rdx + 0x14], 0x2202
mov rax, qword [rcx + 0x10]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 4]
mov dword [rdx + 0x10], eax
mov rax, qword [rsp + 0x40]
mov byte [rdx + 0x16], r14b
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x14022b523
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x40]
movzx eax, word [rax + 2]
cmp qword [rcx + r11], rax
jne 0x14022b523
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [rdx + 0x14], 0x2210
mov r9, qword [rsp + 0x58]
xor edx, edx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
mov r13d, 0x9000
test word [rcx + 0x14], r13w
je 0x140226d64
call fcn.1401d92b0
mov rcx, rax
xor edx, edx
jmp 0x140226d6a
mov word [rcx + 0x14], 4
cmp dword [rbx + 4], 0
mov esi, 1
mov edi, dword [rbx + 0xc]
mov r8d, 0x101
mov eax, dword [rbx + 8]
cmovne si, r8w
sub edi, eax
mov word [rcx + 0x14], si
mov dword [rcx + 0x10], edx
lea rbx, [rcx + 0x14]
test edi, edi
jle 0x14022b50f
nop dword [rax]
test word [rbx + 0x38], r13w
lea rbx, [rbx + 0x38]
je 0x140226db6
lea rcx, [rbx - 0x14]
call fcn.1402464c0
xor edx, edx
dec edi
mov word [rbx], si
mov dword [rbx - 4], edx
test edi, edi
jg 0x140226da0
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
mov r8d, 0xffc1
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
movzx eax, word [rcx + r11 + 0x14]
and ax, r8w
or ax, 1
mov word [rcx + r11 + 0x14], ax
mov r12, qword [rsp + 0x40]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
mov ecx, 0x9000
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], cx
je 0x140226e59
mov rcx, rbx
call fcn.1401d92b0
mov rbx, rax
mov ecx, 0x9000
jmp 0x140226e5f
mov word [rbx + 0x14], 4
mov rax, qword [rsp + 0x40]
mov rdx, qword [rax + 0x10]
movsxd rdi, dword [rax + 4]
test rdx, rdx
jne 0x140226eb0
test word [rbx + 0x14], cx
jne 0x140226e7c
cmp dword [rbx + 0x20], edx
je 0x140226e84
mov rcx, rbx
call fcn.140246470
xor eax, eax
mov word [rbx + 0x14], 0x410
mov dword [rbx + 0x10], eax
test edi, edi
mov rcx, rbx
cmovs edi, eax
mov dword [rbx], edi
mov byte [rbx + 0x16], 1
mov qword [rbx + 8], rax
call fcn.140230d80
test eax, eax
jne 0x140228c57
jmp 0x140226ec5
mov r8, rdi
xor r9d, r9d
xor edi, edi
mov rcx, rbx
mov qword [rsp + 0x20], rdi
call fcn.140231540
mov byte [rbx + 0x16], r14b
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
xor edx, edx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rbx, qword [rsp + 0x40]
mov rsi, qword [r13 + 0x80]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movzx eax, word [rdi + rsi - 0x24]
test al, 0x12
je 0x140226f2e
bt ax, 0xa
mov ecx, dword [rdi + rsi - 0x28]
jae 0x140226f1d
add ecx, dword [rdi + rsi - 0x38]
mov rax, qword [rdi + rsi - 0x20]
cmp ecx, dword [rax + 0x88]
jg 0x14022e995
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x140226f58
mov rcx, rbx
call fcn.1402464c0
mov r11, qword [rsp + 0x60]
xor edx, edx
mov r9, qword [rsp + 0x58]
movups xmm0, xmmword [rdi + rsi - 0x38]
mov ecx, 0xafff
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + rsi - 0x28]
mov rsi, qword [rsp + 0x68]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 0x14]
and ax, cx
mov ecx, 0x2040
or ax, cx
mov word [rbx + 0x14], ax
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rcx, qword [rsp + 0x40]
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 0x140226fd3
cmp dword [rbx + 0x20], 0
je 0x140226fdd
mov rcx, rbx
call fcn.140246470
xor edx, edx
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], 1
mov dword [rdi + 0x20], edx
movzx eax, word [rbx + 0x14]
bt ax, 0xe
jae 0x140227057
test al, 0x12
je 0x14022704c
bt ax, 0xa
jae 0x14022702c
mov rcx, rbx
call fcn.140230d80
test eax, eax
jne 0x14022ecb4
cmp dword [rbx + 0x20], 0
je 0x14022703c
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x14022704c
mov rcx, rbx
call fcn.140246410
test eax, eax
jne 0x14022ecb4
mov ecx, 0xbfff
and word [rbx + 0x14], cx
xor edx, edx
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x140226fc2
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rbx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
mov esi, dword [rbx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
nop word [rax + rax]
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x1402270de
mov r8d, 0x4000
mov rdx, rdi
mov rcx, rbx
call fcn.1402455f0
jmp 0x14022710b
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 0x14022710b
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 0x14022715e
test al, 0x12
je 0x140227151
bt ax, 0xa
jae 0x140227131
mov rcx, rbx
call fcn.140230d80
test eax, eax
jne 0x14022ecb4
cmp dword [rbx + 0x20], 0
je 0x140227141
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x140227151
mov rcx, rbx
call fcn.140246410
test eax, eax
jne 0x14022ecb4
mov eax, 0xbfff
and ax, word [rbx + 0x14]
mov word [rbx + 0x14], ax
bt ax, 0xb
jae 0x140227179
test byte [r12 + 2], 2
je 0x140227179
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
dec esi
test eax, eax
je 0x14022718e
add rbx, 0x38
add rdi, 0x38
jmp 0x1402270c0
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x140226a90
mov rcx, qword [rsp + 0x40]
mov r8d, 0x9000
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r11
add rcx, r11
test word [rcx + 0x14], r8w
je 0x1402271da
mov r8d, 0x4000
call fcn.1402455f0
jmp 0x140226ec9
movups xmm0, xmmword [rdx]
mov r12, qword [rsp + 0x40]
mov r8d, 0x2000
movups xmmword [rcx], xmm0
movsd xmm1, qword [rdx + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rdx + 0x14], r8w
jne 0x140226a95
mov eax, 0xcfff
and word [rcx + 0x14], ax
mov eax, 0x4000
or word [rcx + 0x14], ax
xor edx, edx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rcx, qword [rsp + 0x40]
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 0x14022725e
mov rdx, rax
mov rcx, r8
call fcn.140247750
jmp 0x140226ec9
mov r12, qword [rsp + 0x40]
mov qword [r8], rax
mov word [r8 + 0x14], 4
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
cmp qword [r13 + 0x50], 0
jg 0x14022e693
mov r15d, edx
mov dword [rsp + 0x4c], edx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
imul r14, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 0xc]
add r14, r11
imul rbx, rax, 0x38
movzx r15d, word [r14 + 0x14]
add rdi, r11
movzx eax, r15b
add rbx, r11
or al, byte [rdi + 0x14]
test al, 1
je 0x140227329
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x140227301
mov rcx, rbx
call fcn.1402464c0
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ece
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov word [rbx + 0x14], 1
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
test r15b, 0x12
jne 0x140227361
movzx r12d, byte [rsp + 0x48]
xor r8d, r8d
movzx edx, r12b
mov rcx, r14
call fcn.140231880
test eax, eax
jne 0x140228c57
movzx r15d, word [r14 + 0x14]
mov eax, 0xfffd
and r15w, ax
mov eax, 0x400
jmp 0x140227395
mov eax, 0x400
test ax, r15w
je 0x14022738f
mov rcx, r14
call fcn.140230d80
test eax, eax
jne 0x140228c57
movzx r15d, word [r14 + 0x14]
mov eax, 0xfffd
and r15w, ax
mov eax, 0x400
movzx r12d, byte [rsp + 0x48]
movzx esi, word [rdi + 0x14]
test sil, 0x12
jne 0x1402273b0
xor r8d, r8d
movzx edx, r12b
mov rcx, rdi
call fcn.140231880
jmp 0x1402273bd
test ax, si
je 0x1402273d1
mov rcx, rdi
call fcn.140230d80
test eax, eax
jne 0x14022ecb4
movzx esi, word [rdi + 0x14]
mov eax, 0xfffd
and si, ax
mov rcx, qword [rsp + 0x68]
mov edx, dword [rdi + 0x10]
add edx, dword [r14 + 0x10]
movsxd r12, edx
movsxd rax, dword [rcx + 0x88]
cmp r12, rax
jg 0x14022e990
xor eax, eax
mov rcx, rbx
mov r8d, eax
cmp rbx, rdi
sete r8b
add edx, 2
call fcn.140231010
test eax, eax
jne 0x14022ecb4
movzx eax, word [rbx + 0x14]
mov ecx, 0xf242
and ax, cx
or ax, 2
mov word [rbx + 0x14], ax
cmp rbx, rdi
je 0x14022743d
movsxd r8, dword [rdi + 0x10]
mov rdx, qword [rdi + 8]
mov rcx, qword [rbx + 8]
call fcn.140261190
mov word [rdi + 0x14], si
movsxd rcx, dword [rdi + 0x10]
add rcx, qword [rbx + 8]
movsxd r8, dword [r14 + 0x10]
mov rdx, qword [r14 + 8]
call fcn.140261190
mov word [r14 + 0x14], r15w
movzx r14d, byte [rsp + 0x48]
cmp r14b, 1
jbe 0x140227467
and r12, 0xfffffffffffffffe
mov rax, qword [rbx + 8]
mov r15d, dword [rsp + 0x4c]
mov byte [r12 + rax], 0
mov rax, qword [rbx + 8]
mov byte [rax + r12 + 1], 0
mov eax, 0x200
or word [rbx + 0x14], ax
mov dword [rbx + 0x10], r12d
mov byte [rbx + 0x16], r14b
mov rsi, qword [rsp + 0x68]
jmp 0x140226ec9
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rsi, rax, 0x38
mov rax, qword [rsp + 0x40]
add rdi, r11
add rsi, r11
movsxd rax, dword [rax + 0xc]
movzx ecx, word [rsi + 0x14]
movzx ebx, word [rdi + 0x14]
imul r14, rax, 0x38
movzx eax, cl
and al, bl
add r14, r11
test al, 4
jne 0x140227510
or cl, bl
test cl, 1
jne 0x140227863
and bx, 0x2d
jne 0x1402274f2
mov rcx, rdi
call fcn.1401bcbc0
movzx ebx, ax
movzx eax, word [rsi + 0x14]
and ax, 0x2d
jne 0x140227504
mov rcx, rsi
call fcn.1401bcbc0
and al, bl
test al, 4
je 0x1402276f2
xor edx, edx
mov rax, qword [rsp + 0x40]
mov r9, qword [rdi]
mov r8, qword [rsi]
movzx ecx, byte [rax]
sub ecx, 0x6a
je 0x14022769a
sub ecx, 1
je 0x14022762d
sub ecx, 1
je 0x140227592
cmp ecx, 1
je 0x140227560
test r9, r9
je 0x14022785e
cmp r9, 0xffffffffffffffff
mov eax, 1
cmove r9, rax
mov rax, r8
cqo
idiv r9
mov r8, rdx
jmp 0x1402276b9
test r9, r9
je 0x14022785e
cmp r9, 0xffffffffffffffff
jne 0x140227582
movabs rcx, 0x8000000000000000
cmp r8, rcx
je 0x1402276f2
mov rax, r8
cqo
idiv r9
mov r8, rax
jmp 0x1402276b9
test r9, r9
jle 0x1402275c8
movabs rax, 0x7fffffffffffffff
cqo
idiv r9
cmp r8, rax
jg 0x1402276f2
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jge 0x140227624
jmp 0x1402276f2
jns 0x140227624
test r8, r8
jle 0x1402275e8
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jge 0x140227624
jmp 0x1402276f2
jns 0x140227624
movabs rcx, 0x8000000000000000
cmp r9, rcx
je 0x1402276f2
cmp r8, rcx
je 0x1402276f2
movabs rax, 0x8000000000000001
mov rcx, r8
cqo
neg rcx
idiv r9
cmp rcx, rax
jg 0x1402276f2
imul r8, r9
jmp 0x1402276b9
movabs rcx, 0x8000000000000000
cmp r9, rcx
jne 0x14022764a
test r8, r8
jns 0x1402276f2
sub r8, rcx
jmp 0x1402276b9
neg r9
js 0x14022766d
test r8, r8
jle 0x14022768f
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x14022768f
mov eax, 1
jmp 0x140227694
test r8, r8
jns 0x14022768f
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x14022768f
mov eax, 1
jmp 0x140227694
add r8, r9
mov eax, edx
test eax, eax
jne 0x1402276f2
jmp 0x1402276b9
test r9, r9
js 0x1402276d7
test r8, r8
jle 0x1402276b6
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jl 0x1402276f2
add r8, r9
mov qword [r14], r8
mov ecx, 0xf244
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 4
mov word [r14 + 0x14], ax
jmp 0x140227877
test r8, r8
jns 0x1402276b6
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x1402276b6
movzx eax, word [rdi + 0x14]
test al, 8
je 0x140227700
movsd xmm2, qword [rdi]
jmp 0x140227723
test al, 0x24
je 0x14022770e
xorps xmm2, xmm2
cvtsi2sd xmm2, qword [rdi]
jmp 0x140227723
test al, 0x12
je 0x14022771f
mov rcx, rdi
call fcn.1401d5670
movaps xmm2, xmm0
jmp 0x140227723
movaps xmm2, xmm8
movzx eax, word [rsi + 0x14]
test al, 8
je 0x140227731
movsd xmm0, qword [rsi]
jmp 0x140227751
test al, 0x24
je 0x14022773f
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rsi]
jmp 0x140227751
test al, 0x12
je 0x14022774d
mov rcx, rsi
call fcn.1401d5670
jmp 0x140227751
movaps xmm0, xmm8
mov rax, qword [rsp + 0x40]
movzx ecx, byte [rax]
sub ecx, 0x6a
je 0x14022782e
sub ecx, 1
je 0x140227828
sub ecx, 1
je 0x140227822
cmp ecx, 1
je 0x140227813
movzx eax, word [rdi + 0x14]
test al, 0x24
je 0x14022778c
mov rbx, qword [rdi]
xor ecx, ecx
jmp 0x1402277be
test al, 8
je 0x1402277a0
movsd xmm0, qword [rdi]
call fcn.1401c0110
mov rbx, rax
xor ecx, ecx
jmp 0x1402277be
test al, 0x12
je 0x1402277ba
cmp qword [rdi + 8], 0
je 0x1402277ba
mov rcx, rdi
call fcn.1401d5640
mov rbx, rax
xor ecx, ecx
jmp 0x1402277be
xor ecx, ecx
mov ebx, ecx
movzx eax, word [rsi + 0x14]
test al, 0x24
je 0x1402277cb
mov rax, qword [rsi]
jmp 0x1402277f2
test al, 8
je 0x1402277da
movsd xmm0, qword [rsi]
call fcn.1401c0110
jmp 0x1402277f2
test al, 0x12
je 0x1402277ef
cmp qword [rsi + 8], 0
je 0x1402277ef
mov rcx, rsi
call fcn.1401d5640
jmp 0x1402277f2
mov rax, rcx
test rbx, rbx
je 0x14022785e
cmp rbx, 0xffffffffffffffff
mov ecx, 1
cqo
xorps xmm0, xmm0
cmove rbx, rcx
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x140227832
ucomisd xmm2, xmm8
jp 0x14022781c
je 0x14022785e
divsd xmm0, xmm2
jmp 0x140227832
mulsd xmm0, xmm2
jmp 0x140227832
subsd xmm0, xmm2
jmp 0x140227832
addsd xmm0, xmm2
movq rax, xmm0
movabs rcx, 0xfffffffffffff
test rcx, rax
movabs rdx, 0x7ff0000000000000
setne cl
and rax, rdx
cmp rax, rdx
sete al
test al, cl
je 0x1402278b2
mov r9, qword [rsp + 0x58]
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x140227891
mov rcx, r14
call fcn.1402464c0
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ed3
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov word [r14 + 0x14], 1
movzx r14d, byte [rsp + 0x48]
jmp 0x140226a90
movsd qword [r14], xmm0
mov ecx, 0xf248
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 8
mov word [r14 + 0x14], ax
jmp 0x140227877
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
test eax, eax
je 0x140226e14
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x1402278fe
xor edx, edx
call fcn.140247750
jmp 0x140226ec9
mov r12, qword [rsp + 0x40]
mov qword [rcx], rdx
mov word [rcx + 0x14], 4
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rsi, qword [rsp + 0x40]
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
add rcx, r11
add rsi, r11
movzx edx, word [rcx + 0x14]
movzx eax, dl
or al, byte [rdi + 0x14]
test al, 1
je 0x140227993
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x14022796f
mov rcx, rsi
call fcn.1402464c0
mov rsi, qword [rsp + 0x68]
jmp 0x140226ec9
mov word [rsi + 0x14], 1
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
xor edx, edx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov eax, edx
test dl, 0x24
je 0x1402279a2
mov rbx, qword [rcx]
xor r12d, r12d
jmp 0x1402279d5
test al, 8
je 0x1402279b7
movsd xmm0, qword [rcx]
call fcn.1401c0110
mov rbx, rax
xor r12d, r12d
jmp 0x1402279d5
test al, 0x12
je 0x1402279cf
cmp qword [rcx + 8], 0
je 0x1402279cf
call fcn.1401d5640
mov rbx, rax
xor r12d, r12d
jmp 0x1402279d5
xor r12d, r12d
mov ebx, r12d
movzx eax, word [rdi + 0x14]
test al, 0x24
je 0x1402279e2
mov rdx, qword [rdi]
jmp 0x140227a0f
test al, 8
je 0x1402279f4
movsd xmm0, qword [rdi]
call fcn.1401c0110
mov rdx, rax
jmp 0x140227a0f
test al, 0x12
je 0x140227a0c
cmp qword [rdi + 8], 0
je 0x140227a0c
mov rcx, rdi
call fcn.1401d5640
mov rdx, rax
jmp 0x140227a0f
mov rdx, r12
mov rax, qword [rsp + 0x40]
movzx ecx, byte [rax]
cmp cl, 0x66
jne 0x140227a21
and rbx, rdx
jmp 0x140227a95
cmp cl, 0x67
jne 0x140227a2b
or rbx, rdx
jmp 0x140227a95
test rdx, rdx
je 0x140227a95
jns 0x140227a45
mov eax, 0xd1
sub al, cl
movzx ecx, al
cmp rdx, 0xffffffffffffffc0
jle 0x140227a4b
neg rdx
cmp rdx, 0x40
jl 0x140227a63
test rbx, rbx
jns 0x140227a5e
cmp cl, 0x68
je 0x140227a5e
mov rbx, 0xffffffffffffffff
jmp 0x140227a95
mov rbx, r12
jmp 0x140227a95
cmp cl, 0x68
mov rcx, rdx
jne 0x140227a73
shl rbx, cl
mov r8, rbx
jmp 0x140227a92
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x140227a92
mov ecx, 0x40
mov rax, 0xffffffffffffffff
sub cl, dl
shl rax, cl
or r8, rax
mov rbx, r8
mov qword [rsi], rbx
mov ecx, 0xf244
movzx eax, word [rsi + 0x14]
and ax, cx
or ax, 4
mov word [rsi + 0x14], ax
mov rsi, qword [rsp + 0x68]
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
mov rcx, rbx
call fcn.140231190
mov r12, qword [rsp + 0x40]
movsxd rax, dword [r12 + 8]
add qword [rbx], rax
jmp 0x140226ece
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
movzx ecx, word [rbx + 0x14]
test cl, 4
jne 0x140227b50
test cl, 0x28
jne 0x140227b1c
test cl, 2
je 0x140227b26
mov edx, 1
mov rcx, rbx
call fcn.1401b2720
mov r11, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x140227b24
mov rcx, rbx
call fcn.140230290
xor edx, edx
movzx eax, word [rbx + 0x14]
movzx ecx, ax
test al, 4
jne 0x140227b50
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 8], 0
jne 0x140228410
mov r15d, 0x14
mov r14, r12
jmp 0x140228718
mov r12, qword [rsp + 0x40]
mov eax, 0xf244
mov r10d, dword [rsp + 0x50]
and cx, ax
or cx, 4
mov word [rbx + 0x14], cx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, r11
movzx eax, word [rcx + 0x14]
test al, 0x24
je 0x140226e14
test al, 8
je 0x140227ba2
movsd xmm0, qword [rcx]
jmp 0x140227baa
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rcx]
mov r12, qword [rsp + 0x40]
mov r8d, 0xf248
and ax, r8w
movsd qword [rcx], xmm0
or ax, 8
mov word [rcx + 0x14], ax
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x140227c05
mov rcx, rbx
call fcn.140230d80
mov r15d, eax
test eax, eax
jne 0x140228713
mov rax, qword [rsp + 0x40]
movzx r8d, r14b
mov rcx, rbx
movzx edx, byte [rax + 8]
call fcn.140230b60
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140228713
jmp 0x140226ec9
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul r14, rax, 0x38
add r15, r11
add r14, r11
movzx esi, word [r15 + 0x14]
movzx edi, word [r14 + 0x14]
movzx ecx, di
and cx, si
test cl, 4
je 0x140227cf7
mov rax, qword [r14]
cmp rax, qword [r15]
jle 0x140227c7b
mov rax, qword [0x14030d480]
xor edx, edx
cmp byte [rbx + rax], dl
jmp 0x140227d5b
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
jge 0x140227cc1
mov rax, qword [0x14030d470]
xor edx, edx
cmp byte [rbx + rax], dl
jne 0x140228410
mov rsi, qword [rsp + 0x68]
mov r10d, 0xffffffff
movzx r14d, byte [rsp + 0x48]
mov dword [rsp + 0x50], r10d
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [0x14030d478]
xor edx, edx
cmp byte [rbx + rax], dl
jne 0x140228410
mov rsi, qword [rsp + 0x68]
mov r10d, edx
movzx r14d, byte [rsp + 0x48]
mov dword [rsp + 0x50], edx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
movzx eax, di
or ax, si
test al, 1
je 0x140227d94
mov rax, qword [rsp + 0x40]
movzx eax, word [rax + 2]
test al, al
jns 0x140227d59
test cl, 1
je 0x140227d3e
mov eax, pe_nt_image_headers64
test ax, di
jne 0x140227d3e
mov rax, qword [rsp + 0x40]
mov dword [rsp + 0x50], edx
mov r10d, dword [rsp + 0x50]
movzx edx, byte [rax]
mov rax, qword [0x14030d478]
jmp 0x140227eb5
movzx eax, di
not ax
and eax, 1
lea r10d, [rax*2 - 1]
mov dword [rsp + 0x50], r10d
jmp 0x140227e76
test al, 0x10
mov r12, qword [rsp + 0x40]
mov r15d, dword [rsp + 0x4c]
jne 0x140228410
mov eax, 1
mov r10d, eax
mov dword [rsp + 0x50], eax
mov rsi, qword [rsp + 0x68]
movzx r14d, byte [rsp + 0x48]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rbx, qword [rsp + 0x40]
movzx ecx, byte [rbx + 2]
and cl, 0x47
cmp cl, 0x43
jb 0x140227de0
test al, 2
je 0x140227e5b
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x140227dc6
xor edx, edx
mov rcx, r15
call fcn.1401b2720
movzx edi, word [r14 + 0x14]
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x140227e5b
xor edx, edx
mov rcx, r14
call fcn.1401b2720
jmp 0x140227e5b
cmp cl, 0x42
jne 0x140227e5b
test al, 2
je 0x140227e5b
movzx r12d, byte [rsp + 0x48]
test sil, 2
jne 0x140227e2c
test sil, 0x2c
je 0x140227e2c
mov r8b, 1
movzx edx, r12b
mov rcx, r15
call fcn.140231880
xor si, word [r15 + 0x14]
mov r13d, 0xdbf
and si, r13w
xor si, word [r15 + 0x14]
cmp r15, r14
jne 0x140227e32
movzx edi, si
or di, 2
jmp 0x140227e32
mov r13d, 0xdbf
test dil, 2
jne 0x140227e5b
test dil, 0x2c
je 0x140227e5b
mov r8b, 1
movzx edx, r12b
mov rcx, r14
call fcn.140231880
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.14020cc60
mov r11, qword [rsp + 0x60]
mov r10d, eax
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x40]
mov ecx, r10d
test r10d, r10d
jns 0x140227e93
movzx ecx, byte [rax]
mov rax, qword [0x14030d470]
movzx edx, byte [rcx + rax]
jmp 0x140227eb9
movzx edx, byte [rax]
mov dword [rsp + 0x50], ecx
test ecx, ecx
jne 0x140227eaa
mov rax, qword [0x14030d478]
mov r10d, ecx
jmp 0x140227eb5
mov rax, qword [0x14030d480]
mov dword [rsp + 0x50], ecx
movzx edx, byte [rdx + rax]
mov r12, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
mov word [r14 + 0x14], di
mov word [r15 + 0x14], si
mov r15d, dword [rsp + 0x4c]
test dl, dl
jne 0x14022840e
mov rsi, qword [rsp + 0x68]
xor edx, edx
movzx r14d, byte [rsp + 0x48]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
test r10d, r10d
je 0x140228410
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
test byte [rax + 2], 1
jne 0x140227f24
mov r13, rdx
jmp 0x140227f2c
mov r13, qword [rax - 8]
add r13, 4
mov rcx, qword [rax + 0x10]
mov esi, edx
mov r8d, dword [rax + 4]
mov rbx, rdx
mov r9d, dword [rax + 8]
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x60], rcx
mov dword [rbp - 0x70], r8d
mov dword [rbp - 0x80], r9d
mov qword [rbp - 0x50], rax
test rax, rax
jle 0x14022e57e
lea r14, [rcx + 0x20]
nop
test r13, r13
je 0x140227f6c
mov edx, dword [r13 + rbx*4]
jmp 0x140227f6e
mov edx, esi
mov rax, qword [rcx + 0x18]
lea ecx, [rdx + r9]
imul r12, rcx, 0x38
movzx edi, byte [rax + rbx]
lea ecx, [rdx + r8]
mov r8, qword [r14]
add r12, r11
imul r15, rcx, 0x38
mov rdx, r12
and edi, 1
add r15, r11
mov rcx, r15
call fcn.14020cc60
mov dword [rsp + 0x50], eax
mov r10d, eax
test eax, eax
jne 0x140227fe2
mov rcx, qword [rbp - 0x60]
inc esi
mov r8d, dword [rbp - 0x70]
inc rbx
mov r9d, dword [rbp - 0x80]
add r14, 8
mov r11, qword [rsp + 0x60]
cmp rbx, qword [rbp - 0x50]
jl 0x140227f60
mov r15d, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ed8
mov rax, qword [rbp - 0x60]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x140228007
test byte [r15 + 0x14], 1
jne 0x140227fff
test byte [r12 + 0x14], 1
je 0x140228007
neg r10d
mov dword [rsp + 0x50], r10d
mov r15d, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
mov r9, qword [rsp + 0x58]
test edi, edi
je 0x140226a95
neg r10d
mov dword [rsp + 0x50], r10d
xor edx, edx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
test r10d, r10d
jns 0x140228075
mov eax, dword [rax + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
jne 0x140228098
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov eax, dword [rax + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
mov edi, 2
mov edx, edi
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, r11
call fcn.140225c70
mov ebx, eax
mov edx, edi
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 8]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x60]
call fcn.140225c70
lea rcx, [0x140000000]
lea eax, [rax + rbx*2]
add eax, ebx
movsxd rdx, eax
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0x2c
jne 0x140228113
movzx edx, byte [rdx + rcx + 0x2827b8]
jmp 0x14022811b
movzx edx, byte [rdx + rcx + 0x2827c8]
movsxd rax, dword [rax + 0xc]
mov r11, qword [rsp + 0x60]
imul rcx, rax, 0x38
add rcx, r11
cmp dl, dil
jne 0x14022814e
movzx eax, word [rcx + 0x14]
mov edx, 0xf241
mov r12, qword [rsp + 0x40]
and ax, dx
or ax, 1
mov word [rcx + 0x14], ax
jmp 0x140226ed3
mov r12, qword [rsp + 0x40]
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 0x140226ed3
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
mov edx, dword [rbx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.140225c70
movsxd rdx, dword [rbx + 0x10]
mov r11, qword [rsp + 0x60]
movsxd rcx, eax
mov rax, rbx
movsxd rax, dword [rbx + 8]
xor rdx, rcx
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x1402281bf
call fcn.140247750
mov r12, rbx
jmp 0x140226ece
mov qword [rcx], rdx
mov r12, rbx
mov word [rcx + 0x14], 4
jmp 0x140226ed3
mov rbx, qword [rsp + 0x40]
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 0x14022dd06
test al, 0x24
je 0x140228207
cmp qword [rcx], 0
mov rax, rdx
sete al
jmp 0x140228239
test al, 8
je 0x140228211
movsd xmm0, qword [rcx]
jmp 0x140228226
test al, 0x12
je 0x140228234
call fcn.1401d5670
mov r11, qword [rsp + 0x60]
xor edx, edx
mov r9, qword [rsp + 0x58]
ucomisd xmm0, xmm8
jp 0x14022822f
je 0x140228234
mov rax, rdx
jmp 0x140228239
mov eax, 1
mov ecx, 0x9000
test word [rbx + 0x14], cx
je 0x140228254
mov rdx, rax
mov rcx, rbx
call fcn.140247750
jmp 0x140226ec9
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov qword [rbx], rax
mov word [rbx + 0x14], 4
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov r12, qword [rsp + 0x40]
mov word [rbx + 0x14], 1
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov rax, qword [rsp + 0x40]
add rbx, r11
movsxd rax, dword [rax + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, r11
test word [rdi + 0x14], ax
je 0x1402282d7
mov rcx, rdi
call fcn.1402464c0
mov r11, qword [rsp + 0x60]
xor edx, edx
mov r9, qword [rsp + 0x58]
jmp 0x1402282dd
mov word [rdi + 0x14], 1
test byte [rbx + 0x14], 1
jne 0x140226f88
mov word [rdi + 0x14], 4
movzx eax, word [rbx + 0x14]
test al, 0x24
je 0x140228303
mov rax, qword [rbx]
not rax
mov qword [rdi], rax
jmp 0x140226ec9
test al, 8
je 0x14022831b
movsd xmm0, qword [rbx]
call fcn.1401c0110
not rax
mov qword [rdi], rax
jmp 0x140226ec9
test al, 0x12
je 0x140228339
cmp qword [rbx + 8], 0
je 0x140228339
mov rcx, rbx
call fcn.1401d5640
not rax
mov qword [rdi], rax
jmp 0x140226ec9
mov rax, rdx
not rax
mov qword [rdi], rax
jmp 0x140226ec9
mov r8, qword [r13 + 0x108]
test r8, r8
je 0x1402283a1
mov rcx, qword [rsp + 0x40]
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 0x140228404
bts eax, edx
mov byte [rcx + r9], al
xor edx, edx
mov r9, qword [rsp + 0x58]
jmp 0x1402283b9
mov rax, qword [rsp + 0x40]
mov rcx, qword [r13 + 0x88]
mov eax, dword [rax + 4]
cmp dword [rcx + 4], eax
je 0x14022e549
mov rax, qword [r13 + 0x88]
mov r12, qword [rsp + 0x40]
mov ecx, dword [rax + 4]
mov dword [r12 + 4], ecx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x40]
add rcx, r11
mov edx, dword [rax + 0xc]
call fcn.140225c70
test eax, eax
je 0x140226ec9
mov r9, qword [rsp + 0x58]
mov r12, qword [rsp + 0x40]
xor edx, edx
mov eax, dword [r12 + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
mov qword [rsp + 0x40], rsi
mov rsi, qword [rsp + 0x68]
jmp 0x140228afd
mov rax, qword [rsp + 0x40]
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r11
call fcn.140225c70
test eax, eax
jne 0x140226ec9
jmp 0x140228404
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x140228410
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
test eax, eax
js 0x1402284f5
mov rcx, rax
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x40]
movsxd rdx, dword [rax + 0xc]
movzx eax, word [rcx + 0x4a]
cmp edx, eax
jge 0x1402284df
mov ecx, dword [rcx + rdx*4 + 0x70]
cmp ecx, 0xc
jb 0x1402284c9
test cl, 1
mov eax, 4
mov ecx, 8
cmove ax, cx
xor edx, edx
jmp 0x14022851f
mov rax, rcx
xor edx, edx
lea rcx, [0x140000000]
movzx eax, byte [rax + rcx + 0x2827d8]
jmp 0x14022851f
mov rax, qword [rsp + 0x40]
mov ecx, dword [rax + 0x10]
mov eax, 1
dec ecx
shl ax, cl
xor edx, edx
jmp 0x14022851f
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
movzx eax, word [rcx + r11 + 0x14]
lea rcx, [0x140000000]
and eax, 0x3f
movzx ecx, byte [rax + rcx + 0x2823f0]
mov eax, 1
dec ecx
shl ax, cl
mov r12, qword [rsp + 0x40]
test word [r12 + 2], ax
jne 0x140228410
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x1402285ad
movsxd rax, dword [rbx + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x1402285ad
mov rax, rbx
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14022858f
xor edx, edx
call fcn.140247750
mov r12, rbx
jmp 0x140226ece
mov qword [rcx], rdx
mov r12, rbx
mov word [rcx + 0x14], 4
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, rbx
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x1402285d3
call fcn.1402464c0
mov r12, rbx
jmp 0x140226ece
mov word [rcx + 0x14], 1
mov r12, rbx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x140228410
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x14022797a
cmp byte [rdx + 2], 0
je 0x14022797a
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x140228667
call fcn.1402464c0
jmp 0x140228404
mov word [rcx + 0x14], 1
jmp 0x140228409
mov rax, qword [rsp + 0x40]
mov r12, qword [rbp - 0x78]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x40]
mov r14d, dword [rcx + 8]
mov dword [rbp - 0x80], r14d
nop dword [rax]
nop dword [rax + rax]
mov r13, qword [rbx + 0x58]
mov eax, dword [r12 + 0x2c]
mov qword [rbp - 0x50], r13
cmp dword [rbx + 0x20], eax
je 0x1402286eb
cmp byte [rbx + 2], 0
jne 0x140228784
cmp byte [rbx + 3], 0
mov rdi, qword [rbx + 0x30]
je 0x1402286e4
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x140228739
lea eax, [r14 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x140228739
mov rbx, qword [rbx + 0x28]
lea r14d, [rax - 1]
jmp 0x140228690
cmp byte [rdi], 0
je 0x14022874c
jmp 0x1402286f8
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x140228872
mov rcx, rbx
call fcn.140230020
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x1402286a0
mov r13, r12
mov rdi, qword [rsp + 0x78]
mov r14, qword [rsp + 0x40]
mov eax, 0xb
mov r12, qword [rsp + 0x70]
xor ebx, ebx
cmp byte [rsi + 0x67], 0
je 0x14022ed32
mov r15d, 7
jmp 0x14022ed68
mov rcx, rbx
call fcn.14022f9a0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022870b
mov rcx, rdi
call fcn.1401cc690
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 0x14022877b
test edx, edx
mov ecx, edx
mov eax, 0
cmovs ecx, eax
mov dword [rbx + 0x6c], ecx
mov rcx, qword [rdi + 0x38]
jmp 0x1402287af
cmp byte [rbx], 3
jne 0x140228822
movsxd rax, dword [rbx + 0x24]
test eax, eax
jle 0x140228822
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
mov eax, dword [rcx + 0x10]
mov dword [rbx + 0x6c], eax
mov dword [rbx + 0x68], eax
mov rcx, qword [rcx + 8]
mov qword [rbx + 0x60], rcx
mov eax, dword [r12 + 0x2c]
mov dword [rbx + 0x20], eax
movzx eax, byte [rcx]
mov dword [r13], eax
cmp eax, 0x80
jae 0x1402287d0
mov eax, 1
jmp 0x1402287df
mov rcx, qword [rbx + 0x60]
mov rdx, r13
call fcn.140207b40
movzx eax, al
mov edx, 0x40
mov rcx, rbx
mov dword [rdx + rbx], eax
xor edx, edx
mov word [rbx + 0x4a], dx
mov eax, dword [r13]
cmp dword [rbx + 0x6c], eax
jae 0x140228819
mov qword [rbx + 0x60], rdx
mov dword [rbx + 0x6c], edx
mov eax, dword [r13]
cmp eax, 0x18003
ja 0x140228ad5
cmp eax, dword [rbx + 0x68]
jbe 0x140228874
jmp 0x140228ad5
mov rax, qword [rbx + 0x60]
jmp 0x140228926
mov rax, qword [rsp + 0x40]
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 0x14022885c
call fcn.1402464c0
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ed3
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov word [rcx + 0x14], 1
jmp 0x140226ed3
xor edx, edx
movzx eax, word [rbx + 0x4a]
cmp eax, r14d
ja 0x140228b95
mov eax, dword [r13]
cmp dword [rbx + 0x40], eax
jae 0x140228b24
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x60], rax
test rax, rax
jne 0x14022892a
mov qword [rbp + 0x28], rax
xorps xmm0, xmm0
movups xmmword [rbp - 8], xmm0
movups xmmword [rbp + 8], xmm0
movups xmmword [rbp + 0x18], xmm0
mov r10, qword [rbx + 0x30]
mov r8d, dword [r13]
mov rax, qword [r10 + 0x88]
movzx ecx, word [r10 + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [r10 + 0x38]
cmp ecx, edx
jle 0x1402288df
mov ecx, edx
test edx, edx
mov edx, 0
cmovs ecx, edx
jmp 0x1402288e1
xor edx, edx
mov rax, qword [r10 + 0x38]
mov qword [rbp - 0x60], rax
mov qword [rbp], rax
cmp r8d, ecx
ja 0x140228905
mov ecx, 0x4010
mov dword [rbp + 8], r8d
mov word [rbp + 0xc], cx
mov dword [rsp + 0x4c], edx
jmp 0x14022892a
lea r9, [rbp - 8]
xor edx, edx
mov rcx, r10
call fcn.140230eb0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022870b
mov rax, qword [rbp]
mov qword [rbp - 0x60], rax
movzx r12d, word [rbx + 0x4a]
mov esi, dword [rbx + 0x40]
mov r14d, r12d
mov rcx, qword [rbp - 0x50]
add rsi, rax
mov r15d, dword [r13 + r12*4]
mov r13d, dword [r13]
add r13, rax
nop dword [rax + rax]
movzx edi, byte [rsi]
mov dword [rbp - 0x70], edi
mov dword [rbx + r14*4 + 0x70], edi
cmp edi, 0x80
jae 0x140228977
lea rdx, [0x140000000]
inc rsi
movzx eax, byte [rdi + rdx + 0x280d00]
jmp 0x1402289b3
lea rdx, [rbp - 0x70]
mov rcx, rsi
call fcn.140207b40
mov edi, dword [rbp - 0x70]
movzx eax, al
add rsi, rax
mov dword [rbx + r14*4 + 0x70], edi
cmp edi, 0x80
jb 0x1402289a0
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x1402289af
lea rcx, [0x140000000]
movzx eax, byte [rdi + rcx + 0x280d00]
mov rcx, qword [rbp - 0x50]
inc r12d
add r15, rax
movsxd r14, r12d
mov dword [rcx + r14*4], r15d
cmp r12d, dword [rbp - 0x80]
ja 0x1402289cd
cmp rsi, r13
jb 0x140228950
jmp 0x1402289d6
cmp rsi, r13
jb 0x140228a8f
cmp rsi, r13
ja 0x140228a9b
mov eax, dword [rbx + 0x68]
cmp r15, rax
jne 0x140228a9b
xor edx, edx
sub esi, dword [rbp - 0x60]
mov r8d, 0x9000
mov word [rbx + 0x4a], r12w
mov dword [rbx + 0x40], esi
cmp qword [rbx + 0x60], 0
jne 0x140228a23
test word [rbp + 0xc], r8w
jne 0x140228a12
cmp dword [rbp + 0x18], 0
je 0x140228a23
lea rcx, [rbp - 8]
call fcn.140246470
xor edx, edx
mov r8d, 0x9000
mov r13, qword [rbp - 0x50]
mov r14d, dword [rbp - 0x80]
mov rsi, qword [rsp + 0x68]
movzx eax, word [rbx + 0x4a]
cmp eax, r14d
ja 0x140228b9c
mov r15, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
cmp byte [r15 + 1], 0xf6
jne 0x140228b6f
test word [rcx + 0x14], r8w
mov r8d, 0x2000
mov rax, qword [r15 + 0x10]
je 0x140228b31
mov rdx, rax
call fcn.1402455f0
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ece
mov eax, dword [rbx + 0x68]
cmp r15, rax
jbe 0x1402289eb
cmp dword [rcx], 0
jne 0x140228aad
xor edx, edx
mov rsi, r13
mov r12d, edx
jmp 0x1402289ed
cmp qword [rbx + 0x60], 0
jne 0x140228ace
mov eax, 0x9000
test word [rbp + 0xc], ax
jne 0x140228ac5
cmp dword [rbp + 0x18], 0
je 0x140228ace
lea rcx, [rbp - 8]
call fcn.140246470
mov rsi, qword [rsp + 0x68]
xor edx, edx
mov r9, qword [rsp + 0x58]
mov eax, dword [r9 + 0xc]
test eax, eax
jle 0x14022e6ca
dec eax
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r15, [r9 + rax*8]
mov qword [rsp + 0x40], r15
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov edi, edx
mov r8d, 0x9000
jmp 0x140228a30
movups xmm0, xmmword [rax]
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
movups xmmword [rcx], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rax + 0x14], r8w
jne 0x14022b2c6
mov eax, 0xafff
and word [rcx + 0x14], ax
or word [rcx + 0x14], r8w
jmp 0x140226dd1
test word [rcx + 0x14], r8w
jne 0x1402272e7
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov word [rcx + 0x14], 1
jmp 0x140226dd1
mov eax, r14d
mov edi, dword [rbx + rax*4 + 0x70]
mov rdx, qword [rsp + 0x40]
movsxd rax, dword [rdx + 0xc]
imul rsi, rax, 0x38
mov eax, 0x9000
add rsi, qword [rsp + 0x60]
test word [rsi + 0x14], ax
je 0x140228bc6
mov rcx, rsi
call fcn.1402464c0
mov rdx, qword [rsp + 0x40]
lea eax, [r14 + 1]
mov eax, dword [r13 + rax*4]
cmp dword [rbx + 0x6c], eax
jb 0x140228ce6
mov eax, r14d
mov r14d, dword [r13 + rax*4]
add r14, qword [rbx + 0x60]
cmp edi, 0xc
jae 0x140228c10
mov r8, rsi
mov edx, edi
mov rcx, r14
call fcn.140233120
mov r15d, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ece
movzx eax, byte [rsp + 0x48]
lea ebx, [rdi - 0xc]
shr ebx, 1
mov dword [rsi + 0x10], ebx
mov byte [rsi + 0x16], al
lea edx, [rbx + 2]
cmp dword [rsi + 0x20], edx
jge 0x140228c8c
mov rcx, qword [rsp + 0x68]
cmp ebx, dword [rcx + 0x88]
jg 0x14022e96a
xor r8d, r8d
mov word [rsi + 0x14], 1
mov rcx, rsi
call fcn.140231010
test eax, eax
je 0x140228c94
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x78]
mov rdi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x70]
mov rcx, rsi
call fcn.14020d2a0
lea rdx, str.out_of_memory
mov rcx, r13
call fcn.1402266e0
mov r14, qword [rsp + 0x40]
mov r15d, 7
lea eax, [r15 + 4]
jmp 0x140228722
mov rax, qword [rsi + 0x28]
mov qword [rsi + 8], rax
mov rcx, qword [rsi + 8]
mov r8, rbx
mov rdx, r14
call fcn.140261190
mov rax, qword [rsi + 8]
lea rcx, [0x140000000]
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov byte [rbx + rax], 0
mov rax, qword [rsi + 8]
mov byte [rbx + rax + 1], 0
mov eax, edi
and eax, 1
movzx eax, word [rcx + rax*2 + 0x2828b0]
mov word [rsi + 0x14], ax
mov rsi, qword [rsp + 0x68]
jmp 0x140226ece
movzx eax, byte [rsp + 0x48]
mov byte [rsi + 0x16], al
movzx eax, word [rdx + 2]
test al, 0xc0
je 0x140228d05
cmp edi, 0xc
jb 0x140228d01
test dil, 1
je 0x140228d2d
test al, al
js 0x140228d2d
cmp edi, 0x80
jb 0x140228d16
lea r8d, [rdi - 0xc]
shr r8d, 1
jmp 0x140228d28
mov eax, edi
lea rcx, [0x140000000]
movzx r8d, byte [rax + rcx + 0x280d00]
test r8d, r8d
jne 0x140228d58
mov r8, rsi
lea rcx, [0x140281050]
mov edx, edi
call fcn.140233120
mov rsi, qword [rsp + 0x68]
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ece
mov rcx, qword [rsp + 0x68]
cmp r8d, dword [rcx + 0x88]
jg 0x14022e96a
mov rcx, qword [rbx + 0x30]
mov r9, rsi
mov edx, r14d
mov edx, dword [r13 + rdx*4]
call fcn.140230eb0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022ecfd
mov rcx, qword [rsi + 8]
mov r8, rsi
mov edx, edi
call fcn.140233120
mov r12, qword [rsp + 0x40]
mov eax, 0xbfff
and word [rsi + 0x14], ax
mov rsi, qword [rsp + 0x68]
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ece
mov rax, qword [rsp + 0x40]
mov esi, edx
mov r14, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov r15, qword [r14 + 8]
add rbx, r11
cmp dx, word [r14 + 0x36]
jge 0x14022e56f
lea rdi, [r15 + 0xc]
movzx eax, word [rdi + 6]
test al, 0x60
je 0x140228e01
test al, 0x20
jne 0x140228fcc
mov rax, qword [rsp + 0x40]
cmp dword [rax + 0xc], 0
jne 0x140228fc8
movzx eax, byte [rdi]
cmp al, 0x43
jl 0x140228e83
movzx edx, word [rbx + 0x14]
test dl, 4
jne 0x140228ebd
test dl, 0x28
jne 0x140228e35
test dl, 2
je 0x140228ebd
mov edx, 1
mov rcx, rbx
call fcn.1401b2720
jmp 0x140228ebd
cmp al, 0x45
jg 0x140228ebd
test dl, 0x20
jne 0x140228e71
movsd xmm0, qword [rbx]
call fcn.1401c0110
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
ucomisd xmm0, xmm2
jp 0x140228ebd
jne 0x140228ebd
movabs rcx, 0x7fffffffffffffff
add rcx, rax
cmp rcx, 0xfffffffffffffffd
ja 0x140228ebd
mov qword [rbx], rax
mov eax, 0xf244
and dx, ax
or dx, 4
mov word [rbx + 0x14], dx
jmp 0x140228ebd
cmp al, 0x42
jne 0x140228ebd
movzx ecx, word [rbx + 0x14]
test cl, 2
jne 0x140228eb2
test cl, 0x2c
je 0x140228eb2
cmp dword [rbx + 0x20], 0x20
jge 0x140228f07
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 0x20]
call fcn.140231010
test eax, eax
je 0x140228f17
mov byte [rbx + 0x16], 0
mov r12d, 0xffd3
and word [rbx + 0x14], r12w
movzx ecx, word [rbx + 0x14]
movzx edx, cx
test cl, 1
jne 0x140228fc8
mov eax, dword [rdi - 4]
shr eax, 4
and eax, 0xf
sub eax, 2
je 0x140228fbf
sub eax, 1
je 0x140228fba
sub eax, 1
je 0x140228fba
sub eax, 1
je 0x140228f63
cmp eax, 1
jne 0x140228fc8
test cl, 2
jmp 0x140228fc2
mov rax, qword [rbx + 0x28]
and cx, 0x2d
mov qword [rbx + 8], rax
mov word [rbx + 0x14], cx
mov rdx, qword [rbx + 8]
mov r8, rbx
mov ecx, 0x20
call fcn.140246500
mov byte [rbx + 0x16], 1
mov r12d, 0xffd3
movzx eax, word [rbx + 0x14]
mov ecx, 0x202
and ax, r12w
or ax, cx
mov word [rbx + 0x14], ax
movzx eax, byte [rsp + 0x48]
cmp al, 1
je 0x140228eb8
movzx edx, al
mov rcx, rbx
call fcn.140231940
jmp 0x140228eb8
test cl, 4
je 0x140228fb5
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov rax, rbx
ja 0x140228f90
or cx, 0x20
jmp 0x140228fa0
xorps xmm0, xmm0
or cx, 8
cvtsi2sd xmm0, rdx
movsd qword [rbx], xmm0
mov edx, 0x14
mov r8d, 0xfffb
and cx, r8w
mov word [rax + rdx], cx
jmp 0x140228fc8
test cl, 0x28
jmp 0x140228fc2
test cl, 4
jmp 0x140228fc2
test cl, 0x10
je 0x14022e6e0
add rbx, 0x38
movsx eax, word [r14 + 0x36]
inc esi
add rdi, 0x18
cmp esi, eax
jl 0x140228de2
mov rsi, qword [rsp + 0x68]
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ece
mov rax, qword [rsp + 0x40]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r11
cmp al, 0x43
jl 0x14022908f
movzx edx, word [rbx + 0x14]
test dl, 4
jne 0x1402290c7
test dl, 0x28
jne 0x140229041
test dl, 2
je 0x1402290c7
mov edx, 1
mov rcx, rbx
call fcn.1401b2720
jmp 0x1402290c7
cmp al, 0x45
jg 0x1402290c7
test dl, 0x20
jne 0x14022907d
movsd xmm0, qword [rbx]
call fcn.1401c0110
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
ucomisd xmm0, xmm2
jp 0x1402290c7
jne 0x1402290c7
movabs rcx, 0x7fffffffffffffff
add rcx, rax
cmp rcx, 0xfffffffffffffffd
ja 0x1402290c7
mov qword [rbx], rax
mov eax, 0xf244
and dx, ax
or dx, 4
mov word [rbx + 0x14], dx
jmp 0x1402290c7
cmp al, 0x42
jne 0x1402290c7
movzx ecx, word [rbx + 0x14]
test cl, 2
jne 0x1402290be
test cl, 0x2c
je 0x1402290be
cmp dword [rbx + 0x20], 0x20
jge 0x14022910a
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 0x20]
call fcn.140231010
test eax, eax
je 0x14022911a
mov byte [rbx + 0x16], 0
mov esi, 0xffd3
and word [rbx + 0x14], si
cmp byte [rdi], 0x45
jne 0x14022917e
movzx ecx, word [rbx + 0x14]
test cl, 4
je 0x14022917e
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x140229162
mov eax, 0xfffb
and cx, ax
or cx, 0x20
jmp 0x14022917a
mov rax, qword [rbx + 0x28]
and cx, 0x2d
mov qword [rbx + 8], rax
mov word [rbx + 0x14], cx
mov rdx, qword [rbx + 8]
mov r8, rbx
mov ecx, 0x20
call fcn.140246500
mov byte [rbx + 0x16], 1
mov esi, 0xffd3
movzx eax, word [rbx + 0x14]
mov ecx, 0x202
and ax, si
or ax, cx
mov word [rbx + 0x14], ax
cmp r14b, 1
je 0x1402290c3
movzx edx, r14b
mov rcx, rbx
call fcn.140231940
jmp 0x1402290c3
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 eax, byte [rdi + 1]
inc rdi
test al, al
je 0x14022b2ba
add rbx, 0x38
jmp 0x140229010
mov rcx, qword [rsp + 0x40]
mov rsi, rdx
mov r12d, edx
mov r13, rdx
movsxd rax, dword [rcx + 4]
mov rdi, qword [rcx + 0x10]
imul r14, rax, 0x38
mov eax, dword [rcx + 8]
dec eax
add r14, r11
cdqe
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add r15, r14
mov qword [rbp - 0x60], r14
add rcx, r11
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x70], rcx
test rdi, rdi
je 0x14022922b
lea rbx, [r14 + 0x14]
mov r15d, 0xfffb
movzx r14d, byte [rsp + 0x48]
nop dword [rax]
movzx edx, byte [rdi]
lea rcx, [rbx - 0x14]
movzx r8d, r14b
call fcn.1401b26b0
cmp byte [rdi], 0x45
jne 0x140229217
movzx eax, word [rbx]
test al, 4
je 0x140229217
and ax, r15w
or ax, 0x20
mov word [rbx], ax
inc rdi
add rbx, 0x38
cmp byte [rdi], 0
jne 0x1402291f0
mov r14, qword [rbp - 0x60]
mov r15, qword [rbp - 0x50]
lea rdi, [r15 + 0x24]
nop
movzx eax, word [rdi - 0x10]
movzx edx, ax
test al, 1
je 0x140229259
inc r12d
mov eax, 0x400
and dx, ax
mov r15d, 1
neg dx
sbb ebx, ebx
and ebx, 0xa
jmp 0x1402293ee
test dl, 0x24
je 0x140229364
mov r8, qword [rdi - 0x24]
mov rcx, r8
test r8, r8
jns 0x140229271
not rcx
inc r12d
cmp rcx, 0x7f
ja 0x1402292b0
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x1402292a0
mov rax, qword [rbp - 0x78]
cmp byte [rax + 0xc3], 4
jb 0x1402292a0
lea ebx, [rcx + 8]
mov r15d, 1
jmp 0x1402293ee
mov ebx, 1
inc rsi
mov r15d, ebx
jmp 0x1402293ee
cmp rcx, 0x7fff
ja 0x1402292cb
mov ebx, 2
add rsi, 2
lea r15d, [rbx - 1]
jmp 0x1402293ee
cmp rcx, 0x7fffff
ja 0x1402292e6
mov ebx, 3
add rsi, 3
lea r15d, [rbx - 2]
jmp 0x1402293ee
cmp rcx, 0x7fffffff
ja 0x140229301
mov ebx, 4
add rsi, 4
lea r15d, [rbx - 3]
jmp 0x1402293ee
movabs r9, 0x7fffffffffff
cmp rcx, r9
ja 0x140229322
mov ebx, 5
add rsi, 6
lea r15d, [rbx - 4]
jmp 0x1402293ee
add rsi, 8
test dl, 0x20
je 0x140229356
xorps xmm0, xmm0
mov ecx, 0xffdf
cvtsi2sd xmm0, r8
mov ebx, 7
and ax, cx
or ax, 8
lea r15d, [rbx - 6]
movsd qword [rdi - 0x24], xmm0
mov word [rdi - 0x10], ax
jmp 0x1402293ee
mov ebx, 6
lea r15d, [rbx - 5]
jmp 0x1402293ee
test dl, 8
je 0x14022937b
mov ebx, 7
inc r12d
add rsi, 8
lea r15d, [rbx - 6]
jmp 0x1402293ee
mov r15d, dword [rdi - 0x14]
mov eax, edx
shr eax, 1
and eax, 1
bt dx, 0xa
lea ebx, [r15 + 6]
lea ebx, [rax + rbx*2]
jae 0x1402293be
movsxd rax, dword [rdi - 0x24]
lea ebx, [rbx + rax*2]
test rsi, rsi
je 0x1402293b7
lea rcx, [rdi - 0x24]
call fcn.140230d80
test eax, eax
jne 0x140228c4e
add r15d, dword [rdi - 0x24]
jmp 0x1402293ba
add r13, rax
mov r14, qword [rbp - 0x60]
mov eax, r15d
mov r15d, 1
add rsi, rax
mov ecx, r15d
mov eax, ebx
shr rax, 7
test rax, rax
je 0x1402293eb
nop dword [rax + rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x1402293e0
add r12d, ecx
mov rax, rdi
mov dword [rax], ebx
lea rax, [rdi - 0x24]
cmp rax, r14
je 0x140229405
sub rdi, 0x38
jmp 0x140229230
cmp r12d, 0x7e
jle 0x14022944f
movsxd rax, r12d
mov edx, r15d
shr rax, 7
test rax, rax
je 0x14022942b
nop word [rax + rax]
inc edx
shr rax, 7
test rax, rax
jne 0x140229420
add r12d, edx
mov ecx, r15d
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x14022944b
nop dword [rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x140229440
cmp edx, ecx
jge 0x140229452
inc r12d
mov rdi, qword [rbp - 0x70]
movsxd rbx, r12d
add rbx, rsi
movsxd rdx, dword [rdi + 0x20]
lea rcx, [rbx + r13]
cmp rcx, rdx
jle 0x140229499
mov rsi, qword [rsp + 0x68]
movsxd rax, dword [rsi + 0x88]
cmp rcx, rax
jg 0x14022e96d
cmp edx, ebx
jge 0x140229499
xor r8d, r8d
mov edx, ebx
mov rcx, rdi
call fcn.140231010
test eax, eax
jne 0x140228c53
jmp 0x1402294a1
mov rax, qword [rdi + 0x28]
mov qword [rdi + 8], rax
mov dword [rdi + 0x10], ebx
mov word [rdi + 0x14], 0x10
test r13, r13
je 0x1402294b8
mov dword [rdi], r13d
mov word [rdi + 0x14], 0x410
mov rbx, qword [rdi + 8]
movsxd rsi, r12d
add rsi, rbx
cmp r12d, 0x80
jge 0x1402294d3
mov byte [rbx], r12b
inc rbx
jmp 0x140229514
movsxd rdx, r12d
cmp rdx, 0x7f
ja 0x1402294e6
and dl, 0x7f
mov eax, r15d
mov byte [rbx], dl
jmp 0x14022950f
cmp rdx, 0x3fff
ja 0x140229507
mov rax, rdx
shr rax, 7
or al, 0x80
mov byte [rbx], al
and dl, 0x7f
mov byte [rbx + 1], dl
mov eax, 2
jmp 0x14022950f
mov rcx, rbx
call fcn.1401df590
cdqe
add rbx, rax
lea rdi, [r14 + 0x10]
mov r14, qword [rbp - 0x50]
nop dword [rax]
mov eax, dword [rdi + 0x14]
cmp eax, 7
ja 0x140229575
mov byte [rbx], al
inc rbx
test eax, eax
je 0x1402295e9
mov rdx, qword [rdi - 0x10]
lea rcx, [0x140000000]
movzx ecx, byte [rax + rcx + 0x280d00]
mov r10d, 0xffffffff
mov r9d, ecx
add ecx, r10d
lea r8, [rcx + rsi]
mov byte [r8], dl
je 0x140229570
nop dword [rax]
shr rdx, 8
lea r8, [r8 - 1]
mov byte [r8], dl
add ecx, r10d
jne 0x140229560
add rsi, r9
jmp 0x1402295e9
cmp eax, 0x80
jae 0x14022958f
mov byte [rbx], al
inc rbx
cmp eax, 0xe
jb 0x1402295e9
movsxd rax, dword [rdi]
test eax, eax
jle 0x1402295e9
jmp 0x1402295d4
mov rdx, rax
cmp rax, 0x7f
ja 0x1402295a2
and dl, 0x7f
mov eax, r15d
mov byte [rbx], dl
jmp 0x1402295c8
cmp rdx, 0x3fff
ja 0x1402295c0
shr rax, 7
or al, 0x80
mov byte [rbx], al
and dl, 0x7f
mov byte [rbx + 1], dl
mov eax, 2
jmp 0x1402295c8
mov rcx, rbx
call fcn.1401df590
cdqe
add rbx, rax
movsxd rax, dword [rdi]
test eax, eax
je 0x1402295e9
mov rdx, qword [rdi - 8]
mov r8, rax
mov rcx, rsi
call fcn.140261190
movsxd rax, dword [rdi]
add rsi, rax
lea rax, [rdi - 0x10]
cmp rax, r14
je 0x14022b2af
add rdi, 0x38
jmp 0x140229520
mov rbx, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
cmp dword [rbx + 0xc], 0
movsxd rcx, dword [rbx + 4]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x30]
je 0x140229627
mov rcx, rdx
call fcn.1401f0380
mov rbx, rax
jmp 0x14022964c
xor ebx, ebx
lea r8, [rbp - 0x60]
mov rcx, rsi
mov qword [rbp - 0x60], rbx
call fcn.1401edd10
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022aef0
mov rbx, qword [rbp - 0x60]
mov rax, qword [rsp + 0x40]
mov ecx, 0x9000
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, qword [r13 + 0x68]
test word [rax + 0x14], cx
je 0x140229678
mov rcx, rax
call fcn.1401d92b0
mov qword [rax], rbx
jmp 0x14022b8ec
mov word [rax + 0x14], 4
mov qword [rax], rbx
jmp 0x14022b8ec
mov rax, qword [rsp + 0x40]
mov r10d, dword [rax + 4]
mov rsi, qword [rax + 0x10]
mov dword [rbp - 0x80], r10d
test r10d, r10d
jne 0x140229770
mov rdi, qword [rsp + 0x68]
cmp dword [rdi + 0xe0], r10d
jg 0x14022e74a
test rsi, rsi
jne 0x1402296bb
mov ebx, edx
jmp 0x1402296d1
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rsi + rbx], 0
jne 0x1402296c2
and ebx, 0x3fffffff
mov r8d, dword [rdi + 0x2f4]
xor edx, edx
add r8d, dword [rdi + 0x2f0]
mov rcx, rdi
call fcn.140234ba0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022e75f
mov edx, ebx
mov rcx, rdi
add rdx, 0x21
call fcn.1401f6800
mov rdi, rax
test rax, rax
je 0x140229abc
lea r9, [rax + 0x20]
mov rdx, rsi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call fcn.140261190
mov rsi, qword [rsp + 0x68]
cmp byte [rsi + 0x65], r15b
je 0x14022973d
mov byte [rsi + 0x65], r15b
mov byte [rsi + 0x6d], 1
jmp 0x140229743
inc dword [rsi + 0x2f0]
mov rax, qword [rsi + 0x2e0]
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 0x140229a4e
mov rcx, qword [rsp + 0x68]
mov r13d, edx
mov r12, qword [rcx + 0x2e0]
test r12, r12
je 0x140229875
lea r11, [0x140000000]
nop
mov r8, qword [r12]
mov r9, rsi
sub r9, r8
nop word [rax + rax]
movzx edx, byte [r8]
movzx eax, byte [r9 + r8]
cmp edx, eax
jne 0x140229846
test edx, edx
jne 0x14022985c
mov rsi, qword [rsp + 0x68]
cmp dword [rsi + 0xe0], edx
jle 0x1402297d0
cmp r10d, 1
je 0x14022e767
cmp qword [r12 + 0x18], 0
jne 0x14022989b
cmp byte [rsi + 0x6d], 0
je 0x14022989b
mov eax, 1
mov r15d, eax
cmp r10d, eax
jne 0x1402298a2
mov rbx, qword [rbp - 0x78]
mov edx, eax
mov rcx, rbx
call fcn.140225e10
mov r15d, eax
test eax, eax
jne 0x14022ef24
mov rcx, rbx
mov byte [rsi + 0x65], 1
call fcn.14022fc80
cmp eax, 5
je 0x14022e791
mov r15d, dword [rbx + 0x34]
mov dword [rsp + 0x4c], r15d
test r15d, r15d
jne 0x14022e785
mov byte [rsi + 0x6d], r15b
mov r15d, 1
jmp 0x14022999e
movzx ecx, byte [rax + r11 + 0x280f30]
movzx eax, byte [rdx + r11 + 0x280f30]
cmp eax, ecx
jne 0x140229864
inc r8
jmp 0x1402297a0
mov r12, qword [r12 + 0x18]
inc r13d
test r12, r12
jne 0x140229790
mov r13, qword [rbp - 0x78]
lea rdx, str.no_such_savepoint:__s
mov rcx, r13
mov r8, rsi
call fcn.1402266e0
mov r15d, 1
mov rsi, qword [rsp + 0x68]
jmp 0x140228713
xor ebx, ebx
mov r15d, ebx
jmp 0x1402298a4
xor ebx, ebx
mov eax, dword [rsi + 0x2f0]
sub eax, r13d
lea r13d, [rax - 1]
cmp r10d, 2
jne 0x140229912
mov r14d, dword [rsi + 0x2c]
mov edi, ebx
and r14d, 1
cmp dword [rsi + 0x28], 0
jle 0x140229915
mov esi, r14d
xor esi, 1
nop dword [rax]
mov rax, qword [rsp + 0x68]
mov r8d, esi
mov edx, 0x204
mov rcx, qword [rax + 0x20]
mov rcx, qword [rbx + rcx + 8]
call fcn.1401f11c0
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14022ecf8
mov rcx, qword [rsp + 0x68]
inc edi
add rbx, 0x20
cmp edi, dword [rcx + 0x28]
jl 0x1402298d0
mov r10d, dword [rbp - 0x80]
mov rsi, rcx
xor ebx, ebx
jmp 0x140229919
mov r14d, ebx
mov eax, dword [rsp + 0x4c]
cmp dword [rsi + 0x28], 0
mov edi, ebx
jle 0x140229952
mov rcx, qword [rsi + 0x20]
mov r8d, r13d
mov edx, r10d
mov rcx, qword [rbx + rcx + 8]
call fcn.1401f03e0
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14022ecea
mov r10d, dword [rbp - 0x80]
inc edi
add rbx, 0x20
cmp edi, dword [rsi + 0x28]
jl 0x140229921
xor ebx, ebx
test r14d, r14d
je 0x14022998b
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x14022997b
mov eax, dword [rcx + 0xc8]
and eax, 0xfffffffd
or eax, 1
mov dword [rcx + 0xc8], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x140229960
mov rcx, rsi
call fcn.1402187a0
or dword [rsi + 0x2c], 1
mov eax, dword [rsp + 0x4c]
mov rdi, qword [rsp + 0x78]
test eax, eax
jne 0x14022eccd
movzx r14d, byte [rsp + 0x48]
mov rcx, qword [rsi + 0x2e0]
cmp rcx, r12
je 0x1402299d8
nop word [rax + rax]
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, rsi
mov qword [rsi + 0x2e0], rax
call fcn.1401f6670
dec dword [rsi + 0x2f0]
mov rcx, qword [rsi + 0x2e0]
cmp rcx, r12
jne 0x1402299b0
mov ebx, dword [rbp - 0x80]
cmp ebx, 1
jne 0x140229a08
mov rax, qword [r12 + 0x18]
mov rdx, r12
mov rcx, rsi
mov qword [rsi + 0x2e0], rax
call fcn.1401f6670
test r15d, r15d
jne 0x140229ab5
dec dword [rsi + 0x2f0]
jmp 0x140229a2e
mov rax, qword [r12 + 8]
mov qword [rsi + 0x2f8], rax
mov rax, qword [r12 + 0x10]
mov qword [rsi + 0x300], rax
test r15d, r15d
je 0x140229a2e
cmp ebx, 2
jne 0x140229ab5
mov r8d, r13d
mov edx, ebx
mov rcx, rsi
call fcn.140234ba0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022ed29
mov r13, qword [rbp - 0x78]
cmp byte [r13 + 0xc5], 3
jne 0x140226ec9
mov r14, qword [rsp + 0x40]
mov r15d, 0x65
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
cmp rdi, r12
jb 0x14022ef36
mov rdx, qword [rsi + 0x210]
test rdx, rdx
je 0x14022ef36
mov eax, dword [rsi + 0x220]
mov rcx, qword [rsi + 0x218]
add r12, rax
call rdx
test eax, eax
je 0x140229a71
mov eax, 0xb
mov r12, 0xffffffffffffffff
lea r15d, [rax - 2]
jmp 0x140228722
mov r15d, dword [rsp + 0x4c]
jmp 0x140229a4a
mov rsi, qword [rsp + 0x68]
jmp 0x140229a4e
mov rcx, qword [rsp + 0x40]
mov dword [rbp - 0x80], edx
mov edx, dword [rcx + 8]
test edx, edx
je 0x140229ae9
mov rax, qword [rsi + 0x30]
movabs r8, 0x200100000
test r8, rax
jne 0x14022e7d7
movsxd r14, dword [rcx + 4]
shl r14, 5
add r14, qword [rsi + 0x20]
mov rbx, qword [r14 + 8]
test rbx, rbx
je 0x140229bfa
lea r8, [rbp - 0x80]
mov rcx, rbx
call fcn.1401ecf90
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022e7f3
test byte [r13 + 0xc8], 0x20
je 0x140229c03
mov rax, qword [rsp + 0x40]
cmp dword [rax + 8], r15d
je 0x140229c03
cmp byte [rsi + 0x65], r15b
je 0x140229b4d
cmp dword [rsi + 0xdc], 1
jle 0x140229c03
mov r8d, dword [r13 + 0x40]
test r8d, r8d
jne 0x140229b6e
inc dword [rsi + 0x2f4]
mov r8d, dword [rsi + 0x2f4]
add r8d, dword [rsi + 0x2f0]
mov dword [r13 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, rsi
call fcn.140234ba0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140229be4
mov edi, dword [r13 + 0x40]
mov rsi, qword [rbx + 8]
cmp byte [rbx + 0x11], al
je 0x140229ba3
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], al
jne 0x140229ba3
mov rcx, rbx
call fcn.1401b6580
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x140229bbd
cmp byte [rcx + 0xa], 0
je 0x140229bbd
mov edx, edi
call fcn.1401d9ad0
jmp 0x140229bbf
xor eax, eax
cmp byte [rbx + 0x11], 0
mov r15d, eax
mov dword [rsp + 0x4c], eax
je 0x140229bda
sub dword [rbx + 0x14], 1
jne 0x140229bda
mov rcx, rbx
call fcn.140242ef0
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
mov rax, qword [rsi + 0x2f8]
mov qword [r13 + 0x58], rax
mov rax, qword [rsi + 0x300]
mov qword [r13 + 0x60], rax
test r15d, r15d
jne 0x140228713
mov r12, qword [rsp + 0x40]
cmp word [r12 + 2], 0
je 0x1402272f6
mov eax, dword [r12 + 0xc]
cmp dword [rbp - 0x80], eax
jne 0x14022e837
mov rcx, qword [r14 + 0x18]
mov rax, r12
mov eax, dword [rax + 0x10]
cmp dword [rcx + 4], eax
jne 0x14022e837
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ece
mov rcx, qword [rsi + 0x20]
lea r8, [rbp - 0x38]
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
mov edx, dword [r12 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1401ee5c0
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], ax
je 0x140229c96
call fcn.1401d92b0
mov rcx, rax
movsxd rax, dword [rbp - 0x38]
mov qword [rcx], rax
jmp 0x140226ece
movsxd rax, dword [rbp - 0x38]
mov word [rcx + 0x14], 4
mov qword [rcx], rax
jmp 0x140226ece
mov rax, qword [rsp + 0x40]
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.1401f12d0
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
cmp eax, 1
jne 0x140229dc1
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movzx eax, word [rax + 2]
mov ecx, dword [r12 + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
mov rax, r12
or dword [rsi + 0x2c], 1
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rdi, qword [rcx + 0x10]
test rdi, rdi
je 0x140229d71
nop dword [rax]
mov rbx, qword [rdi + 0x10]
cmp byte [rbx + 0x3f], 0
jne 0x140229d69
mov rbx, qword [rbx + 0x48]
test rbx, rbx
je 0x140229d69
xor r12d, r12d
nop word [rax + rax]
mov rdx, qword [rbx + 0x30]
mov rcx, rsi
call fcn.1401c9760
mov qword [rbx + 0x30], r12
mov rcx, rsi
mov rdx, qword [rbx + 0x38]
call fcn.1401c9760
mov qword [rbx + 0x38], r12
mov rbx, qword [rbx + 8]
test rbx, rbx
jne 0x140229d40
mov rdi, qword [rdi]
test rdi, rdi
jne 0x140229d20
mov rdi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 4], 1
jne 0x140229db3
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x140229dab
nop dword [rax]
mov eax, dword [rcx + 0xc8]
and eax, 0xfffffffd
or eax, 1
mov dword [rcx + 0xc8], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x140229d90
and dword [r13 + 0xc8], 0xfffffffc
test r15d, r15d
jne 0x140227b48
jmp 0x140226ece
cmp eax, 2
jne 0x140229d76
mov rax, qword [rsp + 0x40]
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rax + 0xc]
mov byte [rcx + 0x70], al
jmp 0x140229d76
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x140229e09
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
cmp dword [rdi + 0x44], eax
jne 0x140229e09
mov rcx, qword [rdi + 0x30]
call fcn.1401ed310
jmp 0x140229f1f
mov rdi, qword [rsp + 0x78]
mov eax, dword [r13 + 0xc8]
and al, 3
cmp al, 1
je 0x14022e8cc
mov rax, qword [rsp + 0x40]
mov edi, edx
mov r14, rdx
movsxd r12, dword [rax + 0xc]
mov r15d, dword [rax + 8]
mov rax, r12
shl rax, 5
add rax, qword [rsi + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x71
jne 0x140229e70
mov rcx, qword [rsp + 0x40]
mov rax, qword [rax + 0x18]
movzx esi, word [rcx + 2]
movzx ecx, byte [rax + 0x70]
and esi, 8
mov rax, qword [rbp - 0x78]
or esi, 4
cmp cl, byte [rax + 0xc3]
jae 0x140229e72
mov byte [rax + 0xc3], cl
jmp 0x140229e72
mov esi, edx
mov rcx, qword [rsp + 0x40]
test byte [rcx + 2], 0x10
je 0x140229e94
imul rbx, r15, 0x38
add rbx, r11
mov rcx, rbx
call fcn.140231190
mov rcx, qword [rsp + 0x40]
mov r15d, dword [rbx]
movzx eax, byte [rcx + 1]
cmp al, 0xf8
jne 0x140229ea7
mov r14, qword [rcx + 0x10]
movzx edi, word [r14 + 8]
jmp 0x140229eae
cmp al, 0xfd
jne 0x140229eae
mov edi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
xor r9d, r9d
mov rcx, qword [rbp - 0x78]
mov r8d, edi
call fcn.1401b06e0
mov rdi, rax
test rax, rax
je 0x140228c4e
mov byte [rax + 1], r12b
mov r9, r14
mov byte [rax + 2], 1
mov r8d, esi
or dword [rax + 8], 4
mov edx, r15d
mov dword [rax + 0x44], r15d
mov rcx, qword [rax + 0x30]
mov qword [rsp + 0x20], rcx
mov rcx, r13
call fcn.1401edf30
mov rsi, qword [rsp + 0x68]
mov r15d, eax
mov r13, qword [rbp - 0x78]
mov qword [rdi + 0x38], r14
movzx r14d, byte [rsp + 0x48]
mov dword [rsp + 0x4c], eax
mov rax, qword [rsp + 0x40]
cmp byte [rax + 1], 0xf8
setne al
mov byte [rdi + 4], al
mov rax, qword [rsp + 0x40]
movzx ecx, byte [rax + 2]
mov rax, qword [rdi + 0x30]
and cl, 3
mov byte [rax + 3], cl
test r15d, r15d
jne 0x14022870e
jmp 0x140226ec9
mov r15, qword [rsp + 0x40]
xor r9d, r9d
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r15 + 8]
mov edx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, r13
movsx r8d, word [rbx + 0x48]
call fcn.1401b06e0
mov r10, rax
test rax, rax
je 0x140228c5c
mov byte [rax + 2], 1
mov r8d, 4
mov edx, dword [rax + 8]
or edx, 1
mov dword [rax + 8], edx
mov rcx, qword [rbx + 0x38]
mov qword [rax + 0x38], rcx
mov ecx, edx
movzx eax, byte [rbx + 4]
mov byte [r10 + 4], al
mov eax, dword [rbx + 0x44]
mov dword [r10 + 0x44], eax
xor ecx, dword [rbx + 8]
and ecx, 4
xor ecx, edx
mov dword [r10 + 8], ecx
or ecx, 8
mov rax, qword [rbx + 0x10]
mov qword [r10 + 0x10], rax
mov dword [r10 + 8], ecx
or dword [rbx + 8], 8
mov rax, qword [r10 + 0x30]
mov r9, qword [r10 + 0x38]
mov edx, dword [r10 + 0x44]
mov rcx, qword [r10 + 0x10]
mov qword [rsp + 0x20], rax
call fcn.1401edf30
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x140226ec9
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 0xc]
test eax, eax
jle 0x14022a00c
imul rcx, rax, 0x38
mov dword [rcx + r11 + 0x10], edx
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x14028736c]
mov qword [rcx + r11 + 8], rax
movsxd rdx, dword [r15 + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x14022a062
test byte [rbx + 8], 8
jne 0x14022a062
movsx eax, word [rbx + 0x48]
cmp dword [r15 + 8], eax
jg 0x14022a062
xor eax, eax
xor r8d, r8d
mov qword [rbx + 0x18], rax
mov dword [rbx + 0x20], eax
mov edx, dword [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
call fcn.1401ed3d0
mov dword [rsp + 0x4c], eax
mov r15d, eax
mov dword [rbp - 0x70], eax
test eax, eax
jne 0x140228713
xor edx, edx
mov byte [rbx + 2], 1
jmp 0x140226dc7
mov r8d, dword [r15 + 8]
xor r9d, r9d
mov rcx, r13
call fcn.1401b06e0
mov rbx, rax
test rax, rax
je 0x140228c5c
or dword [rax + 8], 1
lea r9, [rax + 0x10]
movzx ecx, word [r15 + 2]
mov r8, rsi
or ecx, 5
mov dword [rsp + 0x28], 0x41e
mov dword [rsp + 0x20], ecx
xor edx, edx
mov rcx, qword [rsi]
call fcn.1401ef810
mov r15d, eax
test eax, eax
jne 0x14022870e
mov rcx, qword [rbx + 0x10]
mov r12d, 1
mov edx, r12d
xor r8d, r8d
call fcn.1401ecf90
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022a168
mov rax, qword [rsp + 0x40]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x38], r14
test r14, r14
je 0x14022a132
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
or r8d, 2
call fcn.1401edec0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022a12c
mov rax, qword [rbx + 0x30]
lea r8d, [r12 + 3]
mov edx, dword [rbx + 0x44]
mov r9, r14
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.1401edf30
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov byte [rbx + 4], 0
jmp 0x14022a15d
mov dword [rbx + 0x44], r12d
xor r9d, r9d
mov rax, qword [rbx + 0x30]
mov edx, r12d
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.1401edf30
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov byte [rbx + 4], r12b
movzx r14d, byte [rsp + 0x48]
mov rsi, qword [rsp + 0x68]
mov rax, qword [rsp + 0x40]
xor edx, edx
mov ecx, edx
cmp word [rax + 2], 8
mov eax, 4
cmovne ecx, eax
mov eax, dword [rbx + 8]
and eax, 0xfffffffb
or ecx, eax
mov dword [rbx + 8], ecx
test r15d, r15d
jne 0x14022e8d7
mov byte [rbx + 2], 1
jmp 0x140226dc7
mov r15, qword [rsp + 0x40]
mov r9b, 1
mov rcx, r13
mov r8d, dword [r15 + 8]
mov edx, dword [r15 + 4]
call fcn.1401b06e0
test rax, rax
je 0x140228c5c
mov rcx, qword [r15 + 0x10]
mov r8, rax
mov qword [rax + 0x38], rcx
mov rcx, rsi
mov edx, dword [r15 + 0xc]
call fcn.1402334b0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140228713
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
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
xor edx, edx
test rcx, rcx
jne case.0x140226899.89
jmp 0x140228410
mov rax, qword [rsp + 0x40]
mov r9b, 3
mov rcx, r13
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.1401b06e0
test rax, rax
je 0x140228c5c
mov rcx, qword [rsp + 0x40]
mov byte [rax + 2], 1
mov ecx, dword [rcx + 8]
mov dword [rax + 0x24], ecx
lea rcx, [0x140310984]
mov byte [rax + 4], 1
mov qword [rax + 0x30], rcx
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x14022a27f
mov rcx, r13
call fcn.14022fb10
mov r9, qword [rsp + 0x58]
mov rax, qword [rsp + 0x40]
xor edx, edx
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov qword [rax + rcx*8], rdx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [r13 + 0x78]
mov r12d, edx
mov r15, qword [rsp + 0x40]
movsxd rcx, dword [r15 + 4]
mov r14, qword [rax + rcx*8]
mov byte [r14 + 2], 0
mov byte [r14 + 3], 0
mov dword [r14 + 0x20], edx
cmp byte [r14 + 4], 0
je 0x14022a406
movsxd rax, dword [r15 + 0xc]
imul rdi, rax, 0x38
add rdi, r11
movzx r15d, word [rdi + 0x14]
movzx eax, r15b
and al, 0x2e
cmp al, 2
jne 0x14022a306
xor edx, edx
mov rcx, rdi
call fcn.1401b2720
xor edx, edx
movzx eax, word [rdi + 0x14]
test al, 0x24
je 0x14022a313
mov rsi, qword [rdi]
jmp 0x14022a340
test al, 8
je 0x14022a325
movsd xmm0, qword [rdi]
call fcn.1401c0110
mov rsi, rax
jmp 0x14022a340
test al, 0x12
je 0x14022a33d
cmp qword [rdi + 8], 0
je 0x14022a33d
mov rcx, rdi
call fcn.1401d5640
mov rsi, rax
jmp 0x14022a340
mov rsi, rdx
movzx eax, word [rdi + 0x14]
mov word [rdi + 0x14], r15w
test al, 0x24
jne 0x14022a3d3
test al, 8
jne 0x14022a3b1
test al, 1
jne 0x14022a3a7
cmp ebx, 0x17
jae 0x14022a3a7
mov rcx, qword [r14 + 0x30]
cmp byte [rcx], 0
jne 0x14022a37e
test byte [rcx + 1], 8
je 0x14022a37e
xor edx, edx
mov dword [rbp - 0x68], edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
jmp 0x14022ad40
lea rdx, [rbp - 0x68]
call fcn.1401b64b0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022e740
xor edx, edx
cmp dword [rbp - 0x68], 0
jne 0x14022a7b3
jmp 0x14022a5ba
mov r15d, dword [rsp + 0x4c]
jmp 0x140228404
movsd xmm1, qword [rdi]
mov rcx, rsi
call fcn.14020a9d0
test eax, eax
jle 0x14022a3ca
test bl, 1
jne 0x14022a3d3
dec ebx
jmp 0x14022a3d3
jns 0x14022a3d3
test bl, 1
je 0x14022a3d3
inc ebx
mov rcx, qword [r14 + 0x30]
lea rdi, [r14 + 0x30]
lea r9, [rbp - 0x68]
xor r8d, r8d
mov rdx, rsi
call fcn.1401f0990
mov dword [rsp + 0x4c], eax
mov r15d, eax
mov qword [r14 + 0x50], rsi
test eax, eax
jne 0x14022e740
lea r14d, [rax + 1]
jmp 0x14022a498
mov rax, qword [r14 + 0x30]
lea rdi, [r14 + 0x30]
mov ecx, dword [r15 + 0x10]
lea r8, [rbp - 0x68]
lea rdx, [rbp + 0x190]
movzx esi, byte [rax + 3]
mov rax, qword [r14 + 0x38]
and sil, 2
mov qword [rbp + 0x190], rax
mov r14d, 1
mov word [rbp + 0x1ac], cx
lea eax, [rbx - 1]
setne r12b
mov ecx, 0xffffffff
test al, 1
mov eax, r14d
cmovne eax, ecx
mov byte [rbp + 0x1ae], al
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
mov byte [rbp + 0x1b2], 0
add rcx, r11
mov qword [rbp + 0x198], rcx
mov rcx, qword [rdi]
call fcn.1401ee6b0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022e740
test sil, sil
je 0x14022a498
cmp byte [rbp + 0x1b2], al
je 0x14022a396
mov eax, dword [rbp - 0x68]
cmp ebx, 0x17
jl 0x14022a546
test eax, eax
js 0x14022a4b9
jne 0x14022a4af
cmp ebx, 0x18
je 0x14022a4b9
xor edx, edx
mov dword [rbp - 0x68], edx
jmp 0x14022a5ba
mov rcx, qword [rdi]
xor ebx, ebx
mov dword [rbp - 0x68], ebx
mov word [rcx + 0x46], bx
and byte [rcx + 1], 0xf9
cmp byte [rcx], bl
je 0x14022a4d4
call fcn.1401b6750
jmp 0x14022a512
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 0x14022a4fa
mov word [rcx + 0x56], r8w
call fcn.1401b6750
jmp 0x14022a512
cmp byte [rdx + 8], bl
je 0x14022a50d
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
jmp 0x14022a5ba
call fcn.1401d5ab0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x14022a5b8
cmp eax, 0x65
jne 0x14022ed0b
mov r12, qword [rsp + 0x40]
xor edx, edx
mov r9, qword [rsp + 0x58]
mov r15d, edx
mov dword [rsp + 0x4c], edx
mov dword [rbp - 0x68], r14d
jmp 0x140228410
test eax, eax
jg 0x14022a565
jne 0x14022a551
cmp ebx, 0x15
je 0x14022a565
mov rax, qword [rdi]
xor edx, edx
mov ecx, edx
cmp byte [rax], cl
setne cl
mov dword [rbp - 0x68], ecx
jmp 0x14022a398
mov rcx, qword [rdi]
xor ebx, ebx
mov dword [rbp - 0x68], ebx
and byte [rcx + 1], 0xf1
mov word [rcx + 0x46], bx
cmp byte [rcx], bl
jne 0x14022a5a0
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x14022a5a0
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], bl
je 0x14022a5a0
dec dx
mov word [rcx + 0x56], dx
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
jmp 0x14022a5ba
call fcn.1401b6fc0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x14022a5b8
cmp eax, 0x65
jmp 0x14022a524
xor edx, edx
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
test r12d, r12d
je 0x14022b2f1
add qword [rsp + 0x40], 0x18
mov r12, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
jmp 0x140226dd1
mov rax, qword [rsp + 0x40]
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 0x140226e14
mov rcx, qword [rsp + 0x40]
mov rax, qword [rdi + 0x38]
mov qword [rbp + 0x228], rax
mov byte [rbp + 0x246], 0
movzx eax, word [rcx + 0x28]
mov esi, dword [rcx + 4]
mov word [rbp + 0x244], ax
movsxd rax, dword [rcx + 0x24]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x230], rcx
nop dword [rax + rax]
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.1401cc690
mov ecx, dword [rbx + 0x40]
lea rax, [rcx - 1]
cmp rax, 0x7ffffffe
ja 0x14022e8e5
mov rax, qword [rsp + 0x68]
xor r9d, r9d
mov word [rbp + 0xcc], r9w
mov qword [rbp + 0xd0], rax
mov dword [rbp + 0xd8], r9d
mov rax, qword [rbx + 0x88]
movzx edx, word [rbx + 0x44]
mov r8d, dword [rax + 0x58]
sub r8d, dword [rbx + 0x38]
cmp edx, r8d
jle 0x14022a69f
test r8d, r8d
mov edx, r8d
cmovs edx, r9d
mov rax, qword [rbx + 0x38]
mov qword [rbp + 0xc0], rax
cmp ecx, edx
ja 0x14022a6c2
mov edx, 0x4010
mov dword [rbp + 0xc8], ecx
mov word [rbp + 0xcc], dx
jmp 0x14022a6ee
mov r8d, ecx
lea r9, [rbp + 0xb8]
mov rcx, rbx
xor edx, edx
call fcn.140230eb0
mov r15d, eax
test eax, eax
jne 0x14022e740
mov ecx, dword [rbp + 0xc8]
mov rax, qword [rbp + 0xc0]
xor r9d, r9d
lea r8, [rbp + 0x228]
mov rdx, rax
call fcn.140232330
cmp dword [rbp + 0xd8], 0
mov ebx, eax
je 0x14022a717
lea rcx, [rbp + 0xb8]
call fcn.140246470
xor edx, edx
mov dword [rsp + 0x4c], edx
mov r15d, edx
test ebx, ebx
jle 0x14022a731
mov rax, qword [rsp + 0x40]
cmp word [rax + 2], dx
je 0x14022a7a6
test ebx, ebx
jns 0x14022d52c
test esi, esi
jle 0x14022b2d0
mov dword [rdi + 0x20], edx
dec esi
mov rcx, qword [rdi + 0x30]
mov word [rcx + 0x46], dx
and byte [rcx + 1], 0xf9
cmp byte [rcx], dl
je 0x14022a75b
call fcn.1401b6750
jmp 0x14022a790
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 0x14022a781
mov word [rcx + 0x56], r8w
call fcn.1401b6750
jmp 0x14022a790
cmp byte [rdx + 8], r15b
jne 0x14022a640
call fcn.1401d5ab0
mov r15d, eax
test eax, eax
je 0x14022a640
cmp eax, 0x65
jne 0x14022e740
xor edx, edx
add qword [rsp + 0x40], 0x18
mov r15d, edx
mov dword [rsp + 0x4c], edx
mov r12, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
jmp 0x140228410
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x40]
movzx ecx, word [rdx + 0xc]
mov eax, dword [rax + 8]
cmp ecx, eax
jge 0x14022a800
mov word [rdx + 0xc], ax
xor edx, edx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
cmp ecx, eax
jle 0x140226a95
mov word [rdx + 0xc], ax
xor edx, edx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je case.0x140226899.9
cmp byte [rdx + 2], 0
je 0x14022797a
jmp case.0x140226899.9
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r12 + 0x10]
jge case.0x140226899.89
mov rax, qword [r13 + 0x78]
mov r15, qword [rsp + 0x40]
movsxd rcx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x98], rcx
movzx eax, word [r15 + 0x10]
mov word [rbp + 0xac], ax
test ax, ax
je 0x14022a8dc
mov rax, qword [rbx + 0x38]
lea rsi, [rbx + 0x24]
mov qword [rbp + 0x90], rax
lea rdx, [rbp + 0x90]
mov byte [rbp + 0xae], 0
mov r8, rsi
mov rcx, qword [rbx + 0x30]
call fcn.1401ee6b0
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x14022a953
mov eax, 0x400
test word [rcx + 0x14], ax
je 0x14022a8f4
call fcn.140230d80
test eax, eax
jne 0x140228c5c
mov rcx, qword [rbx + 0x38]
call fcn.140225bd0
mov rdi, rax
test rax, rax
je 0x140228c57
mov rdx, qword [rbp + 0x98]
mov r9, rax
mov rcx, qword [rbx + 0x38]
mov r8, qword [rdx + 8]
mov edx, dword [rdx + 0x10]
call fcn.140232c20
mov byte [rdi + 0x1e], 0
lea rsi, [rbx + 0x24]
mov rcx, qword [rbx + 0x30]
mov r8, rsi
mov rdx, rdi
call fcn.1401ee6b0
mov rcx, qword [rsp + 0x68]
mov rdx, rdi
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.1401f6670
mov rdi, qword [rsp + 0x78]
test r15d, r15d
jne 0x140229891
mov ecx, dword [rsi]
test ecx, ecx
setne al
xor edx, edx
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x40]
mov byte [rbx + 3], r15b
mov dword [rbx + 0x20], edx
movzx eax, byte [rax]
cmp al, 0x1d
jne 0x14022a988
test ecx, ecx
je 0x14022a7b3
jmp 0x140226dc2
test ecx, ecx
jne 0x14022a7b3
cmp al, 0x1b
jne 0x14022a9de
mov rcx, rdx
movzx edx, word [rbp + 0xac]
test rdx, rdx
je 0x14022b2ba
mov rax, qword [rbp + 0x98]
add rax, 0x14
test byte [rax], 1
jne 0x14022a9cd
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x14022a9b2
mov rsi, qword [rsp + 0x68]
jmp 0x140226ec9
mov r12, qword [rsp + 0x40]
xor edx, edx
mov r9, qword [rsp + 0x58]
jmp 0x140228410
mov rsi, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
cmp byte [rsi], 0x1a
jne 0x14022b2e4
movzx eax, word [rsi + 0x10]
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov word [rbx + 0xc], ax
jmp 0x140226dd1
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
jne case.0x140226899.31
movups xmm0, xmmword [rcx]
movups xmmword [rbp + 0x1f0], xmm0
movups xmm2, xmmword [rcx + 0x10]
movups xmmword [rbp + 0x200], xmm2
movups xmm0, xmmword [rcx + 0x20]
movq rax, xmm2
movups xmmword [rbp + 0x210], xmm0
shr rax, 0x20
movsd xmm1, qword [rcx + 0x30]
movsd qword [rbp + 0x220], xmm1
test al, 4
jne 0x14022aa86
test al, 0x28
jne 0x14022aa78
test al, 2
je 0x14022aa86
mov edx, 1
lea rcx, [rbp + 0x1f0]
call fcn.1401b2720
mov r9, qword [rsp + 0x58]
jmp 0x14022aa84
lea rcx, [rbp + 0x1f0]
call fcn.140230290
xor edx, edx
test byte [rbp + 0x204], 4
je 0x14022e549
mov rdi, qword [rbp + 0x1f0]
jmp 0x14022aaad
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r11]
mov rax, qword [rsp + 0x40]
lea r9, [rbp - 0x70]
mov dword [rbp - 0x70], edx
xor r8d, r8d
mov rdx, rdi
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.1401f0990
mov qword [rbx + 0x50], rdi
xor edx, edx
mov byte [rbx + 2], 0
mov r15d, eax
mov dword [rbx + 0x20], edx
mov dword [rsp + 0x4c], eax
mov eax, dword [rbp - 0x70]
mov byte [rbx + 3], dl
mov dword [rbx + 0x24], eax
test eax, eax
je 0x14022ab0f
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 8], edx
je 0x14022e92b
mov r9, qword [rsp + 0x58]
jmp 0x140228410
test r15d, r15d
jne 0x14022870e
jmp 0x140226dc7
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x14022ab4b
mov rcx, rdx
call fcn.1401d92b0
mov r9, qword [rsp + 0x58]
mov rdx, rax
jmp 0x14022ab51
mov word [rdx + 0x14], 4
mov rax, qword [r13 + 0x78]
mov r12, rbx
movsxd rcx, dword [rbx + 4]
mov r11, qword [rsp + 0x60]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x18]
mov qword [rdx], rax
mov rax, rbx
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x140226a90
mov rsi, qword [rsp + 0x40]
mov rbx, rdx
mov qword [rbp - 0x70], rdx
mov dword [rbp - 0x80], edx
movsxd rax, dword [rsi + 8]
imul r14, rax, 0x38
mov eax, 0x9000
add r14, qword [r13 + 0x68]
test word [r14 + 0x14], ax
je 0x14022abba
mov rcx, r14
call fcn.1401d92b0
mov r14, rax
xor edx, edx
jmp 0x14022abc1
mov word [r14 + 0x14], 4
movsxd rcx, dword [rsi + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
test byte [rsi + 8], 2
jne 0x14022ac3a
mov rcx, qword [rsi + 0x30]
cmp byte [rcx], 0
jne 0x14022ac12
test byte [rcx + 1], 8
je 0x14022ac12
mov r15d, edx
mov dword [rsp + 0x4c], edx
mov rbx, qword [rsi + 0x30]
mov rcx, rbx
call fcn.1401cc690
mov rbx, qword [rbx + 0x30]
movabs r12, 0x7fffffffffffffff
mov qword [rbp - 0x70], rbx
cmp rbx, r12
jl 0x14022ac8a
or dword [rsi + 8], 2
jmp 0x14022ac44
lea rdx, [rbp - 0x80]
call fcn.1401b64b0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140229891
cmp dword [rbp - 0x80], eax
je 0x14022abe9
mov eax, 1
mov ebx, eax
mov qword [rbp - 0x70], rax
movabs r12, 0x7fffffffffffffff
mov rdx, qword [rsp + 0x40]
movsxd rax, dword [rdx + 0xc]
test eax, eax
je 0x14022acc3
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x14022ac93
mov rax, qword [rcx + 8]
test rax, rax
je 0x14022ac7c
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14022ac70
movsxd rax, dword [rdx + 0xc]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x14022ac9c
inc rbx
mov qword [rbp - 0x70], rbx
jmp 0x14022ac44
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.140231190
mov rax, qword [rdi]
cmp rax, r12
je 0x14022ad24
test byte [rsi + 8], 2
jne 0x14022ad24
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp - 0x70], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x14022ad34
xor eax, eax
mov edi, eax
nop dword [rax]
lea rdx, [rbp - 0x70]
mov ecx, 8
call fcn.1401ac7c0
mov rbx, qword [rbp - 0x70]
lea r9, [rbp - 0x80]
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.1401f0990
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022e740
cmp dword [rbp - 0x80], eax
jne 0x14022ad34
inc edi
cmp edi, 0x64
jl 0x14022acd0
mov rsi, qword [rsp + 0x68]
mov r15d, 0xd
jmp 0x14022870e
mov byte [rsi + 3], 0
xor edx, edx
mov dword [rsi + 0x20], edx
mov qword [r14], rbx
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
jmp 0x140226dd1
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 8]
movsxd rcx, dword [r15 + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, r11
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
mov qword [rbp + 0x130], rax
cmp byte [r15 + 1], 0xfb
jne 0x14022adb4
cmp qword [rsi + 0x140], 0
je 0x14022adb4
movsx rcx, byte [rbx + 1]
mov rax, qword [rsi + 0x20]
mov rdi, qword [r15 + 0x10]
shl rcx, 5
xor r8d, r8d
mov rsi, qword [rcx + rax]
jmp 0x14022adbd
xor r8d, r8d
mov edi, r8d
mov esi, r8d
test byte [r15 + 2], 1
je 0x14022addf
inc qword [r13 + 0x38]
test byte [r15 + 2], 0x20
je 0x14022addf
mov rcx, qword [rsp + 0x68]
mov rax, qword [rbp + 0x130]
mov qword [rcx + 0x38], rax
mov rax, qword [rdx + 8]
mov qword [rbp + 0x138], rax
mov eax, dword [rdx + 0x10]
mov dword [rbp + 0x14c], eax
test byte [r15 + 2], 0x10
je 0x14022ae00
mov r9d, dword [rbx + 0x24]
jmp 0x14022ae03
mov r9d, r8d
mov eax, 0x400
test word [rdx + 0x14], ax
je 0x14022ae18
mov eax, dword [rdx]
mov dword [rbp + 0x150], eax
jmp 0x14022ae1f
mov dword [rbp + 0x150], r8d
mov qword [rbp + 0x128], r8
lea rdx, [rbp + 0x128]
movzx r8d, word [r15 + 2]
mov rcx, qword [rbx + 0x30]
and r8d, 0x8a
call fcn.1401eeb70
xor edx, edx
mov byte [rbx + 3], 0
mov dword [rsp + 0x4c], eax
mov r15d, eax
mov dword [rbx + 0x20], edx
test eax, eax
jne 0x14022e740
test rdi, rdi
je 0x14022b2d0
mov rax, qword [rsp + 0x40]
mov r8, rsi
mov rsi, qword [rsp + 0x68]
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 + 0x130]
mov qword [rsp + 0x20], rax
call qword [rsi + 0x140]
jmp 0x140226ec9
mov r15, qword [rsp + 0x40]
mov rcx, qword [r13 + 0x78]
movsxd rax, dword [r15 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r15 + 8]
mov rdx, qword [rcx + rax*8]
movsxd rax, dword [r15 + 0xc]
test eax, eax
je 0x14022aecf
imul rcx, rax, 0x38
xor ebx, ebx
mov r8, qword [rcx + r11]
jmp 0x14022aed4
xor ebx, ebx
mov r8d, ebx
mov rdx, qword [rdx + 0x30]
mov rcx, qword [r9 + 0x30]
call fcn.1401f0c10
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x140226ec9
mov r14, qword [rsp + 0x40]
mov eax, 0xb
mov r12, qword [rsp + 0x70]
jmp 0x140228724
mov rax, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
cmp byte [rdx + 1], 0xfb
mov r15d, dword [rax + 8]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
jne 0x14022af6a
cmp qword [rsi + 0x140], 0
je 0x14022af6a
mov rax, qword [rsi + 0x20]
movsx rcx, byte [rdi + 1]
mov rsi, qword [rdx + 0x10]
shl rcx, 5
test byte [rdx + 2], 2
mov r14, qword [rcx + rax]
je 0x14022af71
cmp byte [rdi + 4], 0
je 0x14022af71
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.1401cc690
mov rax, qword [rbx + 0x30]
mov rdx, qword [rsp + 0x40]
mov qword [rdi + 0x50], rax
jmp 0x14022af71
xor eax, eax
mov r14d, eax
mov esi, eax
movzx edx, byte [rdx + 2]
mov rcx, qword [rdi + 0x30]
call fcn.1401edfc0
xor edx, edx
mov dword [rsp + 0x4c], eax
mov dword [rdi + 0x20], edx
mov dword [rdi + 0x24], edx
test eax, eax
jne 0x14022ecbe
test r15b, 1
je 0x14022b290
inc qword [r13 + 0x38]
mov rax, qword [rsp + 0x68]
mov r10, qword [rax + 0x140]
test r10, r10
je 0x14022b290
test rsi, rsi
je 0x14022b290
test byte [rsi + 0x30], 0x80
jne 0x14022b290
mov r9, qword [rsi]
mov r8, r14
mov rax, qword [rdi + 0x50]
mov edx, 9
mov rsi, qword [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsi + 0x138]
call r10
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ece
mov rax, qword [r13 + 0x38]
mov qword [rsi + 0x78], rax
add qword [rsi + 0x80], rax
mov qword [r13 + 0x38], rdx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rbx, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdx, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
mov ebx, dword [rbx + 0x10]
imul r15, rax, 0x38
mov rdi, qword [rdx + 0x30]
mov rsi, qword [rdx + 0x38]
add r15, r11
mov r14, qword [rdi + 0x30]
test r14, r14
jne 0x14022b071
mov rcx, rsi
call fcn.140225bd0
mov qword [rdi + 0x30], rax
mov r14, rax
test rax, rax
je 0x14022b18f
mov word [rax + 0x1c], bx
cmp byte [rdi + 0x58], 0
je 0x14022b0ad
cmp byte [rdi + 0x59], 0
je 0x14022b08b
mov rax, qword [rdi + 0x10]
mov r8, qword [rax + 0x28]
lea rdx, [rax + 0x14]
jmp 0x14022b0b5
mov rdx, qword [rdi + 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]
lea rdx, [rax + 0x14]
jmp 0x14022b0b5
mov rdx, qword [rdi + 0x38]
lea r8, [rdx + 0x10]
mov edx, dword [rdx]
mov r9, r14
mov rcx, rsi
call fcn.140232c20
xor edx, edx
mov ecx, edx
test ebx, ebx
jle 0x14022b0e5
mov rax, qword [r14 + 8]
add rax, 0x14
test byte [rax], 1
jne 0x14022a7ac
inc ecx
add rax, 0x38
cmp ecx, ebx
jl 0x14022b0d2
mov rdx, qword [r15 + 8]
xor r9d, r9d
mov ecx, dword [r15 + 0x10]
mov r8, r14
call fcn.140232330
xor edx, edx
mov dword [rsp + 0x4c], edx
mov r15d, edx
test eax, eax
jne 0x14022a7b3
mov dword [rsp + 0x4c], edx
jmp 0x14022ad40
mov rcx, qword [rsp + 0x40]
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 0x14022b16e
cmp byte [rax + 0x59], 0
je 0x14022b14c
mov rax, qword [rax + 0x10]
mov rsi, qword [rax + 0x28]
lea rdi, [rax + 0x14]
jmp 0x14022b176
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]
lea rdi, [rax + 0x14]
jmp 0x14022b176
mov rdi, qword [rax + 0x38]
lea rsi, [rdi + 0x10]
movsxd rdi, dword [rdi]
cmp dword [rbx + 0x20], edi
jge 0x14022b19f
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.140231010
test eax, eax
je 0x14022b1ac
mov rsi, qword [rsp + 0x68]
mov r15d, 7
jmp 0x14022870e
mov rax, qword [rbx + 0x28]
mov qword [rbx + 8], rax
and word [rbx + 0x14], 0x2d
mov dword [rbx + 0x10], edi
mov ecx, 0xf250
movzx eax, word [rbx + 0x14]
mov r8, rdi
and ax, cx
mov rdx, rsi
or ax, 0x10
mov word [rbx + 0x14], ax
mov rcx, qword [rbx + 8]
call fcn.140261190
mov rax, qword [rsp + 0x40]
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x20], edx
jmp 0x140226dc2
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x14022b21d
mov rcx, rbx
call fcn.1401d92b0
mov rbx, rax
jmp 0x14022b223
mov word [rbx + 0x14], 4
movsxd rcx, dword [r15 + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + 0x30]
mov rcx, rdi
call fcn.1401cc690
mov edx, dword [rdi + 0x40]
cmp edx, dword [rsi + 0x88]
ja 0x14022e971
mov r8, rbx
mov rcx, rdi
call fcn.140230fc0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022870e
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 0xc], eax
jne 0x14022b2bf
mov eax, 0x4000
test word [rbx + 0x14], ax
je 0x14022b2bf
mov rcx, rbx
call fcn.1402311f0
test eax, eax
jne 0x140228c57
jmp 0x140226ece
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
jmp 0x140226dd1
mov r15d, dword [rsp + 0x4c]
movzx r14d, byte [rsp + 0x48]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
xor edx, edx
mov rsi, qword [rsp + 0x68]
jmp 0x140226dd1
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
jmp 0x140226dd1
mov r12, rsi
mov rsi, qword [rsp + 0x68]
jmp 0x140226dd1
mov r12, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
jmp 0x140226dd1
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [r13 + 0x68]
test word [rdi + 0x14], ax
je 0x14022b330
mov rcx, rdi
call fcn.1401d92b0
mov r9, qword [rsp + 0x58]
mov rdi, rax
xor edx, edx
jmp 0x14022b336
mov word [rdi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x14022b36f
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov word [rdi + 0x14], 1
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
cmp byte [rbx + 3], 0
je 0x14022b385
mov rax, qword [rbx + 0x50]
mov qword [rbp - 0x28], rax
mov qword [rdi], rax
jmp 0x140226ec9
cmp byte [rbx], 2
mov rcx, qword [rbx + 0x30]
jne 0x14022b3c2
mov rbx, qword [rcx]
lea rdx, [rbp - 0x28]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.140234840
test r15d, r15d
jne 0x14022870e
mov rax, qword [rbp - 0x28]
mov qword [rdi], rax
jmp 0x140226ec9
cmp byte [rcx], 0
je 0x14022b3e2
mov rcx, rbx
call fcn.140230020
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022870e
xor edx, edx
jmp 0x14022b3e9
mov r15d, edx
mov dword [rsp + 0x4c], edx
cmp byte [rbx + 2], 0
je 0x14022b3fa
mov word [rdi + 0x14], 1
jmp 0x140226dc7
mov rbx, qword [rbx + 0x30]
mov rcx, rbx
call fcn.1401cc690
mov rax, qword [rbx + 0x30]
mov qword [rbp - 0x28], rax
mov qword [rdi], rax
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
movsxd rdx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rax, qword [rax + rdx*8]
test rax, rax
jne 0x14022b45e
mov r9b, 3
lea r8d, [rax + 1]
mov rcx, r13
call fcn.1401b06e0
test rax, rax
je 0x140228c5c
xor edx, edx
lea rcx, [0x140310984]
mov dword [rax + 0x24], edx
mov byte [rax + 4], 1
or dword [rax + 8], 8
mov qword [rax + 0x30], rcx
jmp 0x14022b460
xor edx, edx
mov byte [rax + 2], 1
mov dword [rax + 0x20], edx
cmp byte [rax], 0
jne 0x140226dc7
mov rcx, qword [rax + 0x30]
call fcn.1401ed310
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
mov dword [rbp - 0x70], edx
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov eax, edx
mov rcx, qword [rdi + 0x30]
cmp bl, 0x89
jne 0x14022b52f
mov dword [rdi + 0x24], 0xffffffff
cmp byte [rcx], 0
je 0x14022b525
lea rdx, [rbp - 0x70]
call fcn.1401b64b0
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov eax, dword [rbp - 0x70]
xor edx, edx
mov byte [rdi + 2], al
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], edx
test r15d, r15d
jne 0x14022870e
mov r9, qword [rsp + 0x58]
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 8], 0
jle 0x140226dcc
test eax, eax
jne 0x14022b6d2
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x140226dd1
xor edx, edx
mov r12, qword [rsp + 0x40]
jmp 0x140226dd1
cmp byte [rcx], 0
jne 0x14022b4ad
test byte [rcx + 1], 8
je 0x14022b4ad
mov byte [rdi + 2], dl
mov r15d, edx
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], edx
mov dword [rsp + 0x4c], edx
jmp 0x14022b4da
mov rax, qword [rsp + 0x40]
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.1401d5d60
mov r15d, eax
test eax, eax
jne 0x14022b5df
xor eax, eax
mov rcx, rbx
mov dword [rbp - 0x58], eax
call fcn.1401d5ab0
mov r15d, eax
mov edx, dword [rbp - 0x58]
mov dword [rbp - 0x58], edx
test r15d, r15d
jne 0x140228713
mov dword [rsp + 0x4c], r15d
test edx, edx
jne 0x14022dcd5
mov rcx, rbx
call fcn.1401f0380
test rax, rax
js 0x14022b5f0
mov rcx, rax
call fcn.14020c350
mov r12, qword [rsp + 0x40]
movsx ecx, ax
cmp ecx, dword [r12 + 0xc]
jge 0x14022b5f5
mov r9, qword [rsp + 0x58]
mov dword [rbp - 0x58], 1
mov dword [rsp + 0x4c], r15d
jmp 0x14022840e
cmp eax, 0x10
jne 0x14022b589
mov dword [rbp - 0x58], 1
jmp 0x14022d523
mov r12, qword [rsp + 0x40]
mov eax, dword [rbp - 0x58]
mov dword [rbp - 0x58], eax
mov dword [rsp + 0x4c], r15d
jmp 0x140226ece
inc dword [r13 + 0xdc]
mov rax, qword [rsp + 0x40]
mov r15d, 1
mov edi, r15d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
mov rbx, qword [rsi + 0x30]
cmp byte [rsi], dil
jne 0x14022b687
cmp byte [rbx + 0x58], 0
mov dword [rsp + 0x4c], edx
jne 0x14022b659
cmp qword [rbx + 0x38], 0
lea rdx, [rbx + 0x38]
je 0x14022b655
xor eax, eax
lea rcx, [rbx + 0x60]
mov edi, eax
call fcn.140248f10
mov dword [rsp + 0x4c], eax
xor edx, edx
jmp 0x14022b6b0
mov rcx, rbx
call fcn.140247f40
mov edx, eax
mov rcx, rbx
call fcn.1402480b0
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14022b683
mov rcx, rbx
call fcn.140248c40
mov dword [rsp + 0x4c], eax
xor eax, eax
mov edi, eax
xor edx, edx
jmp 0x14022b6b0
mov rcx, rbx
call fcn.1401d5d60
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14022b6dc
xor eax, eax
mov rcx, rbx
mov edi, eax
call fcn.1401d5ab0
mov dword [rsp + 0x4c], eax
xor edx, edx
mov byte [rsi + 3], 0
mov dword [rsi + 0x20], edx
mov r15d, dword [rsp + 0x4c]
test r15d, r15d
jne 0x14022e740
mov r12, qword [rsp + 0x40]
mov byte [rsi + 2], dil
cmp dword [r12 + 8], r15d
jle 0x14022b6e9
test edi, edi
je 0x14022b6e9
mov r9, qword [rsp + 0x58]
jmp 0x14022840e
cmp eax, 0x10
jne 0x14022b6a7
xor edx, edx
mov dword [rsp + 0x4c], edx
jmp 0x14022b6a9
mov rsi, qword [rsp + 0x68]
jmp 0x140226dcc
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
mov rdi, qword [rsi + 0x30]
mov qword [rbp - 0x60], rdi
cmp byte [rdi + 0x58], 0
je 0x14022b78f
cmp byte [rdi + 0x59], 0
je 0x14022b757
mov rcx, qword [rdi + 0x10]
call fcn.140247190
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14022b7d9
mov rax, qword [rdi + 0x10]
cmp qword [rax + 0x18], 0
jne 0x14022b7d9
mov rbx, qword [rsp + 0x40]
mov ecx, 0x65
mov rdi, qword [rsp + 0x78]
mov r15d, ecx
mov dword [rsp + 0x4c], ecx
jmp 0x14022b8b3
mov rcx, qword [rdi + 0x18]
mov dword [rbp - 0x70], edx
lea rdx, [rbp - 0x70]
call fcn.140246b30
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14022b7d9
cmp dword [rbp - 0x70], eax
je 0x14022b7d9
mov rbx, qword [rsp + 0x40]
mov ecx, 0x65
mov rdi, qword [rsp + 0x78]
mov r15d, ecx
mov dword [rsp + 0x4c], ecx
jmp 0x14022b8b3
mov rdx, qword [rdi + 0x38]
xor r14d, r14d
mov rax, qword [rdx + 8]
mov qword [rdi + 0x38], rax
mov qword [rdx + 8], r14
cmp qword [rdi + 0x40], r14
jne 0x14022b7c8
mov rdi, qword [rsp + 0x68]
nop dword [rax]
mov rbx, qword [rdx + 8]
mov rcx, rdi
call fcn.1401f6670
mov rdx, rbx
test rbx, rbx
jne 0x14022b7b0
mov rdi, qword [rbp - 0x60]
cmp qword [rdi + 0x38], r14
mov ecx, 0x65
cmovne ecx, r14d
mov dword [rsp + 0x4c], ecx
mov r15d, dword [rsp + 0x4c]
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
jmp 0x14022b8b3
mov rax, qword [r13 + 0x78]
mov rbx, qword [rsp + 0x40]
movsxd rcx, dword [rbx + 4]
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsi + 0x30]
and byte [rcx + 1], 0xf1
mov word [rcx + 0x46], dx
cmp byte [rcx], 0
jne 0x14022b83d
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x14022b83d
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], 0
je 0x14022b83d
dec dx
xor eax, eax
mov word [rcx + 0x56], dx
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov dword [rsi + 0x20], eax
jmp 0x14022b8bd
call fcn.1401b6fc0
jmp 0x14022b8ac
mov rax, qword [r13 + 0x78]
mov rbx, qword [rsp + 0x40]
movsxd rcx, dword [rbx + 4]
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsi + 0x30]
mov word [rcx + 0x46], dx
and byte [rcx + 1], 0xf9
cmp byte [rcx], 0
je 0x14022b86d
call fcn.1401b6750
jmp 0x14022b8ac
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 0x14022b893
mov word [rcx + 0x56], r8w
call fcn.1401b6750
jmp 0x14022b8ac
cmp byte [rdx + 8], 0
je 0x14022b8a7
xor eax, eax
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov dword [rsi + 0x20], eax
jmp 0x14022b8bd
call fcn.1401d5ab0
mov dword [rsp + 0x4c], eax
mov r15d, eax
xor edx, edx
mov dword [rsi + 0x20], edx
test r15d, r15d
jne 0x14022b8d2
mov byte [rsi + 2], 0
movzx eax, word [rbx + 2]
inc dword [r13 + rax*4 + 0xd4]
jmp 0x14022deaa
cmp r15d, 0x65
jne 0x140229891
mov r15d, edx
mov dword [rsp + 0x4c], edx
mov byte [rsi + 2], 1
mov rsi, qword [rsp + 0x68]
mov eax, dword [rsi + 0x198]
mov rdi, qword [rsp + 0x78]
test eax, eax
jne 0x14022ec9b
mov r14, qword [rsp + 0x70]
cmp rdi, r14
jb 0x14022c3e7
nop dword [rax]
mov rdx, qword [rsi + 0x210]
test rdx, rdx
je 0x14022c3e7
mov eax, dword [rsi + 0x220]
mov rcx, qword [rsi + 0x218]
add r14, rax
mov qword [rsp + 0x70], r14
call rdx
test eax, eax
jne 0x14022eaa0
cmp rdi, r14
jae 0x14022b910
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ece
mov r15, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r15 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r15 + 8]
imul rbx, rax, 0x38
add rbx, r11
test byte [r15 + 2], 1
je 0x14022b97b
inc qword [r13 + 0x38]
mov eax, 0x400
test word [rbx + 0x14], ax
je 0x14022b9a5
mov rcx, rbx
call fcn.140230d80
mov r15d, eax
test eax, eax
jne 0x14022870e
mov r15, qword [rsp + 0x40]
xor edx, edx
mov r11, qword [rsp + 0x60]
movsxd rax, dword [rbx + 0x10]
mov qword [rbp + 0x2a8], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x2a0], rax
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x2b8], rcx
movzx eax, word [r15 + 0x10]
mov word [rbp + 0x2c0], ax
movzx r8d, word [r15 + 2]
test r8b, 0x10
je 0x14022b9ea
mov r9d, dword [rdi + 0x24]
jmp 0x14022b9ed
mov r9d, edx
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x2a0]
and r8d, 0x8a
call fcn.1401eeb70
xor edx, edx
mov dword [rsp + 0x4c], eax
mov dword [rdi + 0x20], edx
mov r15d, eax
test eax, eax
jne 0x14022870e
jmp 0x140226dc7
mov rbx, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x14022ba57
mov rcx, rbx
call fcn.140230d80
mov r15d, eax
test eax, eax
jne 0x14022870e
mov rdx, rbx
mov rcx, rdi
call fcn.140233930
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022870e
jmp 0x140226ec9
mov rax, qword [r13 + 0x78]
lea r8, [rbp - 0x34]
mov r15, qword [rsp + 0x40]
lea rdx, [rbp + 0x278]
movsxd rcx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
mov rdi, qword [rbx + 0x30]
mov qword [rbp + 0x278], rax
movzx eax, word [r15 + 0xc]
mov word [rbp + 0x294], ax
mov byte [rbp + 0x296], 0
movsxd rax, dword [r15 + 8]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x280], rcx
mov rcx, rdi
call fcn.1401ee6b0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022870e
cmp dword [rbp - 0x34], eax
jne 0x14022bb0d
mov dl, 4
mov rcx, rdi
call fcn.1401edfc0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022870e
mov r12, qword [rsp + 0x40]
xor edx, edx
mov dword [rbx + 0x20], edx
mov dword [rbx + 0x24], edx
jmp 0x140226dcc
mov r12, qword [rsp + 0x40]
cmp word [r12 + 2], 0
je 0x14022bb2d
mov eax, dword [rsi + 0x30]
and eax, 0x10000001
cmp rax, 1
jne 0x14022e99c
xor edx, edx
mov dword [rbx + 0x20], edx
mov dword [rbx + 0x24], edx
jmp 0x140226dcc
mov rax, qword [rsp + 0x40]
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 0x14022bb74
mov rcx, rbx
call fcn.140230020
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140228713
mov r9, qword [rsp + 0x58]
xor edx, edx
jmp 0x14022bb7b
mov r15d, edx
mov dword [rsp + 0x4c], edx
cmp byte [rbx + 2], 0
jne 0x14022bc26
mov qword [rbp - 0x60], rdx
lea r8, [rbp - 0x60]
mov rdx, qword [rbx + 0x30]
mov rcx, rsi
call fcn.140230080
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140228713
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0x8d
jne 0x14022bbe9
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp - 0x60]
mov byte [rdx + 2], r15b
mov qword [rdx + 0x50], rax
xor eax, eax
mov byte [rdx + 3], 1
mov dword [rdx + 0x20], eax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x28], rbx
jmp 0x140226ec9
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], ax
je 0x14022bc14
call fcn.1401d92b0
mov rcx, rax
mov rax, qword [rbp - 0x60]
mov qword [rcx], rax
jmp 0x140226ec9
mov rax, qword [rbp - 0x60]
mov word [rcx + 0x14], 4
mov qword [rcx], rax
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
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 0x14022bc50
call fcn.1402464c0
jmp 0x140226ec9
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [rcx + 0x14], 1
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x140226e14
call fcn.14022f9a0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140228713
jmp 0x140226ec9
mov r15, qword [rsp + 0x40]
cmp bl, 0x2a
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r15 + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x38]
mov rbx, qword [rdx + 0x30]
mov qword [rbp + 0x250], rax
movzx eax, word [r15 + 0x10]
mov word [rbp + 0x26c], ax
sbb al, al
mov byte [rbp + 0x26e], al
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x258], rcx
mov rcx, rbx
call fcn.1401cc690
mov ecx, dword [rbx + 0x40]
lea eax, [rcx - 1]
cmp eax, 0x7ffffffe
ja 0x14022e9d7
mov qword [rbp + 0x108], rsi
xor r9d, r9d
mov word [rbp + 0x104], r9w
mov dword [rbp + 0x110], r9d
mov rax, qword [rbx + 0x88]
movzx edx, word [rbx + 0x44]
mov r8d, dword [rax + 0x58]
sub r8d, dword [rbx + 0x38]
cmp edx, r8d
jle 0x14022bd43
test r8d, r8d
mov edx, r8d
cmovs edx, r9d
mov rax, qword [rbx + 0x38]
mov qword [rbp + 0xf8], rax
cmp ecx, edx
ja 0x14022bd6e
mov edx, 0x4010
mov dword [rbp + 0x100], ecx
mov word [rbp + 0x104], dx
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
jmp 0x14022bd9e
mov r8d, ecx
lea r9, [rbp + 0xf0]
mov rcx, rbx
xor edx, edx
call fcn.140230eb0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140228713
mov ecx, dword [rbp + 0x100]
mov rax, qword [rbp + 0xf8]
xor r9d, r9d
lea r8, [rbp + 0x250]
mov rdx, rax
call fcn.140232330
cmp dword [rbp + 0x110], 0
mov ebx, eax
je 0x14022bdc7
lea rcx, [rbp + 0xf0]
call fcn.140246470
mov r12, qword [rsp + 0x40]
test byte [r12], 1
jne 0x14022bdd7
neg ebx
jmp 0x14022bdd9
inc ebx
test ebx, ebx
jg 0x14022dcda
jmp 0x140226ece
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [r13 + 0x68]
test word [rdi + 0x14], ax
je 0x14022be0f
mov rcx, rdi
call fcn.1401d92b0
mov rdi, rax
xor edx, edx
mov word [rdi + 0x14], 1
mov eax, dword [rsi + 0xe8]
inc eax
cmp dword [rsi + 0xdc], eax
jg 0x14022e9e9
mov rax, qword [rsp + 0x68]
movsxd r14, dword [r15 + 0xc]
mov esi, dword [r15 + 4]
mov rcx, r14
shl rcx, 5
mov rax, qword [rax + 0x20]
mov dword [rbp - 0x70], edx
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x14022be60
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x14022be60
mov rcx, rbx
call fcn.1401b6580
lea r8, [rbp - 0x70]
mov edx, esi
mov rcx, rbx
call fcn.1401b5ce0
cmp byte [rbx + 0x11], 0
mov r15d, eax
mov dword [rsp + 0x4c], eax
je 0x14022be89
sub dword [rbx + 0x14], 1
jne 0x14022be89
mov rcx, rbx
call fcn.140242ef0
movsxd rdx, dword [rbp - 0x70]
mov word [rdi + 0x14], 4
mov qword [rdi], rdx
test r15d, r15d
jne 0x14022e740
mov rsi, qword [rsp + 0x68]
test edx, edx
je 0x14022c3e7
mov rax, qword [rsp + 0x40]
mov r9, r14
shl r9, 5
add r9, qword [rsi + 0x20]
mov r8d, dword [rax + 4]
mov rax, qword [r9 + 0x18]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14022bee5
nop dword [rax]
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x28], edx
jne 0x14022bedd
mov dword [rax + 0x28], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x14022bed0
mov rax, qword [r9 + 0x18]
mov rcx, qword [rax + 0x28]
test rcx, rcx
je 0x14022bf07
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x58], edx
jne 0x14022beff
mov dword [rax + 0x58], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x14022bef2
mov r12, qword [rsp + 0x40]
inc r14b
mov byte [rbp - 0x64], r14b
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ece
mov r15, qword [rsp + 0x40]
lea r8, [rbp - 0x20]
mov qword [rbp - 0x20], rdx
mov rcx, qword [rsi + 0x20]
movsxd rax, dword [r15 + 8]
mov edx, dword [r15 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1401ed3d0
mov r12, qword [rsp + 0x40]
mov r15d, eax
mov r11, qword [rsp + 0x60]
mov dword [rsp + 0x4c], eax
cmp dword [r12 + 0xc], 0
je 0x14022bf7d
mov rax, qword [rbp - 0x20]
add qword [r13 + 0x38], rax
mov rax, r12
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x14022bf7d
imul rcx, rax, 0x38
mov rax, qword [rbp - 0x20]
add qword [rcx + r11], rax
test r15d, r15d
jne 0x140228713
jmp 0x140226ed3
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x14022bfb2
mov rdx, qword [rcx + 0x30]
mov rcx, rsi
call fcn.1402336a0
jmp 0x140226ec9
mov rcx, qword [rcx + 0x30]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.1401ed3d0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140228713
jmp 0x140226ec9
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [r13 + 0x68]
test word [rdi + 0x14], ax
je 0x14022c004
mov rcx, rdi
call fcn.1401d92b0
mov rdi, rax
xor edx, edx
jmp 0x14022c00a
mov word [rdi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov rax, qword [rsp + 0x68]
mov esi, dword [rbx + 0xc]
shl rcx, 5
mov dword [rbp - 0x70], edx
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x14022c03d
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x14022c03d
mov rcx, rbx
call fcn.1401b6580
mov r8d, esi
lea rdx, [rbp - 0x70]
mov rcx, rbx
call fcn.1401b57e0
cmp byte [rbx + 0x11], 0
mov r15d, eax
mov dword [rsp + 0x4c], eax
je 0x14022c067
sub dword [rbx + 0x14], 1
jne 0x14022c067
mov rcx, rbx
call fcn.140242ef0
mov rsi, qword [rsp + 0x68]
test r15d, r15d
jne 0x14022870e
mov eax, dword [rbp - 0x70]
mov qword [rdi], rax
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
xor r9d, r9d
inc byte [rsi + 0x70]
xor r8d, r8d
mov qword [rsp + 0x20], rdx
mov rcx, rsi
mov rdx, qword [rax + 0x10]
call fcn.1401aa3a0
dec byte [rsi + 0x70]
mov r15d, eax
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x140228713
jmp 0x140226ec9
mov r15, qword [rsp + 0x40]
cmp qword [r15 + 0x10], 0
movsxd rbx, dword [r15 + 4]
jne 0x14022c10d
mov rcx, qword [rsi + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.14021a2f0
and dword [rsi + 0x2c], 0xffffffef
lea r8, [r13 + 0xa8]
movzx r9d, word [r15 + 2]
mov edx, ebx
mov rcx, rsi
call fcn.140208c10
or dword [rsi + 0x2c], 1
mov r15d, eax
and dword [r13 + 0xc8], 0xfffffffc
mov dword [rsp + 0x4c], eax
jmp 0x14022c1fd
mov dword [rbp + 0x48], edx
lea rax, [r13 + 0xa8]
mov qword [rbp + 0x38], rax
lea r9, str.sqlite_master
mov qword [rbp + 0x30], rsi
mov rdx, rbx
mov dword [rbp + 0x40], 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 + 0x50], ecx
mov rcx, rsi
mov r8, qword [rsi + 0x20]
mov rax, qword [r15 + 0x10]
mov qword [rsp + 0x20], rax
mov r8, qword [rdx + r8]
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
call fcn.14020c620
mov rbx, rax
mov rcx, rsi
test rax, rax
je 0x14022e9fc
xor eax, eax
mov byte [rsi + 0xc5], 1
lea r9, [rbp + 0x30]
mov dword [rbp + 0x44], eax
lea r8, [fcn.140208910]
mov dword [rbp + 0x4c], eax
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.1401aa3a0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022c1eb
mov r15d, dword [rbp + 0x44]
mov dword [rsp + 0x4c], r15d
test r15d, r15d
jne 0x14022c1eb
cmp dword [rbp + 0x4c], r15d
jne 0x14022c1eb
lea rax, [0x14028d654]
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.140199ed0
mov dword [rsp + 0x4c], r15d
mov rdx, rbx
mov rcx, rsi
call fcn.1401f6670
mov byte [rsi + 0xc5], 0
test r15d, r15d
je 0x140226ec9
mov rcx, rsi
call fcn.1402187a0
mov r12, qword [rsp + 0x70]
cmp r15d, 7
je 0x140228c61
mov r14, qword [rsp + 0x40]
mov eax, 0xb
jmp 0x140228722
mov rax, qword [rsp + 0x40]
mov rcx, rsi
mov edx, dword [rax + 4]
call fcn.1401ea9c0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140228713
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
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.140207e30
test rax, rax
je 0x14022c299
cmp qword [rsi + 0x308], 0
jne 0x14022c28e
mov ecx, 0xffffffff
add dword [rax + 0x2c], ecx
jne 0x14022c299
mov rdx, rax
mov rcx, rsi
call fcn.1401bfd30
or dword [rsi + 0x2c], 1
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x40]
add rcx, 0x20
mov rdx, qword [rax + 0x10]
call fcn.140207e30
mov r8, rax
test rax, rax
je 0x14022c299
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
cmp rcx, r8
jne 0x14022c2fe
mov rcx, qword [r8 + 0x28]
mov rdx, r8
mov qword [rax + 0x10], rcx
mov rcx, rsi
call fcn.1402034f0
or dword [rsi + 0x2c], 1
jmp 0x140226ec9
test rcx, rcx
je 0x14022c330
lea rdx, [rcx + 0x28]
mov rcx, qword [rcx + 0x28]
cmp rcx, r8
je 0x14022c329
test rcx, rcx
jne 0x14022c303
mov rdx, r8
mov rcx, rsi
call fcn.1402034f0
or dword [rsi + 0x2c], 1
jmp 0x140226ec9
mov rax, qword [r8 + 0x28]
mov qword [rdx], rax
mov rdx, r8
mov rcx, rsi
call fcn.1402034f0
or dword [rsi + 0x2c], 1
jmp 0x140226ec9
mov rbx, qword [rsp + 0x40]
xor r8d, r8d
mov rax, qword [rsi + 0x20]
movsxd rcx, dword [rbx + 4]
mov rdx, qword [rbx + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
add rcx, 0x38
call fcn.140207e30
mov rbx, rax
test rax, rax
je 0x140226ec9
mov rcx, qword [rax + 0x30]
cmp qword [rax + 0x28], rcx
jne 0x14022c3d3
mov rdx, qword [rax + 8]
add rcx, 8
xor r8d, r8d
call fcn.1401c61a0
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x14022c3d3
mov rax, qword [rdx + 0x58]
add rdx, 0x58
test rax, rax
je 0x14022c3d3
cmp rax, rbx
je 0x14022c3cc
lea rdx, [rax + 0x40]
mov rax, qword [rax + 0x40]
test rax, rax
jne 0x14022c3a6
mov rdx, rbx
mov rcx, rsi
call fcn.1401f7c50
or dword [rsi + 0x2c], 1
jmp 0x140226ec9
mov rax, qword [rax + 0x40]
mov qword [rdx], rax
mov rdx, rbx
mov rcx, rsi
call fcn.1401f7c50
or dword [rsi + 0x2c], 1
jmp 0x140226ec9
movzx r14d, byte [rsp + 0x48]
jmp 0x140226ec9
mov r15, qword [rsp + 0x40]
lea r9, [rbp - 0x10]
mov rdx, qword [rsi + 0x20]
mov qword [rsp + 0x30], r9
lea r9, [rbp - 0x30]
mov qword [rsp + 0x28], r9
movsxd rax, dword [r15 + 0xc]
mov r8, qword [r15 + 0x10]
mov r9d, dword [r15 + 8]
add r8, 4
imul rdi, rax, 0x38
movsxd rax, dword [r15 + 4]
imul rbx, rax, 0x38
movzx eax, word [r15 + 2]
add rdi, r11
shl rax, 5
add rbx, r11
mov ecx, dword [rdi]
mov rdx, qword [rax + rdx + 8]
inc ecx
mov dword [rsp + 0x20], ecx
mov rcx, rsi
call fcn.1401ef0b0
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x14022c469
mov rcx, rbx
call fcn.1402464c0
jmp 0x14022c46f
mov word [rbx + 0x14], 1
mov eax, dword [rbp - 0x30]
test eax, eax
je 0x14022c4a9
test r15d, r15d
jne 0x14022ea06
mov rdx, qword [rbp - 0x10]
dec eax
movsxd rcx, eax
mov r9b, 1
sub qword [rdi], rcx
lea rax, [fcn.1401ac610]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov r8, 0xffffffffffffffff
call fcn.140231540
test byte [rbx + 0x14], 2
jne 0x14022c4b8
mov byte [rbx + 0x16], r14b
jmp 0x14022b8ec
cmp byte [rbx + 0x16], r14b
je 0x14022b8ec
movzx edx, r14b
mov rcx, rbx
call fcn.140231940
jmp 0x14022b8ec
mov rcx, qword [rsp + 0x40]
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 0x14022c504
mov rcx, rbx
call fcn.140231440
test eax, eax
jne 0x140228c57
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.1402191f0
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
test byte [rdi + 0x14], 0x10
je 0x14022c5a6
mov rbx, qword [rdi + 8]
movzx eax, word [rbx + 0x32]
test al, 2
jne 0x14022c54d
test al, 1
jne 0x14022c548
mov rcx, qword [rbx + 0x10]
call fcn.1401e49e0
mov qword [rbx + 0x10], rax
or word [rbx + 0x32], 3
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x14022c5a6
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x14022c56e
mov rcx, rbx
call fcn.140219120
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsp + 0x60]
test word [rcx + 0x14], ax
je 0x14022c598
mov rdx, rdi
call fcn.140247750
jmp 0x14022b8ec
mov qword [rcx], rdi
mov word [rcx + 0x14], 4
jmp 0x14022b8ec
mov eax, 0x9000
test word [rdi + 0x14], ax
je 0x14022c5be
mov rcx, rdi
call fcn.1402464c0
jmp case.0x140226899.9
mov word [rdi + 0x14], 1
jmp case.0x140226899.9
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 0x14], 0x10
jne 0x14022c5fd
mov rcx, rbx
call fcn.140231440
test eax, eax
jne 0x14022ecb4
test esi, esi
je 0x14022c619
mov r8, qword [rdi]
mov edx, esi
mov rcx, qword [rbx + 8]
call fcn.140219260
test eax, eax
jne 0x14022dcd5
test esi, esi
js 0x140227490
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.1402191f0
mov rsi, qword [rsp + 0x68]
jmp 0x140226ec9
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 0xc]
mov r12, qword [rcx + 0x10]
imul r15, rax, 0x38
add r15, r11
cmp word [rcx + 2], 0
je 0x14022c674
mov rax, qword [r13 + 0x108]
mov rcx, qword [r12 + 0x20]
test rax, rax
je 0x14022c674
cmp qword [rax + 0x30], rcx
je 0x14022e553
mov rax, qword [rax + 8]
test rax, rax
jne 0x14022c661
mov eax, dword [rsi + 0xb0]
cmp dword [r13 + 0x118], eax
jge 0x14022ea14
test byte [r15 + 0x14], 0x10
jne 0x14022c7c3
mov edx, dword [r12 + 0x10]
mov ecx, dword [r12 + 0xc]
add ecx, edx
test edx, edx
lea edi, [rcx + 1]
cmovne edi, ecx
lea eax, [rdi + 2]
imul ecx, eax, 7
mov eax, dword [r12 + 8]
add ecx, edx
add eax, 7
jns 0x14022c6bb
add eax, 7
sar eax, 3
lea r14d, [rax + rcx*8]
mov rcx, qword [rsp + 0x68]
movsxd rsi, r14d
mov rdx, rsi
call fcn.1401f6800
mov rbx, rax
test rax, rax
je 0x14022ecb4
mov r8, rsi
xor edx, edx
mov rcx, rax
call fcn.140261910
mov eax, 0x9000
test word [r15 + 0x14], ax
jne 0x14022c6fe
cmp dword [r15 + 0x20], 0
je 0x14022c706
mov rcx, r15
call fcn.140246470
mov rcx, qword [rsp + 0x40]
lea rax, [0x14022fa10]
sub rcx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x68]
mov word [r15 + 0x14], 0x1010
mov qword [r15 + 8], rbx
mov dword [r15 + 0x10], r14d
mov qword [r15 + 0x30], rax
mov qword [rbx], r13
mov dword [rbx + 0x58], edi
mov eax, dword [r12 + 0x10]
mov dword [rbx + 0x5c], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 0x4c], edx
xor edx, edx
mov rax, qword [r13 + 0x68]
mov qword [rbx + 0x18], rax
mov eax, dword [r13 + 0x24]
mov dword [rbx + 0x54], eax
mov rax, qword [r13 + 0x78]
mov qword [rbx + 0x20], rax
mov eax, dword [r13 + 0x28]
mov dword [rbx + 0x48], eax
mov rax, qword [r13 + 0x88]
mov qword [rbx + 0x10], rax
mov eax, dword [r13 + 0x90]
mov dword [rbx + 0x50], eax
mov rax, qword [r12 + 0x20]
mov qword [rbx + 0x30], rax
movsxd rax, edi
add rax, 2
imul rcx, rax, 0x38
lea rax, [rbx + 0x70]
add rcx, rbx
cmp rax, rcx
je 0x14022c7c7
mov word [rax + 0x14], dx
mov qword [rax + 0x18], rsi
add rax, 0x38
cmp rax, rcx
jne 0x14022c7b0
jmp 0x14022c7c7
mov rbx, qword [r15 + 8]
inc dword [r13 + 0x118]
mov rax, qword [r13 + 0x108]
mov qword [rbx + 8], rax
mov rax, qword [rsi + 0x38]
mov qword [rbx + 0x38], rax
mov rax, qword [r13 + 0x38]
mov qword [rbx + 0x60], rax
mov rax, qword [r13]
mov rcx, qword [rax + 0x78]
mov qword [rbx + 0x68], rcx
mov rax, qword [r13 + 0x128]
mov qword [rbx + 0x40], rax
mov qword [r13 + 0x128], rdx
mov qword [r13 + 0x38], rdx
lea rdx, [rbx + 0x70]
mov qword [r13 + 0x108], rbx
mov qword [r13 + 0x68], rdx
movsxd rcx, dword [rbx + 0x58]
mov dword [r13 + 0x24], ecx
movzx eax, word [rbx + 0x5c]
mov dword [r13 + 0x28], eax
mov qword [rsp + 0x60], rdx
imul rcx, rcx, 0x38
add rdx, rcx
mov qword [r13 + 0x78], rdx
movsxd rax, dword [r12 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [rbx + 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.140261910
mov rcx, qword [r12]
mov r15d, dword [rsp + 0x4c]
mov qword [r13 + 0x88], rcx
mov eax, dword [r12 + 8]
mov qword [rsp + 0x58], rcx
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x40], rcx
mov dword [r13 + 0x90], eax
jmp 0x14022b8ec
mov rax, qword [rsp + 0x40]
mov ebx, 0x9000
movsxd rax, dword [rax + 8]
imul r9, rax, 0x38
add r9, qword [r13 + 0x68]
test word [r9 + 0x14], bx
je 0x14022c8bb
mov rcx, r9
call fcn.1401d92b0
mov r9, rax
jmp 0x14022c8c2
mov word [r9 + 0x14], 4
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 + 0x40]
add edx, dword [rax + 4]
movsxd rax, edx
imul rcx, rax, 0x38
add rcx, qword [r8 + 0x18]
test word [r9 + 0x14], bx
je 0x14022c909
mov rdx, rcx
mov r8d, 0x4000
mov rcx, r9
call fcn.1402455f0
jmp 0x140226ec9
movups xmm0, xmmword [rcx]
mov r12, qword [rsp + 0x40]
mov eax, 0x2000
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
movups xmmword [r9], xmm0
movsd xmm1, qword [rcx + 0x10]
movsd qword [r9 + 0x10], xmm1
test word [rcx + 0x14], ax
jne 0x140226d21
mov eax, 0xcfff
and word [r9 + 0x14], ax
mov eax, 0x4000
or word [r9 + 0x14], ax
jmp 0x140226ed8
mov eax, dword [rsi + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x40]
mov r12, rax
jae 0x14022c981
movsxd rax, dword [rax + 8]
add qword [rsi + 0x300], rax
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
cmp dword [rax + 4], 0
movsxd rax, dword [rax + 8]
je 0x14022c9a4
add qword [rsi + 0x2f8], rax
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
add qword [r13 + 0x50], rax
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
cmp dword [r12 + 4], 0
je 0x14022c9f0
cmp qword [rsi + 0x2f8], 0
jne case.0x140226899.89
cmp qword [rsi + 0x300], 0
je 0x140228410
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
cmp qword [r13 + 0x50], 0
jne case.0x140226899.89
cmp qword [rsi + 0x300], 0
je 0x140228410
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x14022ca4f
mov rax, qword [rcx + 8]
test rax, rax
je 0x14022ca3c
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14022ca30
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x14022ca5f
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
mov rcx, rdi
call fcn.140231190
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movsxd rax, dword [r12 + 8]
imul rbx, rax, 0x38
add rbx, r11
movzx eax, word [rbx + 0x14]
test al, 0x24
je 0x14022ca8c
mov rax, qword [rbx]
xor edx, edx
jmp 0x14022cabd
test al, 8
je 0x14022ca9d
movsd xmm0, qword [rbx]
call fcn.1401c0110
xor edx, edx
jmp 0x14022cabd
test al, 0x12
je 0x14022cab9
cmp qword [rbx + 8], 0
je 0x14022cab9
mov rcx, rbx
call fcn.1401d5640
mov r11, qword [rsp + 0x60]
xor edx, edx
jmp 0x14022cabd
xor edx, edx
mov eax, edx
mov qword [rbx], rax
mov ecx, 0xf244
and word [rbx + 0x14], cx
or word [rbx + 0x14], 4
cmp qword [rdi], rax
jge 0x140226ece
mov qword [rdi], rax
jmp 0x140226dd1
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r11]
test rdx, rdx
jle 0x140226a95
mov rax, r12
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r11], rdx
jmp 0x14022840e
mov rcx, qword [rsp + 0x40]
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 0x14022cb5b
mov rcx, r8
call fcn.1401d92b0
mov r11, qword [rsp + 0x60]
mov r8, rax
mov r9, qword [rsp + 0x58]
jmp 0x14022cb62
mov word [r8 + 0x14], 4
mov rdx, qword [rbx]
test rdx, rdx
jle 0x14022cba0
mov rcx, qword [rdi]
mov eax, 0
test rcx, rcx
cmovle rcx, rax
test rcx, rcx
js 0x14022cb90
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jl 0x14022cba0
mov r12, qword [rsp + 0x40]
add rdx, rcx
mov qword [r8], rdx
jmp 0x140226a90
mov r12, qword [rsp + 0x40]
mov rdx, 0xffffffffffffffff
mov qword [r8], rdx
jmp 0x140226a90
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
test rax, rax
je 0x140226e14
mov r12, qword [rsp + 0x40]
jle 0x140228410
dec rax
mov qword [rcx + r11], rax
jmp 0x140228410
mov rax, qword [rsp + 0x40]
movabs r8, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
cmp rax, r8
jle 0x14022cc0c
dec rax
mov qword [rcx + r11], rax
mov r12, qword [rsp + 0x40]
test rax, rax
je 0x140228410
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
mov rcx, rsi
movzx ebx, word [rax + 2]
lea rdx, [rbx*8 + 0x68]
call fcn.1401f6800
mov r8, rax
test rax, rax
je 0x140228c57
xor r12d, r12d
lea rcx, [rbx + 6]
mov qword [rax + 0x10], r12
lea rcx, [rax + rcx*8]
mov qword [rax], rcx
mov rax, qword [rsp + 0x40]
mov word [rcx + 0x14], 1
mov qword [rcx + 0x18], rsi
mov dword [rcx + 0x20], r12d
mov rcx, qword [rax + 0x10]
mov qword [r8 + 8], rcx
mov rcx, rax
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, qword [rsp + 0x40]
mov dword [r8 + 0x20], edx
mov qword [r8 + 0x18], r13
mov byte [r8 + 0x29], r12b
mov dword [r8 + 0x24], r12d
mov byte [r8 + 0x28], r14b
mov byte [r8 + 0x2a], bl
mov byte [rax + 1], 0xf1
mov qword [rax + 0x10], r8
mov byte [rax], 0xa3
jmp 0x14022ccd3
mov rax, qword [rsp + 0x40]
xor r12d, r12d
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
mov rdi, qword [rsp + 0x60]
imul r10, rax, 0x38
add r10, rdi
cmp qword [rbx + 0x10], r10
je 0x14022cd35
mov qword [rbx + 0x10], r10
movzx eax, byte [rbx + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x14022cd35
mov rsi, qword [rsp + 0x40]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop
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 0x14022cd10
mov rsi, qword [rsp + 0x68]
inc dword [r10 + 0x10]
lea r8, [rbx + 0x30]
mov rcx, qword [rsp + 0x40]
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
cmp dword [rcx + 4], 0
mov rcx, rbx
je 0x14022cd58
call qword [rax + 0x30]
jmp 0x14022cd5b
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x140226ec9
jle 0x14022cdc4
mov rcx, qword [rbx]
test rcx, rcx
jne 0x14022cd75
mov rax, r12
jmp 0x14022cda9
movzx edx, word [rcx + 0x14]
mov r8d, 0x202
movzx eax, dx
and ax, r8w
cmp ax, r8w
jne 0x14022cd98
cmp byte [rcx + 0x16], 1
jne 0x14022cd98
mov rax, qword [rcx + 8]
jmp 0x14022cda9
test dl, 1
je 0x14022cda2
mov rax, r12
jmp 0x14022cda9
mov dl, 1
call fcn.140245190
mov r8, rax
lea rdx, [0x140288758]
mov rcx, r13
call fcn.1402266e0
mov r15d, dword [rbx + 0x24]
mov dword [rsp + 0x4c], r15d
cmp byte [rbx + 0x29], 0
je 0x14022ce07
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x14022ce03
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, rdi
test word [rcx + 0x14], ax
je 0x14022cdf5
mov edx, 1
call fcn.140247750
jmp 0x14022ce03
mov eax, 1
mov qword [rcx], rax
mov word [rcx + 0x14], 4
mov byte [rbx + 0x29], 0
mov rcx, qword [rbx]
mov eax, 0x9000
test word [rcx + 0x14], ax
jne 0x14022ce1b
cmp dword [rcx + 0x20], 0
je 0x14022ce20
call fcn.140246470
mov rax, qword [rbx]
xor edx, edx
mov word [rax + 0x14], 1
mov dword [rbx + 0x24], edx
test r15d, r15d
jne 0x14022870e
mov r12, qword [rsp + 0x40]
mov r11, rdi
jmp 0x140226dd1
mov rcx, qword [rsp + 0x40]
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 0x14022cefc
imul rdi, rax, 0x38
xorps xmm0, xmm0
movups xmmword [rbp + 0x158], xmm0
movups xmmword [rbp + 0x168], xmm0
xor eax, eax
mov qword [rbp + 0x188], rax
add rdi, r11
mov eax, 0x9000
movups xmmword [rbp + 0x178], xmm0
test word [rdi + 0x14], ax
je 0x14022cea1
mov rcx, rdi
call fcn.1402464c0
jmp 0x14022cea7
mov word [rdi + 0x14], 1
mov qword [rbp + 0x158], rdi
mov qword [rbp + 0x168], rbx
mov qword [rbp + 0x160], rsi
mov rax, qword [rbx + 0x18]
movzx ecx, byte [rax + 0x64]
mov byte [rbp + 0x180], cl
lea rcx, [rbp + 0x158]
call qword [rsi + 0x28]
mov rax, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15d, dword [rbp + 0x17c]
mov rdi, qword [rsp + 0x78]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
mov dword [rsp + 0x4c], r15d
add rbx, r11
jmp 0x14022cf13
mov rdx, rsi
mov rcx, rbx
call fcn.140230df0
mov r11, qword [rsp + 0x60]
mov r15d, eax
mov dword [rsp + 0x4c], eax
test r15d, r15d
jne 0x14022ea2e
test byte [rbx + 0x14], 2
jne 0x14022cf35
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov byte [rbx + 0x16], r14b
jmp 0x140226ed3
cmp byte [rbx + 0x16], r14b
je 0x140227490
movzx edx, r14b
mov rcx, rbx
call fcn.140231940
mov rsi, qword [rsp + 0x68]
jmp 0x140226ec9
lea rax, [rbp + 0x2d8]
mov dword [rbp + 0x2d0], edx
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x2d4]
mov rax, qword [rsp + 0x40]
mov rcx, rsi
mov dword [rbp + 0x2d8], 0xffffffff
mov dword [rbp + 0x2d4], 0xffffffff
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.1401f1680
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x14022cfb8
cmp eax, 5
jne 0x140228713
xor eax, eax
mov r15d, eax
mov dword [rsp + 0x4c], eax
lea ecx, [rax + 1]
jmp 0x14022cfbe
mov ecx, dword [rbp + 0x2d0]
mov rax, qword [rsp + 0x40]
mov r13d, 0x9000
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
movsxd rax, ecx
add rbx, qword [rsp + 0x60]
test word [rbx + 0x14], r13w
je 0x14022cff2
mov rdx, rax
mov rcx, rbx
call fcn.140247750
mov edx, 4
jmp 0x14022cffe
mov edx, 4
mov qword [rbx], rax
mov word [rbx + 0x14], dx
lea rcx, [rbx + 0x38]
movsxd rax, dword [rbp + 0x2d4]
test word [rbx + 0x4c], r13w
je 0x14022d01f
mov rdx, rax
call fcn.140247750
mov edx, 4
jmp 0x14022d026
mov qword [rcx], rax
mov word [rbx + 0x4c], dx
lea rcx, [rbx + 0x70]
movsxd rax, dword [rbp + 0x2d8]
test word [rbx + 0x84], r13w
je 0x14022d048
mov rdx, rax
call fcn.140247750
jmp 0x140226ec9
mov qword [rcx], rax
mov word [rbx + 0x84], dx
jmp 0x140226ec9
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul r15, rax, 0x38
mov eax, 0x9000
add r15, qword [r13 + 0x68]
test word [r15 + 0x14], ax
je 0x14022d081
mov rcx, r15
call fcn.1401d92b0
mov r15, rax
jmp 0x14022d088
mov word [r15 + 0x14], 4
mov rax, qword [rsi + 0x20]
mov edx, dword [rbx + 0xc]
movsxd rcx, dword [rbx + 4]
shl rcx, 5
cmp edx, 0xffffffff
mov r13, qword [rcx + rax + 8]
mov rax, qword [r13 + 8]
mov rbx, qword [rax]
movzx r14d, byte [rbx + 9]
mov esi, r14d
cmovne esi, edx
cmp byte [rbx + 0x15], 3
jae 0x14022d0c8
mov rax, qword [rbx + 0x50]
cmp qword [rax], 0
je 0x14022d0cb
cmp qword [rbx + 0x60], 0
jle 0x14022d0cb
mov esi, r14d
cmp byte [rbx + 0x13], 0
jne 0x14022d0e6
lea rax, [0x14030e440]
cmp qword [rbx], rax
je 0x14022d0e6
mov rcx, qword [rbx + 0xd8]
jmp 0x14022d0ed
lea rcx, [0x140281b9c]
cmp esi, 5
jne 0x14022d164
test rcx, rcx
je 0x14022d12f
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x14022d100
test eax, 0x3fffffff
je 0x14022d12f
cmp byte [rbx + 0x11], 0
mov rax, qword [rbx + 0x48]
mov rcx, qword [rax]
jne 0x14022d12f
cmp byte [rbx + 8], 0
jne 0x14022d164
cmp dword [rcx], 2
jl 0x14022d12f
cmp qword [rcx + 0x68], 0
jne 0x14022d164
mov esi, r14d
mov ecx, dword [rsp + 0x4c]
test ecx, ecx
je 0x14022d13d
mov esi, r14d
mov edx, esi
mov rcx, rbx
call fcn.14020f2c0
mov word [r15 + 0x14], 0x2202
cmp eax, 6
jne 0x14022d2e1
xor ebx, ebx
mov qword [r15 + 8], rbx
mov eax, ebx
jmp 0x14022d320
cmp esi, r14d
je 0x14022d132
cmp r14d, 5
je 0x14022d174
cmp esi, 5
jne 0x14022d132
mov r12, qword [rsp + 0x68]
cmp byte [r12 + 0x65], 0
je 0x14022ea52
cmp dword [r12 + 0xdc], 1
jg 0x14022ea52
cmp r14d, 5
jne 0x14022d2a5
xor ecx, ecx
mov edi, ecx
cmp qword [rbx + 0x128], rcx
jne 0x14022d21b
mov dword [rbp - 0x48], ecx
movzx eax, byte [rbx + 0x16]
cmp al, 1
jb 0x14022d1bb
cmp al, r14b
jne 0x14022d1df
cmp byte [rbx + 0x11], cl
jne 0x14022d1d5
mov rcx, qword [rbx + 0x48]
mov edx, 1
mov rax, qword [rcx]
call qword [rax + 0x38]
mov edi, eax
test eax, eax
jne 0x14022d1df
cmp byte [rbx + 0x16], 5
je 0x14022d1df
mov byte [rbx + 0x16], 1
test edi, edi
jne 0x14022d28d
mov rax, qword [rbx]
lea r9, [rbp - 0x48]
mov rdx, qword [rbx + 0x130]
xor r8d, r8d
mov rcx, rax
call qword [rax + 0x38]
mov edi, eax
test eax, eax
jne 0x14022d28d
cmp dword [rbp - 0x48], eax
je 0x14022d21b
mov rcx, rbx
call fcn.1401d9c20
mov edi, eax
test eax, eax
jne 0x14022d28d
cmp qword [rbx + 0x128], 0
je 0x14022d28d
mov rcx, rbx
call fcn.1401d9920
mov edi, eax
test eax, eax
jne 0x14022d28d
mov rax, qword [rbx + 0x118]
mov rdx, r12
movzx r8d, byte [rbx + 0xf]
mov r9d, dword [rbx + 0xc8]
mov rcx, qword [rbx + 0x128]
mov qword [rsp + 0x20], rax
call fcn.1402353c0
mov edi, eax
mov dword [rsp + 0x4c], eax
xor eax, eax
mov rcx, rbx
mov qword [rbx + 0x128], rax
call fcn.1401d99b0
test edi, edi
je 0x14022d28d
cmp byte [rbx + 8], 0
jne 0x14022d28d
mov edx, 1
mov rcx, rbx
call fcn.1401da4d0
jmp 0x14022d13a
mov dword [rsp + 0x4c], edi
test edi, edi
jne 0x14022d13a
mov edx, esi
mov rcx, rbx
call fcn.14020f2c0
jmp 0x14022d2c2
cmp r14d, 4
jne 0x14022d2b7
lea edx, [r14 - 2]
mov rcx, rbx
call fcn.14020f2c0
cmp dword [rsp + 0x4c], 0
jne 0x14022d13a
xor eax, eax
mov rcx, r13
mov edx, eax
cmp esi, 5
sete dl
inc edx
call fcn.1401f08d0
mov ecx, eax
mov dword [rsp + 0x4c], eax
jmp 0x14022d136
cdqe
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x282478]
mov qword [r15 + 8], rcx
test rcx, rcx
jne 0x14022d301
xor ebx, ebx
mov eax, ebx
jmp 0x14022d320
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14022d310
and eax, 0x3fffffff
xor ebx, ebx
movzx r14d, byte [rsp + 0x48]
mov dword [r15 + 0x10], eax
mov byte [r15 + 0x16], 1
cmp r14b, 1
je 0x14022d341
movzx edx, r14b
mov rcx, r15
call fcn.140231940
mov r15d, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x68]
test r15d, r15d
je 0x140226ec9
mov r14, qword [rsp + 0x40]
mov eax, 0xb
mov r13, qword [rbp - 0x78]
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
jmp 0x140228724
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 8]
test eax, eax
je 0x14022d387
imul r9, rax, 0x38
add r9, r11
jmp 0x14022d38a
mov r9, rdx
mov r8d, dword [r15 + 4]
lea rcx, [r13 + 0xa8]
mov rdx, rsi
call fcn.140219ae0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140228713
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
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 0x14022d3e2
inc dword [rsi + 0x14]
cmp byte [rsi + 0x12], 0
jne 0x14022d3e2
mov rcx, rsi
call fcn.1401b6580
cmp byte [rdi + 0x21], 0
jne 0x14022d3f8
mov r15d, 0x65
mov dword [rsp + 0x4c], r15d
jmp 0x14022d4fc
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.1401c5ce0
mov r15d, eax
cmp r14d, eax
jb 0x14022d4c3
cmp ebx, r14d
jae 0x14022d4c3
test ebx, ebx
je 0x14022d4b6
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x14022d44f
xor r8d, r8d
xor edx, edx
call fcn.1401e4ff0
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14022d4af
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x14022d46d
nop dword [rax + rax]
and byte [rax + 1], 0xfb
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x14022d460
xor r9d, r9d
mov r8d, r14d
mov edx, r15d
mov rcx, rdi
call fcn.1401cd9d0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022d4f6
mov rcx, qword [rdi + 0x18]
mov rcx, qword [rcx + 0x70]
call fcn.14020f9f0
mov edx, dword [rdi + 0x40]
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov rax, qword [rdi + 0x18]
bswap edx
mov rcx, qword [rax + 0x50]
mov dword [rcx + 0x1c], edx
jmp 0x14022d4f6
mov r15d, dword [rsp + 0x4c]
jmp 0x14022d4f6
mov r15d, 0x65
mov dword [rsp + 0x4c], r15d
jmp 0x14022d4f6
lea rax, [0x14028d654]
mov ebx, 0xb
mov ecx, ebx
mov qword [rsp + 0x20], rax
mov r9d, 0x11c5e
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.140199ed0
mov r15d, ebx
mov dword [rsp + 0x4c], ebx
movzx r14d, byte [rsp + 0x48]
cmp byte [rsi + 0x11], 0
je 0x14022d510
sub dword [rsi + 0x14], 1
jne 0x14022d510
mov rcx, rsi
call fcn.140242ef0
test r15d, r15d
je 0x140227490
cmp r15d, 0x65
jne 0x14022e740
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
mov r12, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
jmp 0x140228410
cmp dword [r12 + 4], 0
jne 0x14022d592
mov rdx, qword [rsi + 8]
mov r8d, dword [r12 + 8]
test rdx, rdx
je 0x140226a95
nop word [rax + rax]
mov eax, dword [rdx + 0xc8]
lea ecx, [r8 + 1]
xor ecx, eax
and ecx, 3
xor ecx, eax
mov dword [rdx + 0xc8], ecx
mov rdx, qword [rdx + 0x10]
test rdx, rdx
jne 0x14022d560
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov eax, dword [r13 + 0xc8]
mov ecx, dword [r12 + 8]
inc ecx
xor ecx, eax
and ecx, 3
xor ecx, eax
mov dword [r13 + 0xc8], ecx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
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
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
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
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
movzx r8d, byte [r12 + 0xc]
test r8b, r8b
jne 0x14022d63f
movabs rax, 0x400000000
test qword [rsi + 0x30], rax
jne case.0x140226899.89
mov r15, qword [rsp + 0x40]
mov rcx, qword [rsi + 0x20]
movsxd rax, dword [r15 + 4]
mov edx, dword [r15 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1401ef690
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x140226ec9
mov r14, qword [rsp + 0x40]
cmp al, 6
jne 0x140228718
mov r8, qword [r14 + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, r13
call fcn.1402266e0
jmp 0x140228718
mov rcx, qword [rsp + 0x40]
mov dword [rsp + 0x4c], edx
movsxd rdx, dword [rsi + 0x224]
mov rbx, qword [rcx + 0x10]
test edx, edx
jle 0x14022d6d7
cmp qword [rsi + 0x248], 0
jne 0x14022d6d7
mov dword [rbp - 0x70], 6
mov r15d, 6
mov dword [rsp + 0x4c], r15d
test rbx, rbx
jne 0x14022d7a6
mov r14, rcx
jmp 0x140228718
test rbx, rbx
jne 0x14022d6fa
xor edx, edx
mov r12, rcx
mov r15d, edx
mov dword [rsp + 0x4c], edx
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rax, qword [rbx + 0x10]
mov rdi, qword [rax]
cmp qword [rdi + 0x70], 0
je 0x14022d79c
xor r8d, r8d
mov ecx, r8d
test edx, edx
jle 0x14022d735
mov rax, qword [rsi + 0x248]
nop dword [rax]
cmp qword [rax], rbx
je 0x14022d7c0
inc rcx
add rax, 8
cmp rcx, rdx
jl 0x14022d720
mov rcx, rsi
call fcn.1401cd160
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14022d79c
mov rcx, qword [rbx + 0x10]
call qword [rdi + 0x70]
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14022d79c
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 0x14022d79c
cmp qword [rdi + 0xa0], 0
je 0x14022d79c
mov dword [rbx + 0x20], edx
dec edx
mov rcx, qword [rbx + 0x10]
call qword [rdi + 0xa0]
mov dword [rsp + 0x4c], eax
mov r15d, dword [rsp + 0x4c]
mov rdi, qword [rsp + 0x78]
mov rdx, qword [rbx + 0x10]
mov rcx, r13
call fcn.140234840
test r15d, r15d
jne 0x140228713
jmp 0x140226ec9
mov r15d, r8d
mov dword [rsp + 0x4c], r8d
jmp 0x14022d7a1
mov rax, qword [rsp + 0x40]
lea rcx, [rbp + 0x58]
mov qword [rbp + 0x58], rdx
xorps xmm0, xmm0
mov qword [rbp + 0x88], rdx
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x70], rsi
movdqu xmmword [rbp + 0x78], xmm1
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, r11
call fcn.140230ce0
movzx ecx, word [rbp + 0x6c]
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x14022d829
cmp byte [rbp + 0x6e], 1
jne 0x14022d829
mov rax, qword [rbp + 0x60]
jmp 0x14022d841
test cl, 1
jne 0x14022d900
mov dl, 1
lea rcx, [rbp + 0x58]
call fcn.140245190
movzx ecx, word [rbp + 0x6c]
test rax, rax
je 0x14022d900
mov r8, qword [rsi + 0x20]
lea rbx, [r13 + 0xa8]
mov rcx, qword [rsp + 0x40]
mov rdx, rax
movsxd rcx, dword [rcx + 4]
shl rcx, 5
mov r8, qword [rcx + r8]
mov rcx, rsi
call fcn.140200e20
mov r14, qword [rsp + 0x68]
xor r8d, r8d
mov rsi, rax
mov rcx, qword [rax + 0x48]
mov rdi, qword [rcx]
lea rcx, [r14 + 0x228]
mov rdx, rdi
call fcn.1401c61a0
mov r8, qword [rax + 0x10]
test r8, r8
je 0x14022d971
mov rcx, qword [r8]
mov r9, qword [rcx + 8]
test r9, r9
je 0x14022d971
cmp qword [rcx + 0x28], 0
je 0x14022d971
mov rdx, rsi
mov qword [rsp + 0x20], rbx
mov rcx, r14
call fcn.140249870
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022d8ee
mov rax, qword [rsi + 0x50]
test rax, rax
je 0x14022d8ee
nop
cmp qword [rax], r14
je 0x14022d927
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x14022d8e0
mov rsi, r14
movzx ecx, word [rbp + 0x6c]
movzx r14d, byte [rsp + 0x48]
mov rdi, qword [rsp + 0x78]
mov eax, 0x9000
test ax, cx
jne 0x14022d910
cmp dword [rbp + 0x78], 0
je 0x14022d919
lea rcx, [rbp + 0x58]
call fcn.140246470
test r15d, r15d
jne 0x140228713
jmp 0x140226ec9
mov rcx, r14
call fcn.1401cd160
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14022d8ee
mov rdx, qword [rsi + 0x50]
mov rsi, r14
test rdx, rdx
je 0x14022d954
cmp qword [rdx], rsi
je 0x14022d954
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x14022d946
movsxd rcx, dword [rsi + 0x224]
mov rax, qword [rsi + 0x248]
mov qword [rax + rcx*8], rdx
inc dword [rsi + 0x224]
inc dword [rdx + 0x18]
jmp 0x14022d8f1
mov r8, rdi
lea rdx, str.no_such_module:__s
mov rcx, r14
mov rsi, r14
call fcn.14020c620
mov qword [rbx], rax
mov eax, 1
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x14022d8f1
mov rax, qword [rsp + 0x40]
mov rcx, rsi
inc dword [rsi + 0xe8]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.140233dd0
dec dword [rsi + 0xe8]
mov r15d, eax
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x140228713
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x40], rdx
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14022ea95
mov rdi, qword [rbx]
test rdi, rdi
je 0x14022ea90
lea rdx, [rbp - 0x40]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.140234840
test r15d, r15d
jne 0x14022870e
mov rax, qword [rbp - 0x40]
mov r9b, 2
xor r8d, r8d
mov rcx, r13
mov qword [rax], rbx
mov rax, qword [rsp + 0x40]
mov edx, dword [rax + 4]
call fcn.1401b06e0
mov rcx, qword [rbp - 0x40]
test rax, rax
je 0x14022ea88
mov qword [rax + 0x30], rcx
inc dword [rbx + 8]
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
call fcn.140241050
test eax, eax
jne 0x140228c5c
lea ecx, [rax + 0x10]
call fcn.14020c650
mov rdi, rax
test rax, rax
je 0x140228c57
mov rcx, qword [rbx + 0x30]
mov qword [rax], rcx
mov rax, qword [rsp + 0x40]
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 0x14022dac0
mov rcx, rbx
call fcn.1401d92b0
mov rbx, rax
mov rcx, rbx
mov word [rbx + 0x14], 1
call fcn.140246470
lea rax, str.ValueList
mov qword [rbx], rax
lea rax, [0x140233cf0]
mov qword [rbx + 8], rdi
mov word [rbx + 0x14], 0x1a01
mov byte [rbx + 0x17], 0x70
mov qword [rbx + 0x30], rax
jmp 0x140226ec9
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
mov r13, qword [rax + rcx*8]
lea rbx, [rdx + 0x38]
mov rax, qword [rbp - 0x78]
add rbx, r11
mov r12d, dword [rdx + r11]
mov rsi, qword [r13 + 0x30]
mov r11, qword [rax + 0x70]
movq xmm4, rbx
movsxd rdi, dword [rbx]
xor eax, eax
punpcklqdq xmm4, xmm4
mov r9d, eax
mov r15, qword [rsi]
mov edx, eax
mov r14, qword [r15]
test edi, edi
jle 0x14022dc5d
cmp edi, 8
jb 0x14022dc5d
cmp r8d, 6
jl 0x14022dc5d
movdqa xmm7, xmmword [0x14028d800]
mov eax, edi
and eax, 0x80000007
jge 0x14022db72
dec eax
or eax, 0xfffffff8
inc eax
movdqa xmm5, xmmword [0x14028d7e0]
lea rcx, [r11 + 0x20]
movdqa xmm6, xmmword [0x14028d7f0]
mov r10d, edi
sub r10d, eax
mov r8d, 4
movq xmm3, xmm7
movd xmm1, r9d
pshufd xmm1, xmm1, 0
lea eax, [r8 - 2]
paddd xmm1, xmm3
movd xmm2, eax
pshufd xmm2, xmm2, 0
lea eax, [r8 + 2]
paddd xmm2, xmm3
lea rcx, [rcx + 0x40]
movq xmm0, xmm6
add r9d, 8
paddd xmm1, xmm0
add rdx, 8
pmovsxdq xmm0, xmm1
vpmullq xmm1, xmm0, xmm5
paddq xmm1, xmm4
movq xmm0, xmm6
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movdqu xmmword [rcx - 0x60], xmm1
vpmullq xmm1, xmm0, xmm5
paddq xmm1, xmm4
movd xmm2, r8d
movdqu xmmword [rcx - 0x50], xmm1
add r8d, 8
pshufd xmm2, xmm2, 0
movq xmm0, xmm6
paddd xmm2, xmm3
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm3
vpmullq xmm1, xmm0, xmm5
paddq xmm1, xmm4
movq xmm0, xmm6
paddd xmm2, xmm0
movdqu xmmword [rcx - 0x40], xmm1
pmovsxdq xmm0, xmm2
vpmullq xmm1, xmm0, xmm5
paddq xmm1, xmm4
movdqu xmmword [rcx - 0x30], xmm1
cmp r9d, r10d
jl 0x14022db92
cmp rdx, rdi
jge 0x14022dc89
lea r8d, [r9 + 1]
nop word [rax + rax]
movsxd rax, r8d
inc r8d
imul rcx, rax, 0x38
add rcx, rbx
mov qword [r11 + rdx*8], rcx
inc rdx
cmp rdx, rdi
jl 0x14022dc70
mov rax, qword [rsp + 0x40]
mov r9d, edi
mov edx, r12d
mov qword [rsp + 0x20], r11
mov rcx, rsi
mov r8, qword [rax + 0x10]
call qword [r14 + 0x40]
mov rcx, qword [rbp - 0x78]
mov rdx, r15
mov dword [rsp + 0x4c], eax
call fcn.140234840
mov r15d, dword [rsp + 0x4c]
test r15d, r15d
jne 0x14022ecfd
mov rcx, rsi
call qword [r14 + 0x50]
mov byte [r13 + 2], r15b
test eax, eax
je 0x140228bfb
mov r12, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
jmp 0x14022840e
mov rbx, qword [rsp + 0x40]
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 0x14022dd22
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x140228279
mov rcx, rbx
call fcn.1402464c0
jmp 0x140226ec9
mov rax, qword [rdi + 0x30]
xorps xmm0, xmm0
mov rcx, qword [rsp + 0x40]
mov rsi, qword [rax]
xor eax, eax
mov r14, qword [rsi]
mov qword [rbp + 0x1e8], rax
movzx eax, byte [rsp + 0x48]
movups xmmword [rbp + 0x1b8], xmm0
mov qword [rbp + 0x1b8], rbx
movups xmmword [rbp + 0x1d8], xmm0
mov byte [rbp + 0x1e0], al
movups xmmword [rbp + 0x1c8], xmm0
test byte [rcx + 2], 1
je 0x14022dd8e
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x14022dd84
mov rcx, rbx
call fcn.1402464c0
mov rcx, qword [rsp + 0x40]
xor edx, edx
mov word [rbx + 0x14], 0x401
mov dword [rbx], edx
jmp 0x14022dda2
movzx eax, word [rbx + 0x14]
mov edx, 0xf241
and ax, dx
or ax, 1
mov word [rbx + 0x14], ax
mov r8d, dword [rcx + 8]
lea rdx, [rbp + 0x1b8]
mov rcx, qword [rdi + 0x30]
call qword [r14 + 0x58]
mov rdx, rsi
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.140234840
cmp dword [rbp + 0x1dc], 0
jle 0x14022de21
movzx ecx, word [rbx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x14022ddf0
cmp byte [rbx + 0x16], 1
jne 0x14022ddf0
mov rax, qword [rbx + 8]
jmp 0x14022de03
test cl, 1
je 0x14022ddf9
xor eax, eax
jmp 0x14022de03
mov dl, 1
mov rcx, rbx
call fcn.140245190
mov r8, rax
lea rdx, [0x140288758]
mov rcx, r13
call fcn.1402266e0
mov r15d, dword [rbp + 0x1dc]
mov dword [rsp + 0x4c], r15d
test byte [rbx + 0x14], 2
movzx r14d, byte [rsp + 0x48]
jne 0x14022de33
mov byte [rbx + 0x16], r14b
jmp 0x14022de45
cmp byte [rbx + 0x16], r14b
je 0x14022de45
movzx edx, r14b
mov rcx, rbx
call fcn.140231940
mov rsi, qword [rsp + 0x68]
test r15d, r15d
jne 0x14022870e
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x140226e14
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.140234840
test r15d, r15d
jne 0x14022e740
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
test eax, eax
jne 0x14022b8e7
mov rsi, qword [rsp + 0x68]
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0x58]
lea rax, [rax + rcx*8]
mov qword [rsp + 0x40], rax
jmp 0x14022b8ec
mov edi, dword [rsi + 0x30]
or qword [rsi + 0x30], 0x4000000
and edi, 0x4000000
mov rcx, qword [rsp + 0x40]
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 0x14022df07
mov byte [rbx + 0x16], 1
jmp 0x14022df22
cmp byte [rbx + 0x16], 1
je 0x14022df22
mov dl, 1
mov rcx, rbx
call fcn.140231940
mov r15d, eax
test eax, eax
jne 0x14022e740
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 8]
call qword [rax + 0x98]
mov dword [rsp + 0x4c], eax
mov r15d, eax
test edi, edi
jne 0x14022df4a
mov rax, qword [rsp + 0x68]
and qword [rax + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rcx, r13
call fcn.140234840
and dword [r13 + 0xc8], 0xfffffffc
mov rsi, qword [rsp + 0x68]
test r15d, r15d
jne 0x14022870e
jmp 0x140226ec9
mov qword [rbp - 0x18], rdx
cmp byte [rsi + 0x67], 0
jne 0x140228c5c
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14022ea95
mov r10, qword [rbx]
test r10, r10
je 0x14022ea95
cmp qword [r10 + 0x68], 0
mov r12, qword [rsp + 0x40]
movsxd rdx, dword [r12 + 8]
je 0x140226a90
movsxd rax, dword [r12 + 0xc]
mov r15, r12
movzx edi, byte [rsi + 0x6c]
mov r8, qword [r13 + 0x70]
imul rcx, rax, 0x38
xor eax, eax
add rcx, r11
test edx, edx
jle 0x14022dff0
nop dword [rax]
nop word [rax + rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x14022dfe0
movzx eax, byte [r15 + 2]
lea r9, [rbp - 0x18]
mov rcx, rbx
mov byte [rsi + 0x6c], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [rsi + 0x6c], dil
mov rcx, r13
mov dword [rsp + 0x4c], eax
mov r15d, eax
call fcn.140234840
test r15d, r15d
jne 0x14022e02f
cmp dword [r12 + 4], r15d
je 0x14022e060
mov rax, qword [rbp - 0x18]
mov qword [rsi + 0x38], rax
jmp 0x14022e060
cmp r15b, 0x13
jne 0x14022e060
mov rax, r12
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x1c], 0
je 0x14022e060
mov rcx, r12
movzx ecx, word [rcx + 2]
cmp ecx, 4
jne 0x14022eabb
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
jmp 0x140226dcc
inc qword [r13 + 0x38]
test r15d, r15d
jne 0x14022870e
jmp 0x140226ece
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x14022e0a0
mov rcx, rdx
call fcn.1401d92b0
mov r9, qword [rsp + 0x58]
mov rdx, rax
jmp 0x14022e0a6
mov word [rdx + 0x14], 4
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
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 0x140226a90
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul rsi, rax, 0x38
mov eax, 0x9000
add rsi, qword [r13 + 0x68]
test word [rsi + 0x14], ax
je 0x14022e100
mov rcx, rsi
call fcn.1401d92b0
mov rsi, rax
xor edx, edx
jmp 0x14022e106
mov word [rsi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov edi, edx
mov rax, qword [rsp + 0x68]
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
mov rax, qword [rsp + 0x40]
mov ecx, dword [rax + 0xc]
test ecx, ecx
je 0x14022e136
mov rax, qword [rbx + 8]
mov edi, dword [rax + 0x40]
cmp edi, ecx
cmovb edi, ecx
cmp byte [rbx + 0x11], 0
je 0x14022e14d
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x14022e14d
mov rcx, rbx
call fcn.1401b6580
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
test edi, edi
je 0x14022e15e
mov dword [rcx + 0xbc], edi
cmp byte [rbx + 0x11], 0
mov edi, dword [rcx + 0xbc]
je 0x14022e178
sub dword [rbx + 0x14], 1
jne 0x14022e178
mov rcx, rbx
call fcn.140242ef0
mov qword [rsi], rdi
mov rsi, qword [rsp + 0x68]
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
mov r15, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
mov qword [rbp - 0x60], r15
add rbx, r11
cmp qword [r15], rbx
je 0x14022e1f5
mov qword [r15 + 0x18], r13
mov qword [r15], rbx
mov byte [r15 + 0x28], r14b
movzx eax, byte [r15 + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x14022e1f5
mov rsi, qword [rsp + 0x40]
lea r8, [r15 + 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 0x14022e1d0
mov rsi, qword [rsp + 0x68]
movzx eax, word [rbx + 0x14]
lea r8, [r15 + 0x30]
mov ecx, 0xf241
and ax, cx
mov rcx, r15
or ax, 1
mov word [rbx + 0x14], ax
mov rax, qword [r15 + 8]
movzx edx, byte [r15 + 0x2a]
call qword [rax + 0x18]
mov eax, dword [r15 + 0x24]
test eax, eax
je 0x14022e316
jle 0x14022e277
movzx ecx, word [rbx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x14022e24a
cmp byte [rbx + 0x16], 1
jne 0x14022e24a
mov rax, qword [rbx + 8]
jmp 0x14022e25d
test cl, 1
je 0x14022e253
xor eax, eax
jmp 0x14022e25d
mov dl, 1
mov rcx, rbx
call fcn.140245190
mov r8, rax
lea rdx, [0x140288758]
mov rcx, r13
call fcn.1402266e0
mov ecx, dword [r15 + 0x24]
mov dword [rsp + 0x4c], ecx
mov r12, qword [rsp + 0x40]
lea rdi, [r13 + 0x128]
mov rbx, qword [rdi]
mov esi, dword [r15 + 0x20]
mov r14d, dword [r12 + 4]
test rbx, rbx
je 0x14022e2ed
mov r15, qword [rsp + 0x68]
nop dword [rax]
test esi, esi
js 0x14022e2c0
cmp dword [rbx], esi
jne 0x14022e2ba
mov eax, dword [rbx + 4]
test eax, eax
js 0x14022e2ba
cmp eax, 0x1f
jg 0x14022e2c0
bt r14d, eax
jae 0x14022e2c0
lea rdi, [rbx + 0x18]
jmp 0x14022e2e1
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x14022e2cf
mov rcx, qword [rbx + 8]
call rax
mov rax, qword [rbx + 0x18]
mov rdx, rbx
mov rcx, r15
mov qword [rdi], rax
call fcn.1401f6670
mov rbx, qword [rdi]
test rbx, rbx
jne 0x14022e2a0
mov r15, qword [rbp - 0x60]
mov rsi, qword [rsp + 0x68]
xor edx, edx
mov dword [r15 + 0x24], edx
mov r15d, dword [rsp + 0x4c]
test r15d, r15d
jne 0x14022e9ca
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
jmp 0x140226dd1
mov r15d, dword [rsp + 0x4c]
jmp 0x140226ec9
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xf7ff
and word [rcx + r11 + 0x14], ax
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov rcx, qword [rsp + 0x40]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1401c59f0
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
div rcx
mov rcx, qword [rbx + 8]
mov r8, rdx
and edx, 7
shr r8, 3
movsx eax, byte [r8 + rcx]
bts eax, edx
mov byte [r8 + rcx], al
jmp 0x140226ec9
mov rcx, qword [rsp + 0x40]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1401c59f0
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
mov r12, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
div rcx
mov rax, qword [rbx + 8]
mov rcx, rdx
shr rcx, 3
movsx r8d, byte [rcx + rax]
movzx eax, dl
and al, 7
movzx eax, al
bt r8d, eax
jb 0x14022e3ea
inc dword [r13 + 0xf4]
jmp 0x14022840e
inc dword [r13 + 0xf0]
mov r11, qword [rsp + 0x60]
jmp 0x140226a90
movzx eax, byte [rsi + 0x6e]
test al, 0x41
je 0x14022e45c
cmp byte [r13 + 0xc3], 0xfe
je 0x14022e45c
mov rcx, qword [rsp + 0x40]
mov r9, qword [rcx + 0x10]
test r9, r9
jne 0x14022e427
mov r9, qword [r13 + 0xf8]
test r9, r9
je 0x14022e457
test al, 0x40
je 0x14022e4d7
mov rdx, r9
mov rcx, r13
call fcn.14022f290
mov rcx, qword [rsi + 0x100]
mov rdx, rax
mov rbx, rax
call qword [rsi + 0xf8]
mov rcx, rbx
call fcn.1401ac610
xor edx, edx
mov r9, qword [rsp + 0x58]
mov ebx, 1
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
mov eax, dword [rax + 4]
cmp eax, dword [0x14030d2d8]
jl 0x14022e4c4
cmp byte [r12], 0xb5
je 0x140226aed
cmp dword [r13 + 0x90], 1
mov edx, ebx
jle 0x14022e4c0
mov eax, 0x18
xor edi, edi
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [r13 + 0x88]
cmp byte [rcx + rax], 0xf
jne 0x14022e4b1
mov dword [rcx + rax + 4], edi
inc edx
add rax, 0x18
cmp edx, dword [r13 + 0x90]
jl 0x14022e4a0
xor edx, edx
mov eax, edx
inc eax
mov dword [r12 + 4], eax
inc dword [r13 + 0xec]
jmp 0x140228410
cmp dword [rsi + 0xe4], 1
jle 0x14022e526
mov r8, r9
lea rdx, str.____s
mov rcx, rsi
call fcn.14020c620
mov rdx, qword [rsi + 0x100]
mov r9, rax
mov r8, r13
mov ecx, 1
mov rbx, rax
call qword [rsi + 0xf8]
test rbx, rbx
je 0x14022e455
mov rdx, rbx
mov rcx, rsi
call fcn.1401f6670
jmp 0x14022e455
mov rdx, qword [rsi + 0x100]
mov ebx, 1
mov ecx, ebx
mov r8, r13
call qword [rsi + 0xf8]
mov r9, qword [rsp + 0x58]
xor edx, edx
jmp 0x14022e461
mov r12, qword [rsp + 0x40]
jmp 0x140228410
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
mov r13, qword [rbp - 0x78]
add r12, 0x18
mov rdi, qword [rsp + 0x78]
jmp 0x140226859
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
jmp 0x140227d77
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
jmp 0x140226dd6
mov r15, qword [rsp + 0x40]
mov ecx, dword [r15 + 4]
mov dword [r13 + 0x34], ecx
movzx eax, byte [r15 + 8]
mov byte [r13 + 0xc2], al
test ecx, ecx
je 0x14022e657
movzx eax, word [r15 + 2]
mov rcx, r13
test ax, ax
je 0x14022e601
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x282790]
call fcn.1402266e0
mov r9, qword [r15 + 0x10]
test r9, r9
je 0x14022e611
mov r8, qword [r13 + 0xa8]
lea rdx, str._z:__s
mov rcx, rsi
call fcn.14020c620
mov qword [r13 + 0xa8], rax
jmp 0x14022e611
mov r8, qword [r15 + 0x10]
lea rdx, [0x140288758]
call fcn.1402266e0
mov r9, qword [r13 + 0xf8]
mov rcx, r15
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [r13 + 0xa8]
mov ecx, dword [r15 + 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.140199ed0
mov rcx, r13
call fcn.14022fc80
mov r14, qword [rsp + 0x40]
mov r15d, eax
mov r12, qword [rsp + 0x70]
cmp eax, 5
jne 0x14022e67a
mov dword [r13 + 0x34], eax
jmp 0x140229a71
cmp dword [r13 + 0x34], 0
mov r15d, 0x65
mov eax, 1
cmovne r15d, eax
jmp 0x140229a71
mov r15d, 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov dword [r13 + 0x34], r15d
mov rcx, r13
mov byte [r13 + 0xc2], 2
call fcn.1402266e0
cmp byte [r13 + 0xc4], 0
mov eax, 1
cmovge r15d, eax
jmp 0x140228713
mov ecx, 0x16e90
call fcn.1401f47c0
mov r13, qword [rbp - 0x78]
mov r15d, eax
jmp 0x14022870e
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 + 0x2823f0]
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 + 0x30e4e0]
mov qword [rsp + 0x20], rax
mov r9, qword [r10 + r9*8 + 0x30d490]
call fcn.1402266e0
mov r15d, 0xc13
mov rsi, qword [rsp + 0x68]
jmp 0x14022870e
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.1402266e0
mov r15d, 5
mov rsi, rdi
jmp 0x14022870e
mov r13, qword [rbp - 0x78]
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.1402266e0
mov r15d, 5
jmp 0x140228713
mov byte [rsi + 0x65], 0
mov r13, rbx
jmp 0x140228713
mov r14, qword [rsp + 0x40]
movabs rax, 0x2aaaaaaaaaaaaaab
mov r12, qword [rsp + 0x70]
mov rcx, r14
sub rcx, qword [rsp + 0x58]
mov r15d, 5
imul rcx
mov r13, rbx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 0x30], edx
mov byte [rsi + 0x65], 0
mov dword [rbx + 0x34], r15d
jmp 0x140229a71
bt rax, 0x14
mov r15d, 8
mov eax, 0xb
mov r14, rcx
cmovae r15d, eax
jmp 0x14022871d
mov r14, qword [rsp + 0x40]
mov r12, qword [rsp + 0x70]
cmp r15b, 5
jne 0x14022c222
mov rcx, r14
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r13 + 0x30], edx
mov dword [r13 + 0x34], r15d
jmp 0x140229a71
mov rdx, qword [r13 + 0xa8]
test rdx, rdx
je 0x14022e84b
mov rcx, rsi
call fcn.1401f6670
mov edx, 0x1c
mov rcx, rsi
call fcn.1401f6800
test rax, rax
je 0x14022e87d
movups xmm0, xmmword [str.database_schema_has_changed]
movups xmmword [rax], xmm0
movsd xmm0, qword [0x140287620]
movsd qword [rax + 0x10], xmm0
mov ecx, dword [0x140287628]
mov dword [rax + 0x18], ecx
mov qword [r13 + 0xa8], rax
mov rax, r12
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 - 0x80]
cmp dword [rcx], eax
je 0x14022e8aa
mov rcx, rsi
call fcn.140218840
mov eax, dword [r13 + 0xc8]
mov r15d, 0x11
and eax, 0xffffffed
mov r14, r12
or eax, 1
mov dword [r13 + 0xc8], eax
jmp 0x140228718
mov r15d, 0x204
jmp 0x140228713
mov rcx, qword [rbx + 0x10]
call fcn.1401ed4b0
jmp 0x14022870e
lea rax, [0x14028d654]
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.140199ed0
mov rsi, qword [rsp + 0x68]
mov eax, 0xb
mov r14, qword [rsp + 0x40]
mov r15d, eax
mov rdi, qword [rsp + 0x78]
jmp 0x14022871d
lea rax, [0x14028d654]
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.140199ed0
mov rdi, qword [rsp + 0x78]
mov eax, 0xb
mov r15d, eax
mov r14, r12
jmp 0x14022871d
mov rsi, rcx
mov r13, qword [rbp - 0x78]
mov rdi, qword [rsp + 0x78]
lea rdx, str.string_or_blob_too_big
mov rcx, r13
call fcn.1402266e0
mov r15d, 0x12
jmp 0x140228713
mov rsi, rcx
jmp 0x14022e971
mov rsi, qword [rsp + 0x68]
jmp 0x14022e971
lea rax, [0x14028d654]
mov r15d, 0x30b
mov ecx, r15d
mov qword [rsp + 0x20], rax
mov r9d, 0x17b87
lea r8, str.index_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.140199ed0
mov rdi, qword [rsp + 0x78]
mov r14, r12
jmp 0x140228718
mov ecx, 0x17c54
call fcn.1401f47c0
mov r15d, eax
jmp 0x140228713
mov r15d, 6
mov byte [r13 + 0xc2], 2
jmp 0x14022870e
call fcn.1402187a0
jmp 0x140228c5c
mov rcx, qword [rbp - 0x10]
call fcn.1401ac610
jmp 0x14022870e
lea rdx, str.too_many_levels_of_trigger_recursion
mov rcx, r13
mov r15d, 1
call fcn.1402266e0
jmp 0x140228713
mov rcx, rbx
call fcn.140191410
mov r8, rax
lea rdx, [0x140288758]
mov rcx, r13
call fcn.1402266e0
mov rsi, qword [rsp + 0x68]
jmp 0x140228713
mov r13, qword [rbp - 0x78]
lea rax, str.into
cmp esi, 5
lea r8, str.out_of
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov rcx, r13
cmove r8, rax
mov r15d, 1
call fcn.1402266e0
mov rsi, r12
jmp 0x140228713
call qword [rdi + 0x38]
jmp 0x140228c57
mov rdi, qword [rsp + 0x78]
mov r15d, 6
jmp 0x140228713
mov r14, qword [rsp + 0x40]
mov r12, 0xffffffffffffffff
lea r15d, [r12 + 0xa]
lea eax, [r12 + 0xc]
jmp 0x140228722
mov rdi, qword [rsp + 0x78]
cmp ecx, 5
movzx eax, cl
mov r14, r12
mov ecx, 2
cmove eax, ecx
mov byte [r13 + 0xc2], al
jmp 0x140228718
mov eax, dword [r13 + 0x2c]
mov r15, qword [rsp + 0x40]
add eax, 2
or eax, 1
mov dword [r13 + 0x2c], eax
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
add rcx, r11
mov qword [r13 + 0xa0], rcx
cmp byte [rsi + 0x67], 0
jne 0x140228c5c
test byte [rsi + 0x6e], 4
je 0x14022eb2e
mov rdx, qword [rsi + 0x100]
xor r9d, r9d
mov r8, r13
lea ecx, [r9 + 4]
call qword [rsi + 0xf8]
mov r9, qword [rsp + 0x58]
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r9
mov r15d, 0x64
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [r13 + 0x30], edx
mov r14, qword [rsp + 0x40]
mov r12, qword [rsp + 0x70]
jmp 0x140229a71
mov r15, qword [rsp + 0x40]
movzx eax, byte [rsi + 0x65]
mov ebx, dword [r15 + 4]
mov ecx, dword [r15 + 8]
cmp ebx, eax
je 0x14022ec67
test ecx, ecx
je 0x14022eb9e
mov edx, 0x204
mov rcx, rsi
call fcn.140218fb0
mov al, 1
mov r14d, 1
jmp 0x14022ebe9
test ebx, ebx
je 0x14022ebc5
cmp dword [rsi + 0xe0], 0
jle 0x14022ebc5
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r13
call fcn.1402266e0
mov r15d, 5
jmp 0x140228713
mov r14d, 1
mov rcx, r13
mov edx, r14d
call fcn.140225e10
mov r15d, eax
test eax, eax
jne 0x14022eb5b
mov r15, qword [rsp + 0x40]
movzx eax, bl
mov rcx, r13
mov byte [rsi + 0x65], al
call fcn.14022fc80
cmp eax, 5
jne 0x14022ec41
mov r12, qword [rsp + 0x70]
mov rcx, r15
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov r15d, 5
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, r14d
mov r14, qword [rsp + 0x40]
sub al, bl
mov dword [r13 + 0x30], edx
mov byte [rsi + 0x65], al
mov dword [r13 + 0x34], r15d
jmp 0x140229a71
mov rcx, rsi
call fcn.1401f1ae0
cmp dword [r13 + 0x34], 0
mov r15d, 0x65
mov r12, qword [rsp + 0x70]
cmovne r15d, r14d
mov r14, qword [rsp + 0x40]
jmp 0x140229a71
test ebx, ebx
jne 0x14022ec74
lea rdx, str.cannot_start_a_transaction_within_a_transaction
jmp 0x14022ec88
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.1402266e0
mov r15d, 1
jmp 0x140228713
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x40]
mov r15d, 9
lea eax, [r15 + 2]
jmp 0x140228722
mov rsi, qword [rsp + 0x68]
jmp 0x140228c57
mov r15d, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x68]
jmp 0x14022870e
mov r15d, dword [rsp + 0x4c]
mov eax, 0xb
mov r14, qword [rsp + 0x40]
mov r13, qword [rbp - 0x78]
mov r12, qword [rsp + 0x70]
jmp 0x140228724
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x78]
jmp 0x14022870e
mov r15d, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x78]
jmp 0x14022870e
mov rsi, qword [rsp + 0x68]
mov eax, 0xb
mov r14, qword [rsp + 0x40]
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
jmp 0x140228724
mov r13, qword [rbp - 0x78]
jmp 0x140228713
cmp r15d, 0x210a
jne 0x14022ed68
lea rcx, [0x14028d654]
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.140199ed0
mov r15d, 0xb
cmp qword [r13 + 0xa8], 0
jne 0x14022ede7
cmp r15d, 0xc0a
je 0x14022ede7
mov ecx, r15d
lea r8, str.unknown_error
sub ecx, 0x64
je 0x14022edcb
sub ecx, 1
je 0x14022edc2
cmp ecx, 0x19f
je 0x14022edb9
movzx eax, r15b
cmp eax, 0x1d
jae 0x14022edd2
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x280790]
test rcx, rcx
je 0x14022edd2
mov r8, rcx
jmp 0x14022edd2
lea r8, str.abort_due_to_ROLLBACK
jmp 0x14022edd2
lea r8, str.no_more_rows_available
jmp 0x14022edd2
lea r8, str.another_row_available
lea rdx, [0x140288758]
mov rcx, r13
call fcn.1402266e0
mov dword [r13 + 0x34], r15d
jmp 0x14022edf4
mov dword [r13 + 0x34], r15d
cmp r15d, 0xc0a
je 0x14022ee1f
movzx eax, r15b
sub eax, 0xa
test eax, 0xfffffffb
jne 0x14022ee1f
mov rcx, qword [rsi]
mov rax, qword [rcx + 0x80]
test rax, rax
je 0x14022ee1a
xor r8d, r8d
xor edx, edx
call rax
jmp 0x14022ee1c
mov eax, ebx
mov dword [rsi + 0x5c], eax
mov r9, qword [r13 + 0xf8]
mov rcx, r14
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [r13 + 0xa8]
mov ecx, r15d
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.140199ed0
cmp byte [r13 + 0xc5], 2
jne 0x14022ee76
mov rcx, r13
call fcn.14022fc80
cmp r15d, 0xc0a
jne 0x14022ee89
mov rcx, rsi
call fcn.14020d2a0
jmp 0x14022eea3
cmp r15d, 0xb
jne 0x14022eea3
cmp byte [rsi + 0x65], 0
jne 0x14022eea3
movabs rax, 0x200000000
or qword [rsi + 0x30], rax
movzx eax, byte [rbp - 0x64]
mov r15d, 1
test al, al
je 0x140229a71
cmp eax, r15d
jb 0x14022eedf
mov ecx, eax
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax - 8]
or word [rcx + 0x72], 8
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 0x38]
or word [rcx + 0x72], 8
and dword [rsi + 0x2c], 0xffffffef
cmp dword [rsi + 0x48], 0
jne 0x140229a71
cmp dword [rsi + 0x28], 0
mov edi, ebx
jle 0x140229a6c
nop word [rax + rax]
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + rbx + 0x18]
test byte [rcx + 0x72], 8
je 0x14022ef14
call fcn.14021a2f0
inc edi
add rbx, 0x20
cmp edi, dword [rsi + 0x28]
jl 0x14022ef00
jmp 0x140229a6c
mov r14, qword [rsp + 0x40]
mov r13, rbx
mov r12, qword [rsp + 0x70]
jmp 0x140229a71
add dword [r13 + 0xe4], edi
cmp dword [r13 + 0xd0], 0
movaps xmm8, xmmword [rsp + 0x3f0]
movaps xmm7, xmmword [rsp + 0x400]
movaps xmm6, xmmword [rsp + 0x410]
mov r14, qword [rsp + 0x420]
mov r12, qword [rsp + 0x428]
mov rdi, qword [rsp + 0x468]
mov rsi, qword [rsp + 0x460]
mov rbx, qword [rsp + 0x458]
je 0x14022ef90
mov rcx, r13
call fcn.140246380
mov eax, r15d
mov rcx, qword [rbp + 0x2e0]
xor rcx, rsp
call fcn.14025cf10
add rsp, 0x430
pop r15
pop r13
pop rbp
ret