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

Disassembly:
mov r11, rsp
push rbp
push rsi
push r13
lea rbp, [r11 - 0x328]
sub rsp, 0x410
mov rax, qword [0x1404d4020]
xor rax, rsp
mov qword [rbp + 0x2e8], rax
xor r8d, r8d
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x20], r12
xor al, al
mov qword [r11 - 0x20], r14
mov ebx, r8d
mov rsi, rcx
mov r14, qword [rcx + 0x68]
mov r13d, r8d
mov qword [r11 - 0x28], r15
mov r10d, r8d
mov r15, qword [rcx]
mov r11, qword [rcx + 0x88]
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x58], r11
movzx r9d, byte [r15 + 0x64]
mov byte [rsp + 0x40], r9b
mov qword [rsp + 0x48], r11
mov dword [rsp + 0x50], r8d
mov qword [rsp + 0x70], r15
mov byte [rbp - 0x70], al
mov dword [rsp + 0x54], r8d
mov qword [rbp - 0x60], rbx
mov qword [rsp + 0x78], r14
cmp dword [rcx + 0xd0], ebx
je 0x1403322e7
call fcn.140332150
movzx r9d, byte [rsp + 0x40]
mov r10d, ebx
mov r11, qword [rsp + 0x58]
xor r8d, r8d
cmp qword [r15 + 0x210], rbx
je 0x140332308
mov ecx, dword [r15 + 0x220]
xor edx, edx
mov eax, dword [rsi + 0xe4]
div ecx
sub ecx, edx
mov r12d, ecx
jmp 0x14033230f
mov r12, 0xffffffffffffffff
cmp dword [rsi + 0x34], 7
mov edx, 1
mov qword [rsp + 0x440], rdi
movaps xmmword [rsp + 0x3f0], xmm6
mov qword [rsp + 0x68], r12
je 0x1403347c4
mov dword [rsi + 0x34], r8d
mov qword [rsi + 0x48], r8
mov dword [r15 + 0x298], r8d
mov eax, dword [r15 + 0x198]
test eax, eax
jne 0x14033a8dc
movsxd rax, dword [rsi + 0x30]
xorps xmm6, xmm6
lea rcx, [rax + rax*2]
mov eax, dword [rbp - 0x3c]
lea r12, [r11 + rcx*8]
mov dword [rbp - 0x58], eax
movzx edi, byte [r12]
inc rbx
mov qword [rsp + 0x48], r12
mov qword [rbp - 0x60], rbx
cmp edi, 0xb5
ja case.0x14033239e.89
movsxd rax, edi
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x33abd8]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
sub rcx, r11
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov word [r8 + r14 + 0x14], 4
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r14], rax
jmp case.0x14033239e.9
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
test byte [rax + r14 + 0x14], 4
je 0x1403328d9
mov rax, qword [rax + r14]
lea rcx, [rax + rax*2]
lea r12, [r11 + rcx*8]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
dec eax
cdqe
mov qword [rcx + r14], rax
mov word [rcx + r14 + 0x14], 4
cmp dword [r12 + 8], 0
jne 0x140334174
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r14]
lea rcx, [rax + rax*2]
mov eax, dword [r11 + rcx*8 + 8]
dec eax
mov word [rdx + r14 + 0x14], r8w
cdqe
lea rcx, [rax + rax*2]
lea r12, [r11 + rcx*8]
jmp 0x140338465
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 4]
sub rdi, r11
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
imul rdi
mov word [r8 + r14 + 0x14], 4
movsxd rcx, dword [r8 + r14]
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
lea rcx, [rcx + rcx*2]
cdqe
lea r12, [r11 + rcx*8]
mov qword [r8 + r14], rax
jmp 0x140338462
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r14 + 0x14], 1
je 0x1403328d9
mov rcx, qword [rsi + 0x108]
test rcx, rcx
je 0x14033a1bf
mov rax, qword [rsp + 0x48]
cmp dword [rax + 4], 0
jne 0x14033a1bf
mov rax, qword [rcx + 8]
mov qword [rsi + 0x108], rax
dec dword [rsi + 0x118]
mov rax, qword [rsi + 0x38]
mov qword [r15 + 0x78], rax
add qword [r15 + 0x80], rax
call fcn.14033b650
mov r12, qword [rsp + 0x48]
cmp dword [r12 + 8], 4
jne 0x14033254b
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov r11, qword [rsi + 0x88]
mov r14, qword [rsi + 0x68]
cdqe
mov qword [rsp + 0x58], r11
mov qword [rsp + 0x78], r14
lea rcx, [rax + rax*2]
lea r12, [r11 + rcx*8]
jmp 0x140338457
mov rax, qword [rsp + 0x48]
mov edi, 0x9000
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], di
je 0x1403325a1
call fcn.1402cb550
mov r11, qword [rsp + 0x58]
xor r8d, r8d
mov rcx, rax
lea edx, [r8 + 1]
jmp 0x1403325a7
mov word [rcx + 0x14], 4
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
mov qword [rcx], rax
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x140332601
mov rcx, rdx
call fcn.1402cb550
mov r11, qword [rsp + 0x58]
mov rdx, rax
xor r8d, r8d
jmp 0x140332607
mov word [rdx + 0x14], 4
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov rax, qword [rax + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov r10d, dword [rsp + 0x54]
jmp 0x140338465
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x14033265a
mov rcx, rdx
call fcn.1402cb550
mov r11, qword [rsp + 0x58]
mov rdx, rax
xor r8d, r8d
mov word [rdx + 0x14], 8
jmp 0x140332607
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x14033268e
mov rcx, rbx
call fcn.1402cb550
mov rbx, rax
xor r8d, r8d
jmp 0x140332694
mov word [rbx + 0x14], 4
mov rdx, qword [rdi + 0x10]
test rdx, rdx
jne 0x1403326a2
mov eax, r8d
jmp 0x1403326be
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rdx + rax], 0
jne 0x1403326b0
and eax, 0x3fffffff
movzx r12d, byte [rsp + 0x40]
mov dword [rdi + 4], eax
cmp r12b, 1
je 0x14033275a
mov qword [rsp + 0x20], r8
mov r9b, 1
mov r8, 0xffffffffffffffff
mov rcx, rbx
call fcn.14033d0d0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a5cf
test byte [rbx + 0x14], 2
jne 0x140332703
mov byte [rbx + 0x16], r12b
jmp 0x14033271d
cmp byte [rbx + 0x16], r12b
je 0x14033271d
movzx edx, r12b
mov rcx, rbx
call fcn.14033d620
test eax, eax
jne 0x1403347bf
xor eax, eax
mov dword [rbx + 0x20], eax
mov eax, 0x2000
or word [rbx + 0x14], ax
mov rax, rdi
cmp byte [rax + 1], 0xfa
jne 0x140332748
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x140332748
mov rcx, r15
call fcn.1402eeac0
mov rax, rdi
mov byte [rax + 1], 0xfa
mov rax, qword [rbx + 8]
mov qword [rdi + 0x10], rax
mov eax, dword [rbx + 0x10]
mov dword [rdi + 4], eax
cmp eax, dword [r15 + 0x88]
jg 0x14033a5cf
mov byte [rdi], 0x49
jmp 0x140332777
mov rdi, qword [rsp + 0x48]
movzx r12d, byte [rsp + 0x40]
movsxd rax, dword [rdi + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x140332799
mov rcx, rdx
call fcn.1402cb550
mov rdx, rax
mov word [rdx + 0x14], 0x2202
xor r8d, r8d
mov rax, qword [rdi + 0x10]
mov qword [rdx + 8], rax
mov eax, dword [rdi + 4]
mov dword [rdx + 0x10], eax
mov rax, qword [rsp + 0x48]
mov byte [rdx + 0x16], r12b
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x140336fcf
imul rcx, rax, 0x38
mov rax, r12
movzx eax, word [rax + 2]
cmp qword [rcx + r14], rax
jne 0x140336fcf
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov word [rdx + 0x14], 0x2210
jmp 0x140338465
mov rax, qword [rsp + 0x48]
mov r9d, 0x9000
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], r9w
je 0x14033282f
call fcn.1402cb550
xor r8d, r8d
mov rcx, rax
mov r9d, 0x9000
lea edx, [r8 + 1]
jmp 0x140332835
mov word [rcx + 0x14], 4
mov rax, qword [rsp + 0x48]
lea rbx, [rcx + 0x14]
mov r12, qword [rsp + 0x48]
mov esi, edx
mov r10d, 0x101
mov edi, dword [rax + 0xc]
cmp dword [r12 + 4], 0
mov eax, dword [rax + 8]
cmovne si, r10w
sub edi, eax
mov word [rbx], si
mov dword [rcx + 0x10], r8d
test edi, edi
jle 0x140332b34
nop dword [rax]
test word [rbx + 0x38], r9w
lea rbx, [rbx + 0x38]
je 0x14033288d
lea rcx, [rbx - 0x14]
call fcn.140353570
xor r8d, r8d
mov r9d, 0x9000
dec edi
mov word [rbx], si
mov dword [rbx - 4], r8d
test edi, edi
jg 0x140332870
mov rsi, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338465
mov rax, qword [rsp + 0x48]
mov ebx, 0xffc1
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
movzx eax, word [rcx + r14 + 0x14]
and ax, bx
or ax, 1
mov word [rcx + r14 + 0x14], ax
mov r12, qword [rsp + 0x48]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x140332919
mov rcx, rbx
call fcn.1402cb550
mov rbx, rax
mov eax, 0x9000
jmp 0x14033291f
mov word [rbx + 0x14], 4
mov rdx, qword [rdi + 0x10]
movsxd rdi, dword [rdi + 4]
test rdx, rdx
jne 0x140332971
test word [rbx + 0x14], ax
jne 0x140332937
cmp dword [rbx + 0x20], edx
je 0x14033293f
mov rcx, rbx
call fcn.140353520
mov word [rbx + 0x14], 0x410
xor eax, eax
mov dword [rbx + 0x10], eax
test edi, edi
mov rcx, rbx
cmovns eax, edi
xor edi, edi
mov dword [rbx], eax
mov byte [rbx + 0x16], 1
mov qword [rbx + 8], rdi
call fcn.14033c990
test eax, eax
je 0x140332986
mov r12, qword [rsp + 0x68]
jmp 0x1403347c6
xor eax, eax
mov r8, rdi
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.14033d0d0
movzx r9d, byte [rsp + 0x40]
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov byte [rbx + 0x16], r9b
jmp 0x14033845d
mov rax, qword [rsp + 0x48]
mov rsi, qword [rsi + 0x80]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
movzx eax, word [rdi + rsi - 0x24]
test al, 0x12
je 0x1403329dc
bt ax, 0xa
mov ecx, dword [rdi + rsi - 0x28]
jae 0x1403329cb
add ecx, dword [rdi + rsi - 0x38]
mov rax, qword [rdi + rsi - 0x20]
cmp ecx, dword [rax + 0x88]
jg 0x14033a5ca
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, r14
test word [rbx + 0x14], ax
je 0x140332a0b
mov rcx, rbx
call fcn.140353570
mov r11, qword [rsp + 0x58]
xor r8d, r8d
lea edx, [r8 + 1]
movups xmm0, xmmword [rdi + rsi - 0x38]
mov ecx, 0xafff
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + rsi - 0x28]
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 rsi, qword [rsp + 0x60]
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
nop word [rax + rax]
mov eax, 0x9000
test word [rbx + 0x14], ax
jne 0x140332a91
cmp dword [rbx + 0x20], 0
je 0x140332aa0
mov rcx, rbx
call fcn.140353520
xor r8d, r8d
lea edx, [r8 + 1]
movups xmm0, xmmword [rdi]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movsd xmm1, qword [rdi + 0x30]
movsd qword [rbx + 0x30], xmm1
mov word [rdi + 0x14], dx
mov dword [rdi + 0x20], r8d
movzx eax, word [rbx + 0x14]
bt ax, 0xe
jae 0x140332b1e
test al, 0x12
je 0x140332b0e
bt ax, 0xa
jae 0x140332aee
mov rcx, rbx
call fcn.14033c990
test eax, eax
jne 0x1403347ba
cmp dword [rbx + 0x20], 0
je 0x140332afe
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x140332b0e
mov rcx, rbx
call fcn.1403534c0
test eax, eax
jne 0x1403347ba
mov eax, 0xbfff
and word [rbx + 0x14], ax
xor r8d, r8d
lea edx, [r8 + 1]
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x140332a80
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
mov esi, dword [rax + 0xc]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
mov rax, qword [rsp + 0x48]
add rdi, r14
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, r14
nop
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x140332b9e
mov r8d, 0x4000
mov rdx, rdi
mov rcx, rbx
call fcn.140352690
jmp 0x140332bcb
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 0x140332bcb
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 0x140332c1e
test al, 0x12
je 0x140332c11
bt ax, 0xa
jae 0x140332bf1
mov rcx, rbx
call fcn.14033c990
test eax, eax
jne 0x1403347ba
cmp dword [rbx + 0x20], 0
je 0x140332c01
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x140332c11
mov rcx, rbx
call fcn.1403534c0
test eax, eax
jne 0x1403347ba
mov eax, 0xbfff
and word [rbx + 0x14], ax
movzx eax, word [rbx + 0x14]
bt ax, 0xb
jae 0x140332c39
test byte [r12 + 2], 2
je 0x140332c39
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
dec esi
test eax, eax
je 0x140333430
add rbx, 0x38
add rdi, 0x38
jmp 0x140332b80
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r14
mov eax, 0x9000
add rcx, r14
test word [rcx + 0x14], ax
je 0x140332c9d
mov r8d, 0x4000
call fcn.140352690
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
movups xmm0, xmmword [rdx]
mov r12, qword [rsp + 0x48]
mov eax, 0x2000
movups xmmword [rcx], xmm0
movsd xmm1, qword [rdx + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rdx + 0x14], ax
mov edx, 1
jne case.0x14033239e.89
mov eax, 0xcfff
and word [rcx + 0x14], ax
mov eax, 0x4000
or word [rcx + 0x14], ax
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, r14
mov rax, qword [rcx + r14]
mov ecx, 0x9000
test word [r8 + 0x14], cx
je 0x140332d1d
mov rdx, rax
mov rcx, r8
call fcn.1403545f0
jmp 0x140332c83
mov r12, qword [rsp + 0x48]
mov qword [r8], rax
mov word [r8 + 0x14], 4
xor r8d, r8d
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
cmp qword [rsi + 0x50], 0
jg 0x14033a2c1
mov r13d, r8d
mov dword [rsp + 0x50], r8d
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 4]
imul r13, rax, 0x38
movsxd rax, dword [rdi + 8]
imul rdi, rax, 0x38
mov rax, qword [rsp + 0x48]
add r13, r14
add rdi, r14
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r14
movzx r14d, word [r13 + 0x14]
movzx eax, r14b
or al, byte [rdi + 0x14]
test al, 1
je 0x140332dee
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x140332dce
mov rcx, rbx
call fcn.140353570
mov r13d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov r13d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
mov word [rbx + 0x14], dx
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
test r14b, 0x12
jne 0x140332e21
xor r8d, r8d
movzx edx, r9b
mov rcx, r13
call fcn.14033d440
test eax, eax
jne 0x1403347bf
movzx r14d, word [r13 + 0x14]
mov r12d, 0xfffd
and r14w, r12w
mov eax, 0x400
jmp 0x140332e3c
mov eax, 0x400
test ax, r14w
je 0x140332e36
mov rcx, r13
call fcn.14033c990
jmp 0x140332e03
mov r12d, 0xfffd
movzx esi, word [rdi + 0x14]
test sil, 0x12
jne 0x140332e6c
movzx edx, byte [rsp + 0x40]
xor r8d, r8d
mov rcx, rdi
call fcn.14033d440
test eax, eax
jne 0x1403347ba
movzx esi, word [rdi + 0x14]
mov eax, 0xfffd
and si, ax
jmp 0x140332e89
test ax, si
je 0x140332e89
mov rcx, rdi
call fcn.14033c990
test eax, eax
jne 0x1403347ba
movzx esi, word [rdi + 0x14]
and si, r12w
mov rcx, qword [rsp + 0x70]
mov edx, dword [r13 + 0x10]
add edx, dword [rdi + 0x10]
movsxd r15, edx
movsxd rax, dword [rcx + 0x88]
cmp r15, rax
jg 0x14033a5c7
xor eax, eax
mov rcx, rbx
mov r8d, eax
cmp rbx, rdi
sete r8b
add edx, 2
call fcn.14033cc30
test eax, eax
jne 0x14033a905
movzx eax, word [rbx + 0x14]
mov ecx, 0xf242
and ax, cx
or ax, 2
mov word [rbx + 0x14], ax
cmp rbx, rdi
je 0x140332ef5
movsxd r8, dword [rdi + 0x10]
mov rdx, qword [rdi + 8]
mov rcx, qword [rbx + 8]
call fcn.1403c4426
mov word [rdi + 0x14], si
movsxd rcx, dword [rdi + 0x10]
add rcx, qword [rbx + 8]
movsxd r8, dword [r13 + 0x10]
mov rdx, qword [r13 + 8]
call fcn.1403c4426
movzx r9d, byte [rsp + 0x40]
mov word [r13 + 0x14], r14w
cmp r9b, 1
jbe 0x140332f1f
and r15, 0xfffffffffffffffe
mov rax, qword [rbx + 8]
mov r13d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x78]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov byte [r15 + rax], 0
mov rax, qword [rbx + 8]
mov byte [rax + r15 + 1], 0
mov eax, 0x200
or word [rbx + 0x14], ax
mov dword [rbx + 0x10], r15d
mov r15, qword [rsp + 0x70]
mov byte [rbx + 0x16], r9b
jmp 0x140338462
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rsi, rax, 0x38
mov rax, qword [rsp + 0x48]
add rdi, r14
add rsi, r14
movsxd rax, dword [rax + 0xc]
movzx ecx, word [rsi + 0x14]
movzx ebx, word [rdi + 0x14]
imul r14, rax, 0x38
movzx eax, cl
add r14, qword [rsp + 0x78]
and al, bl
test al, 4
jne 0x140332fe6
or cl, bl
test cl, 1
jne 0x14033330f
and bx, 0x2d
jne 0x140332fc5
mov rcx, rdi
call fcn.14026f0c0
movzx ebx, ax
movzx eax, word [rsi + 0x14]
and ax, 0x2d
jne 0x140332fd7
mov rcx, rsi
call fcn.14026f0c0
and al, bl
test al, 4
je 0x1403331c7
mov edx, 1
mov rax, qword [rsp + 0x48]
mov r9, qword [rdi]
mov r8, qword [rsi]
movzx ecx, byte [rax]
sub ecx, 0x6a
je 0x140333165
sub ecx, 1
je 0x1403330fe
sub ecx, 1
je 0x140333063
cmp ecx, 1
je 0x140333031
test r9, r9
je 0x14033330f
cmp r9, 0xffffffffffffffff
mov rax, r8
cmove r9, rdx
cqo
idiv r9
mov r8, rdx
jmp 0x140333184
test r9, r9
je 0x14033330f
cmp r9, 0xffffffffffffffff
jne 0x140333053
movabs rcx, 0x8000000000000000
cmp r8, rcx
je 0x1403331c7
mov rax, r8
cqo
idiv r9
mov r8, rax
jmp 0x140333184
test r9, r9
jle 0x140333099
movabs rax, 0x7fffffffffffffff
cqo
idiv r9
cmp r8, rax
jg 0x1403331c7
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jge 0x1403330f5
jmp 0x1403331c7
jns 0x1403330f5
test r8, r8
jle 0x1403330b9
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jge 0x1403330f5
jmp 0x1403331c7
jns 0x1403330f5
movabs rcx, 0x8000000000000000
cmp r9, rcx
je 0x1403331c7
cmp r8, rcx
je 0x1403331c7
movabs rax, 0x8000000000000001
mov rcx, r8
cqo
neg rcx
idiv r9
cmp rcx, rax
jg 0x1403331c7
imul r8, r9
jmp 0x140333184
movabs rcx, 0x8000000000000000
cmp r9, rcx
jne 0x14033311b
test r8, r8
jns 0x1403331c7
sub r8, rcx
jmp 0x140333184
neg r9
js 0x14033313b
test r8, r8
jle 0x14033315a
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x14033315a
mov eax, edx
jmp 0x14033315f
test r8, r8
jns 0x14033315a
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x14033315a
mov eax, edx
jmp 0x14033315f
add r8, r9
xor eax, eax
test eax, eax
jne 0x1403331c7
jmp 0x140333184
test r9, r9
js 0x1403331ac
test r8, r8
jle 0x140333181
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jl 0x1403331c7
add r8, r9
mov rsi, qword [rsp + 0x60]
mov ecx, 0xf244
mov qword [r14], r8
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 4
mov word [r14 + 0x14], ax
mov r14, qword [rsp + 0x78]
jmp 0x140332c83
test r8, r8
jns 0x140333181
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x140333181
movzx eax, word [rdi + 0x14]
test al, 8
je 0x1403331d5
movsd xmm2, qword [rdi]
jmp 0x1403331f7
test al, 0x24
je 0x1403331e3
xorps xmm2, xmm2
cvtsi2sd xmm2, qword [rdi]
jmp 0x1403331f7
test al, 0x12
je 0x1403331f4
mov rcx, rdi
call fcn.1402c6490
movaps xmm2, xmm0
jmp 0x1403331f7
movaps xmm2, xmm6
movzx eax, word [rsi + 0x14]
test al, 8
je 0x140333205
movsd xmm0, qword [rsi]
jmp 0x140333224
test al, 0x24
je 0x140333213
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rsi]
jmp 0x140333224
test al, 0x12
je 0x140333221
mov rcx, rsi
call fcn.1402c6490
jmp 0x140333224
movaps xmm0, xmm6
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax]
sub ecx, 0x6a
je 0x140333300
sub ecx, 1
je 0x1403332fa
sub ecx, 1
je 0x1403332f4
cmp ecx, 1
je 0x1403332e6
movzx eax, word [rdi + 0x14]
test al, 0x24
je 0x14033325f
mov rbx, qword [rdi]
xor ecx, ecx
jmp 0x140333291
test al, 8
je 0x140333273
movsd xmm0, qword [rdi]
call fcn.140272850
mov rbx, rax
xor ecx, ecx
jmp 0x140333291
test al, 0x12
je 0x14033328d
cmp qword [rdi + 8], 0
je 0x14033328d
mov rcx, rdi
call fcn.1402c6460
mov rbx, rax
xor ecx, ecx
jmp 0x140333291
xor ecx, ecx
mov ebx, ecx
movzx eax, word [rsi + 0x14]
test al, 0x24
je 0x14033329e
mov rax, qword [rsi]
jmp 0x1403332c5
test al, 8
je 0x1403332ad
movsd xmm0, qword [rsi]
call fcn.140272850
jmp 0x1403332c5
test al, 0x12
je 0x1403332c2
cmp qword [rsi + 8], 0
je 0x1403332c2
mov rcx, rsi
call fcn.1402c6460
jmp 0x1403332c5
mov rax, rcx
test rbx, rbx
je 0x14033330f
cmp rbx, 0xffffffffffffffff
mov edx, 1
xorps xmm0, xmm0
cmove rbx, rdx
cqo
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x140333304
ucomisd xmm2, xmm6
jp 0x1403332ee
je 0x14033330f
divsd xmm0, xmm2
jmp 0x140333304
mulsd xmm0, xmm2
jmp 0x140333304
subsd xmm0, xmm2
jmp 0x140333304
addsd xmm0, xmm2
ucomisd xmm0, xmm0
setp al
cmp al, 1
jne 0x14033336b
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x140333332
mov rcx, r14
call fcn.140353570
mov rsi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x78]
jmp 0x140332c83
mov r12, qword [rsp + 0x48]
mov edx, 1
mov rsi, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov word [r14 + 0x14], dx
mov r14, qword [rsp + 0x78]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rsi, qword [rsp + 0x60]
mov ecx, 0xf248
movsd qword [r14], xmm0
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 8
mov word [r14 + 0x14], ax
mov r14, qword [rsp + 0x78]
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
test eax, eax
je 0x1403328d9
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r14
test word [rcx + 0x14], ax
je 0x1403333c4
xor edx, edx
call fcn.1403545f0
jmp 0x140332c83
mov r12, qword [rsp + 0x48]
mov qword [rcx], r8
mov word [rcx + 0x14], 4
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
add rdi, r14
add rcx, r14
movsxd rax, dword [rax + 0xc]
movzx edx, word [rcx + 0x14]
imul rsi, rax, 0x38
movzx eax, dl
or al, byte [rdi + 0x14]
add rsi, r14
test al, 1
je 0x14033346a
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x14033344a
mov rcx, rsi
call fcn.140353570
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov edx, 1
mov word [rsi + 0x14], dx
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov eax, edx
test dl, 0x24
je 0x140333476
mov rbx, qword [rcx]
jmp 0x1403334a3
test al, 8
je 0x140333488
movsd xmm0, qword [rcx]
call fcn.140272850
mov rbx, rax
jmp 0x1403334a3
test al, 0x12
je 0x1403334a0
cmp qword [rcx + 8], 0
je 0x1403334a0
call fcn.1402c6460
mov rbx, rax
xor r8d, r8d
jmp 0x1403334a3
mov rbx, r8
movzx eax, word [rdi + 0x14]
test al, 0x24
je 0x1403334b0
mov rdx, qword [rdi]
jmp 0x1403334dd
test al, 8
je 0x1403334c2
movsd xmm0, qword [rdi]
call fcn.140272850
mov rdx, rax
jmp 0x1403334dd
test al, 0x12
je 0x1403334da
cmp qword [rdi + 8], 0
je 0x1403334da
mov rcx, rdi
call fcn.1402c6460
mov rdx, rax
jmp 0x1403334dd
mov rdx, r8
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax]
cmp cl, 0x66
jne 0x1403334ef
and rbx, rdx
jmp 0x140333564
cmp cl, 0x67
jne 0x1403334f9
or rbx, rdx
jmp 0x140333564
test rdx, rdx
je 0x140333564
jns 0x140333513
mov eax, 0xd1
sub al, cl
movzx ecx, al
cmp rdx, 0xffffffffffffffc0
jle 0x140333519
neg rdx
cmp rdx, 0x40
jl 0x140333532
test rbx, rbx
jns 0x14033352c
cmp cl, 0x68
je 0x14033352c
mov rbx, 0xffffffffffffffff
jmp 0x140333564
xor eax, eax
mov ebx, eax
jmp 0x140333564
cmp cl, 0x68
mov rcx, rdx
jne 0x140333542
shl rbx, cl
mov r8, rbx
jmp 0x140333561
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x140333561
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 + 0x60]
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.14033cdc0
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
movsxd rax, dword [r12 + 8]
add qword [rbx], rax
jmp 0x140338462
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r14
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x140333634
test al, 0x28
jne 0x1403335f5
test al, 2
je 0x1403335f0
mov rcx, rbx
call fcn.140264970
movzx eax, word [rbx + 0x14]
mov r11, qword [rsp + 0x58]
movzx ecx, ax
jmp 0x140333601
mov rcx, rbx
call fcn.14033bea0
movzx ecx, word [rbx + 0x14]
movzx eax, cx
test cl, 4
jne 0x14033362d
mov r12, qword [rsp + 0x48]
cmp dword [r12 + 8], 0
jne 0x14033416c
mov r13d, 0x14
mov r14, r12
mov ebx, 1
jmp 0x14033a314
xor r8d, r8d
lea edx, [r8 + 1]
mov r12, qword [rsp + 0x48]
mov ecx, 0xf244
movzx r9d, byte [rsp + 0x40]
and ax, cx
mov r10d, dword [rsp + 0x54]
or ax, 4
mov word [rbx + 0x14], ax
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, r14
movzx eax, word [rcx + 0x14]
test al, 0x24
je 0x1403328d9
test al, 8
je 0x140333687
movsd xmm0, qword [rcx]
jmp 0x14033368f
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rcx]
mov r12, qword [rsp + 0x48]
mov ebx, 0xf248
and ax, bx
movsd qword [rcx], xmm0
or ax, 8
mov word [rcx + 0x14], ax
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r14
test word [rbx + 0x14], ax
je 0x1403336e3
mov rcx, rbx
call fcn.14033c990
mov r13d, eax
test eax, eax
jne 0x14033a30a
mov rax, qword [rsp + 0x48]
mov rcx, rbx
movzx r8d, byte [rsp + 0x40]
movzx edx, byte [rax + 8]
call fcn.14033c770
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
je 0x140332c83
xor edi, edi
mov r12, qword [rsp + 0x68]
mov eax, 0xb
mov r14, qword [rsp + 0x48]
lea ebx, [rax - 0xa]
jmp 0x14033a320
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add r15, r14
imul r14, rax, 0x38
movzx esi, word [r15 + 0x14]
add r14, qword [rsp + 0x78]
movzx ebx, word [r14 + 0x14]
movzx edx, bx
and dx, si
test dl, 4
je 0x140333819
mov rax, qword [r14]
mov r12, rcx
cmp rax, qword [r15]
jle 0x14033379f
mov rax, qword [0x1404ce420]
cmp byte [rdi + rax], 0
jne 0x14033416c
mov r15, qword [rsp + 0x70]
mov edx, 1
mov rsi, qword [rsp + 0x60]
mov r10d, edx
mov r14, qword [rsp + 0x78]
xor r8d, r8d
mov dword [rsp + 0x54], edx
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov edx, 1
jge 0x1403337e1
mov rax, qword [0x1404ce410]
xor r8d, r8d
cmp byte [rdi + rax], r8b
jne 0x140334174
mov r15, qword [rsp + 0x70]
mov r10d, 0xffffffff
mov rsi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x78]
mov dword [rsp + 0x54], r10d
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [0x1404ce418]
xor r8d, r8d
cmp byte [rdi + rax], r8b
jne 0x140334174
mov r15, qword [rsp + 0x70]
mov r10d, r8d
mov rsi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x78]
mov dword [rsp + 0x54], r8d
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
movzx ecx, bx
or cx, si
test cl, 1
je 0x1403338b6
mov rax, qword [rsp + 0x48]
movzx eax, word [rax + 2]
test al, al
jns 0x14033387e
test dl, 1
je 0x140333863
mov eax, pe_nt_image_headers64
test ax, bx
jne 0x140333863
xor eax, eax
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x54]
movzx edx, byte [rax]
mov rax, qword [0x1404ce418]
jmp 0x1403339c8
movzx eax, bx
not ax
and eax, 1
lea r10d, [rax*2 - 1]
mov dword [rsp + 0x54], r10d
jmp 0x140333985
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov edx, 1
test al, 0x10
jne 0x140334174
mov r15, qword [rsp + 0x70]
mov r10d, edx
mov rsi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x78]
mov dword [rsp + 0x54], edx
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rdi, qword [rsp + 0x48]
movzx eax, byte [rdi + 2]
and al, 0x47
cmp al, 0x43
jb 0x1403338fc
test cl, 2
je 0x14033396a
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x1403338e7
xor edx, edx
mov rcx, r15
call fcn.140264970
movzx ebx, word [r14 + 0x14]
movzx eax, bl
and al, 0x2e
cmp al, 2
jne 0x14033396a
xor edx, edx
mov rcx, r14
call fcn.140264970
jmp 0x14033396a
cmp al, 0x42
jne 0x14033396a
test cl, 2
je 0x14033396a
test sil, 2
jne 0x14033393e
test sil, 0x2c
je 0x14033393e
mov r8b, 1
movzx edx, r9b
mov rcx, r15
call fcn.14033d440
xor si, word [r15 + 0x14]
mov eax, 0xdbf
and si, ax
xor si, word [r15 + 0x14]
cmp r15, r14
jne 0x14033393e
movzx ebx, si
or bx, 2
test bl, 2
jne 0x14033396a
test bl, 0x2c
je 0x14033396a
movzx edx, byte [rsp + 0x40]
mov r8b, 1
mov rcx, r14
call fcn.14033d440
xor bx, word [r14 + 0x14]
mov ecx, 0xdbf
and bx, cx
xor bx, word [r14 + 0x14]
mov r8, qword [rdi + 0x10]
mov rdx, r15
mov rcx, r14
call fcn.140318100
mov r11, qword [rsp + 0x58]
mov r10d, eax
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x48]
mov ecx, r10d
movzx r9d, si
test r10d, r10d
jns 0x1403339a6
movzx ecx, byte [rax]
mov rax, qword [0x1404ce410]
movzx edx, byte [rcx + rax]
jmp 0x1403339cc
movzx edx, byte [rax]
mov dword [rsp + 0x54], ecx
test ecx, ecx
jne 0x1403339bd
mov rax, qword [0x1404ce418]
mov r10d, ecx
jmp 0x1403339c8
mov rax, qword [0x1404ce420]
mov dword [rsp + 0x54], ecx
movzx edx, byte [rdx + rax]
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov word [r14 + 0x14], bx
test dl, dl
mov word [r15 + 0x14], si
lea edx, [r8 + 1]
jne 0x140334174
mov r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
test r10d, r10d
je 0x140334174
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
test byte [rax + 2], 1
jne 0x140333a32
mov r13, r8
jmp 0x140333a3a
mov r13, qword [rax - 8]
add r13, 4
mov rcx, qword [rax + 0x10]
xor edx, edx
mov r8d, dword [rax + 4]
mov edi, edx
mov r9d, dword [rax + 8]
mov ebx, edx
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x68], rcx
mov dword [rbp - 0x80], r8d
mov dword [rbp - 0x78], r9d
mov qword [rbp - 0x50], rax
test rax, rax
jle 0x14033a1aa
lea r12, [rcx + 0x20]
nop dword [rax]
test r13, r13
je 0x140333a7c
mov edx, dword [r13 + rbx*4]
jmp 0x140333a7e
mov edx, edi
mov rax, qword [rcx + 0x18]
lea ecx, [rdx + r9]
imul r15, rcx, 0x38
movzx esi, byte [rax + rbx]
lea ecx, [rdx + r8]
mov r8, qword [r12]
add r15, r14
imul rax, rcx, 0x38
mov rdx, r15
and esi, 1
add r14, rax
mov rcx, r14
call fcn.140318100
mov dword [rsp + 0x54], eax
mov r10d, eax
test eax, eax
jne 0x140333afd
mov rcx, qword [rbp - 0x68]
inc edi
mov r8d, dword [rbp - 0x80]
inc rbx
mov r9d, dword [rbp - 0x78]
add r12, 8
mov r14, qword [rsp + 0x78]
cmp rbx, qword [rbp - 0x50]
jl 0x140333a70
mov r15, qword [rsp + 0x70]
mov r13d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov rax, qword [rbp - 0x68]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x140333b21
test byte [r14 + 0x14], 1
jne 0x140333b19
test byte [r15 + 0x14], 1
je 0x140333b21
neg r10d
mov dword [rsp + 0x54], r10d
mov r15, qword [rsp + 0x70]
test esi, esi
mov rsi, qword [rsp + 0x60]
mov edx, 1
mov r13d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
je 0x140332d2c
neg r10d
mov dword [rsp + 0x54], r10d
xor r8d, r8d
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
test r10d, r10d
jns 0x140333b90
mov eax, dword [rax + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r11 + rcx*8]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
jne 0x140333bae
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r11 + rcx*8]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov eax, dword [rax + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r11 + rcx*8]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rdi, qword [rsp + 0x48]
mov r12d, 2
mov edx, r12d
movsxd rax, dword [rdi + 4]
imul rcx, rax, 0x38
add rcx, r14
call fcn.140331780
movsxd rcx, dword [rdi + 8]
mov edx, r12d
imul rcx, rcx, 0x38
mov ebx, eax
add rcx, r14
call fcn.140331780
lea rcx, [0x140000000]
lea eax, [rax + rbx*2]
add eax, ebx
movsxd rdx, eax
mov rax, rdi
cmp byte [rax], 0x2c
jne 0x140333c1e
movzx edx, byte [rdx + rcx + 0x4a55c8]
jmp 0x140333c26
movzx edx, byte [rdx + rcx + 0x4a55d8]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r14
cmp dl, r12b
jne 0x140333c62
movzx eax, word [rcx + 0x14]
mov edx, 0xf241
movzx r9d, byte [rsp + 0x40]
and ax, dx
mov r10d, dword [rsp + 0x54]
or ax, 1
mov r11, qword [rsp + 0x58]
mov r12, rdi
mov word [rcx + 0x14], ax
jmp 0x140338462
movzx r9d, byte [rsp + 0x40]
mov r12, rdi
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
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 0x140338462
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 4]
mov edx, dword [rdi + 0xc]
imul rcx, rax, 0x38
add rcx, r14
call fcn.140331780
movsxd rcx, eax
mov rax, rdi
movsxd rdx, dword [rax + 0x10]
movsxd rax, dword [rax + 8]
xor rdx, rcx
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r14
test word [rcx + 0x14], ax
je 0x140333cec
call fcn.1403545f0
movzx r9d, byte [rsp + 0x40]
mov r12, rdi
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
movzx r9d, byte [rsp + 0x40]
mov r12, rdi
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov qword [rcx], rdx
mov word [rcx + 0x14], 4
jmp 0x140338462
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
add rcx, r14
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
movzx eax, word [rcx + 0x14]
add rbx, r14
test al, 1
jne 0x1403397a4
test al, 0x24
je 0x140333d49
cmp qword [rcx], 0
mov rax, r8
sete al
jmp 0x140333d78
test al, 8
je 0x140333d53
movsd xmm0, qword [rcx]
jmp 0x140333d68
test al, 0x12
je 0x140333d75
call fcn.1402c6490
mov r11, qword [rsp + 0x58]
xor r8d, r8d
lea edx, [r8 + 1]
ucomisd xmm0, xmm6
jp 0x140333d70
je 0x140333d75
mov rax, r8
jmp 0x140333d78
mov rax, rdx
mov ecx, 0x9000
test word [rbx + 0x14], cx
je 0x140333d93
mov rdx, rax
mov rcx, rbx
call fcn.1403545f0
jmp 0x140332c83
mov qword [rbx], rax
mov word [rbx + 0x14], 4
jmp 0x140332a3b
mov r12, qword [rsp + 0x48]
mov word [rbx + 0x14], dx
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rdi + 8]
imul rdi, rax, 0x38
add rbx, r14
mov eax, 0x9000
add rdi, r14
test word [rdi + 0x14], ax
je 0x140333df3
mov rcx, rdi
call fcn.140353570
mov r11, qword [rsp + 0x58]
xor r8d, r8d
lea edx, [r8 + 1]
jmp 0x140333df7
mov word [rdi + 0x14], dx
test byte [rbx + 0x14], 1
jne 0x1403325b3
mov word [rdi + 0x14], 4
movzx eax, word [rbx + 0x14]
test al, 0x24
je 0x140333e1d
mov rax, qword [rbx]
not rax
mov qword [rdi], rax
jmp 0x140332c83
test al, 8
je 0x140333e35
movsd xmm0, qword [rbx]
call fcn.140272850
not rax
mov qword [rdi], rax
jmp 0x140332c83
test al, 0x12
je 0x140333e53
cmp qword [rbx + 8], 0
je 0x140333e53
mov rcx, rbx
call fcn.1402c6460
not rax
mov qword [rdi], rax
jmp 0x140332c83
mov rax, r8
not rax
mov qword [rdi], rax
jmp 0x140332c83
mov r8, qword [rsi + 0x108]
test r8, r8
je 0x140333ebd
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsi + 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 0x140334167
bts eax, edx
mov edx, 1
mov byte [rcx + r9], al
jmp 0x140333ed5
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsi + 0x88]
mov eax, dword [rax + 4]
cmp dword [rcx + 4], eax
je 0x14033a165
mov rax, qword [rsi + 0x88]
xor r8d, r8d
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov ecx, dword [rax + 4]
mov dword [r12 + 4], ecx
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
add rcx, r14
mov edx, dword [rax + 0xc]
call fcn.140331780
test eax, eax
jne 0x140333f4c
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
mov edx, r8d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r14
call fcn.140331780
test eax, eax
jne 0x140332c83
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14033416c
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 0x14], 1
jne 0x140334174
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
test eax, eax
js 0x140333ff2
mov rcx, rax
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 0xc]
movzx eax, word [rcx + 0x4a]
cmp edx, eax
jge 0x140333fe3
mov ecx, dword [rcx + rdx*4 + 0x70]
mov edx, 1
cmp ecx, 0xc
jb 0x140333fcf
test dl, cl
mov eax, 4
mov ecx, 8
cmove ax, cx
jmp 0x140334019
mov rax, rcx
lea rcx, [0x140000000]
movzx eax, byte [rax + rcx + 0x4a55e8]
jmp 0x140334019
mov rax, qword [rsp + 0x48]
mov edx, 1
mov ecx, dword [rax + 0x10]
jmp 0x140334012
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
movzx eax, word [rcx + r14 + 0x14]
lea rcx, [0x140000000]
and eax, 0x3f
movzx ecx, byte [rax + rcx + 0x4a40a0]
dec ecx
mov eax, edx
shl ax, cl
mov r12, qword [rsp + 0x48]
test word [r12 + 2], ax
jne 0x140334174
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 0x14], 1
jne 0x1403340ad
movsxd rax, dword [rdi + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r14 + 0x14], 1
jne 0x1403340ad
mov rax, rdi
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r14
test word [rcx + 0x14], ax
je 0x140334094
xor edx, edx
call fcn.1403545f0
movzx r9d, byte [rsp + 0x40]
mov r12, rdi
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov qword [rcx], r8
mov r12, rdi
mov word [rcx + 0x14], 4
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, rdi
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r14
test word [rcx + 0x14], ax
je 0x1403340e3
call fcn.140353570
movzx r9d, byte [rsp + 0x40]
mov r12, rdi
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov word [rcx + 0x14], dx
mov r12, rdi
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 0x14], 1
je 0x140334174
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x1403362c2
cmp byte [rdx + 2], 0
je 0x1403362c2
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r14
test word [rcx + 0x14], ax
je 0x140334199
call fcn.140353570
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov edx, 1
mov eax, dword [r12 + 8]
mov r14, qword [rsp + 0x78]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r11 + rcx*8]
mov qword [rsp + 0x48], r15
mov r15, qword [rsp + 0x70]
jmp 0x140332a36
mov edx, 1
mov word [rcx + 0x14], dx
mov r12, qword [rsp + 0x48]
jmp 0x140334174
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
mov r15d, dword [rcx + 8]
mov dword [rbp - 0x78], r15d
nop word [rax + rax]
mov r13, qword [rbx + 0x58]
mov eax, dword [rsi + 0x2c]
mov qword [rbp - 0x68], r13
cmp dword [rbx + 0x20], eax
je 0x140334219
cmp byte [rbx + 2], 0
jne 0x14033429d
cmp byte [rbx + 3], 0
mov rdi, qword [rbx + 0x30]
je 0x140334212
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x140334243
lea eax, [r15 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x140334243
mov rbx, qword [rbx + 0x28]
lea r15d, [rax - 1]
jmp 0x1403341c3
cmp byte [rdi], 0
je 0x140334257
jmp 0x140334226
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x1403343af
mov rcx, rbx
call fcn.14033bc30
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
je 0x1403341d0
mov r15, qword [rsp + 0x70]
jmp 0x14033a30a
mov rcx, rbx
call fcn.14033b5c0
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14033a940
mov rcx, rdi
call fcn.1402bc2f0
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 0x140334291
mov ecx, edx
test edx, edx
mov r8d, 0
cmovs ecx, r8d
mov dword [rbx + 0x6c], ecx
mov rcx, qword [rdi + 0x38]
jmp 0x1403342c9
mov dword [rbx + 0x6c], ecx
xor r8d, r8d
mov rcx, qword [rdi + 0x38]
jmp 0x1403342c9
cmp byte [rbx], 3
jne 0x140334348
movsxd rax, dword [rbx + 0x24]
test eax, eax
jle 0x140334348
imul rcx, rax, 0x38
xor r8d, r8d
mov eax, dword [rcx + r14 + 0x10]
mov dword [rbx + 0x6c], eax
mov dword [rbx + 0x68], eax
mov rcx, qword [rcx + r14 + 8]
mov qword [rbx + 0x60], rcx
lea rdi, [rbx + 0x40]
mov eax, dword [rsi + 0x2c]
mov dword [rbx + 0x20], eax
movzx eax, byte [rcx]
mov dword [r13], eax
mov qword [rbp - 0x50], rdi
cmp eax, 0x80
jae 0x1403342f0
mov eax, 1
jmp 0x140334302
mov rcx, qword [rbx + 0x60]
mov rdx, r13
call fcn.140312ec0
movzx eax, al
xor r8d, r8d
mov dword [rdi], eax
lea rsi, [rbx + 0x4a]
mov word [rsi], r8w
mov eax, dword [r13]
mov qword [rbp - 0x48], rsi
cmp dword [rbx + 0x6c], eax
jae 0x14033433b
mov qword [rbx + 0x60], r8
mov dword [rbx + 0x6c], r8d
mov eax, dword [r13]
cmp eax, 0x18003
ja 0x1403345af
cmp eax, dword [rbx + 0x68]
ja 0x1403345af
jmp 0x1403343b6
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x38], rax
jmp 0x140334479
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r14
test word [rcx + 0x14], ax
je 0x140334377
call fcn.140353570
mov r15, qword [rsp + 0x70]
mov r13d, dword [rsp + 0x50]
jmp 0x140332c83
mov r15, qword [rsp + 0x70]
mov edx, 1
mov r13d, dword [rsp + 0x50]
xor r8d, r8d
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov word [rcx + 0x14], dx
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
lea rsi, [rbx + 0x4a]
xor r8d, r8d
movzx eax, word [rsi]
cmp eax, r15d
ja 0x1403346ec
mov eax, dword [r13]
lea rdi, [rbx + 0x40]
mov qword [rbp - 0x50], rdi
cmp dword [rdi], eax
jae 0x1403345f6
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x38], rax
test rax, rax
jne 0x140334471
mov qword [rbp + 0x30], rax
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
movups xmmword [rbp + 0x10], xmm0
movups xmmword [rbp + 0x20], 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 0x140334427
mov ecx, edx
test edx, edx
mov edx, 0
cmovs ecx, edx
jmp 0x140334429
xor edx, edx
mov rax, qword [r10 + 0x38]
mov qword [rbp - 0x38], rax
mov qword [rbp + 8], rax
cmp r8d, ecx
ja 0x14033444d
mov ecx, 0x4010
mov dword [rbp + 0x10], r8d
mov word [rbp + 0x14], cx
mov dword [rsp + 0x50], edx
jmp 0x140334475
lea r9, [rbp]
xor edx, edx
mov rcx, r10
call fcn.14033cac0
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14033a936
mov rax, qword [rbp + 8]
mov qword [rbp - 0x38], rax
jmp 0x140334475
mov qword [rbp - 0x50], rdi
mov qword [rbp - 0x48], rsi
movzx r12d, word [rsi]
mov esi, dword [rdi]
mov r14d, r12d
mov rcx, qword [rbp - 0x68]
add rsi, rax
mov r15d, dword [r13 + r12*4]
mov r13d, dword [r13]
add r13, rax
movzx edi, byte [rsi]
mov dword [rbp - 0x80], edi
mov dword [rbx + r14*4 + 0x70], edi
cmp edi, 0x80
jae 0x1403344bc
lea rdx, [0x140000000]
inc rsi
movzx eax, byte [rdi + rdx + 0x4a3a10]
jmp 0x1403344f8
lea rdx, [rbp - 0x80]
mov rcx, rsi
call fcn.140312ec0
mov edi, dword [rbp - 0x80]
movzx eax, al
add rsi, rax
mov dword [rbx + r14*4 + 0x70], edi
cmp edi, 0x80
jb 0x1403344e5
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x1403344f4
lea rcx, [0x140000000]
movzx eax, byte [rdi + rcx + 0x4a3a10]
mov rcx, qword [rbp - 0x68]
inc r12d
add r15, rax
movsxd r14, r12d
mov dword [rcx + r14*4], r15d
cmp r12d, dword [rbp - 0x78]
ja 0x140334512
cmp rsi, r13
jb 0x140334495
jmp 0x140334517
cmp rsi, r13
jb 0x14033456f
cmp rsi, r13
ja 0x140334577
mov eax, dword [rbx + 0x68]
cmp r15, rax
jne 0x140334577
mov rax, qword [rbp - 0x48]
sub esi, dword [rbp - 0x38]
mov word [rax], r12w
mov rax, qword [rbp - 0x50]
mov dword [rax], esi
cmp qword [rbx + 0x60], 0
jne 0x140334556
mov eax, 0x9000
test word [rbp + 0x14], ax
jne 0x14033454d
cmp dword [rbp + 0x20], 0
je 0x140334556
lea rcx, [rbp]
call fcn.140353520
mov rsi, qword [rbp - 0x48]
xor r8d, r8d
mov r13, qword [rbp - 0x68]
mov r15d, dword [rbp - 0x78]
mov r14, qword [rsp + 0x78]
jmp 0x1403345f9
mov eax, dword [rbx + 0x68]
cmp r15, rax
jbe 0x140334524
cmp dword [rcx], 0
jne 0x140334586
xor eax, eax
mov rsi, r13
mov r12d, eax
jmp 0x140334524
cmp qword [rbx + 0x60], 0
jne 0x1403345a7
mov eax, 0x9000
test word [rbp + 0x14], ax
jne 0x14033459e
cmp dword [rbp + 0x20], 0
je 0x1403345a7
lea rcx, [rbp]
call fcn.140353520
mov r14, qword [rsp + 0x78]
xor r8d, r8d
mov r11, qword [rsp + 0x58]
mov eax, dword [r11 + 0xc]
test eax, eax
jle 0x14033a2f3
mov r13d, dword [rsp + 0x50]
dec eax
mov rsi, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r15, [r11 + rax*8]
mov qword [rsp + 0x48], r15
mov r12, qword [rsp + 0x48]
mov r15, qword [rsp + 0x70]
jmp 0x140338465
mov edi, r8d
movzx eax, word [rsi]
cmp eax, r15d
ja 0x1403346e7
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
cmp byte [r15 + 1], 0xf6
jne 0x1403346a6
mov rax, qword [r15 + 0x10]
mov edx, 0x9000
test word [rcx + 0x14], dx
je 0x140334651
mov r8d, 0x2000
mov rdx, rax
call fcn.140352690
mov r15, qword [rsp + 0x70]
mov r13d, dword [rsp + 0x50]
mov rsi, qword [rsp + 0x60]
jmp 0x140332c83
movups xmm0, xmmword [rax]
mov r15, qword [rsp + 0x70]
mov edx, 0x2000
mov r13d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
movups xmmword [rcx], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rax + 0x14], dx
jne 0x14033289f
movzx r9d, byte [rsp + 0x40]
mov eax, 0xafff
and word [rcx + 0x14], ax
or word [rcx + 0x14], dx
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338465
mov eax, 0x9000
test word [rcx + 0x14], ax
je 0x1403346ca
call fcn.140353570
mov r15, qword [rsp + 0x70]
mov r13d, dword [rsp + 0x50]
mov rsi, qword [rsp + 0x60]
jmp 0x140332c83
mov r15, qword [rsp + 0x70]
mov edx, 1
mov r13d, dword [rsp + 0x50]
mov rsi, qword [rsp + 0x60]
mov word [rcx + 0x14], dx
jmp 0x140336ef3
mov r14d, r15d
jmp 0x1403346f4
mov r14d, r15d
mov edi, dword [rbx + r14*4 + 0x70]
mov rdx, qword [rsp + 0x48]
movsxd rax, dword [rdx + 0xc]
imul rsi, rax, 0x38
mov eax, 0x9000
add rsi, qword [rsp + 0x78]
test word [rsi + 0x14], ax
je 0x14033471e
mov rcx, rsi
call fcn.140353570
mov rdx, qword [rsp + 0x48]
lea eax, [r15 + 1]
mov eax, dword [r13 + rax*4]
cmp dword [rbx + 0x6c], eax
jb 0x14033482d
mov r14d, dword [r13 + r14*4]
add r14, qword [rbx + 0x60]
cmp edi, 0xc
jae 0x140334779
mov rcx, r14
mov edx, edi
mov r8, rsi
call fcn.14033edd0
mov r15, qword [rsp + 0x70]
mov r13d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
movzx r12d, byte [rsp + 0x40]
lea ebx, [rdi - 0xc]
mov r15, qword [rsp + 0x70]
shr ebx, 1
mov dword [rsi + 0x10], ebx
mov byte [rsi + 0x16], r12b
lea edx, [rbx + 2]
cmp dword [rsi + 0x20], edx
jge 0x1403347e8
cmp ebx, dword [r15 + 0x88]
jg 0x14033a5ca
xor r8d, r8d
mov word [rsi + 0x14], 1
mov rcx, rsi
call fcn.14033cc30
test eax, eax
je 0x1403347f0
mov rsi, qword [rsp + 0x60]
mov r12, qword [rsp + 0x68]
xor edi, edi
mov rcx, r15
call fcn.140318740
lea rdx, str.out_of_memory
mov rcx, rsi
call fcn.1403321f0
mov r13d, 7
jmp 0x140337d39
mov rax, qword [rsi + 0x28]
mov qword [rsi + 8], rax
mov rcx, qword [rsi + 8]
mov r8, rbx
mov rdx, r14
call fcn.1403c4426
mov rax, qword [rsi + 8]
lea rcx, [0x140000000]
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 + 0x4a55f4]
mov word [rsi + 0x14], ax
jmp 0x140334750
movzx r12d, byte [rsp + 0x40]
mov byte [rsi + 0x16], r12b
movzx eax, word [rdx + 2]
test al, 0xc0
je 0x14033484e
cmp edi, 0xc
jb 0x14033484a
test dil, 1
je 0x140334876
test al, al
js 0x140334876
cmp edi, 0x80
jb 0x14033485f
lea r8d, [rdi - 0xc]
shr r8d, 1
jmp 0x140334871
mov eax, edi
lea rcx, [0x140000000]
movzx r8d, byte [rax + rcx + 0x4a3a10]
test r8d, r8d
jne 0x140334882
lea rcx, [0x1404a3ec0]
jmp 0x140334741
mov r15, qword [rsp + 0x70]
cmp r8d, dword [r15 + 0x88]
jg 0x14033a5ca
mov edx, dword [r13 + r14*4]
mov r9, rsi
mov rcx, qword [rbx + 0x30]
call fcn.14033cac0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a305
mov rcx, qword [rsi + 8]
mov r8, rsi
mov edx, edi
call fcn.14033edd0
mov eax, 0xbfff
and word [rsi + 0x14], ax
jmp 0x140334755
mov rax, qword [rsp + 0x48]
xor r8d, r8d
mov esi, r8d
mov r14, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov r15, qword [r14 + 8]
add rbx, qword [rsp + 0x78]
cmp r8w, word [r14 + 0x36]
jge 0x14033a189
lea rdi, [r15 + 0xc]
nop
movzx eax, word [rdi + 6]
test al, 0x60
je 0x14033491f
test al, 0x20
jne 0x140334a67
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc], 0
jne 0x140334a63
movzx eax, byte [rdi]
cmp al, 0x43
jl 0x14033499d
movzx edx, word [rbx + 0x14]
test dl, 4
jne 0x1403349c5
test dl, 0x28
jne 0x140334950
test dl, 2
je 0x1403349c5
mov edx, 1
mov rcx, rbx
call fcn.140264970
jmp 0x1403349c5
cmp al, 0x45
jg 0x1403349c5
test dl, 0x20
jne 0x14033498b
movsd xmm3, qword [rbx]
movaps xmm0, xmm3
call fcn.140272850
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
ucomisd xmm3, xmm2
jp 0x1403349c5
jne 0x1403349c5
movabs rcx, 0x7fffffffffffffff
add rcx, rax
cmp rcx, 0xfffffffffffffffd
ja 0x1403349c5
mov qword [rbx], rax
mov eax, 0xf244
and dx, ax
or dx, 4
mov word [rbx + 0x14], dx
jmp 0x1403349c5
cmp al, 0x42
jne 0x1403349c5
movzx eax, word [rbx + 0x14]
test al, 2
jne 0x1403349bc
test al, 0x2c
je 0x1403349bc
mov r8b, 1
movzx edx, r9b
mov rcx, rbx
call fcn.14033d440
mov eax, 0xffd3
and word [rbx + 0x14], ax
movzx ecx, word [rbx + 0x14]
movzx edx, cx
test cl, 1
jne 0x140334a63
mov eax, dword [rdi - 4]
shr eax, 4
and eax, 0xf
sub eax, 2
je 0x140334a5a
sub eax, 1
je 0x140334a55
sub eax, 1
je 0x140334a55
sub eax, 1
je 0x1403349fc
cmp eax, 1
jne 0x140334a63
test cl, 2
jmp 0x140334a5d
test cl, 4
je 0x140334a50
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x140334a32
or cx, 0x20
mov eax, 0xfffb
and cx, ax
mov word [rbx + 0x14], cx
jmp 0x140334a63
xorps xmm0, xmm0
or cx, 8
cvtsi2sd xmm0, rdx
mov eax, 0xfffb
and cx, ax
movsd qword [rbx], xmm0
mov word [rbx + 0x14], cx
jmp 0x140334a63
test cl, 0x28
jmp 0x140334a5d
test cl, 4
jmp 0x140334a5d
test cl, 0x10
je 0x14033a336
add rbx, 0x38
movsx eax, word [r14 + 0x36]
inc esi
movzx r9d, byte [rsp + 0x40]
add rdi, 0x18
cmp esi, eax
jl 0x140334900
mov r15, qword [rsp + 0x70]
jmp 0x140334755
mov rax, qword [rsp + 0x48]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r14
cmp al, 0x43
jl 0x140334b1c
movzx edx, word [rbx + 0x14]
test dl, 4
jne 0x140334b44
test dl, 0x28
jne 0x140334acf
test dl, 2
je 0x140334b44
mov edx, 1
mov rcx, rbx
call fcn.140264970
jmp 0x140334b44
cmp al, 0x45
jg 0x140334b44
test dl, 0x20
jne 0x140334b0a
movsd xmm3, qword [rbx]
movaps xmm0, xmm3
call fcn.140272850
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
ucomisd xmm3, xmm2
jp 0x140334b44
jne 0x140334b44
movabs rcx, 0x7fffffffffffffff
add rcx, rax
cmp rcx, 0xfffffffffffffffd
ja 0x140334b44
mov qword [rbx], rax
mov eax, 0xf244
and dx, ax
or dx, 4
mov word [rbx + 0x14], dx
jmp 0x140334b44
cmp al, 0x42
jne 0x140334b44
movzx eax, word [rbx + 0x14]
test al, 2
jne 0x140334b3b
test al, 0x2c
je 0x140334b3b
mov r8b, 1
movzx edx, r9b
mov rcx, rbx
call fcn.14033d440
mov eax, 0xffd3
and word [rbx + 0x14], ax
cmp byte [rdi], 0x45
jne 0x140334b96
movzx ecx, word [rbx + 0x14]
test cl, 4
je 0x140334b96
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov eax, 0xfffb
ja 0x140334b7f
and cx, ax
or cx, 0x20
jmp 0x140334b92
xorps xmm0, xmm0
and cx, ax
cvtsi2sd xmm0, rdx
or cx, 8
movsd qword [rbx], xmm0
mov word [rbx + 0x14], cx
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x140336dd8
movzx r9d, byte [rsp + 0x40]
add rbx, 0x38
jmp 0x140334aa1
mov rcx, qword [rsp + 0x48]
mov r15, r8
mov r12d, r8d
mov r13, r8
movsxd rax, dword [rcx + 4]
mov rdi, qword [rcx + 0x10]
imul r11, rax, 0x38
mov eax, dword [rcx + 8]
dec eax
add r11, r14
cdqe
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rsi, r11
mov qword [rbp - 0x68], r11
add rcx, r14
mov qword [rbp - 0x50], rsi
mov qword [rbp - 0x48], rcx
test rdi, rdi
je 0x140334c58
movzx eax, byte [rdi]
lea rbx, [r11 + 0x14]
mov esi, 0xfffb
nop word [rax + rax]
lea rcx, [rbx - 0x14]
movzx r8d, r9b
movzx edx, al
call fcn.140264900
cmp byte [rdi], 0x45
jne 0x140334c36
movzx eax, word [rbx]
test al, 4
je 0x140334c36
and ax, si
or ax, 0x20
mov word [rbx], ax
movzx eax, byte [rdi + 1]
inc rdi
movzx r9d, byte [rsp + 0x40]
add rbx, 0x38
test al, al
jne 0x140334c10
mov r11, qword [rbp - 0x68]
mov edx, 1
mov rsi, qword [rbp - 0x50]
lea r14, [rsi + 0x24]
nop dword [rax]
movzx ecx, word [r14 - 0x10]
test cl, 1
je 0x140334c85
mov eax, 0x400
and cx, ax
neg cx
sbb eax, eax
and eax, 0xa
mov dword [r14], eax
inc r12d
jmp 0x140334e25
test cl, 0x24
je 0x140334da3
mov r8, qword [r14 - 0x24]
mov rdx, r8
test r8, r8
jns 0x140334c9d
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x140334ce1
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x140334ccf
mov rax, qword [rsp + 0x60]
cmp byte [rax + 0xc3], 4
jb 0x140334ccf
lea eax, [rdx + 8]
mov edx, 1
mov dword [r14], eax
jmp 0x140334e25
mov eax, 1
inc r15
mov dword [r14], eax
mov edx, eax
jmp 0x140334e25
cmp rdx, 0x7fff
ja 0x140334cfe
mov eax, 2
add r15, 2
mov dword [r14], eax
lea edx, [rax - 1]
jmp 0x140334e25
cmp rdx, 0x7fffff
ja 0x140334d1b
mov eax, 3
add r15, 3
mov dword [r14], eax
lea edx, [rax - 2]
jmp 0x140334e25
cmp rdx, 0x7fffffff
ja 0x140334d38
mov eax, 4
add r15, 4
mov dword [r14], eax
lea edx, [rax - 3]
jmp 0x140334e25
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x140334d5b
mov eax, 5
add r15, 6
mov dword [r14], eax
lea edx, [rax - 4]
jmp 0x140334e25
add r15, 8
test cl, 0x20
je 0x140334d93
mov eax, 0xffdf
xorps xmm0, xmm0
and cx, ax
mov eax, 7
cvtsi2sd xmm0, r8
or cx, 8
lea edx, [rax - 6]
movsd qword [r14 - 0x24], xmm0
mov word [r14 - 0x10], cx
mov dword [r14], eax
jmp 0x140334e25
mov eax, 6
mov dword [r14], eax
lea edx, [rax - 5]
jmp 0x140334e25
test cl, 8
je 0x140334db8
inc r12d
mov dword [r14], 7
add r15, 8
jmp 0x140334e25
mov edi, dword [r14 - 0x14]
mov eax, ecx
shr eax, 1
and eax, 1
bt cx, 0xa
lea esi, [rdi + 6]
lea esi, [rax + rsi*2]
jae 0x140334df9
movsxd rax, dword [r14 - 0x24]
lea esi, [rsi + rax*2]
test r15, r15
je 0x140334df6
lea rcx, [r14 - 0x24]
call fcn.14033c990
test eax, eax
jne 0x14033a905
add edi, dword [r14 - 0x24]
lea edx, [rax + 1]
jmp 0x140334df9
add r13, rax
mov eax, edi
mov ecx, edx
add r15, rax
mov eax, esi
shr rax, 7
test rax, rax
je 0x140334e1b
nop dword [rax + rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x140334e10
mov r11, qword [rbp - 0x68]
add r12d, ecx
mov dword [r14], esi
lea rax, [r14 - 0x24]
cmp rax, r11
je 0x140334e37
sub r14, 0x38
jmp 0x140334c60
cmp r12d, 0x7e
jg 0x140334e45
mov r14d, 1
jmp 0x140334e83
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x140334e5c
inc edx
shr rax, 7
test rax, rax
jne 0x140334e51
add r12d, edx
mov r14d, 1
movsxd rax, r12d
mov ecx, r14d
shr rax, 7
test rax, rax
je 0x140334e7f
inc ecx
shr rax, 7
test rax, rax
jne 0x140334e74
cmp edx, ecx
jge 0x140334e86
inc r12d
mov rsi, qword [rbp - 0x48]
movsxd rdi, r12d
movsxd rdx, dword [rsi + 0x20]
lea rbx, [r15 + rdi]
mov r15, qword [rsp + 0x70]
lea rcx, [rbx + r13]
cmp rcx, rdx
jg 0x140334ead
mov rax, qword [rsi + 0x28]
mov qword [rsi + 8], rax
jmp 0x140334ee9
movsxd rax, dword [r15 + 0x88]
cmp rcx, rax
jg 0x14033a5ca
cmp edx, ebx
jge 0x140334edc
xor r8d, r8d
mov edx, ebx
mov rcx, rsi
call fcn.14033cc30
test eax, eax
jne 0x1403347ba
mov r11, qword [rbp - 0x68]
jmp 0x140334ee9
mov rax, qword [rsi + 0x28]
mov qword [rsi + 8], rax
and word [rsi + 0x14], 0x2d
mov dword [rsi + 0x10], ebx
mov word [rsi + 0x14], 0x10
test r13, r13
je 0x140334f03
mov eax, 0x400
mov dword [rsi], r13d
or word [rsi + 0x14], ax
mov rbx, qword [rsi + 8]
lea rsi, [rdi + rbx]
cmp r12d, 0x80
jge 0x140334f1c
mov byte [rbx], r12b
inc rbx
jmp 0x140334f61
cmp rdi, 0x7f
ja 0x140334f2e
and dil, 0x7f
mov eax, r14d
mov byte [rbx], dil
jmp 0x140334f5c
cmp rdi, 0x3fff
ja 0x140334f51
mov rax, rdi
shr rax, 7
or al, 0x80
mov byte [rbx], al
and dil, 0x7f
mov byte [rbx + 1], dil
mov eax, 2
jmp 0x140334f5c
mov rdx, rdi
mov rcx, rbx
call fcn.1402aee30
cdqe
add rbx, rax
mov r14, qword [rbp - 0x50]
lea rdi, [r11 + 0x10]
nop dword [rax]
mov eax, dword [rdi + 0x14]
cmp eax, 7
ja 0x140334fc5
mov byte [rbx], al
inc rbx
test eax, eax
je 0x14033503b
mov rdx, qword [rdi - 0x10]
lea rcx, [0x140000000]
movzx ecx, byte [rax + rcx + 0x4a3a10]
mov r10d, 0xffffffff
mov r9d, ecx
add ecx, r10d
lea r8, [rcx + rsi]
mov byte [r8], dl
je 0x140334fc0
nop dword [rax]
shr rdx, 8
lea r8, [r8 - 1]
mov byte [r8], dl
add ecx, r10d
jne 0x140334fb0
add rsi, r9
jmp 0x14033503b
cmp eax, 0x80
jae 0x140334fdf
mov byte [rbx], al
inc rbx
cmp eax, 0xe
jb 0x14033503b
movsxd rax, dword [rdi]
test eax, eax
jle 0x14033503b
jmp 0x140335026
mov rdx, rax
cmp rax, 0x7f
ja 0x140334ff4
and dl, 0x7f
mov eax, 1
mov byte [rbx], dl
jmp 0x14033501a
cmp rdx, 0x3fff
ja 0x140335012
shr rax, 7
or al, 0x80
mov byte [rbx], al
and dl, 0x7f
mov byte [rbx + 1], dl
mov eax, 2
jmp 0x14033501a
mov rcx, rbx
call fcn.1402aee30
cdqe
add rbx, rax
movsxd rax, dword [rdi]
test eax, eax
je 0x14033503b
mov rdx, qword [rdi - 8]
mov r8, rax
mov rcx, rsi
call fcn.1403c4426
movsxd rax, dword [rdi]
add rsi, rax
lea rax, [rdi - 0x10]
cmp rax, r14
je 0x140336dc9
add rdi, 0x38
jmp 0x140334f70
mov rdi, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
cmp dword [rdi + 0xc], 0
movsxd rcx, dword [rdi + 4]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x30]
je 0x140335079
mov rcx, rdx
call fcn.1402e8700
mov rbx, rax
jmp 0x14033509c
mov qword [rbp - 0x68], r8
mov rcx, r15
lea r8, [rbp - 0x68]
call fcn.1402e61e0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a3bf
mov rbx, qword [rbp - 0x68]
mov rax, rdi
mov ecx, 0x9000
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, qword [rsi + 0x68]
test word [rax + 0x14], cx
je 0x1403350c6
mov rcx, rax
call fcn.1402cb550
mov qword [rax], rbx
jmp 0x140339979
mov word [rax + 0x14], 4
mov qword [rax], rbx
jmp 0x140339979
mov rdi, qword [rsp + 0x48]
mov r10d, dword [rdi + 4]
mov rsi, qword [rdi + 0x10]
mov dword [rbp - 0x80], r10d
test r10d, r10d
jne 0x1403351bc
cmp dword [r15 + 0xe0], r10d
jg 0x14033a3a5
test rsi, rsi
jne 0x140335105
mov ebx, r8d
jmp 0x14033511f
mov rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp byte [rsi + rbx], 0
jne 0x140335110
and ebx, 0x3fffffff
mov r8d, dword [r15 + 0x2f4]
xor edx, edx
add r8d, dword [r15 + 0x2f0]
mov rcx, r15
call fcn.1403407e0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a94f
mov edx, ebx
mov rcx, r15
add rdx, 0x21
call fcn.1402eec50
mov rdi, rax
test rax, rax
je 0x1403351b2
lea r9, [rax + 0x20]
mov rdx, rsi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call fcn.1403c4426
cmp byte [r15 + 0x65], r13b
je 0x140335183
mov byte [r15 + 0x65], r13b
mov byte [r15 + 0x6d], 1
jmp 0x14033518a
inc dword [r15 + 0x2f0]
mov rax, qword [r15 + 0x2e0]
mov qword [rdi + 0x18], rax
mov qword [r15 + 0x2e0], rdi
mov rax, qword [r15 + 0x2f8]
mov qword [rdi + 8], rax
mov rax, qword [r15 + 0x300]
mov qword [rdi + 0x10], rax
mov rsi, qword [rsp + 0x60]
jmp 0x1403354a5
mov r13, qword [r15 + 0x2e0]
mov ebx, r8d
test r13, r13
je 0x1403352bf
lea r11, [0x140000000]
nop word [rax + rax]
mov r8, qword [r13]
mov r9, rsi
sub r9, r8
nop word [rax + rax]
movzx edx, byte [r8]
movzx eax, byte [r9 + r8]
cmp edx, eax
jne 0x140335292
test edx, edx
jne 0x1403352a8
cmp dword [r15 + 0xe0], edx
jle 0x14033521c
cmp r10d, 1
je 0x14033a3cc
cmp qword [r13 + 0x18], 0
jne 0x1403352e6
cmp byte [r15 + 0x6d], 0
je 0x1403352e6
mov eax, 1
mov r12d, eax
cmp r10d, eax
jne 0x1403352ed
mov rsi, qword [rsp + 0x60]
mov edx, eax
mov rcx, rsi
call fcn.140331920
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14033ab65
mov rcx, rsi
mov byte [r15 + 0x65], r12b
call fcn.14033b8a0
cmp eax, 5
je 0x14033a3ec
mov eax, dword [rsi + 0x34]
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14033a3d5
mov byte [r15 + 0x6d], al
lea r14, [r15 + 0x2f0]
jmp 0x1403353fe
movzx ecx, byte [rax + r11 + 0x4a3da0]
movzx eax, byte [rdx + r11 + 0x4a3da0]
cmp eax, ecx
jne 0x1403352b0
inc r8
jmp 0x1403351f0
mov r13, qword [r13 + 0x18]
inc ebx
test r13, r13
jne 0x1403351e0
mov r8, rsi
lea rdx, str.no_such_savepoint:__s
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1403321f0
mov ebx, 1
mov r14, rdi
mov r13d, ebx
jmp 0x14033a314
xor edx, edx
mov r12d, edx
jmp 0x1403352ef
xor edx, edx
lea r14, [r15 + 0x2f0]
mov eax, dword [r14]
sub eax, ebx
dec eax
mov dword [rbp - 0x78], eax
cmp r10d, 2
jne 0x140335361
mov rcx, qword [rsp + 0x70]
mov edi, edx
mov r15d, dword [r15 + 0x2c]
and r15d, 1
cmp dword [rcx + 0x28], 0
jle 0x140335364
mov esi, r15d
mov rbx, rdx
xor esi, 1
mov rcx, qword [rcx + 0x20]
mov r8d, esi
mov edx, 0x204
mov rcx, qword [rcx + rbx + 8]
call fcn.1402e9500
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14033a936
mov rcx, qword [rsp + 0x70]
inc edi
add rbx, 0x20
cmp edi, dword [rcx + 0x28]
jl 0x140335324
mov eax, dword [rbp - 0x78]
xor edx, edx
mov r10d, dword [rbp - 0x80]
jmp 0x140335364
mov r15d, edx
mov rsi, qword [rsp + 0x70]
mov edi, edx
cmp dword [rsi + 0x28], 0
jle 0x1403353b2
mov rbx, rdx
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rsi + 0x20]
mov r8d, eax
mov edx, r10d
mov rcx, qword [rcx + rbx + 8]
call fcn.1402e8760
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14033a929
mov eax, dword [rbp - 0x78]
inc edi
mov r10d, dword [rbp - 0x80]
add rbx, 0x20
cmp edi, dword [rsi + 0x28]
jl 0x140335380
test r15d, r15d
mov r15, rsi
je 0x1403353eb
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x1403353de
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 0x1403353c3
mov rcx, r15
call fcn.140323dc0
or dword [r15 + 0x2c], 1
cmp dword [rsp + 0x50], 0
mov rsi, qword [rsp + 0x60]
jne 0x14033a945
mov ebx, dword [rbp - 0x78]
mov rcx, qword [r15 + 0x2e0]
cmp rcx, r13
je 0x140335435
nop word [rax + rax]
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, r15
mov qword [r15 + 0x2e0], rax
call fcn.1402eeac0
dec dword [r14]
mov rcx, qword [r15 + 0x2e0]
cmp rcx, r13
jne 0x140335410
mov edi, dword [rbp - 0x80]
cmp edi, 1
jne 0x14033545d
mov rax, qword [r13 + 0x18]
mov rdx, r13
mov rcx, r15
mov qword [r15 + 0x2e0], rax
call fcn.1402eeac0
test r12d, r12d
jne 0x14033549b
dec dword [r14]
jmp 0x14033547d
mov rax, qword [r13 + 8]
mov qword [r15 + 0x2f8], rax
mov rax, qword [r13 + 0x10]
mov qword [r15 + 0x300], rax
test r12d, r12d
je 0x14033547d
cmp edi, 2
jne 0x14033549b
mov r8d, ebx
mov edx, edi
mov rcx, r15
call fcn.1403407e0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
jmp 0x1403354a0
mov r13d, dword [rsp + 0x50]
mov r14, qword [rsp + 0x78]
cmp byte [rsi + 0xc5], 3
jne 0x140332c83
mov r13d, 0x65
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x68]
mov rbx, qword [rbp - 0x60]
cmp rbx, r12
jb 0x14033ab72
mov rdx, qword [r15 + 0x210]
test rdx, rdx
je 0x14033ab72
mov eax, dword [r15 + 0x220]
mov rcx, qword [r15 + 0x218]
add r12, rax
call rdx
test eax, eax
je 0x1403354c6
mov ebx, 1
lea eax, [rbx + 0xa]
lea r12, [rbx - 2]
lea r13d, [rbx + 8]
jmp 0x14033a31e
mov rcx, qword [rsp + 0x48]
mov dword [rbp - 0x80], r8d
mov edx, dword [rcx + 8]
test edx, edx
je 0x140335532
mov rax, qword [r15 + 0x30]
movabs r8, 0x200100000
test r8, rax
jne 0x14033a429
movsxd r14, dword [rcx + 4]
shl r14, 5
add r14, qword [r15 + 0x20]
mov rbx, qword [r14 + 8]
test rbx, rbx
je 0x14033563e
lea r8, [rbp - 0x80]
mov rcx, rbx
call fcn.1402e5470
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a448
test byte [rsi + 0xc8], 0x20
je 0x140335647
mov rax, qword [rsp + 0x48]
cmp dword [rax + 8], r13d
je 0x140335647
cmp byte [r15 + 0x65], r13b
je 0x140335596
cmp dword [r15 + 0xdc], 1
jle 0x140335647
mov r8d, dword [rsi + 0x40]
test r8d, r8d
jne 0x1403355b8
inc dword [r15 + 0x2f4]
mov r8d, dword [r15 + 0x2f4]
add r8d, dword [r15 + 0x2f0]
mov dword [rsi + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, r15
call fcn.1403407e0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x140335628
mov edi, dword [rsi + 0x40]
mov rsi, qword [rbx + 8]
cmp byte [rbx + 0x11], al
je 0x1403355ec
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], al
jne 0x1403355ec
mov rcx, rbx
call fcn.140268920
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x140335606
cmp byte [rcx + 0xa], 0
je 0x140335606
mov edx, edi
call fcn.1402cbef0
jmp 0x140335608
xor eax, eax
cmp byte [rbx + 0x11], 0
mov r13d, eax
mov dword [rsp + 0x50], eax
je 0x140335623
sub dword [rbx + 0x14], 1
jne 0x140335623
mov rcx, rbx
call fcn.14034faa0
mov rsi, qword [rsp + 0x60]
mov rax, qword [r15 + 0x2f8]
mov qword [rsi + 0x58], rax
mov rax, qword [r15 + 0x300]
mov qword [rsi + 0x60], rax
test r13d, r13d
jne 0x14033a30a
mov r12, qword [rsp + 0x48]
cmp word [r12 + 2], 0
je 0x140332db4
mov eax, dword [r12 + 0xc]
cmp dword [rbp - 0x80], eax
jne 0x14033a48b
mov rcx, qword [r14 + 0x18]
mov rax, r12
mov eax, dword [rax + 0x10]
cmp dword [rcx + 4], eax
jne 0x14033a48b
jmp 0x14033475f
mov rcx, qword [r15 + 0x20]
lea r8, [rbp - 0x28]
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
mov edx, dword [r12 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1402e6a60
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], ax
je 0x1403356e4
call fcn.1402cb550
movzx r9d, byte [rsp + 0x40]
mov rcx, rax
movsxd rax, dword [rbp - 0x28]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov qword [rcx], rax
jmp 0x140338462
movsxd rax, dword [rbp - 0x28]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov word [rcx + 0x14], 4
mov qword [rcx], rax
jmp 0x140338462
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [r15 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.1402e9610
mov r13d, eax
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 8]
cmp eax, 1
jne 0x1403357d3
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
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 [r15 + 0x2c], 1
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rdi, qword [rcx + 0x10]
test rdi, rdi
je 0x1403357e8
nop dword [rax]
mov rbx, qword [rdi + 0x10]
cmp byte [rbx + 0x3f], 0
jne 0x1403357c9
mov rbx, qword [rbx + 0x48]
test rbx, rbx
je 0x1403357c9
xor r12d, r12d
nop word [rax + rax]
mov rdx, qword [rbx + 0x30]
mov rcx, r15
call fcn.14027c9f0
mov qword [rbx + 0x30], r12
mov rcx, r15
mov rdx, qword [rbx + 0x38]
call fcn.14027c9f0
mov qword [rbx + 0x38], r12
mov rbx, qword [rbx + 8]
test rbx, rbx
jne 0x1403357a0
mov rdi, qword [rdi]
test rdi, rdi
jne 0x140335780
jmp 0x1403357e8
cmp eax, 2
jne 0x1403357e8
mov rax, qword [rsp + 0x48]
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rax + 0xc]
mov byte [rcx + 0x70], al
mov r12, qword [rsp + 0x48]
cmp dword [r12 + 4], 1
jne 0x140335822
mov rcx, qword [r15 + 8]
test rcx, rcx
je 0x14033581b
nop
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 0x140335800
and dword [rsi + 0xc8], 0xfffffffc
test r13d, r13d
jne 0x140333620
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
test rbx, rbx
je 0x140335876
mov eax, dword [rcx + 8]
cmp dword [rbx + 0x44], eax
jne 0x140335876
mov rcx, qword [rbx + 0x30]
call fcn.1402e57f0
jmp 0x14033598b
mov rcx, qword [rsp + 0x48]
mov eax, dword [rsi + 0xc8]
and al, 3
cmp al, 1
je 0x14033a522
movsxd r12, dword [rcx + 0xc]
mov esi, r8d
mov r15d, dword [rcx + 8]
mov rax, r12
mov rcx, qword [rsp + 0x70]
mov r14, r8
shl rax, 5
add rax, qword [rcx + 0x20]
mov r13, qword [rax + 8]
cmp dil, 0x71
jne 0x1403358da
mov rcx, qword [rsp + 0x48]
mov rax, qword [rax + 0x18]
movzx edi, word [rcx + 2]
movzx ecx, byte [rax + 0x70]
and edi, 8
mov rax, qword [rsp + 0x60]
or edi, 4
cmp cl, byte [rax + 0xc3]
jae 0x1403358dd
mov byte [rax + 0xc3], cl
jmp 0x1403358dd
mov edi, r8d
mov rcx, qword [rsp + 0x48]
test byte [rcx + 2], 0x10
je 0x140335901
imul rbx, r15, 0x38
add rbx, qword [rsp + 0x78]
mov rcx, rbx
call fcn.14033cdc0
mov rcx, qword [rsp + 0x48]
mov r15d, dword [rbx]
movzx eax, byte [rcx + 1]
cmp al, 0xf8
jne 0x140335914
mov r14, qword [rcx + 0x10]
movzx esi, word [r14 + 8]
jmp 0x14033591b
cmp al, 0xfd
jne 0x14033591b
mov esi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
mov r8d, esi
mov rsi, qword [rsp + 0x60]
xor r9d, r9d
mov rcx, rsi
call fcn.140262140
mov rbx, rax
test rax, rax
je 0x14033a8fb
mov byte [rax + 1], r12b
mov r9, r14
mov byte [rax + 2], 1
mov r8d, edi
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.1402e6400
mov r15, qword [rsp + 0x70]
mov r13d, eax
mov qword [rbx + 0x38], r14
mov r14, qword [rsp + 0x78]
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x48]
cmp byte [rax + 1], 0xf8
setne al
mov byte [rbx + 4], al
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax + 2]
mov rax, qword [rbx + 0x30]
and cl, 3
mov byte [rax + 3], cl
test r13d, r13d
jne 0x14033a30a
jmp 0x140332c83
mov r13, qword [rsp + 0x48]
xor r9d, r9d
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r13 + 8]
mov edx, dword [r13 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, rsi
movsx r8d, word [rbx + 0x48]
call fcn.140262140
mov r10, rax
test rax, rax
je 0x1403347bf
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.1402e6400
mov r13d, eax
mov dword [rsp + 0x50], eax
jmp 0x140332c83
mov r13, qword [rsp + 0x48]
movsxd rax, dword [r13 + 0xc]
test eax, eax
jle 0x140335a78
imul rcx, rax, 0x38
mov dword [rcx + r14 + 0x10], r8d
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x1404a7307]
mov qword [rcx + r14 + 8], rax
movsxd rdx, dword [r13 + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x140335aca
test byte [rbx + 8], 8
jne 0x140335aca
movsx eax, word [rbx + 0x48]
cmp dword [r13 + 8], eax
jg 0x140335aca
mov qword [rbx + 0x18], r8
mov dword [rbx + 0x20], r8d
xor r8d, r8d
mov edx, dword [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
call fcn.1402e58b0
mov dword [rsp + 0x50], eax
mov r13d, eax
mov dword [rbp - 0x80], eax
test eax, eax
jne 0x14033a30a
xor r8d, r8d
jmp 0x140335bfb
mov r8d, dword [r13 + 8]
xor r9d, r9d
mov rcx, rsi
call fcn.140262140
mov rbx, rax
test rax, rax
je 0x1403347bf
or dword [rax + 8], 1
lea r9, [rax + 0x10]
movzx ecx, word [r13 + 2]
mov r8, r15
or ecx, 5
mov dword [rsp + 0x28], 0x41e
mov dword [rsp + 0x20], ecx
xor edx, edx
mov rcx, qword [r15]
call fcn.1402e7b80
mov r13d, eax
test eax, eax
jne 0x14033a30a
mov rcx, qword [rbx + 0x10]
mov r12d, 1
mov edx, r12d
xor r8d, r8d
call fcn.1402e5470
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x140335bcf
mov rax, qword [rsp + 0x48]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x38], r14
test r14, r14
je 0x140335b9a
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
or r8d, 2
call fcn.1402e6390
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x140335b94
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.1402e6400
mov r13d, eax
mov dword [rsp + 0x50], eax
mov byte [rbx + 4], 0
jmp 0x140335bc5
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.1402e6400
mov r13d, eax
mov dword [rsp + 0x50], eax
mov byte [rbx + 4], r12b
mov r14, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x60]
mov rax, qword [rsp + 0x48]
xor r8d, r8d
mov ecx, r8d
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 r13d, r13d
jne 0x14033a52d
mov byte [rbx + 2], 1
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338465
mov r13, qword [rsp + 0x48]
mov r9b, 1
mov rcx, rsi
mov r8d, dword [r13 + 8]
mov edx, dword [r13 + 4]
call fcn.140262140
test rax, rax
je 0x1403347bf
mov rcx, qword [r13 + 0x10]
mov r8, rax
mov qword [rax + 0x38], rcx
mov rcx, r15
mov edx, dword [r13 + 0xc]
call fcn.14033f160
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
mov edx, 1
test rcx, rcx
jne case.0x14033239e.89
jmp 0x140334174
mov rax, qword [rsp + 0x48]
mov r9b, 3
mov rcx, rsi
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.140262140
test rax, rax
je 0x1403347bf
mov rcx, qword [rsp + 0x48]
mov byte [rax + 2], 1
mov ecx, dword [rcx + 8]
mov dword [rax + 0x24], ecx
lea rcx, [0x1404d4204]
mov byte [rax + 4], 1
mov qword [rax + 0x30], rcx
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x140335d03
mov rcx, rsi
call fcn.14033b730
mov r11, qword [rsp + 0x58]
xor r8d, r8d
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov qword [rax + rcx*8], r8
jmp 0x140338465
mov rax, qword [rsp + 0x48]
mov r12d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov r14, qword [rax + rcx*8]
mov byte [r14 + 2], 0
mov byte [r14 + 3], 0
mov dword [r14 + 0x20], r8d
cmp byte [r14 + 4], 0
je 0x140335eb3
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x78]
movzx r15d, word [rbx + 0x14]
movzx eax, r15b
and al, 0x2e
cmp al, 2
jne 0x140335d81
xor edx, edx
mov rcx, rbx
call fcn.140264970
movzx eax, word [rbx + 0x14]
test al, 0x24
je 0x140335d91
mov rsi, qword [rbx]
xor r8d, r8d
jmp 0x140335dc7
test al, 8
je 0x140335da6
movsd xmm0, qword [rbx]
call fcn.140272850
mov rsi, rax
xor r8d, r8d
jmp 0x140335dc7
test al, 0x12
je 0x140335dc1
cmp qword [rbx + 8], 0
je 0x140335dc1
mov rcx, rbx
call fcn.1402c6460
mov rsi, rax
xor r8d, r8d
jmp 0x140335dc7
xor r8d, r8d
mov esi, r8d
movzx eax, word [rbx + 0x14]
mov word [rbx + 0x14], r15w
test al, 0x24
jne 0x140335e7f
test al, 8
jne 0x140335e5b
test al, 1
jne 0x14033628e
cmp edi, 0x17
jae 0x14033628e
mov rcx, qword [r14 + 0x30]
cmp byte [rcx], 0
jne 0x140335e31
test byte [rcx + 1], 8
je 0x140335e31
mov r15, qword [rsp + 0x70]
mov r13d, r8d
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov dword [rbp - 0x74], r8d
mov dword [rsp + 0x50], r8d
jmp 0x140338465
lea rdx, [rbp - 0x74]
call fcn.140268850
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a300
xor r8d, r8d
cmp dword [rbp - 0x74], 0
jne 0x14033628e
jmp 0x14033609d
movsd xmm1, qword [rbx]
mov rcx, rsi
call fcn.140315e40
test eax, eax
jle 0x140335e75
test dil, 1
jne 0x140335e7f
dec edi
jmp 0x140335e7f
jns 0x140335e7f
test dil, 1
je 0x140335e7f
inc edi
mov rcx, qword [r14 + 0x30]
lea rbx, [r14 + 0x30]
lea r9, [rbp - 0x74]
xor r8d, r8d
mov rdx, rsi
call fcn.1402e8d00
mov r15, qword [rsp + 0x70]
mov r13d, eax
mov dword [rsp + 0x50], eax
mov qword [r14 + 0x50], rsi
test eax, eax
jne 0x14033a305
jmp 0x140335f45
mov rax, qword [r14 + 0x30]
lea rbx, [r14 + 0x30]
mov r13, qword [rsp + 0x48]
lea r8, [rbp - 0x74]
movzx esi, byte [rax + 3]
mov rax, qword [r14 + 0x38]
and sil, 2
mov ecx, dword [r13 + 0x10]
mov qword [rbp + 0x198], rax
setne r12b
mov word [rbp + 0x1b4], cx
lea eax, [rdi - 1]
test al, 1
mov ecx, 0xffffffff
mov eax, edx
lea rdx, [rbp + 0x198]
cmovne eax, ecx
mov byte [rbp + 0x1b6], al
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
mov byte [rbp + 0x1ba], 0
add rcx, qword [rsp + 0x78]
mov qword [rbp + 0x1a0], rcx
mov rcx, qword [rbx]
call fcn.1402e6b50
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a305
test sil, sil
je 0x140335f45
cmp byte [rbp + 0x1ba], al
je 0x140335e49
mov eax, dword [rbp - 0x74]
cmp edi, 0x17
jl 0x140335fff
test eax, eax
js 0x140335f68
jne 0x140335f5c
cmp edi, 0x18
je 0x140335f68
xor r8d, r8d
mov dword [rbp - 0x74], r8d
jmp 0x14033609d
mov rcx, qword [rbx]
xor edi, edi
mov dword [rbp - 0x74], edi
mov word [rcx + 0x46], di
and byte [rcx + 1], 0xf9
cmp byte [rcx], dil
je 0x140335f84
call fcn.140268af0
jmp 0x140335fc5
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 0x140335faa
mov word [rcx + 0x56], r8w
call fcn.140268af0
jmp 0x140335fc5
cmp byte [rdx + 8], dil
je 0x140335fc0
xor r8d, r8d
mov r13d, r8d
mov dword [rsp + 0x50], r8d
jmp 0x14033609d
call fcn.1402c6910
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
je 0x14033609a
cmp eax, 0x65
jne 0x14033a961
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov r11, qword [rsp + 0x58]
mov edx, 1
mov r13d, r8d
mov dword [rsp + 0x50], r8d
mov dword [rbp - 0x74], edx
jmp 0x140334174
test eax, eax
jg 0x140336020
jne 0x14033600a
cmp edi, 0x15
je 0x140336020
mov rax, qword [rbx]
xor r8d, r8d
mov ecx, r8d
cmp byte [rax], cl
setne cl
mov dword [rbp - 0x74], ecx
jmp 0x140335e4c
mov rcx, qword [rbx]
xor r8d, r8d
mov dword [rbp - 0x74], r8d
and byte [rcx + 1], 0xf1
mov word [rcx + 0x46], r8w
cmp byte [rcx], r8b
jne 0x14033605f
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x14033605f
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], r8b
je 0x14033605f
dec dx
mov dword [rsp + 0x50], r8d
mov word [rcx + 0x56], dx
mov r13d, r8d
jmp 0x14033609d
call fcn.140269370
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
je 0x14033609a
cmp eax, 0x65
jne 0x14033a305
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov r11, qword [rsp + 0x58]
mov edx, 1
mov r13d, r8d
mov dword [rsp + 0x50], r8d
mov dword [rbp - 0x74], edx
jmp 0x140334174
xor r8d, r8d
mov r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x78]
test r12d, r12d
je 0x1403365d6
add qword [rsp + 0x48], 0x18
jmp 0x140335bff
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0x1c]
mov rax, qword [rsi + 0x78]
mov rsi, qword [rax + rcx*8]
mov rax, qword [rsi + 0x30]
cmp byte [rax], 0
jne 0x140333453
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsi + 0x38]
mov qword [rbp + 0x230], rax
mov byte [rbp + 0x24e], 0
movzx eax, word [rcx + 0x28]
mov edi, dword [rcx + 4]
mov word [rbp + 0x24c], ax
movsxd rax, dword [rcx + 0x24]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0x238], rcx
nop word [rax + rax]
mov rbx, qword [rsi + 0x30]
mov rcx, rbx
call fcn.1402bc2f0
mov ecx, dword [rbx + 0x40]
lea rax, [rcx - 1]
cmp rax, 0x7ffffffe
ja 0x14033a53b
mov qword [rbp + 0xd8], r15
xor r9d, r9d
mov word [rbp + 0xd4], r9w
mov dword [rbp + 0xe0], 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 0x14033617a
test r8d, r8d
mov edx, r8d
cmovs edx, r9d
mov rax, qword [rbx + 0x38]
mov qword [rbp + 0xc8], rax
cmp ecx, edx
ja 0x14033619d
mov edx, 0x4010
mov dword [rbp + 0xd0], ecx
mov word [rbp + 0xd4], dx
jmp 0x1403361c9
mov r8d, ecx
lea r9, [rbp + 0xc0]
mov rcx, rbx
xor edx, edx
call fcn.14033cac0
mov r13d, eax
test eax, eax
jne 0x14033a305
mov ecx, dword [rbp + 0xd0]
mov rax, qword [rbp + 0xc8]
xor r9d, r9d
lea r8, [rbp + 0x230]
mov rdx, rax
call fcn.14033dfe0
cmp dword [rbp + 0xe0], 0
mov ebx, eax
je 0x1403361f2
lea rcx, [rbp + 0xc0]
call fcn.140353520
xor r8d, r8d
mov dword [rsp + 0x50], r8d
mov r13d, r8d
test ebx, ebx
jle 0x14033620f
mov rax, qword [rsp + 0x48]
cmp word [rax + 2], r8w
je 0x140336280
test ebx, ebx
jns 0x14033628e
test edi, edi
jle 0x14033643c
mov rcx, qword [rsi + 0x30]
dec edi
mov word [rcx + 0x46], r8w
and byte [rcx + 1], 0xf9
cmp byte [rcx], r8b
je 0x140336234
call fcn.140268af0
jmp 0x140336269
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 0x14033625a
mov word [rcx + 0x56], r8w
call fcn.140268af0
jmp 0x140336269
cmp byte [rdx + 8], r13b
jne 0x140336120
call fcn.1402c6910
mov r13d, eax
test eax, eax
je 0x140336120
cmp eax, 0x65
jne 0x14033a305
xor r8d, r8d
add qword [rsp + 0x48], 0x18
mov r13d, r8d
mov dword [rsp + 0x50], r8d
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14033416f
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
movzx ecx, word [rdx + 0xc]
mov eax, dword [rax + 8]
cmp ecx, eax
jge 0x1403362cc
mov word [rdx + 0xc], ax
mov r12, qword [rsp + 0x48]
jmp 0x140338465
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
cmp ecx, eax
jle 0x140338465
mov word [rdx + 0xc], ax
jmp 0x140338465
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je case.0x14033239e.9
cmp byte [rdx + 2], 0
je 0x1403362c2
jmp case.0x14033239e.9
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r12 + 0x10]
jge case.0x14033239e.89
mov rax, qword [rsi + 0x78]
mov r13, qword [rsp + 0x48]
movsxd rcx, dword [r13 + 4]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0xa0], rcx
movzx eax, word [r13 + 0x10]
mov word [rbp + 0xb4], ax
test ax, ax
je 0x14033639a
mov rax, qword [rbx + 0x38]
lea rsi, [rbx + 0x24]
mov qword [rbp + 0x98], rax
lea rdx, [rbp + 0x98]
mov byte [rbp + 0xb6], 0
mov r8, rsi
mov rcx, qword [rbx + 0x30]
call fcn.1402e6b50
mov r13d, eax
mov dword [rsp + 0x50], eax
jmp 0x14033640a
mov eax, 0x400
test word [rcx + 0x14], ax
je 0x1403363b2
call fcn.14033c990
test eax, eax
jne 0x1403347bf
mov rcx, qword [rbx + 0x38]
call fcn.1403316e0
mov rdi, rax
test rax, rax
je 0x1403347bf
mov rdx, qword [rbp + 0xa0]
mov r9, rax
mov rcx, qword [rbx + 0x38]
mov r8, qword [rdx + 8]
mov edx, dword [rdx + 0x10]
call fcn.14033e8d0
mov byte [rdi + 0x1e], 0
lea rsi, [rbx + 0x24]
mov rcx, qword [rbx + 0x30]
mov r8, rsi
mov rdx, rdi
call fcn.1402e6b50
mov rdx, rdi
mov dword [rsp + 0x50], eax
mov rcx, r15
mov r13d, eax
call fcn.1402eeac0
test r13d, r13d
jne 0x14033a305
mov ecx, dword [rsi]
test ecx, ecx
setne al
xor r8d, r8d
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x48]
mov byte [rbx + 3], r13b
mov dword [rbx + 0x20], r8d
movzx eax, byte [rax]
cmp al, 0x1d
jne 0x140336446
test ecx, ecx
je 0x14033628e
mov r12, qword [rsp + 0x48]
jmp 0x14033289a
test ecx, ecx
jne 0x14033628e
cmp al, 0x1b
jne 0x14033648f
movzx edx, word [rbp + 0xb4]
mov rcx, r8
test rdx, rdx
je 0x14033643c
mov rax, qword [rbp + 0xa0]
add rax, 0x14
nop dword [rax]
test byte [rax], 1
jne 0x14033628e
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x140336470
mov r12, qword [rsp + 0x48]
jmp 0x14033289a
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
cmp al, 0x1a
jne 0x14033289f
movzx r9d, byte [rsp + 0x40]
mov rax, r12
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
movzx eax, word [rax + 0x10]
mov word [rbx + 0xc], ax
jmp 0x140338465
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r14
test byte [rcx + 0x14], 0x24
jne case.0x14033239e.31
movups xmm0, xmmword [rcx]
movups xmmword [rbp + 0x1f8], xmm0
movups xmm2, xmmword [rcx + 0x10]
movups xmmword [rbp + 0x208], xmm2
movups xmm0, xmmword [rcx + 0x20]
movq rax, xmm2
movups xmmword [rbp + 0x218], xmm0
shr rax, 0x20
movsd xmm1, qword [rcx + 0x30]
movsd qword [rbp + 0x228], xmm1
test al, 4
jne 0x140336540
test al, 0x28
jne 0x14033652c
test al, 2
je 0x140336540
lea rcx, [rbp + 0x1f8]
call fcn.140264970
mov r11, qword [rsp + 0x58]
jmp 0x140336538
lea rcx, [rbp + 0x1f8]
call fcn.14033bea0
mov edx, 1
xor r8d, r8d
test byte [rbp + 0x20c], 4
je 0x1403341a2
mov rdi, qword [rbp + 0x1f8]
jmp 0x140336567
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r14]
mov rax, qword [rsp + 0x48]
lea r9, [rbp - 0x80]
mov dword [rbp - 0x80], r8d
mov rdx, rdi
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.1402e8d00
mov qword [rbx + 0x50], rdi
xor r8d, r8d
mov byte [rbx + 2], 0
mov r13d, eax
mov dword [rbx + 0x20], r8d
mov dword [rsp + 0x50], eax
mov eax, dword [rbp - 0x80]
mov byte [rbx + 3], r8b
mov dword [rbx + 0x24], eax
test eax, eax
je 0x1403365cd
mov r12, qword [rsp + 0x48]
cmp dword [r12 + 8], r8d
je 0x14033a57f
mov r11, qword [rsp + 0x58]
jmp 0x14033416f
test r13d, r13d
jne 0x14033a30a
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338465
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x140336621
mov rcx, rdx
call fcn.1402cb550
mov r11, qword [rsp + 0x58]
mov rdx, rax
xor r8d, r8d
jmp 0x140336627
mov word [rdx + 0x14], 4
mov rax, qword [rsi + 0x78]
mov r12, rdi
movsxd rcx, dword [rdi + 4]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x18]
mov qword [rdx], rax
mov rax, rdi
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x140338465
mov rdi, qword [rsp + 0x48]
mov rbx, r8
mov qword [rbp - 0x80], rbx
mov dword [rbp - 0x78], r8d
movsxd rax, dword [rdi + 8]
imul r14, rax, 0x38
mov eax, 0x9000
add r14, qword [rsi + 0x68]
test word [r14 + 0x14], ax
je 0x140336698
mov rcx, r14
call fcn.1402cb550
mov r14, rax
xor r8d, r8d
jmp 0x14033669f
mov word [r14 + 0x14], 4
movsxd rcx, dword [rdi + 4]
mov rax, qword [rsi + 0x78]
mov rsi, qword [rax + rcx*8]
test byte [rsi + 8], 2
jne 0x140336719
mov rcx, qword [rsi + 0x30]
cmp byte [rcx], 0
jne 0x1403366f1
test byte [rcx + 1], 8
je 0x1403366f1
mov r13d, r8d
mov dword [rsp + 0x50], r8d
mov rbx, qword [rsi + 0x30]
mov rcx, rbx
call fcn.1402bc2f0
mov rbx, qword [rbx + 0x30]
movabs r12, 0x7fffffffffffffff
mov qword [rbp - 0x80], rbx
cmp rbx, r12
jl 0x140336766
or dword [rsi + 8], 2
jmp 0x140336723
lea rdx, [rbp - 0x78]
call fcn.140268850
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a94f
cmp dword [rbp - 0x78], eax
je 0x1403366c8
mov eax, 1
mov ebx, eax
mov qword [rbp - 0x80], rax
movabs r12, 0x7fffffffffffffff
movsxd rdx, dword [rdi + 0xc]
test edx, edx
je 0x14033679f
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x108]
test rcx, rcx
je 0x14033676f
mov rax, qword [rcx + 8]
test rax, rax
je 0x14033675c
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140336750
imul rdi, rdx, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x140336778
inc rbx
mov qword [rbp - 0x80], rbx
jmp 0x140336723
imul rdi, rdx, 0x38
add rdi, qword [rsp + 0x78]
mov rcx, rdi
call fcn.14033cdc0
mov rax, qword [rdi]
cmp rax, r12
je 0x140336804
test byte [rsi + 8], 2
jne 0x140336804
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp - 0x80], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x14033680f
xor eax, eax
mov edi, eax
nop dword [rax]
lea rdx, [rbp - 0x80]
mov ecx, 8
call fcn.14025aad0
mov rbx, qword [rbp - 0x80]
lea r9, [rbp - 0x78]
mov rcx, qword [rsi + 0x30]
movabs rax, 0x3fffffffffffffff
and rbx, rax
xor r8d, r8d
inc rbx
mov rdx, rbx
mov qword [rbp - 0x80], rbx
call fcn.1402e8d00
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a305
cmp dword [rbp - 0x78], eax
jne 0x14033680f
inc edi
cmp edi, 0x64
jl 0x1403367b0
mov r13d, 0xd
jmp 0x14033a305
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov byte [rsi + 3], 0
mov dword [rsi + 0x20], r8d
mov qword [r14], rbx
mov r14, qword [rsp + 0x78]
jmp 0x14033289a
mov r13, qword [rsp + 0x48]
movsxd rax, dword [r13 + 8]
movsxd rcx, dword [r13 + 4]
imul rdx, rax, 0x38
mov rax, qword [rsi + 0x78]
add rdx, r14
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
mov rax, qword [rcx + r14]
mov qword [rbp + 0x138], rax
cmp byte [r13 + 1], 0xfb
jne 0x140336883
cmp qword [r15 + 0x140], 0
je 0x140336883
movsx rcx, byte [rbx + 1]
mov rax, qword [r15 + 0x20]
mov rdi, qword [r13 + 0x10]
shl rcx, 5
mov rsi, qword [rcx + rax]
jmp 0x140336889
mov rdi, r8
mov rsi, r8
test byte [r13 + 2], 1
je 0x1403368ab
mov rax, qword [rsp + 0x60]
inc qword [rax + 0x38]
test byte [r13 + 2], 0x20
je 0x1403368ab
mov rax, qword [rbp + 0x138]
mov qword [r15 + 0x38], rax
mov rax, qword [rdx + 8]
mov qword [rbp + 0x140], rax
mov eax, dword [rdx + 0x10]
mov dword [rbp + 0x154], eax
test byte [r13 + 2], 0x10
je 0x1403368cc
mov r9d, dword [rbx + 0x24]
jmp 0x1403368cf
mov r9d, r8d
mov eax, 0x400
test word [rdx + 0x14], ax
je 0x1403368e4
mov eax, dword [rdx]
mov dword [rbp + 0x158], eax
jmp 0x1403368eb
mov dword [rbp + 0x158], r8d
mov qword [rbp + 0x130], r8
lea rdx, [rbp + 0x130]
movzx r8d, word [r13 + 2]
mov rcx, qword [rbx + 0x30]
and r8d, 0x8a
call fcn.1402e7010
xor r8d, r8d
mov byte [rbx + 3], 0
mov dword [rsp + 0x50], eax
mov r13d, eax
mov dword [rbx + 0x20], r8d
test eax, eax
jne 0x14033a305
test rdi, rdi
je 0x14033643c
mov rax, qword [rsp + 0x48]
mov edx, 0x12
mov r9, qword [rdi]
mov r8, rsi
mov rcx, qword [r15 + 0x138]
test byte [rax + 2], 4
mov eax, 0x17
cmovne edx, eax
mov rax, qword [rbp + 0x138]
mov qword [rsp + 0x20], rax
call qword [r15 + 0x140]
mov rsi, qword [rsp + 0x60]
jmp 0x140332c83
mov r13, qword [rsp + 0x48]
mov rcx, qword [rsi + 0x78]
movsxd rax, dword [r13 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r13 + 8]
mov rdx, qword [rcx + rax*8]
movsxd rax, dword [r13 + 0xc]
test eax, eax
je 0x14033699a
imul rcx, rax, 0x38
mov r8, qword [rcx + r14]
mov rdx, qword [rdx + 0x30]
mov rcx, qword [r9 + 0x30]
call fcn.1402e8f80
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
jmp 0x140332c83
mov r13, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
lea rsi, [r15 + 0x140]
cmp byte [r13 + 1], 0xfb
movsxd rcx, dword [r13 + 4]
mov r12d, dword [r13 + 8]
mov rdi, qword [rax + rcx*8]
jne 0x140336a1c
cmp qword [rsi], 0
je 0x140336a1c
movsx rcx, byte [rdi + 1]
mov rax, qword [r15 + 0x20]
mov r14, qword [r13 + 0x10]
shl rcx, 5
test byte [r13 + 2], 2
mov r15, qword [rcx + rax]
je 0x140336a22
cmp byte [rdi + 4], 0
je 0x140336a22
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.1402bc2f0
mov rax, qword [rbx + 0x30]
mov qword [rdi + 0x50], rax
jmp 0x140336a22
mov r15, r8
mov r14, r8
movzx edx, byte [r13 + 2]
mov rcx, qword [rdi + 0x30]
call fcn.1402e6490
xor r8d, r8d
mov dword [rsp + 0x50], eax
mov dword [rdi + 0x20], r8d
mov r13d, eax
mov dword [rdi + 0x24], r8d
test eax, eax
jne 0x14033a300
test r12b, 1
je 0x140336bb1
mov rax, qword [rsp + 0x60]
inc qword [rax + 0x38]
mov r10, qword [rsi]
test r10, r10
je 0x140336da2
test r14, r14
je 0x140336da2
test byte [r14 + 0x30], 0x80
jne 0x140336da2
mov rax, qword [rdi + 0x50]
lea edx, [r13 + 9]
mov r9, qword [r14]
mov r8, r15
mov r15, qword [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov rcx, qword [r15 + 0x138]
call r10
jmp 0x140334755
mov rax, qword [rsi + 0x38]
mov qword [r15 + 0x78], rax
add qword [r15 + 0x80], rax
mov qword [rsi + 0x38], r8
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rdi, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [rdi + 4]
mov ebx, dword [rdi + 0x10]
mov rdx, qword [rax + rcx*8]
movsxd rax, dword [rdi + 0xc]
imul r15, rax, 0x38
mov rdi, qword [rdx + 0x30]
mov rsi, qword [rdx + 0x38]
add r15, r14
mov r14, qword [rdi + 0x30]
test r14, r14
jne 0x140336b10
mov rcx, rsi
call fcn.1403316e0
mov qword [rdi + 0x30], rax
mov r14, rax
test rax, rax
je 0x14033a5bc
mov word [rax + 0x1c], bx
cmp byte [rdi + 0x58], 0
je 0x140336b4c
cmp byte [rdi + 0x59], 0
je 0x140336b2a
mov rax, qword [rdi + 0x10]
mov r8, qword [rax + 0x28]
lea rdx, [rax + 0x14]
jmp 0x140336b54
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 0x140336b54
mov rdx, qword [rdi + 0x38]
lea r8, [rdx + 0x10]
mov edx, dword [rdx]
mov r9, r14
mov rcx, rsi
call fcn.14033e8d0
xor r8d, r8d
mov ecx, r8d
test ebx, ebx
jle 0x140336b86
mov rax, qword [r14 + 8]
add rax, 0x14
test byte [rax], 1
jne 0x140336286
inc ecx
add rax, 0x38
cmp ecx, ebx
jl 0x140336b73
mov rdx, qword [r15 + 8]
xor r9d, r9d
mov ecx, dword [r15 + 0x10]
mov r8, r14
call fcn.14033dfe0
xor r8d, r8d
mov dword [rsp + 0x50], r8d
mov r13d, r8d
test eax, eax
jne 0x14033628e
mov dword [rsp + 0x50], r8d
mov r15, qword [rsp + 0x70]
mov r12, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
jmp 0x14033289a
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rbx, rax, 0x38
mov rax, qword [rsi + 0x78]
add rbx, r14
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
cmp byte [rax + 0x58], 0
je 0x140336c21
cmp byte [rax + 0x59], 0
je 0x140336bff
mov rax, qword [rax + 0x10]
mov rsi, qword [rax + 0x28]
add rax, 0x14
jmp 0x140336c29
mov rdx, qword [rax + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov rsi, qword [rax + 0x28]
add rax, 0x14
jmp 0x140336c29
mov rax, qword [rax + 0x38]
lea rsi, [rax + 0x10]
movsxd rdi, dword [rax]
cmp dword [rbx + 0x20], edi
jge 0x140336c4d
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.14033cc30
test eax, eax
je 0x140336c5a
mov r13d, 7
jmp 0x14033a305
mov rax, qword [rbx + 0x28]
mov qword [rbx + 8], rax
and word [rbx + 0x14], 0x2d
mov dword [rbx + 0x10], edi
mov eax, 0xf250
and word [rbx + 0x14], ax
mov r8, rdi
or word [rbx + 0x14], 0x10
mov rdx, rsi
mov rcx, qword [rbx + 8]
call fcn.1403c4426
mov rax, qword [rsp + 0x48]
xor r8d, r8d
mov rsi, qword [rsp + 0x60]
mov r13d, r8d
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
movsxd rcx, dword [rax + 0xc]
mov rax, qword [rsi + 0x78]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov dword [rsp + 0x50], r8d
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x20], r8d
jmp 0x140338465
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x140336ce2
mov rcx, rbx
call fcn.1402cb550
mov rbx, rax
jmp 0x140336ce8
mov word [rbx + 0x14], 4
movsxd rcx, dword [rdi + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + 0x30]
mov rcx, rdi
call fcn.1402bc2f0
mov edx, dword [rdi + 0x40]
cmp edx, dword [r15 + 0x88]
ja 0x14033a5cf
mov r8, rbx
mov rcx, rdi
call fcn.14033cbd0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
mov r12, qword [rsp + 0x48]
cmp dword [r12 + 0xc], eax
jne 0x140336ddd
movzx eax, word [rbx + 0x14]
bt ax, 0xe
jae 0x140336ddd
test al, 0x12
je 0x140336d84
bt ax, 0xa
jae 0x140336d64
mov rcx, rbx
call fcn.14033c990
test eax, eax
jne 0x1403347bf
cmp dword [rbx + 0x20], 0
je 0x140336d74
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x140336d84
mov rcx, rbx
call fcn.1403534c0
test eax, eax
jne 0x1403347bf
movzx r9d, byte [rsp + 0x40]
mov eax, 0xbfff
and word [rbx + 0x14], ax
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov r15, qword [rsp + 0x70]
mov rsi, rax
mov r12, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338465
mov r13d, dword [rsp + 0x50]
mov rsi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x78]
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
xor r8d, r8d
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338465
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [rsi + 0x68]
test word [rdi + 0x14], ax
je 0x140336e2a
mov rcx, rdi
call fcn.1402cb550
mov r11, qword [rsp + 0x58]
xor r8d, r8d
mov rdi, rax
lea edx, [r8 + 1]
jmp 0x140336e30
mov word [rdi + 0x14], 4
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x140336e68
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov word [rdi + 0x14], dx
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
cmp byte [rbx + 3], 0
je 0x140336e7e
mov rax, qword [rbx + 0x50]
mov qword [rbp - 0x20], rax
mov qword [rdi], rax
jmp 0x140332c83
cmp byte [rbx], 2
mov rcx, qword [rbx + 0x30]
jne 0x140336ebb
mov rbx, qword [rcx]
lea rdx, [rbp - 0x20]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, rsi
mov r13d, eax
mov dword [rsp + 0x50], eax
call fcn.140340480
test r13d, r13d
jne 0x14033a30a
mov rax, qword [rbp - 0x20]
mov qword [rdi], rax
jmp 0x140332c83
cmp byte [rcx], 0
je 0x140336edc
mov rcx, rbx
call fcn.14033bc30
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
xor r8d, r8d
jmp 0x140336ee4
mov r13d, r8d
mov dword [rsp + 0x50], r8d
cmp byte [rbx + 2], 0
je 0x140336f15
mov edx, 1
mov word [rdi + 0x14], dx
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rbx, qword [rbx + 0x30]
mov rcx, rbx
call fcn.1402bc2f0
mov rax, qword [rbx + 0x30]
mov qword [rbp - 0x20], rax
mov qword [rdi], rax
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rax, qword [rax + rdx*8]
test rax, rax
jne 0x140336f79
mov r9b, 3
lea r8d, [rax + 1]
mov rcx, rsi
call fcn.140262140
test rax, rax
je 0x1403347bf
xor r8d, r8d
lea rcx, [0x1404d4204]
mov dword [rax + 0x24], r8d
mov byte [rax + 4], 1
or dword [rax + 8], 8
mov qword [rax + 0x30], rcx
mov byte [rax + 2], 1
mov dword [rax + 0x20], r8d
cmp byte [rax], 0
jne 0x1403365d6
mov rcx, qword [rax + 0x30]
call fcn.1402e57f0
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov eax, r8d
mov dword [rbp - 0x80], eax
mov rcx, qword [rbx + 0x30]
cmp dil, 0x89
jne 0x140336fd9
mov dword [rbx + 0x24], 0xffffffff
cmp byte [rcx], 0
jne 0x140336ff9
mov r12, qword [rsp + 0x48]
jmp 0x140332b39
mov edx, 1
jmp 0x140332b39
cmp byte [rcx], 0
jne 0x140336ff9
test byte [rcx + 1], 8
je 0x140336ff9
mov byte [rbx + 2], al
mov r13d, r8d
mov byte [rbx + 3], 0
mov dword [rbx + 0x20], r8d
mov dword [rsp + 0x50], r8d
jmp 0x14033702c
lea rdx, [rbp - 0x80]
call fcn.140268850
mov r13d, eax
mov dword [rsp + 0x50], eax
mov eax, dword [rbp - 0x80]
xor r8d, r8d
mov byte [rbx + 2], al
mov byte [rbx + 3], 0
mov dword [rbx + 0x20], r8d
test r13d, r13d
jne 0x14033a30a
mov r11, qword [rsp + 0x58]
lea edx, [r13 + 1]
mov r12, qword [rsp + 0x48]
cmp dword [r12 + 8], 0
jle 0x14033289f
test eax, eax
jne 0x14033720c
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x30]
mov rcx, rbx
call fcn.1402c6ba0
mov r13d, eax
test eax, eax
jne 0x140337092
xor eax, eax
mov rcx, rbx
mov edi, eax
call fcn.1402c6910
mov r13d, eax
jmp 0x1403370bc
cmp eax, 0x10
jne 0x1403370b9
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov r11, qword [rsp + 0x58]
mov edx, 1
mov dword [rbp - 0x58], edx
mov r13d, r8d
mov dword [rsp + 0x50], r8d
jmp 0x140334174
mov edi, dword [rbp - 0x58]
mov dword [rbp - 0x58], edi
test r13d, r13d
jne 0x14033a30a
mov dword [rsp + 0x50], r13d
test edi, edi
jne 0x140333f4c
mov rcx, rbx
call fcn.1402e8700
test rax, rax
js 0x140337113
mov rcx, rax
call fcn.1403177c0
mov r12, qword [rsp + 0x48]
movsx ecx, ax
cmp ecx, dword [r12 + 0xc]
jge 0x140337118
mov r11, qword [rsp + 0x58]
mov edx, 1
mov dword [rbp - 0x58], edx
xor r8d, r8d
mov dword [rsp + 0x50], r13d
jmp 0x140334174
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov dword [rbp - 0x58], edi
mov dword [rsp + 0x50], r13d
jmp 0x140338462
inc dword [rsi + 0xdc]
mov rax, qword [rsp + 0x48]
mov edi, edx
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi], 1
mov rbx, qword [rsi + 0x30]
jne 0x1403371b7
cmp byte [rbx + 0x58], 0
mov dword [rsp + 0x50], r8d
jne 0x140337189
cmp qword [rbx + 0x38], 0
lea rdx, [rbx + 0x38]
je 0x140337182
lea rcx, [rbx + 0x60]
mov edi, r8d
call fcn.140355db0
mov dword [rsp + 0x50], eax
xor r8d, r8d
jmp 0x1403371e2
mov edi, 1
jmp 0x1403371e2
mov rcx, rbx
call fcn.140354de0
mov edx, eax
mov rcx, rbx
call fcn.140354f50
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14033717d
mov rcx, rbx
call fcn.140355ae0
xor r8d, r8d
mov dword [rsp + 0x50], eax
mov edi, r8d
jmp 0x1403371e2
mov rcx, rbx
call fcn.1402c6ba0
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x140337216
xor eax, eax
mov rcx, rbx
mov edi, eax
call fcn.1402c6910
mov dword [rsp + 0x50], eax
xor r8d, r8d
mov byte [rsi + 3], 0
mov dword [rsi + 0x20], r8d
mov r13d, dword [rsp + 0x50]
test r13d, r13d
jne 0x14033a305
mov r12, qword [rsp + 0x48]
mov byte [rsi + 2], dil
cmp dword [r12 + 8], r13d
jle 0x14033289a
test edi, edi
je 0x14033289a
mov r11, qword [rsp + 0x58]
jmp 0x14033416f
cmp eax, 0x10
jne 0x1403371d7
xor r8d, r8d
lea edi, [rax - 0xf]
mov dword [rsp + 0x50], r8d
jmp 0x1403371da
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rsi, qword [rax + rcx*8]
mov rdi, qword [rsi + 0x30]
cmp byte [rdi + 0x58], 0
je 0x1403372b3
cmp byte [rdi + 0x59], 0
je 0x140337280
mov rcx, qword [rdi + 0x10]
call fcn.140354070
xor r8d, r8d
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x1403372f9
mov rax, qword [rdi + 0x10]
cmp qword [rax + 0x18], r8
jne 0x1403372f9
mov ecx, 0x65
mov dword [rsp + 0x50], ecx
mov r13d, ecx
jmp 0x1403373ce
mov rcx, qword [rdi + 0x18]
lea rdx, [rbp - 0x80]
mov dword [rbp - 0x80], r8d
call fcn.140353a20
xor r8d, r8d
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x1403372f9
cmp dword [rbp - 0x80], r8d
je 0x1403372f9
mov ecx, 0x65
mov dword [rsp + 0x50], ecx
mov r13d, ecx
jmp 0x1403373ce
mov rdx, qword [rdi + 0x38]
mov rax, qword [rdx + 8]
mov qword [rdi + 0x38], rax
mov qword [rdx + 8], r8
cmp qword [rdi + 0x40], 0
jne 0x1403372e7
nop word [rax + rax]
mov rbx, qword [rdx + 8]
mov rcx, r15
call fcn.1402eeac0
mov rdx, rbx
test rbx, rbx
jne 0x1403372d0
xor r8d, r8d
cmp qword [rdi + 0x38], 0
mov eax, 0x65
cmovne eax, r8d
mov dword [rsp + 0x50], eax
mov r13d, dword [rsp + 0x50]
jmp 0x1403373ce
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsi + 0x30]
and byte [rcx + 1], 0xf1
mov word [rcx + 0x46], r8w
cmp byte [rcx], 0
jne 0x140337354
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x140337354
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], 0
je 0x140337354
dec dx
mov dword [rsp + 0x50], r8d
mov word [rcx + 0x56], dx
mov r13d, r8d
mov dword [rsi + 0x20], r8d
jmp 0x1403373d7
call fcn.140269370
jmp 0x1403373c4
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsi + 0x30]
mov word [rcx + 0x46], r8w
and byte [rcx + 1], 0xf9
cmp byte [rcx], 0
je 0x140337385
call fcn.140268af0
jmp 0x1403373c4
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 0x1403373ab
mov word [rcx + 0x56], r8w
call fcn.140268af0
jmp 0x1403373c4
cmp byte [rdx + 8], 0
je 0x1403373bf
xor eax, eax
mov r13d, eax
mov dword [rsp + 0x50], eax
mov dword [rsi + 0x20], eax
jmp 0x1403373d7
call fcn.1402c6910
xor r8d, r8d
mov dword [rsp + 0x50], eax
mov r13d, eax
mov dword [rsi + 0x20], r8d
test r13d, r13d
jne 0x1403373f5
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
mov byte [rsi + 2], 0
movzx eax, word [rax + 2]
inc dword [rcx + rax*4 + 0xd4]
jmp case.0x14033239e.9
cmp r13d, 0x65
jne 0x14033a305
mov r13d, r8d
mov dword [rsp + 0x50], r8d
mov byte [rsi + 2], 1
jmp 0x140339979
mov r13, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r13 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
add rbx, r14
test byte [r13 + 2], 1
je 0x140337437
inc qword [rsi + 0x38]
mov eax, 0x400
test word [rbx + 0x14], ax
je 0x14033745a
mov rcx, rbx
call fcn.14033c990
mov r13d, eax
test eax, eax
jne 0x14033a30a
mov r13, qword [rsp + 0x48]
movsxd rax, dword [rbx + 0x10]
mov qword [rbp + 0x2b0], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x2a8], rax
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0x2c0], rcx
movzx eax, word [r13 + 0x10]
mov word [rbp + 0x2c8], ax
movzx r8d, word [r13 + 2]
test r8b, 0x10
je 0x14033749f
mov r9d, dword [rdi + 0x24]
jmp 0x1403374a4
xor eax, eax
mov r9d, eax
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x2a8]
and r8d, 0x8a
call fcn.1402e7010
xor r8d, r8d
mov dword [rsp + 0x50], eax
mov dword [rdi + 0x20], r8d
mov r13d, eax
test eax, eax
jne 0x14033a30a
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338465
mov r13, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r13 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r14
test word [rbx + 0x14], ax
je 0x140337525
mov rcx, rbx
call fcn.14033c990
mov r13d, eax
test eax, eax
jne 0x14033a30a
mov rdx, rbx
mov rcx, rdi
call fcn.14033f5e0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
jmp 0x140332c83
mov rax, qword [rsi + 0x78]
lea r8, [rbp - 0x24]
mov r13, qword [rsp + 0x48]
lea rdx, [rbp + 0x280]
movsxd rcx, dword [r13 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
mov rdi, qword [rbx + 0x30]
mov qword [rbp + 0x280], rax
movzx eax, word [r13 + 0xc]
mov word [rbp + 0x29c], ax
mov byte [rbp + 0x29e], 0
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0x288], rcx
mov rcx, rdi
call fcn.1402e6b50
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
cmp dword [rbp - 0x24], eax
jne 0x1403375ee
mov dl, 4
mov rcx, rdi
call fcn.1402e6490
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
mov r12, qword [rsp + 0x48]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov dword [rbx + 0x20], r8d
mov dword [rbx + 0x24], r8d
jmp 0x140338465
mov r12, qword [rsp + 0x48]
cmp word [r12 + 2], 0
je 0x14033760f
mov eax, dword [r15 + 0x30]
and eax, 0x10000001
cmp rax, 1
jne 0x14033a5e9
movzx r9d, byte [rsp + 0x40]
xor r8d, r8d
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov dword [rbx + 0x20], r8d
mov dword [rbx + 0x24], r8d
jmp 0x140338465
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x14033766d
mov rcx, rbx
call fcn.14033bc30
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
mov r11, qword [rsp + 0x58]
lea edx, [rax + 1]
xor r8d, r8d
jmp 0x140337675
mov r13d, r8d
mov dword [rsp + 0x50], r8d
cmp byte [rbx + 2], 0
jne 0x140337737
mov rdx, qword [rbx + 0x30]
mov rcx, r15
mov qword [rbp - 0x68], r8
lea r8, [rbp - 0x68]
call fcn.14033bc90
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x8d
jne 0x1403376fa
movsxd rcx, dword [rax + 0xc]
xor r8d, r8d
mov rax, qword [rsi + 0x78]
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp - 0x68]
mov r11, qword [rsp + 0x58]
mov byte [rdx + 2], r13b
mov qword [rdx + 0x50], rax
mov rax, qword [rsp + 0x48]
mov byte [rdx + 3], 1
mov dword [rdx + 0x20], r8d
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x28], rbx
jmp 0x140338465
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], ax
je 0x140337725
call fcn.1402cb550
mov rcx, rax
mov rax, qword [rbp - 0x68]
mov qword [rcx], rax
jmp 0x140332c83
mov rax, qword [rbp - 0x68]
mov word [rcx + 0x14], 4
mov qword [rcx], rax
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r14
test word [rcx + 0x14], ax
je 0x14033775c
call fcn.140353570
jmp 0x140332c83
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov word [rcx + 0x14], dx
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x1403328d9
call fcn.14033b5c0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
jmp 0x140332c83
mov r13, qword [rsp + 0x48]
cmp dil, 0x2a
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r13 + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x38]
mov rbx, qword [rdx + 0x30]
mov qword [rbp + 0x258], rax
movzx eax, word [r13 + 0x10]
mov word [rbp + 0x274], ax
sbb al, al
mov byte [rbp + 0x276], al
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0x260], rcx
mov rcx, rbx
call fcn.1402bc2f0
mov r10d, dword [rbx + 0x40]
lea eax, [r10 - 1]
cmp eax, 0x7ffffffe
ja 0x14033a624
mov qword [rbp + 0x110], r15
xor edi, edi
mov word [rbp + 0x10c], di
mov dword [rbp + 0x118], edi
mov rax, qword [rbx + 0x88]
movzx ecx, word [rbx + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rbx + 0x38]
cmp ecx, edx
jle 0x140337848
test edx, edx
mov ecx, edx
cmovs ecx, edi
mov rdx, qword [rbx + 0x38]
mov qword [rbp + 0x100], rdx
cmp r10d, ecx
ja 0x140337874
mov eax, 0x4010
mov dword [rbp + 0x108], r10d
mov word [rbp + 0x10c], ax
mov r13d, edi
mov dword [rsp + 0x50], edi
jmp 0x1403378a5
lea r9, [rbp + 0xf8]
mov r8d, r10d
xor edx, edx
mov rcx, rbx
call fcn.14033cac0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033370b
mov r10d, dword [rbp + 0x108]
mov rdx, qword [rbp + 0x100]
xor r9d, r9d
lea r8, [rbp + 0x258]
mov ecx, r10d
call fcn.14033dfe0
mov ebx, eax
cmp dword [rbp + 0x118], edi
je 0x1403378cd
lea rcx, [rbp + 0xf8]
call fcn.140353520
mov r12, qword [rsp + 0x48]
test byte [r12], 1
jne 0x1403378dd
neg ebx
jmp 0x1403378df
inc ebx
test ebx, ebx
jg 0x140333f51
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov r13, qword [rsp + 0x48]
movsxd rax, dword [r13 + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [rsi + 0x68]
test word [rdi + 0x14], ax
je 0x14033792b
mov rcx, rdi
call fcn.1402cb550
mov rdi, rax
xor r8d, r8d
mov edx, 1
mov word [rdi + 0x14], dx
mov eax, dword [r15 + 0xe8]
inc eax
cmp dword [r15 + 0xdc], eax
jg 0x14033a636
mov r12, qword [rsp + 0x70]
movsxd r15, dword [r13 + 0xc]
mov esi, dword [r13 + 4]
mov r14, r15
shl r14, 5
mov rax, qword [r12 + 0x20]
mov dword [rbp - 0x80], r8d
mov rbx, qword [rax + r14 + 8]
cmp byte [rbx + 0x11], 0
je 0x14033797e
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x14033797e
mov rcx, rbx
call fcn.140268920
lea r8, [rbp - 0x80]
mov edx, esi
mov rcx, rbx
call fcn.140268080
cmp byte [rbx + 0x11], 0
mov r13d, eax
mov dword [rsp + 0x50], eax
je 0x1403379a7
sub dword [rbx + 0x14], 1
jne 0x1403379a7
mov rcx, rbx
call fcn.14034faa0
movsxd r8, dword [rbp - 0x80]
mov word [rdi + 0x14], 4
mov qword [rdi], r8
test r13d, r13d
jne 0x14033a921
test r8d, r8d
je 0x140337ed8
mov rax, qword [rsp + 0x48]
mov r9, qword [r12 + 0x20]
mov edx, dword [rax + 4]
mov rax, qword [r14 + r9 + 0x18]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1403379f6
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x28], r8d
jne 0x1403379ee
mov dword [rax + 0x28], edx
mov rcx, qword [rcx]
test rcx, rcx
jne 0x1403379e1
mov rax, qword [r14 + r9 + 0x18]
mov rcx, qword [rax + 0x28]
test rcx, rcx
je 0x140337a19
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x58], r8d
jne 0x140337a11
mov dword [rax + 0x58], edx
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140337a04
lea eax, [r15 + 1]
mov r15, r12
mov byte [rbp - 0x70], al
jmp 0x140334755
mov r13, qword [rsp + 0x48]
mov qword [rbp - 0x18], r8
lea r8, [rbp - 0x18]
mov rcx, qword [r15 + 0x20]
movsxd rax, dword [r13 + 8]
mov edx, dword [r13 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1402e58b0
mov r12, qword [rsp + 0x48]
mov r13d, eax
mov dword [rsp + 0x50], eax
cmp dword [r12 + 0xc], 0
je 0x140337a82
mov rax, qword [rbp - 0x18]
add qword [rsi + 0x38], rax
mov rax, r12
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x140337a82
imul rcx, rax, 0x38
mov rax, qword [rbp - 0x18]
add qword [rcx + r14], rax
test r13d, r13d
jne 0x14033a30a
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x140337ac7
mov rdx, qword [rcx + 0x30]
mov rcx, r15
call fcn.14033f350
jmp 0x140332c83
mov rcx, qword [rcx + 0x30]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.1402e58b0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
jmp 0x140332c83
mov r13, qword [rsp + 0x48]
movsxd rax, dword [r13 + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [rsi + 0x68]
test word [rdi + 0x14], ax
je 0x140337b1a
mov rcx, rdi
call fcn.1402cb550
mov rdi, rax
xor r8d, r8d
jmp 0x140337b20
mov word [rdi + 0x14], 4
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x20]
mov esi, dword [r13 + 0xc]
shl rcx, 5
mov dword [rbp - 0x80], r8d
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x140337b50
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x140337b50
mov rcx, rbx
call fcn.140268920
mov r8d, esi
lea rdx, [rbp - 0x80]
mov rcx, rbx
call fcn.140267b90
cmp byte [rbx + 0x11], 0
mov r13d, eax
mov dword [rsp + 0x50], eax
je 0x140337b7a
sub dword [rbx + 0x14], 1
jne 0x140337b7a
mov rcx, rbx
call fcn.14034faa0
mov rsi, qword [rsp + 0x60]
test r13d, r13d
jne 0x14033a30a
mov eax, dword [rbp - 0x80]
mov qword [rdi], rax
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
xor r9d, r9d
inc byte [r15 + 0x70]
mov rcx, r15
mov qword [rsp + 0x20], r8
xor r8d, r8d
mov rdx, qword [rax + 0x10]
call fcn.140258120
dec byte [r15 + 0x70]
mov r13d, eax
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14033a30a
jmp 0x140332c83
mov r13, qword [rsp + 0x48]
cmp qword [r13 + 0x10], 0
movsxd rbx, dword [r13 + 4]
jne 0x140337c25
mov rcx, qword [r15 + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.1403258f0
and dword [r15 + 0x2c], 0xffffffef
lea r8, [rsi + 0xa8]
movzx r9d, word [r13 + 2]
mov edx, ebx
mov rcx, r15
call fcn.1403140a0
or dword [r15 + 0x2c], 1
mov r13d, eax
and dword [rsi + 0xc8], 0xfffffffc
xor edi, edi
mov dword [rsp + 0x50], eax
jmp 0x140337d19
mov qword [rbp + 0x38], r15
lea rax, [rsi + 0xa8]
mov qword [rbp + 0x40], rax
lea r9, str.sqlite_master
mov dword [rbp + 0x48], ebx
mov rdx, rbx
mov dword [rbp + 0x50], r8d
mov rax, qword [r15 + 0x20]
shl rdx, 5
mov rcx, qword [rax + rdx + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov dword [rbp + 0x58], ecx
mov rcx, r15
mov r8, qword [r15 + 0x20]
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x20], rax
mov r8, qword [r8 + rdx]
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
call fcn.140317a90
mov rbx, rax
mov rcx, r15
test rax, rax
je 0x14033a648
xor edi, edi
mov byte [r15 + 0xc5], 1
lea r9, [rbp + 0x38]
mov dword [rbp + 0x4c], edi
lea r8, [fcn.140313da0]
mov dword [rbp + 0x54], edi
mov rdx, rax
mov qword [rsp + 0x20], rdi
call fcn.140258120
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x140337d07
mov r13d, dword [rbp + 0x4c]
mov dword [rsp + 0x50], r13d
test r13d, r13d
jne 0x140337d07
cmp dword [rbp + 0x54], edi
jne 0x140337d07
lea rax, [0x1404b0cb4]
mov r12d, 0xb
mov ecx, r12d
mov qword [rsp + 0x20], rax
mov r9d, 0x17b47
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.14023d740
mov r13d, r12d
mov dword [rsp + 0x50], r12d
mov rdx, rbx
mov rcx, r15
call fcn.1402eeac0
mov byte [r15 + 0xc5], dil
test r13d, r13d
je 0x140332c83
mov rcx, r15
call fcn.140323dc0
mov r12, qword [rsp + 0x68]
cmp r13d, 7
je 0x1403347c6
mov r14, qword [rsp + 0x48]
mov ebx, 1
lea eax, [rbx + 0xa]
jmp 0x14033a320
mov rax, qword [rsp + 0x48]
mov rcx, r15
mov edx, dword [rax + 4]
call fcn.1402e2c90
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rdx, qword [rax + 0x10]
shl rcx, 5
add rcx, qword [r15 + 0x20]
mov rcx, qword [rcx + 0x18]
add rcx, 8
call fcn.1403131b0
test rax, rax
je 0x140337db8
cmp qword [r15 + 0x308], 0
jne 0x140337dad
mov ecx, 0xffffffff
add dword [rax + 0x2c], ecx
jne 0x140337db8
mov rdx, rax
mov rcx, r15
call fcn.1402724c0
or dword [r15 + 0x2c], 1
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x48]
add rcx, 0x20
mov rdx, qword [rax + 0x10]
call fcn.1403131b0
mov r8, rax
test rax, rax
je 0x140337db8
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
cmp rcx, r8
jne 0x140337e0c
mov rcx, qword [r8 + 0x28]
mov qword [rax + 0x10], rcx
jmp 0x140337e2c
test rcx, rcx
je 0x140337e2c
lea rdx, [rcx + 0x28]
mov rcx, qword [rcx + 0x28]
cmp rcx, r8
je 0x140337e25
test rcx, rcx
jne 0x140337e11
jmp 0x140337e2c
mov rax, qword [r8 + 0x28]
mov qword [rdx], rax
mov rdx, r8
mov rcx, r15
call fcn.1402fb9d0
or dword [r15 + 0x2c], 1
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x48]
add rcx, 0x38
mov rdx, qword [rax + 0x10]
call fcn.1403131b0
mov rbx, rax
test rax, rax
je 0x140332c83
mov rcx, qword [rax + 0x30]
cmp qword [rax + 0x28], rcx
jne 0x140337ec3
mov rdx, qword [rax + 8]
add rcx, 8
xor r8d, r8d
call fcn.1402788f0
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x140337ec3
mov rax, qword [rdx + 0x58]
add rdx, 0x58
test rax, rax
je 0x140337ec3
cmp rax, rbx
je 0x140337ebc
lea rdx, [rax + 0x40]
mov rax, qword [rax + 0x40]
test rax, rax
jne 0x140337ea8
jmp 0x140337ec3
mov rax, qword [rax + 0x40]
mov qword [rdx], rax
mov rdx, rbx
mov rcx, r15
call fcn.1402f0160
or dword [r15 + 0x2c], 1
jmp 0x140332c83
mov rsi, qword [rsp + 0x60]
mov r15, r12
mov r14, qword [rsp + 0x78]
jmp 0x140332c83
mov r13, qword [rsp + 0x48]
lea r9, [rbp - 8]
mov rdx, qword [r15 + 0x20]
mov qword [rsp + 0x30], r9
lea r9, [rbp - 0x3c]
mov qword [rsp + 0x28], r9
movsxd rax, dword [r13 + 0xc]
mov r8, qword [r13 + 0x10]
mov r9d, dword [r13 + 8]
add r8, 4
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
mov ecx, dword [rdi + r14]
movzx eax, word [r13 + 2]
inc ecx
shl rax, 5
add rbx, r14
mov dword [rsp + 0x20], ecx
mov rcx, r15
mov rdx, qword [rax + rdx + 8]
call fcn.1402e7560
mov r13d, eax
mov dword [rsp + 0x50], eax
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x140337f60
mov rcx, rbx
call fcn.140353570
jmp 0x140337f66
mov word [rbx + 0x14], 1
mov eax, dword [rbp - 0x3c]
test eax, eax
je 0x140337fa1
test r13d, r13d
jne 0x14033a652
mov rdx, qword [rbp - 8]
dec eax
movsxd rcx, eax
mov r9b, 1
sub qword [rdi + r14], rcx
lea rax, [fcn.14025a990]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov r8, 0xffffffffffffffff
call fcn.14033d0d0
test byte [rbx + 0x14], 2
movzx r12d, byte [rsp + 0x40]
jne 0x140337fb6
mov byte [rbx + 0x16], r12b
jmp 0x140339979
cmp byte [rbx + 0x16], r12b
je 0x140339979
movzx edx, r12b
mov rcx, rbx
call fcn.14033d620
jmp 0x140339979
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
add rbx, r14
imul rdi, rax, 0x38
test byte [rbx + 0x14], 0x10
jne 0x140337fff
mov rcx, rbx
call fcn.14033cfd0
test eax, eax
jne 0x1403347bf
mov rdx, qword [rdi + r14]
mov rcx, qword [rbx + 8]
call fcn.140324810
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r14
test byte [rdi + 0x14], 0x10
je 0x1403380a9
mov rbx, qword [rdi + 8]
movzx eax, word [rbx + 0x32]
test al, 2
jne 0x140338052
test al, 1
jne 0x14033804d
mov rcx, qword [rbx + 0x10]
call fcn.1402d82f0
mov qword [rbx + 0x10], rax
mov edx, 1
or word [rbx + 0x32], 3
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x1403380a9
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x140338073
mov rcx, rbx
call fcn.140324740
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r14
test word [rcx + 0x14], ax
je 0x14033809b
mov rdx, rdi
call fcn.1403545f0
jmp 0x140339979
mov qword [rcx], rdi
mov word [rcx + 0x14], 4
jmp 0x140339979
mov eax, 0x9000
test word [rdi + 0x14], ax
je 0x1403380c1
mov rcx, rdi
call fcn.140353570
jmp case.0x14033239e.9
mov word [rdi + 0x14], dx
jmp case.0x14033239e.9
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov edi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, r14
imul rsi, rax, 0x38
test byte [rbx + 0x14], 0x10
jne 0x1403380fb
mov rcx, rbx
call fcn.14033cfd0
test eax, eax
jne 0x1403347ba
test edi, edi
je 0x140338118
mov r8, qword [rsi + r14]
mov edx, edi
mov rcx, qword [rbx + 8]
call fcn.140324880
test eax, eax
jne 0x140333f4c
test edi, edi
js 0x14033342b
mov rdx, qword [rsi + r14]
mov rcx, qword [rbx + 8]
call fcn.140324810
mov rsi, qword [rsp + 0x60]
jmp 0x140332c83
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
mov r12, qword [rcx + 0x10]
imul r15, rax, 0x38
add r15, r14
cmp word [rcx + 2], 0
je 0x140338174
mov rax, qword [rsi + 0x108]
mov rcx, qword [r12 + 0x20]
test rax, rax
je 0x140338174
cmp qword [rax + 0x30], rcx
je 0x14033a172
mov rax, qword [rax + 8]
test rax, rax
jne 0x140338161
mov r13, qword [rsp + 0x70]
mov eax, dword [r13 + 0xb0]
cmp dword [rsi + 0x118], eax
jge 0x14033a660
test byte [r15 + 0x14], 0x10
jne 0x1403382d9
mov edx, dword [r12 + 0x10]
mov ecx, dword [r12 + 0xc]
add ecx, edx
test edx, edx
lea esi, [rcx + 1]
cmovne esi, ecx
lea eax, [rsi + 2]
imul ecx, eax, 7
mov eax, dword [r12 + 8]
add ecx, edx
add eax, 7
jns 0x1403381c0
add eax, 7
sar eax, 3
lea edi, [rax + rcx*8]
mov rcx, r13
movsxd rbx, edi
mov rdx, rbx
call fcn.1402eec50
mov r14, rax
test rax, rax
je 0x14033a8f3
mov r8, rbx
xor edx, edx
mov rcx, rax
call fcn.1403c4432
mov eax, 0x9000
test word [r15 + 0x14], ax
jne 0x140338200
cmp dword [r15 + 0x20], 0
je 0x140338208
mov rcx, r15
call fcn.140353520
mov r8, qword [rsp + 0x60]
lea rax, [0x14033b630]
mov rcx, qword [rsp + 0x48]
sub rcx, qword [rsp + 0x58]
mov word [r15 + 0x14], 0x1010
mov qword [r15 + 8], r14
mov dword [r15 + 0x10], edi
mov qword [r15 + 0x30], rax
mov qword [r14], r8
mov dword [r14 + 0x58], esi
mov eax, dword [r12 + 0x10]
mov dword [r14 + 0x5c], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r14 + 0x4c], edx
mov rax, qword [r8 + 0x68]
mov qword [r14 + 0x18], rax
mov eax, dword [r8 + 0x24]
mov dword [r14 + 0x54], eax
mov rax, qword [r8 + 0x78]
mov qword [r14 + 0x20], rax
mov eax, dword [r8 + 0x28]
mov dword [r14 + 0x48], eax
mov rax, qword [r8 + 0x88]
mov qword [r14 + 0x10], rax
mov eax, dword [r8 + 0x90]
xor r8d, r8d
mov dword [r14 + 0x50], eax
mov rax, qword [r12 + 0x20]
mov qword [r14 + 0x30], rax
movsxd rax, esi
add rax, 2
imul rcx, rax, 0x38
lea rax, [r14 + 0x70]
add rcx, r14
cmp rax, rcx
je 0x1403382d2
nop dword [rax]
mov word [rax + 0x14], r8w
mov qword [rax + 0x18], r13
add rax, 0x38
cmp rax, rcx
jne 0x1403382c0
mov rsi, qword [rsp + 0x60]
jmp 0x1403382dd
mov r14, qword [r15 + 8]
inc dword [rsi + 0x118]
mov r15, r13
mov rax, qword [rsi + 0x108]
mov qword [r14 + 8], rax
mov rax, qword [r13 + 0x38]
mov qword [r14 + 0x38], rax
mov rax, qword [rsi + 0x38]
mov qword [r14 + 0x60], rax
mov rax, qword [rsi]
mov rcx, qword [rax + 0x78]
mov qword [r14 + 0x68], rcx
mov rax, qword [rsi + 0x128]
mov qword [r14 + 0x40], rax
mov qword [rsi + 0x128], r8
mov qword [rsi + 0x38], r8
lea r8, [r14 + 0x70]
mov qword [rsi + 0x108], r14
mov qword [rsi + 0x68], r8
movsxd rcx, dword [r14 + 0x58]
mov dword [rsi + 0x24], ecx
movzx eax, word [r14 + 0x5c]
mov dword [rsi + 0x28], eax
imul rdx, rcx, 0x38
mov qword [rsp + 0x78], r8
add rdx, r8
mov qword [rsi + 0x78], rdx
movsxd rax, dword [r12 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [r14 + 0x28], rcx
mov eax, dword [r12 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call fcn.1403c4432
mov rcx, qword [r12]
mov r13d, dword [rsp + 0x50]
mov r14, qword [rsp + 0x78]
mov qword [rsi + 0x88], rcx
mov eax, dword [r12 + 8]
mov qword [rsp + 0x58], rcx
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x48], rcx
mov dword [rsi + 0x90], eax
jmp 0x140339979
mov rax, qword [rsp + 0x48]
mov edi, 0x9000
movsxd rax, dword [rax + 8]
imul r9, rax, 0x38
add r9, qword [rsi + 0x68]
test word [r9 + 0x14], di
je 0x1403383da
mov rcx, r9
call fcn.1402cb550
mov r11, qword [rsp + 0x58]
mov r9, rax
jmp 0x1403383e1
mov word [r9 + 0x14], 4
mov r8, qword [rsi + 0x108]
movsxd rax, dword [r8 + 0x4c]
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x10]
mov edx, dword [rax + rcx*8 + 4]
mov rax, qword [rsp + 0x48]
add edx, dword [rax + 4]
movsxd rax, edx
imul rcx, rax, 0x38
add rcx, qword [r8 + 0x18]
test word [r9 + 0x14], di
je 0x14033841d
mov rdx, rcx
mov rcx, r9
jmp 0x140332c78
movups xmm0, xmmword [rcx]
mov eax, 0x2000
movups xmmword [r9], xmm0
movsd xmm1, qword [rcx + 0x10]
movsd qword [r9 + 0x10], xmm1
test word [rcx + 0x14], ax
jne 0x140332c83
mov eax, 0xcfff
and word [r9 + 0x14], ax
mov eax, 0x4000
or word [r9 + 0x14], ax
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
xor r8d, r8d
mov edx, 1
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov eax, dword [r15 + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x48]
mov r12, rax
jae 0x1403384a2
movsxd rax, dword [rax + 8]
add qword [r15 + 0x300], rax
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
cmp dword [rax + 4], 0
movsxd rax, dword [rax + 8]
je 0x1403384c0
add qword [r15 + 0x2f8], rax
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
add qword [rsi + 0x50], rax
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
cmp dword [r12 + 4], 0
je 0x1403384fe
cmp qword [r15 + 0x2f8], 0
jne case.0x14033239e.89
cmp qword [r15 + 0x300], 0
je 0x140334174
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
cmp qword [rsi + 0x50], 0
jne case.0x14033239e.89
cmp qword [r15 + 0x300], 0
je 0x140334174
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rcx, qword [rsi + 0x108]
test rcx, rcx
je 0x14033855f
mov rax, qword [rcx + 8]
test rax, rax
je 0x14033854c
nop dword [rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140338540
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 4]
imul rbx, rax, 0x38
add rbx, qword [rcx + 0x18]
jmp 0x14033856f
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 4]
imul rbx, rax, 0x38
add rbx, r14
movzx eax, word [rbx + 0x14]
test al, 0x24
je 0x14033857c
mov rax, qword [rbx]
jmp 0x1403385a6
test al, 8
je 0x14033858b
movsd xmm0, qword [rbx]
call fcn.140272850
jmp 0x1403385a6
test al, 0x12
je 0x1403385a3
cmp qword [rbx + 8], 0
je 0x1403385a3
mov rcx, rbx
call fcn.1402c6460
xor r8d, r8d
jmp 0x1403385a6
mov rax, r8
mov qword [rbx], rax
mov r12d, 0xf244
and word [rbx + 0x14], r12w
or word [rbx + 0x14], 4
movsxd rax, dword [rdi + 8]
imul rdi, rax, 0x38
add rdi, r14
movzx eax, word [rdi + 0x14]
test al, 0x24
je 0x1403385d1
mov rax, qword [rdi]
jmp 0x1403385f8
test al, 8
je 0x1403385e0
movsd xmm0, qword [rdi]
call fcn.140272850
jmp 0x1403385f8
test al, 0x12
je 0x1403385f5
cmp qword [rdi + 8], 0
je 0x1403385f5
mov rcx, rdi
call fcn.1402c6460
jmp 0x1403385f8
mov rax, r8
mov qword [rdi], rax
and word [rdi + 0x14], r12w
or word [rdi + 0x14], 4
cmp qword [rbx], rax
jge 0x140332c83
mov qword [rbx], rax
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r14]
test rdx, rdx
jle 0x140338465
mov rax, r12
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r14], rdx
jmp 0x14033416f
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
mov eax, 0x9000
add r8, qword [rsi + 0x68]
test word [r8 + 0x14], ax
je 0x140338687
mov rcx, r8
call fcn.1402cb550
mov r11, qword [rsp + 0x58]
mov r8, rax
jmp 0x14033868e
mov word [r8 + 0x14], 4
mov rcx, qword [rbx + r14]
test rcx, rcx
jle 0x1403386c9
mov rdx, qword [rdi + r14]
mov eax, 0
test rdx, rdx
cmovle rdx, rax
test rdx, rdx
js 0x1403386be
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, rdx
jl 0x1403386c9
add rcx, rdx
mov qword [r8], rcx
jmp 0x140338452
mov rcx, 0xffffffffffffffff
mov qword [r8], rcx
jmp 0x140338452
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r14]
test rax, rax
je 0x1403328d9
mov r12, qword [rsp + 0x48]
jle 0x140334174
dec rax
mov qword [rcx + r14], rax
jmp 0x140334174
mov rax, qword [rsp + 0x48]
movabs rbx, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r14]
cmp rax, rbx
jle 0x140338730
dec rax
mov qword [rcx + r14], rax
mov r12, qword [rsp + 0x48]
test rax, rax
je 0x140334174
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
mov rcx, r15
movzx ebx, word [rax + 2]
mov edi, ebx
lea rdx, [rbx*8 + 0x68]
call fcn.1402eec50
mov r8, rax
test rax, rax
je 0x1403347bf
movzx r12d, byte [rsp + 0x40]
xor eax, eax
mov qword [r8 + 0x10], rax
add rdi, 6
mov rax, qword [rsp + 0x48]
lea rcx, [r8 + rdi*8]
mov qword [r8], rcx
xor edi, edi
mov word [rcx + 0x14], 1
mov qword [rcx + 0x18], r15
mov dword [rcx + 0x20], edi
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 + 0x48]
mov dword [r8 + 0x20], edx
mov qword [r8 + 0x18], rsi
mov byte [r8 + 0x29], dil
mov dword [r8 + 0x24], edi
mov byte [r8 + 0x28], r12b
mov byte [r8 + 0x2a], bl
mov byte [rax + 1], 0xf1
mov qword [rax + 0x10], r8
mov byte [rax], 0xa3
jmp 0x1403387f9
mov rax, qword [rsp + 0x48]
xor edi, edi
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul r10, rax, 0x38
add r10, r14
cmp qword [rbx + 0x10], r10
je 0x140338856
mov qword [rbx + 0x10], r10
movzx eax, byte [rbx + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x140338856
mov r15, qword [rsp + 0x48]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop
mov eax, dword [r15 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r14
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x140338830
mov r15, qword [rsp + 0x70]
inc dword [r10 + 0x10]
lea r8, [rbx + 0x30]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
cmp dword [rcx + 4], 0
mov rcx, rbx
je 0x140338879
call qword [rax + 0x30]
jmp 0x14033887c
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x140339f0b
jle 0x1403388e5
mov rcx, qword [rbx]
test rcx, rcx
jne 0x140338896
mov rax, rdi
jmp 0x1403388ca
movzx edx, word [rcx + 0x14]
mov r8d, 0x202
movzx eax, dx
and ax, r8w
cmp ax, r8w
jne 0x1403388b9
cmp byte [rcx + 0x16], 1
jne 0x1403388b9
mov rax, qword [rcx + 8]
jmp 0x1403388ca
test dl, 1
je 0x1403388c3
mov rax, rdi
jmp 0x1403388ca
mov dl, 1
call fcn.140352270
mov r8, rax
lea rdx, [0x1404a8f80]
mov rcx, rsi
call fcn.1403321f0
mov r13d, dword [rbx + 0x24]
mov dword [rsp + 0x50], r13d
cmp byte [rbx + 0x29], 0
je 0x140338928
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x140338924
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r14
test word [rcx + 0x14], ax
je 0x140338916
mov edx, 1
call fcn.1403545f0
jmp 0x140338924
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 0x14033893c
cmp dword [rcx + 0x20], 0
je 0x140338941
call fcn.140353520
mov rax, qword [rbx]
xor r8d, r8d
mov edx, 1
mov word [rax + 0x14], dx
mov dword [rbx + 0x24], r8d
test r13d, r13d
je 0x140336ef3
mov ebx, edx
jmp 0x14033a30f
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov rsi, qword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, r14
test eax, eax
je 0x140338a10
imul rdi, rax, 0x38
xorps xmm0, xmm0
movups xmmword [rbp + 0x160], xmm0
movups xmmword [rbp + 0x170], xmm0
xor eax, eax
mov qword [rbp + 0x190], rax
add rdi, r14
mov eax, 0x9000
movups xmmword [rbp + 0x180], xmm0
test word [rdi + 0x14], ax
je 0x1403389c1
mov rcx, rdi
call fcn.140353570
jmp 0x1403389c5
mov word [rdi + 0x14], dx
mov qword [rbp + 0x160], rdi
mov qword [rbp + 0x170], rbx
mov qword [rbp + 0x168], rsi
mov rax, qword [rbx + 0x18]
movzx ecx, byte [rax + 0x64]
mov byte [rbp + 0x188], cl
lea rcx, [rbp + 0x160]
call qword [rsi + 0x28]
mov rax, qword [rsp + 0x48]
mov r13d, dword [rbp + 0x184]
mov dword [rsp + 0x50], r13d
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r14
jmp 0x140338a22
mov rdx, rsi
mov rcx, rbx
call fcn.14033ca00
mov r13d, eax
mov dword [rsp + 0x50], eax
test r13d, r13d
jne 0x14033a67c
test byte [rbx + 0x14], 2
movzx r9d, byte [rsp + 0x40]
jne 0x140338a54
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov byte [rbx + 0x16], r9b
jmp 0x140338462
cmp byte [rbx + 0x16], r9b
je 0x140339f2c
movzx edx, r9b
mov rcx, rbx
call fcn.14033d620
mov rsi, qword [rsp + 0x60]
jmp 0x140332c83
lea rax, [rbp + 0x2e0]
mov dword [rbp + 0x2d8], r8d
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x2dc]
mov rax, qword [rsp + 0x48]
mov rcx, r15
mov dword [rbp + 0x2e0], 0xffffffff
mov dword [rbp + 0x2dc], 0xffffffff
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.1402e99c0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
je 0x140338ad8
cmp eax, 5
jne 0x14033a30a
xor eax, eax
mov r13d, eax
mov dword [rsp + 0x50], eax
lea ecx, [rax + 1]
jmp 0x140338ade
mov ecx, dword [rbp + 0x2d8]
mov rax, qword [rsp + 0x48]
mov edi, 0x9000
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
movsxd rax, ecx
add rbx, r14
test word [rbx + 0x14], di
je 0x140338b0e
mov rdx, rax
mov rcx, rbx
call fcn.1403545f0
mov edx, 4
jmp 0x140338b1a
mov edx, 4
mov qword [rbx], rax
mov word [rbx + 0x14], dx
lea rcx, [rbx + 0x38]
movsxd rax, dword [rbp + 0x2dc]
test word [rbx + 0x4c], di
je 0x140338b3a
mov rdx, rax
call fcn.1403545f0
mov edx, 4
jmp 0x140338b41
mov qword [rcx], rax
mov word [rbx + 0x4c], dx
lea rcx, [rbx + 0x70]
movsxd rax, dword [rbp + 0x2e0]
test word [rbx + 0x84], di
je 0x140338b62
mov rdx, rax
call fcn.1403545f0
jmp 0x140332c83
mov qword [rcx], rax
mov word [rbx + 0x84], dx
jmp 0x140332c83
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 8]
imul r13, rax, 0x38
mov eax, 0x9000
add r13, qword [rsi + 0x68]
test word [r13 + 0x14], ax
je 0x140338b9e
mov rcx, r13
call fcn.1402cb550
mov r13, rax
xor r8d, r8d
jmp 0x140338ba5
mov word [r13 + 0x14], 4
mov edx, dword [rdi + 0xc]
movsxd rcx, dword [rdi + 4]
mov rax, qword [r15 + 0x20]
shl rcx, 5
cmp edx, 0xffffffff
mov r15, qword [rcx + rax + 8]
mov rax, qword [r15 + 8]
mov rdi, qword [rax]
movzx r14d, byte [rdi + 9]
mov esi, r14d
cmovne esi, edx
cmp byte [rdi + 0x15], 3
jae 0x140338be5
mov rax, qword [rdi + 0x50]
cmp qword [rax], 0
je 0x140338be8
cmp qword [rdi + 0x60], 0
jle 0x140338be8
mov esi, r14d
cmp byte [rdi + 0x13], 0
jne 0x140338c03
lea rax, [0x1404cf3e0]
cmp qword [rdi], rax
je 0x140338c03
mov rcx, qword [rdi + 0xd8]
jmp 0x140338c0a
lea rcx, [0x1404a3bf4]
cmp esi, 5
jne 0x140338c84
test rcx, rcx
je 0x140338c4f
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140338c20
test eax, 0x3fffffff
je 0x140338c4f
cmp byte [rdi + 0x11], 0
mov rax, qword [rdi + 0x48]
mov rcx, qword [rax]
jne 0x140338c4f
cmp byte [rdi + 8], 0
jne 0x140338c84
cmp dword [rcx], 2
jl 0x140338c4f
cmp qword [rcx + 0x68], 0
jne 0x140338c84
mov esi, r14d
mov ecx, dword [rsp + 0x50]
test ecx, ecx
je 0x140338c5d
mov esi, r14d
mov edx, esi
mov rcx, rdi
call fcn.14031a760
mov word [r13 + 0x14], 0x2202
cmp eax, 6
jne 0x140338e03
xor edi, edi
mov qword [r13 + 8], rdi
mov eax, edi
jmp 0x140338e40
cmp esi, r14d
je 0x140338c52
cmp r14d, 5
je 0x140338c94
cmp esi, 5
jne 0x140338c52
mov r12, qword [rsp + 0x70]
cmp byte [r12 + 0x65], 0
je 0x14033a6a0
cmp dword [r12 + 0xdc], 1
jg 0x14033a6a0
cmp r14d, 5
jne 0x140338dc7
cmp qword [rdi + 0x128], 0
mov ebx, r8d
jne 0x140338d47
mov dword [rbp - 0x40], r8d
movzx eax, byte [rdi + 0x16]
cmp al, 1
jb 0x140338cdc
cmp al, r14b
jne 0x140338d01
cmp byte [rdi + 0x11], 0
jne 0x140338cf7
mov rcx, qword [rdi + 0x48]
mov edx, 1
mov rax, qword [rcx]
call qword [rax + 0x38]
mov ebx, eax
test eax, eax
jne 0x140338d01
cmp byte [rdi + 0x16], 5
je 0x140338d01
mov byte [rdi + 0x16], 1
test ebx, ebx
jne 0x140338daf
mov rax, qword [rdi]
lea r9, [rbp - 0x40]
mov rdx, qword [rdi + 0x130]
xor r8d, r8d
mov rcx, rax
call qword [rax + 0x38]
mov ebx, eax
test eax, eax
jne 0x140338daf
cmp dword [rbp - 0x40], eax
je 0x140338d3d
mov rcx, rdi
call fcn.1402cc040
mov ebx, eax
test eax, eax
jne 0x140338daf
cmp qword [rdi + 0x128], 0
je 0x140338daf
mov rcx, rdi
call fcn.1402cbd50
mov ebx, eax
test eax, eax
jne 0x140338daf
mov rax, qword [rdi + 0x118]
mov rdx, r12
movzx r8d, byte [rdi + 0xf]
mov r9d, dword [rdi + 0xc8]
mov rcx, qword [rdi + 0x128]
mov qword [rsp + 0x20], rax
call fcn.140340fd0
mov ebx, eax
mov dword [rsp + 0x50], eax
xor eax, eax
mov rcx, rdi
mov qword [rdi + 0x128], rax
call fcn.1402cbdd0
test ebx, ebx
je 0x140338daf
cmp byte [rdi + 8], 0
jne 0x140338daf
mov edx, 1
mov rcx, rdi
call fcn.1402cc8d0
jmp 0x140338c5a
mov dword [rsp + 0x50], ebx
test ebx, ebx
jne 0x140338c5a
mov edx, esi
mov rcx, rdi
call fcn.14031a760
jmp 0x140338de4
cmp r14d, 4
jne 0x140338dd9
lea edx, [r14 - 2]
mov rcx, rdi
call fcn.14031a760
cmp dword [rsp + 0x50], 0
jne 0x140338c5a
xor eax, eax
mov rcx, r15
mov edx, eax
cmp esi, 5
sete dl
inc edx
call fcn.1402e8c50
mov ecx, eax
mov dword [rsp + 0x50], eax
jmp 0x140338c56
cdqe
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x4a5210]
mov qword [r13 + 8], rcx
test rcx, rcx
jne 0x140338e23
xor edi, edi
mov eax, edi
jmp 0x140338e40
mov rax, 0xffffffffffffffff
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140338e30
and eax, 0x3fffffff
xor edi, edi
movzx r9d, byte [rsp + 0x40]
mov dword [r13 + 0x10], eax
mov byte [r13 + 0x16], 1
cmp r9b, 1
je 0x140338e67
movzx edx, r9b
mov rcx, r13
call fcn.14033d620
movzx r9d, byte [rsp + 0x40]
mov r13d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
test r13d, r13d
jne 0x14033a966
mov r12, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov r13, qword [rsp + 0x48]
movsxd rax, dword [r13 + 8]
test eax, eax
je 0x140338eae
imul r9, rax, 0x38
add r9, r14
jmp 0x140338eb1
mov r9, r8
mov r8d, dword [r13 + 4]
lea rcx, [rsi + 0xa8]
mov rdx, r15
call fcn.1403250c0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033a30a
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax + 8]
cmp byte [rsi + 0x11], 0
mov rdi, qword [rsi + 8]
je 0x140338f09
inc dword [rsi + 0x14]
cmp byte [rsi + 0x12], 0
jne 0x140338f09
mov rcx, rsi
call fcn.140268920
cmp byte [rdi + 0x21], 0
jne 0x140338f1f
mov r13d, 0x65
mov dword [rsp + 0x50], r13d
jmp 0x14033901b
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.140278430
mov r15d, eax
cmp r14d, eax
jb 0x140338fde
cmp ebx, r14d
jae 0x140338fde
test ebx, ebx
je 0x140338fd1
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x140338f79
xor r8d, r8d
xor edx, edx
call fcn.1402dca90
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x140339011
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x140338f8f
and byte [rax + 1], 0xfb
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x140338f82
xor r9d, r9d
mov r8d, r14d
mov edx, r15d
mov rcx, rdi
call fcn.1402bea50
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x140339011
mov rcx, qword [rdi + 0x18]
mov rcx, qword [rcx + 0x70]
call fcn.14031ae90
mov edx, dword [rdi + 0x40]
mov r13d, eax
mov dword [rsp + 0x50], eax
mov rax, qword [rdi + 0x18]
bswap edx
mov rcx, qword [rax + 0x50]
mov dword [rcx + 0x1c], edx
jmp 0x140339011
mov r13d, 0x65
mov dword [rsp + 0x50], r13d
jmp 0x140339011
lea rax, [0x1404b0cb4]
mov ebx, 0xb
mov ecx, ebx
mov qword [rsp + 0x20], rax
mov r9d, 0x11af8
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.14023d740
mov r13d, ebx
mov dword [rsp + 0x50], ebx
mov r14, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
cmp byte [rsi + 0x11], 0
je 0x14033902f
sub dword [rsi + 0x14], 1
jne 0x14033902f
mov rcx, rsi
call fcn.14034faa0
test r13d, r13d
je 0x14033342b
cmp r13d, 0x65
jne 0x14033a305
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov r11, qword [rsp + 0x58]
mov r13d, r8d
mov dword [rsp + 0x50], r8d
jmp 0x14033416f
cmp dword [r12 + 4], 0
jne 0x1403390a5
mov rdx, qword [r15 + 8]
mov r8d, dword [r12 + 8]
test rdx, rdx
je 0x140338462
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 0x140339080
jmp 0x140338462
mov eax, dword [rsi + 0xc8]
mov ecx, dword [r12 + 8]
inc ecx
xor ecx, eax
and ecx, 3
xor ecx, eax
mov dword [rsi + 0xc8], ecx
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
or byte [rax + 1], 0x40
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
and byte [rax + 1], 0xbf
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rax, qword [rsp + 0x48]
movzx esi, byte [rax + 0xc]
test sil, sil
jne 0x140339144
mov eax, dword [r15 + 0x30]
bt rax, 0xa
jb 0x140333453
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov r13d, r8d
mov edi, dword [rax + 8]
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov dword [rsp + 0x50], r8d
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x140339237
inc dword [rbx + 0x14]
inc sil
cmp byte [rbx + 0x12], 0
jne 0x14033917e
mov rcx, rbx
call fcn.140268920
movzx r8d, sil
mov edx, edi
mov rcx, rbx
call fcn.1402d2c30
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x140339213
mov r14, qword [rbx + 8]
mov rax, qword [r14 + 0x78]
test rax, rax
je 0x1403391b7
cmp dword [rax + 8], edi
jne 0x1403391ae
cmp qword [rax], rbx
je 0x1403391fc
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1403391a4
mov ecx, 0x18
call fcn.140317ac0
xor r8d, r8d
test rax, rax
je 0x140339201
mov qword [rax + 0xc], r8
mov dword [rax + 0x14], r8d
mov dword [rax + 8], edi
mov qword [rax], rbx
mov rcx, qword [r14 + 0x78]
mov qword [rax + 0x10], rcx
mov qword [r14 + 0x78], rax
cmp sil, byte [rax + 0xc]
jbe 0x1403391ed
mov byte [rax + 0xc], sil
mov r14, qword [rsp + 0x78]
mov r13d, r8d
mov dword [rsp + 0x50], r8d
jmp 0x140339216
xor r8d, r8d
jmp 0x1403391e3
mov r14, qword [rsp + 0x78]
mov r13d, 7
mov dword [rsp + 0x50], r13d
jmp 0x140339216
xor r8d, r8d
cmp byte [rbx + 0x11], 0
je 0x14033922d
sub dword [rbx + 0x14], 1
jne 0x14033922d
mov rcx, rbx
call fcn.14034faa0
xor r8d, r8d
mov r11, qword [rsp + 0x58]
mov edx, 1
test r13d, r13d
je 0x140332a36
mov r14, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
cmp r13b, 6
jne 0x140333623
mov r8, qword [r14 + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, rsi
call fcn.1403321f0
mov ebx, 1
jmp 0x14033a314
mov rcx, qword [rsp + 0x48]
movsxd rdx, dword [r15 + 0x224]
mov dword [rsp + 0x50], r8d
mov rbx, qword [rcx + 0x10]
test edx, edx
jle 0x1403392bf
cmp qword [r15 + 0x248], 0
jne 0x1403392bf
mov dword [rbp - 0x80], 6
mov r13d, 6
mov dword [rsp + 0x50], r13d
lea rdx, [rbx + 0x10]
test rbx, rbx
jne 0x140339381
mov r14, rcx
lea ebx, [r13 - 5]
jmp 0x14033a314
test rbx, rbx
jne 0x1403392d4
mov r13d, r8d
mov dword [rsp + 0x50], r8d
mov r12, rcx
jmp 0x140338465
mov rax, qword [rbx + 0x10]
mov rsi, qword [rax]
cmp qword [rsi + 0x70], 0
je 0x140339373
mov rcx, r8
test edx, edx
jle 0x140339309
mov rax, qword [r15 + 0x248]
cmp qword [rax], rbx
je 0x14033939a
inc rcx
add rax, 8
cmp rcx, rdx
jl 0x1403392f4
mov rcx, r15
call fcn.1402be0e0
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x140339373
mov rcx, qword [rbx + 0x10]
call qword [rsi + 0x70]
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x140339373
mov edx, dword [r15 + 0x2f4]
add edx, dword [r15 + 0x2f0]
movsxd rcx, dword [r15 + 0x224]
mov rax, qword [r15 + 0x248]
mov qword [rax + rcx*8], rbx
inc dword [r15 + 0x224]
inc dword [rbx + 0x18]
test edx, edx
je 0x140339373
cmp qword [rsi + 0xa0], 0
je 0x140339373
mov dword [rbx + 0x20], edx
dec edx
mov rcx, qword [rbx + 0x10]
call qword [rsi + 0xa0]
mov dword [rsp + 0x50], eax
mov r13d, dword [rsp + 0x50]
mov rsi, qword [rsp + 0x60]
lea rdx, [rbx + 0x10]
mov rdx, qword [rdx]
mov rcx, rsi
call fcn.140340480
test r13d, r13d
jne 0x14033a30a
jmp 0x140332c83
mov r13d, r8d
mov dword [rsp + 0x50], r8d
jmp 0x140339378
mov rax, qword [rsp + 0x48]
lea rcx, [rbp + 0x60]
xorps xmm0, xmm0
mov qword [rbp + 0x60], r8
xorps xmm1, xmm1
mov qword [rbp + 0x90], r8
movdqu xmmword [rbp + 0x68], xmm0
mov qword [rbp + 0x78], r15
movdqu xmmword [rbp + 0x80], xmm1
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, r14
call fcn.14033c8f0
movzx ecx, word [rbp + 0x74]
mov r13d, eax
mov dword [rsp + 0x50], eax
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x140339406
cmp byte [rbp + 0x76], 1
jne 0x140339406
mov rax, qword [rbp + 0x68]
jmp 0x14033941e
test cl, 1
jne 0x140339546
mov dl, 1
lea rcx, [rbp + 0x60]
call fcn.140352270
movzx ecx, word [rbp + 0x74]
test rax, rax
je 0x140339546
mov r8, qword [r15 + 0x20]
lea rbx, [rsi + 0xa8]
mov rcx, qword [rsp + 0x48]
mov rdx, rax
movsxd rcx, dword [rcx + 4]
shl rcx, 5
mov r8, qword [rcx + r8]
mov rcx, r15
call fcn.1402f9310
xor r8d, r8d
mov rsi, rax
mov rcx, qword [rax + 0x48]
mov rdi, qword [rcx]
lea rcx, [r15 + 0x228]
mov rdx, rdi
call fcn.1402788f0
mov r8, qword [rax + 0x10]
test r8, r8
je 0x14033951c
mov rcx, qword [r8]
mov r9, qword [rcx + 8]
test r9, r9
je 0x14033951c
cmp qword [rcx + 0x28], 0
je 0x14033951c
mov rdx, rsi
mov qword [rsp + 0x20], rbx
mov rcx, r15
call fcn.140356540
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033953d
mov rax, qword [rsi + 0x50]
test rax, rax
je 0x14033953d
nop
cmp qword [rax], r15
je 0x1403394d0
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1403394c0
jmp 0x14033953d
mov rcx, r15
call fcn.1402be0e0
mov dword [rsp + 0x50], eax
mov r13d, eax
test eax, eax
jne 0x14033953d
mov rdx, qword [rsi + 0x50]
test rdx, rdx
je 0x1403394fe
nop dword [rax]
cmp qword [rdx], r15
je 0x1403394fe
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x1403394f0
movsxd rcx, dword [r15 + 0x224]
mov rax, qword [r15 + 0x248]
mov qword [rax + rcx*8], rdx
inc dword [r15 + 0x224]
inc dword [rdx + 0x18]
jmp 0x14033953d
mov r8, rdi
lea rdx, str.no_such_module:__s
mov rcx, r15
call fcn.140317a90
mov qword [rbx], rax
mov eax, 1
mov r13d, eax
mov dword [rsp + 0x50], eax
movzx ecx, word [rbp + 0x74]
mov rsi, qword [rsp + 0x60]
mov eax, 0x9000
test ax, cx
jne 0x140339559
cmp dword [rbp + 0x80], 0
je 0x140339562
lea rcx, [rbp + 0x60]
call fcn.140353520
test r13d, r13d
jne 0x14033a30a
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
mov rcx, r15
inc dword [r15 + 0xe8]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.14033fa10
dec dword [r15 + 0xe8]
mov r13d, eax
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14033a30a
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x30], r8
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14033a6e1
mov rdi, qword [rbx]
test rdi, rdi
je 0x14033a6e1
lea rdx, [rbp - 0x30]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, rsi
mov r13d, eax
mov dword [rsp + 0x50], eax
call fcn.140340480
test r13d, r13d
jne 0x14033a30a
mov rax, qword [rbp - 0x30]
mov r9b, 2
xor r8d, r8d
mov rcx, rsi
mov qword [rax], rbx
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 4]
call fcn.140262140
mov rcx, qword [rbp - 0x30]
test rax, rax
je 0x14033a6d9
mov qword [rax + 0x30], rcx
inc dword [rbx + 8]
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
call fcn.14034cca0
test eax, eax
jne 0x1403347bf
lea ecx, [rax + 0x10]
call fcn.140317ac0
mov rdi, rax
test rax, rax
je 0x1403347bf
mov rcx, qword [rbx + 0x30]
mov qword [rax], rcx
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0xc]
imul rdx, rcx, 0x38
add rdx, r14
mov qword [rdi + 8], rdx
movsxd rcx, dword [rax + 8]
mov eax, 0x9000
imul rbx, rcx, 0x38
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x140339696
mov rcx, rbx
call fcn.1402cb550
mov rbx, rax
mov rcx, rbx
mov word [rbx + 0x14], 1
call fcn.140353520
lea rax, str.ValueList
mov qword [rbx], rax
lea rax, [fcn.1402871f0]
mov qword [rbx + 8], rdi
mov word [rbx + 0x14], 0x1a01
mov byte [rbx + 0x17], 0x70
mov qword [rbx + 0x30], rax
jmp 0x140332c83
mov rcx, qword [rsp + 0x48]
mov r12, qword [rsp + 0x60]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
mov rdi, qword [r12 + 0x70]
imul rdx, rax, 0x38
mov rax, qword [rsi + 0x78]
add rdx, r14
movsxd r9, dword [rdx + 0x38]
lea r11, [rdx + 0x38]
mov r13, qword [rax + rcx*8]
mov edx, dword [rdx]
mov rsi, qword [r13 + 0x30]
mov r15, qword [rsi]
mov r14, qword [r15]
test r9d, r9d
jle 0x14033972a
mov r10d, 1
movsxd rax, r10d
inc r10d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rdi + r8*8], rcx
inc r8
cmp r8, r9
jl 0x140339711
mov rax, qword [rsp + 0x48]
mov rcx, rsi
mov qword [rsp + 0x20], rdi
mov r8, qword [rax + 0x10]
call qword [r14 + 0x40]
mov rdx, r15
mov rcx, r12
mov ebx, eax
mov dword [rsp + 0x50], eax
call fcn.140340480
test ebx, ebx
jne 0x14033a90f
mov rcx, rsi
call qword [r14 + 0x50]
mov r12, qword [rsp + 0x48]
mov byte [r13 + 2], bl
mov r13d, ebx
test eax, eax
jne 0x140333f51
mov r15, qword [rsp + 0x70]
jmp 0x14033475a
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r14
cmp byte [rdi + 2], 0
je 0x1403397c0
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x140333da1
mov rcx, rbx
call fcn.140353570
jmp 0x140332c83
mov rax, qword [rdi + 0x30]
xorps xmm0, xmm0
mov r13, qword [rsp + 0x48]
mov rsi, qword [rax]
xor eax, eax
mov r14, qword [rsi]
movups xmmword [rbp + 0x1c0], xmm0
mov qword [rbp + 0x1c0], rbx
movups xmmword [rbp + 0x1e0], xmm0
mov byte [rbp + 0x1e8], r9b
movups xmmword [rbp + 0x1d0], xmm0
mov qword [rbp + 0x1f0], rax
test byte [r13 + 2], 1
je 0x140339826
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x14033981b
mov rcx, rbx
call fcn.140353570
xor r8d, r8d
mov word [rbx + 0x14], 0x401
mov dword [rbx], r8d
jmp 0x14033983a
movzx eax, word [rbx + 0x14]
mov ecx, 0xf241
and ax, cx
or ax, 1
mov word [rbx + 0x14], ax
mov r8d, dword [r13 + 8]
lea rdx, [rbp + 0x1c0]
mov rcx, qword [rdi + 0x30]
call qword [r14 + 0x58]
mov rdx, rsi
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
mov dword [rsp + 0x50], eax
mov r13d, eax
call fcn.140340480
cmp dword [rbp + 0x1e4], 0
lea rdi, [rbx + 0x16]
jle 0x1403398c1
movzx ecx, word [rbx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x140339890
cmp byte [rdi], 1
jne 0x140339890
mov rax, qword [rbx + 8]
jmp 0x1403398a3
test cl, 1
je 0x140339899
xor eax, eax
jmp 0x1403398a3
mov dl, 1
mov rcx, rbx
call fcn.140352270
mov r8, rax
lea rdx, [0x1404a8f80]
mov rcx, rsi
call fcn.1403321f0
mov r13d, dword [rbp + 0x1e4]
mov dword [rsp + 0x50], r13d
test byte [rbx + 0x14], 2
movzx r9d, byte [rsp + 0x40]
jne 0x1403398d2
mov byte [rdi], r9b
jmp 0x1403398e9
cmp byte [rdi], r9b
je 0x1403398e9
movzx edx, r9b
mov rcx, rbx
call fcn.14033d620
movzx r9d, byte [rsp + 0x40]
test r13d, r13d
jne 0x14033a30a
mov r12, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x1403328d9
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rcx, qword [rsp + 0x60]
mov rdx, rbx
mov r13d, eax
mov dword [rsp + 0x50], eax
call fcn.140340480
test r13d, r13d
jne 0x14033a305
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
test eax, eax
jne 0x140339979
mov rax, qword [rsp + 0x48]
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 + 0x48], rax
mov eax, dword [r15 + 0x198]
test eax, eax
jne 0x14033a8d2
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rbp - 0x60]
cmp rdi, rbx
jb 0x140339f25
nop word [rax + rax]
mov rdx, qword [r15 + 0x210]
test rdx, rdx
je 0x140339f25
mov eax, dword [r15 + 0x220]
mov rcx, qword [r15 + 0x218]
add rbx, rax
mov qword [rsp + 0x68], rbx
call rdx
test eax, eax
jne 0x14033a6ec
cmp rdi, rbx
jae 0x1403399a0
mov rsi, qword [rsp + 0x60]
jmp 0x140332c83
mov rcx, qword [rsp + 0x48]
mov edi, dword [r15 + 0x30]
or qword [r15 + 0x30], 0x4000000
and edi, 0x4000000
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, r14
test byte [rbx + 0x14], 2
jne 0x140339a15
mov byte [rbx + 0x16], 1
jmp 0x140339a30
cmp byte [rbx + 0x16], 1
je 0x140339a30
mov dl, 1
mov rcx, rbx
call fcn.14033d620
mov r13d, eax
test eax, eax
jne 0x14033a305
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 8]
call qword [rax + 0x98]
mov dword [rsp + 0x50], eax
mov r13d, eax
test edi, edi
jne 0x140339a53
and qword [r15 + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140340480
and dword [rsi + 0xc8], 0xfffffffc
test r13d, r13d
jne 0x14033a30a
jmp 0x140332c83
mov qword [rbp - 0x10], r8
cmp byte [r15 + 0x67], 0
jne 0x1403347bf
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14033a6e1
mov r10, qword [rbx]
test r10, r10
je 0x14033a6e1
cmp qword [r10 + 0x68], 0
mov r12, qword [rsp + 0x48]
movsxd rdx, dword [r12 + 8]
je 0x140332621
movsxd rax, dword [r12 + 0xc]
mov r13, r12
movzx edi, byte [r15 + 0x6c]
mov r8, qword [rsi + 0x70]
imul rcx, rax, 0x38
xor eax, eax
add rcx, r14
test edx, edx
jle 0x140339af0
nop dword [rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x140339ae0
movzx eax, byte [r13 + 2]
lea r9, [rbp - 0x10]
mov rcx, rbx
mov byte [r15 + 0x6c], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [r15 + 0x6c], dil
mov rcx, rsi
mov dword [rsp + 0x50], eax
mov r13d, eax
call fcn.140340480
test r13d, r13d
jne 0x140339b30
cmp dword [r12 + 4], r13d
je 0x140339b73
mov rax, qword [rbp - 0x10]
mov qword [r15 + 0x38], rax
jmp 0x140339b73
cmp r13b, 0x13
jne 0x140339b73
mov rax, r12
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x1c], 0
je 0x140339b73
mov rcx, r12
movzx ecx, word [rcx + 2]
cmp ecx, 4
jne 0x14033a70f
movzx r9d, byte [rsp + 0x40]
xor r8d, r8d
mov r10d, dword [rsp + 0x54]
mov r13d, r8d
mov r11, qword [rsp + 0x58]
mov dword [rsp + 0x50], r8d
jmp 0x140338465
inc qword [rsi + 0x38]
test r13d, r13d
jne 0x14033a30a
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x140339bc6
mov rcx, rdx
call fcn.1402cb550
mov r11, qword [rsp + 0x58]
mov rdx, rax
xor r8d, r8d
jmp 0x140339bcc
mov word [rdx + 0x14], 4
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 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 0x140338465
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 8]
imul rsi, rax, 0x38
mov rax, qword [rsp + 0x60]
add rsi, qword [rax + 0x68]
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x140339c32
mov rcx, rsi
call fcn.1402cb550
mov rsi, rax
xor r8d, r8d
jmp 0x140339c38
mov word [rsi + 0x14], 4
movsxd rcx, dword [rdi + 4]
mov edi, r8d
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax + 0xc]
test ecx, ecx
je 0x140339c64
mov rax, qword [rbx + 8]
mov edi, dword [rax + 0x40]
cmp edi, ecx
cmovb edi, ecx
cmp byte [rbx + 0x11], 0
je 0x140339c7b
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x140339c7b
mov rcx, rbx
call fcn.140268920
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
test edi, edi
je 0x140339c8c
mov dword [rcx + 0xbc], edi
cmp byte [rbx + 0x11], 0
mov edi, dword [rcx + 0xbc]
je 0x140339ca6
sub dword [rbx + 0x14], 1
jne 0x140339ca6
mov rcx, rbx
call fcn.14034faa0
mov qword [rsi], rdi
mov rsi, qword [rsp + 0x60]
jmp 0x140332c83
mov rax, qword [rsp + 0x48]
mov r15, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
mov qword [rbp - 0x68], r15
add rbx, r14
cmp qword [r15], rbx
je 0x140339d25
mov qword [r15 + 0x18], rsi
mov qword [r15], rbx
mov byte [r15 + 0x28], r9b
movzx eax, byte [r15 + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x140339d25
lea r8, [r15 + 0x30]
mov r15, qword [rsp + 0x48]
lea r8, [r8 + rdx*8]
nop dword [rax]
mov eax, dword [r15 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r14
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x140339d00
mov r15, qword [rbp - 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 0x140339f06
jle 0x140339da8
movzx ecx, word [rbx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x140339d7a
cmp byte [rbx + 0x16], 1
jne 0x140339d7a
mov rax, qword [rbx + 8]
jmp 0x140339d8d
test cl, 1
je 0x140339d83
xor eax, eax
jmp 0x140339d8d
mov dl, 1
mov rcx, rbx
call fcn.140352270
mov r8, rax
lea rdx, [0x1404a8f80]
mov rcx, rsi
call fcn.1403321f0
mov r13d, dword [r15 + 0x24]
mov dword [rsp + 0x50], r13d
mov rdi, qword [rsp + 0x60]
mov r12, qword [rsp + 0x48]
add rdi, 0x128
mov esi, dword [r15 + 0x20]
mov rbx, qword [rdi]
mov r14d, dword [r12 + 4]
test rbx, rbx
je 0x140339ed2
mov r15, qword [rsp + 0x70]
test esi, esi
js 0x140339df6
cmp dword [rbx], esi
jne 0x140339ded
mov eax, dword [rbx + 4]
test eax, eax
js 0x140339ded
cmp eax, 0x1f
jg 0x140339df6
bt r14d, eax
jae 0x140339df6
lea rdi, [rbx + 0x18]
jmp 0x140339ec2
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x140339e05
mov rcx, qword [rbx + 8]
call rax
mov rax, qword [rbx + 0x18]
mov qword [rdi], rax
cmp rbx, qword [r15 + 0x1f0]
jae 0x140339e50
cmp rbx, qword [r15 + 0x1e0]
jb 0x140339e34
mov rax, qword [r15 + 0x1d8]
mov qword [rbx], rax
mov qword [r15 + 0x1d8], rbx
jmp 0x140339ec2
cmp rbx, qword [r15 + 0x1e8]
jb 0x140339e50
mov rax, qword [r15 + 0x1c8]
mov qword [rbx], rax
mov qword [r15 + 0x1c8], rbx
jmp 0x140339ec2
cmp qword [r15 + 0x308], 0
je 0x140339e67
mov rdx, rbx
mov rcx, r15
call fcn.1402c63f0
jmp 0x140339ec2
cmp dword [0x1404ce0d0], 0
je 0x140339eb9
mov rcx, qword [0x1404d4390]
test rcx, rcx
je 0x140339e82
call qword [0x1404ce150]
mov rcx, rbx
call qword [0x1404ce108]
dec qword [0x1404d4318]
movsxd rcx, eax
sub qword [0x1404d42d0], rcx
mov rcx, rbx
call qword [0x1404ce0f8]
mov rcx, qword [0x1404d4390]
test rcx, rcx
je 0x140339ec2
call qword [0x1404ce160]
jmp 0x140339ec2
mov rcx, rbx
call qword [0x1404ce0f8]
mov rbx, qword [rdi]
test rbx, rbx
jne 0x140339dd3
mov r15, qword [rbp - 0x68]
mov rsi, qword [rsp + 0x60]
xor r8d, r8d
mov dword [r15 + 0x24], r8d
mov r15, qword [rsp + 0x70]
test r13d, r13d
jne 0x140333620
mov r14, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338465
mov r15, qword [rsp + 0x70]
movzx r9d, byte [rsp + 0x40]
mov r12, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov rsi, qword [rsp + 0x60]
jmp 0x140339f0b
mov rsi, qword [rsp + 0x60]
mov r12, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
jmp 0x140338462
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xf7ff
and word [rcx + r14 + 0x14], ax
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r14
imul rbx, rax, 0x38
call fcn.140278160
movsxd rcx, dword [rbx + r14 + 0x10]
xor edx, edx
div rcx
mov rcx, qword [rbx + r14 + 8]
mov r8, rdx
and edx, 7
shr r8, 3
movsx eax, byte [r8 + rcx]
bts eax, edx
mov byte [r8 + rcx], al
jmp 0x140332c83
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r14
imul rbx, rax, 0x38
call fcn.140278160
movsxd rcx, dword [rbx + r14 + 0x10]
xor edx, edx
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
div rcx
mov rax, qword [rbx + r14 + 8]
mov rcx, rdx
shr rcx, 3
movsx r8d, byte [rcx + rax]
movzx eax, dl
and al, 7
mov edx, 1
movzx eax, al
bt r8d, eax
jb 0x14033a00f
inc dword [rsi + 0xf4]
xor r8d, r8d
jmp 0x140334174
inc dword [rsi + 0xf0]
movzx r9d, byte [rsp + 0x40]
xor r8d, r8d
mov r10d, dword [rsp + 0x54]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
movzx eax, byte [r15 + 0x6e]
test al, 0x41
je 0x14033a102
cmp byte [rsi + 0xc3], 0xfe
je 0x14033a102
mov rcx, qword [rsp + 0x48]
mov r9, qword [rcx + 0x10]
test r9, r9
jne 0x14033a068
mov r9, qword [rsi + 0xf8]
test r9, r9
je 0x14033a102
test al, 0x40
je 0x14033a095
mov rdx, r9
mov rcx, rsi
call fcn.14033aeb0
mov rcx, qword [r15 + 0x100]
mov rdx, rax
mov rbx, rax
call qword [r15 + 0xf8]
mov rcx, rbx
call fcn.14025a990
jmp 0x14033a0f5
cmp dword [r15 + 0xe4], 1
jle 0x14033a0df
mov r8, r9
lea rdx, str.____s
mov rcx, r15
call fcn.140317a90
mov rdx, qword [r15 + 0x100]
mov r9, rax
mov r8, rsi
mov ecx, 1
mov rbx, rax
call qword [r15 + 0xf8]
test rbx, rbx
je 0x14033a0f5
mov rdx, rbx
mov rcx, r15
call fcn.1402eeac0
jmp 0x14033a0f5
mov rdx, qword [r15 + 0x100]
mov r8, rsi
mov ecx, 1
call qword [r15 + 0xf8]
mov r11, qword [rsp + 0x58]
mov edx, 1
xor r8d, r8d
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
mov eax, dword [rax + 4]
cmp eax, dword [0x1404ce278]
jl 0x14033a153
cmp byte [r12], 0xb5
je 0x1403325b8
cmp dword [rsi + 0x90], 1
jle 0x14033a150
mov eax, 0x18
mov rcx, qword [rsi + 0x88]
cmp byte [rax + rcx], 0xf
jne 0x14033a142
mov dword [rax + rcx + 4], r8d
inc edx
add rax, 0x18
cmp edx, dword [rsi + 0x90]
jl 0x14033a130
mov eax, r8d
inc eax
mov dword [r12 + 4], eax
inc dword [rsi + 0xec]
jmp 0x14033416f
mov r12, qword [rsp + 0x48]
xor r8d, r8d
jmp 0x140334174
mov r15, qword [rsp + 0x70]
mov r12, qword [rsp + 0x48]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov r15, qword [rsp + 0x70]
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x78]
mov rbx, qword [rbp - 0x60]
add r12, 0x18
jmp 0x140332366
mov r13d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
jmp 0x140338462
mov r13, qword [rsp + 0x48]
mov ecx, dword [r13 + 4]
mov dword [rsi + 0x34], ecx
movzx eax, byte [r13 + 8]
mov byte [rsi + 0xc2], al
test ecx, ecx
je 0x14033a287
movzx eax, word [r13 + 2]
mov rcx, rsi
test ax, ax
je 0x14033a231
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x4a5500]
call fcn.1403321f0
mov r9, qword [r13 + 0x10]
test r9, r9
je 0x14033a241
mov r8, qword [rsi + 0xa8]
lea rdx, str._z:__s
mov rcx, r15
call fcn.140317a90
mov qword [rsi + 0xa8], rax
jmp 0x14033a241
mov r8, qword [r13 + 0x10]
lea rdx, [0x1404a8f80]
call fcn.1403321f0
mov r9, qword [rsi + 0xf8]
mov rcx, r13
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [rsi + 0xa8]
mov ecx, dword [r13 + 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.14023d740
mov rcx, rsi
call fcn.14033b8a0
mov r14, qword [rsp + 0x48]
mov r13d, eax
mov r12, qword [rsp + 0x68]
cmp eax, 5
jne 0x14033a2a9
mov dword [rsi + 0x34], eax
jmp 0x1403354c6
cmp dword [rsi + 0x34], 0
mov r13d, 0x65
mov eax, 1
cmovne r13d, eax
jmp 0x1403354c6
mov r13d, 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov dword [rsi + 0x34], r13d
mov rcx, rsi
mov byte [rsi + 0xc2], 2
call fcn.1403321f0
cmp byte [rsi + 0xc4], 0
mov ebx, 1
cmovge r13d, ebx
jmp 0x14033a30f
mov ecx, 0x16c88
call fcn.1402ecc40
mov r13d, eax
mov r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
mov ebx, 1
mov r14, qword [rsp + 0x48]
mov eax, 0xb
mov r12, qword [rsp + 0x68]
xor edi, edi
cmp byte [r15 + 0x67], 0
je 0x14033a970
mov r13d, 7
jmp 0x14033a9a6
lea r10, [0x140000000]
movsxd rax, esi
mov rsi, qword [rsp + 0x60]
and edx, 0x3f
lea rcx, [rax + rax*2]
mov r9d, dword [r15 + rcx*8 + 8]
mov rax, qword [r15 + rcx*8]
mov rcx, rsi
movzx r8d, byte [rdx + r10 + 0x4a40a0]
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 + 0x4cf480]
mov qword [rsp + 0x20], rax
mov r9, qword [r10 + r9*8 + 0x4ce430]
call fcn.1403321f0
mov r15, qword [rsp + 0x70]
mov r13d, 0xc13
jmp 0x14033a30a
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1403321f0
mov r13d, 5
mov r14, rdi
mov ebx, 1
jmp 0x14033a314
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
jmp 0x14033a3ac
mov r13d, dword [rsp + 0x50]
mov r14, rdi
mov byte [r15 + 0x65], 0
mov ebx, 1
jmp 0x14033a314
mov rcx, rdi
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
mov r13d, 5
imul rcx
mov r14, rdi
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x30], edx
mov byte [r15 + 0x65], 0
mov dword [rsi + 0x34], r13d
jmp 0x1403354bd
bt rax, 0x14
mov r13d, 8
mov eax, 0xb
mov r14, rcx
cmovae r13d, eax
lea ebx, [rax - 0xa]
jmp 0x14033a319
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x68]
cmp r13b, 5
jne 0x14033a702
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 [rsi + 0x30], edx
mov dword [rsi + 0x34], r13d
jmp 0x1403354c2
mov rdx, qword [rsi + 0xa8]
test rdx, rdx
je 0x14033a49f
mov rcx, r15
call fcn.1402eeac0
mov edx, 0x1c
mov rcx, r15
call fcn.1402eec50
test rax, rax
je 0x14033a4d1
movups xmm0, xmmword [str.database_schema_has_changed]
movups xmmword [rax], xmm0
movsd xmm0, qword [0x1404a7e80]
movsd qword [rax + 0x10], xmm0
mov ecx, dword [0x1404a7e88]
mov dword [rax + 0x18], ecx
mov qword [rsi + 0xa8], rax
mov rax, r12
movsxd rdx, dword [rax + 4]
mov rax, qword [r15 + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x80]
cmp dword [rcx], eax
je 0x14033a4fe
mov rcx, r15
call fcn.140323e60
mov eax, dword [rsi + 0xc8]
mov r13d, 0x11
and eax, 0xffffffed
mov r14, r12
or eax, 1
mov dword [rsi + 0xc8], eax
lea ebx, [r13 - 0x10]
jmp 0x14033a314
mov r13d, 0x204
jmp 0x14033a30a
mov rcx, qword [rbx + 0x10]
call fcn.1402e5990
jmp 0x14033a30a
lea rax, [0x1404b0cb4]
mov r9d, 0x155c6
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.14023d740
mov r14, qword [rsp + 0x48]
mov eax, 0xb
mov rsi, qword [rsp + 0x60]
mov r13d, eax
lea ebx, [rax - 0xa]
jmp 0x14033a319
lea rax, [0x1404b0cb4]
mov r9d, 0x1754b
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.14023d740
mov eax, 0xb
mov r14, r12
mov r13d, eax
lea ebx, [rax - 0xa]
jmp 0x14033a319
mov r13d, 7
jmp 0x14033a300
mov r15, rcx
mov rsi, qword [rsp + 0x60]
lea rdx, str.string_or_blob_too_big
mov rcx, rsi
call fcn.1403321f0
mov r13d, 0x12
jmp 0x14033a30a
lea rax, [0x1404b0cb4]
mov r13d, 0x30b
mov ecx, r13d
mov qword [rsp + 0x20], rax
mov r9d, 0x1797e
lea r8, str.index_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.14023d740
mov r14, r12
mov ebx, 1
jmp 0x14033a314
mov ecx, 0x17a4b
call fcn.1402ecc40
mov r13d, eax
jmp 0x14033a30a
mov r13d, 6
mov byte [rsi + 0xc2], 2
jmp 0x14033a30a
call fcn.140323dc0
jmp 0x1403347bf
mov rcx, qword [rbp - 8]
call fcn.14025a990
jmp 0x14033a30a
mov r13d, edx
mov rcx, rsi
lea rdx, str.too_many_levels_of_trigger_recursion
call fcn.1403321f0
mov r15, qword [rsp + 0x70]
jmp 0x14033a30a
mov rcx, rbx
call fcn.14025f4c0
mov rsi, qword [rsp + 0x60]
lea rdx, [0x1404a8f80]
mov rcx, rsi
mov r8, rax
call fcn.1403321f0
jmp 0x14033a30a
cmp esi, 5
lea rax, str.into
mov rsi, qword [rsp + 0x60]
lea r8, str.out_of
mov ebx, 1
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
cmove r8, rax
mov rcx, rsi
mov r13d, ebx
call fcn.1403321f0
mov r15, r12
jmp 0x14033a30f
call qword [rdi + 0x38]
jmp 0x1403347bf
mov r13d, 6
jmp 0x14033a30a
mov r14, qword [rsp + 0x48]
mov r12, 0xffffffffffffffff
mov rsi, qword [rsp + 0x60]
lea r13d, [r12 + 0xa]
mov ebx, 1
lea eax, [rbx + 0xa]
jmp 0x14033a31e
movzx eax, cl
cmp ecx, 5
mov ecx, 2
mov r14, r12
cmove eax, ecx
mov byte [rsi + 0xc2], al
lea ebx, [rcx - 1]
jmp 0x14033a314
mov eax, dword [rsi + 0x2c]
mov rdi, qword [rsp + 0x48]
add eax, 2
or eax, 1
mov dword [rsi + 0x2c], eax
movsxd rax, dword [rdi + 4]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rsi + 0xa0], rcx
cmp byte [r15 + 0x67], 0
jne 0x1403347bf
test byte [r15 + 0x6e], 4
je 0x14033a780
mov rdx, qword [r15 + 0x100]
xor r9d, r9d
mov r8, rsi
lea ecx, [r9 + 4]
call qword [r15 + 0xf8]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x68]
mov rcx, rdi
sub rcx, r11
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov r13d, 0x64
mov r14, rdi
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [rsi + 0x30], edx
jmp 0x1403354c6
mov r13, qword [rsp + 0x48]
movzx eax, byte [r15 + 0x65]
mov ebx, dword [r13 + 4]
mov ecx, dword [r13 + 8]
cmp ebx, eax
je 0x14033a89c
test ecx, ecx
je 0x14033a7e8
mov edx, 0x204
mov rcx, r15
call fcn.1403245d0
mov al, 1
jmp 0x14033a82b
test ebx, ebx
je 0x14033a810
cmp dword [r15 + 0xe0], 0
jle 0x14033a810
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, rsi
call fcn.1403321f0
mov r13d, 5
jmp 0x14033a30a
mov rcx, rsi
call fcn.140331920
mov r13d, eax
test eax, eax
jne 0x1403354b8
mov r13, qword [rsp + 0x48]
movzx eax, bl
mov rcx, rsi
mov byte [r15 + 0x65], al
call fcn.14033b8a0
cmp eax, 5
jne 0x14033a87c
mov rcx, r13
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
mov r13d, 5
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 1
mov dword [rsi + 0x30], edx
sub al, bl
mov byte [r15 + 0x65], al
mov dword [rsi + 0x34], r13d
jmp 0x1403354b8
mov rcx, r15
call fcn.1402e9e20
cmp dword [rsi + 0x34], 0
mov r13d, 0x65
mov eax, 1
cmovne r13d, eax
jmp 0x1403354b8
test ebx, ebx
jne 0x14033a8a9
lea rdx, str.cannot_start_a_transaction_within_a_transaction
jmp 0x14033a8bd
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
cmovne rdx, rax
mov rcx, rsi
call fcn.1403321f0
mov ebx, 1
mov r13d, ebx
jmp 0x14033a30f
mov rsi, qword [rsp + 0x60]
mov r12, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
mov r13d, 9
lea ebx, [r13 - 8]
lea eax, [rbx + 0xa]
jmp 0x14033a31e
mov r15, r13
jmp 0x1403347ba
mov r15, qword [rsp + 0x70]
jmp 0x1403347bf
mov r15, qword [rsp + 0x70]
jmp 0x1403347ba
mov r15, qword [rsp + 0x70]
mov rsi, r12
mov r13d, dword [rsp + 0x50]
jmp 0x14033a30a
mov r15, r12
jmp 0x14033a305
mov r13d, dword [rsp + 0x50]
mov r15, rsi
jmp 0x14033a305
mov r13d, dword [rsp + 0x50]
jmp 0x14033a300
mov r15, qword [rsp + 0x70]
mov r13d, dword [rsp + 0x50]
jmp 0x14033a30a
mov rsi, qword [rsp + 0x60]
mov r14, rdi
mov ebx, 1
jmp 0x14033a314
mov rsi, qword [rsp + 0x60]
mov r12, qword [rsp + 0x68]
jmp 0x140337d39
cmp r13d, 0x210a
jne 0x14033a9a6
lea rcx, [0x1404b0cb4]
mov r9d, 0x182da
mov qword [rsp + 0x20], rcx
lea r8, str.database_corruption
mov ecx, eax
lea rdx, str._s_at_line__d_of___.10s_
call fcn.14023d740
mov r13d, 0xb
cmp qword [rsi + 0xa8], 0
jne 0x14033aa29
cmp r13d, 0xc0a
je 0x14033aa29
mov ecx, r13d
lea r8, str.unknown_error
sub ecx, 0x64
je 0x14033aa0d
sub ecx, 1
je 0x14033aa04
cmp ecx, 0x19f
je 0x14033a9fb
movzx eax, r13b
cmp eax, 0x1d
jae 0x14033aa14
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x4a2b00]
test rcx, rcx
je 0x14033aa14
mov r8, rcx
jmp 0x14033aa14
lea r8, str.abort_due_to_ROLLBACK
jmp 0x14033aa14
lea r8, str.no_more_rows_available
jmp 0x14033aa14
lea r8, str.another_row_available
lea rdx, [0x1404a8f80]
mov rcx, rsi
call fcn.1403321f0
mov dword [rsi + 0x34], r13d
jmp 0x14033aa36
mov dword [rsi + 0x34], r13d
cmp r13d, 0xc0a
je 0x14033aa62
movzx eax, r13b
sub eax, 0xa
test eax, 0xfffffffb
jne 0x14033aa62
mov rcx, qword [r15]
mov rax, qword [rcx + 0x80]
test rax, rax
je 0x14033aa5c
xor r8d, r8d
xor edx, edx
call rax
jmp 0x14033aa5e
mov eax, edi
mov dword [r15 + 0x5c], eax
mov r9, qword [rsi + 0xf8]
mov rcx, r14
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [rsi + 0xa8]
mov ecx, r13d
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.14023d740
cmp byte [rsi + 0xc5], 2
jne 0x14033aab8
mov rcx, rsi
call fcn.14033b8a0
cmp r13d, 0xc0a
jne 0x14033aacb
mov rcx, r15
call fcn.140318740
jmp 0x14033aae6
cmp r13d, 0xb
jne 0x14033aae6
cmp byte [r15 + 0x65], 0
jne 0x14033aae6
movabs rax, 0x200000000
or qword [r15 + 0x30], rax
movzx eax, byte [rbp - 0x70]
mov r13d, ebx
test al, al
je 0x1403354c2
cmp eax, 1
jb 0x14033ab20
mov ecx, eax
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax - 8]
or word [rcx + 0x72], 8
mov rax, qword [r15 + 0x20]
mov rcx, qword [rax + 0x38]
or word [rcx + 0x72], 8
and dword [r15 + 0x2c], 0xffffffef
cmp dword [r15 + 0x48], 0
jne 0x1403354c2
cmp dword [r15 + 0x28], 0
jle 0x1403354c2
xor eax, eax
mov ebx, eax
nop word [rax + rax]
mov rax, qword [r15 + 0x20]
mov rcx, qword [rbx + rax + 0x18]
test byte [rcx + 0x72], 8
je 0x14033ab54
call fcn.1403258f0
inc edi
add rbx, 0x20
cmp edi, dword [r15 + 0x28]
jl 0x14033ab40
jmp 0x1403354c2
mov r13d, dword [rsp + 0x50]
mov r14, rdi
jmp 0x1403354bd
add dword [rsi + 0xe4], ebx
cmp dword [rsi + 0xd0], 0
movaps xmm6, xmmword [rsp + 0x3f0]
mov r15, qword [rsp + 0x400]
mov r14, qword [rsp + 0x408]
mov r12, qword [rsp + 0x448]
mov rdi, qword [rsp + 0x440]
mov rbx, qword [rsp + 0x438]
je 0x14033abb9
mov rcx, rsi
call fcn.140353430
mov eax, r13d
mov rcx, qword [rbp + 0x2e8]
xor rcx, rsp
call fcn.1403c3c50
add rsp, 0x410
pop r13
pop rsi
pop rbp
ret