Function at 0x140145050
Capabilities:
Reference sql statements
Resolve function by parsing pe exports

Disassembly:
mov r11, rsp
push rbp
push rbx
lea rbp, [r11 - 0x2a8]
sub rsp, 0x398
mov rax, qword [0x14029fbf8]
xor rax, rsp
mov qword [rbp + 0x260], rax
mov qword [r11 + 0x10], rsi
mov rax, rcx
mov qword [r11 + 0x18], rdi
xor edx, edx
mov qword [r11 + 0x20], r12
mov edi, edx
mov qword [rsp + 0x48], rcx
mov ebx, edx
mov rcx, qword [rcx + 0x88]
mov r12, qword [rax]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x38], rcx
xor cl, cl
mov qword [r11 - 0x18], r13
movzx esi, byte [r12 + 0x5e]
mov qword [r11 - 0x20], r14
mov r14, qword [rax + 0x68]
mov byte [rsp + 0x70], cl
mov rcx, rax
mov byte [rsp + 0x30], sil
mov qword [r11 - 0x28], r15
mov dword [rsp + 0x40], edx
mov qword [rsp + 0x68], r12
mov dword [rsp + 0x50], edx
mov dword [rbp - 0x64], edx
mov qword [rsp + 0x60], r14
call fcn.140144f00
mov eax, 0xffffffff
mov r11, qword [rsp + 0x48]
cmp qword [r12 + 0x1e0], rbx
je 0x140145112
mov r13d, dword [r12 + 0x1f0]
xor edx, edx
mov eax, dword [r11 + 0xe4]
div r13d
sub r13d, edx
mov dword [rsp + 0x54], r13d
jmp 0x140145119
mov r13d, eax
mov dword [rsp + 0x54], eax
cmp dword [r11 + 0x38], 7
mov r8d, 1
movaps xmmword [rsp + 0x370], xmm6
je 0x14014c3fd
xor r10d, r10d
mov dword [r11 + 0x38], r10d
mov qword [r11 + 0x48], r10
mov qword [r11 + 0xa0], r10
mov dword [r12 + 0x268], r10d
mov eax, dword [r12 + 0x170]
test eax, eax
jne 0x14014c3c4
movsxd rax, dword [r11 + 0x34]
xorps xmm6, xmm6
mov r9, qword [rsp + 0x58]
mov edx, dword [rbp - 0x30]
mov dword [rbp - 0x70], edx
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
lea rcx, [0x140000000]
inc ebx
mov qword [rsp + 0x38], r15
mov dword [rbp - 0x64], ebx
movzx ebx, byte [r15]
cmp ebx, 0xaa
ja case.default.0x1401451a8
mov ecx, dword [rcx + rbx*4 + 0x14c5d8]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
sub rcx, r9
imul r8, rax, 0x38
mov eax, 4
mov word [r8 + r14 + 8], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, edx
mov qword [r8 + r14], rax
jmp 0x140146a51
movsxd rax, dword [r15 + 4]
imul rdx, rax, 0x38
add rdx, r14
mov rax, qword [rdx]
lea rcx, [rax + rax*2]
mov eax, 0x80
mov word [rdx + 8], ax
lea r15, [r9 + rcx*8]
jmp case.0x1401451a8.85
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
mov eax, dword [r15 + 0xc]
dec eax
cdqe
mov qword [rcx + r14], rax
mov eax, 4
mov word [rcx + r14 + 8], ax
cmp dword [r15 + 8], 0
jne 0x1401483ac
jmp case.0x1401451a8.85
movsxd rax, dword [r15 + 4]
imul rdx, rax, 0x38
add rdx, r14
mov rax, qword [rdx]
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
cdqe
jmp 0x1401451ff
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 4]
sub rbx, r9
imul r8, rax, 0x38
mov eax, 4
mov word [r8 + r14 + 8], ax
movabs rax, 0x2aaaaaaaaaaaaaab
movsxd rcx, dword [r8 + r14]
imul rbx
lea rcx, [rcx + rcx*2]
sar rdx, 2
lea r15, [r9 + rcx*8]
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, edx
mov qword [r8 + r14], rax
jmp 0x140145aa7
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
je case.0x1401451a8.85
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r9
imul rcx
mov rbx, rdx
mov rdx, qword [rsp + 0x38]
sar rbx, 2
mov rax, rbx
shr rax, 0x3f
add rbx, rax
mov eax, dword [rdx + 4]
test eax, eax
jne 0x14014bc4b
mov rcx, qword [r11 + 0x100]
test rcx, rcx
je 0x14014bc4b
mov rax, qword [rcx + 8]
mov qword [r11 + 0x100], rax
dec dword [r11 + 0x110]
mov eax, dword [r11 + 0x3c]
mov dword [r12 + 0x74], eax
add dword [r12 + 0x78], eax
call fcn.14014d2a0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov r9, qword [r11 + 0x88]
cmp dword [r15 + 8], 4
mov qword [rsp + 0x58], r9
jne 0x140145356
cdqe
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
mov r14, qword [r11 + 0x68]
cdqe
mov qword [rsp + 0x60], r14
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp 0x140145aa4
movsxd rax, dword [r15 + 8]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, qword [r11 + 0x68]
test word [rcx + 8], ax
je 0x1401453aa
call fcn.140102980
mov r11, qword [rsp + 0x48]
mov rcx, rax
movsxd rax, dword [r15 + 4]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov qword [rcx], rax
lea r8d, [r10 + 1]
jmp case.0x1401451a8.85
mov eax, 4
mov word [rcx + 8], ax
movsxd rax, dword [r15 + 4]
mov qword [rcx], rax
jmp case.0x1401451a8.85
movsxd rax, dword [r15 + 8]
imul rdx, rax, 0x38
mov eax, 0x2400
add rdx, qword [r11 + 0x68]
test word [rdx + 8], ax
je 0x140145401
mov rcx, rdx
call fcn.140102980
mov r11, qword [rsp + 0x48]
mov rdx, rax
mov rax, qword [r15 + 0x10]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov rcx, qword [rax]
lea r8d, [r10 + 1]
mov qword [rdx], rcx
jmp case.0x1401451a8.85
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [r15 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp case.0x1401451a8.85
movsxd rax, dword [r15 + 8]
imul rdx, rax, 0x38
mov eax, 0x2400
add rdx, qword [r11 + 0x68]
test word [rdx + 8], ax
je 0x14014544c
mov rcx, rdx
call fcn.140102980
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov rdx, rax
lea r8d, [r10 + 1]
mov eax, 8
mov word [rdx + 8], ax
mov rax, qword [r15 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp case.0x1401451a8.85
movsxd rax, dword [r15 + 8]
mov r13d, 0x2400
imul rsi, rax, 0x38
add rsi, qword [r11 + 0x68]
test word [rsi + 8], r13w
je 0x140145491
mov rcx, rsi
call fcn.140102980
xor r10d, r10d
mov rsi, rax
lea r8d, [r10 + 1]
jmp 0x14014549a
mov eax, 4
mov word [rsi + 8], ax
mov r11, qword [rsp + 0x38]
mov rcx, qword [r11 + 0x10]
test rcx, rcx
jne 0x1401454ad
mov eax, r10d
jmp 0x1401454c2
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1401454b4
and eax, 0x3fffffff
movzx ebx, byte [rsp + 0x30]
mov dword [r11 + 4], eax
cmp bl, 1
je 0x1401455ca
mov rdi, rcx
test rcx, rcx
jne 0x1401454f4
test word [rsi + 8], r13w
je 0x1401454ed
mov rcx, rsi
call fcn.140160bb0
jmp 0x14014555f
mov word [rsi + 8], r8w
jmp 0x14014555f
mov rax, qword [rsi + 0x28]
test rax, rax
je 0x140145503
mov r14d, dword [rax + 0x7c]
jmp 0x140145509
mov r14d, 0x3b9aca00
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rcx + rbx], 0
jne 0x140145510
btr ebx, 0x1f
test word [rsi + 8], r13w
jne 0x14014552a
cmp dword [rsi + 0x20], 0
je 0x140145532
mov rcx, rsi
call fcn.140160ae0
mov qword [rsi + 0x10], rdi
xor edx, edx
mov qword [rsi + 0x30], rdx
mov eax, 0xa02
mov dword [rsi + 0xc], ebx
mov word [rsi + 8], ax
mov byte [rsi + 0xa], 1
cmp ebx, r14d
jg 0x14014c0e9
mov r14, qword [rsp + 0x60]
movzx ebx, byte [rsp + 0x30]
test byte [rsi + 8], 2
je 0x14014557d
cmp byte [rsi + 0xa], bl
je 0x14014557d
movzx edx, bl
mov rcx, rsi
call fcn.14014f4a0
test eax, eax
jne 0x14014c3fd
mov r11, qword [rsp + 0x38]
xor r10d, r10d
mov dword [rsi + 0x20], r10d
mov eax, 0x800
or word [rsi + 8], ax
cmp byte [r11 + 1], 0xf9
jne 0x1401455ad
mov rdx, qword [r11 + 0x10]
mov rcx, r12
call fcn.14011b8c0
mov r11, qword [rsp + 0x38]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov byte [r11 + 1], 0xf9
mov rax, qword [rsi + 0x10]
mov qword [r11 + 0x10], rax
mov eax, dword [rsi + 0xc]
mov dword [r11 + 4], eax
mov dword [rsp + 0x40], r10d
cmp eax, dword [r12 + 0x7c]
jg 0x14014c0e9
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
mov byte [r11], 0x47
mov r11, qword [rsp + 0x48]
jmp 0x1401455f0
mov r13d, 0x2400
movsxd rax, dword [r15 + 8]
imul rdx, rax, 0x38
add rdx, qword [r11 + 0x68]
test word [rdx + 8], r13w
je 0x140145613
mov rcx, rdx
call fcn.140102980
mov r11, qword [rsp + 0x48]
mov rdx, rax
mov eax, 0xa02
xor r10d, r10d
mov word [rdx + 8], ax
mov rax, qword [r15 + 0x10]
mov qword [rdx + 0x10], rax
mov eax, dword [r15 + 4]
mov dword [rdx + 0xc], eax
mov byte [rdx + 0xa], sil
movsxd rax, dword [r15 + 0xc]
test eax, eax
jle 0x14014b9ec
imul rcx, rax, 0x38
movzx eax, word [r15 + 2]
cmp qword [rcx + r14], rax
jne 0x14014b9ec
mov r9, qword [rsp + 0x58]
mov eax, 0xa10
mov word [rdx + 8], ax
jmp 0x140145aa7
mov rbx, qword [rsp + 0x38]
mov r13d, 0x2400
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [r11 + 0x68]
test word [rcx + 8], r13w
je 0x140145698
call fcn.140102980
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov rcx, rax
lea r8d, [r10 + 1]
jmp 0x1401456a1
mov eax, 4
mov word [rcx + 8], ax
cmp dword [rbx + 4], 0
mov esi, r8d
mov edi, dword [rbx + 0xc]
mov edx, 0x101
mov eax, dword [rbx + 8]
cmovne si, dx
sub edi, eax
mov word [rcx + 8], si
mov dword [rcx + 0xc], r10d
lea rbx, [rcx + 8]
test edi, edi
jle 0x14014ba63
nop dword [rax]
test word [rbx + 0x38], r13w
lea rbx, [rbx + 0x38]
je 0x1401456e7
lea rcx, [rbx - 8]
call fcn.140160bb0
xor r10d, r10d
dec edi
mov word [rbx], si
mov dword [rbx + 4], r10d
test edi, edi
jg 0x1401456d0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp 0x140145aa7
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
mov eax, 0xff41
add rcx, r14
and word [rcx + 8], ax
or word [rcx + 8], 1
jmp case.0x1401451a8.85
mov rbx, qword [rsp + 0x38]
mov r13d, 0x2400
movsxd rax, dword [rbx + 8]
imul r14, rax, 0x38
add r14, qword [r11 + 0x68]
test word [r14 + 8], r13w
je 0x140145761
mov rcx, r14
call fcn.140102980
xor r10d, r10d
mov r14, rax
lea r8d, [r10 + 1]
jmp 0x14014576b
mov eax, 4
mov word [r14 + 8], ax
mov rdi, qword [rbx + 0x10]
mov ebx, dword [rbx + 4]
test rdi, rdi
jne 0x140145795
test word [r14 + 8], r13w
je 0x14014578b
mov rcx, r14
call fcn.140160bb0
jmp 0x140145815
mov word [r14 + 8], r8w
jmp 0x14014581b
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x1401457a3
mov ecx, dword [rax + 0x7c]
jmp 0x1401457a8
mov ecx, 0x3b9aca00
mov esi, 0x10
test ebx, ebx
jns 0x1401457df
movsxd rdx, ecx
mov ebx, r10d
test ecx, ecx
js 0x1401457da
mov rcx, rdi
nop
movzx eax, byte [rcx + 1]
or al, byte [rcx]
je 0x1401457da
add rcx, 2
add ebx, 2
mov rax, rcx
sub rax, rdi
cmp rax, rdx
jle 0x1401457c0
mov esi, 0x210
test word [r14 + 8], r13w
jne 0x1401457ed
cmp dword [r14 + 0x20], 0
je 0x1401457f5
mov rcx, r14
call fcn.140160ae0
mov qword [r14 + 0x10], rdi
xor edx, edx
mov qword [r14 + 0x30], rdx
mov eax, 0x800
or si, ax
mov dword [r14 + 0xc], ebx
mov word [r14 + 8], si
movzx esi, byte [rsp + 0x30]
mov r8d, 1
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov byte [r14 + 0xa], sil
mov r14, qword [rsp + 0x60]
jmp case.0x1401451a8.85
mov rbx, qword [rsp + 0x38]
mov rsi, qword [r11 + 0x80]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movzx eax, word [rdi + rsi - 0x30]
test al, 0x12
je 0x14014587c
mov ecx, dword [rdi + rsi - 0x2c]
mov edx, 0x4000
test dx, ax
je 0x14014586e
add ecx, dword [rdi + rsi - 0x38]
mov rax, qword [rdi + rsi - 0x10]
cmp ecx, dword [rax + 0x7c]
jg 0x14014c0ee
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x2400
add rbx, r14
test word [rbx + 8], ax
je 0x1401458ab
mov rcx, rbx
call fcn.140160bb0
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
lea r8d, [r10 + 1]
movups xmm0, xmmword [rdi + rsi - 0x38]
mov r15, qword [rsp + 0x38]
mov ecx, 0xebff
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + rsi - 0x28]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 8]
and ax, cx
mov ecx, 0x840
or ax, cx
mov word [rbx + 8], ax
jmp case.0x1401451a8.85
mov rcx, qword [rsp + 0x38]
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 rdx, rdi
mov rcx, rbx
call fcn.14014ed00
mov eax, 0x1000
test word [rbx + 8], ax
je 0x140145936
mov rcx, rbx
call fcn.14014eca0
test eax, eax
jne 0x14014c3fd
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x140145910
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
jmp 0x140145a96
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rdi, r14
imul rbx, rax, 0x38
add rbx, r14
mov r14d, 0x1000
nop word [rax + rax]
mov r8d, r14d
mov rdx, rdi
mov rcx, rbx
call fcn.14014f300
test word [rbx + 8], r14w
je 0x1401459a5
mov rcx, rbx
call fcn.14014eca0
test eax, eax
jne 0x14014c3fd
mov eax, esi
dec esi
test eax, eax
je 0x14014b9d6
add rbx, 0x38
add rdi, 0x38
jmp 0x140145980
mov rcx, qword [rsp + 0x38]
mov r8d, 0x1000
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r14
add rcx, r14
call fcn.14014f300
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov rcx, qword [rsp + 0x38]
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, 0x2400
test word [r8 + 8], cx
je 0x140145a2f
mov rdx, rax
mov rcx, r8
call fcn.140161c80
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov r15, qword [rsp + 0x38]
mov qword [r8], rax
mov eax, 4
mov word [r8 + 8], ax
jmp 0x140145aa7
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 0xc]
add r15, r14
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
movzx r14d, word [r15 + 8]
movzx eax, byte [rdi + 8]
or al, r14b
test al, 1
je 0x140145adf
mov eax, 0x2400
test word [rbx + 8], ax
je 0x140145aca
mov rcx, rbx
call fcn.140160bb0
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
xor r10d, r10d
mov r8d, 1
lea rcx, [0x140000000]
mov r12, qword [rsp + 0x68]
add r15, 0x18
mov r13d, dword [rsp + 0x54]
mov ebx, dword [rbp - 0x64]
jmp 0x14014517d
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
mov edi, dword [rsp + 0x50]
mov word [rbx + 8], r8w
jmp case.0x1401451a8.85
test r14b, 0x12
jne 0x140145b12
xor r8d, r8d
movzx edx, sil
mov rcx, r15
call fcn.14014f340
test eax, eax
jne 0x14014c3fd
movzx r14d, word [r15 + 8]
mov r13d, 0xfffd
and r14w, r13w
mov eax, 0x4000
jmp 0x140145b2d
mov eax, 0x4000
test ax, r14w
je 0x140145b27
mov rcx, r15
call fcn.14014e760
jmp 0x140145af4
mov r13d, 0xfffd
movzx esi, word [rdi + 8]
test sil, 0x12
jne 0x140145b49
movzx edx, byte [rsp + 0x30]
xor r8d, r8d
mov rcx, rdi
call fcn.14014f340
jmp 0x140145b56
test ax, si
je 0x140145b66
mov rcx, rdi
call fcn.14014e760
test eax, eax
jne 0x14014c3fd
movzx esi, word [rdi + 8]
and si, r13w
mov r8, qword [rsp + 0x68]
mov r13d, dword [rdi + 0xc]
add r13d, dword [r15 + 0xc]
movsxd r12, r13d
movsxd rax, dword [r8 + 0x7c]
cmp r12, rax
jg 0x14014c0e6
xor edx, edx
mov rcx, rbx
mov r8d, edx
cmp rbx, rdi
lea edx, [r13 + 3]
sete r8b
call fcn.14014ea40
test eax, eax
jne 0x14014c3f8
mov eax, 0x3e40
and word [rbx + 8], ax
or word [rbx + 8], 2
cmp rbx, rdi
je 0x140145bcb
movsxd r8, dword [rdi + 0xc]
mov rdx, qword [rdi + 0x10]
mov rcx, qword [rbx + 0x10]
call fcn.14019bf80
mov word [rdi + 8], si
movsxd rcx, dword [rdi + 0xc]
add rcx, qword [rbx + 0x10]
movsxd r8, dword [r15 + 0xc]
mov rdx, qword [r15 + 0x10]
call fcn.14019bf80
movzx esi, byte [rsp + 0x30]
mov word [r15 + 8], r14w
mov rax, qword [rbx + 0x10]
mov byte [r12 + rax], 0
mov rax, qword [rbx + 0x10]
mov byte [r12 + rax + 1], 0
mov rax, qword [rbx + 0x10]
mov byte [r12 + rax + 2], 0
mov eax, 0x200
or word [rbx + 8], ax
mov dword [rbx + 0xc], r13d
mov byte [rbx + 0xa], sil
jmp 0x140145a8c
mov r11, qword [rsp + 0x38]
movsxd rax, dword [r11 + 4]
imul rsi, rax, 0x38
add rsi, r14
movzx eax, word [rsi + 8]
movzx ebx, ax
and bx, 0x2c
jne 0x140145c56
test al, 0x12
je 0x140145c53
mov rcx, rsi
call fcn.1400eefe0
mov r11, qword [rsp + 0x38]
movzx ebx, ax
xor r10d, r10d
jmp 0x140145c56
mov ebx, r10d
movsxd rax, dword [r11 + 8]
imul rdi, rax, 0x38
add rdi, r14
movzx edx, word [rdi + 8]
test dl, 0x2c
je 0x140145c70
movzx r8d, dx
jmp 0x140145c8f
test dl, 0x12
je 0x140145c8c
mov rcx, rdi
call fcn.1400eefe0
movzx edx, word [rdi + 8]
movzx r8d, ax
mov r11, qword [rsp + 0x38]
jmp 0x140145c8f
mov r8d, r10d
movsxd rax, dword [r11 + 0xc]
and r8b, bl
movzx r10d, word [rsi + 8]
imul rcx, rax, 0x38
movzx eax, r10w
add r14, rcx
or ax, dx
test r8b, 4
je 0x140145eb7
movzx ecx, byte [r11]
mov r9, qword [rsi]
mov r8, qword [rdi]
sub ecx, 0x69
je 0x140145e4e
sub ecx, 1
je 0x140145dd0
sub ecx, 1
je 0x140145d32
cmp ecx, 1
je 0x140145d00
test r9, r9
je 0x140145ff8
cmp r9, 0xffffffffffffffff
mov rax, r8
mov r12d, 1
cqo
cmove r9, r12
idiv r9
mov r8, rdx
jmp 0x140145e8a
test r9, r9
je 0x140145ff8
cmp r9, 0xffffffffffffffff
jne 0x140145d22
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x140145ebf
mov rax, r8
cqo
idiv r9
mov r8, rax
jmp 0x140145e8a
test r9, r9
jle 0x140145d68
movabs rax, 0x7fffffffffffffff
cqo
idiv r9
cmp r8, rax
jg 0x140145ebf
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jge 0x140145dc7
jmp 0x140145ebf
jns 0x140145dc7
test r8, r8
jle 0x140145d88
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jge 0x140145dc7
jmp 0x140145ebf
jns 0x140145dc7
movabs rax, 0x8000000000000000
cmp r9, rax
je 0x140145ebf
cmp r8, rax
je 0x140145ebf
movabs rax, 0x8000000000000001
cqo
idiv r9
mov rcx, rax
mov rax, r8
neg rax
cmp rax, rcx
jg 0x140145ebf
imul r8, r9
jmp 0x140145e8a
movabs rax, 0x8000000000000000
cmp r9, rax
jne 0x140145df0
test r8, r8
jns 0x140145ebf
sub r8, rax
jmp 0x140145e8a
neg r9
js 0x140145e17
test r8, r8
jle 0x140145e3d
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x140145e3d
mov r12d, 1
mov eax, r12d
jmp 0x140145e48
test r8, r8
jns 0x140145e3d
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x140145e3d
mov r12d, 1
mov eax, r12d
jmp 0x140145e48
add r8, r9
xor edx, edx
mov eax, edx
lea r12d, [rdx + 1]
test eax, eax
jne 0x140145ec5
jmp 0x140145e8a
test r9, r9
js 0x140145e6c
test r8, r8
jle 0x140145e87
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x140145e87
jmp 0x140145ebf
test r8, r8
jns 0x140145e87
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jg 0x140145ebf
add r8, r9
mov r15, qword [rsp + 0x38]
mov ecx, 0x3e40
movzx esi, byte [rsp + 0x30]
mov qword [r14], r8
movzx eax, word [r14 + 8]
and ax, cx
or ax, 4
mov word [r14 + 8], ax
mov r14, qword [rsp + 0x60]
jmp 0x140145a96
test al, 1
jne 0x140145ff8
mov r12d, 1
test r10b, 8
je 0x140145ed1
movsd xmm2, qword [rsi]
jmp 0x140145efc
test r10b, 0x24
je 0x140145ee1
xorps xmm2, xmm2
cvtsi2sd xmm2, qword [rsi]
jmp 0x140145efc
test r10b, 0x12
je 0x140145ef9
mov rcx, rsi
call fcn.1400ff8e0
mov r11, qword [rsp + 0x38]
movaps xmm2, xmm0
jmp 0x140145efc
movaps xmm2, xmm6
movzx eax, word [rdi + 8]
test al, 8
je 0x140145f0a
movsd xmm0, qword [rdi]
jmp 0x140145f2e
test al, 0x24
je 0x140145f18
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rdi]
jmp 0x140145f2e
test al, 0x12
je 0x140145f2b
mov rcx, rdi
call fcn.1400ff8e0
mov r11, qword [rsp + 0x38]
jmp 0x140145f2e
movaps xmm0, xmm6
movzx ecx, byte [r11]
sub ecx, 0x69
je 0x140145f93
sub ecx, 1
je 0x140145f8d
sub ecx, 1
je 0x140145f87
cmp ecx, 1
je 0x140145f79
mov rcx, rsi
call fcn.14014db50
mov rcx, rdi
mov rbx, rax
call fcn.14014db50
test rbx, rbx
je 0x140145ff8
cmp rbx, 0xffffffffffffffff
cqo
xorps xmm0, xmm0
cmove rbx, r12
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x140145f97
ucomisd xmm2, xmm6
jp 0x140145f81
je 0x140145ff8
divsd xmm0, xmm2
jmp 0x140145f97
mulsd xmm0, xmm2
jmp 0x140145f97
subsd xmm0, xmm2
jmp 0x140145f97
addsd xmm0, xmm2
movabs rcx, 0xfffffffffffff
movsd qword [rsp + 0x78], xmm0
mov rax, qword [rsp + 0x78]
movabs rdx, 0x7ff0000000000000
test rcx, rax
setne cl
and rax, rdx
cmp rax, rdx
sete al
test al, cl
jne 0x140145ff8
mov r15, qword [rsp + 0x38]
mov ecx, 0x3e40
movzx esi, byte [rsp + 0x30]
movsd qword [r14], xmm0
movzx eax, word [r14 + 8]
and ax, cx
or ax, 8
mov word [r14 + 8], ax
mov r14, qword [rsp + 0x60]
jmp 0x140145a96
mov eax, 0x2400
test word [r14 + 8], ax
je 0x140146020
mov rcx, r14
call fcn.140160bb0
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
jmp 0x140145a96
mov r11, qword [rsp + 0x48]
mov r8d, 1
mov r15, qword [rsp + 0x38]
xor r10d, r10d
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov word [r14 + 8], r8w
mov r14, qword [rsp + 0x60]
jmp case.0x1401451a8.85
movsxd rax, dword [r15 + 4]
test eax, eax
je case.0x1401451a8.85
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x14014607f
xor edx, edx
call fcn.140161c80
mov r11, qword [rsp + 0x48]
jmp 0x140145a9f
mov eax, 4
mov qword [rcx], r10
mov word [rcx + 8], ax
jmp case.0x1401451a8.85
mov rcx, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
movsxd rax, dword [r15 + 0xc]
add rdi, r14
imul rsi, rax, 0x38
add rcx, r14
add rsi, r14
movzx eax, byte [rcx + 8]
or al, byte [rdi + 8]
test al, 1
je 0x1401460f6
mov eax, 0x2400
test word [rsi + 8], ax
je 0x1401460e3
mov rcx, rsi
call fcn.140160bb0
movzx esi, byte [rsp + 0x30]
jmp 0x140145a96
mov edi, dword [rsp + 0x50]
mov word [rsi + 8], r8w
movzx esi, byte [rsp + 0x30]
jmp case.0x1401451a8.85
call fcn.14014db50
mov rcx, rdi
mov rbx, rax
call fcn.14014db50
movzx edx, byte [r15]
mov rcx, rax
cmp dl, 0x65
jne 0x140146117
and rbx, rax
jmp 0x14014618c
cmp dl, 0x66
jne 0x140146121
or rbx, rcx
jmp 0x14014618c
test rcx, rcx
je 0x14014618c
jns 0x14014613b
mov eax, 0xcf
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x140146141
neg rcx
cmp rcx, 0x40
jl 0x14014615a
test rbx, rbx
jns 0x140146154
cmp dl, 0x67
je 0x140146154
mov rbx, 0xffffffffffffffff
jmp 0x14014618c
xor edx, edx
mov ebx, edx
jmp 0x14014618c
cmp dl, 0x67
jne 0x140146167
shl rbx, cl
mov r8, rbx
jmp 0x140146189
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x140146189
mov eax, 0x40
mov rdx, 0xffffffffffffffff
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
mov qword [rsi], rbx
mov eax, 0x3e40
and word [rsi + 8], ax
or word [rsi + 8], 4
movzx esi, byte [rsp + 0x30]
jmp 0x140145a96
movsxd rax, dword [r15 + 4]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.14014ec40
movsxd rax, dword [r15 + 8]
add qword [rbx], rax
mov r11, qword [rsp + 0x48]
jmp 0x140145a9f
movsxd rax, dword [r15 + 4]
imul rbx, rax, 0x38
add rbx, r14
movzx eax, word [rbx + 8]
test al, 4
jne 0x140146229
test al, 8
jne 0x140146204
test al, 2
je 0x14014620c
mov edx, r8d
mov rcx, rbx
call fcn.1400e6210
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
lea r8d, [r10 + 1]
jmp 0x14014620c
mov rcx, rbx
call fcn.14014db80
movzx eax, word [rbx + 8]
test al, 4
jne 0x140146229
cmp dword [r15 + 8], 0
jne 0x140146a57
mov eax, 0x14
jmp 0x14014bfa5
mov ecx, 0x3e40
and ax, cx
or ax, 4
mov word [rbx + 8], ax
jmp case.0x1401451a8.85
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
add rcx, r14
test byte [rcx + 8], 0x24
je case.0x1401451a8.85
call fcn.14014ee50
mov r11, qword [rsp + 0x48]
jmp 0x140145a9f
movsxd rax, dword [r15 + 4]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, r14
test word [rbx + 8], ax
je 0x140146288
mov rcx, rbx
call fcn.14014e760
test eax, eax
jne 0x14014bfa5
movzx edx, byte [r15 + 8]
movzx r8d, sil
mov rcx, rbx
call fcn.14014e5a0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bfa5
mov r11, qword [rsp + 0x48]
jmp 0x140145a9f
mov rcx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul r14, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
movzx ebx, word [rcx + r8 + 8]
lea rsi, [rcx + r8]
add r14, r8
movzx edx, bx
movzx edi, word [r14 + 8]
or dx, di
test dl, 1
je 0x14014637a
movzx eax, word [r15 + 2]
test al, al
jns 0x140146329
movzx eax, bl
and al, dil
test al, 1
je 0x140146314
mov eax, 0x100
test ax, bx
jne 0x140146314
mov eax, r10d
jmp 0x140146495
movzx eax, bx
not ax
and eax, 1
lea eax, [rax*2 - 1]
jmp 0x140146495
test al, 0x20
je 0x140146361
movsxd rax, dword [r15 + 8]
mov r14, r8
movzx esi, byte [rsp + 0x30]
imul rcx, rax, 0x38
mov eax, 0x3e40
add rcx, r8
mov r8d, 1
mov edi, r8d
mov dword [rsp + 0x50], r8d
and word [rcx + 8], ax
or word [rcx + 8], r8w
jmp case.0x1401451a8.85
test al, 0x10
jne 0x140146a51
movzx esi, byte [rsp + 0x30]
mov r14, r8
mov edi, dword [rsp + 0x50]
jmp 0x140145aa7
movzx eax, byte [r15 + 2]
and al, 0x47
cmp al, 0x43
jb 0x140146404
movzx ecx, bx
test dl, 2
je 0x1401463bf
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x1401463a5
xor edx, edx
mov rcx, r14
call fcn.1400e6210
movzx ebx, word [rsi + 8]
movzx eax, bl
movzx ecx, bx
and al, 0x2e
cmp al, 2
jne 0x1401463bf
xor edx, edx
mov rcx, rsi
call fcn.1400e6210
movzx ecx, word [rsi + 8]
movzx eax, byte [r14 + 8]
and al, cl
test al, 4
je 0x140146479
mov rcx, qword [rsi]
xor r10d, r10d
mov rdx, qword [r14]
mov r8d, 1
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
cmp rcx, rdx
jle 0x1401463f4
mov eax, r8d
jmp 0x14014649b
cmp rcx, rdx
mov eax, r10d
setge al
dec eax
jmp 0x14014649b
cmp al, 0x42
jne 0x140146479
movzx r12d, byte [rsp + 0x30]
test dil, 2
jne 0x14014644c
test dil, 0x2c
je 0x14014644c
mov r8b, 1
movzx edx, r12b
mov rcx, r14
call fcn.14014f340
movzx eax, word [r14 + 8]
mov r13d, 0x3e40
xor ax, di
and ax, r13w
xor di, ax
cmp r14, rsi
jne 0x140146452
movzx ebx, di
or bx, 2
jmp 0x140146452
mov r13d, 0x3e40
test bl, 2
jne 0x140146479
test bl, 0x2c
je 0x140146479
mov r8b, 1
movzx edx, r12b
mov rcx, rsi
call fcn.14014f340
movzx eax, bx
xor ax, word [rsi + 8]
and ax, r13w
xor bx, ax
mov r8, qword [r15 + 0x10]
mov rdx, r14
mov rcx, rsi
call fcn.14012ff50
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov r8d, 1
movzx ecx, byte [r15]
lea rdx, [0x140000000]
test eax, eax
jns 0x1401464b4
movzx ecx, byte [rcx + rdx + 0x220034]
jmp 0x1401464c8
jne 0x1401464c0
movzx ecx, byte [rcx + rdx + 0x22071c]
jmp 0x1401464c8
movzx ecx, byte [rcx + rdx + 0x220724]
mov word [rsi + 8], bx
mov word [r14 + 8], di
movzx edx, cl
movzx ecx, word [r15 + 2]
test cl, 0x20
je 0x140146526
mov dword [rsp + 0x50], eax
mov edi, eax
test cl, 8
je 0x1401464fb
cmp byte [r15], 0x35
mov eax, r10d
sete al
cmp eax, edx
je 0x14014b9e7
movsxd rax, dword [r15 + 8]
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
imul rcx, rax, 0x38
mov eax, 0x3e40
add rcx, r14
and word [rcx + 8], ax
or word [rcx + 8], 4
mov qword [rcx], rdx
jmp case.0x1401451a8.85
test edx, edx
jne 0x1401483ac
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
jmp case.0x1401451a8.85
test edi, edi
jne 0x140146a57
jmp case.0x1401451a8.85
mov rax, qword [rsp + 0x38]
test byte [rax + 2], 1
jne 0x14014655e
mov r13, r10
jmp 0x140146566
mov r13, qword [rax - 8]
add r13, 4
mov rdx, qword [rax + 0x10]
mov esi, r10d
mov r8d, dword [rax + 4]
mov rbx, r10
mov r9d, dword [rax + 8]
movsxd rax, dword [rax + 0xc]
mov qword [rsp + 0x78], rdx
mov dword [rbp - 0x60], r8d
mov dword [rbp - 0x80], r9d
mov qword [rbp - 0x78], rax
test rax, rax
jle 0x14014bc37
lea r12, [rdx + 0x20]
nop word [rax + rax]
test r13, r13
je 0x1401465ac
mov ecx, dword [r13 + rbx*4]
jmp 0x1401465ae
mov ecx, esi
mov rax, qword [rdx + 0x18]
movzx edi, byte [rbx + rax]
lea eax, [rcx + r9]
movsxd r15, eax
and edi, 1
lea eax, [rcx + r8]
mov r8, qword [r12]
movsxd r14, eax
imul rcx, r14, 0x38
imul rdx, r15, 0x38
add rcx, qword [rsp + 0x60]
add rdx, qword [rsp + 0x60]
call fcn.14012ff50
mov dword [rsp + 0x50], eax
mov r8d, eax
test eax, eax
jne 0x140146624
mov rdx, qword [rsp + 0x78]
inc esi
mov r8d, dword [rbp - 0x60]
inc rbx
mov r9d, dword [rbp - 0x80]
add r12, 8
cmp rbx, qword [rbp - 0x78]
jl 0x1401465a0
mov r11, qword [rsp + 0x48]
mov edi, eax
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
jmp 0x140145a9f
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x14014665a
imul rax, r14, 0x38
mov r14, qword [rsp + 0x60]
test byte [rax + r14 + 8], 1
jne 0x140146650
imul rax, r15, 0x38
test byte [rax + r14 + 8], 1
je 0x14014665f
neg r8d
mov dword [rsp + 0x50], r8d
jmp 0x14014665f
mov r14, qword [rsp + 0x60]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
test edi, edi
je 0x14014b9c0
neg r8d
mov dword [rsp + 0x50], r8d
mov edi, r8d
jmp 0x140145a9f
mov r8d, dword [rsp + 0x50]
test r8d, r8d
jns 0x140146696
mov eax, dword [r15 + 4]
jmp 0x1401466a2
jne 0x14014669e
mov eax, dword [r15 + 8]
jmp 0x1401466a2
mov eax, dword [r15 + 0xc]
dec eax
mov edi, r8d
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r15, [r9 + rax*8]
jmp 0x140145aa7
mov r12, qword [rsp + 0x38]
mov r15d, 2
mov edx, r15d
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
add rcx, r14
call fcn.140144230
movsxd rcx, dword [r12 + 8]
mov edx, r15d
imul rcx, rcx, 0x38
mov ebx, eax
add rcx, r14
call fcn.140144230
lea rdx, [0x140000000]
lea eax, [rax + rbx*2]
add eax, ebx
cmp byte [r12], 0x2c
cdqe
jne 0x14014670b
movzx edx, byte [rax + rdx + 0x220760]
jmp 0x140146713
movzx edx, byte [rax + rdx + 0x220770]
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
cmp dl, r15b
jne 0x140146745
movzx eax, word [rcx + 8]
mov edx, 0x3e40
mov r11, qword [rsp + 0x48]
and ax, dx
or ax, 1
mov r15, r12
mov word [rcx + 8], ax
jmp 0x140145a9f
mov r11, qword [rsp + 0x48]
mov r15, r12
movzx eax, dl
mov edx, 0x3e40
mov qword [rcx], rax
movzx eax, word [rcx + 8]
and ax, dx
or ax, 4
mov word [rcx + 8], ax
jmp 0x140145a9f
mov r11, qword [rsp + 0x38]
movsxd rax, dword [r11 + 4]
mov edx, dword [r11 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
call fcn.140144230
movsxd rcx, eax
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 0x10]
movsxd rax, dword [rax + 8]
xor rdx, rcx
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x1401467be
call fcn.140161c80
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov r11, qword [rsp + 0x48]
mov eax, 4
mov r15, qword [rsp + 0x38]
mov qword [rcx], rdx
mov word [rcx + 8], ax
jmp 0x140145a9f
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rcx, r14
add rbx, r14
test byte [rcx + 8], 1
jne 0x140146851
xor edx, edx
call fcn.140144230
xor r10d, r10d
test eax, eax
mov ecx, r10d
mov eax, 0x2400
sete cl
test word [rbx + 8], ax
je 0x140146831
mov rdx, rcx
mov rcx, rbx
call fcn.140161c80
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov r11, qword [rsp + 0x48]
mov eax, 4
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x58]
mov qword [rbx], rcx
mov word [rbx + 8], ax
jmp 0x140145aa7
mov eax, 0x2400
test word [rbx + 8], ax
je 0x140146873
mov rcx, rbx
call fcn.140160bb0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov word [rbx + 8], r8w
mov r15, qword [rsp + 0x38]
jmp case.0x1401451a8.85
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rdi, r14
mov eax, 0x2400
add rbx, r14
test word [rbx + 8], ax
je 0x1401468ba
mov rcx, rbx
call fcn.140160bb0
mov r11, qword [rsp + 0x48]
xor r10d, r10d
jmp 0x1401468bf
mov word [rbx + 8], r8w
test byte [rdi + 8], 1
jne 0x14014b99e
mov eax, 4
mov rcx, rdi
mov word [rbx + 8], ax
call fcn.14014db50
not rax
mov qword [rbx], rax
jmp 0x140145a91
mov r8, qword [r11 + 0x100]
test r8, r8
je 0x140146950
mov r9, qword [r8 + 0x30]
mov rcx, r15
sub rcx, qword [r11 + 0x88]
movabs rax, 0x2aaaaaaaaaaaaaab
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 0x140146a4c
bts eax, edx
mov byte [rcx + r9], al
mov rcx, qword [r11 + 0x88]
mov r9, qword [rsp + 0x58]
mov eax, dword [rcx + 4]
mov dword [r15 + 4], eax
jmp 0x140145aa7
mov rcx, qword [r11 + 0x88]
mov eax, dword [r15 + 4]
cmp dword [rcx + 4], eax
je 0x140146a51
mov eax, dword [rcx + 4]
mov dword [r15 + 4], eax
jmp 0x140145aa7
mov r11, qword [rsp + 0x38]
movsxd rax, dword [r11 + 4]
mov edx, dword [r11 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
call fcn.140144230
mov r15, qword [rsp + 0x38]
xor r10d, r10d
lea r8d, [r10 + 1]
test eax, eax
jne 0x1401483ac
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
jmp case.0x1401451a8.85
mov rax, qword [rsp + 0x38]
mov edx, r10d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r14
call fcn.140144230
mov r15, qword [rsp + 0x38]
xor r10d, r10d
lea r8d, [r10 + 1]
test eax, eax
je 0x1401483ac
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
jmp case.0x1401451a8.85
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
jne 0x140146a57
jmp case.0x1401451a8.85
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
je 0x140146a57
jmp case.0x1401451a8.85
movsxd rcx, dword [r15 + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 2], 0
je case.0x1401451a8.85
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x140146a89
call fcn.140160bb0
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov r8d, 1
mov eax, dword [r15 + 8]
mov r14, qword [rsp + 0x60]
dec eax
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
cdqe
lea rcx, [rax + rax*2]
lea r11, [r9 + rcx*8]
mov qword [rsp + 0x38], r11
mov r15, qword [rsp + 0x38]
mov r11, qword [rsp + 0x48]
jmp case.0x1401451a8.85
mov word [rcx + 8], r8w
jmp 0x140146a57
movsxd rcx, dword [r15 + 4]
mov rax, qword [r11 + 0x78]
movsxd rsi, dword [r15 + 8]
mov dword [rbp - 0x60], esi
mov r14, qword [rax + rcx*8]
cmp byte [r14 + 3], 0
je 0x140146b4a
mov rcx, qword [r14 + 0x20]
test rcx, rcx
je 0x140146b40
mov edx, dword [rcx + rsi*4 + 4]
test edx, edx
jle 0x140146b40
cmp byte [r14 + 2], 0
jne 0x140146b40
mov r14, qword [r14 + 0x30]
lea esi, [rdx - 1]
mov dword [rbp - 0x60], esi
mov dword [rsp + 0x40], r10d
mov rax, qword [rsp + 0x38]
mov r8, qword [rsp + 0x60]
mov r12, qword [r14 + 0x60]
mov qword [rsp + 0x78], r12
movsxd rax, dword [rax + 0xc]
imul r15, rax, 0x38
mov eax, dword [r11 + 0x30]
add r15, r8
mov qword [rbp + 0x80], r15
cmp dword [r14 + 0x28], eax
je 0x140146c9e
cmp byte [r14 + 2], 0
je 0x140146bc5
cmp byte [r14], 3
jne 0x140146b79
movsxd rax, dword [r14 + 0x2c]
imul rcx, rax, 0x38
mov eax, dword [rcx + r8 + 0xc]
mov dword [r14 + 0x74], eax
mov dword [r14 + 0x70], eax
mov rax, qword [rcx + r8 + 0x10]
mov qword [r14 + 0x68], rax
jmp 0x140146c1d
mov rcx, r14
call fcn.14014d030
jmp 0x140146b5b
mov rax, qword [r14 + 0x38]
cmp byte [rax], 0
je 0x140146ad4
mov rcx, r14
call fcn.1400fc200
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bfa5
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
jmp 0x140146ad9
mov eax, 0x2400
test word [r15 + 8], ax
je 0x140146ba6
mov rcx, r15
call fcn.140160bb0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
jmp 0x140145a9f
mov r14, qword [rsp + 0x60]
mov r8d, 1
movzx esi, byte [rsp + 0x30]
mov word [r15 + 8], r8w
mov r15, qword [rsp + 0x38]
jmp case.0x1401451a8.85
mov rbx, qword [r14 + 0x38]
mov rcx, rbx
call fcn.1400fb5d0
mov eax, dword [rbx + 0x40]
mov dword [r14 + 0x70], eax
mov rax, qword [rbx + 0x88]
movzx ecx, word [rbx + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rbx + 0x38]
cmp ecx, edx
jle 0x140146bf9
mov ecx, edx
test edx, edx
mov edx, 0
cmovs ecx, edx
mov r8, qword [rsp + 0x68]
mov r11, qword [rsp + 0x48]
mov dword [r14 + 0x74], ecx
mov rax, qword [rbx + 0x38]
mov qword [r14 + 0x68], rax
mov eax, dword [r8 + 0x7c]
cmp dword [r14 + 0x70], eax
ja 0x14014c107
mov eax, dword [r11 + 0x30]
mov dword [r14 + 0x28], eax
mov rcx, qword [r14 + 0x68]
movzx eax, byte [rcx]
cmp al, 0x80
jae 0x140146c3b
movzx eax, al
mov dword [r12], eax
mov al, 1
jmp 0x140146c43
mov rdx, r12
call fcn.14012ad50
lea rbx, [r14 + 0x52]
movzx eax, al
mov dword [r14 + 0x48], eax
xor r10d, r10d
mov word [rbx], r10w
mov ecx, dword [r12]
mov qword [rbp - 0x80], rbx
cmp dword [r14 + 0x74], ecx
jae 0x140146c89
mov qword [r14 + 0x68], r10
mov dword [r14 + 0x74], r10d
mov eax, dword [r12]
cmp eax, 0x18003
ja 0x140146e7c
mov qword [rbp - 0x80], rbx
cmp eax, dword [r14 + 0x70]
jbe 0x140146ca6
jmp 0x140146e7c
mov r9, qword [r14 + 0x68]
movzx eax, r10w
mov edx, dword [r14 + 0x48]
mov qword [rbp - 0x78], r9
jmp 0x140146d7f
lea rbx, [r14 + 0x52]
mov qword [rbp - 0x80], rbx
movzx eax, word [rbx]
cmp eax, esi
jg 0x140146f85
mov edx, dword [r14 + 0x48]
mov ecx, dword [r12]
cmp edx, ecx
jae 0x140146eff
mov r9, qword [r14 + 0x68]
mov qword [rbp - 0x78], r9
test r9, r9
jne 0x140146d7b
xor eax, eax
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x40], rax
mov r10, qword [r14 + 0x38]
mov r8d, dword [r12]
mov rax, qword [r10 + 0x88]
movzx ecx, word [r10 + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [r10 + 0x38]
cmp ecx, edx
jle 0x140146d1b
test edx, edx
mov ecx, edx
mov rax, r9
cmovs ecx, eax
jmp 0x140146d1d
xor eax, eax
mov r9, qword [r10 + 0x38]
mov qword [rbp - 0x78], r9
mov qword [rbp + 0x20], r9
cmp r8d, ecx
ja 0x140146d4c
mov dword [rbp + 0x1c], r8d
mov ecx, 0x1010
mov word [rbp + 0x18], cx
mov ecx, dword [r12]
mov edx, dword [r14 + 0x48]
mov dword [rsp + 0x40], eax
movzx eax, word [rbx]
jmp 0x140146d7f
lea r9, [rbp + 0x10]
xor edx, edx
mov rcx, r10
call fcn.14014e8d0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bd59
mov r9, qword [rbp + 0x20]
movzx eax, word [rbx]
mov ecx, dword [r12]
mov edx, dword [r14 + 0x48]
mov qword [rbp - 0x78], r9
jmp 0x140146d7f
mov qword [rbp - 0x80], rbx
movzx r15d, ax
mov ebx, edx
mov esi, r15d
add rbx, r9
mov r13d, ecx
add r13, r9
mov r12d, dword [r12 + r15*4]
nop word [rax + rax]
movzx edi, byte [rbx]
mov eax, 0x80
mov dword [rbp - 0x6c], edi
mov dword [r14 + rsi*4 + 0x78], edi
cmp edi, eax
jae 0x140146dc8
lea rcx, [0x140000000]
inc rbx
movzx ecx, byte [rdi + rcx + 0x220670]
jmp 0x140146e03
lea rdx, [rbp - 0x6c]
mov rcx, rbx
call fcn.14012ad50
mov edi, dword [rbp - 0x6c]
movzx eax, al
add rbx, rax
mov dword [r14 + rsi*4 + 0x78], edi
mov eax, 0x80
cmp edi, eax
jb 0x140146df2
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x140146e01
lea rcx, [0x140000000]
movzx eax, byte [rdi + rcx + 0x220670]
mov ecx, eax
mov rax, qword [rsp + 0x78]
inc r15d
add r12, rcx
movsxd rsi, r15d
mov dword [rax + rsi*4], r12d
cmp r15d, dword [rbp - 0x60]
jg 0x140146e22
cmp rbx, r13
jb 0x140146da0
jmp 0x140146e27
cmp rbx, r13
jb 0x140146e35
cmp rbx, r13
ja 0x140146e3e
mov eax, dword [r14 + 0x70]
cmp r12, rax
jne 0x140146e3e
mov eax, dword [r14 + 0x70]
cmp r12, rax
jbe 0x140146eb8
mov r12, qword [rsp + 0x78]
cmp dword [r12], 0
jne 0x140146e54
xor edx, edx
mov rbx, r13
mov r15d, edx
jmp 0x140146ebd
cmp qword [r14 + 0x68], 0
jne 0x140146e75
mov eax, 0x2400
test word [rbp + 0x18], ax
jne 0x140146e6c
cmp dword [rbp + 0x30], 0
je 0x140146e75
lea rcx, [rbp + 0x10]
call fcn.140160ae0
mov edi, dword [rsp + 0x50]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov eax, dword [r9 + 0xc]
test eax, eax
jle 0x14014bd4f
mov r14, qword [rsp + 0x60]
dec eax
movzx esi, byte [rsp + 0x30]
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r11, [r9 + rax*8]
mov qword [rsp + 0x38], r11
mov r15, qword [rsp + 0x38]
mov r11, qword [rsp + 0x48]
jmp 0x140145aa7
mov r12, qword [rsp + 0x78]
sub ebx, dword [rbp - 0x78]
mov rsi, qword [rbp - 0x80]
mov word [rsi], r15w
mov dword [r14 + 0x48], ebx
cmp qword [r14 + 0x68], 0
jne 0x140146eed
mov eax, 0x2400
test word [rbp + 0x18], ax
jne 0x140146ee4
cmp dword [rbp + 0x30], 0
je 0x140146eed
lea rcx, [rbp + 0x10]
call fcn.140160ae0
movzx eax, word [rsi]
xor r10d, r10d
mov esi, dword [rbp - 0x60]
mov r15, qword [rbp + 0x80]
jmp 0x140146f06
mov edi, r10d
mov dword [rbp - 0x6c], r10d
movzx eax, ax
cmp eax, esi
jg 0x140146f80
mov r11, qword [rsp + 0x38]
cmp byte [r11 + 1], 0xf5
jne 0x140146f3f
mov rdx, qword [r11 + 0x10]
mov r8d, 0x800
mov rcx, r15
call fcn.14014f300
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
jmp 0x140145a96
mov eax, 0x2400
test word [r15 + 8], ax
je 0x140146f53
mov rcx, r15
jmp 0x140146007
mov r11, qword [rsp + 0x48]
mov r8d, 1
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov word [r15 + 8], r8w
mov r15, qword [rsp + 0x38]
jmp case.0x1401451a8.85
movsxd rbx, esi
jmp 0x140146f90
movsxd rbx, esi
mov edi, dword [r14 + rbx*4 + 0x78]
mov dword [rbp - 0x6c], edi
mov eax, 0x2400
test word [r15 + 8], ax
je 0x140146fa4
mov rcx, r15
call fcn.140160bb0
mov eax, dword [r12 + rbx*4 + 4]
cmp dword [r14 + 0x74], eax
jb 0x140147097
mov esi, dword [r12 + rbx*4]
add rsi, qword [r14 + 0x68]
cmp edi, 0xc
jae 0x140146fe1
mov r8, r15
mov edx, edi
mov rcx, rsi
call fcn.140150a50
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
jmp 0x140145a96
movzx eax, byte [rsp + 0x30]
lea ebx, [rdi - 0xc]
shr ebx, 1
mov dword [r15 + 0xc], ebx
mov byte [r15 + 0xa], al
lea edx, [rbx + 2]
cmp dword [r15 + 0x20], edx
jge 0x140147020
mov r12d, 1
xor r8d, r8d
mov rcx, r15
mov word [r15 + 8], r12w
call fcn.14014ea40
test eax, eax
jne 0x14014c3f8
mov rcx, qword [r15 + 0x10]
jmp 0x140147028
mov rcx, qword [r15 + 0x18]
mov qword [r15 + 0x10], rcx
mov r8, rbx
mov rdx, rsi
call fcn.14019bf80
mov rax, qword [r15 + 0x10]
lea rcx, [0x140000000]
mov r11, qword [rsp + 0x48]
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
mov r9, qword [rsp + 0x58]
mov byte [rbx + rax], 0
mov rax, qword [r15 + 0x10]
mov byte [rax + rbx + 1], 0
mov eax, edi
mov edi, dword [rsp + 0x50]
and eax, 1
xor r10d, r10d
movzx eax, word [rcx + rax*2 + 0x22076c]
mov word [r15 + 8], ax
lea r8d, [r10 + 1]
mov r15, qword [rsp + 0x38]
mov r12, qword [rsp + 0x68]
add r15, 0x18
mov r13d, dword [rsp + 0x54]
mov ebx, dword [rbp - 0x64]
jmp 0x14014517d
mov rax, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
mov byte [r15 + 0xa], sil
movzx eax, word [rax + 2]
test al, 0xc0
je 0x1401470bc
cmp edi, 0xc
jb 0x1401470b8
test dil, 1
je 0x1401470e5
test al, al
js 0x1401470e5
mov eax, 0x80
cmp edi, eax
jb 0x1401470ce
lea r8d, [rdi - 0xc]
shr r8d, 1
jmp 0x1401470e0
mov eax, edi
lea rcx, [0x140000000]
movzx r8d, byte [rax + rcx + 0x220670]
test r8d, r8d
jne 0x1401470fb
mov r8, r15
lea rcx, [0x14021e730]
mov edx, edi
call fcn.140150a50
jmp 0x140145a8c
mov edx, dword [r12 + rbx*4]
mov r9, r15
mov rcx, qword [r14 + 0x38]
call fcn.14014e8d0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bd59
mov rcx, qword [r15 + 0x10]
mov r8, r15
mov edx, edi
call fcn.140150a50
mov eax, 0xefff
and word [r15 + 8], ax
jmp 0x140145a8c
mov rax, qword [rsp + 0x38]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r14
nop dword [rax + rax]
movzx r8d, sil
movzx edx, al
mov rcx, rbx
call fcn.1400e6190
cmp byte [rdi], 0x45
jne 0x1401471be
movzx ecx, word [rbx + 8]
test cl, 4
je 0x1401471be
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x14014719e
mov eax, 0xfffb
and cx, ax
or cx, 0x20
mov word [rbx + 8], cx
jmp 0x1401471be
xorps xmm0, xmm0
mov ecx, 0xfffb
cvtsi2sd xmm0, rdx
movsd qword [rbx], xmm0
movzx eax, word [rbx + 8]
and ax, cx
or ax, 8
mov word [rbx + 8], ax
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x14014b9b6
add rbx, 0x38
jmp 0x140147150
mov rbx, qword [rsp + 0x38]
mov rcx, r10
mov r15, r10
mov qword [rbp - 0x78], rcx
mov r12d, r10d
movsxd rax, dword [rbx + 4]
mov rdi, qword [rbx + 0x10]
imul r11, rax, 0x38
mov eax, dword [rbx + 8]
add r11, r14
dec eax
mov r14, qword [rsp + 0x48]
cdqe
imul rsi, rax, 0x38
movsxd rax, dword [rbx + 0xc]
movzx r13d, byte [r14 + 0xc3]
add rsi, r11
imul rdx, rax, 0x38
mov qword [rsp + 0x78], r11
add rdx, qword [rsp + 0x60]
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x80], rdx
test rdi, rdi
je 0x140147292
movzx eax, byte [rdi]
lea rbx, [r11 + 8]
movzx r14d, byte [rsp + 0x30]
mov esi, 0xfffb
nop dword [rax]
nop word [rax + rax]
lea rcx, [rbx - 8]
movzx r8d, r14b
movzx edx, al
call fcn.1400e6190
cmp byte [rdi], 0x45
jne 0x140147276
movzx eax, word [rbx]
test al, 4
je 0x140147276
and ax, si
or ax, 0x20
mov word [rbx], ax
movzx eax, byte [rdi + 1]
inc rdi
add rbx, 0x38
test al, al
jne 0x140147250
mov rcx, qword [rbp - 0x78]
mov r11, qword [rsp + 0x78]
mov rsi, qword [rbp - 0x60]
lea r14, [rsi + 0x24]
movzx edx, word [r14 - 0x1c]
test dl, 1
je 0x1401472bb
mov eax, 0x4000
and dx, ax
neg dx
sbb eax, eax
and eax, 0xa
mov dword [r14], eax
inc r12d
jmp 0x140147446
test dl, 0x24
je 0x1401473b7
mov r8, qword [r14 - 0x24]
mov rcx, r8
test r8, r8
jns 0x1401472d3
not rcx
inc r12d
cmp rcx, 0x7f
ja 0x140147308
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x1401472f8
cmp r13b, 4
jb 0x1401472f8
lea eax, [rcx + 8]
mov dword [r14], eax
jmp 0x140147446
mov eax, 1
inc r15
mov dword [r14], eax
jmp 0x140147446
cmp rcx, 0x7fff
ja 0x140147322
mov eax, 2
add r15, 2
mov dword [r14], eax
jmp 0x140147446
cmp rcx, 0x7fffff
ja 0x14014733c
mov eax, 3
add r15, 3
mov dword [r14], eax
jmp 0x140147446
cmp rcx, 0x7fffffff
ja 0x140147356
mov eax, 4
add r15, 4
mov dword [r14], eax
jmp 0x140147446
movabs rax, 0x7fffffffffff
cmp rcx, rax
ja 0x140147376
mov eax, 5
add r15, 6
mov dword [r14], eax
jmp 0x140147446
add r15, 8
test dl, 0x20
je 0x1401473aa
mov eax, 0xffdf
xorps xmm0, xmm0
cvtsi2sd xmm0, r8
movsd qword [r14 - 0x24], xmm0
and word [r14 - 0x1c], ax
mov eax, 7
or word [r14 - 0x1c], 8
mov dword [r14], eax
jmp 0x140147446
mov eax, 6
mov dword [r14], eax
jmp 0x140147446
test dl, 8
je 0x1401473cd
inc r12d
mov eax, 7
add r15, 8
mov dword [r14], eax
jmp 0x140147446
mov edi, dword [r14 - 0x18]
mov esi, edx
shr esi, 1
mov eax, 0x4000
and esi, 1
add esi, 0xc
lea esi, [rsi + rdi*2]
test ax, dx
je 0x140147412
movsxd rax, dword [r14 - 0x24]
lea esi, [rsi + rax*2]
test r15, r15
je 0x14014740b
lea rcx, [r14 - 0x24]
call fcn.14014e760
test eax, eax
jne 0x14014c3f8
add edi, dword [r14 - 0x24]
jmp 0x140147412
add rcx, rax
mov qword [rbp - 0x78], rcx
mov eax, edi
mov ecx, 1
add r15, rax
mov eax, esi
shr rax, 7
test rax, rax
je 0x14014743b
nop word [rax + rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x140147430
mov r11, qword [rsp + 0x78]
add r12d, ecx
mov dword [r14], esi
lea rax, [r14 - 0x24]
cmp rax, r11
je 0x14014745c
mov rcx, qword [rbp - 0x78]
sub r14, 0x38
jmp 0x140147296
mov r13d, 1
cmp r12d, 0x7e
jle 0x1401474af
movsxd rax, r12d
mov edx, r13d
shr rax, 7
test rax, rax
je 0x14014748b
nop word [rax + rax]
inc edx
shr rax, 7
test rax, rax
jne 0x140147480
add r12d, edx
mov ecx, r13d
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x1401474ab
nop dword [rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x1401474a0
cmp edx, ecx
jge 0x1401474b2
inc r12d
mov r9, qword [rbp - 0x80]
mov rdi, qword [rbp - 0x78]
movsxd rsi, r12d
movsxd rdx, dword [r9 + 0x20]
lea rbx, [rsi + r15]
lea rcx, [rbx + rdi]
cmp rcx, rdx
jg 0x1401474d8
mov rax, qword [r9 + 0x18]
mov qword [r9 + 0x10], rax
jmp 0x140147520
mov r8, qword [rsp + 0x68]
movsxd rax, dword [r8 + 0x7c]
cmp rcx, rax
jg 0x14014c0e6
cmp edx, ebx
jge 0x140147506
xor r8d, r8d
mov edx, ebx
mov rcx, r9
call fcn.14014ea40
mov r11, qword [rsp + 0x78]
mov r9, qword [rbp - 0x80]
jmp 0x140147518
mov rax, qword [r9 + 0x18]
mov qword [r9 + 0x10], rax
and word [r9 + 8], 0x2d
xor edx, edx
mov eax, edx
test eax, eax
jne 0x14014c3f8
mov dword [r9 + 0xc], ebx
mov eax, 0x10
mov word [r9 + 8], ax
test rdi, rdi
je 0x140147540
mov eax, 0x4000
mov dword [r9], edi
or word [r9 + 8], ax
mov r14, qword [r9 + 0x10]
mov ecx, 0x80
lea rdi, [r14 + rsi]
cmp r12d, ecx
jae 0x14014755a
mov byte [r14], r12b
mov eax, r13d
jmp 0x14014756a
mov rdx, rsi
mov rcx, r14
call fcn.1401379c0
mov ecx, 0x80
mov r15, qword [rbp - 0x60]
lea rsi, [r11 + 0xc]
movzx eax, al
add r14, rax
nop dword [rax + rax]
mov r11d, dword [rsi + 0x18]
cmp r11d, ecx
jae 0x140147591
mov byte [r14], r11b
mov eax, r13d
jmp 0x14014759c
mov rdx, r11
mov rcx, r14
call fcn.1401379c0
movzx eax, al
add r14, rax
lea eax, [r11 - 1]
cmp eax, 6
ja 0x1401475e7
mov rdx, qword [rsi - 0xc]
lea rcx, [0x140000000]
movzx ecx, byte [r11 + rcx + 0x220670]
mov r13d, 0xffffffff
mov ebx, ecx
nop word [rax + rax]
add ecx, r13d
mov byte [rcx + rdi], dl
shr rdx, 8
test ecx, ecx
jne 0x1401475d0
xor r10d, r10d
lea r13d, [rcx + 1]
jmp 0x14014760d
cmp r11d, 0xc
jb 0x140147607
mov ebx, dword [rsi]
test ebx, ebx
je 0x140147602
mov rdx, qword [rsi + 4]
mov r8d, ebx
mov rcx, rdi
call fcn.14019bf80
xor r10d, r10d
jmp 0x14014760d
xor r10d, r10d
mov ebx, r10d
add rsi, 0x38
mov eax, ebx
add rdi, rax
mov ecx, 0x80
lea rax, [rsi - 0xc]
cmp rax, r15
jbe 0x140147580
mov r14, qword [rsp + 0x60]
jmp 0x1401456f4
mov rbx, qword [rsp + 0x38]
mov rax, qword [r11 + 0x78]
cmp dword [rbx + 0xc], 0
movsxd rcx, dword [rbx + 4]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x38]
je 0x14014765e
mov rcx, rdx
call fcn.140116480
mov rbx, rax
mov qword [rbp - 0x10], rax
jmp 0x140147683
lea r8, [rbp - 0x10]
mov qword [rbp - 0x10], r10
mov rcx, r12
call fcn.140114160
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014c439
mov rbx, qword [rbp - 0x10]
mov r11, qword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
mov ecx, 0x2400
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, qword [r11 + 0x68]
test word [rax + 8], cx
je 0x1401476b4
mov rcx, rax
call fcn.140102980
mov r11, qword [rsp + 0x48]
mov qword [rax], rbx
jmp 0x14014b557
mov ecx, 4
mov word [rax + 8], cx
mov qword [rax], rbx
jmp 0x14014b557
mov rax, qword [rsp + 0x38]
mov r14d, dword [rax + 4]
mov rdi, qword [rax + 0x10]
mov dword [rbp - 0x80], r14d
test r14d, r14d
jne 0x1401477c8
cmp dword [r12 + 0xd0], r14d
jg 0x14014bd63
test rdi, rdi
jne 0x1401476f7
mov ebx, r10d
jmp 0x14014770f
mov rbx, 0xffffffffffffffff
nop
inc rbx
cmp byte [rdi + rbx], 0
jne 0x140147700
and ebx, 0x3fffffff
mov r8d, dword [r12 + 0x2c4]
xor edx, edx
add r8d, dword [r12 + 0x2c0]
mov rcx, r12
call fcn.140152350
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bfa5
mov edx, ebx
mov rcx, r12
add rdx, 0x21
call fcn.14011ba30
mov rsi, rax
test rax, rax
je 0x14014b9d6
lea r9, [rax + 0x20]
mov rdx, rdi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call fcn.14019bf80
cmp byte [r12 + 0x5f], 0
je 0x14014777b
mov byte [r12 + 0x5f], 0
mov byte [r12 + 0x67], 1
jmp 0x140147783
inc dword [r12 + 0x2c0]
mov rax, qword [r12 + 0x2b0]
mov qword [rsi + 0x18], rax
mov qword [r12 + 0x2b0], rsi
mov rax, qword [r12 + 0x2c8]
mov qword [rsi + 8], rax
mov rax, qword [r12 + 0x2d0]
mov qword [rsi + 0x10], rax
mov r14, qword [rsp + 0x60]
mov r11, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x30]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9b
mov rsi, qword [r12 + 0x2b0]
mov r15d, r10d
test rsi, rsi
je 0x1401477fb
nop dword [rax + rax]
mov rcx, qword [rsi]
mov rdx, rdi
call fcn.14013fbe0
test eax, eax
je 0x14014781e
mov rsi, qword [rsi + 0x18]
inc r15d
test rsi, rsi
jne 0x1401477e0
mov r8, rdi
lea rdx, str.no_such_savepoint:__s
mov rcx, r11
call fcn.140144fa0
mov r14, qword [rsp + 0x48]
mov ebx, 1
mov eax, ebx
jmp 0x14014bfaf
cmp dword [r12 + 0xd0], 0
jle 0x140147833
cmp r14d, 1
je 0x14014bd7c
cmp qword [rsi + 0x18], 0
jne 0x1401478a5
cmp byte [r12 + 0x67], 0
je 0x1401478a5
mov ebx, 1
mov r13d, ebx
cmp r14d, ebx
jne 0x1401478ac
mov rax, qword [r11]
mov rcx, qword [rax + 0x2d0]
add rcx, qword [rax + 0x2c8]
test rcx, rcx
mov rcx, r11
jg 0x14014bde5
mov byte [r12 + 0x5f], bl
call fcn.14014d530
cmp eax, 5
je 0x14014bd95
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x38]
mov dword [rsp + 0x40], eax
test eax, eax
je 0x14014789a
mov byte [r12 + 0x5f], 0
jmp 0x1401479a9
mov byte [r12 + 0x67], 0
jmp 0x1401479b1
xor edx, edx
mov r13d, edx
jmp 0x1401478ae
xor edx, edx
mov eax, dword [r12 + 0x2c0]
mov rcx, qword [rsp + 0x68]
sub eax, r15d
lea r15d, [rax - 1]
mov eax, dword [rcx + 0x28]
cmp r14d, 2
jne 0x140147920
mov r12d, dword [r12 + 0x2c]
mov edi, edx
and r12d, 1
test eax, eax
jle 0x140147923
mov r14d, r12d
mov rbx, rdx
xor r14d, 1
mov rcx, qword [rcx + 0x20]
mov r8d, r14d
mov edx, 0x204
mov rcx, qword [rbx + rcx + 8]
call fcn.140116b20
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bd59
mov rcx, qword [rsp + 0x68]
inc edi
add rbx, 0x20
mov eax, dword [rcx + 0x28]
cmp edi, eax
jl 0x1401478e4
mov r14d, dword [rbp - 0x80]
xor edx, edx
jmp 0x140147923
mov r12d, edx
mov edi, edx
test eax, eax
jle 0x140147962
mov rbx, rdx
nop dword [rax]
mov rcx, qword [rcx + 0x20]
mov r8d, r15d
mov edx, r14d
mov rcx, qword [rbx + rcx + 8]
call fcn.1401164e0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bd59
mov rcx, qword [rsp + 0x68]
inc edi
add rbx, 0x20
cmp edi, dword [rcx + 0x28]
jl 0x140147930
jmp 0x140147966
mov eax, dword [rsp + 0x40]
test r12d, r12d
mov r12, qword [rsp + 0x68]
je 0x1401479a9
mov rax, qword [r12 + 8]
test rax, rax
je 0x140147997
nop word [rax + rax]
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140147980
mov rcx, r12
call fcn.140138b80
or dword [r12 + 0x2c], 1
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfa5
cmp qword [r12 + 0x2b0], rsi
je 0x1401479ee
nop dword [rax + rax]
mov rdx, qword [r12 + 0x2b0]
mov rcx, r12
mov rax, qword [rdx + 0x18]
mov qword [r12 + 0x2b0], rax
call fcn.14011b8c0
dec dword [r12 + 0x2c0]
cmp qword [r12 + 0x2b0], rsi
jne 0x1401479c0
cmp r14d, 1
jne 0x140147a1e
mov rax, qword [rsi + 0x18]
mov rdx, rsi
mov rcx, r12
mov qword [r12 + 0x2b0], rax
call fcn.14011b8c0
test r13d, r13d
jne 0x14014b9d6
dec dword [r12 + 0x2c0]
jmp 0x140147a45
mov rax, qword [rsi + 8]
mov qword [r12 + 0x2c8], rax
mov rax, qword [rsi + 0x10]
mov qword [r12 + 0x2d0], rax
test r13d, r13d
je 0x140147a45
cmp r14d, 2
jne 0x14014b9d6
mov r8d, r15d
mov edx, r14d
mov rcx, r12
call fcn.140152350
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bfa5
jmp 0x1401477af
mov rcx, qword [rsp + 0x38]
mov dword [rbp - 0x54], r10d
mov edx, dword [rcx + 8]
test edx, edx
je 0x140147a84
mov eax, dword [r12 + 0x30]
bt rax, 0x14
jb 0x14014be13
movsxd rcx, dword [rcx + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
test rbx, rbx
je 0x140147c13
lea r8, [rbp - 0x54]
mov rcx, rbx
call fcn.1401135a0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014be28
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
test byte [r11 + 0xc8], 0x40
je 0x140147bae
cmp dword [r15 + 8], eax
je 0x140147bae
cmp byte [r12 + 0x5f], al
je 0x140147aef
cmp dword [r12 + 0xcc], 1
jle 0x140147bae
mov r8d, dword [r11 + 0x40]
test r8d, r8d
jne 0x140147b14
inc dword [r12 + 0x2c4]
mov r8d, dword [r12 + 0x2c0]
add r8d, dword [r12 + 0x2c4]
mov dword [r11 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, r12
call fcn.140152350
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x140147b8d
cmp byte [rbx + 0x11], 0
mov rax, qword [rsp + 0x48]
mov rsi, qword [rbx + 8]
mov edi, dword [rax + 0x40]
je 0x140147b4c
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x140147b4c
mov rcx, rbx
call fcn.1400e9d10
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x140147b6a
cmp byte [rcx + 0xa], 0
je 0x140147b6a
mov edx, edi
call fcn.140103330
mov dword [rsp + 0x40], eax
jmp 0x140147b70
xor edx, edx
mov dword [rsp + 0x40], edx
cmp byte [rbx + 0x11], 0
je 0x140147b84
sub dword [rbx + 0x14], 1
jne 0x140147b84
mov rcx, rbx
call fcn.14015e100
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
mov rax, qword [r12 + 0x2c8]
mov r11, qword [rsp + 0x48]
mov qword [r11 + 0x58], rax
mov rax, qword [r12 + 0x2d0]
mov qword [r11 + 0x60], rax
mov eax, dword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
mov r8d, 1
xor r10d, r10d
cmp word [r15 + 2], 0
je 0x140147c06
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
cmp dword [rbp - 0x54], eax
jne 0x14014be72
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x10]
cmp dword [rcx + 4], eax
jne 0x14014be72
mov eax, dword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
test eax, eax
jne 0x14014bfa5
jmp case.0x1401451a8.85
mov eax, dword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
jmp 0x140147bbc
mov r11, qword [rsp + 0x38]
lea r8, [rbp - 0x18]
mov rcx, qword [r12 + 0x20]
movsxd rax, dword [r11 + 4]
mov edx, dword [r11 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140114910
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x48]
call fcn.140102950
movsxd rcx, dword [rbp - 0x18]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [rax], rcx
jmp 0x140145a9f
mov rax, qword [rsp + 0x38]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [r12 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.140116c70
mov r11, qword [rsp + 0x38]
mov dword [rsp + 0x40], eax
mov eax, dword [r11 + 8]
cmp eax, 1
jne 0x140147cad
mov rcx, qword [rbx + 0x18]
mov eax, dword [r11 + 0xc]
mov dword [rcx], eax
or dword [r12 + 0x2c], 1
jmp 0x140147cbe
cmp eax, 2
jne 0x140147cbe
mov rcx, qword [rbx + 0x18]
movzx eax, byte [r11 + 0xc]
mov byte [rcx + 0x70], al
cmp dword [r11 + 4], 1
jne 0x140147cde
xor edx, edx
mov rcx, r12
call fcn.14011e1c0
mov r11, qword [rsp + 0x48]
and dword [r11 + 0xc8], 0xfffffffc
jmp 0x140147ce3
mov r11, qword [rsp + 0x48]
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfa5
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
test rdi, rdi
je 0x140147d27
mov eax, dword [rcx + 8]
cmp dword [rdi + 0x4c], eax
je 0x140147e4b
jmp 0x140147d27
mov rcx, qword [rsp + 0x38]
mov eax, dword [r11 + 0xc8]
and al, 3
cmp al, 1
je 0x14014bf02
movsxd r12, dword [rcx + 0xc]
mov edi, r10d
mov r8, qword [rsp + 0x68]
mov rax, r12
movsxd r15, dword [rcx + 8]
mov r14, r10
shl rax, 5
add rax, qword [r8 + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x61
jne 0x140147dc0
movzx esi, word [rcx + 2]
mov rax, qword [rax + 0x18]
and esi, 8
or esi, 4
movzx ecx, byte [rax + 0x70]
cmp cl, byte [r11 + 0xc3]
jae 0x140147d81
mov byte [r11 + 0xc3], cl
mov rcx, qword [rsp + 0x38]
test byte [rcx + 2], 0x10
je 0x140147dad
imul rbx, r15, 0x38
mov rax, r15
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.14014ec40
mov r11, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x38]
mov r15d, dword [rbx]
movzx eax, byte [rcx + 1]
cmp al, 0xf7
jne 0x140147dc5
mov r14, qword [rcx + 0x10]
movzx edi, word [r14 + 8]
jmp 0x140147dcc
mov esi, r10d
jmp 0x140147d86
cmp al, 0xfd
jne 0x140147dcc
mov edi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
mov r9d, r12d
mov rcx, r11
mov byte [rsp + 0x20], 0
mov r8d, edi
call fcn.1400e49f0
mov rdi, rax
test rax, rax
je 0x14014c3f8
mov byte [rax + 2], 1
mov r9, r14
or dword [rax + 8], 4
mov r8d, esi
mov dword [rax + 0x4c], r15d
mov edx, r15d
mov rcx, qword [rax + 0x38]
mov qword [rsp + 0x20], rcx
mov rcx, r13
call fcn.140114390
mov rcx, qword [rsp + 0x38]
mov r12, qword [rsp + 0x68]
mov r11, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x30]
mov r9, qword [rsp + 0x58]
mov qword [rdi + 0x40], r14
cmp byte [rcx + 1], 0xf7
mov r14, qword [rsp + 0x60]
mov dword [rsp + 0x40], eax
setne al
xor r10d, r10d
mov byte [rdi + 4], al
lea r8d, [r10 + 1]
mov rax, qword [rdi + 0x38]
movzx ecx, byte [rcx + 2]
and cl, 3
mov byte [rax + 3], cl
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfa5
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
jmp case.0x1401451a8.85
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov byte [rsp + 0x20], 0
movsxd rcx, dword [rax + 8]
mov rax, qword [r11 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r11
mov rax, qword [rsp + 0x38]
movsx r8d, word [rbx + 0x50]
mov edx, dword [rax + 4]
call fcn.1400e49f0
mov rdx, rax
test rax, rax
je 0x14014c3fd
mov byte [rax + 2], 1
mov r8d, 4
or dword [rax + 8], 1
mov rcx, qword [rbx + 0x40]
mov qword [rax + 0x40], rcx
movzx ecx, byte [rbx + 4]
mov byte [rax + 4], cl
mov ecx, dword [rbx + 0x4c]
mov dword [rax + 0x4c], ecx
mov eax, dword [rbx + 8]
xor eax, dword [rdx + 8]
and eax, 4
xor dword [rdx + 8], eax
mov rax, qword [rdx + 0x38]
mov r9, qword [rdx + 0x40]
mov edx, ecx
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.140114390
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov dword [rsp + 0x40], eax
jmp 0x140145a9f
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x140147f4a
cmp qword [rbx + 0x10], 0
je 0x140147f4a
mov qword [rbx + 0x18], r10
xor r8d, r8d
mov dword [rbx + 0x28], r10d
mov edx, dword [rbx + 0x4c]
mov rcx, qword [rbx + 0x10]
call fcn.1401138e0
mov dword [rsp + 0x40], eax
xor r10d, r10d
jmp 0x140148081
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov rcx, r11
mov byte [rsp + 0x20], 0
mov r8d, dword [rax + 8]
call fcn.1400e49f0
mov rbx, rax
test rax, rax
je 0x14014c3fd
or dword [rax + 8], 1
lea r9, [rbx + 0x10]
mov rax, qword [rsp + 0x38]
mov r8, r12
mov dword [rsp + 0x28], 0x41e
xor edx, edx
movzx ecx, word [rax + 2]
or ecx, 5
mov dword [rsp + 0x20], ecx
mov rcx, qword [r12]
call fcn.140115ac0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x140148056
mov rcx, qword [rbx + 0x10]
mov r15d, 1
mov edx, r15d
xor r8d, r8d
call fcn.1401135a0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x140148056
mov rax, qword [rsp + 0x38]
lea rsi, [rbx + 0x4c]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x40], r14
test r14, r14
je 0x140148025
movzx r8d, word [rax + 2]
mov rdx, rsi
mov rcx, qword [rbx + 0x10]
or r8d, 2
call fcn.140114320
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014801f
mov rax, qword [rbx + 0x38]
lea r8d, [r15 + 3]
mov edx, dword [rsi]
mov r9, r14
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.140114390
mov dword [rsp + 0x40], eax
mov byte [rbx + 4], 0
jmp 0x14014804c
mov dword [rsi], r15d
xor r9d, r9d
mov rax, qword [rbx + 0x38]
mov edx, r15d
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.140114390
mov dword [rsp + 0x40], eax
mov byte [rbx + 4], r15b
movzx esi, byte [rsp + 0x30]
mov r14, qword [rsp + 0x60]
mov rax, qword [rsp + 0x38]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov ecx, r10d
cmp word [rax + 2], 8
mov eax, 4
cmovne ecx, eax
mov eax, dword [rbx + 8]
and eax, 0xfffffffb
or ecx, eax
mov eax, dword [rsp + 0x40]
mov dword [rbx + 8], ecx
test eax, eax
jne 0x14014bfa5
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x58]
mov byte [rbx + 2], 1
jmp 0x140145aa7
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov rcx, r11
mov byte [rsp + 0x20], 1
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.1400e49f0
test rax, rax
je 0x14014c3fd
mov rdx, qword [rsp + 0x38]
mov r8, rax
mov rcx, qword [rdx + 0x10]
mov qword [rax + 0x40], rcx
mov rcx, r12
mov edx, dword [rdx + 0xc]
call fcn.140150db0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bfa5
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
test rcx, rcx
je 0x1401483ac
jmp case.0x1401451a8.85
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov rcx, r11
mov byte [rsp + 0x20], 3
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.1400e49f0
test rax, rax
je 0x14014c3fd
mov r15, qword [rsp + 0x38]
mov r11, qword [rsp + 0x48]
mov byte [rax + 2], 1
mov ecx, dword [r15 + 8]
mov dword [rax + 0x2c], ecx
lea rcx, [0x1402a6bc3]
mov byte [rax + 4], 1
mov qword [rax + 0x38], rcx
jmp 0x140145a9f
mov rdx, qword [r11 + 0x78]
mov rcx, r11
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.14014d350
mov rax, qword [rsp + 0x38]
xor r10d, r10d
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x58]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov qword [rax + rcx*8], r10
jmp 0x140145aa7
mov rax, qword [rsp + 0x38]
mov r12d, r10d
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov r14, qword [rax + rcx*8]
mov word [r14 + 2], 0
mov dword [r14 + 0x28], r10d
cmp byte [r14 + 4], 0
je 0x1401482cd
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x60]
movzx esi, word [rdi + 8]
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x140148215
xor edx, edx
mov rcx, rdi
call fcn.1400e6210
mov rcx, rdi
call fcn.14014db50
movzx edx, word [rdi + 8]
mov r15, rax
mov word [rdi + 8], si
test dl, 0x24
jne 0x14014829d
test dl, 8
jne 0x140148271
test dl, 1
jne 0x14014b35f
cmp ebx, 0x18
jae 0x14014b35f
mov rcx, qword [r14 + 0x38]
lea rdx, [rsp + 0x74]
call fcn.1401154e0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bd59
xor r10d, r10d
cmp dword [rsp + 0x74], 0
jne 0x14014b362
jmp 0x1401483f2
movsd xmm0, qword [rdi]
xorps xmm1, xmm1
cvtsi2sd xmm1, r15
comisd xmm1, xmm0
jbe 0x140148290
test bl, 1
lea eax, [rbx - 1]
cmove eax, ebx
mov ebx, eax
jmp 0x14014829d
comisd xmm0, xmm1
jbe 0x14014829d
test bl, 1
jne 0x14014829d
inc ebx
mov rcx, qword [r14 + 0x38]
lea rax, [rsp + 0x74]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, r15
xor edx, edx
call fcn.140115560
mov dword [rsp + 0x40], eax
mov qword [r14 + 0x58], r15
test eax, eax
jne 0x14014bd59
jmp 0x14014834f
mov rax, qword [r14 + 0x38]
lea rdx, [rbp + 0x48]
mov r11, qword [rsp + 0x38]
movzx edi, byte [rax + 3]
mov rax, qword [r14 + 0x40]
and dil, 2
mov ecx, dword [r11 + 0x10]
setne r12b
mov qword [rbp + 0x48], rax
mov word [rbp + 0x58], cx
mov eax, r8d
mov ecx, 0xffffffff
test bl, 1
cmovne eax, ecx
xor r9d, r9d
mov byte [rbp + 0x5a], al
xor r8d, r8d
movsxd rax, dword [r11 + 0xc]
imul rcx, rax, 0x38
mov byte [rbp + 0x5e], 0
lea rax, [rsp + 0x74]
add rcx, qword [rsp + 0x60]
mov qword [rbp + 0x50], rcx
mov rcx, qword [r14 + 0x38]
mov qword [rsp + 0x20], rax
call fcn.140115560
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bd59
test dil, dil
je 0x14014834f
cmp byte [rbp + 0x5e], al
je 0x14014825e
mov eax, dword [rsp + 0x74]
cmp ebx, 0x18
jl 0x1401483b6
test eax, eax
js 0x140148370
jne 0x140148363
cmp ebx, 0x19
je 0x140148370
xor r10d, r10d
mov dword [rsp + 0x74], r10d
jmp 0x1401483f2
mov rcx, qword [r14 + 0x38]
xor r13d, r13d
xor edx, edx
mov dword [rsp + 0x74], r13d
call fcn.140115a80
mov dword [rsp + 0x40], eax
test eax, eax
je 0x1401483ef
cmp eax, 0x65
jne 0x14014c420
mov r15, qword [rsp + 0x38]
xor r10d, r10d
mov r8d, 1
mov dword [rsp + 0x40], r10d
mov dword [rsp + 0x74], r8d
mov r9, qword [rsp + 0x58]
jmp 0x140146a57
test eax, eax
jg 0x1401483da
jne 0x1401483c1
cmp ebx, 0x16
je 0x1401483da
mov rax, qword [r14 + 0x38]
xor r10d, r10d
mov ecx, r10d
cmp byte [rax], r10b
setne cl
mov dword [rsp + 0x74], ecx
jmp 0x140148261
mov rcx, qword [r14 + 0x38]
xor r13d, r13d
xor edx, edx
mov dword [rsp + 0x74], r13d
call fcn.140116210
jmp 0x140148383
xor r10d, r10d
mov r11, qword [rsp + 0x38]
test r12d, r12d
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
lea r15, [r11 + 0x18]
cmove r15, r11
mov r11, qword [rsp + 0x48]
jmp 0x140145aa7
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
shl eax, 3
xor eax, dword [rdx + 8]
and eax, 8
xor dword [rdx + 8], eax
jmp case.0x1401451a8.85
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
cmp qword [rax + rcx*8], 0
je case.0x1401451a8.11
mov r15, qword [rsp + 0x38]
jmp case.0x1401451a8.85
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
test byte [rcx + 8], 8
jne 0x140146878
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 0xc]
imul rbx, rax, 0x38
add rbx, r14
cmp dword [rcx + 0x10], 0
jle 0x1401484db
mov rax, qword [rsi + 0x40]
lea rdi, [rbp + 0x1d0]
mov qword [rbp + 0x1d0], rax
mov r14, r10
movzx eax, word [rcx + 0x10]
mov word [rbp + 0x1e0], ax
mov qword [rbp + 0x1d8], rbx
jmp 0x14014852d
mov eax, 0x4000
test word [rbx + 8], ax
je 0x1401484f6
mov rcx, rbx
call fcn.14014e760
test eax, eax
jne 0x14014c3fd
mov rcx, qword [rsi + 0x40]
call fcn.140144190
mov rdi, rax
mov r14, rax
test rax, rax
je 0x14014c3fd
mov r8, qword [rbx + 0x10]
mov r9, rax
mov edx, dword [rbx + 0xc]
mov rcx, qword [rsi + 0x40]
call fcn.140150760
mov rcx, qword [rsp + 0x38]
xor r10d, r10d
lea r8d, [r10 + 1]
mov byte [rdi + 0x12], 0
mov ebx, r10d
cmp byte [rcx], 0x1c
jne 0x140148567
movzx eax, word [rdi + 0x10]
mov rcx, r10
cmp r10w, ax
jae 0x140148567
movzx edx, ax
mov rax, qword [rdi + 8]
add rax, 8
test byte [rax], 1
jne 0x140148564
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x140148551
jmp 0x140148567
mov ebx, r8d
mov rcx, qword [rsi + 0x38]
lea rax, [rbp - 0x20]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rdi
call fcn.140115560
mov dword [rsp + 0x40], eax
test r14, r14
je 0x14014859a
mov rdx, r14
mov rcx, r12
call fcn.14011b920
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfa5
mov eax, dword [rbp - 0x20]
xor r10d, r10d
mov r15, qword [rsp + 0x38]
test eax, eax
mov dword [rsi + 0x2c], eax
mov ecx, r10d
sete cl
test eax, eax
setne al
mov byte [rsi + 2], al
mov byte [rsi + 3], r10b
mov dword [rsi + 0x28], r10d
cmp byte [r15], 0x1e
jne 0x1401485f9
test ecx, ecx
mov r8d, 1
jne 0x1401483ac
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp case.0x1401451a8.85
test ebx, ebx
jne 0x14014b367
lea r8d, [rbx + 1]
test ecx, ecx
je 0x1401483ac
jmp 0x1401485dc
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r14
test byte [rcx + 8], 0x24
jne case.0x1401451a8.32
movups xmm2, xmmword [rcx]
movups xmmword [rbp + 0xc8], xmm2
movups xmm0, xmmword [rcx + 0x10]
psrldq xmm2, 8
movups xmmword [rbp + 0xd8], xmm0
movups xmm1, xmmword [rcx + 0x20]
movd edx, xmm2
movups xmmword [rbp + 0xe8], xmm1
movsd xmm0, qword [rcx + 0x30]
movsd qword [rbp + 0xf8], xmm0
test dl, 4
jne 0x1401486fc
test dl, 8
jne 0x140148698
test dl, 2
je 0x1401486f3
mov edx, r8d
lea rcx, [rbp + 0xc8]
call fcn.1400e6210
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
lea r8d, [r10 + 1]
jmp 0x1401486ec
movsd xmm4, qword [rbp + 0xc8]
movaps xmm0, xmm4
call fcn.1400f2300
xorps xmm3, xmm3
cvtsi2sd xmm3, rax
ucomisd xmm4, xmm3
jp 0x1401486f3
jne 0x1401486f3
movabs rcx, 0x7fffffffffffffff
add rcx, rax
cmp rcx, 0xfffffffffffffffd
ja 0x1401486f3
mov qword [rbp + 0xc8], rax
mov ecx, 0x3e40
movzx eax, word [rbp + 0xd0]
and ax, cx
or ax, 4
mov word [rbp + 0xd0], ax
movzx edx, byte [rbp + 0xd0]
test dl, 4
je 0x14014bc02
mov rdi, qword [rbp + 0xc8]
jmp 0x140148716
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r14]
mov rax, qword [rsp + 0x38]
xor r9d, r9d
mov r8, rdi
mov dword [rbp - 0x48], r10d
xor edx, edx
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rbx, qword [rax + rcx*8]
lea rax, [rbp - 0x48]
mov qword [rsp + 0x20], rax
mov rcx, qword [rbx + 0x38]
call fcn.140115560
mov r15, qword [rsp + 0x38]
xor r10d, r10d
mov qword [rbx + 0x58], rdi
mov word [rbx + 2], 0
mov dword [rsp + 0x40], eax
mov eax, dword [rbp - 0x48]
mov dword [rbx + 0x28], r10d
mov dword [rbx + 0x2c], eax
test eax, eax
je 0x140148786
cmp dword [r15 + 8], r10d
jne 0x14014b367
mov ecx, 0x15ecd
call fcn.140119b80
mov dword [rsp + 0x40], eax
xor r10d, r10d
jmp 0x14014878a
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfa5
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp 0x140145aa7
mov rbx, qword [rsp + 0x38]
mov rcx, r11
mov rdx, rbx
call fcn.140102950
movsxd rdx, dword [rbx + 4]
mov r15, rbx
mov r11, qword [rsp + 0x48]
mov rcx, qword [r11 + 0x78]
mov rdx, qword [rcx + rdx*8]
mov rcx, qword [rdx + 0x18]
mov qword [rax], rcx
movsxd rcx, dword [rbx + 4]
mov rax, qword [r11 + 0x78]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x140145a9f
mov rdx, qword [rsp + 0x38]
mov rbx, r10
mov rcx, r11
mov qword [rbp - 0x50], rbx
mov dword [rbp - 0x68], r10d
call fcn.140102950
mov r14, rax
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 4]
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x78]
mov rsi, qword [rcx + rdx*8]
test byte [rsi + 8], 2
jne 0x14014884a
mov rcx, qword [rsi + 0x38]
lea rdx, [rbp - 0x68]
call fcn.1401154e0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bfa5
cmp dword [rbp - 0x68], eax
je 0x140148896
mov eax, 1
mov ebx, eax
mov qword [rbp - 0x50], rax
mov rax, qword [rsp + 0x48]
movabs r13, 0x7fffffffffffffff
mov r15, qword [rsp + 0x38]
movsxd rdx, dword [r15 + 0xc]
test edx, edx
je 0x140148905
mov rcx, qword [rax + 0x100]
test rcx, rcx
je 0x1401488cd
mov rax, qword [rcx + 8]
test rax, rax
je 0x14014888c
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140148880
imul rdi, rdx, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x1401488d6
mov rbx, qword [rsi + 0x38]
mov rcx, rbx
call fcn.1400fb5d0
mov rbx, qword [rbx + 0x30]
movabs r13, 0x7fffffffffffffff
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x50], rbx
cmp rbx, r13
jl 0x1401488c4
or dword [rsi + 8], 2
jmp 0x140148854
inc rbx
mov qword [rbp - 0x50], rbx
jmp 0x140148854
imul rdi, rdx, 0x38
add rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.14014ec40
mov rax, qword [rdi]
cmp rax, r13
je 0x14014bf0c
test byte [rsi + 8], 2
jne 0x14014bf0c
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp - 0x50], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x14014897d
xor r13d, r13d
mov edi, r13d
lea rdx, [rbp - 0x50]
mov ecx, 8
call fcn.1400d5c30
mov rbx, qword [rbp - 0x50]
movabs rax, 0x3fffffffffffffff
mov rcx, qword [rsi + 0x38]
and rbx, rax
inc rbx
lea rax, [rbp - 0x68]
mov r8, rbx
mov qword [rbp - 0x50], rbx
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor edx, edx
call fcn.140115560
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014896b
cmp dword [rbp - 0x68], r13d
jne 0x14014897d
inc edi
cmp edi, 0x64
jl 0x140148911
mov eax, 0xd
mov r14, qword [rsp + 0x48]
mov rdi, r15
mov ebx, 1
jmp 0x14014bfb7
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov byte [rsi + 3], 0
mov dword [rsi + 0x28], r10d
movzx esi, byte [rsp + 0x30]
mov qword [r14], rbx
mov r14, qword [rsp + 0x60]
jmp 0x140145aa7
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r11 + 0x78]
add rdx, r14
mov rbx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov r8, qword [rcx + r14]
mov rcx, qword [rsp + 0x38]
mov qword [rbp + 0x1a8], r8
cmp byte [rcx + 1], 0xfa
jne 0x140148a0f
cmp qword [r12 + 0x130], 0
je 0x140148a0f
movsx rcx, byte [rbx + 1]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax]
mov rcx, qword [rsp + 0x38]
mov rdi, qword [rcx + 0x10]
jmp 0x140148a15
mov rdi, r10
mov rsi, r10
movzx eax, word [rcx + 2]
test al, 1
je 0x140148a2c
inc dword [r11 + 0x3c]
movzx eax, word [rcx + 2]
mov r8, qword [rbp + 0x1a8]
test al, 0x20
je 0x140148a35
mov qword [r12 + 0x38], r8
mov rax, qword [rdx + 0x10]
mov qword [rbp + 0x1b0], rax
mov eax, dword [rdx + 0xc]
mov dword [rbp + 0x1c4], eax
test byte [rcx + 2], 0x10
je 0x140148a55
mov r9d, dword [rbx + 0x2c]
jmp 0x140148a58
mov r9d, r10d
mov eax, 0x4000
test word [rdx + 8], ax
je 0x140148a6d
mov eax, dword [rdx]
mov dword [rbp + 0x1c8], eax
jmp 0x140148a74
mov dword [rbp + 0x1c8], r10d
mov qword [rbp + 0x1a0], r10
lea rdx, [rbp + 0x1a0]
movzx r8d, word [rcx + 2]
mov rcx, qword [rbx + 0x38]
and r8d, 0xa
call fcn.140114a10
xor r10d, r10d
mov byte [rbx + 3], 0
mov dword [rsp + 0x40], eax
mov dword [rbx + 0x28], r10d
test eax, eax
jne 0x14014bfa5
test rdi, rdi
je 0x14014ba5e
mov rax, qword [rsp + 0x38]
mov edx, 0x12
mov r9, qword [rdi]
mov r8, rsi
mov rcx, qword [r12 + 0x128]
test byte [rax + 2], 4
mov eax, 0x17
cmovne edx, eax
mov rax, qword [rbp + 0x1a8]
mov qword [rsp + 0x20], rax
call qword [r12 + pe_nt_image_headers64]
mov r11, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x30]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9b
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov r15d, dword [rax + 8]
mov rax, qword [r11 + 0x78]
mov r11, qword [rsp + 0x38]
mov rdi, qword [rax + rcx*8]
cmp byte [r11 + 1], 0xfa
jne 0x140148b6a
cmp qword [r12 + 0x130], 0
je 0x140148b6a
movsx rcx, byte [rdi + 1]
mov rax, qword [r12 + 0x20]
mov rsi, qword [r11 + 0x10]
shl rcx, 5
test byte [r11 + 2], 2
mov r14, qword [rcx + rax]
je 0x140148b70
cmp byte [rdi + 4], 0
je 0x140148b70
mov rbx, qword [rdi + 0x38]
mov rcx, rbx
call fcn.1400fb5d0
mov rax, qword [rbx + 0x30]
mov r11, qword [rsp + 0x38]
mov qword [rdi + 0x58], rax
jmp 0x140148b70
mov r14, r10
mov rsi, r10
movzx edx, byte [r11 + 2]
mov rcx, qword [rdi + 0x38]
call fcn.140114420
xor r10d, r10d
mov dword [rsp + 0x40], eax
mov qword [rdi + 0x28], r10
test eax, eax
jne 0x14014bfa5
mov r11, qword [rsp + 0x48]
test r15b, 1
je 0x14014ba63
inc dword [r11 + 0x3c]
mov r10, qword [r12 + 0x130]
test r10, r10
je 0x14014b9db
test byte [rsi + 0x40], 0x80
jne 0x14014b9db
mov rax, qword [rdi + 0x58]
mov r8, r14
mov r9, qword [rsi]
mov edx, 9
mov rcx, qword [r12 + 0x128]
mov qword [rsp + 0x20], rax
call r10
jmp 0x1401477af
mov eax, dword [r11 + 0x3c]
mov dword [r12 + 0x74], eax
add dword [r12 + 0x78], eax
mov dword [r11 + 0x3c], r10d
jmp case.0x1401451a8.85
mov rbx, qword [rsp + 0x38]
mov rax, qword [r11 + 0x78]
movsxd rcx, dword [rbx + 4]
mov edi, dword [rbx + 0x10]
mov rdx, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul r15, rax, 0x38
mov rbx, qword [rdx + 0x38]
mov rsi, qword [rdx + 0x40]
add r15, r14
mov r14, qword [rbx + 0x30]
test r14, r14
jne 0x140148c46
mov rcx, rsi
call fcn.140144190
mov qword [rbx + 0x30], rax
mov r14, rax
test rax, rax
je 0x14014c416
mov word [rax + 0x10], di
cmp byte [rbx + 0x58], 0
je 0x140148c82
cmp byte [rbx + 0x59], 0
je 0x140148c60
mov rax, qword [rbx + 0x10]
mov r8, qword [rax + 0x28]
add rax, 0x14
jmp 0x140148c8a
mov rdx, qword [rbx + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov r8, qword [rax + 0x28]
add rax, 0x14
jmp 0x140148c8a
mov rax, qword [rbx + 0x38]
lea r8, [rax + 0x10]
mov edx, dword [rax]
mov r9, r14
mov rcx, rsi
call fcn.140150760
xor r10d, r10d
mov ecx, r10d
test edi, edi
jle 0x140148cc3
mov rax, qword [r14 + 8]
add rax, 8
nop dword [rax]
test byte [rax], 1
jne 0x14014ac18
inc ecx
add rax, 0x38
cmp ecx, edi
jl 0x140148cb0
mov rdx, qword [r15 + 0x10]
xor r9d, r9d
mov ecx, dword [r15 + 0xc]
mov r8, r14
call fcn.14014fec0
mov r15, qword [rsp + 0x38]
xor r10d, r10d
mov dword [rsp + 0x40], r10d
test eax, eax
jmp 0x1401485d0
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rbx, rax, 0x38
mov rax, qword [r11 + 0x78]
add rbx, r14
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
cmp byte [rax + 0x58], 0
je 0x140148d46
cmp byte [rax + 0x59], 0
je 0x140148d24
mov rax, qword [rax + 0x10]
mov rsi, qword [rax + 0x28]
add rax, 0x14
jmp 0x140148d4e
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 0x140148d4e
mov rax, qword [rax + 0x38]
lea rsi, [rax + 0x10]
movsxd rdi, dword [rax]
cmp dword [rbx + 0x20], edi
jge 0x140148d6d
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.14014ea40
test eax, eax
jne 0x14014c416
jmp 0x140148d7a
mov rax, qword [rbx + 0x18]
mov qword [rbx + 0x10], rax
and word [rbx + 8], 0x2d
mov dword [rbx + 0xc], edi
mov eax, 0x3e40
and word [rbx + 8], ax
mov r8, rdi
or word [rbx + 8], 0x10
mov rdx, rsi
mov rcx, qword [rbx + 0x10]
call fcn.14019bf80
mov rax, qword [rsp + 0x38]
xor r10d, r10d
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r11 + 0x78]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov dword [rsp + 0x40], r10d
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x28], r10d
jmp 0x140145aa7
mov rbx, qword [rsp + 0x38]
mov rcx, r11
mov rdx, rbx
call fcn.140102950
movsxd rdx, dword [rbx + 4]
mov rdi, rax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x78]
mov rdx, qword [rcx + rdx*8]
mov rbx, qword [rdx + 0x38]
mov rcx, rbx
call fcn.1400fb5d0
mov edx, dword [rbx + 0x40]
cmp edx, dword [r12 + 0x7c]
ja 0x14014c0e9
mov r8, rdi
mov rcx, rbx
call fcn.14014e9e0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bfa5
mov r15, qword [rsp + 0x38]
cmp dword [r15 + 0xc], eax
jne 0x14014ba43
mov eax, 0x1000
test word [rdi + 8], ax
je 0x14014ba43
mov rcx, rdi
call fcn.14014eca0
test eax, eax
jne 0x14014c3fd
jmp 0x140145a96
mov rbx, qword [rsp + 0x38]
mov rcx, r11
mov rdx, rbx
call fcn.140102950
mov r11, qword [rsp + 0x48]
mov rdi, rax
movsxd rdx, dword [rbx + 4]
mov rcx, qword [r11 + 0x78]
mov rbx, qword [rcx + rdx*8]
cmp byte [rbx + 2], 0
je 0x140148ea7
mov r15, qword [rsp + 0x38]
mov r8d, 1
mov edi, dword [rsp + 0x50]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov word [rax + 8], r8w
jmp case.0x1401451a8.85
cmp byte [rbx + 3], 0
je 0x140148ec2
mov rax, qword [rbx + 0x58]
mov r15, qword [rsp + 0x38]
mov qword [rbp - 8], rax
mov qword [rdi], rax
jmp 0x140145a9b
cmp byte [rbx], 2
jne 0x140148f0b
mov rcx, qword [rbx + 0x38]
lea rdx, [rbp - 8]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rcx, qword [rsp + 0x48]
mov rdx, rbx
mov dword [rsp + 0x40], eax
call fcn.140152070
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfa5
mov rax, qword [rbp - 8]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [rdi], rax
jmp 0x140145a9b
mov rax, qword [rbx + 0x38]
cmp byte [rax], 0
je 0x140148f32
mov rcx, rbx
call fcn.1400fc200
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bfa5
mov r11, qword [rsp + 0x48]
xor r10d, r10d
jmp 0x140148f3a
xor r10d, r10d
mov dword [rsp + 0x40], r10d
cmp byte [rbx + 2], 0
je 0x140148f5e
mov r15, qword [rsp + 0x38]
mov r8d, 1
mov r9, qword [rsp + 0x58]
mov word [rdi + 8], r8w
mov edi, dword [rsp + 0x50]
jmp case.0x1401451a8.85
mov rbx, qword [rbx + 0x38]
mov rcx, rbx
call fcn.1400fb5d0
mov rax, qword [rbx + 0x30]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [rbp - 8], rax
mov qword [rdi], rax
jmp 0x140145a9b
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rbx, qword [rax + rcx*8]
mov byte [rbx + 2], 1
mov dword [rbx + 0x28], r10d
cmp byte [rbx], 0
jne 0x14014ba80
mov rbx, qword [rbx + 0x38]
mov rcx, qword [rbx + 0x18]
call fcn.1400d5ae0
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x58]
mov qword [rbx + 0x18], r10
mov byte [rbx], 1
jmp 0x140145aa7
mov rax, qword [rsp + 0x38]
mov dword [rbp - 0x44], r10d
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rdi + 0x38]
cmp bl, 0x81
jne 0x140148fff
mov dword [rdi + 0x2c], 0xffffffff
cmp byte [rcx], 0
je 0x14014b99e
lea rdx, [rbp - 0x44]
call fcn.1401154e0
mov dword [rsp + 0x40], eax
xor r10d, r10d
mov eax, dword [rbp - 0x44]
mov byte [rdi + 2], al
mov byte [rdi + 3], 0
mov dword [rdi + 0x28], r10d
cmp dword [rsp + 0x40], r10d
jne 0x14014bfa1
mov r15, qword [rsp + 0x38]
cmp dword [r15 + 8], r10d
jle 0x14014ba2b
lea r8d, [r10 + 1]
test eax, eax
jne 0x1401483ac
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp case.0x1401451a8.85
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x38]
mov rcx, rbx
call fcn.1400ffea0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401490df
xor edx, edx
mov rcx, rbx
mov dword [rbp - 0x70], edx
call fcn.1400ffc00
mov dword [rsp + 0x40], eax
mov edx, dword [rbp - 0x70]
mov r13d, 1
xor r10d, r10d
test eax, eax
jne 0x14014bfa5
test edx, edx
jne 0x14014b362
mov rcx, rbx
call fcn.140116480
test rax, rax
js 0x14014ba0f
mov rcx, rax
call fcn.14012f800
mov r15, qword [rsp + 0x38]
xor r10d, r10d
movsx ecx, ax
cmp ecx, dword [r15 + 0xc]
jge 0x14014b9fb
mov dword [rbp - 0x70], r13d
jmp 0x140146a4c
cmp eax, 0x10
jne 0x14014908c
mov r13d, 1
xor r10d, r10d
mov edx, r13d
mov eax, r10d
mov dword [rbp - 0x70], edx
mov dword [rsp + 0x40], eax
jmp 0x140149098
inc dword [r11 + 0xdc]
mov rax, qword [rsp + 0x38]
mov r13d, 1
mov edi, r13d
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rsi, qword [rax + rcx*8]
mov rbx, qword [rsi + 0x38]
cmp byte [rsi], r13b
jne 0x14014917f
cmp byte [rbx + 0x58], 0
mov dword [rsp + 0x40], r10d
jne 0x140149151
cmp qword [rbx + 0x38], 0
lea rdx, [rbx + 0x38]
je 0x1401491aa
lea rcx, [rbx + 0x60]
mov edi, r10d
call fcn.1401631f0
mov dword [rsp + 0x40], eax
xor r10d, r10d
jmp 0x1401491aa
mov rcx, rbx
call fcn.1401623e0
mov edx, eax
mov rcx, rbx
call fcn.140162550
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014914c
mov rcx, rbx
call fcn.140162fb0
xor r10d, r10d
mov dword [rsp + 0x40], eax
mov edi, r10d
jmp 0x1401491aa
mov rcx, rbx
call fcn.1400ffea0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401491e2
xor edx, edx
mov rcx, rbx
mov edi, edx
call fcn.1400ffc00
mov dword [rsp + 0x40], eax
xor r10d, r10d
mov byte [rsi + 3], 0
mov dword [rsi + 0x28], r10d
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfa5
mov r15, qword [rsp + 0x38]
mov r8, r13
mov byte [rsi + 2], dil
test edi, edi
jne 0x1401483ac
movzx esi, byte [rsp + 0x30]
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp case.0x1401451a8.85
cmp eax, 0x10
jne 0x14014919f
xor r10d, r10d
mov dword [rsp + 0x40], r10d
jmp 0x1401491a2
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rbx, qword [rdi + 0x38]
cmp byte [rbx + 0x58], 0
je 0x140149261
cmp byte [rbx + 0x59], 0
je 0x140149239
mov rcx, qword [rbx + 0x10]
call fcn.1401616c0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x140149299
mov rax, qword [rbx + 0x10]
xor r10d, r10d
cmp qword [rax + 0x18], r10
jne 0x140149293
lea eax, [r10 + 0x65]
jmp 0x1401492c1
mov rcx, qword [rbx + 0x18]
lea rdx, [rbp - 0x40]
mov dword [rbp - 0x40], r10d
call fcn.140161110
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x140149299
xor r10d, r10d
cmp dword [rbp - 0x40], r10d
je 0x1401492c5
lea eax, [r10 + 0x65]
jmp 0x1401492c1
mov rdx, qword [rbx + 0x38]
mov rax, qword [rdx + 8]
mov qword [rbx + 0x38], rax
mov qword [rdx + 8], r10
cmp qword [rbx + 0x40], 0
jne 0x140149283
mov rcx, r12
call fcn.140162f20
xor r10d, r10d
cmp qword [rbx + 0x38], 0
mov eax, 0x65
cmovne eax, r10d
jmp 0x1401492c1
mov eax, dword [rsp + 0x40]
jmp 0x1401492c5
xor r10d, r10d
jmp 0x1401492c5
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
mov rcx, qword [rdi + 0x38]
mov edx, dword [rax + 0xc]
call qword [rax + 0x10]
xor r10d, r10d
mov dword [rsp + 0x40], eax
mov dword [rdi + 0x28], r10d
test eax, eax
jne 0x1401492ea
mov rcx, qword [rsp + 0x48]
mov byte [rdi + 2], al
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
inc dword [rcx + rax*4 + 0xd4]
jmp case.0x1401451a8.11
cmp eax, 0x65
jne 0x14014bfa5
mov dword [rsp + 0x40], r10d
mov byte [rdi + 2], 1
jmp 0x14014b552
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, r14
test byte [rcx + 2], 1
je 0x14014932c
inc dword [r11 + 0x3c]
mov eax, 0x4000
test word [rbx + 8], ax
je 0x14014934a
mov rcx, rbx
call fcn.14014e760
test eax, eax
jne 0x14014bfa5
xor r10d, r10d
movsxd rax, dword [rbx + 0xc]
mov r11, qword [rsp + 0x38]
mov qword [rbp + 0x228], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0x220], rax
movsxd rax, dword [r11 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0x238], rcx
movzx eax, word [r11 + 0x10]
mov word [rbp + 0x240], ax
movzx r8d, word [r11 + 2]
test r8b, 0x10
je 0x140149394
mov r9d, dword [rdi + 0x2c]
jmp 0x140149397
mov r9d, r10d
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp + 0x220]
and r8d, 0xa
call fcn.140114a10
xor r10d, r10d
mov dword [rsp + 0x40], eax
mov dword [rdi + 0x28], r10d
test eax, eax
jne 0x14014bfa5
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp 0x140145aa7
mov rbx, qword [rsp + 0x38]
mov rax, qword [r11 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, r14
test word [rbx + 8], ax
je 0x14014940d
mov rcx, rbx
call fcn.14014e760
test eax, eax
jne 0x14014bfa5
mov rdx, rbx
mov rcx, rdi
call fcn.140151420
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bfa5
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9b
mov rax, qword [rsp + 0x38]
lea rdx, [rbp + 0x170]
xor r9d, r9d
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rbx + 0x40]
mov rdi, qword [rbx + 0x38]
mov qword [rbp + 0x170], rax
movzx eax, word [rcx + 0xc]
mov word [rbp + 0x180], ax
mov byte [rbp + 0x182], 0
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
lea rax, [rbp - 0x1c]
add rcx, r14
mov qword [rsp + 0x20], rax
mov qword [rbp + 0x178], rcx
mov rcx, rdi
call fcn.140115560
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bfa5
cmp dword [rbp - 0x1c], eax
jne 0x1401494e0
mov dl, 4
mov rcx, rdi
call fcn.140114420
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bfa5
mov r15, qword [rsp + 0x38]
xor r10d, r10d
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov qword [rbx + 0x28], r10
jmp 0x140145aa7
mov r15, qword [rsp + 0x38]
cmp word [r15 + 2], 0
jne 0x14014bf23
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov qword [rbx + 0x28], r10
jmp 0x140145aa7
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
cmp byte [rax], 0
je 0x14014954c
mov rcx, rbx
call fcn.1400fc200
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bfa5
mov r11, qword [rsp + 0x48]
lea r8d, [rax + 1]
mov r9, qword [rsp + 0x58]
xor r10d, r10d
jmp 0x140149551
mov dword [rsp + 0x40], r10d
cmp byte [rbx + 2], 0
jne 0x1401495e2
mov rdx, qword [rbx + 0x38]
lea r8, [rbp]
mov rcx, r12
mov qword [rbp], r10
call fcn.14014d920
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014bfa5
mov rax, qword [rsp + 0x38]
cmp byte [rax], 0x85
jne 0x1401495bf
movsxd rcx, dword [rax + 0xc]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov rax, qword [r11 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp]
mov word [rdx + 2], 0x100
mov qword [rdx + 0x58], rax
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x20], rax
mov qword [rdx + 0x30], rbx
jmp 0x140145a9f
mov rcx, qword [rsp + 0x48]
mov rdx, rax
call fcn.140102950
mov rcx, qword [rbp]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [rax], rcx
jmp 0x140145a9f
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x140149611
call fcn.140160bb0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov r15, qword [rsp + 0x38]
mov word [rcx + 8], r8w
jmp case.0x1401451a8.85
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x140146878
call fcn.14014d030
jmp 0x1401480e4
mov rax, qword [rsp + 0x38]
cmp bl, 0x28
mov edi, r10d
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rdx + 0x40]
mov rbx, qword [rdx + 0x38]
mov qword [rbp + 0x188], rax
movzx eax, word [rcx + 0x10]
mov word [rbp + 0x198], ax
sbb al, al
mov byte [rbp + 0x19a], al
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0x190], rcx
mov rcx, rbx
call fcn.1400fb5d0
mov r10d, dword [rbx + 0x40]
lea rax, [r10 - 1]
cmp rax, 0x7ffffffe
ja 0x14014977d
mov qword [rbp + 0x128], r12
xor r8d, r8d
mov word [rbp + 0x108], r8w
mov dword [rbp + 0x120], r8d
mov rax, qword [rbx + 0x88]
movzx ecx, word [rbx + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rbx + 0x38]
cmp ecx, edx
jle 0x1401496e7
test edx, edx
mov ecx, edx
cmovs ecx, r8d
mov rdx, qword [rbx + 0x38]
mov qword [rbp + 0x110], rdx
cmp r10d, ecx
ja 0x14014970c
mov eax, 0x1010
mov dword [rbp + 0x10c], r10d
mov word [rbp + 0x108], ax
jmp 0x14014973c
lea r9, [rbp + 0x100]
mov r8d, r10d
xor edx, edx
mov rcx, rbx
call fcn.14014e8d0
mov dword [rsp + 0x40], eax
mov ecx, eax
test eax, eax
jne 0x1401497b3
mov rdx, qword [rbp + 0x110]
mov r10d, dword [rbp + 0x10c]
xor r9d, r9d
lea r8, [rbp + 0x188]
mov ecx, r10d
call fcn.14014fec0
mov edi, eax
mov eax, 0x2400
test word [rbp + 0x108], ax
jne 0x140149767
cmp dword [rbp + 0x120], 0
je 0x140149773
lea rcx, [rbp + 0x100]
call fcn.140160ae0
xor r10d, r10d
mov dword [rsp + 0x40], r10d
jmp 0x1401497b6
xor edx, edx
lea rax, [0x14022a404]
mov edi, edx
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov r9d, 0x1426d
lea r8, str.database_corruption
mov ecx, VariantTimeToDosDateTime
call fcn.1400de6d0
mov dword [rsp + 0x40], VariantTimeToDosDateTime
xor r10d, r10d
mov rax, qword [rsp + 0x38]
movzx ecx, byte [rax]
mov eax, dword [rsp + 0x40]
and cl, 1
test eax, eax
jne 0x14014bfa5
mov r15, qword [rsp + 0x38]
lea eax, [rdi + 1]
neg edi
mov r8d, 1
test cl, cl
cmovne edi, eax
test edi, edi
jg 0x1401483ac
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp case.0x1401451a8.85
mov rbx, qword [rsp + 0x38]
mov rcx, r11
mov rdx, rbx
call fcn.140102950
mov rsi, rax
xor r13d, r13d
mov eax, 1
mov word [rsi + 8], ax
mov ecx, dword [r12 + 0xd8]
inc ecx
cmp dword [r12 + 0xcc], ecx
jg 0x14014bf2a
movsxd r15, dword [rbx + 0xc]
mov rax, qword [r12 + 0x20]
mov r14, r15
mov edi, dword [rbx + 4]
shl r14, 5
mov dword [rbp - 0x3c], r13d
mov rbx, qword [r14 + rax + 8]
cmp byte [rbx + 0x11], r13b
je 0x140149867
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], r13b
jne 0x140149867
mov rcx, rbx
call fcn.1400e9d10
lea r8, [rbp - 0x3c]
mov edx, edi
mov rcx, rbx
call fcn.1400e94b0
mov dword [rsp + 0x40], eax
cmp byte [rbx + 0x11], r13b
je 0x14014988d
sub dword [rbx + 0x14], 1
jne 0x14014988d
mov rcx, rbx
call fcn.14015e100
movsxd rdx, dword [rbp - 0x3c]
mov eax, 4
mov word [rsi + 8], ax
mov eax, dword [rsp + 0x40]
mov qword [rsi], rdx
test eax, eax
jne 0x14014c425
test edx, edx
je 0x14014b9d6
mov rax, qword [rsp + 0x38]
mov r9, qword [r12 + 0x20]
mov r8d, dword [rax + 4]
mov rcx, qword [r14 + r9 + 0x18]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1401498ea
nop dword [rax]
mov rcx, qword [rax + 0x10]
cmp dword [rcx + 0x38], edx
jne 0x1401498dd
mov dword [rcx + 0x38], r8d
mov rax, qword [rax]
test rax, rax
jne 0x1401498d0
mov rcx, qword [r14 + r9 + 0x18]
mov rax, qword [rcx + 0x28]
test rax, rax
je 0x140149908
mov rcx, qword [rax + 0x10]
cmp dword [rcx + 0x58], edx
jne 0x140149900
mov dword [rcx + 0x58], r8d
mov rax, qword [rax]
test rax, rax
jne 0x1401498f3
lea ecx, [r15 + 1]
mov byte [rsp + 0x70], cl
jmp 0x1401477af
mov r11, qword [rsp + 0x38]
lea r8, [rbp - 0x58]
mov dword [rbp - 0x58], r10d
mov rcx, qword [r12 + 0x20]
cmp dword [r11 + 0xc], 0
movsxd rax, dword [r11 + 8]
mov edx, dword [r11 + 4]
cmove r8, r10
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1401138e0
mov r15, qword [rsp + 0x38]
mov r11, qword [rsp + 0x48]
mov dword [rsp + 0x40], eax
cmp dword [r15 + 0xc], 0
je 0x14014997a
mov eax, dword [rbp - 0x58]
add dword [r11 + 0x3c], eax
movsxd rax, dword [r15 + 0xc]
test eax, eax
jle 0x140149976
imul rcx, rax, 0x38
movsxd rax, dword [rbp - 0x58]
add qword [rcx + r14], rax
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfa5
jmp 0x140145a9f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x1401499b8
mov rdx, qword [rcx + 0x38]
mov rcx, r12
call fcn.140150f90
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov rcx, qword [rcx + 0x38]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.1401138e0
jmp 0x1401480e4
mov rdx, qword [rsp + 0x38]
mov rcx, r11
call fcn.140102950
mov rbx, rax
lea rdx, [rbp - 0x38]
mov rax, qword [rsp + 0x38]
xor r13d, r13d
mov dword [rbp - 0x38], r13d
movsxd rcx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
shl rcx, 5
add rcx, qword [r12 + 0x20]
mov rcx, qword [rcx + 8]
call fcn.140114320
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014c425
movsxd rax, dword [rbp - 0x38]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [rbx], rax
jmp 0x140145a9f
mov rax, qword [rsp + 0x38]
xor r9d, r9d
inc byte [r12 + 0x6a]
xor r8d, r8d
mov rcx, r12
mov qword [rsp + 0x20], r10
mov rdx, qword [rax + 0x10]
call fcn.1400d4550
dec byte [r12 + 0x6a]
jmp 0x1401480e4
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x10], 0
movsxd rbx, dword [rax + 4]
jne 0x140149abb
mov rcx, qword [r12 + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.14013a3d0
mov r8, qword [rsp + 0x48]
mov r9d, 1
and dword [r12 + 0x2c], 0xffffffef
add r8, 0xa8
mov edx, ebx
mov rcx, r12
call fcn.14012bc00
mov r11, qword [rsp + 0x48]
or dword [r12 + 0x2c], 1
mov dword [rsp + 0x40], eax
and dword [r11 + 0xc8], 0xfffffffc
jmp 0x140149b80
mov qword [rbp + 0x60], r12
lea rax, [r11 + 0xa8]
mov qword [rbp + 0x68], rax
lea r9, str.sqlite_master
mov rax, qword [rsp + 0x38]
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
mov dword [rbp + 0x70], ebx
mov rcx, rbx
mov dword [rbp + 0x78], r10d
mov r8, qword [r12 + 0x20]
mov rax, qword [rax + 0x10]
shl rcx, 5
mov qword [rsp + 0x20], rax
mov r8, qword [rcx + r8]
mov rcx, r12
call fcn.14012f9d0
mov rbx, rax
test rax, rax
je 0x14014bf44
xor eax, eax
mov byte [r12 + 0xb5], 1
lea r9, [rbp + 0x60]
mov dword [rbp + 0x74], eax
lea r8, [fcn.14012b9b0]
mov dword [rbp + 0x7c], eax
mov rdx, rbx
mov qword [rsp + 0x20], rax
mov rcx, r12
call fcn.1400d4550
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x140149b63
mov eax, dword [rbp + 0x74]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x140149b63
cmp dword [rbp + 0x7c], eax
jne 0x140149b63
mov ecx, 0x1647c
call fcn.140119b80
mov dword [rsp + 0x40], eax
mov rdx, rbx
mov rcx, r12
call fcn.14011b920
mov eax, dword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
mov byte [r12 + 0xb5], 0
test eax, eax
jne 0x14014bf4d
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov rax, qword [rsp + 0x38]
mov rcx, r12
mov edx, dword [rax + 4]
call fcn.1401112a0
jmp 0x1401480e4
mov rax, qword [rsp + 0x38]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rdx, qword [rax + 0x10]
shl rcx, 5
add rcx, qword [r12 + 0x20]
mov rcx, qword [rcx + 0x18]
add rcx, 8
call fcn.14012b020
test rax, rax
je 0x140149bf2
cmp qword [r12 + 0x2d8], 0
jne 0x140149be7
mov ecx, 0xffffffff
add dword [rax + 0x3c], ecx
jne 0x140149bf2
mov rdx, rax
mov rcx, r12
call fcn.1400f1b70
or dword [r12 + 0x2c], 1
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov r11, qword [rsp + 0x38]
xor r8d, r8d
mov rax, qword [r12 + 0x20]
movsxd rcx, dword [r11 + 4]
mov rdx, qword [r11 + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
add rcx, 0x20
call fcn.14012b020
mov rdx, rax
test rax, rax
je 0x140149bf2
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
cmp rcx, rdx
jne 0x140149c68
mov rcx, qword [rdx + 0x28]
mov qword [rax + 0x10], rcx
mov rcx, r12
call fcn.140126ac0
or dword [r12 + 0x2c], 1
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
test rcx, rcx
je 0x140149ca6
nop dword [rax]
mov rax, qword [rcx + 0x28]
cmp rax, rdx
je 0x140149c9e
mov rcx, rax
test rax, rax
jne 0x140149c70
mov rcx, r12
call fcn.140126ac0
or dword [r12 + 0x2c], 1
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov rax, qword [rdx + 0x28]
mov qword [rcx + 0x28], rax
mov rcx, r12
call fcn.140126ac0
or dword [r12 + 0x2c], 1
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov rax, qword [rsp + 0x38]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.140140690
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov r11, qword [rsp + 0x38]
lea r9, [rbp - 0x30]
mov rdx, qword [r12 + 0x20]
mov qword [rsp + 0x28], r9
movsxd rax, dword [r11 + 0xc]
mov r8, qword [r11 + 0x10]
mov r9d, dword [r11 + 8]
add r8, 4
imul rdi, rax, 0x38
movsxd rax, dword [r11 + 4]
imul rbx, rax, 0x38
mov ecx, dword [rdi + r14]
movzx eax, word [r11 + 2]
inc ecx
shl rax, 5
add rbx, r14
mov dword [rsp + 0x20], ecx
mov rcx, r12
mov rdx, qword [rax + rdx + 8]
call fcn.140114e60
mov rsi, rax
mov eax, 0x2400
test word [rbx + 8], ax
je 0x140149d50
mov rcx, rbx
call fcn.140160bb0
jmp 0x140149d59
mov eax, 1
mov word [rbx + 8], ax
mov eax, dword [rbp - 0x30]
test eax, eax
je 0x140149d92
test rsi, rsi
je 0x14014c3fd
dec eax
mov r9b, 1
movsxd rcx, eax
mov r8d, 0xffffffff
sub qword [rdi + r14], rcx
lea rax, [fcn.1400d5ae0]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov rdx, rsi
call fcn.14014f040
test byte [rbx + 8], 2
movzx esi, byte [rsp + 0x30]
je 0x14014b552
cmp byte [rbx + 0xa], sil
je 0x14014b552
movzx edx, sil
mov rcx, rbx
call fcn.14014f4a0
jmp 0x14014b552
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
add rbx, r14
imul rdi, rax, 0x38
test byte [rbx + 8], 0x10
jne 0x140149dea
mov rcx, rbx
call fcn.14014ef30
test eax, eax
jne 0x14014c3fd
mov rdx, qword [rdi + r14]
mov rcx, qword [rbx + 0x10]
call fcn.1401394f0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9b
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r14
movzx eax, word [rdi + 8]
test al, 0x10
je 0x140149eaf
mov rbx, qword [rdi + 0x10]
movzx eax, word [rbx + 0x32]
test al, 2
jne 0x140149e51
test al, 1
jne 0x140149e49
mov rcx, qword [rbx + 0x10]
call fcn.14010c7a0
mov qword [rbx + 0x10], rax
mov r8d, 1
movzx eax, word [rbx + 0x32]
or ax, 3
mov word [rbx + 0x32], ax
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x140149eab
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x140149e72
mov rcx, rbx
call fcn.1401393a0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x140149e9a
mov rdx, rdi
call fcn.140161c80
jmp 0x14014b552
mov eax, 4
mov qword [rcx], rdi
mov word [rcx + 8], ax
jmp 0x14014b552
movzx eax, word [rdi + 8]
mov ecx, 0x2400
test cx, ax
je 0x140149ec6
mov rcx, rdi
call fcn.140160bb0
jmp case.0x1401451a8.11
mov word [rdi + 8], r8w
jmp case.0x1401451a8.11
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
mov edi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rsi, rax, 0x38
add rbx, r14
add rsi, r14
test byte [rbx + 8], 0x10
jne 0x140149f04
mov rcx, rbx
call fcn.14014ef30
test eax, eax
jne 0x14014c3fd
test edi, edi
je 0x140149f20
mov r8, qword [rsi]
mov edx, edi
mov rcx, qword [rbx + 0x10]
call fcn.140139560
test eax, eax
jne 0x14014b35f
test edi, edi
js 0x1401477b4
mov rdx, qword [rsi]
mov rcx, qword [rbx + 0x10]
call fcn.1401394f0
mov r11, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x30]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9b
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 0xc]
mov r15, qword [rcx + 0x10]
imul r14, rax, 0x38
add r14, qword [rsp + 0x60]
cmp word [rcx + 2], 0
je 0x140149f86
mov rax, qword [r11 + 0x100]
mov rcx, qword [r15 + 0x20]
test rax, rax
je 0x140149f86
cmp qword [rax + 0x38], rcx
je 0x14014bc28
mov rax, qword [rax + 8]
test rax, rax
jne 0x140149f73
mov eax, dword [r11 + 0x110]
cmp eax, dword [r12 + 0xa4]
jge 0x14014bf64
test byte [r14 + 8], 0x10
jne 0x14014a0dd
mov edx, dword [r15 + 0x10]
mov ecx, dword [r15 + 0xc]
add ecx, edx
test edx, edx
lea edi, [rcx + 1]
cmovne edi, ecx
lea eax, [rdi + 2]
imul ecx, eax, 7
mov eax, dword [r15 + 8]
add ecx, edx
add eax, 7
jns 0x140149fcc
add eax, 7
sar eax, 3
lea ebx, [rax + rcx*8]
mov rcx, r12
movsxd rdx, ebx
call fcn.14011bb30
mov rsi, rax
test rax, rax
je 0x14014c3fd
mov eax, 0x2400
test word [r14 + 8], ax
jne 0x140149ffc
cmp dword [r14 + 0x20], 0
je 0x14014a004
mov rcx, r14
call fcn.140160ae0
mov r11, qword [rsp + 0x48]
mov eax, 0x410
mov rcx, qword [rsp + 0x38]
sub rcx, qword [rsp + 0x58]
mov word [r14 + 8], ax
lea rax, [0x14014d280]
mov qword [r14 + 0x10], rsi
mov dword [r14 + 0xc], ebx
mov qword [r14 + 0x30], rax
mov qword [rsi], r11
mov dword [rsi + 0x60], edi
mov eax, dword [r15 + 0x10]
mov dword [rsi + 0x64], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x54], edx
mov rax, qword [r11 + 0x68]
mov qword [rsi + 0x20], rax
mov eax, dword [r11 + 0x28]
mov dword [rsi + 0x5c], eax
mov rax, qword [r11 + 0x78]
mov qword [rsi + 0x28], rax
mov eax, dword [r11 + 0x2c]
mov dword [rsi + 0x50], eax
mov rax, qword [r11 + 0x88]
mov qword [rsi + 0x10], rax
mov eax, dword [r11 + 0x90]
mov dword [rsi + 0x58], eax
mov rax, qword [r15 + 0x20]
mov qword [rsi + 0x38], rax
movsxd rax, dword [rsi + 0x60]
add rax, 2
imul rcx, rax, 0x38
lea rax, [rsi + 0x70]
add rcx, rsi
cmp rax, rcx
je 0x14014a0d1
mov edx, 0x80
nop dword [rax]
nop word [rax + rax]
mov word [rax + 8], dx
mov qword [rax + 0x28], r12
add rax, 0x38
cmp rax, rcx
jne 0x14014a0c0
mov eax, dword [r11 + 0x110]
xor r10d, r10d
jmp 0x14014a0e1
mov rsi, qword [r14 + 0x10]
inc eax
lea r14, [rsi + 0x70]
mov dword [r11 + 0x110], eax
mov rax, qword [r11 + 0x100]
mov qword [rsi + 8], rax
mov rax, qword [r12 + 0x38]
mov qword [rsi + 0x40], rax
mov eax, dword [r11 + 0x3c]
mov dword [rsi + 0x68], eax
mov rax, qword [r11]
mov qword [rsp + 0x60], r14
mov ecx, dword [rax + 0x74]
mov dword [rsi + 0x6c], ecx
mov rax, qword [r11 + 0x120]
mov qword [rsi + 0x48], rax
mov qword [r11 + 0x120], r10
mov dword [r11 + 0x3c], r10d
mov qword [r11 + 0x100], rsi
mov qword [r11 + 0x68], r14
mov eax, dword [rsi + 0x60]
mov dword [r11 + 0x28], eax
movzx eax, word [rsi + 0x64]
mov dword [r11 + 0x2c], eax
movsxd rax, dword [r11 + 0x28]
imul rdx, rax, 0x38
add rdx, r14
mov qword [r11 + 0x78], rdx
movsxd rax, dword [r15 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [rsi + 0x30], rcx
mov eax, dword [r15 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call fcn.14019bdd0
mov rcx, qword [r15]
mov r11, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x30]
mov qword [rsp + 0x58], rcx
mov qword [r11 + 0x88], rcx
mov eax, dword [r15 + 8]
mov dword [r11 + 0x90], eax
lea rax, [rcx - 0x18]
mov qword [rsp + 0x38], rax
jmp 0x14014b557
mov rdx, qword [rsp + 0x38]
mov rcx, r11
call fcn.140102950
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov r9, qword [r14 + 0x100]
movsxd rcx, dword [r9 + 0x54]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r9 + 0x10]
mov r8d, dword [rcx + rdx*8 + 4]
add r8d, dword [r15 + 4]
movsxd rcx, r8d
mov r8d, 0x1000
imul rdx, rcx, 0x38
mov rcx, rax
add rdx, qword [r9 + 0x20]
call fcn.14014f300
mov r11, r14
mov r14, qword [rsp + 0x60]
jmp 0x140145a9f
mov eax, dword [r12 + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x38]
mov r15, rax
jae 0x14014a22c
movsxd rax, dword [rax + 8]
add qword [r12 + 0x2d0], rax
jmp case.0x1401451a8.85
cmp dword [rax + 4], 0
lea rcx, [0x140000000]
movsxd rax, dword [rax + 8]
je 0x14014a25b
add qword [r12 + 0x2c8], rax
mov r12, qword [rsp + 0x68]
add r15, 0x18
mov r13d, dword [rsp + 0x54]
mov ebx, dword [rbp - 0x64]
jmp 0x14014517d
add qword [r11 + 0x50], rax
mov r12, qword [rsp + 0x68]
add r15, 0x18
mov r13d, dword [rsp + 0x54]
mov ebx, dword [rbp - 0x64]
jmp 0x14014517d
cmp dword [r15 + 4], 0
je 0x14014a29f
cmp qword [r12 + 0x2c8], 0
jne case.0x1401451a8.85
cmp qword [r12 + 0x2d0], 0
je 0x140146a57
jmp case.0x1401451a8.85
cmp qword [r11 + 0x50], 0
jmp 0x14014a285
mov rcx, qword [r11 + 0x100]
test rcx, rcx
je 0x14014a2df
mov rax, qword [rcx + 8]
test rax, rax
je 0x14014a2cc
nop dword [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14014a2c0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x14014a2ef
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r14
mov rcx, rdi
call fcn.14014ec40
mov r15, qword [rsp + 0x38]
movsxd rax, dword [r15 + 8]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.14014ec40
mov rax, qword [rbx]
xor r10d, r10d
mov r11, qword [rsp + 0x48]
cmp qword [rdi], rax
jge 0x14014b9a3
mov r9, qword [rsp + 0x58]
mov qword [rdi], rax
mov edi, dword [rsp + 0x50]
jmp 0x140145aa7
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r14]
test rdx, rdx
jle case.0x1401451a8.85
mov rax, r15
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r14], rdx
jmp 0x140146a57
mov rcx, qword [rsp + 0x38]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, r11
imul rdi, rax, 0x38
call fcn.140102950
mov rcx, qword [rbx + r14]
mov r10, rax
mov qword [rbp + 8], rcx
test rcx, rcx
jle 0x14014a3c9
mov rdx, qword [rdi + r14]
lea rcx, [rbp + 8]
mov eax, 0
test rdx, rdx
cmovle rdx, rax
call fcn.14010fdf0
test eax, eax
jne 0x14014a3c9
mov rax, qword [rbp + 8]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [r10], rax
jmp 0x140145a9b
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [r10], 0xffffffffffffffff
jmp 0x140145a9b
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r14]
test rax, rax
je 0x140146878
mov r15, qword [rsp + 0x38]
jle 0x140146a57
dec rax
mov qword [rcx + r14], rax
jmp 0x140146a57
mov rax, qword [rsp + 0x38]
movabs rdx, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r14]
cmp rax, rdx
jle 0x14014a437
dec rax
mov qword [rcx + r14], rax
mov r15, qword [rsp + 0x38]
test rax, rax
je 0x140146a57
jmp case.0x1401451a8.85
mov rax, qword [rsp + 0x38]
mov rcx, r12
movzx ebx, word [rax + 2]
mov edi, ebx
lea rdx, [rbx*8 + 0x68]
call fcn.14011ba30
mov r8, rax
test rax, rax
je 0x14014c3fd
mov r11, qword [rsp + 0x38]
xor r9d, r9d
mov qword [rax + 0x10], r9
add rdi, 6
lea rcx, [rax + rdi*8]
mov r13d, 1
mov rdi, qword [rsp + 0x48]
mov qword [rax], rcx
mov word [rcx + 8], r13w
mov qword [rcx + 0x28], r12
mov dword [rcx + 0x20], r9d
mov rcx, qword [r11 + 0x10]
mov qword [rax + 8], rcx
mov rcx, r11
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r8 + 0x20], edx
mov qword [r8 + 0x18], rdi
mov byte [r8 + 0x28], r9b
mov dword [r8 + 0x24], r9d
mov byte [r8 + 0x29], bl
mov word [r11], 0xf09b
mov qword [r11 + 0x10], r8
jmp 0x14014a4fb
mov rdi, qword [rsp + 0x48]
mov r13d, 1
mov r11, qword [rsp + 0x38]
movsxd rax, dword [r11 + 0xc]
mov rbx, qword [r11 + 0x10]
imul r10, rax, 0x38
add r10, r14
cmp qword [rbx + 0x10], r10
je 0x14014a551
mov qword [rbx + 0x10], r10
movzx eax, byte [rbx + 0x29]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x14014a551
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax]
mov eax, dword [r11 + 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 0x14014a530
inc dword [r10 + 0xc]
lea r8, [rbx + 0x30]
cmp dword [r11 + 4], 0
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
je 0x14014a570
call qword [rax + 0x30]
jmp 0x14014a573
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x14014b9b6
jle 0x14014a5a1
mov rcx, qword [rbx]
call fcn.1400d8680
mov r8, rax
lea rdx, [0x14021de64]
mov rcx, rdi
call fcn.140144fa0
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x40], eax
cmp byte [rbx + 0x28], 0
je 0x14014a5e0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x14014a5dc
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x14014a5d0
mov rdx, r13
call fcn.140161c80
jmp 0x14014a5dc
mov eax, 4
mov qword [rcx], r13
mov word [rcx + 8], ax
mov byte [rbx + 0x28], 0
mov rax, qword [rbx]
mov ecx, 0x2400
test word [rax + 8], cx
jne 0x14014a5f4
cmp dword [rax + 0x20], 0
je 0x14014a5ff
mov rcx, rax
call fcn.140160ae0
mov rax, qword [rbx]
mov word [rax + 8], r13w
xor r10d, r10d
mov eax, dword [rsp + 0x40]
mov dword [rbx + 0x24], r10d
jmp 0x1401493b6
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, r14
test eax, eax
je 0x14014a6cc
mov rsi, qword [rcx + 0x10]
imul rdi, rax, 0x38
xor eax, eax
mov qword [rbp + 0x138], rax
add rdi, r14
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x148], rax
mov qword [rbp + 0x150], rax
mov qword [rbp + 0x158], rax
mov qword [rbp + 0x160], rax
mov qword [rbp + 0x168], rax
mov eax, 0x2400
test word [rdi + 8], ax
je 0x14014a683
mov rcx, rdi
call fcn.140160bb0
jmp 0x14014a688
mov word [rdi + 8], r8w
lea rcx, [rbp + 0x138]
mov qword [rbp + 0x138], rdi
mov qword [rbp + 0x148], rbx
mov qword [rbp + 0x140], rsi
call qword [rsi + 0x28]
mov rax, qword [rsp + 0x38]
mov ecx, dword [rbp + 0x15c]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
mov dword [rsp + 0x40], ecx
add rbx, r14
jmp 0x14014a6de
mov rdx, qword [rcx + 0x10]
mov rcx, rbx
call fcn.14014e7c0
mov ecx, eax
mov dword [rsp + 0x40], eax
test ecx, ecx
jne 0x14014bf85
test byte [rbx + 8], 2
je 0x14014a6fe
cmp byte [rbx + 0xa], sil
je 0x14014a6fe
movzx edx, sil
mov rcx, rbx
call fcn.14014f4a0
mov rcx, rbx
call fcn.14014f470
mov r11, qword [rsp + 0x48]
test eax, eax
jne 0x14014c0ee
mov r15, qword [rsp + 0x38]
jmp 0x140145a9f
mov rbx, qword [rsp + 0x38]
lea rax, [rbp + 0x258]
lea r9, [rbp + 0x254]
mov dword [rbp + 0x250], r10d
mov rcx, r12
mov qword [rbp + 0x254], 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov r8d, dword [rbx + 8]
mov edx, dword [rbx + 4]
call fcn.140116fa0
mov dword [rsp + 0x40], eax
test eax, eax
je 0x14014a778
cmp eax, 5
jne 0x14014c439
xor eax, eax
mov dword [rsp + 0x40], eax
mov eax, 1
mov dword [rbp + 0x250], eax
movsxd rax, dword [rbx + 0xc]
mov r13d, 0x2400
imul rbx, rax, 0x38
add rbx, r14
xor eax, eax
mov edi, eax
lea esi, [rax + 4]
movsxd rax, dword [rbp + rdi*4 + 0x250]
test word [rbx + 8], r13w
je 0x14014a7ac
mov rdx, rax
mov rcx, rbx
call fcn.140161c80
jmp 0x14014a7b3
mov qword [rbx], rax
mov word [rbx + 8], si
inc rdi
add rbx, 0x38
cmp rdi, 3
jl 0x14014a790
mov r11, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x30]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9b
mov rbx, qword [rsp + 0x38]
mov rcx, r11
mov rdx, rbx
call fcn.140102950
mov r8d, dword [rbx + 0xc]
mov r15, rax
movsxd rdx, dword [rbx + 4]
mov rcx, qword [r12 + 0x20]
shl rdx, 5
cmp r8d, 0xffffffff
mov r14, qword [rdx + rcx + 8]
mov rcx, qword [r14 + 8]
mov rbx, qword [rcx]
movzx esi, byte [rbx + 9]
mov ecx, esi
cmovne ecx, r8d
cmp byte [rbx + 0x14], 3
jb 0x14014a824
xor r13d, r13d
mov eax, r13d
lea r8d, [r13 + 1]
jmp 0x14014a841
mov rax, qword [rbx + 0x50]
cmp qword [rax], 0
je 0x14014a835
cmp qword [rbx + 0x60], 0
jg 0x14014a818
mov r8d, 1
xor r13d, r13d
mov eax, r8d
test eax, eax
mov edi, esi
cmovne edi, ecx
cmp byte [rbx + 0x13], 0
lea rcx, [0x14021e6f4]
jne 0x14014a85c
mov rcx, qword [rbx + 0xd0]
cmp edi, 5
jne 0x14014a893
test rcx, rcx
je 0x14014a88c
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14014a870
and eax, 0x3fffffff
je 0x14014a88c
mov rcx, rbx
call fcn.1401324a0
test eax, eax
jne 0x14014a893
mov eax, esi
jmp 0x14014aa16
mov eax, edi
cmp edi, esi
je 0x14014aa16
cmp esi, 5
je 0x14014a8ab
cmp edi, 5
jne 0x14014aa16
cmp byte [r12 + 0x5f], 0
je 0x14014c042
cmp dword [r12 + 0xcc], 1
jg 0x14014c042
cmp esi, 5
jne 0x14014a9e3
cmp qword [rbx + 0x120], 0
mov dword [rsp + 0x40], r13d
jne 0x14014a971
mov dword [rbp - 0x34], r13d
movzx eax, byte [rbx + 0x15]
mov dword [rsp + 0x40], r13d
cmp al, 1
jb 0x14014a8f8
cmp al, sil
jne 0x14014a924
cmp byte [rbx + 0x11], 0
je 0x14014a905
mov dword [rsp + 0x40], r13d
jmp 0x14014a91a
mov rcx, qword [rbx + 0x48]
mov edx, r8d
mov rax, qword [rcx]
call qword [rax + 0x38]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014a924
cmp byte [rbx + 0x15], 5
je 0x14014a924
mov byte [rbx + 0x15], 1
cmp dword [rsp + 0x40], 0
jne 0x14014a9d5
mov rax, qword [rbx]
lea r9, [rbp - 0x34]
mov rdx, qword [rbx + 0x128]
xor r8d, r8d
mov rcx, rax
call qword [rax + 0x38]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014a9d5
cmp dword [rbp - 0x34], eax
je 0x14014a967
mov rcx, rbx
call fcn.140103490
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014a9d5
cmp qword [rbx + 0x120], 0
je 0x14014a9d5
mov rcx, rbx
call fcn.1401031a0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014a9d5
mov rax, qword [rbx + 0x110]
mov rdx, r12
movzx r8d, byte [rbx + 0xf]
mov r9d, dword [rbx + 0xbc]
mov rcx, qword [rbx + 0x120]
mov qword [rsp + 0x20], rax
call fcn.140152bf0
mov rcx, rbx
mov dword [rsp + 0x40], eax
mov qword [rbx + 0x120], r13
call fcn.140103220
cmp dword [rsp + 0x40], 0
je 0x14014a9d5
cmp byte [rbx + 8], 0
jne 0x14014a9d5
mov edx, 1
mov rcx, rbx
call fcn.140103de0
mov ecx, dword [rsp + 0x40]
mov eax, edi
test ecx, ecx
jne 0x14014aa1c
mov edx, edi
jmp 0x14014a9eb
cmp esi, 4
jne 0x14014a9f3
lea edx, [rsi - 2]
mov rcx, rbx
call fcn.140131d30
mov ecx, dword [rsp + 0x40]
mov eax, edi
test ecx, ecx
jne 0x14014aa1c
mov edx, r13d
cmp edi, 5
mov rcx, r14
sete dl
inc edx
call fcn.140116a20
mov dword [rsp + 0x40], eax
mov eax, edi
mov ecx, dword [rsp + 0x40]
test ecx, ecx
cmove esi, eax
mov rcx, rbx
mov edx, esi
call fcn.140131d30
mov ecx, 0xa02
mov word [r15 + 8], cx
cmp eax, 6
jne 0x14014aa3d
mov rcx, r13
jmp 0x14014aa4e
cdqe
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x2207f8]
mov qword [r15 + 0x10], rcx
test rcx, rcx
jne 0x14014aa5c
mov eax, r13d
jmp 0x14014aa71
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x14014aa63
and eax, 0x3fffffff
movzx esi, byte [rsp + 0x30]
mov dword [r15 + 0xc], eax
mov byte [r15 + 0xa], 1
test byte [r15 + 8], 2
je 0x14014aa98
cmp sil, 1
je 0x14014aa98
movzx edx, sil
mov rcx, r15
call fcn.14014f4a0
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014c425
mov r11, qword [rsp + 0x48]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9b
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
test eax, eax
je 0x14014aace
imul r9, rax, 0x38
add r9, r14
jmp 0x14014aad1
mov r9, r10
mov rax, qword [rsp + 0x38]
lea rcx, [r11 + 0xa8]
mov rdx, r12
mov r8d, dword [rax + 4]
call fcn.140139e50
jmp 0x1401480e4
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax + 8]
cmp byte [rsi + 0x11], 0
mov rdi, qword [rsi + 8]
je 0x14014ab20
inc dword [rsi + 0x14]
cmp byte [rsi + 0x12], 0
jne 0x14014ab20
mov rcx, rsi
call fcn.1400e9d10
cmp byte [rdi + 0x21], 0
je 0x14014abe4
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.1400f63c0
mov r15d, eax
cmp r14d, eax
jae 0x14014ab69
mov ecx, 0x10a84
call fcn.140119b80
mov r14, qword [rsp + 0x60]
mov dword [rsp + 0x40], eax
jmp 0x14014abec
test ebx, ebx
je 0x14014abdf
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x14014ab88
xor r8d, r8d
xor edx, edx
call fcn.14010cd20
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014abd8
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x14014ab9e
and byte [rax + 1], 0xfb
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x14014ab91
xor r9d, r9d
mov r8d, r14d
mov edx, r15d
mov rcx, rdi
call fcn.1400fc9d0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014abd8
mov rcx, qword [rdi + 0x18]
mov rcx, qword [rcx + 0x70]
call fcn.1401324d0
mov edx, dword [rdi + 0x40]
mov dword [rsp + 0x40], eax
mov rax, qword [rdi + 0x18]
bswap edx
mov rcx, qword [rax + 0x50]
mov dword [rcx + 0x1c], edx
mov r14, qword [rsp + 0x60]
jmp 0x14014abec
mov r14, qword [rsp + 0x60]
mov dword [rsp + 0x40], 0x65
cmp byte [rsi + 0x11], 0
je 0x14014ac00
sub dword [rsi + 0x14], 1
jne 0x14014ac00
mov rcx, rsi
call fcn.14015e100
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x1401477b4
cmp eax, 0x65
jne 0x14014bfa5
xor r10d, r10d
mov r15, qword [rsp + 0x38]
mov dword [rsp + 0x40], r10d
jmp 0x140146a4c
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 0
jne 0x14014ac47
mov edx, dword [rax + 8]
mov rcx, r12
call fcn.14011e1c0
mov r15, qword [rsp + 0x38]
jmp case.0x1401451a8.85
mov eax, dword [rax + 8]
mov r15, qword [rsp + 0x38]
inc eax
xor eax, dword [r11 + 0xc8]
and eax, 3
xor dword [r11 + 0xc8], eax
jmp case.0x1401451a8.85
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
or byte [rax + 1], 0x40
jmp case.0x1401451a8.85
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
and byte [rax + 1], 0xbf
jmp case.0x1401451a8.85
mov rax, qword [rsp + 0x38]
movzx esi, byte [rax + 0xc]
test sil, sil
jne 0x14014acd0
mov eax, dword [r12 + 0x30]
bt rax, 0xa
jb 0x14014bc19
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov edi, dword [rax + 8]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
mov eax, r10d
mov dword [rsp + 0x40], eax
cmp byte [rbx + 0x11], 0
je 0x14014add1
inc dword [rbx + 0x14]
inc sil
cmp byte [rbx + 0x12], 0
jne 0x14014ad0d
mov rcx, rbx
call fcn.1400e9d10
xor r10d, r10d
movzx r8d, sil
mov edx, edi
mov rcx, rbx
call fcn.1401080a0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014ada6
mov r14, qword [rbx + 8]
mov rcx, qword [r14 + 0x78]
test rcx, rcx
je 0x14014ad47
cmp dword [rcx + 8], edi
jne 0x14014ad3e
cmp qword [rcx], rbx
je 0x14014ad8b
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x14014ad34
mov ecx, 0x18
call fcn.14012fa00
mov rcx, rax
test rax, rax
je 0x14014ad66
xor eax, eax
mov qword [rcx], rax
mov qword [rcx + 8], rax
mov qword [rcx + 0x10], rax
test rcx, rcx
jne 0x14014ad79
mov eax, 7
xor r10d, r10d
mov dword [rsp + 0x40], eax
jmp 0x14014ad9d
mov dword [rcx + 8], edi
mov qword [rcx], rbx
mov rax, qword [r14 + 0x78]
mov qword [rcx + 0x10], rax
mov qword [r14 + 0x78], rcx
cmp sil, byte [rcx + 0xc]
jbe 0x14014ad95
mov byte [rcx + 0xc], sil
xor r10d, r10d
mov dword [rsp + 0x40], r10d
mov r14, qword [rsp + 0x60]
mov eax, dword [rsp + 0x40]
cmp byte [rbx + 0x11], 0
je 0x14014adc1
sub dword [rbx + 0x14], 1
jne 0x14014adc1
mov rcx, rbx
call fcn.14015e100
mov eax, dword [rsp + 0x40]
xor r10d, r10d
mov r11, qword [rsp + 0x48]
mov r8d, 1
mov r9, qword [rsp + 0x58]
test eax, eax
jne 0x14014c082
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
jmp case.0x1401451a8.85
movsxd rdx, dword [r12 + 0x1f4]
mov rbx, qword [r15 + 0x10]
mov dword [rsp + 0x40], r10d
test edx, edx
jle 0x14014ae19
cmp qword [r12 + 0x218], 0
jne 0x14014ae19
mov dword [rsp + 0x40], 6
jmp 0x14014aedd
test rbx, rbx
jne 0x14014ae28
mov dword [rsp + 0x40], r10d
jmp case.0x1401451a8.85
mov rax, qword [rbx + 0x10]
mov rdi, qword [rax]
cmp qword [rdi + 0x70], 0
je 0x14014aed9
mov rcx, r10
test edx, edx
jle 0x14014ae65
mov rax, qword [r12 + 0x218]
nop dword [rax]
cmp qword [rax], rbx
je 0x14014af04
inc rcx
add rax, 8
cmp rcx, rdx
jl 0x14014ae50
mov rcx, r12
call fcn.1400fc130
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014aed4
mov rcx, qword [rbx + 0x10]
call qword [rdi + 0x70]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014aed4
mov edx, dword [r12 + 0x2c4]
add edx, dword [r12 + 0x2c0]
movsxd rcx, dword [r12 + 0x1f4]
mov rax, qword [r12 + 0x218]
mov qword [rax + rcx*8], rbx
inc dword [r12 + 0x1f4]
inc dword [rbx + 0x18]
test edx, edx
je 0x14014aed4
cmp qword [rdi + 0xa0], 0
je 0x14014aed4
mov dword [rbx + 0x20], edx
dec edx
mov rcx, qword [rbx + 0x10]
call qword [rdi + 0xa0]
mov dword [rsp + 0x40], eax
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
test rbx, rbx
je 0x14014aeee
mov rdx, qword [rbx + 0x10]
mov rcx, r11
call fcn.140152070
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfa5
mov r11, qword [rsp + 0x48]
jmp 0x140145a9f
mov dword [rsp + 0x40], r10d
jmp 0x14014aed9
mov rax, qword [rsp + 0x38]
lea rcx, [rbp + 0x90]
xorps xmm0, xmm0
mov qword [rbp + 0x90], r10
xorps xmm1, xmm1
mov qword [rbp + 0xc0], r10
movdqu xmmword [rbp + 0x98], xmm0
mov qword [rbp + 0xb8], r12
movdqu xmmword [rbp + 0xa8], xmm1
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, r14
call fcn.14014e6c0
mov rcx, qword [rbp + 0x98]
mov edx, 0x202
mov dword [rsp + 0x40], eax
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x14014af7f
cmp byte [rbp + 0x9a], 1
jne 0x14014af7f
mov rax, qword [rbp + 0xa0]
jmp 0x14014af9d
test cl, 1
jne 0x14014b0ef
mov dl, 1
lea rcx, [rbp + 0x90]
call fcn.14015f760
mov rcx, qword [rbp + 0x98]
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
test rax, rax
je 0x14014b0f9
movsxd rcx, dword [r15 + 4]
lea rbx, [r14 + 0xa8]
mov r8, qword [r12 + 0x20]
mov rdx, rax
shl rcx, 5
mov r8, qword [rcx + r8]
mov rcx, r12
call fcn.140124890
xor r8d, r8d
mov rsi, rax
mov rcx, qword [rax + 0x58]
mov rdi, qword [rcx]
lea rcx, [r12 + 0x1f8]
mov rdx, rdi
call fcn.1400f6750
mov r8, qword [rax + 0x10]
test r8, r8
je 0x14014b0bf
mov rcx, qword [r8]
mov r9, qword [rcx + 8]
test r9, r9
je 0x14014b0bf
cmp qword [rcx + 0x28], 0
je 0x14014b0bf
mov rdx, rsi
mov qword [rsp + 0x20], rbx
mov rcx, r12
call fcn.140163590
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014b0dd
mov rax, qword [rsi + 0x60]
test rax, rax
je 0x14014b0dd
cmp qword [rax], r12
je 0x14014b064
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x14014b041
mov rcx, qword [rbp + 0x98]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
jmp 0x14014b0f9
mov rcx, r12
call fcn.1400fc130
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014b0dd
mov rdx, qword [rsi + 0x60]
test rdx, rdx
je 0x14014b08e
nop dword [rax]
cmp qword [rdx], r12
je 0x14014b08e
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x14014b080
movsxd rcx, dword [r12 + 0x1f4]
mov rax, qword [r12 + 0x218]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
mov qword [rax + rcx*8], rdx
inc dword [r12 + 0x1f4]
inc dword [rdx + 0x18]
mov rcx, qword [rbp + 0x98]
jmp 0x14014b0f9
mov r8, rdi
lea rdx, str.no_such_module:__s
mov rcx, r12
call fcn.14012f9d0
mov qword [rbx], rax
mov eax, 1
mov dword [rsp + 0x40], eax
mov rcx, qword [rbp + 0x98]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
jmp 0x14014b0f9
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov eax, 0x2400
test ax, cx
jne 0x14014b10c
cmp dword [rbp + 0xb0], 0
je 0x14014b118
lea rcx, [rbp + 0x90]
call fcn.140160ae0
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfaa
mov r11, qword [rsp + 0x48]
mov r14, qword [rsp + 0x60]
jmp 0x140145a9f
inc dword [r12 + 0xd8]
mov rcx, qword [rsp + 0x38]
mov r8, qword [r12 + 0x20]
mov dword [rsp + 0x40], r10d
movsxd rax, dword [rcx + 4]
mov rdx, qword [rcx + 0x10]
mov rcx, r12
shl rax, 5
mov r8, qword [rax + r8]
call fcn.140124890
mov rdi, rax
test rax, rax
je 0x14014b1f8
mov rdx, qword [rax + 0x60]
test rdx, rdx
je 0x14014b1f8
nop dword [rax + rax]
mov rcx, qword [rdx + 0x10]
cmp dword [rcx + 8], 0
jg 0x14014b209
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x14014b180
mov rdx, rdi
mov rcx, r12
call fcn.140163bc0
mov rbx, rax
mov rcx, qword [rax + 8]
mov rdx, qword [rcx]
mov rax, qword [rdx + 0x28]
test rax, rax
jne 0x14014b1b5
mov rax, qword [rdx + 0x20]
inc dword [rdi + 0x3c]
mov rcx, qword [rbx + 0x10]
call rax
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x14014b1d8
xor eax, eax
mov rcx, rbx
mov qword [rbx + 0x10], rax
mov qword [rdi + 0x60], rax
call fcn.140152440
cmp qword [r12 + 0x2d8], 0
jne 0x14014b1ed
mov eax, 0xffffffff
add dword [rdi + 0x3c], eax
jne 0x14014b1f8
mov rdx, rdi
mov rcx, r12
call fcn.1400f1b70
mov eax, dword [rsp + 0x40]
dec dword [r12 + 0xd8]
jmp 0x14014941c
dec dword [r12 + 0xd8]
mov eax, 6
mov dword [rsp + 0x40], eax
jmp 0x14014941c
mov rax, qword [rsp + 0x38]
mov qword [rbp - 0x28], r10
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14014c0bd
mov rdi, qword [rbx]
test rdi, rdi
je 0x14014c0bd
lea rdx, [rbp - 0x28]
mov rcx, rbx
call qword [rdi + 0x30]
mov rcx, qword [rsp + 0x48]
mov rdx, rbx
mov dword [rsp + 0x40], eax
call fcn.140152070
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfa5
mov rax, qword [rbp - 0x28]
mov r9d, 0xffffffff
mov rcx, qword [rsp + 0x48]
xor r8d, r8d
mov byte [rsp + 0x20], 2
mov qword [rax], rbx
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
call fcn.1400e49f0
mov rcx, qword [rbp - 0x28]
test rax, rax
je 0x14014c0b5
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [rax + 0x38], rcx
inc dword [rbx + 8]
jmp 0x140145a9b
mov r8, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x38]
mov rdi, qword [r8 + 0x70]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r8 + 0x78]
mov r8, r10
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 + 0x38]
mov r15, qword [rsi]
mov r14, qword [r15]
test r9d, r9d
jle 0x14014b319
mov r10d, 1
nop dword [rax]
movsxd rax, r10d
inc r10d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rdi + r8*8], rcx
inc r8
cmp r8, r9
jl 0x14014b300
mov rax, qword [rsp + 0x38]
mov rcx, rsi
mov qword [rsp + 0x20], rdi
mov r8, qword [rax + 0x10]
call qword [r14 + 0x40]
mov rcx, qword [rsp + 0x48]
mov rdx, r15
mov dword [rsp + 0x40], eax
call fcn.140152070
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfa5
mov rcx, rsi
call qword [r14 + 0x50]
mov byte [r13 + 2], 0
test eax, eax
je 0x1401477af
xor r10d, r10d
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x58]
mov r8d, 1
jmp 0x140146a57
mov rbx, qword [rsp + 0x38]
mov rax, qword [r11 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul rbx, rax, 0x38
add rbx, r14
cmp byte [rdi + 2], 0
je 0x14014b3ce
mov eax, 0x2400
test word [rbx + 8], ax
je 0x14014b3bb
mov rcx, rbx
call fcn.140160bb0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9b
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
mov word [rbx + 8], r8w
jmp case.0x1401451a8.85
mov rax, qword [rdi + 0x38]
xorps xmm0, xmm0
xorps xmm1, xmm1
mov rsi, qword [rax]
mov rax, qword [rsp + 0x38]
mov r14, qword [rsi]
movdqu xmmword [rbp + 0x1f0], xmm0
mov qword [rbp + 0x1e8], rbx
movdqu xmmword [rbp + 0x200], xmm1
movdqu xmmword [rbp + 0x210], xmm0
test byte [rax + 2], 1
je 0x14014b431
mov ecx, 0x2400
test word [rbx + 8], cx
je 0x14014b423
mov rcx, rbx
call fcn.140160bb0
mov rax, qword [rsp + 0x38]
xor r10d, r10d
mov ecx, 0x4001
mov word [rbx + 8], cx
mov dword [rbx], r10d
jmp 0x14014b43f
mov ecx, 0x3e40
and word [rbx + 8], cx
or word [rbx + 8], 1
mov r8d, dword [rax + 8]
lea rdx, [rbp + 0x1e8]
mov rcx, qword [rdi + 0x38]
call qword [r14 + 0x58]
mov rcx, qword [rsp + 0x48]
mov rdx, rsi
mov dword [rsp + 0x40], eax
call fcn.140152070
cmp dword [rbp + 0x20c], 0
jle 0x14014b492
mov rcx, rbx
call fcn.1400d8680
mov rcx, qword [rsp + 0x48]
lea rdx, [0x14021de64]
mov r8, rax
call fcn.140144fa0
mov eax, dword [rbp + 0x20c]
mov dword [rsp + 0x40], eax
test byte [rbx + 8], 2
movzx esi, byte [rsp + 0x30]
je 0x14014b4af
cmp byte [rbx + 0xa], sil
je 0x14014b4af
movzx edx, sil
mov rcx, rbx
call fcn.14014f4a0
mov rcx, rbx
call fcn.14014f470
test eax, eax
jne 0x14014c0e9
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfa5
mov r11, qword [rsp + 0x48]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9b
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x140147e65
mov rcx, qword [rdi + 0x38]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rcx, qword [rsp + 0x48]
mov rdx, rbx
mov dword [rsp + 0x40], eax
call fcn.140152070
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014bfa5
mov rcx, qword [rdi + 0x38]
call qword [rsi + 0x50]
movzx esi, byte [rsp + 0x30]
test eax, eax
jne 0x14014b552
mov rax, qword [rsp + 0x38]
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 + 0x38], rax
mov r11, qword [rsp + 0x48]
mov eax, dword [r12 + 0x170]
test eax, eax
jne 0x14014c3c4
mov r15d, dword [rbp - 0x64]
cmp r15d, r13d
jb 0x14014b9bb
mov rax, qword [r12 + 0x1e0]
test rax, rax
je 0x14014b9b6
add r13d, dword [r12 + 0x1f0]
mov rcx, qword [r12 + 0x1e8]
mov dword [rsp + 0x54], r13d
call rax
test eax, eax
jne 0x14014c0c7
cmp r15d, r13d
jae 0x14014b574
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x140145a9b
mov rcx, qword [rsp + 0x38]
mov edi, dword [r12 + 0x30]
or qword [r12 + 0x30], 0x4000000
and edi, 0x4000000
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, r14
test byte [rbx + 8], 2
je 0x14014b602
cmp byte [rbx + 0xa], 1
je 0x14014b602
mov dl, 1
mov rcx, rbx
call fcn.14014f4a0
test eax, eax
jne 0x14014bfa5
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x98]
mov dword [rsp + 0x40], eax
test edi, edi
jne 0x14014b623
and qword [r12 + 0x30], 0xfffffffffbffffff
mov rcx, qword [rsp + 0x48]
mov rdx, rsi
call fcn.140152070
mov r11, qword [rsp + 0x48]
mov eax, dword [rsp + 0x40]
and dword [r11 + 0xc8], 0xfffffffc
test eax, eax
je 0x1401477b9
mov r14, r11
jmp 0x14014bfaa
cmp byte [r12 + 0x61], 0
jne 0x14014c3fd
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14014c0bd
mov r10, qword [rbx]
test r10, r10
je 0x14014c0bd
cmp qword [r10 + 0x68], 0
je 0x14014bc0c
mov r8, qword [r11 + 0x70]
xor r13d, r13d
mov r11, qword [rsp + 0x38]
movzx edi, byte [r12 + 0x66]
movsxd rax, dword [r11 + 0xc]
movsxd rdx, dword [r11 + 8]
imul rcx, rax, 0x38
mov eax, r13d
add rcx, r14
test edx, edx
jle 0x14014b6d0
nop dword [rax]
nop word [rax + rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x14014b6c0
movzx eax, byte [r11 + 2]
lea r9, [rbp + 0x88]
mov rcx, rbx
mov byte [r12 + 0x66], al
call qword [r10 + 0x68]
mov rcx, qword [rsp + 0x48]
mov rdx, rbx
mov dword [rsp + 0x40], eax
mov byte [r12 + 0x66], dil
call fcn.140152070
mov eax, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
test eax, eax
jne 0x14014b721
cmp dword [rcx + 4], r13d
je 0x14014b721
mov rax, qword [rbp + 0x88]
mov qword [r12 + 0x38], rax
mov eax, dword [rsp + 0x40]
cmp al, 0x13
jne 0x14014b771
mov rax, qword [rcx + 0x10]
cmp byte [rax + 0x1c], r13b
je 0x14014b771
movzx ecx, word [rcx + 2]
mov r11, qword [rsp + 0x48]
cmp cx, 4
jne 0x14014b759
mov r15, qword [rsp + 0x38]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov dword [rsp + 0x40], r10d
jmp 0x140145aa7
movzx eax, cl
cmp cx, 5
mov ecx, 2
cmove eax, ecx
mov byte [r11 + 0xc2], al
jmp 0x14014b77a
mov r11, qword [rsp + 0x48]
inc dword [r11 + 0x3c]
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x14014c425
mov r15, qword [rsp + 0x38]
jmp 0x140145a9b
mov rdx, qword [rsp + 0x38]
mov rcx, r11
call fcn.140102950
mov rcx, qword [r12 + 0x20]
mov r15, qword [rsp + 0x38]
mov r11, qword [rsp + 0x48]
movsxd rdx, dword [r15 + 4]
shl rdx, 5
mov rdx, qword [rdx + rcx + 8]
mov rcx, qword [rdx + 8]
mov edx, dword [rcx + 0x40]
btr edx, 0x1f
mov qword [rax], rdx
jmp 0x140145a9f
mov rdx, qword [rsp + 0x38]
mov rcx, r11
call fcn.140102950
mov rcx, qword [r12 + 0x20]
mov rsi, rax
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 4]
shl rdx, 5
mov rbx, qword [rdx + rcx + 8]
xor edx, edx
mov edi, edx
mov edx, dword [rax + 0xc]
test edx, edx
je 0x14014b80e
mov rcx, qword [rbx + 8]
mov edi, dword [rcx + 0x40]
btr edi, 0x1f
cmp edi, edx
cmovb edi, edx
cmp byte [rbx + 0x11], 0
je 0x14014b825
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x14014b825
mov rcx, rbx
call fcn.1400e9d10
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
test edi, edi
jle 0x14014b838
mov dword [rcx + 0xc0], edi
jmp 0x14014b83e
mov edi, dword [rcx + 0xc0]
cmp byte [rbx + 0x11], 0
je 0x14014b852
sub dword [rbx + 0x14], 1
jne 0x14014b852
mov rcx, rbx
call fcn.14015e100
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
movsxd rax, edi
mov qword [rsi], rax
movzx esi, byte [rsp + 0x30]
jmp 0x140145a9b
mov rax, qword [rsp + 0x38]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, r14
cmp qword [rbx], rdi
je 0x14014b8d7
mov qword [rbx + 0x18], r11
mov qword [rbx], rdi
movzx eax, byte [rbx + 0x29]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x14014b8d7
mov r12, qword [rsp + 0x38]
lea r8, [rbx + 0x30]
lea r8, [r8 + rdx*8]
nop dword [rax]
mov eax, dword [r12 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r14
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x14014b8b0
mov r12, qword [rsp + 0x68]
mov eax, 0x3e40
lea r8, [rbx + 0x30]
and word [rdi + 8], ax
mov rcx, rbx
or word [rdi + 8], 1
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x14014b959
jle 0x14014b923
mov rcx, rdi
call fcn.1400d8680
mov rcx, qword [rsp + 0x48]
lea rdx, [0x14021de64]
mov r8, rax
call fcn.140144fa0
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x38]
mov rcx, r12
mov rdx, qword [rsp + 0x48]
mov r8d, dword [rbx + 0x20]
add rdx, 0x120
mov r9d, dword [rax + 4]
call fcn.140144900
mov eax, dword [rsp + 0x40]
xor r10d, r10d
mov dword [rbx + 0x24], r10d
test eax, eax
jne 0x14014bfa5
jmp 0x14014b95c
xor r10d, r10d
movzx eax, word [rdi + 8]
test al, 0x12
je 0x14014b999
test al, 2
je 0x14014b97a
cmp byte [rdi + 0xa], sil
je 0x14014b97a
movzx edx, sil
mov rcx, rdi
call fcn.14014f4a0
mov rcx, rdi
call fcn.14014f470
mov r11, qword [rsp + 0x48]
test eax, eax
jne 0x14014c0ee
mov r15, qword [rsp + 0x38]
jmp 0x140145a9b
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x140145aa7
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
xor r10d, r10d
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x140145aa7
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
movzx esi, byte [rsp + 0x30]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x140145aa7
mov r11, qword [rsp + 0x48]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x140145aa7
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x140145aa7
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x140145aa7
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x140145aa7
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
movzx esi, byte [rsp + 0x30]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x140145aa7
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x140145aa7
movzx eax, byte [r12 + 0x68]
test al, 0x41
je 0x14014bb01
cmp byte [r11 + 0xc5], 0
jne 0x14014bb01
mov r9, qword [r15 + 0x10]
test r9, r9
jne 0x14014babd
mov r9, qword [r11 + 0xf0]
test r9, r9
je 0x14014bafc
test al, 0x40
je 0x14014bb76
mov rdi, qword [r12 + 0xe8]
mov rdx, r9
mov rcx, r11
call fcn.14014c890
mov rcx, qword [r12 + 0xf0]
mov rdx, rax
mov rbx, rax
call rdi
mov rcx, rbx
call fcn.1400d5ae0
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov r13d, 1
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
mov eax, dword [rax + 4]
cmp eax, dword [0x14029d454]
jl 0x14014bb64
cmp byte [r15], 0xaa
je 0x140145aa7
cmp dword [r11 + 0x90], 1
mov edx, r13d
jle 0x14014bb61
mov eax, 0x18
nop dword [rax + rax]
mov rcx, qword [r11 + 0x88]
cmp byte [rax + rcx], 0x11
jne 0x14014bb52
mov dword [rax + rcx + 4], r10d
inc edx
add rax, 0x18
cmp edx, dword [r11 + 0x90]
jl 0x14014bb40
mov eax, r10d
inc eax
mov dword [r15 + 4], eax
inc dword [r11 + 0xec]
jmp 0x140146a51
cmp dword [r12 + 0xd4], 1
jle 0x14014bbd4
mov r8, r9
lea rdx, str.____s
mov rcx, r12
call fcn.14012f9d0
mov r8, qword [rsp + 0x48]
mov r13d, 1
mov rdx, qword [r12 + 0xf0]
mov ecx, r13d
mov r9, rax
mov rbx, rax
call qword [r12 + 0xe8]
mov rdx, rbx
mov rcx, r12
call fcn.14011b8c0
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
jmp 0x14014bb07
mov rdx, qword [r12 + 0xf0]
mov r13d, 1
mov ecx, r13d
mov r8, r11
call qword [r12 + 0xe8]
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
jmp 0x14014bb07
mov r15, qword [rsp + 0x38]
jmp 0x140146a57
mov r15, qword [rsp + 0x38]
xor r10d, r10d
jmp case.0x1401451a8.85
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
jmp case.0x1401451a8.85
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
jmp 0x140145aa7
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
mov r9, qword [rsp + 0x58]
jmp 0x140145aa7
mov dword [r11 + 0x38], eax
movzx eax, byte [rdx + 8]
mov byte [r11 + 0xc2], al
mov dword [r11 + 0x34], ebx
cmp dword [r11 + 0x38], 0
je 0x14014bd0a
movzx eax, word [rdx + 2]
mov rcx, r11
test ax, ax
je 0x14014bcc6
movzx r8d, ax
lea rdx, str._s_constraint_failed
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x220728]
call fcn.140144fa0
mov rax, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x48]
mov r9, qword [rax + 0x10]
test r9, r9
je 0x14014bcdb
mov r8, qword [rdi + 0xa8]
lea rdx, str._z:__s
mov rcx, r12
call fcn.14012f9d0
mov qword [rdi + 0xa8], rax
jmp 0x14014bcdb
mov r8, qword [rdx + 0x10]
lea rdx, [0x14021de64]
call fcn.140144fa0
mov rdi, qword [rsp + 0x48]
mov rax, qword [rdi + 0xa8]
lea rdx, str.abort_at__d_in___s_:__s
mov r9, qword [rdi + 0xf0]
mov r8d, ebx
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x38]
mov ecx, dword [rax + 4]
call fcn.1400de6d0
mov r11, qword [rsp + 0x48]
mov rcx, r11
call fcn.14014d530
mov rdi, qword [rsp + 0x38]
cmp eax, 5
mov esi, dword [rsp + 0x54]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x48]
jne 0x14014bd35
mov dword [rax + 0x38], 5
jmp 0x14014c51b
cmp dword [rax + 0x38], 0
mov ecx, 0x65
mov eax, 1
cmovne ecx, eax
mov dword [rsp + 0x40], ecx
jmp 0x14014c51b
mov ecx, 0x157b6
call fcn.140119b80
mov r12, qword [rsp + 0x68]
jmp 0x14014bfa5
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r11
call fcn.140144fa0
mov eax, 5
jmp 0x14014bfa5
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r11
call fcn.140144fa0
mov eax, 5
jmp 0x14014bfa5
mov r8, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
mov rdi, qword [rsp + 0x38]
mov esi, dword [rsp + 0x54]
mov rcx, rdi
sub rcx, qword [rsp + 0x58]
imul rcx
mov dword [rsp + 0x40], 5
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r8 + 0x34], edx
mov byte [r12 + 0x5f], 0
mov dword [r8 + 0x38], 5
jmp 0x14014c51b
mov dword [r11 + 0x38], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov byte [r11 + 0xc2], 2
call fcn.140144fa0
mov rdi, qword [rsp + 0x38]
mov esi, dword [rsp + 0x54]
mov dword [rsp + 0x40], ebx
jmp 0x14014c51b
mov r14, qword [rsp + 0x48]
mov eax, 8
mov rdi, rcx
lea ebx, [rax - 7]
jmp 0x14014bfb4
mov rdi, qword [rsp + 0x38]
mov esi, dword [rsp + 0x54]
cmp al, 5
jne 0x14014c555
mov r8, qword [rsp + 0x48]
mov rcx, rdi
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov ecx, dword [rsp + 0x40]
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r8 + 0x34], edx
mov dword [r8 + 0x38], ecx
jmp 0x14014c51b
mov rdx, qword [r11 + 0xa8]
mov rcx, r12
call fcn.14011b8c0
mov edx, 0x1c
mov rcx, r12
call fcn.14011ba30
test rax, rax
je 0x14014beb3
movups xmm0, xmmword [str.database_schema_has_changed]
movups xmmword [rax], xmm0
movsd xmm1, qword [0x140226680]
movsd qword [rax + 0x10], xmm1
mov ecx, dword [0x140226688]
mov dword [rax + 0x18], ecx
mov r14, qword [rsp + 0x48]
mov qword [r14 + 0xa8], rax
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x54]
cmp dword [rcx], eax
je 0x14014bee8
mov rcx, r12
call fcn.140138c20
and dword [r14 + 0xc8], 0xfffffffd
mov eax, 0x11
or dword [r14 + 0xc8], 1
jmp 0x14014bfaa
mov eax, 0x204
jmp 0x14014bfa5
mov eax, 0xd
mov rdi, r15
mov r14, qword [rsp + 0x48]
mov ebx, 1
jmp 0x14014bfb4
mov eax, 0x30b
jmp 0x14014bf11
mov r14, qword [rsp + 0x48]
mov eax, 6
mov rdi, rbx
mov byte [r14 + 0xc2], 2
lea ebx, [rax - 5]
jmp 0x14014bfb7
mov eax, 7
mov dword [rsp + 0x40], eax
mov rcx, r12
call fcn.140138b80
mov eax, dword [rsp + 0x40]
cmp eax, 7
je 0x14014c3fd
jmp 0x14014bfa5
mov ebx, 1
lea rdx, str.too_many_levels_of_trigger_recursion
mov rcx, r11
mov dword [rsp + 0x40], ebx
call fcn.140144fa0
mov r14, qword [rsp + 0x48]
mov eax, ebx
jmp 0x14014bfaf
mov rcx, rbx
call fcn.1400d8680
mov rcx, qword [rsp + 0x48]
lea rdx, [0x14021de64]
mov r8, rax
call fcn.140144fa0
mov eax, dword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov ebx, 1
mov rdi, qword [rsp + 0x38]
xor r13d, r13d
mov esi, dword [rsp + 0x54]
cmp byte [r12 + 0x61], 0
mov ecx, 7
cmovne eax, ecx
cmp qword [r14 + 0xa8], 0
mov dword [rsp + 0x40], eax
jne 0x14014c002
cmp eax, 0xc0a
je 0x14014c002
mov ecx, eax
call fcn.14011df90
mov rcx, qword [rsp + 0x48]
lea rdx, [0x14021de64]
mov r8, rax
call fcn.140144fa0
mov eax, dword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov dword [r14 + 0x38], eax
cmp eax, 0xc0a
je 0x14014c453
movzx eax, al
sub eax, 0xa
test eax, 0xfffffffb
jne 0x14014c453
mov rcx, qword [r12]
mov rax, qword [rcx + 0x80]
test rax, rax
je 0x14014c44b
xor r8d, r8d
xor edx, edx
call rax
jmp 0x14014c44e
mov rcx, qword [rsp + 0x48]
lea rax, str.into
cmp edi, 5
lea r8, str.out_of
mov ebx, 1
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
cmove r8, rax
mov dword [rsp + 0x40], ebx
call fcn.140144fa0
mov r14, qword [rsp + 0x48]
mov eax, ebx
mov rdi, qword [rsp + 0x38]
jmp 0x14014bfb7
mov rdi, qword [rsp + 0x38]
cmp al, 6
jne 0x14014bf14
mov r8, qword [rdi + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, r11
call fcn.140144fa0
mov eax, dword [rsp + 0x40]
mov ebx, 1
mov r14, qword [rsp + 0x48]
jmp 0x14014bfb4
call qword [rdi + 0x38]
jmp 0x14014c3fd
mov eax, 6
jmp 0x14014bfa5
mov r14, qword [rsp + 0x48]
mov eax, 9
mov rdi, qword [rsp + 0x38]
mov esi, 0xffffffff
xor r13d, r13d
lea ebx, [rax - 8]
jmp 0x14014bfbb
mov r12, r8
mov r11, qword [rsp + 0x48]
lea rdx, str.string_or_blob_too_big
mov rcx, r11
call fcn.140144fa0
mov eax, 0x12
jmp 0x14014bfa5
mov r12, r8
jmp 0x14014c0ee
cmp qword [r11 + 0x50], 0
jle 0x14014c137
mov dword [r11 + 0x38], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov rcx, r11
mov byte [r11 + 0xc2], 2
call fcn.140144fa0
jmp 0x14014780d
mov rax, qword [r11]
cmp dword [rax + 0x2c4], 0
je 0x14014c15d
cmp dword [r11 + 0x40], 0
je 0x14014c15d
mov edx, r8d
mov rcx, r11
call fcn.14015f910
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov eax, dword [r11 + 0x30]
mov edi, r10d
mov rbx, qword [rsp + 0x38]
add eax, 2
or eax, 1
mov dword [r11 + 0x30], eax
movsxd rax, dword [rbx + 4]
imul rsi, rax, 0x38
add rsi, r14
mov qword [r11 + 0xa0], rsi
cmp dword [rbx + 8], 0
jle 0x14014c1e1
lea rbx, [rsi + 8]
mov r14d, 0x202
mov eax, 0x1000
test word [rbx], ax
je 0x14014c1b6
movsxd rax, edi
imul rcx, rax, 0x38
add rcx, rsi
call fcn.14014eca0
test eax, eax
jne 0x14014c3fd
movzx eax, word [rbx]
and ax, r14w
cmp ax, 2
jne 0x14014c1cc
lea rcx, [rbx - 8]
call fcn.140160a80
mov rax, qword [rsp + 0x38]
inc edi
add rbx, 0x38
cmp edi, dword [rax + 8]
jl 0x14014c195
mov r11, qword [rsp + 0x48]
cmp byte [r12 + 0x61], 0
jne 0x14014c3fd
test byte [r12 + 0x68], 4
je 0x14014c20f
mov rdx, qword [r12 + 0xf0]
xor r9d, r9d
mov r8, r11
lea ecx, [r9 + 4]
call qword [r12 + 0xe8]
mov rdi, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
mov esi, dword [rsp + 0x54]
mov rcx, rdi
sub rcx, qword [rsp + 0x58]
mov ebx, 0x64
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, qword [rsp + 0x48]
inc edx
mov dword [rax + 0x34], edx
jmp 0x14014c51f
mov rax, qword [rsp + 0x38]
mov ebx, dword [rax + 4]
mov ecx, dword [rax + 8]
movzx eax, byte [r12 + 0x5f]
cmp ebx, eax
je 0x14014c38b
test ecx, ecx
je 0x14014c2e5
mov edx, 0x204
mov rcx, r12
call fcn.140139240
mov r11, qword [rsp + 0x48]
mov dl, 1
mov rcx, r11
mov byte [r12 + 0x5f], dl
call fcn.14014d530
cmp eax, 5
jne 0x14014c35b
mov rcx, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x38]
mov esi, dword [rsp + 0x54]
imul rcx
mov rcx, qword [rsp + 0x48]
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 1
sub al, bl
mov dword [rcx + 0x34], edx
mov ebx, 5
mov byte [r12 + 0x5f], al
mov dword [rcx + 0x38], ebx
jmp 0x14014c51f
test ebx, ebx
je 0x14014c30d
cmp dword [r12 + 0xd0], 0
jle 0x14014c30d
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r11
call fcn.140144fa0
mov eax, 5
jmp 0x14014bfa5
mov rax, qword [r11]
mov edx, ebx
mov rcx, qword [rax + 0x2d0]
add rcx, qword [rax + 0x2c8]
test rcx, rcx
jle 0x14014c280
mov dword [r11 + 0x38], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov rcx, r11
mov byte [r11 + 0xc2], 2
call fcn.140144fa0
mov rdi, qword [rsp + 0x38]
mov ebx, 1
mov esi, dword [rsp + 0x54]
jmp 0x14014c51f
mov rcx, r12
call fcn.140117900
mov rax, qword [rsp + 0x48]
mov ecx, 0x65
mov rdi, qword [rsp + 0x38]
mov esi, dword [rsp + 0x54]
cmp dword [rax + 0x38], 0
mov eax, 1
cmovne ecx, eax
mov dword [rsp + 0x40], ecx
jmp 0x14014c51b
test ebx, ebx
jne 0x14014c3a3
lea rdx, str.cannot_start_a_transaction_within_a_transaction
mov rcx, r11
call fcn.140144fa0
jmp 0x14014780d
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
mov rcx, r11
cmovne rdx, rax
call fcn.140144fa0
jmp 0x14014780d
cmp byte [r12 + 0x61], 0
mov ecx, 7
mov eax, 9
cmovne eax, ecx
mov ecx, eax
mov dword [rsp + 0x40], eax
mov dword [r11 + 0x38], eax
call fcn.14011df90
mov r8, rax
lea rdx, [0x14021de64]
mov rcx, r11
jmp 0x14014bf9c
mov r12, qword [rsp + 0x68]
mov rcx, r12
call fcn.1401303f0
mov rcx, qword [rsp + 0x48]
lea rdx, str.out_of_memory
call fcn.140144fa0
mov eax, 7
jmp 0x14014bfa5
mov r12, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
mov ebx, 1
mov rdi, qword [rsp + 0x38]
jmp 0x14014bfb7
mov r14, qword [rsp + 0x48]
mov rdi, rbx
mov ebx, 1
jmp 0x14014bfb4
mov eax, r13d
mov dword [r12 + 0x58], eax
mov rcx, rdi
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
imul rcx
mov rcx, qword [rsp + 0x48]
sar rdx, 2
mov r8, rdx
shr r8, 0x3f
mov rax, qword [rcx + 0xa8]
add r8, rdx
mov r9, qword [rcx + 0xf0]
lea rdx, str.statement_aborts_at__d:___s___s
mov ecx, dword [rsp + 0x40]
mov qword [rsp + 0x20], rax
call fcn.1400de6d0
mov rcx, qword [rsp + 0x48]
call fcn.14014d530
cmp dword [rsp + 0x40], 0xc0a
jne 0x14014c501
cmp byte [r12 + 0x61], 0
jne 0x14014c501
cmp byte [r12 + 0x62], 0
jne 0x14014c501
mov byte [r12 + 0x61], 1
cmp dword [r12 + 0xd4], 0
jle 0x14014c4db
mov dword [r12 + 0x170], ebx
inc dword [r12 + 0x178]
mov word [r12 + 0x17c], r13w
mov rax, qword [r12 + 0x138]
test rax, rax
je 0x14014c501
mov ecx, 7
mov dword [rax + 0x18], ecx
movzx eax, byte [rsp + 0x70]
mov dword [rsp + 0x40], ebx
test al, al
je 0x14014c51b
movzx edx, al
mov rcx, r12
dec edx
call fcn.140138c20
mov ebx, dword [rsp + 0x40]
mov r15d, dword [rbp - 0x64]
cmp r15d, esi
jb 0x14014c566
mov rax, qword [r12 + 0x1e0]
test rax, rax
je 0x14014c566
mov rcx, qword [r12 + 0x1e8]
add esi, dword [r12 + 0x1f0]
call rax
test eax, eax
je 0x14014c523
mov esi, 0xffffffff
mov eax, 9
mov r14, qword [rsp + 0x48]
xor r13d, r13d
lea ebx, [r13 + 1]
jmp 0x14014bfbb
mov r8, qword [rsp + 0x48]
movaps xmm6, xmmword [rsp + 0x370]
mov r14, qword [rsp + 0x388]
mov r13, qword [rsp + 0x390]
add dword [r8 + 0xe4], r15d
cmp dword [r8 + 0xd0], 0
mov r15, qword [rsp + 0x380]
mov r12, qword [rsp + 0x3c8]
mov rdi, qword [rsp + 0x3c0]
mov rsi, qword [rsp + 0x3b8]
je 0x14014c5bc
mov rcx, r8
call fcn.1401609f0
mov eax, ebx
mov rcx, qword [rbp + 0x260]
xor rcx, rsp
call fcn.140199a10
add rsp, 0x398
pop rbx
pop rbp
ret