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

Disassembly:
mov r11, rsp
push rbp
push r13
push r15
lea rbp, [r11 - 0x148]
sub rsp, 0x230
mov rax, qword [0x140139008]
xor rax, rsp
mov qword [rbp + 0xf8], rax
xor r8d, r8d
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rsi
xor al, al
mov r15, rcx
mov rsi, qword [rcx + 0x88]
mov r13d, r8d
mov qword [r11 + 0x20], rdi
mov r10d, r8d
mov rdi, qword [rcx]
mov qword [r11 - 0x28], r14
mov r14d, r8d
mov r11, qword [rcx + 0x68]
mov qword [rsp + 0x78], rcx
movzx r9d, byte [rdi + 0x64]
mov byte [rsp + 0x40], r9b
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x48], rsi
mov dword [rsp + 0x54], r8d
mov qword [rsp + 0x58], rdi
mov byte [rbp - 0x80], al
mov dword [rsp + 0x50], r8d
mov qword [rbp - 0x78], r8
mov qword [rsp + 0x60], r11
mov dword [rbp - 0x7c], r8d
cmp dword [rcx + 0xd0], r8d
je 0x1400400bd
call fcn.140037140
mov r11, qword [rsp + 0x60]
mov r10d, r13d
movzx r9d, byte [rsp + 0x40]
xor r8d, r8d
cmp qword [rdi + 0x210], r13
je 0x1400400dd
mov ecx, dword [rdi + 0x220]
xor edx, edx
mov eax, dword [r15 + 0xe4]
div ecx
sub ecx, edx
mov ebx, ecx
jmp 0x1400400e4
mov rbx, 0xffffffffffffffff
cmp dword [r15 + 0x34], 7
mov edx, 1
mov qword [rsp + 0x228], r12
movaps xmmword [rsp + 0x210], xmm6
movaps xmmword [rsp + 0x200], xmm7
mov qword [rsp + 0x68], rbx
je 0x1400469b4
mov dword [r15 + 0x34], r8d
mov qword [r15 + 0x48], r8
mov eax, dword [rdi + 0x198]
mov dword [rdi + 0x298], r8d
test eax, eax
jne 0x1400467a9
movsxd rax, dword [r15 + 0x30]
xorps xmm7, xmm7
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
lea rcx, [0x140000000]
movzx ebx, byte [r12]
inc r14
mov qword [rsp + 0x48], r12
mov qword [rbp - 0x78], r14
cmp ebx, 0xb8
ja case.default.0x140040175
movsxd rax, ebx
mov ecx, dword [rcx + rax*4 + 0x46bb0]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
sub rcx, rsi
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov word [r8 + r11 + 0x14], 4
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r11], rax
jmp case.0x140040175.9
movsxd rax, dword [r12 + 4]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 4
je case.0x140040175.89
mov rax, qword [rax + r11]
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp case.0x140040175.89
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
mov eax, dword [r12 + 0xc]
dec eax
cdqe
mov qword [rcx + r11], rax
mov word [rcx + r11 + 0x14], 4
cmp dword [r12 + 8], 0
jne 0x140045aab
jmp case.0x140040175.89
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
sub rbx, qword [r15 + 0x88]
imul r8, rax, 0x38
mov rax, qword [r8 + r11]
lea rcx, [rax + rax*2]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
dec eax
cdqe
mov qword [r8 + r11], rax
mov eax, dword [rsi + rcx*8 + 8]
dec eax
cdqe
xor r8d, r8d
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp 0x140040593
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
sub rbx, rsi
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
movsxd rcx, dword [r8 + r11]
sar rdx, 2
mov rax, rdx
mov word [r8 + r11 + 0x14], 4
shr rax, 0x3f
add rax, rdx
lea rcx, [rcx + rcx*2]
cdqe
lea r12, [rsi + rcx*8]
mov qword [r8 + r11], rax
xor r8d, r8d
jmp 0x140040593
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je case.0x140040175.89
mov rbx, qword [r15 + 0x108]
test rbx, rbx
je 0x140046306
cmp dword [r12 + 4], 0
jne 0x140046306
mov rax, qword [rbx + 8]
mov rcx, rdi
mov rdx, qword [r15 + 0x38]
dec dword [r15 + 0x118]
mov qword [r15 + 0x108], rax
call fcn.14003b510
mov rcx, rbx
call fcn.140037de0
cmp dword [r12 + 8], 4
jne 0x140040320
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov rsi, qword [r15 + 0x88]
xor r8d, r8d
mov r11, qword [r15 + 0x68]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
cdqe
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x60], r11
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp 0x140040593
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [r15 + 0x68]
test word [rcx + 0x14], ax
je 0x14004037b
call fcn.14003fbf0
xor r8d, r8d
mov rcx, rax
lea edx, [r8 + 1]
jmp 0x140040381
mov word [rcx + 0x14], 4
movsxd rax, dword [r12 + 4]
mov qword [rcx], rax
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x140040175.89
movsxd rax, dword [r12 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r15 + 0x68]
test word [rdx + 0x14], ax
je 0x1400403c6
mov rcx, rdx
call fcn.14003fbf0
mov rdx, rax
xor r8d, r8d
jmp 0x1400403cc
mov word [rdx + 0x14], 4
mov rax, qword [r12 + 0x10]
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
movsxd rax, dword [r12 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r15 + 0x68]
test word [rdx + 0x14], ax
je 0x140040412
mov rcx, rdx
call fcn.14003fbf0
mov rdx, rax
xor r8d, r8d
mov word [rdx + 0x14], 8
jmp 0x1400403cc
movsxd rax, dword [r12 + 8]
mov r14d, 0x9000
imul rbx, rax, 0x38
add rbx, qword [r15 + 0x68]
test word [rbx + 0x14], r14w
je 0x140040444
mov rcx, rbx
call fcn.14003fbf0
mov rbx, rax
xor r8d, r8d
jmp 0x14004044a
mov word [rbx + 0x14], 4
mov rdx, qword [r12 + 0x10]
test rdx, rdx
jne 0x140040459
mov eax, r8d
jmp 0x14004046e
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], 0
jne 0x140040460
and eax, 0x3fffffff
movzx esi, byte [rsp + 0x40]
mov dword [r12 + 4], eax
cmp sil, 1
je 0x1400404fc
mov qword [rsp + 0x20], r8
mov r9b, 1
mov r8, 0xffffffffffffffff
mov rcx, rbx
call fcn.140034c30
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140046650
mov edx, esi
mov rcx, rbx
call fcn.140033b70
test eax, eax
jne 0x1400469af
mov eax, 0x2000
xor r9d, r9d
or word [rbx + 0x14], ax
mov rax, qword [rsp + 0x48]
mov dword [rbx + 0x20], r9d
cmp byte [rax + 1], 0xfa
jne 0x1400404e2
mov rdx, qword [rax + 0x10]
mov rcx, rdi
call fcn.140007090
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
mov byte [rax + 1], 0xfa
mov rax, qword [rbx + 8]
mov qword [r12 + 0x10], rax
mov eax, dword [rbx + 0x10]
mov dword [r12 + 4], eax
cmp eax, dword [rdi + 0x88]
jg 0x140046650
mov byte [r12], 0x49
jmp 0x14004051a
movzx esi, byte [rsp + 0x40]
mov r14d, 0x9000
movsxd rax, dword [r12 + 8]
imul rdx, rax, 0x38
add rdx, qword [r15 + 0x68]
test word [rdx + 0x14], r14w
je 0x140040539
mov rcx, rdx
call fcn.14003fbf0
mov rdx, rax
mov r11, qword [rsp + 0x60]
mov word [rdx + 0x14], 0x2202
mov rax, qword [r12 + 0x10]
mov qword [rdx + 8], rax
mov eax, dword [r12 + 4]
mov dword [rdx + 0x10], eax
mov byte [rdx + 0x16], sil
movsxd rax, dword [r12 + 0xc]
test eax, eax
jle 0x140045fd7
mov r10d, dword [rsp + 0x50]
xor r8d, r8d
imul rcx, rax, 0x38
movzx eax, word [r12 + 2]
cmp qword [rcx + r11], rax
jne 0x140045fdf
movzx r9d, byte [rsp + 0x40]
mov word [rdx + 0x14], 0x2210
mov rsi, qword [rsp + 0x70]
mov edx, 1
lea rcx, [0x140000000]
mov r15, qword [rsp + 0x78]
add r12, 0x18
mov r14, qword [rbp - 0x78]
jmp 0x140040144
mov rbx, qword [rsp + 0x48]
mov r14d, 0x9000
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [r15 + 0x68]
test word [rcx + 0x14], r14w
je 0x1400405e0
call fcn.14003fbf0
xor r8d, r8d
mov rcx, rax
lea edx, [r8 + 1]
jmp 0x1400405e6
mov word [rcx + 0x14], 4
cmp dword [rbx + 4], 0
mov esi, edx
mov edi, dword [rbx + 0xc]
mov r9d, 0x101
mov eax, dword [rbx + 8]
cmovne si, r9w
sub edi, eax
mov word [rcx + 0x14], si
mov dword [rcx + 0x10], r8d
lea rbx, [rcx + 0x14]
test edi, edi
jle 0x140040832
test word [rbx + 0x38], r14w
lea rbx, [rbx + 0x38]
je 0x14004062a
lea rcx, [rbx - 0x14]
call fcn.140034270
xor r8d, r8d
dec edi
mov word [rbx], si
mov dword [rbx - 4], r8d
test edi, edi
jg 0x140040613
mov rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x14004058e
movsxd rax, dword [r12 + 4]
mov ebx, 0xffc1
imul rcx, rax, 0x38
movzx eax, word [rcx + r11 + 0x14]
and ax, bx
or ax, 1
mov word [rcx + r11 + 0x14], ax
jmp case.0x140040175.89
movsxd rax, dword [r12 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r15 + 0x68]
test word [rbx + 0x14], ax
je 0x1400406a1
mov rcx, rbx
call fcn.14003fbf0
mov rbx, rax
jmp 0x1400406a7
mov word [rbx + 0x14], 4
mov rax, qword [rsp + 0x48]
mov rcx, rbx
mov rdx, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
test rdx, rdx
jne 0x1400406d5
mov edx, eax
call fcn.140034890
mov rcx, rbx
call fcn.140033fd0
test eax, eax
jne 0x1400469af
jmp 0x1400406e5
xor r9d, r9d
mov r8, rax
mov qword [rsp + 0x20], r9
call fcn.140034c30
movzx r9d, byte [rsp + 0x40]
xor r8d, r8d
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov byte [rbx + 0x16], r9b
jmp 0x140040593
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
add rdi, qword [r15 + 0x80]
lea rcx, [rdi - 0x38]
call fcn.140034ab0
test eax, eax
jne 0x140046646
movsxd rax, dword [rbx + 8]
mov r11, qword [rsp + 0x60]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x140040753
mov rcx, rbx
call fcn.140034870
mov r11, qword [rsp + 0x60]
movups xmm0, xmmword [rdi - 0x38]
mov r12, qword [rsp + 0x48]
mov ecx, 0xafff
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi - 0x28]
mov rdi, qword [rsp + 0x58]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 0x14]
and ax, cx
mov ecx, 0x2040
or ax, cx
mov word [rbx + 0x14], ax
xor r8d, r8d
jmp 0x140040593
mov rcx, qword [rsp + 0x48]
mov r14d, 0x9000
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
nop dword [rax]
test word [rbx + 0x14], r14w
jne 0x1400407cd
cmp dword [rbx + 0x20], 0
je 0x1400407dc
mov rcx, rbx
call fcn.1400342b0
xor r8d, r8d
lea edx, [r8 + 1]
movups xmm0, xmmword [rdi]
mov eax, 0x4000
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movsd xmm1, qword [rdi + 0x30]
movsd qword [rbx + 0x30], xmm1
mov word [rdi + 0x14], dx
mov dword [rdi + 0x20], r8d
test word [rbx + 0x14], ax
je 0x140040825
mov rcx, rbx
call fcn.140033f70
test eax, eax
jne 0x1400469aa
xor r8d, r8d
lea edx, [rax + 1]
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x1400407c0
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
jmp case.0x140040175.89
mov rcx, qword [rsp + 0x48]
mov r14d, 0x4000
mov r12, rcx
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
nop dword [rax]
mov r8d, r14d
mov rdx, rdi
mov rcx, rbx
call fcn.140034b20
test word [rbx + 0x14], r14w
je 0x1400408a5
mov rcx, rbx
call fcn.140033f70
test eax, eax
jne 0x1400469aa
movzx eax, word [rbx + 0x14]
bt ax, 0xb
jae 0x1400408c4
test byte [r12 + 2], 2
je 0x1400408c4
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
dec esi
test eax, eax
je 0x140046007
add rbx, 0x38
add rdi, 0x38
jmp 0x140040880
mov rcx, qword [rsp + 0x48]
mov r8d, 0x4000
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r11
add rcx, r11
call fcn.140034b20
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, r11
mov rax, qword [rcx + r11]
mov ecx, 0x9000
test word [r8 + 0x14], cx
je 0x140040952
mov rdx, rax
mov rcx, r8
call fcn.1400348e0
jmp 0x140040900
mov r12, qword [rsp + 0x48]
mov qword [r8], rax
mov word [r8 + 0x14], 4
xor r8d, r8d
jmp case.0x140040175.89
xor edx, edx
mov rcx, r15
call fcn.140038b50
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul r13, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add r13, r11
imul rdi, rax, 0x38
movzx r14d, word [r13 + 0x14]
add rbx, r11
movzx eax, r14b
add rdi, r11
or al, byte [rbx + 0x14]
test al, 1
je 0x1400409e7
mov rcx, rdi
call fcn.140034870
mov r13d, dword [rsp + 0x54]
mov rdi, qword [rsp + 0x58]
jmp 0x140040900
test r14b, 0x12
jne 0x140040a1a
xor r8d, r8d
movzx edx, r9b
mov rcx, r13
call fcn.140034040
test eax, eax
jne 0x1400469aa
movzx r14d, word [r13 + 0x14]
mov r12d, 0xfffd
and r14w, r12w
mov eax, 0x400
jmp 0x140040a35
mov eax, 0x400
test ax, r14w
je 0x140040a2f
mov rcx, r13
call fcn.140033fd0
jmp 0x1400409fc
mov r12d, 0xfffd
movzx esi, word [rbx + 0x14]
test sil, 0x12
jne 0x140040a51
movzx edx, byte [rsp + 0x40]
xor r8d, r8d
mov rcx, rbx
call fcn.140034040
jmp 0x140040a5e
test ax, si
je 0x140040a6e
mov rcx, rbx
call fcn.140033fd0
test eax, eax
jne 0x1400469aa
movzx esi, word [rbx + 0x14]
and si, r12w
mov r8, qword [rsp + 0x58]
mov edx, dword [rbx + 0x10]
add edx, dword [r13 + 0x10]
movsxd r15, edx
movsxd rax, dword [r8 + 0x88]
cmp r15, rax
jg 0x140046637
xor r9d, r9d
mov rcx, rdi
mov r8d, r9d
cmp rdi, rbx
sete r8b
add edx, 2
call fcn.140033b90
test eax, eax
jne 0x1400469a5
movzx eax, word [rdi + 0x14]
mov ecx, 0xf242
and ax, cx
or ax, 2
mov word [rdi + 0x14], ax
cmp rdi, rbx
je 0x140040adb
movsxd r8, dword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rdi + 8]
call fcn.1400f65e0
mov word [rbx + 0x14], si
movsxd rcx, dword [rbx + 0x10]
add rcx, qword [rdi + 8]
movsxd r8, dword [r13 + 0x10]
mov rdx, qword [r13 + 8]
call fcn.1400f65e0
movzx r9d, byte [rsp + 0x40]
mov word [r13 + 0x14], r14w
cmp r9b, 1
jbe 0x140040b05
and r15, 0xfffffffffffffffe
mov rax, qword [rdi + 8]
mov r13d, dword [rsp + 0x54]
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov rsi, qword [rsp + 0x70]
mov byte [r15 + rax], 0
mov rax, qword [rdi + 8]
mov byte [rax + r15 + 1], 0
mov eax, 0x200
or word [rdi + 0x14], ax
mov dword [rdi + 0x10], r15d
xor r8d, r8d
mov byte [rdi + 0x16], r9b
mov rdi, qword [rsp + 0x58]
jmp 0x140040593
mov rcx, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
movsxd rax, dword [r12 + 0xc]
add rsi, r11
imul r14, rax, 0x38
movzx ebx, word [rsi + 0x14]
add rdi, r11
add r14, r11
movzx ecx, word [rdi + 0x14]
movzx eax, cl
and al, bl
test al, 4
jne 0x140040bc4
or cl, bl
test cl, 1
jne 0x140040d52
and bx, 0x2d
jne 0x140040ba8
mov rcx, rsi
call fcn.14003fb40
movzx ebx, ax
movzx eax, word [rdi + 0x14]
and ax, 0x2d
jne 0x140040bba
mov rcx, rdi
call fcn.14003fb40
and al, bl
test al, 4
je 0x140040c99
movzx edx, byte [r12]
mov r8, qword [rdi]
mov rcx, qword [rsi]
mov qword [rbp + 0xa0], r8
sub edx, 0x6a
je 0x140040c66
sub edx, 1
je 0x140040c55
sub edx, 1
je 0x140040c44
cmp edx, 1
je 0x140040c15
mov edx, 1
test rcx, rcx
je 0x140040d4f
cmp rcx, 0xffffffffffffffff
mov rax, r8
cmove rcx, rdx
cqo
idiv rcx
mov qword [rbp + 0xa0], rdx
jmp 0x140040c79
test rcx, rcx
je 0x140040d4a
cmp rcx, 0xffffffffffffffff
jne 0x140040c33
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x140040c99
mov rax, r8
cqo
idiv rcx
mov qword [rbp + 0xa0], rax
jmp 0x140040c79
mov rdx, rcx
lea rcx, [rbp + 0xa0]
call fcn.14000d770
jmp 0x140040c75
mov rdx, rcx
lea rcx, [rbp + 0xa0]
call fcn.14000d700
jmp 0x140040c75
mov rdx, rcx
lea rcx, [rbp + 0xa0]
call fcn.14000d6b0
test eax, eax
jne 0x140040c99
mov rax, qword [rbp + 0xa0]
mov ecx, 0xf244
mov qword [r14], rax
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 4
jmp 0x140040da8
mov rcx, rsi
call fcn.1400343f0
mov rcx, rdi
movaps xmm6, xmm0
call fcn.1400343f0
movzx ecx, byte [r12]
sub ecx, 0x6a
je 0x140040d1a
sub ecx, 1
je 0x140040d14
sub ecx, 1
je 0x140040d0e
cmp ecx, 1
je 0x140040d00
mov rcx, rsi
call fcn.140034360
mov rcx, rdi
mov rbx, rax
call fcn.140034360
mov qword [rbp + 0xa0], rax
mov edx, 1
test rbx, rbx
je 0x140040d4f
cmp rbx, 0xffffffffffffffff
xorps xmm0, xmm0
cmove rbx, rdx
cqo
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x140040d1e
ucomisd xmm6, xmm7
jp 0x140040d08
je 0x140040d4a
divsd xmm0, xmm6
jmp 0x140040d1e
mulsd xmm0, xmm6
jmp 0x140040d1e
subsd xmm0, xmm6
jmp 0x140040d1e
addsd xmm0, xmm6
movq rax, xmm0
movabs rcx, 0xfffffffffffff
test rcx, rax
movabs rdx, 0x7ff0000000000000
setne cl
and rax, rdx
cmp rax, rdx
sete al
test al, cl
je 0x140040d92
mov edx, 1
xor r8d, r8d
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x140040d88
mov rcx, r14
call fcn.140034270
mov rdi, qword [rsp + 0x58]
mov r11, qword [rsp + 0x60]
xor r8d, r8d
mov r10d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
jmp 0x140040593
mov word [r14 + 0x14], dx
jmp 0x140040837
movzx eax, word [r14 + 0x14]
mov ecx, 0xf248
and ax, cx
movsd qword [r14], xmm0
or ax, 8
mov rdi, qword [rsp + 0x58]
xor r8d, r8d
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov rsi, qword [rsp + 0x70]
mov word [r14 + 0x14], ax
jmp 0x140040593
movsxd rax, dword [r12 + 4]
test eax, eax
je case.0x140040175.89
imul rcx, rax, 0x38
xor edx, edx
add rcx, r11
call fcn.140034920
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
mov rcx, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
movsxd rax, dword [r12 + 0xc]
add rdi, r11
imul rsi, rax, 0x38
add rcx, r11
add rsi, r11
movzx eax, byte [rcx + 0x14]
or al, byte [rdi + 0x14]
test al, 1
je 0x140040e5f
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x140040e4c
mov rcx, rsi
jmp 0x140040d61
mov word [rsi + 0x14], dx
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x70]
jmp case.0x140040175.89
call fcn.140034360
mov rcx, rdi
mov rbx, rax
call fcn.140034360
movzx ecx, byte [r12]
mov rdx, rax
cmp cl, 0x66
jne 0x140040e81
and rbx, rax
jmp 0x140040ef8
cmp cl, 0x67
jne 0x140040e8b
or rbx, rdx
jmp 0x140040ef8
test rdx, rdx
je 0x140040ef8
jns 0x140040ea5
mov eax, 0xd1
sub al, cl
movzx ecx, al
cmp rdx, 0xffffffffffffffc0
jle 0x140040eab
neg rdx
cmp rdx, 0x40
jl 0x140040ec6
test rbx, rbx
jns 0x140040ebe
cmp cl, 0x68
je 0x140040ebe
mov rbx, 0xffffffffffffffff
jmp 0x140040ef8
xor r9d, r9d
mov ebx, r9d
jmp 0x140040ef8
cmp cl, 0x68
mov rcx, rdx
jne 0x140040ed6
shl rbx, cl
mov r8, rbx
jmp 0x140040ef5
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x140040ef5
mov ecx, 0x40
mov rax, 0xffffffffffffffff
sub cl, dl
shl rax, cl
or r8, rax
mov rbx, r8
movzx eax, word [rsi + 0x14]
mov ecx, 0xf244
and ax, cx
mov qword [rsi], rbx
or ax, 4
mov word [rsi + 0x14], ax
jmp 0x140040d66
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
add rbx, r11
mov rcx, rbx
call fcn.140034480
movsxd rax, dword [r12 + 8]
add qword [rbx], rax
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
add rbx, r11
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x140040fb8
movzx r8d, r9b
mov dl, 0x43
mov rcx, rbx
call fcn.14003f9e0
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x140040fac
cmp dword [r12 + 8], 0
je 0x14004640b
xor r8d, r8d
mov edx, 1
mov eax, dword [r12 + 8]
mov r11, qword [rsp + 0x60]
dec eax
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
cdqe
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp case.0x140040175.89
mov r11, qword [rsp + 0x60]
xor r8d, r8d
lea edx, [r8 + 1]
movzx r9d, byte [rsp + 0x40]
mov ecx, 0xf244
mov r10d, dword [rsp + 0x50]
and ax, cx
or ax, 4
mov word [rbx + 0x14], ax
jmp case.0x140040175.89
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
je case.0x140040175.89
call fcn.140034510
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x140041035
mov rcx, rbx
call fcn.140033fd0
mov r13d, eax
test eax, eax
jne 0x1400465ef
movzx r8d, byte [rsp + 0x40]
mov rcx, rbx
movzx edx, byte [r12 + 8]
call fcn.140034660
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
mov rcx, qword [rsp + 0x48]
mov r12, rcx
movsxd rax, dword [rcx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul r14, rax, 0x38
add r15, r11
add r14, r11
movzx esi, word [r15 + 0x14]
movzx edi, word [r14 + 0x14]
movzx edx, di
and dx, si
test dl, 4
je 0x140041141
mov rcx, qword [r14]
mov edx, 1
cmp rcx, qword [r15]
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x70]
jle 0x1400410ec
cmp byte [rbx + rcx + 0x122f18], 0
jne 0x140040f86
mov r10d, edx
mov dword [rsp + 0x50], edx
mov r15, qword [rsp + 0x78]
add r12, 0x18
mov r14, qword [rbp - 0x78]
jmp 0x140040144
jge 0x140041119
cmp byte [rbx + rcx + 0x122f0c], 0
jne 0x140040f86
mov r10d, 0xffffffff
mov dword [rsp + 0x50], r10d
mov r15, qword [rsp + 0x78]
add r12, 0x18
mov r14, qword [rbp - 0x78]
jmp 0x140040144
cmp byte [rbx + rcx + 0x122f12], 0
jne 0x140040f86
mov r10d, r8d
mov dword [rsp + 0x50], r8d
mov r15, qword [rsp + 0x78]
add r12, 0x18
mov r14, qword [rbp - 0x78]
jmp 0x140040144
movzx ecx, di
or cx, si
test cl, 1
je 0x1400411b2
movzx eax, word [r12 + 2]
test al, al
jns 0x14004118f
test dl, 1
je 0x140041174
mov eax, 0x100
test ax, di
jne 0x140041174
movzx eax, byte [r12]
mov dword [rsp + 0x50], r8d
jmp 0x1400412e0
movzx eax, di
not ax
and eax, 1
lea r10d, [rax*2 - 1]
mov dword [rsp + 0x50], r10d
jmp 0x1400412b6
mov rdi, qword [rsp + 0x58]
mov edx, 1
mov rsi, qword [rsp + 0x70]
test al, 0x10
jne 0x140040f86
mov r10d, edx
mov dword [rsp + 0x50], edx
jmp case.0x140040175.89
movzx eax, byte [r12 + 2]
and al, 0x47
cmp al, 0x43
jb 0x1400411fd
test cl, 2
je 0x14004129a
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x1400411e0
xor edx, edx
mov rcx, r15
call fcn.14003f840
movzx edi, word [r14 + 0x14]
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x14004129a
xor edx, edx
mov rcx, r14
call fcn.14003f840
jmp 0x14004129a
cmp al, 0x42
jne 0x14004129a
test cl, 2
je 0x14004129a
test sil, 2
je 0x140041226
movzx eax, si
mov ecx, 0xffd3
and ax, cx
mov word [r15 + 0x14], ax
jmp 0x140041265
test sil, 0x2c
je 0x140041260
mov r8b, 1
movzx edx, r9b
mov rcx, r15
call fcn.140034040
xor si, word [r15 + 0x14]
mov ebx, 0xdbf
and si, bx
mov ecx, 0xffd3
xor si, word [r15 + 0x14]
cmp r15, r14
jne 0x14004126a
movzx edi, si
or di, 2
jmp 0x14004126a
mov ecx, 0xffd3
mov ebx, 0xdbf
test dil, 2
je 0x140041277
and word [r14 + 0x14], cx
jmp 0x14004129a
test dil, 0x2c
je 0x14004129a
movzx edx, byte [rsp + 0x40]
mov r8b, 1
mov rcx, r14
call fcn.140034040
xor di, word [r14 + 0x14]
and di, bx
xor di, word [r14 + 0x14]
mov r8, qword [r12 + 0x10]
mov rdx, r15
mov rcx, r14
call fcn.140039fa0
mov r11, qword [rsp + 0x60]
mov r10d, eax
mov dword [rsp + 0x50], eax
movzx eax, byte [r12]
mov ecx, r10d
movzx r9d, si
test r10d, r10d
jns 0x1400412d8
lea rcx, [0x140000000]
movzx edx, byte [rax + rcx + 0x122f0c]
jmp 0x140041310
mov dword [rsp + 0x50], ecx
test ecx, ecx
jne 0x1400412f6
mov r10d, dword [rsp + 0x50]
lea rcx, [0x140000000]
movzx edx, byte [rax + rcx + 0x122f12]
jmp 0x140041310
lea rdx, [0x140000000]
mov dword [rsp + 0x50], ecx
movzx edx, byte [rax + rdx + 0x122f18]
lea rcx, [0x140000000]
xor r8d, r8d
mov word [r14 + 0x14], di
mov word [r15 + 0x14], si
test dl, dl
mov rsi, qword [rsp + 0x70]
lea edx, [r8 + 1]
jne 0x140045aab
mov rdi, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r15, qword [rsp + 0x78]
add r12, 0x18
mov r14, qword [rbp - 0x78]
jmp 0x140040144
test r10d, r10d
je 0x140040f86
jmp case.0x140040175.89
mov rax, qword [rsp + 0x48]
test byte [rax + 2], 1
jne 0x140041369
mov r13, r8
jmp 0x140041371
mov r13, qword [rax - 8]
add r13, 4
mov rcx, qword [rax + 0x10]
xor edx, edx
mov r8d, dword [rax + 4]
mov edi, edx
mov r9d, dword [rax + 8]
mov ebx, edx
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x60], rcx
mov dword [rbp + 0x40], r8d
mov dword [rbp - 0x68], r9d
mov qword [rbp + 0x48], rax
test rax, rax
jle 0x1400462da
lea r14, [rcx + 0x20]
test r13, r13
je 0x1400413b0
mov edx, dword [r13 + rbx*4]
jmp 0x1400413b2
mov edx, edi
mov rax, qword [rcx + 0x18]
lea ecx, [rdx + r9]
imul r12, rcx, 0x38
movzx esi, byte [rax + rbx]
lea ecx, [rdx + r8]
mov r8, qword [r14]
add r12, r11
imul r15, rcx, 0x38
mov rdx, r12
and esi, 1
add r15, r11
mov rcx, r15
call fcn.140039fa0
mov dword [rsp + 0x50], eax
mov r10d, eax
test eax, eax
jne 0x14004142e
mov rcx, qword [rbp - 0x60]
inc edi
mov r8d, dword [rbp + 0x40]
inc rbx
mov r9d, dword [rbp - 0x68]
add r14, 8
mov r11, qword [rsp + 0x60]
cmp rbx, qword [rbp + 0x48]
jl 0x1400413a4
mov r13d, dword [rsp + 0x54]
xor r8d, r8d
mov rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
jmp 0x140040593
mov rax, qword [rbp - 0x60]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x140041453
test byte [r15 + 0x14], 1
jne 0x14004144b
test byte [r12 + 0x14], 1
je 0x140041453
neg r10d
mov dword [rsp + 0x50], r10d
mov r13d, dword [rsp + 0x54]
mov edx, 1
mov rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
test esi, esi
je 0x140045ff4
movzx r9d, byte [rsp + 0x40]
neg r10d
mov rsi, qword [rsp + 0x70]
xor r8d, r8d
mov dword [rsp + 0x50], r10d
jmp case.0x140040175.89
test r10d, r10d
jns 0x1400414aa
mov eax, dword [r12 + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp case.0x140040175.89
jne 0x1400414c2
mov eax, dword [r12 + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp case.0x140040175.89
mov eax, dword [r12 + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp case.0x140040175.89
movsxd rax, dword [r12 + 4]
mov r14d, 2
imul rcx, rax, 0x38
mov edx, r14d
add rcx, r11
call fcn.140034420
movsxd rcx, dword [r12 + 8]
mov edx, r14d
imul rcx, rcx, 0x38
mov ebx, eax
add rcx, qword [rsp + 0x60]
call fcn.140034420
lea rcx, [0x140000000]
lea eax, [rax + rbx*2]
add eax, ebx
movsxd r8, eax
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x2c
jne 0x14004152e
movzx r8d, byte [r8 + rcx + 0x1207b8]
jmp 0x140041537
movzx r8d, byte [r8 + rcx + 0x121e28]
movsxd rax, dword [rax + 0xc]
mov r11, qword [rsp + 0x60]
imul rdx, rax, 0x38
movzx ecx, word [rdx + r11 + 0x14]
cmp r8b, r14b
jne 0x140041579
mov r12, qword [rsp + 0x48]
mov eax, 0xf241
movzx r9d, byte [rsp + 0x40]
and cx, ax
mov r10d, dword [rsp + 0x50]
or cx, 1
mov word [rdx + r11 + 0x14], cx
xor r8d, r8d
jmp 0x140040593
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
movzx eax, r8b
mov qword [rdx + r11], rax
mov eax, 0xf244
and cx, ax
or cx, 4
mov word [rdx + r11 + 0x14], cx
xor r8d, r8d
jmp 0x140040593
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
mov edx, dword [rbx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.140034420
movsxd rdx, dword [rbx + 0x10]
movsxd rcx, eax
movsxd rax, dword [rbx + 8]
xor rdx, rcx
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
call fcn.140034920
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r12, rbx
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rcx, r11
add rbx, r11
test byte [rcx + 0x14], 1
jne 0x14004163a
xor edx, edx
call fcn.140034420
xor r9d, r9d
mov rcx, rbx
test eax, eax
mov edx, r9d
sete dl
call fcn.140034920
jmp 0x140040900
mov rcx, rbx
call fcn.140034870
jmp 0x140040900
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
mov rcx, rbx
call fcn.140034870
test byte [rdi + 0x14], 1
jne 0x140045fc8
mov rcx, rdi
mov word [rbx + 0x14], 4
call fcn.140034360
mov rdi, qword [rsp + 0x58]
not rax
mov qword [rbx], rax
jmp 0x140040900
mov r8, qword [r15 + 0x108]
test r8, r8
je 0x1400416ec
mov r9, qword [r8 + 0x28]
mov rcx, r12
sub rcx, qword [r15 + 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 0x140040f7e
bts eax, edx
mov edx, 1
mov byte [rcx + r9], al
jmp 0x140041701
mov rcx, qword [r15 + 0x88]
mov eax, dword [r12 + 4]
cmp dword [rcx + 4], eax
je 0x14004618e
mov rax, qword [r15 + 0x88]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov ecx, dword [rax + 4]
mov dword [r12 + 4], ecx
jmp case.0x140040175.89
movsxd rax, dword [r12 + 4]
mov edx, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.140034420
xor r8d, r8d
test eax, eax
mov edx, 1
jne 0x140045aab
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x140040175.89
mov rax, qword [rsp + 0x48]
mov edx, r8d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r11
call fcn.140034420
xor r8d, r8d
test eax, eax
mov r12, qword [rsp + 0x48]
mov edx, 1
je 0x140045aab
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x140040175.89
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x140040f86
jmp case.0x140040175.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
test eax, eax
js 0x140041827
mov r12, qword [rsp + 0x48]
mov rcx, rax
mov rax, qword [r15 + 0x78]
movsxd rdx, dword [r12 + 0xc]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0x4a]
cmp edx, eax
jge 0x140041816
mov ecx, dword [rcx + rdx*4 + 0x78]
cmp ecx, 0xc
jb 0x140041802
test cl, 1
mov edx, 4
mov eax, 8
cmove dx, ax
jmp 0x14004184a
mov rax, rcx
lea rcx, [0x140000000]
movzx edx, byte [rax + rcx + 0x126a18]
jmp 0x140041851
mov ecx, dword [r12 + 0x10]
mov edx, 1
dec ecx
shl dx, cl
jmp 0x14004184a
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.14003bec0
mov r12, qword [rsp + 0x48]
mov edx, 1
lea ecx, [rax - 1]
shl dx, cl
xor r8d, r8d
lea rcx, [0x140000000]
test word [r12 + 2], dx
jne 0x140040f81
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov edx, 1
mov r15, qword [rsp + 0x78]
add r12, 0x18
mov r14, qword [rbp - 0x78]
jmp 0x140040144
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x1400418d1
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x1400418d1
movsxd rax, dword [r12 + 8]
xor edx, edx
imul rcx, rax, 0x38
add rcx, r11
call fcn.140034920
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
add rcx, r11
call fcn.140034870
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x140040f86
jmp case.0x140040175.89
movsxd rcx, dword [r12 + 4]
mov rax, qword [r15 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x140040593
cmp byte [rdx + 2], 0
je 0x140040593
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.140034870
jmp 0x140040f7e
mov rdi, qword [rsp + 0x48]
mov rax, qword [r15 + 0x78]
movsxd rcx, dword [rdi + 4]
mov r14d, dword [rdi + 8]
mov rbx, qword [rax + rcx*8]
mov dword [rbp + 0x40], r14d
nop dword [rax]
nop word [rax + rax]
mov r12, qword [rbx + 0x58]
mov eax, dword [r15 + 0x2c]
mov qword [rbp + 0x48], r12
cmp dword [rbx + 0x20], eax
je 0x1400419ba
cmp byte [rbx + 2], 0
jne 0x140041a1a
cmp byte [rbx + 3], 0
mov rdi, qword [rbx + 0x30]
je 0x1400419b3
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x1400419e4
lea eax, [r14 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x1400419e4
mov rbx, qword [rbx + 0x28]
lea r14d, [rax - 1]
jmp 0x14004195f
cmp byte [rdi], 0
je 0x1400419fb
jmp 0x1400419c7
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x140041af8
mov rcx, rbx
call fcn.1400394a0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
je 0x140041970
mov rdi, qword [rsp + 0x58]
jmp 0x1400465ef
mov rcx, rbx
call fcn.140039430
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140046423
mov rcx, rdi
call fcn.1400284b0
lea rsi, [rbx + 0x6c]
mov dword [rbx + 0x68], eax
mov rdx, rsi
mov rcx, rdi
call fcn.140028c80
mov rcx, rax
jmp 0x140041a48
cmp byte [rbx], 3
jne 0x140041ac3
movsxd rax, dword [rbx + 0x24]
test eax, eax
jle 0x140041ac3
imul rcx, rax, 0x38
lea rsi, [rbx + 0x6c]
add rcx, qword [rsp + 0x60]
mov eax, dword [rcx + 0x10]
mov dword [rsi], eax
mov dword [rbx + 0x68], eax
mov rcx, qword [rcx + 8]
mov qword [rbx + 0x60], rcx
lea rdi, [rbx + 0x40]
mov eax, dword [r15 + 0x2c]
mov dword [rbx + 0x20], eax
movzx eax, byte [rcx]
mov dword [r12], eax
mov qword [rbp - 0x60], rdi
cmp eax, 0x80
jae 0x140041a70
mov eax, 1
jmp 0x140041a7f
mov rcx, qword [rbx + 0x60]
mov rdx, r12
call fcn.14000d540
movzx eax, al
mov dword [rdi], eax
lea r13, [rbx + 0x4a]
xor r8d, r8d
mov word [r13], r8w
mov eax, dword [r12]
cmp dword [rsi], eax
jae 0x140041ab6
mov qword [rbx + 0x60], r8
mov dword [rsi], r8d
mov eax, dword [r12]
cmp eax, 0x18003
ja 0x140041c67
cmp eax, dword [rbx + 0x68]
ja 0x140041c67
jmp 0x140041aff
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x68], rax
jmp 0x140041b6c
mov r12, qword [rsp + 0x48]
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
call fcn.140034870
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
jmp 0x140040593
lea r13, [rbx + 0x4a]
xor r8d, r8d
movzx eax, word [r13]
cmp eax, r14d
ja 0x140041d11
mov eax, dword [r12]
lea rdi, [rbx + 0x40]
mov qword [rbp - 0x60], rdi
cmp dword [rdi], eax
jae 0x140041cad
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x68], rax
test rax, rax
jne 0x140041b68
xorps xmm0, xmm0
mov qword [rbp - 0x20], rax
movups xmmword [rbp - 0x50], xmm0
lea r8, [rbp - 0x50]
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
mov edx, dword [r12]
mov rcx, qword [rbx + 0x30]
call fcn.140035070
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x1400469f4
mov rax, qword [rbp - 0x48]
mov qword [rbp - 0x68], rax
jmp 0x140041b6c
mov qword [rbp - 0x60], rdi
movzx r15d, word [r13]
mov edi, dword [rdi]
mov r14d, r15d
add rdi, rax
mov esi, dword [r12 + r15*4]
mov r12d, dword [r12]
add r12, rax
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdi]
mov dword [rbp - 0x70], eax
mov dword [rbx + r14*4 + 0x78], eax
mov ecx, dword [rbp - 0x70]
cmp ecx, 0x80
jae 0x140041bb3
inc rdi
call fcn.140039530
movzx eax, al
jmp 0x140041bd7
lea rdx, [rbp - 0x70]
mov rcx, rdi
call fcn.14000d540
movzx eax, al
add rdi, rax
mov eax, dword [rbp - 0x70]
mov dword [rbx + r14*4 + 0x78], eax
mov ecx, dword [rbp - 0x70]
call fcn.140039510
mov eax, eax
mov rcx, qword [rbp + 0x48]
inc r15d
add rsi, rax
movsxd r14, r15d
mov dword [rcx + r14*4], esi
cmp r15d, dword [rbp + 0x40]
ja 0x140041bf5
cmp rdi, r12
jb 0x140041b90
jmp 0x140041bfa
cmp rdi, r12
jb 0x140041c37
cmp rdi, r12
ja 0x140041c3f
mov eax, dword [rbx + 0x68]
cmp rsi, rax
jne 0x140041c3f
sub edi, dword [rbp - 0x68]
cmp qword [rbx + 0x60], 0
mov rax, qword [rbp - 0x60]
mov word [r13], r15w
mov dword [rax], edi
jne 0x140041c25
lea rcx, [rbp - 0x50]
call fcn.140034300
mov edx, dword [rbp - 0x70]
mov r12, qword [rbp + 0x48]
mov r14d, dword [rbp + 0x40]
mov r15, qword [rsp + 0x78]
jmp 0x140041cb3
mov eax, dword [rbx + 0x68]
cmp rsi, rax
jbe 0x140041c07
cmp dword [rcx], 0
jne 0x140041c4f
xor r9d, r9d
mov rdi, r12
mov r15d, r9d
jmp 0x140041c07
cmp qword [rbx + 0x60], 0
jne 0x140041c5f
lea rcx, [rbp - 0x50]
call fcn.140034300
mov r15, qword [rsp + 0x78]
xor r8d, r8d
mov rsi, qword [rsp + 0x70]
mov eax, dword [rsi + 0xc]
test eax, eax
jle 0x140046416
mov r13d, dword [rsp + 0x54]
dec eax
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea rdi, [rsi + rax*8]
mov qword [rsp + 0x48], rdi
mov r12, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x58]
jmp 0x140040593
mov edx, r8d
mov dword [rbp - 0x70], edx
movzx eax, word [r13]
cmp eax, r14d
ja 0x140041d0c
mov rdx, qword [rsp + 0x48]
movsxd rax, dword [rdx + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
cmp byte [rdx + 1], 0xf6
jne 0x140041cf8
mov rdx, qword [rdx + 0x10]
mov r8d, 0x2000
call fcn.140034b20
mov r13d, dword [rsp + 0x54]
mov rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x48]
jmp 0x140040d6b
call fcn.140034870
mov r13d, dword [rsp + 0x54]
mov r12, qword [rsp + 0x48]
jmp 0x140040d66
mov esi, r14d
jmp 0x140041d1b
mov esi, r14d
mov edx, dword [rbx + rsi*4 + 0x78]
mov dword [rbp - 0x70], edx
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 0xc]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [rsp + 0x60]
test word [rdi + 0x14], ax
je 0x140041d48
mov rcx, rdi
call fcn.140034870
mov edx, dword [rbp - 0x70]
mov r8, qword [rsp + 0x48]
lea eax, [r14 + 1]
mov eax, dword [r12 + rax*4]
cmp dword [rbx + 0x6c], eax
jb 0x140041e43
mov esi, dword [r12 + rsi*4]
add rsi, qword [rbx + 0x60]
cmp edx, 0xc
jae 0x140041d80
mov rcx, rsi
mov r8, rdi
call fcn.140039540
mov r13d, dword [rsp + 0x54]
mov r12, qword [rsp + 0x48]
jmp 0x140040d66
movzx eax, byte [rsp + 0x40]
lea ebx, [rdx - 0xc]
shr ebx, 1
mov dword [rdi + 0x10], ebx
mov byte [rdi + 0x16], al
lea edx, [rbx + 2]
cmp dword [rdi + 0x20], edx
jge 0x140041dc5
mov r8, qword [rsp + 0x58]
cmp ebx, dword [r8 + 0x88]
jg 0x140046641
xor r8d, r8d
mov word [rdi + 0x14], 1
mov rcx, rdi
call fcn.140033b90
test eax, eax
jne 0x1400469aa
jmp 0x140041dcd
mov rax, qword [rdi + 0x28]
mov qword [rdi + 8], rax
mov rcx, qword [rdi + 8]
mov r8, rbx
mov rdx, rsi
call fcn.1400f65e0
mov rax, qword [rdi + 8]
lea rcx, [0x140000000]
mov r13d, dword [rsp + 0x54]
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov rsi, qword [rsp + 0x70]
mov byte [rbx + rax], 0
mov rax, qword [rdi + 8]
mov byte [rax + rbx + 1], 0
mov eax, dword [rbp - 0x70]
and eax, 1
xor r8d, r8d
movzx eax, word [rcx + rax*2 + 0x124cd8]
mov word [rdi + 0x14], ax
lea edx, [r8 + 1]
mov rdi, qword [rsp + 0x58]
mov r15, qword [rsp + 0x78]
add r12, 0x18
mov r14, qword [rbp - 0x78]
jmp 0x140040144
movzx eax, byte [rsp + 0x40]
mov byte [rdi + 0x16], al
movzx eax, byte [r8 + 2]
mov edx, dword [rbp - 0x70]
and al, 0xc0
je 0x140041e69
cmp al, 0x80
je 0x140041e77
cmp edx, 0xc
jb 0x140041e69
test dl, 1
je 0x140041e77
cmp al, 0xc0
je 0x140041e77
mov ecx, edx
call fcn.140039510
test eax, eax
jne 0x140041e83
mov edx, dword [rbp - 0x70]
lea rcx, [0x140121cc0]
jmp 0x140041d69
mov eax, dword [rbp - 0x7c]
mov edx, r14d
mov r9d, dword [r12 + rsi*4]
mov rcx, rbx
mov r8d, dword [rbp - 0x70]
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], eax
mov eax, dword [r15 + 0x2c]
mov dword [rsp + 0x20], eax
call fcn.14003fd50
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
je 0x140041ce9
mov rdi, qword [rsp + 0x58]
cmp eax, 7
je 0x1400469af
cmp eax, 0x12
je 0x140046650
jmp 0x1400465ef
mov rax, qword [rsp + 0x48]
mov edi, r8d
mov r12, qword [rsp + 0x48]
mov r14, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rsi, rax, 0x38
mov r15, qword [r14 + 8]
add rsi, r11
cmp r8w, word [r14 + 0x36]
jge 0x140040e50
lea rbx, [r15 + 0xc]
movzx eax, word [rbx + 6]
test al, 0x60
je 0x140041f20
test al, 0x20
jne 0x140041fce
cmp dword [r12 + 0xc], 0
jne 0x140041fca
movzx edx, byte [rbx]
movzx r8d, r9b
mov rcx, rsi
call fcn.14003f9e0
movzx ecx, word [rsi + 0x14]
test cl, 1
jne 0x140041fca
mov eax, dword [rbx - 4]
shr eax, 4
and eax, 0xf
sub eax, 2
je 0x140041fc1
sub eax, 1
je 0x140041fbc
sub eax, 1
je 0x140041fbc
sub eax, 1
je 0x140041f63
cmp eax, 1
jne 0x140041fca
test cl, 2
jmp 0x140041fc4
test cl, 4
je 0x140041fb7
mov rdx, qword [rsi]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x140041f99
or cx, 0x20
mov eax, 0xfffb
and cx, ax
mov word [rsi + 0x14], cx
jmp 0x140041fca
xorps xmm0, xmm0
or cx, 8
cvtsi2sd xmm0, rdx
mov eax, 0xfffb
and cx, ax
movsd qword [rsi], xmm0
mov word [rsi + 0x14], cx
jmp 0x140041fca
test cl, 0x28
jmp 0x140041fc4
test cl, 4
jmp 0x140041fc4
test cl, 0x10
je 0x14004642d
add rsi, 0x38
movsx eax, word [r14 + 0x36]
inc edi
movzx r9d, byte [rsp + 0x40]
add rbx, 0x18
cmp edi, eax
jl 0x140041f04
jmp 0x140040d66
mov rax, qword [rsp + 0x48]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r11
nop dword [rax]
nop word [rax + rax]
movzx r8d, r9b
movzx edx, al
mov rcx, rbx
call fcn.14003f9e0
cmp byte [rdi], 0x45
jne 0x140042076
movzx ecx, word [rbx + 0x14]
test cl, 4
je 0x140042076
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x14004205a
mov eax, 0xfffb
and cx, ax
or cx, 0x20
jmp 0x140042072
xorps xmm0, xmm0
mov eax, 0xfff9
cvtsi2sd xmm0, rdx
and cx, ax
or cx, 8
movsd qword [rbx], xmm0
mov word [rbx + 0x14], cx
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x140045fc8
movzx r9d, byte [rsp + 0x40]
add rbx, 0x38
jmp 0x140042010
mov rbx, qword [rsp + 0x48]
mov r14, r8
mov r12d, r8d
mov r13, r8
movsxd rax, dword [rbx + 4]
mov rdi, qword [rbx + 0x10]
imul rcx, rax, 0x38
mov eax, dword [rbx + 8]
dec eax
add rcx, r11
cdqe
imul rsi, rax, 0x38
movsxd rax, dword [rbx + 0xc]
imul rdx, rax, 0x38
add rsi, rcx
mov qword [rbp + 0x48], rcx
add rdx, r11
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x68], rdx
test rdi, rdi
je 0x14004212f
movzx eax, byte [rdi]
lea rbx, [rcx + 0x14]
mov esi, 0xfffb
nop word [rax + rax]
lea rcx, [rbx - 0x14]
movzx r8d, r9b
movzx edx, al
call fcn.14003f9e0
cmp byte [rdi], 0x45
jne 0x140042116
movzx eax, word [rbx]
test al, 4
je 0x140042116
and ax, si
or ax, 0x20
mov word [rbx], ax
movzx eax, byte [rdi + 1]
inc rdi
movzx r9d, byte [rsp + 0x40]
add rbx, 0x38
test al, al
jne 0x1400420f0
mov rsi, qword [rbp - 0x60]
lea r15, [rsi + 0x24]
movzx ecx, word [r15 - 0x10]
test cl, 1
je 0x140042158
mov eax, 0x400
and cx, ax
neg cx
sbb eax, eax
and eax, 0xa
mov dword [r15], eax
inc r12d
jmp 0x1400422bc
test cl, 0x24
je 0x140042257
mov r8, qword [r15 - 0x24]
mov rdx, r8
test r8, r8
jns 0x140042170
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x1400421ad
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x14004219d
mov rax, qword [rsp + 0x78]
cmp byte [rax + 0xc5], 4
jb 0x14004219d
lea eax, [rdx + 8]
mov dword [r15], eax
jmp 0x1400422bc
mov eax, 1
inc r14
mov dword [r15], eax
jmp 0x1400422bc
cmp rdx, 0x7fff
ja 0x1400421c7
mov eax, 2
add r14, 2
mov dword [r15], eax
jmp 0x1400422bc
cmp rdx, 0x7fffff
ja 0x1400421e1
mov eax, 3
add r14, 3
mov dword [r15], eax
jmp 0x1400422bc
cmp rdx, 0x7fffffff
ja 0x1400421fb
mov eax, 4
add r14, 4
mov dword [r15], eax
jmp 0x1400422bc
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x14004221b
mov eax, 5
add r14, 6
mov dword [r15], eax
jmp 0x1400422bc
add r14, 8
test cl, 0x20
je 0x14004224d
mov eax, 0xffdf
xorps xmm0, xmm0
and cx, ax
mov eax, 7
cvtsi2sd xmm0, r8
or cx, 8
mov word [r15 - 0x10], cx
movsd qword [r15 - 0x24], xmm0
mov dword [r15], eax
jmp 0x1400422bc
mov eax, 6
mov dword [r15], eax
jmp 0x1400422bc
test cl, 8
je 0x14004226c
inc r12d
mov dword [r15], 7
add r14, 8
jmp 0x1400422bc
mov edi, dword [r15 - 0x14]
mov eax, ecx
shr eax, 1
and eax, 1
bt cx, 0xa
lea esi, [rdi + 6]
lea esi, [rax + rsi*2]
jae 0x1400422aa
movsxd rax, dword [r15 - 0x24]
lea esi, [rsi + rax*2]
test r14, r14
je 0x1400422a7
lea rcx, [r15 - 0x24]
call fcn.140033fd0
test eax, eax
jne 0x1400469a5
add edi, dword [r15 - 0x24]
jmp 0x1400422aa
add r13, rax
mov eax, edi
mov ecx, esi
add r14, rax
call fcn.14000d5c0
add r12d, eax
mov dword [r15], esi
lea rax, [r15 - 0x24]
cmp rax, qword [rbp + 0x48]
je 0x1400422cf
sub r15, 0x38
jmp 0x140042133
cmp r12d, 0x7e
jle 0x1400422ee
movsxd rcx, r12d
call fcn.14000d5c0
add r12d, eax
mov ebx, eax
movsxd rcx, r12d
call fcn.14000d5c0
cmp ebx, eax
jge 0x1400422f1
inc r12d
mov rsi, qword [rbp - 0x68]
movsxd rdi, r12d
movsxd rax, dword [rsi + 0x20]
lea rbx, [r14 + rdi]
lea rcx, [rbx + r13]
cmp rcx, rax
jg 0x140042313
mov rax, qword [rsi + 0x28]
mov qword [rsi + 8], rax
jmp 0x14004233a
mov r8, qword [rsp + 0x58]
movsxd rax, dword [r8 + 0x88]
cmp rcx, rax
jg 0x140046637
mov edx, ebx
mov rcx, rsi
call fcn.140033e30
test eax, eax
jne 0x1400469a5
mov dword [rsi + 0x10], ebx
mov word [rsi + 0x14], 0x10
test r13, r13
je 0x140042351
mov dword [rsi], r13d
mov word [rsi + 0x14], 0x410
mov rsi, qword [rsi + 8]
lea rbx, [rdi + rsi]
cmp r12d, 0x80
jge 0x14004236a
mov byte [rsi], r12b
inc rsi
jmp 0x14004237b
mov rdx, rdi
mov rcx, rsi
call fcn.14000d310
movsxd rcx, eax
add rsi, rcx
mov rdi, qword [rbp + 0x48]
mov r14, qword [rbp - 0x60]
add rdi, 0x10
mov eax, dword [rdi + 0x14]
cmp eax, 7
ja 0x140042402
mov byte [rsi], al
inc rsi
test eax, eax
je 0x140042449
mov rcx, qword [rdi - 0x10]
lea rdx, [0x140000000]
movzx edx, byte [rax + rdx + 0x122470]
mov eax, edx
sub eax, 1
je 0x1400423fb
sub eax, 1
je 0x1400423f4
sub eax, 1
je 0x1400423ed
sub eax, 1
je 0x1400423e6
cmp eax, 2
je 0x1400423d8
mov byte [rbx + 7], cl
shr rcx, 8
mov byte [rbx + 6], cl
shr rcx, 8
mov byte [rbx + 5], cl
shr rcx, 8
mov byte [rbx + 4], cl
shr rcx, 8
mov byte [rbx + 3], cl
shr rcx, 8
mov byte [rbx + 2], cl
shr rcx, 8
mov byte [rbx + 1], cl
shr rcx, 8
mov byte [rbx], cl
add rbx, rdx
jmp 0x140042449
cmp eax, 0x80
jae 0x14004241c
mov byte [rsi], al
inc rsi
cmp eax, 0xe
jb 0x140042449
movsxd rax, dword [rdi]
test eax, eax
jle 0x140042449
jmp 0x140042434
mov rdx, rax
mov rcx, rsi
call fcn.14000d310
movsxd rcx, eax
movsxd rax, dword [rdi]
add rsi, rcx
test eax, eax
je 0x140042449
mov rdx, qword [rdi - 8]
mov r8, rax
mov rcx, rbx
call fcn.1400f65e0
movsxd rax, dword [rdi]
add rbx, rax
lea rax, [rdi - 0x10]
cmp rax, r14
je 0x140045fc3
add rdi, 0x38
jmp 0x140042387
cmp dword [r12 + 0xc], 0
movsxd rcx, dword [r12 + 4]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x30]
je 0x140042489
mov rcx, rdx
call fcn.140029b60
mov qword [rbp + 0xc0], rax
jmp 0x1400424ae
mov qword [rbp + 0xc0], r8
mov rcx, rdi
lea r8, [rbp + 0xc0]
call fcn.140031030
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
mov rdx, r12
mov rcx, r15
call fcn.14003fc20
mov rcx, qword [rbp + 0xc0]
mov qword [rax], rcx
jmp 0x1400449ef
mov rax, qword [rsp + 0x48]
mov r14d, dword [rax + 4]
mov rdi, qword [rax + 0x10]
mov dword [rbp - 0x68], r14d
test r14d, r14d
jne 0x14004259e
mov rbx, qword [rsp + 0x58]
cmp dword [rbx + 0xe0], r14d
jg 0x140046493
mov rcx, rdi
call fcn.14000ac80
mov r8d, dword [rbx + 0x2f4]
xor edx, edx
add r8d, dword [rbx + 0x2f0]
mov rcx, rbx
movsxd rsi, eax
call fcn.1400af000
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400464a8
lea rdx, [rsi + 0x21]
mov rcx, rbx
call fcn.1400073b0
mov rbx, rax
test rax, rax
je 0x140042887
lea r9, [rax + 0x20]
mov rdx, rdi
lea ecx, [rsi + 1]
mov qword [rax], r9
movsxd r8, ecx
mov rcx, r9
call fcn.1400f65e0
mov rdi, qword [rsp + 0x58]
cmp byte [rdi + 0x65], r13b
je 0x14004256b
mov byte [rdi + 0x65], r13b
mov byte [rdi + 0x6d], 1
jmp 0x140042571
inc dword [rdi + 0x2f0]
mov rax, qword [rdi + 0x2e0]
mov qword [rbx + 0x18], rax
mov rax, qword [rdi + 0x2f8]
mov qword [rdi + 0x2e0], rbx
mov qword [rbx + 8], rax
mov rax, qword [rdi + 0x300]
mov qword [rbx + 0x10], rax
jmp 0x14004281c
mov r12d, r8d
mov r8, qword [rsp + 0x58]
mov rsi, qword [r8 + 0x2e0]
test rsi, rsi
je 0x1400425cd
mov rcx, qword [rsi]
mov rdx, rdi
call fcn.14000b200
test eax, eax
je 0x1400425f7
mov rsi, qword [rsi + 0x18]
inc r12d
test rsi, rsi
jne 0x1400425b2
mov r8, rdi
lea rdx, str.no_such_savepoint:__s
mov rcx, r15
call fcn.1400359c0
mov r12d, 1
mov r13d, r12d
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x48]
jmp 0x1400465fa
mov rdi, qword [rsp + 0x58]
cmp dword [rdi + 0xe0], 0
jle 0x14004260f
cmp r14d, 1
je 0x1400464b0
cmp qword [rsi + 0x18], 0
jne 0x140042674
cmp byte [rdi + 0x6d], 0
je 0x140042674
mov ebx, 1
mov dword [rbp + 0x40], ebx
cmp r14d, ebx
jne 0x14004267b
mov edx, ebx
mov rcx, r15
call fcn.140038b50
mov r13d, eax
test eax, eax
jne 0x140042830
mov rcx, r15
mov byte [rdi + 0x65], bl
call fcn.140038bc0
cmp eax, 5
je 0x1400464d3
mov r13d, dword [r15 + 0x34]
mov dword [rsp + 0x54], r13d
test r13d, r13d
jne 0x1400464ca
mov byte [rdi + 0x6d], r13b
lea r15, [rdi + 0x2f0]
jmp 0x14004277b
xor ecx, ecx
mov dword [rbp + 0x40], ecx
jmp 0x14004267d
xor ecx, ecx
lea r15, [rdi + 0x2f0]
mov eax, dword [r15]
sub eax, r12d
lea r12d, [rax - 1]
cmp r14d, 2
jne 0x1400426ed
mov r13d, dword [rdi + 0x2c]
mov edi, ecx
mov rax, qword [rsp + 0x58]
and r13d, 1
cmp dword [rax + 0x28], 0
jle 0x1400426f0
mov r14d, r13d
mov rbx, rcx
xor r14d, 1
mov rcx, qword [rax + 0x20]
mov r8d, r14d
mov edx, 0x204
mov rcx, qword [rcx + rbx + 8]
call fcn.140027cf0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x1400469ea
mov rax, qword [rsp + 0x58]
inc edi
add rbx, 0x20
cmp edi, dword [rax + 0x28]
jl 0x1400426b3
mov r14d, dword [rbp - 0x68]
xor ecx, ecx
jmp 0x1400426f0
mov r13d, ecx
mov rax, qword [rsp + 0x58]
mov edi, ecx
cmp dword [rax + 0x28], 0
jle 0x140042730
mov rbx, rcx
mov rcx, qword [rax + 0x20]
mov r8d, r12d
mov edx, r14d
mov rcx, qword [rcx + rbx + 8]
call fcn.140027fe0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x1400469ea
mov rax, qword [rsp + 0x58]
inc edi
add rbx, 0x20
cmp edi, dword [rax + 0x28]
jl 0x140042700
mov rdi, qword [rsp + 0x58]
test r13d, r13d
je 0x14004276a
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x14004275e
mov eax, dword [rcx + 0xc8]
and eax, 0xfffffffd
or eax, 1
mov dword [rcx + 0xc8], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x140042743
mov rcx, rdi
call fcn.1400678a0
or dword [rdi + 0x2c], 1
mov r13d, dword [rsp + 0x54]
test r13d, r13d
jne 0x1400465ea
mov ebx, dword [rbp + 0x40]
mov rcx, qword [rdi + 0x2e0]
cmp rcx, rsi
je 0x1400427b5
nop word [rax + rax]
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, rdi
mov qword [rdi + 0x2e0], rax
call fcn.140006ed0
dec dword [r15]
mov rcx, qword [rdi + 0x2e0]
cmp rcx, rsi
jne 0x140042790
cmp r14d, 1
jne 0x1400427da
mov rax, qword [rsi + 0x18]
mov rdx, rsi
mov rcx, rdi
mov qword [rdi + 0x2e0], rax
call fcn.140006ed0
test ebx, ebx
jne 0x140042817
dec dword [r15]
jmp 0x1400427fa
mov rax, qword [rsi + 8]
mov qword [rdi + 0x2f8], rax
mov rax, qword [rsi + 0x10]
mov qword [rdi + 0x300], rax
test ebx, ebx
je 0x1400427fa
cmp r14d, 2
jne 0x140042817
mov r8d, r12d
mov edx, r14d
mov rcx, rdi
call fcn.1400af000
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ea
mov r15, qword [rsp + 0x78]
cmp byte [r15 + 0xc7], 3
jne 0x140041cee
mov r13d, 0x65
mov rsi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x68]
mov r12d, 1
mov r14, qword [rbp - 0x78]
cmp r14, rbx
jb 0x140046b3d
mov rdx, qword [rdi + 0x210]
test rdx, rdx
je 0x140046b3d
mov eax, dword [rdi + 0x220]
mov rcx, qword [rdi + 0x218]
add rbx, rax
call rdx
test eax, eax
je 0x140042844
mov rbx, 0xffffffffffffffff
lea r13d, [rbx + 0xa]
lea r14d, [rbx + 0xc]
jmp 0x140046605
mov rdi, qword [rsp + 0x58]
jmp 0x14004281c
mov rcx, qword [rsp + 0x48]
mov dword [rbp + 0x40], r8d
mov edx, dword [rcx + 8]
test edx, edx
je 0x1400428b5
mov rax, qword [rdi + 0x30]
movabs r8, 0x200100000
test r8, rax
jne 0x140046512
movsxd r14, dword [rcx + 4]
shl r14, 5
add r14, qword [rdi + 0x20]
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x140042991
lea r8, [rbp + 0x40]
mov rcx, rsi
call fcn.1400269f0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140046533
mov r12, qword [rsp + 0x48]
lea rbx, [r15 + 0xc8]
test byte [rbx], 0x20
mov rdi, rbx
mov r15, qword [rsp + 0x58]
je 0x1400429a9
cmp dword [r12 + 8], eax
je 0x1400429a9
cmp byte [r15 + 0x65], al
je 0x140042925
cmp dword [r15 + 0xdc], 1
jle 0x1400429a9
mov rdi, qword [rsp + 0x78]
mov r8d, dword [rdi + 0x40]
test r8d, r8d
jne 0x14004294c
inc dword [r15 + 0x2f4]
mov r8d, dword [r15 + 0x2f4]
add r8d, dword [r15 + 0x2f0]
mov dword [rdi + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, r15
call fcn.1400af000
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140042976
mov edx, dword [rdi + 0x40]
mov rcx, rsi
call fcn.140027f70
mov r13d, eax
mov dword [rsp + 0x54], eax
mov rax, qword [r15 + 0x2f8]
mov qword [rdi + 0x58], rax
mov rax, qword [r15 + 0x300]
mov qword [rdi + 0x60], rax
mov rdi, rbx
jmp 0x1400429a0
lea rdi, [r15 + 0xc8]
mov r12, rcx
mov r15, qword [rsp + 0x58]
test r13d, r13d
jne 0x1400465e5
cmp word [r12 + 2], 0
je 0x140040d66
mov eax, dword [r12 + 0xc]
mov rbx, rdi
cmp dword [rbp + 0x40], eax
jne 0x14004657d
mov rcx, qword [r14 + 0x18]
mov eax, dword [r12 + 0x10]
cmp dword [rcx + 4], eax
je 0x140040d66
mov rsi, qword [rsp + 0x78]
lea rbx, [rsi + 0xc8]
jmp 0x140046582
movsxd rax, dword [r12 + 4]
lea r8, [rbp + 0xbc]
mov rcx, qword [rdi + 0x20]
mov edx, dword [r12 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140030eb0
mov rdx, r12
mov rcx, r15
call fcn.14003fc20
movsxd rcx, dword [rbp + 0xbc]
xor r8d, r8d
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov qword [rax], rcx
jmp 0x140040593
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [rdi + 0x20]
mov rcx, qword [rbx + 8]
call fcn.140030f40
mov r12, qword [rsp + 0x48]
mov r13d, eax
mov dword [rsp + 0x54], eax
mov eax, dword [r12 + 8]
cmp eax, 1
jne 0x140042a97
movzx eax, word [r12 + 2]
mov ecx, dword [r12 + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
mov rcx, rdi
or dword [rdi + 0x2c], 1
mov edx, dword [r12 + 4]
call fcn.14007c690
jmp 0x140042aa9
cmp eax, 2
jne 0x140042aa9
mov rcx, qword [rbx + 0x18]
movzx eax, byte [r12 + 0xc]
mov byte [rcx + 0x70], al
cmp dword [r12 + 4], 1
jne 0x140042ac3
xor edx, edx
mov rcx, rdi
call fcn.14003b520
and dword [r15 + 0xc8], 0xfffffffc
test r13d, r13d
jne 0x14004648b
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
movsxd rcx, dword [r12 + 4]
mov rax, qword [r15 + 0x78]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x140042b0e
mov eax, dword [r12 + 8]
cmp dword [rdi + 0x44], eax
jne 0x140042b0e
mov rcx, qword [rdi + 0x30]
call fcn.140022ef0
jmp 0x140042c2a
mov rdi, qword [rsp + 0x58]
mov eax, dword [r15 + 0xc8]
and al, 3
cmp al, 1
je 0x14004661a
mov rax, qword [rsp + 0x48]
mov edi, r8d
mov r14, r8
mov r8, qword [rsp + 0x58]
movsxd r12, dword [rax + 0xc]
mov r15d, dword [rax + 8]
mov rax, r12
shl rax, 5
add rax, qword [r8 + 0x20]
mov r8, qword [rsp + 0x48]
mov r13, qword [rax + 8]
cmp bl, 0x71
jne 0x140042b7d
mov rax, qword [rax + 0x18]
movzx esi, word [r8 + 2]
and esi, 8
or esi, 4
movzx ecx, byte [rax + 0x70]
mov rax, qword [rsp + 0x78]
cmp cl, byte [rax + 0xc5]
jae 0x140042b83
mov byte [rax + 0xc5], cl
jmp 0x140042b83
xor r9d, r9d
mov esi, r9d
test byte [r8 + 2], 0x10
je 0x140042ba1
imul rbx, r15, 0x38
add rbx, r11
mov rcx, rbx
call fcn.140034480
mov r8, qword [rsp + 0x48]
mov r15d, dword [rbx]
movzx eax, byte [r8 + 1]
cmp al, 0xf8
jne 0x140042bb5
mov r14, qword [r8 + 0x10]
movzx edi, word [r14 + 8]
jmp 0x140042bbd
cmp al, 0xfd
jne 0x140042bbd
mov edi, dword [r8 + 0x10]
mov rbx, qword [rsp + 0x48]
xor r9d, r9d
mov rcx, qword [rsp + 0x78]
mov r8d, edi
mov edx, dword [rbx + 4]
call fcn.14003f710
mov rdi, rax
test rax, rax
je 0x1400469a5
mov rcx, qword [rax + 0x30]
mov r9, r14
or dword [rax + 8], 4
mov r8d, esi
mov qword [rsp + 0x20], rcx
mov edx, r15d
mov rcx, r13
mov byte [rax + 1], r12b
mov byte [rax + 2], 1
mov dword [rax + 0x44], r15d
call fcn.1400281c0
mov r15, qword [rsp + 0x78]
mov r13d, eax
mov rsi, qword [rsp + 0x70]
mov qword [rdi + 0x38], r14
cmp byte [rbx + 1], 0xf8
mov dword [rsp + 0x54], eax
setne al
mov byte [rdi + 4], al
mov rax, qword [rsp + 0x48]
mov rcx, qword [rdi + 0x30]
movzx edx, word [rax + 2]
and edx, 3
call fcn.140023300
mov rdi, qword [rsp + 0x58]
test r13d, r13d
jne 0x1400465ef
jmp 0x140040900
mov r13, qword [rsp + 0x48]
xor r9d, r9d
mov rax, qword [r15 + 0x78]
movsxd rcx, dword [r13 + 8]
mov edx, dword [r13 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, r15
movsx r8d, word [rbx + 0x48]
call fcn.14003f710
mov r10, rax
test rax, rax
je 0x1400469af
mov edx, dword [rax + 8]
mov r8d, 4
mov byte [rax + 2], 1
or edx, 1
mov dword [rax + 8], edx
mov rcx, qword [rbx + 0x38]
mov qword [rax + 0x38], rcx
mov ecx, edx
movzx eax, byte [rbx + 4]
mov byte [r10 + 4], al
mov eax, dword [rbx + 0x44]
mov dword [r10 + 0x44], eax
xor ecx, dword [rbx + 8]
and ecx, 4
xor ecx, edx
mov dword [r10 + 8], ecx
or ecx, 8
mov rax, qword [rbx + 0x10]
mov qword [r10 + 0x10], rax
mov dword [r10 + 8], ecx
or dword [rbx + 8], 8
mov rax, qword [r10 + 0x30]
mov r9, qword [r10 + 0x38]
mov edx, dword [r10 + 0x44]
mov rcx, qword [r10 + 0x10]
mov qword [rsp + 0x20], rax
call fcn.1400281c0
mov r13d, eax
mov dword [rsp + 0x54], eax
jmp 0x140040900
mov r13, qword [rsp + 0x48]
movsxd rax, dword [r13 + 0xc]
test eax, eax
jle 0x140042d1e
imul rcx, rax, 0x38
mov dword [rcx + r11 + 0x10], r8d
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x140119335]
mov qword [rcx + r11 + 8], rax
movsxd rdx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x140042d6e
test byte [rbx + 8], 8
jne 0x140042d6e
movsx eax, word [rbx + 0x48]
cmp dword [r13 + 8], eax
jg 0x140042d6e
mov edx, dword [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
mov qword [rbx + 0x18], r8
mov dword [rbx + 0x20], r8d
xor r8d, r8d
call fcn.1400308e0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
mov byte [rbx + 2], 1
jmp 0x140040900
mov r8d, dword [r13 + 8]
xor r9d, r9d
mov rcx, r15
call fcn.14003f710
mov rbx, rax
test rax, rax
je 0x1400469af
or dword [rax + 8], 1
lea r9, [rax + 0x10]
movzx ecx, word [r13 + 2]
xor edx, edx
mov rax, qword [rsp + 0x58]
or ecx, 5
mov dword [rsp + 0x28], 0x41e
mov r8, rax
mov dword [rsp + 0x20], ecx
mov rcx, qword [rax]
call fcn.1400250a0
mov r13d, eax
mov r12d, 1
test eax, eax
jne 0x1400425e8
mov rcx, qword [rbx + 0x10]
xor r8d, r8d
mov edx, r12d
call fcn.1400269f0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140042e6f
mov rax, qword [rsp + 0x48]
mov rcx, qword [rbx + 0x10]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x38], r14
test r14, r14
je 0x140042e43
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x44]
or r8d, 2
call fcn.1400305a0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140042e3d
mov rax, qword [rbx + 0x30]
lea r8d, [r12 + 3]
mov edx, dword [rbx + 0x44]
mov r9, r14
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.1400281c0
mov r13d, eax
mov dword [rsp + 0x54], eax
mov byte [rbx + 4], 0
jmp 0x140042e6a
mov rax, qword [rbx + 0x30]
xor r9d, r9d
mov edx, r12d
mov dword [rbx + 0x44], r12d
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.1400281c0
mov r13d, eax
mov dword [rsp + 0x54], eax
mov byte [rbx + 4], r12b
mov rsi, qword [rsp + 0x70]
mov rax, qword [rsp + 0x48]
xor r9d, r9d
mov ecx, r9d
cmp word [rax + 2], 8
mov eax, 4
cmovne ecx, eax
mov eax, dword [rbx + 8]
and eax, 0xfffffffb
or ecx, eax
mov dword [rbx + 8], ecx
test r13d, r13d
jne 0x140046622
mov rdi, qword [rsp + 0x58]
mov byte [rbx + 2], 1
jmp 0x140040900
mov r13, qword [rsp + 0x48]
mov r9b, 1
mov rcx, r15
mov r8d, dword [r13 + 8]
mov edx, dword [r13 + 4]
call fcn.14003f710
test rax, rax
je 0x1400469af
mov rcx, qword [r13 + 0x10]
mov r8, rax
mov qword [rax + 0x38], rcx
mov rcx, rdi
mov edx, dword [r13 + 0xc]
call fcn.140048600
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
jmp 0x140040900
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
mov edx, 1
test rcx, rcx
je 0x140045aab
jmp case.0x140040175.89
mov rax, qword [rsp + 0x48]
mov r9b, 3
mov rcx, r15
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.14003f710
test rax, rax
je 0x1400469af
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov byte [rax + 2], 1
mov ecx, dword [r12 + 8]
mov dword [rax + 0x24], ecx
lea rcx, [0x140140a6c]
mov qword [rax + 0x30], rcx
mov byte [rax + 4], 1
jmp 0x140040593
mov rdx, qword [r15 + 0x78]
mov rcx, r15
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.140037c60
mov rax, qword [rsp + 0x48]
xor r8d, r8d
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov r10d, dword [rsp + 0x50]
mov qword [rax + rcx*8], r8
jmp 0x140040593
mov rax, qword [r15 + 0x78]
mov r12d, r8d
mov rdi, qword [rsp + 0x48]
movsxd rcx, dword [rdi + 4]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi + 4], 0
mov word [rsi + 2], 0
mov dword [rsi + 0x20], r8d
je 0x1400430f9
movsxd rax, dword [rdi + 0xc]
imul rdi, rax, 0x38
add rdi, r11
movzx r14d, word [rdi + 0x14]
movzx eax, r14b
and al, 0x2e
cmp al, 2
jne 0x140043015
xor edx, edx
mov rcx, rdi
call fcn.14003f840
mov rcx, rdi
call fcn.140034360
movzx ecx, word [rdi + 0x14]
mov r15, rax
mov word [rdi + 0x14], r14w
test cl, 0x24
jne 0x1400430c8
test cl, 8
jne 0x1400430a6
test cl, 1
jne 0x140045a99
cmp ebx, 0x17
jae 0x140045a99
mov rcx, qword [rsi + 0x30]
lea rdx, [rbp + 0x44]
call fcn.140029230
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465e5
xor r8d, r8d
cmp dword [rbp + 0x44], r8d
jne 0x140045a6c
mov rdi, qword [rsp + 0x58]
mov edx, 1
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
test r12d, r12d
je 0x140043091
add qword [rsp + 0x48], 0x18
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
jmp case.0x140040175.89
movsd xmm1, qword [rdi]
mov rcx, r15
call fcn.140039f10
test eax, eax
jle 0x1400430bf
test bl, 1
jne 0x1400430c8
dec ebx
jmp 0x1400430c8
jns 0x1400430c8
test bl, 1
je 0x1400430c8
inc ebx
mov rcx, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
lea r9, [rbp + 0x44]
xor r8d, r8d
mov rdx, r15
call fcn.140029250
mov qword [rsi + 0x50], r15
mov r13d, eax
mov r15, qword [rsp + 0x78]
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x140046423
jmp 0x140043175
mov rax, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
mov rcx, qword [rsp + 0x48]
lea r8, [rbp + 0x44]
movzx r14d, byte [rax + 3]
mov rax, qword [rsi + 0x38]
and r14b, 2
mov qword [rbp + 0x58], rax
movzx eax, word [rcx + 0x10]
setne r12b
mov word [rbp + 0x74], ax
lea eax, [rbx - 1]
test al, 1
mov byte [rbp + 0x7a], 0
mov eax, edx
mov edx, 0xffffffff
cmovne eax, edx
lea rdx, [rbp + 0x58]
mov byte [rbp + 0x76], al
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x60], rcx
mov rcx, qword [rdi]
call fcn.1400294d0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140046423
test r14b, r14b
je 0x140043175
cmp byte [rbp + 0x7a], al
je 0x140043065
mov eax, dword [rbp + 0x44]
cmp ebx, 0x17
jl 0x1400431e4
test eax, eax
js 0x140043194
jne 0x140043188
cmp ebx, 0x18
je 0x140043194
xor r8d, r8d
mov dword [rbp + 0x44], r8d
jmp 0x140043072
xor r9d, r9d
xor edx, edx
mov dword [rbp + 0x44], r9d
mov rcx, qword [rdi]
call fcn.140029e80
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
je 0x140043065
mov rdi, qword [rsp + 0x58]
cmp eax, 0x65
jne 0x1400465ef
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov rsi, qword [rsp + 0x70]
mov edx, 1
mov r13d, r8d
mov dword [rsp + 0x54], r8d
mov dword [rbp + 0x44], edx
jmp 0x140040f86
test eax, eax
jg 0x1400431ff
jne 0x1400431ef
cmp ebx, 0x15
je 0x1400431ff
mov rcx, qword [rdi]
call fcn.140029b50
mov dword [rbp + 0x44], eax
jmp 0x140043065
xor r9d, r9d
xor edx, edx
mov dword [rbp + 0x44], r9d
mov rcx, qword [rdi]
call fcn.14002a170
jmp 0x1400431a5
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0x1c]
mov rax, qword [r15 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.140028460
mov r12, qword [rsp + 0x48]
test eax, eax
je 0x140045fd2
mov rax, qword [rbx + 0x38]
mov rcx, r12
mov qword [rbp + 0x58], rax
mov byte [rbp + 0x76], 0
movzx eax, word [rcx + 0x28]
mov edi, dword [rcx + 4]
mov word [rbp + 0x74], ax
movsxd rax, dword [rcx + 0x24]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
xor r14d, r14d
mov qword [rbp + 0x60], rcx
mov dword [rbp + 0xa8], r14d
nop
mov rcx, qword [rsp + 0x58]
lea r9, [rbp + 0xa8]
lea r8, [rbp + 0x58]
mov rdx, rbx
call fcn.14003b3e0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140046486
mov eax, dword [rbp + 0xa8]
test eax, eax
jle 0x1400432ab
cmp word [r12 + 2], r14w
je 0x1400432fa
test eax, eax
jns 0x140045aa3
test edi, edi
jle 0x140046007
mov rcx, qword [rbx + 0x30]
xor edx, edx
dec edi
mov dword [rbx + 0x20], r14d
call fcn.140029e80
mov r13d, eax
test eax, eax
je 0x140043270
cmp eax, 0x65
jne 0x140046486
mov rdi, qword [rsp + 0x58]
xor r8d, r8d
add qword [rsp + 0x48], 0x18
mov r13d, r8d
mov r12, qword [rsp + 0x48]
mov dword [rsp + 0x54], r8d
jmp 0x140040f81
xor r8d, r8d
add qword [rsp + 0x48], 0x18
mov r12, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x58]
jmp 0x140040f81
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
movzx ecx, word [rdx + 0xc]
mov eax, dword [rax + 8]
cmp ecx, eax
jge 0x140043341
mov word [rdx + 0xc], ax
mov r12, qword [rsp + 0x48]
jmp 0x140040593
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
cmp ecx, eax
lea rcx, [0x140000000]
jle 0x14004186d
mov word [rdx + 0xc], ax
mov edx, 1
mov r15, qword [rsp + 0x78]
add r12, 0x18
mov r14, qword [rbp - 0x78]
jmp 0x140040144
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je case.0x140040175.9
cmp byte [rdx + 2], 0
je 0x140043337
jmp case.0x140040175.9
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r12 + 0x10]
jge case.0x140040175.89
mov r13, qword [rsp + 0x48]
mov rax, qword [r15 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r13 + 0x10]
add rcx, r11
mov word [rbp + 0x74], ax
mov qword [rbp + 0x60], rcx
test ax, ax
je 0x140043419
mov rax, qword [rbx + 0x38]
lea rsi, [rbx + 0x24]
mov qword [rbp + 0x58], rax
lea rdx, [rbp + 0x58]
mov byte [rbp + 0x76], 0
mov r8, rsi
mov rcx, qword [rbx + 0x30]
call fcn.1400294d0
mov r13d, eax
mov dword [rsp + 0x54], eax
jmp 0x14004348b
mov eax, 0x400
test word [rcx + 0x14], ax
je 0x140043431
call fcn.140033fd0
test eax, eax
jne 0x1400469af
mov rcx, qword [rbx + 0x38]
call fcn.1400397b0
mov rdi, rax
test rax, rax
je 0x1400469aa
mov rdx, qword [rbp + 0x60]
mov r9, rax
mov rcx, qword [rbx + 0x38]
mov r8, qword [rdx + 8]
mov edx, dword [rdx + 0x10]
call fcn.140039810
mov byte [rdi + 0x1e], 0
lea rsi, [rbx + 0x24]
mov rcx, qword [rbx + 0x30]
mov r8, rsi
mov rdx, rdi
call fcn.1400294d0
mov rdx, rdi
mov dword [rsp + 0x54], eax
mov rdi, qword [rsp + 0x58]
mov r13d, eax
mov rcx, rdi
call fcn.140006ed0
test r13d, r13d
jne 0x1400465ef
mov ecx, dword [rsi]
test ecx, ecx
mov byte [rbx + 3], r13b
setne al
xor r8d, r8d
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x48]
mov dword [rbx + 0x20], r8d
movzx eax, byte [rax]
cmp al, 0x1d
jne 0x1400434c1
mov rsi, qword [rsp + 0x70]
test ecx, ecx
jmp 0x14004177d
test ecx, ecx
jne 0x140045a6c
cmp al, 0x1b
jne 0x1400434ff
movzx edx, word [rbp + 0x74]
mov rcx, r8
test rdx, rdx
je 0x140046039
mov rax, qword [rbp + 0x60]
add rax, 0x14
test byte [rax], 1
jne 0x140045a6c
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x1400434e5
jmp 0x14004063c
mov r12, qword [rsp + 0x48]
mov edx, 1
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
cmp al, 0x1a
jne 0x140040846
movzx r9d, byte [rsp + 0x40]
mov rax, r12
mov rsi, qword [rsp + 0x70]
movzx eax, word [rax + 0x10]
mov word [rbx + 0xc], ax
jmp case.0x140040175.89
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
jne case.0x140040175.31
movups xmm0, xmmword [rcx]
movzx r8d, r9b
mov dl, 0x43
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp + 0x58], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rbp + 0x68], xmm1
movsd xmm1, qword [rcx + 0x30]
lea rcx, [rbp + 0x58]
movups xmmword [rbp + 0x78], xmm0
movsd qword [rbp + 0x88], xmm1
call fcn.14003f9e0
xor r8d, r8d
test byte [rbp + 0x6c], 4
je 0x140045a85
mov rdi, qword [rbp + 0x58]
jmp 0x1400435a3
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r11]
mov rax, qword [rsp + 0x48]
lea r9, [rbp + 0x94]
mov rdx, rdi
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
mov dword [rbp + 0x94], r8d
xor r8d, r8d
call fcn.140029250
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov dword [rbx + 0x20], r8d
mov r13d, eax
mov qword [rbx + 0x50], rdi
mov word [rbx + 2], 0
mov dword [rsp + 0x54], eax
mov eax, dword [rbp + 0x94]
mov dword [rbx + 0x24], eax
cmp dword [rbp + 0x94], r8d
je 0x14004361f
cmp dword [r12 + 8], r8d
jne 0x140045aa6
mov ecx, 0x1860c
call fcn.1400d6e30
mov r13d, eax
mov dword [rsp + 0x54], eax
xor r8d, r8d
mov rdi, qword [rsp + 0x58]
test r13d, r13d
jne 0x1400465ef
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
mov rbx, qword [rsp + 0x48]
mov rcx, r15
mov rdx, rbx
call fcn.14003fc20
mov rcx, qword [r15 + 0x78]
mov r12, rbx
movsxd rdx, dword [rbx + 4]
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov rdx, qword [rcx + rdx*8]
mov rcx, qword [rdx + 0x18]
mov qword [rax], rcx
movsxd rcx, dword [rbx + 4]
mov rax, qword [r15 + 0x78]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
xor r8d, r8d
jmp 0x140040593
mov rdi, qword [rsp + 0x48]
mov rcx, r15
mov rdx, rdi
mov qword [rbp - 0x68], r8
mov dword [rbp + 0x40], r8d
call fcn.14003fc20
movsxd rdx, dword [rdi + 4]
mov rsi, rax
mov rcx, qword [r15 + 0x78]
mov rdi, qword [rcx + rdx*8]
test byte [rdi + 8], 2
jne 0x14004371b
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x40]
call fcn.140029230
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140046423
cmp dword [rbp + 0x40], eax
je 0x1400436ea
mov r12d, 1
mov qword [rbp - 0x68], r12
jmp 0x140043721
mov rcx, qword [rdi + 0x30]
call fcn.140028470
movabs r14, 0x7fffffffffffffff
mov qword [rbp - 0x68], rax
mov r12d, 1
cmp rax, r14
jl 0x140043712
or dword [rdi + 8], 2
jmp 0x14004372b
inc rax
mov qword [rbp - 0x68], rax
jmp 0x14004372b
mov r12d, 1
movabs r14, 0x7fffffffffffffff
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 0xc]
test edx, edx
je 0x1400437b0
mov rcx, qword [r15 + 0x108]
test rcx, rcx
je 0x140043766
mov rax, qword [rcx + 8]
test rax, rax
je 0x14004375c
nop dword [rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140043750
imul rbx, rdx, 0x38
add rbx, qword [rcx + 0x18]
jmp 0x14004376f
imul rbx, rdx, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.140034360
movzx ecx, word [rbx + 0x14]
mov edx, 0xf244
and cx, dx
mov qword [rbx], rax
or cx, 4
mov word [rbx + 0x14], cx
cmp rax, r14
je 0x140043811
test byte [rdi + 8], 2
jne 0x140043811
lea rcx, [rax + 1]
mov rax, qword [rbp - 0x68]
cmp rax, rcx
jge 0x1400437ad
mov rax, rcx
mov qword [rbp - 0x68], rcx
mov qword [rbx], rax
test byte [rdi + 8], 2
je 0x140043826
xor r9d, r9d
mov ebx, r9d
nop dword [rax]
lea rdx, [rbp - 0x68]
mov ecx, 8
call fcn.14000a350
mov rdx, qword [rbp - 0x68]
lea r9, [rbp + 0x40]
movabs rax, 0x3fffffffffffffff
xor r8d, r8d
and rdx, rax
inc rdx
mov qword [rbp - 0x68], rdx
mov rcx, qword [rdi + 0x30]
call fcn.140029250
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400425e8
cmp dword [rbp + 0x40], eax
jne 0x140043826
inc ebx
cmp ebx, 0x64
jl 0x1400437c0
mov rdi, qword [rsp + 0x58]
mov r13d, 0xd
mov rsi, qword [rsp + 0x48]
jmp 0x1400465fa
mov byte [rdi + 3], 0
xor r8d, r8d
mov dword [rdi + 0x20], r8d
mov rax, qword [rbp - 0x68]
mov qword [rsi], rax
jmp 0x140040637
mov r13, qword [rsp + 0x48]
movsxd rax, dword [r13 + 8]
movsxd rcx, dword [r13 + 4]
imul rdx, rax, 0x38
mov rax, qword [r15 + 0x78]
add rdx, r11
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
cmp byte [r13 + 1], 0xfb
mov r8, qword [rcx + r11]
mov qword [rbp + 0x60], r8
jne 0x140043893
cmp qword [rdi + 0x140], 0
je 0x140043893
mov rax, qword [rdi + 0x20]
movsx rcx, byte [rbx + 1]
mov rdi, qword [r13 + 0x10]
shl rcx, 5
mov rsi, qword [rcx + rax]
xor ecx, ecx
jmp 0x140043899
xor ecx, ecx
mov edi, ecx
mov esi, ecx
test byte [r13 + 2], 1
je 0x1400438b4
inc qword [r15 + 0x38]
test byte [r13 + 2], 0x20
je 0x1400438b4
mov rax, qword [rsp + 0x58]
mov qword [rax + 0x38], r8
mov rax, qword [rdx + 8]
movzx r8d, word [r13 + 2]
mov qword [rbp + 0x68], rax
mov eax, dword [rdx + 0x10]
mov dword [rbp + 0x7c], eax
test r8b, 0x10
je 0x1400438d3
mov r9d, dword [rbx + 0x24]
jmp 0x1400438d6
mov r9d, ecx
mov eax, 0x400
test word [rdx + 0x14], ax
je 0x1400438eb
mov eax, dword [rdx]
mov dword [rbp + 0x80], eax
jmp 0x1400438f1
mov dword [rbp + 0x80], ecx
mov qword [rbp + 0x58], rcx
lea rdx, [rbp + 0x58]
mov rcx, qword [rbx + 0x30]
and r8d, 0x8a
call fcn.14002ed80
inc dword [rbp - 0x7c]
xor r8d, r8d
mov dword [rsp + 0x54], eax
mov r13d, eax
mov byte [rbx + 3], 0
mov dword [rbx + 0x20], r8d
test eax, eax
jne 0x140046423
test rdi, rdi
je 0x140046034
mov rax, qword [rsp + 0x48]
mov edx, 0x12
mov r9, qword [rdi]
mov r8, rsi
mov rdi, qword [rsp + 0x58]
test byte [rax + 2], 4
mov eax, 0x17
mov rcx, qword [rdi + 0x138]
cmovne edx, eax
mov rax, qword [rbp + 0x60]
mov qword [rsp + 0x20], rax
call qword [rdi + 0x140]
mov r12, qword [rsp + 0x48]
jmp 0x140040d6b
mov r13, qword [rsp + 0x48]
mov rcx, qword [r15 + 0x78]
movsxd rax, dword [r13 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r13 + 8]
mov rdx, qword [rcx + rax*8]
movsxd rax, dword [r13 + 0xc]
test eax, eax
je 0x140043999
imul rcx, rax, 0x38
mov r8, qword [rcx + r11]
mov rdx, qword [rdx + 0x30]
mov rcx, qword [r9 + 0x30]
call fcn.14002f3d0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
jmp 0x140040900
mov r13, qword [rsp + 0x48]
add rdi, 0x140
mov r12, qword [rsp + 0x78]
cmp byte [r13 + 1], 0xfb
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov r15d, dword [r13 + 8]
mov rbx, qword [rax + rcx*8]
jne 0x140043a1f
cmp qword [rdi], 0
je 0x140043a1f
mov rax, qword [rsp + 0x58]
movsx rcx, byte [rbx + 1]
mov rsi, qword [r13 + 0x10]
shl rcx, 5
test byte [r13 + 2], 2
mov rax, qword [rax + 0x20]
mov r14, qword [rcx + rax]
je 0x140043a25
cmp byte [rbx + 4], 0
je 0x140043a25
mov rcx, qword [rbx + 0x30]
call fcn.140028470
mov qword [rbx + 0x50], rax
jmp 0x140043a25
mov r14, r8
mov rsi, r8
movzx edx, byte [r13 + 2]
mov rcx, qword [rbx + 0x30]
call fcn.14002f950
inc dword [rbp - 0x7c]
xor r8d, r8d
mov dword [rsp + 0x54], eax
mov r13d, eax
mov qword [rbx + 0x20], r8
test eax, eax
jne 0x140046a10
test r15b, 1
je 0x140046034
inc qword [r12 + 0x38]
mov r10, qword [rdi]
test r10, r10
je 0x140046034
test rsi, rsi
je 0x140046034
test byte [rsi + 0x30], 0x80
mov rdi, qword [rsp + 0x58]
jne 0x140046039
mov rax, qword [rbx + 0x50]
lea edx, [r13 + 9]
mov r9, qword [rsi]
mov r8, r14
mov rcx, qword [rdi + 0x138]
mov qword [rsp + 0x20], rax
call r10
mov r12, qword [rsp + 0x48]
jmp 0x140040d6b
mov rax, qword [r15 + 0x38]
add qword [rdi + 0x80], rax
mov qword [rdi + 0x78], rax
mov qword [r15 + 0x38], r8
jmp case.0x140040175.89
mov r13, qword [rsp + 0x48]
lea r9, [rbp + 0xac]
mov rax, qword [r15 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rcx, qword [rax + rcx*8]
movsxd rax, dword [r13 + 0xc]
imul rdx, rax, 0x38
mov dword [rbp + 0xac], r8d
mov r8d, dword [r13 + 0x10]
add rdx, r11
call fcn.14004b000
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
mov r12, qword [rsp + 0x48]
xor r8d, r8d
cmp dword [rbp + 0xac], r8d
jmp 0x140041739
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r15 + 0x78]
add rdx, r11
mov rcx, qword [rax + rcx*8]
call fcn.14004af30
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
mov rax, qword [rsp + 0x48]
xor r8d, r8d
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r15 + 0x78]
mov r10d, dword [rsp + 0x50]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x20], r8d
jmp 0x140040593
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r15 + 0x68]
test word [rbx + 0x14], ax
je 0x140043b9f
mov rcx, rbx
call fcn.14003fbf0
mov rbx, rax
jmp 0x140043ba5
mov word [rbx + 0x14], 4
movsxd rcx, dword [rdi + 4]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + 0x30]
mov rcx, rdi
call fcn.140028420
mov rax, qword [rsp + 0x58]
mov edx, dword [rdi + 0x40]
cmp edx, dword [rax + 0x88]
ja 0x14004664d
mov r8, rbx
mov rcx, rdi
call fcn.140035070
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140046423
mov r12, qword [rsp + 0x48]
cmp dword [r12 + 0xc], eax
jne 0x140046007
mov eax, 0x4000
test word [rbx + 0x14], ax
je 0x140046007
mov rcx, rbx
call fcn.140033f70
mov rdi, qword [rsp + 0x58]
test eax, eax
jne 0x1400469af
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [r15 + 0x68]
test word [rdi + 0x14], ax
je 0x140043c67
mov rcx, rdi
call fcn.14003fbf0
xor r8d, r8d
mov rdi, rax
lea edx, [r8 + 1]
jmp 0x140043c6d
mov word [rdi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov rax, qword [r15 + 0x78]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x140043ca2
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [rdi + 0x14], dx
mov rdi, qword [rsp + 0x58]
jmp case.0x140040175.89
cmp byte [rbx + 3], 0
je 0x140043cc0
mov rax, qword [rbx + 0x50]
mov qword [rbp + 0xc8], rax
mov qword [rdi], rax
mov rdi, qword [rsp + 0x58]
jmp 0x140040900
cmp byte [rbx], 2
jne 0x140043d08
mov rcx, qword [rbx + 0x30]
lea rdx, [rbp + 0xc8]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r15
mov r13d, eax
mov dword [rsp + 0x54], eax
call fcn.14003b720
test r13d, r13d
jne 0x140046423
mov rax, qword [rbp + 0xc8]
mov qword [rdi], rax
mov rdi, qword [rsp + 0x58]
jmp 0x140040900
mov rcx, rbx
call fcn.140039500
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140046423
cmp byte [rbx + 2], al
je 0x140043d4f
mov r12, qword [rsp + 0x48]
mov edx, 1
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [rdi + 0x14], dx
mov rdi, qword [rsp + 0x58]
jmp case.0x140040175.89
mov rcx, qword [rbx + 0x30]
call fcn.140028470
mov qword [rbp + 0xc8], rax
mov qword [rdi], rax
mov rdi, qword [rsp + 0x58]
jmp 0x140040900
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rax, qword [rax + rdx*8]
test rax, rax
jne 0x140043db4
mov r9b, 3
lea r8d, [rax + 1]
mov rcx, r15
call fcn.14003f710
test rax, rax
je 0x1400469af
xor r8d, r8d
mov byte [rax + 4], 1
or dword [rax + 8], 8
lea rcx, [0x140140a6c]
mov dword [rax + 0x24], r8d
mov qword [rax + 0x30], rcx
cmp byte [rax], 0
mov byte [rax + 2], 1
mov dword [rax + 0x20], r8d
jne 0x140046039
mov rcx, qword [rax + 0x30]
call fcn.140022ef0
jmp 0x140040900
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rsi, qword [rdi + 0x30]
mov dword [rbp + 0x90], r8d
cmp bl, 0x89
jne 0x140043e0e
mov rcx, rsi
mov dword [rdi + 0x24], 0xffffffff
call fcn.140028460
xor r8d, r8d
test eax, eax
jne 0x140046034
cmp byte [rsi], 0
jne 0x140043e34
test byte [rsi + 1], 8
je 0x140043e34
mov dword [rbp + 0x90], r8d
mov r13d, r8d
mov word [rdi + 2], 0
mov dword [rdi + 0x20], r8d
mov dword [rsp + 0x54], r8d
jmp 0x140043e68
lea rdx, [rbp + 0x90]
mov rcx, rsi
call fcn.140029170
mov r13d, eax
mov dword [rsp + 0x54], eax
movzx eax, byte [rbp + 0x90]
xor r8d, r8d
mov byte [rdi + 2], al
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], r8d
test r13d, r13d
jne 0x140046423
mov r12, qword [rsp + 0x48]
cmp dword [r12 + 8], 0
jle 0x140046028
cmp dword [rbp + 0x90], 0
mov edx, 1
mov rsi, qword [rsp + 0x70]
jne 0x140045aab
mov rdi, qword [rsp + 0x58]
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x140040175.89
mov rax, qword [rsp + 0x48]
lea rdx, [rbp + 0x98]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x30]
mov rcx, rbx
call fcn.1400290e0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
cmp dword [rbp + 0x98], eax
je 0x140043eee
mov rcx, 0xffffffffffffffff
jmp 0x140043f02
mov rcx, rbx
call fcn.140029b60
mov rcx, rax
call fcn.14000d810
movsx rcx, ax
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
cmp rcx, rax
jl 0x140043f36
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0x10]
cmp rcx, rax
jg 0x140043f36
mov r12, qword [rsp + 0x48]
mov edx, 1
mov dword [rbp + 0x98], edx
xor r8d, r8d
jmp 0x140040f86
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov dword [rbp + 0x98], r8d
jmp 0x140040593
inc dword [r15 + 0xdc]
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rbx, qword [rax + rcx*8]
mov dword [rbp + 0x50], edx
cmp byte [rbx], 1
jne 0x140043f92
lea rdx, [rbp + 0x50]
mov rcx, rbx
call fcn.14004ad70
mov r13d, eax
mov dword [rsp + 0x54], eax
xor r8d, r8d
jmp 0x140043fcf
mov rdi, qword [rbx + 0x30]
mov rcx, rdi
call fcn.140028e40
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140043ff8
xor r9d, r9d
mov rcx, rdi
mov dword [rbp + 0x50], r9d
call fcn.140029080
mov r13d, eax
mov dword [rsp + 0x54], eax
xor r8d, r8d
mov rdi, qword [rsp + 0x58]
mov byte [rbx + 3], 0
mov dword [rbx + 0x20], r8d
test r13d, r13d
jne 0x1400465ef
mov r12, qword [rsp + 0x48]
movzx eax, byte [rbp + 0x50]
mov byte [rbx + 2], al
cmp dword [r12 + 8], r13d
jle 0x14004602d
cmp dword [rbp + 0x50], r13d
jmp 0x140041739
cmp eax, 0x10
jne 0x140043fbf
xor r8d, r8d
mov eax, 1
mov dword [rbp + 0x50], eax
mov r13d, r8d
mov dword [rsp + 0x54], r8d
jmp 0x140043fc2
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, rdi
mov rdx, rbx
call fcn.14004ae40
jmp 0x14004406e
mov r13, qword [rsp + 0x48]
mov rax, qword [r15 + 0x78]
movsxd rcx, dword [r13 + 4]
mov edx, dword [r13 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.14002a170
jmp 0x14004406e
mov r13, qword [rsp + 0x48]
mov rax, qword [r15 + 0x78]
movsxd rcx, dword [r13 + 4]
mov edx, dword [r13 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.140029e80
mov r13d, eax
mov dword [rsp + 0x54], eax
xor r8d, r8d
mov dword [rbx + 0x20], r8d
test eax, eax
jne 0x14004409a
mov rax, qword [rsp + 0x48]
mov byte [rbx + 2], r8b
movzx eax, word [rax + 2]
inc dword [r15 + rax*4 + 0xd4]
jmp case.0x140040175.9
cmp r13d, 0x65
jne 0x1400465ef
mov r13d, r8d
mov dword [rsp + 0x54], r8d
mov byte [rbx + 2], 1
jmp 0x1400449ea
mov r13, qword [rsp + 0x48]
mov rax, qword [r15 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
add rbx, r11
test byte [r13 + 2], 1
je 0x1400440dc
inc qword [r15 + 0x38]
mov eax, 0x400
test word [rbx + 0x14], ax
je 0x140044104
mov rcx, rbx
call fcn.140033fd0
mov r13d, eax
test eax, eax
jne 0x140046423
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movsxd rax, dword [rbx + 0x10]
movzx r8d, word [r13 + 2]
mov qword [rbp + 0x60], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x58], rax
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r13 + 0x10]
add rcx, r11
mov word [rbp + 0x78], ax
mov qword [rbp + 0x70], rcx
test r8b, 0x10
je 0x14004413d
mov r9d, dword [rdi + 0x24]
jmp 0x140044140
xor r9d, r9d
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x58]
and r8d, 0x8a
call fcn.14002ed80
xor r8d, r8d
mov dword [rsp + 0x54], eax
mov dword [rdi + 0x20], r8d
mov r13d, eax
mov rdi, qword [rsp + 0x58]
test eax, eax
jne 0x1400465ef
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
mov rbx, qword [rsp + 0x48]
mov rax, qword [r15 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x1400441c3
mov rcx, rbx
call fcn.140033fd0
mov r13d, eax
test eax, eax
jne 0x140046423
mov rdx, rbx
mov rcx, rdi
call fcn.140049970
mov rdi, qword [rsp + 0x58]
mov r13d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x1400465ef
jmp 0x140040900
mov r13, qword [rsp + 0x48]
lea r8, [rbp + 0xb8]
mov rax, qword [r15 + 0x78]
lea rdx, [rbp + 0x58]
movsxd rcx, dword [r13 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
mov rdi, qword [rbx + 0x30]
mov qword [rbp + 0x58], rax
movzx eax, word [r13 + 0xc]
mov word [rbp + 0x74], ax
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
mov byte [rbp + 0x76], 0
add rcx, r11
mov qword [rbp + 0x60], rcx
mov rcx, rdi
call fcn.1400294d0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140046423
cmp dword [rbp + 0xb8], eax
jne 0x140044289
mov dl, 4
mov rcx, rdi
call fcn.14002f950
mov rdi, qword [rsp + 0x58]
mov r13d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x1400465ef
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov qword [rbx + 0x20], r8
jmp 0x140040593
mov r12, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x58]
cmp word [r12 + 2], 0
je 0x1400442ac
mov rcx, rdi
call fcn.140068150
test eax, eax
je 0x140046667
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov qword [rbx + 0x20], r8
jmp 0x140040593
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x1400442fe
mov rcx, rbx
call fcn.1400394a0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
xor r8d, r8d
jmp 0x140044306
mov r13d, r8d
mov dword [rsp + 0x54], r8d
cmp byte [rbx + 2], 0
jne 0x1400443ae
mov qword [rbp + 0xd0], r8
mov rcx, rdi
mov rdx, qword [rbx + 0x30]
lea r8, [rbp + 0xd0]
call fcn.14003b020
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x8d
jne 0x140044394
movsxd rcx, dword [rax + 0xc]
xor r8d, r8d
mov rax, qword [r15 + 0x78]
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov rdx, qword [rax + rcx*8]
mov r10d, dword [rsp + 0x50]
mov byte [rdx + 2], r13b
mov rax, qword [rbp + 0xd0]
mov qword [rdx + 0x50], rax
mov rax, qword [rsp + 0x48]
mov byte [rdx + 3], 1
mov dword [rdx + 0x20], r8d
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x28], rbx
jmp 0x140040593
mov rdx, rax
mov rcx, r15
call fcn.14003fc20
mov rcx, qword [rbp + 0xd0]
mov qword [rax], rcx
jmp 0x140040900
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
call fcn.140034870
jmp 0x140040900
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x140044e3b
call fcn.140039430
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
jmp 0x140040900
mov rdi, qword [rsp + 0x48]
cmp bl, 0x2a
mov rax, qword [r15 + 0x78]
movsxd rcx, dword [rdi + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x38]
mov qword [rbp + 0x58], rax
movzx eax, word [rdi + 0x10]
mov word [rbp + 0x74], ax
sbb al, al
mov byte [rbp + 0x76], al
movsxd rax, dword [rdi + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x60], rcx
mov rbx, qword [rdx + 0x30]
mov rcx, rbx
call fcn.140028420
mov edi, dword [rbx + 0x40]
lea eax, [rdi - 1]
cmp eax, 0x7ffffffe
ja 0x140046688
mov rdx, qword [rsp + 0x58]
lea rcx, [rbp - 0x10]
xor r8d, r8d
call fcn.140034850
lea r8, [rbp - 0x10]
mov edx, edi
mov rcx, rbx
call fcn.140035070
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140046423
mov rdx, qword [rbp - 8]
lea r8, [rbp + 0x58]
mov ecx, dword [rbp]
xor r9d, r9d
call fcn.14003a190
lea rcx, [rbp - 0x10]
mov ebx, eax
call fcn.140034320
mov r12, qword [rsp + 0x48]
lea ecx, [rbx + 1]
neg ebx
lea edx, [r13 + 1]
test byte [r12], 1
cmovne ebx, ecx
xor r8d, r8d
test ebx, ebx
jg 0x140045aab
mov rdi, qword [rsp + 0x58]
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x140040175.89
mov r13, qword [rsp + 0x48]
mov rcx, r15
mov rdx, r13
call fcn.14003fc20
mov r12d, 1
mov rbx, rax
mov word [rax + 0x14], r12w
mov ecx, dword [rdi + 0xe8]
inc ecx
cmp dword [rdi + 0xdc], ecx
jg 0x1400466cc
movsxd rdi, dword [r13 + 0xc]
lea r8, [rbp + 0x9c]
mov rsi, qword [rsp + 0x58]
xor r9d, r9d
mov edx, dword [r13 + 4]
mov dword [rbp + 0x9c], r9d
mov r9, rdi
shl r9, 5
mov rcx, qword [rsi + 0x20]
mov rcx, qword [r9 + rcx + 8]
call fcn.140030e50
mov r13d, eax
mov dword [rsp + 0x54], eax
mov word [rbx + 0x14], 4
movsxd rax, dword [rbp + 0x9c]
mov qword [rbx], rax
test r13d, r13d
jne 0x140046a03
mov r8d, dword [rbp + 0x9c]
test r8d, r8d
je 0x140046023
mov rax, qword [rsp + 0x48]
mov edx, edi
mov rcx, rsi
mov r9d, dword [rax + 4]
call fcn.14006c820
mov r12, qword [rsp + 0x48]
lea eax, [rdi + 1]
mov byte [rbp - 0x80], al
mov rdi, rsi
jmp 0x140040d6b
mov r13, qword [rsp + 0x48]
mov rcx, qword [rdi + 0x20]
mov qword [rbp + 0x48], r8
lea r8, [rbp + 0x48]
movsxd rax, dword [r13 + 8]
mov edx, dword [r13 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1400308e0
mov r12, qword [rsp + 0x48]
mov r13d, eax
mov r11, qword [rsp + 0x60]
mov dword [rsp + 0x54], eax
cmp dword [r12 + 0xc], 0
je 0x1400445ee
mov rdx, qword [rbp + 0x48]
add qword [r15 + 0x38], rdx
movsxd rax, dword [r12 + 0xc]
test eax, eax
jle 0x1400445ee
imul rcx, rax, 0x38
add qword [rcx + r11], rdx
test r13d, r13d
jne 0x14004648b
movzx r9d, byte [rsp + 0x40]
xor r8d, r8d
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x140044631
mov rdx, qword [rcx + 0x30]
mov rcx, rdi
call fcn.140048b50
jmp 0x140040900
mov rcx, qword [rcx + 0x30]
call fcn.1400309c0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
jmp 0x140040900
mov r13, qword [rsp + 0x48]
mov rcx, r15
mov rdx, r13
call fcn.14003fc20
movsxd rcx, dword [r13 + 4]
lea rdx, [rbp + 0xb0]
mov r8d, dword [r13 + 0xc]
xor r9d, r9d
shl rcx, 5
mov rbx, rax
add rcx, qword [rdi + 0x20]
mov dword [rbp + 0xb0], r9d
mov rcx, qword [rcx + 8]
call fcn.1400305a0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
mov eax, dword [rbp + 0xb0]
mov qword [rbx], rax
jmp 0x140040900
inc byte [rdi + 0x70]
mov rcx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x58]
mov rbx, qword [rdi + 0x200]
movzx edi, byte [rdi + 0x6e]
test byte [rcx + 4], 1
mov esi, dword [r14 + 0x2e8]
mov qword [rbp - 0x60], r8
je 0x1400446dd
mov qword [r14 + 0x200], r8
mov byte [r14 + 0x6e], 0
test byte [rcx + 4], 2
je 0x1400446ed
mov eax, dword [rcx + 8]
mov dword [r14 + 0x2e8], eax
mov rdx, qword [rcx + 0x10]
lea rax, [rbp - 0x60]
mov rcx, r14
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
call fcn.1400865a0
mov r8, qword [rbp - 0x60]
mov r13d, eax
dec byte [r14 + 0x70]
mov byte [r14 + 0x6e], dil
mov rdi, r14
mov dword [rsp + 0x54], eax
mov qword [r14 + 0x200], rbx
mov dword [r14 + 0x2e8], esi
test r8, r8
jne 0x140044739
test eax, eax
je 0x140041cee
lea rdx, [0x14011a2c8]
mov rcx, r15
call fcn.1400359c0
mov rcx, qword [rbp - 0x60]
call fcn.140006df0
mov rbx, qword [rsp + 0x68]
cmp r13d, 7
je 0x1400469b4
mov rsi, qword [rsp + 0x48]
mov r12d, 1
lea r14d, [r12 + 0xa]
jmp 0x140046605
mov r13, qword [rsp + 0x48]
mov rcx, qword [rdi + 0x20]
cmp qword [r13 + 0x10], 0
movsxd rbx, dword [r13 + 4]
jne 0x1400447cc
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.140072550
and dword [rdi + 0x2c], 0xffffffef
lea r8, [r15 + 0xa8]
movzx r9d, word [r13 + 2]
mov edx, ebx
mov rcx, rdi
call fcn.140090060
or dword [rdi + 0x2c], 1
mov r13d, eax
and dword [r15 + 0xc8], 0xfffffffc
mov dword [rsp + 0x54], eax
jmp 0x140044892
mov dword [rbp + 0x68], ebx
lea rax, [r15 + 0xa8]
mov qword [rbp + 0x58], rdi
mov qword [rbp + 0x60], rax
mov dword [rbp + 0x70], r8d
shl rbx, 5
mov rcx, qword [rbx + rcx + 8]
call fcn.140024d90
mov r8, qword [rdi + 0x20]
lea r9, str.sqlite_master
mov dword [rbp + 0x78], eax
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
mov rax, qword [r13 + 0x10]
mov rcx, rdi
mov qword [rsp + 0x20], rax
mov r8, qword [rbx + r8]
call fcn.140009b00
mov rbx, rax
mov rcx, rdi
test rax, rax
je 0x1400466e4
xor eax, eax
mov byte [rdi + 0xc5], 1
lea r9, [rbp + 0x58]
mov dword [rbp + 0x6c], eax
lea r8, [fcn.14008fd00]
mov dword [rbp + 0x74], eax
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400865a0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x140044880
mov r13d, dword [rbp + 0x6c]
mov dword [rsp + 0x54], r13d
test r13d, r13d
jne 0x140044880
cmp dword [rbp + 0x74], r13d
jne 0x140044880
mov ecx, 0x18c57
call fcn.1400d6e30
mov r13d, eax
mov dword [rsp + 0x54], eax
mov rdx, rbx
mov rcx, rdi
call fcn.140006ed0
mov byte [rdi + 0xc5], 0
test r13d, r13d
je 0x140040900
mov rcx, rdi
call fcn.1400678a0
jmp 0x140044751
mov rax, qword [rsp + 0x48]
mov rcx, rdi
mov edx, dword [rax + 4]
call fcn.140064db0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
jmp 0x140040900
mov rax, qword [rsp + 0x48]
mov rcx, rdi
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.140067f10
jmp 0x140040900
mov rax, qword [rsp + 0x48]
mov rcx, rdi
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.140067600
jmp 0x140040900
mov rax, qword [rsp + 0x48]
mov rcx, rdi
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1400a64c0
jmp 0x140040900
mov r13, qword [rsp + 0x48]
lea r12, [rbp - 0x58]
mov qword [rsp + 0x38], r12
lea r12, [rbp + 0xb4]
mov qword [rsp + 0x30], r12
movsxd rcx, dword [r13 + 4]
mov r8, qword [r13 + 0x10]
mov r10d, dword [r13 + 8]
add r8, 4
imul rdi, rcx, 0x38
lea eax, [rcx + 1]
movsxd rcx, eax
add rdi, r11
movsxd rax, dword [r13 + 0xc]
imul rbx, rcx, 0x38
imul r9, rax, 0x38
mov ecx, dword [rdi]
add rbx, r11
movzx eax, word [r13 + 2]
inc ecx
mov dword [rsp + 0x28], ecx
shl rax, 5
mov dword [rsp + 0x20], r10d
add r9, r11
mov r11, qword [rsp + 0x58]
mov rcx, r11
mov rdx, qword [r11 + 0x20]
mov rdx, qword [rax + rdx + 8]
call fcn.140031fc0
mov rcx, rbx
mov dword [rsp + 0x54], eax
mov r13d, eax
call fcn.140034870
mov eax, dword [rbp + 0xb4]
test eax, eax
je 0x1400449d8
test r13d, r13d
jne 0x1400466ee
dec eax
mov r9b, 1
movsxd rcx, eax
mov r8, 0xffffffffffffffff
sub qword [rdi], rcx
lea rax, [fcn.140006df0]
mov rdx, qword [rbp - 0x58]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140034c30
movzx edx, byte [rsp + 0x40]
mov rcx, rbx
call fcn.140033b70
mov rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x48]
mov eax, dword [rdi + 0x198]
mov rbx, qword [rsp + 0x68]
test eax, eax
jne 0x1400467a9
cmp r14, rbx
jb 0x140045fd2
nop dword [rax + rax]
mov rdx, qword [rdi + 0x210]
test rdx, rdx
je 0x140045fd2
mov eax, dword [rdi + 0x220]
mov rcx, qword [rdi + 0x218]
add rbx, rax
mov qword [rsp + 0x68], rbx
call rdx
test eax, eax
jne 0x1400467a2
cmp r14, rbx
jae 0x140044a10
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 0x14], 0x10
jne 0x140044a8d
mov rcx, rbx
call fcn.1400349b0
test eax, eax
jne 0x1400469aa
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.140017e80
mov rdi, qword [rsp + 0x58]
jmp 0x140040900
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
test byte [rbx + 0x14], 0x10
je 0x140044af0
mov rcx, qword [rbx + 8]
lea rdx, [rbp + 0xe0]
call fcn.140018310
test eax, eax
je 0x140044af0
mov rax, qword [rsp + 0x48]
mov rdx, qword [rbp + 0xe0]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
call fcn.140034920
jmp 0x1400449ea
mov rcx, rbx
call fcn.140034870
jmp case.0x140040175.9
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov edi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rsi, rax, 0x38
add rbx, r11
add rsi, r11
test byte [rbx + 0x14], 0x10
jne 0x140044b31
mov rcx, rbx
call fcn.1400349b0
test eax, eax
jne 0x1400469aa
test edi, edi
je 0x140044b4d
mov r8, qword [rsi]
mov edx, edi
mov rcx, qword [rbx + 8]
call fcn.1400183d0
test eax, eax
jne 0x140045a99
test edi, edi
js 0x140041ce9
mov rdx, qword [rsi]
mov rcx, qword [rbx + 8]
call fcn.140017e80
mov rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x48]
jmp 0x140040d6b
mov rcx, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
movsxd rax, dword [rcx + 0xc]
mov r15, qword [rcx + 0x10]
imul r14, rax, 0x38
add r14, r11
cmp word [rcx + 2], 0
je 0x140044bb3
mov rax, qword [r12 + 0x108]
mov rcx, qword [r15 + 0x20]
test rax, rax
je 0x140044bb3
nop
cmp qword [rax + 0x30], rcx
je 0x140044e3b
mov rax, qword [rax + 8]
test rax, rax
jne 0x140044ba0
mov eax, dword [rdi + 0xb0]
cmp dword [r12 + 0x118], eax
jge 0x140046701
test byte [r14 + 0x14], 0x10
jne 0x140044ce4
mov edx, dword [r15 + 0x10]
mov ecx, dword [r15 + 0xc]
add ecx, edx
test edx, edx
lea ebx, [rcx + 1]
cmovne ebx, ecx
lea eax, [rbx + 2]
imul ecx, eax, 7
mov eax, dword [r15 + 8]
add ecx, edx
add eax, 7
jns 0x140044bf8
add eax, 7
sar eax, 3
lea edi, [rax + rcx*8]
mov rcx, qword [rsp + 0x58]
movsxd rdx, edi
call fcn.140007320
mov rsi, rax
test rax, rax
je 0x1400469a5
mov rcx, r14
call fcn.140034300
mov rcx, qword [rsp + 0x48]
lea rax, [0x140037360]
sub rcx, qword [rsp + 0x70]
xor r8d, r8d
mov qword [r14 + 0x30], rax
mov dword [r14 + 0x10], edi
mov rdi, qword [rsp + 0x58]
mov word [r14 + 0x14], 0x1010
mov qword [r14 + 8], rsi
mov qword [rsi], r12
mov dword [rsi + 0x58], ebx
mov eax, dword [r15 + 0x10]
mov dword [rsi + 0x5c], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x4c], edx
mov rax, qword [r12 + 0x68]
mov qword [rsi + 0x18], rax
mov eax, dword [r12 + 0x24]
mov dword [rsi + 0x54], eax
mov rax, qword [r12 + 0x78]
mov qword [rsi + 0x20], rax
mov eax, dword [r12 + 0x28]
mov dword [rsi + 0x48], eax
mov rax, qword [r12 + 0x88]
mov qword [rsi + 0x10], rax
mov eax, dword [r12 + 0x90]
mov dword [rsi + 0x50], eax
mov rax, qword [r15 + 0x20]
mov qword [rsi + 0x30], rax
movsxd rax, ebx
add rax, 2
imul rcx, rax, 0x38
lea rax, [rsi + 0x70]
add rcx, rsi
cmp rax, rcx
je 0x140044ce8
nop
mov word [rax + 0x14], r8w
mov qword [rax + 0x18], rdi
add rax, 0x38
cmp rax, rcx
jne 0x140044cd0
jmp 0x140044ce8
mov rsi, qword [r14 + 8]
inc dword [r12 + 0x118]
lea rdx, [rsi + 0x70]
mov rax, qword [r12 + 0x108]
mov qword [rsi + 8], rax
mov rax, qword [rdi + 0x38]
mov qword [rsi + 0x38], rax
mov rax, qword [r12 + 0x38]
mov qword [rsi + 0x60], rax
mov rax, qword [r12]
mov qword [rsp + 0x60], rdx
mov rcx, qword [rax + 0x78]
mov qword [rsi + 0x68], rcx
mov rax, qword [r12 + 0x128]
mov qword [rsi + 0x40], rax
mov qword [r12 + 0x68], rdx
mov qword [r12 + 0x128], r8
mov qword [r12 + 0x38], r8
mov qword [r12 + 0x108], rsi
movsxd rcx, dword [rsi + 0x58]
mov dword [r12 + 0x24], ecx
movzx eax, word [rsi + 0x5c]
mov dword [r12 + 0x28], eax
imul rcx, rcx, 0x38
add rcx, rdx
mov qword [r12 + 0x78], rcx
movsxd rax, dword [r15 + 0x10]
lea rcx, [rcx + rax*8]
mov qword [rsi + 0x28], 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.1400f6220
mov rsi, qword [r15]
mov r14, qword [rbp - 0x78]
mov qword [r12 + 0x88], rsi
mov eax, dword [r15 + 8]
mov r15, qword [rsp + 0x78]
mov qword [rsp + 0x70], rsi
mov dword [r15 + 0x90], eax
lea rax, [rsi - 0x18]
mov qword [rsp + 0x48], rax
mov r12, rax
jmp 0x1400449ef
mov rdx, qword [rsp + 0x48]
mov rcx, r15
call fcn.14003fc20
mov r9, qword [r15 + 0x108]
mov r12, qword [rsp + 0x48]
movsxd rcx, dword [r9 + 0x4c]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r9 + 0x10]
mov r8d, dword [rcx + rdx*8 + 4]
add r8d, dword [r12 + 4]
movsxd rcx, r8d
mov r8d, 0x4000
imul rdx, rcx, 0x38
mov rcx, rax
add rdx, qword [r9 + 0x18]
call fcn.140034b20
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
mov eax, dword [rdi + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x48]
jae 0x140044e45
movsxd rax, dword [rax + 8]
add qword [rdi + 0x300], rax
mov r12, qword [rsp + 0x48]
jmp case.0x140040175.89
cmp dword [rax + 4], 0
lea rcx, [0x140000000]
movsxd rax, dword [rax + 8]
mov r12, qword [rsp + 0x48]
je 0x140044e74
add qword [rdi + 0x2f8], rax
mov r15, qword [rsp + 0x78]
add r12, 0x18
mov r14, qword [rbp - 0x78]
jmp 0x140040144
add qword [r15 + 0x50], rax
mov r15, qword [rsp + 0x78]
add r12, 0x18
mov r14, qword [rbp - 0x78]
jmp 0x140040144
cmp dword [r12 + 4], 0
je 0x140044eb3
cmp qword [rdi + 0x2f8], 0
jne case.0x140040175.89
cmp qword [rdi + 0x300], 0
je 0x140040f86
jmp case.0x140040175.89
cmp qword [r15 + 0x50], 0
jne case.0x140040175.89
cmp qword [rdi + 0x300], 0
je 0x140040f86
jmp case.0x140040175.89
mov rcx, qword [r15 + 0x108]
test rcx, rcx
je 0x140044f0f
mov rax, qword [rcx + 8]
test rax, rax
je 0x140044efc
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140044ef0
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x140044f1f
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
mov rcx, rdi
call fcn.140034360
mov qword [rdi], rax
mov r14d, 0xf244
movzx eax, word [rdi + 0x14]
and ax, r14w
or ax, 4
mov word [rdi + 0x14], ax
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.140034360
movzx ecx, word [rbx + 0x14]
xor r8d, r8d
mov r12, qword [rsp + 0x48]
and cx, r14w
mov r11, qword [rsp + 0x60]
or cx, 4
mov r10d, dword [rsp + 0x50]
mov word [rbx + 0x14], cx
lea edx, [r8 + 1]
mov qword [rbx], rax
cmp qword [rdi], rax
jge 0x14004600e
movzx r9d, byte [rsp + 0x40]
mov qword [rdi], rax
mov rdi, qword [rsp + 0x58]
jmp case.0x140040175.89
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r11]
test rdx, rdx
jle 0x140040593
mov rax, r12
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r11], rdx
jmp 0x140040f81
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, r15
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
call fcn.14003fc20
mov rcx, qword [rbx]
mov rsi, rax
mov qword [rbp + 0xd8], rcx
test rcx, rcx
jle 0x140045042
mov rdx, qword [rdi]
lea rcx, [rbp + 0xd8]
test rdx, rdx
mov r9d, 0
cmovle rdx, r9
call fcn.14000d6b0
test eax, eax
jne 0x140045042
mov rax, qword [rbp + 0xd8]
mov rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x48]
mov qword [rsi], rax
jmp 0x140040d6b
mov rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x48]
mov qword [rsi], 0xffffffffffffffff
jmp 0x140040d6b
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
test rax, rax
je 0x140044e3b
mov r12, qword [rsp + 0x48]
jle 0x140040f86
dec rax
mov qword [rcx + r11], rax
jmp 0x140040f86
mov rax, qword [rsp + 0x48]
movabs rbx, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
cmp rax, rbx
jle 0x1400450b0
dec rax
mov qword [rcx + r11], rax
mov r12, qword [rsp + 0x48]
test rax, rax
je 0x140040f86
jmp case.0x140040175.89
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x58]
mov rcx, r14
movzx edi, word [rax + 2]
lea rdx, [rdi*8 + 0x68]
call fcn.1400073b0
mov rbx, rax
test rax, rax
je 0x1400469a0
xor r12d, r12d
lea rcx, [rdi + 6]
lea rcx, [rax + rcx*8]
mov qword [rax + 0x10], r12
mov rdx, r14
mov qword [rax], rcx
lea r8d, [r12 + 1]
call fcn.140034850
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x10]
mov qword [rbx + 8], rcx
mov rcx, rax
sub rcx, qword [rsp + 0x70]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov byte [rbx + 0x2a], dil
mov rdi, r14
sar rdx, 2
mov rax, rdx
mov qword [rbx + 0x18], r15
shr rax, 0x3f
add rdx, rax
mov byte [rbx + 0x29], r12b
movzx eax, byte [rsp + 0x40]
mov byte [rbx + 0x28], al
mov rax, qword [rsp + 0x48]
mov dword [rbx + 0x20], edx
mov dword [rbx + 0x24], r12d
mov word [rax], 0xf1a3
mov qword [rax + 0x10], rbx
jmp 0x14004516f
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
mov rsi, qword [rsp + 0x60]
imul r10, rax, 0x38
add r10, rsi
cmp qword [rbx + 0x10], r10
je 0x1400451d5
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov qword [rbx + 0x10], r10
sub rdx, 1
lea r9d, [rax - 1]
js 0x1400451d5
mov rdi, qword [rsp + 0x48]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop word [rax + rax]
mov eax, dword [rdi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, rsi
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x1400451b0
mov rdi, qword [rsp + 0x58]
inc dword [r10 + 0x10]
lea r8, [rbx + 0x30]
mov r12, qword [rsp + 0x48]
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
cmp dword [r12 + 4], 0
je 0x1400451fa
call qword [rax + 0x30]
jmp 0x1400451fd
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x140046045
jle 0x14004522f
mov rcx, qword [rbx]
mov dl, 1
call fcn.1400351d0
mov r8, rax
lea rdx, [0x14011a2c8]
mov rcx, r15
call fcn.1400359c0
mov r13d, dword [rbx + 0x24]
mov dword [rsp + 0x54], r13d
cmp byte [rbx + 0x29], 0
je 0x140045253
movsxd rax, dword [r12 - 0x14]
test eax, eax
je 0x14004524f
imul rcx, rax, 0x38
mov edx, 1
add rcx, rsi
call fcn.140034920
mov byte [rbx + 0x29], 0
mov rcx, qword [rbx]
mov eax, 0x9000
test word [rcx + 0x14], ax
jne 0x140045267
cmp dword [rcx + 0x20], 0
je 0x14004526c
call fcn.1400342b0
mov rax, qword [rbx]
xor r8d, r8d
mov edx, 1
mov word [rax + 0x14], dx
mov dword [rbx + 0x24], r8d
test r13d, r13d
jne 0x140046a1d
mov r10d, dword [rsp + 0x50]
mov r11, rsi
mov rsi, qword [rsp + 0x70]
movzx r9d, byte [rsp + 0x40]
jmp case.0x140040175.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, qword [rcx + 0x10]
add rbx, r11
test eax, eax
je 0x1400452e9
imul rdx, rax, 0x38
mov r8, rcx
mov rcx, rbx
add rdx, r11
call fcn.1400341d0
mov r13d, eax
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
jmp 0x1400452fb
mov rdx, rcx
mov rcx, rbx
call fcn.1400340f0
mov r13d, eax
mov dword [rsp + 0x54], eax
mov rcx, rbx
test r13d, r13d
jne 0x14004671d
movzx edx, byte [rsp + 0x40]
call fcn.140033b70
jmp 0x140040900
lea rax, [rbp + 0xf0]
mov dword [rbp + 0xe8], r8d
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0xec]
mov rax, qword [rsp + 0x48]
mov rcx, rdi
mov qword [rbp + 0xec], 0xffffffffffffffff
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.1400d4ca0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
je 0x14004537d
cmp eax, 5
jne 0x1400465ef
xor r9d, r9d
mov eax, 1
mov r13d, r9d
mov dword [rsp + 0x54], r9d
mov ecx, eax
mov dword [rbp + 0xe8], eax
jmp 0x140045383
mov ecx, dword [rbp + 0xe8]
mov rax, qword [rsp + 0x48]
mov r14d, 0x9000
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
movsxd rax, ecx
add rbx, qword [rsp + 0x60]
test word [rbx + 0x14], r14w
je 0x1400453b7
mov rdx, rax
mov rcx, rbx
call fcn.1400348e0
mov edx, 4
jmp 0x1400453c3
mov edx, 4
mov qword [rbx], rax
mov word [rbx + 0x14], dx
lea rcx, [rbx + 0x38]
movsxd rax, dword [rbp + 0xec]
test word [rbx + 0x4c], r14w
je 0x1400453e4
mov rdx, rax
call fcn.1400348e0
mov edx, 4
jmp 0x1400453eb
mov qword [rcx], rax
mov word [rbx + 0x4c], dx
lea rcx, [rbx + 0x70]
movsxd rax, dword [rbp + 0xf0]
test word [rbx + 0x84], r14w
je 0x14004540d
mov rdx, rax
call fcn.1400348e0
jmp 0x140040900
mov qword [rcx], rax
mov word [rbx + 0x84], dx
jmp 0x140040900
mov rdx, qword [rsp + 0x48]
mov rcx, r15
call fcn.14003fc20
mov rcx, qword [rdi + 0x20]
mov r14, rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov ebx, dword [rax + 0xc]
shl rdx, 5
mov r15, qword [rdx + rcx + 8]
mov rcx, r15
call fcn.1400311e0
mov rcx, rax
mov rsi, rax
call fcn.14001e250
cmp ebx, 0xffffffff
mov rcx, rsi
mov edi, eax
cmove ebx, eax
call fcn.14001e260
test eax, eax
mov r12d, 1
mov edx, r12d
mov rcx, rsi
cmove ebx, edi
call fcn.14001dcd0
cmp ebx, 5
jne 0x1400454a2
mov rcx, rax
call fcn.14000ac80
test eax, eax
je 0x14004549b
mov rcx, rsi
call fcn.14001e290
test eax, eax
jne 0x1400454a2
mov ebx, edi
jmp 0x140045525
cmp ebx, edi
je 0x140045525
cmp edi, 5
je 0x1400454b0
cmp ebx, 5
jne 0x140045525
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x65], 0
je 0x140046739
cmp dword [rax + 0xdc], r12d
jg 0x140046739
cmp edi, 5
jne 0x1400454f3
mov rdx, rax
mov rcx, rsi
call fcn.14001e460
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x14004552a
mov edx, ebx
mov rcx, rsi
call fcn.14001e0c0
jmp 0x140045508
cmp edi, 4
jne 0x140045503
lea edx, [rdi - 2]
mov rcx, rsi
call fcn.14001e0c0
test r13d, r13d
jne 0x14004552a
xor r9d, r9d
mov rcx, r15
mov edx, r9d
cmp ebx, 5
sete dl
inc edx
call fcn.1400327c0
mov r13d, eax
mov dword [rsp + 0x54], eax
test r13d, r13d
je 0x14004552c
mov ebx, edi
mov edx, ebx
mov rcx, rsi
call fcn.14001e0c0
mov ecx, eax
mov word [r14 + 0x14], 0x2202
call fcn.140087b80
mov rcx, rax
mov qword [r14 + 8], rax
call fcn.14000ac80
movzx edx, byte [rsp + 0x40]
mov rcx, r14
mov dword [r14 + 0x10], eax
mov byte [r14 + 0x16], r12b
call fcn.140033b70
mov rdi, qword [rsp + 0x58]
test r13d, r13d
je 0x140041cee
mov rsi, qword [rsp + 0x48]
mov r15, qword [rsp + 0x78]
jmp 0x1400465fa
mov r13, qword [rsp + 0x48]
movsxd rax, dword [r13 + 8]
test eax, eax
je 0x140045598
imul r9, rax, 0x38
add r9, r11
jmp 0x14004559b
mov r9, r8
mov r8d, dword [r13 + 4]
lea rcx, [r15 + 0xa8]
mov rdx, rdi
call fcn.1400acaa0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
jne 0x1400465ef
jmp 0x140040900
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rdi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.140027530
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
je 0x140045fcd
cmp eax, 0x65
jne 0x1400465ef
mov r12, qword [rsp + 0x48]
xor r8d, r8d
mov r13d, r8d
mov dword [rsp + 0x54], r8d
jmp 0x140040f81
mov rcx, qword [rsp + 0x48]
cmp dword [rcx + 4], 0
jne 0x140045625
mov edx, dword [rcx + 8]
mov rcx, rdi
call fcn.14003b520
jmp 0x140040900
mov ecx, dword [rcx + 8]
mov eax, dword [r15 + 0xc8]
inc ecx
mov r12, qword [rsp + 0x48]
xor ecx, eax
and ecx, 3
xor ecx, eax
mov dword [r15 + 0xc8], ecx
jmp case.0x140040175.89
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x30]
call fcn.140028490
jmp 0x140040900
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x30]
call fcn.1400284a0
jmp 0x140040900
movzx r8d, byte [r12 + 0xc]
test r8b, r8b
jne 0x1400456a6
movabs rax, 0x400000000
test qword [rdi + 0x30], rax
jne 0x140040961
mov r13, qword [rsp + 0x48]
mov rcx, qword [rdi + 0x20]
movsxd rax, dword [r13 + 4]
mov edx, dword [r13 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1400325d0
mov dword [rsp + 0x54], eax
mov r13d, eax
test eax, eax
je 0x140040900
mov rsi, qword [rsp + 0x48]
cmp al, 6
jne 0x1400465f4
mov r8, qword [rsi + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, r15
call fcn.1400359c0
jmp 0x1400465f4
mov rax, qword [rsp + 0x48]
mov rcx, rdi
mov rbx, qword [rax + 0x10]
mov rdx, rbx
call fcn.1400aef00
mov dword [rsp + 0x54], eax
mov r13d, eax
test rbx, rbx
je 0x140045725
mov rdx, qword [rbx + 0x10]
mov rcx, r15
call fcn.14003b720
test r13d, r13d
jne 0x1400465ef
jmp 0x140040900
mov rax, qword [rsp + 0x48]
lea rcx, [rbp + 0x58]
xorps xmm0, xmm0
mov qword [rbp + 0x58], r8
xorps xmm1, xmm1
mov qword [rbp + 0x88], r8
movdqu xmmword [rbp + 0x60], xmm0
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
movdqu xmmword [rbp + 0x78], xmm1
mov qword [rbp + 0x70], rdi
add rdx, r11
call fcn.140034b60
lea rcx, [rbp + 0x58]
mov dword [rsp + 0x54], eax
mov r13d, eax
call fcn.14003be00
test rax, rax
je 0x1400457a1
mov r8, rax
lea r9, [r15 + 0xa8]
mov rax, qword [rsp + 0x48]
mov rcx, rdi
mov edx, dword [rax + 4]
call fcn.1400ae790
mov r13d, eax
mov dword [rsp + 0x54], eax
lea rcx, [rbp + 0x58]
call fcn.140034300
test r13d, r13d
jne 0x1400465ef
jmp 0x140040900
mov rax, qword [rsp + 0x48]
mov rcx, rdi
inc dword [rdi + 0xe8]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1400aec50
dec dword [rdi + 0xe8]
mov r13d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x1400465ef
jmp 0x140040900
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x68], r8
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x140046781
mov rdi, qword [rbx]
test rdi, rdi
je 0x14004677c
lea rdx, [rbp - 0x68]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r15
mov r13d, eax
mov dword [rsp + 0x54], eax
call fcn.14003b720
test r13d, r13d
jne 0x140046423
mov rax, qword [rbp - 0x68]
mov r9b, 2
xor r8d, r8d
mov rcx, r15
mov qword [rax], rbx
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 4]
call fcn.14003f710
mov rcx, qword [rbp - 0x68]
test rax, rax
je 0x140046774
mov rdi, qword [rsp + 0x58]
mov qword [rax + 0x30], rcx
inc dword [rbx + 8]
jmp 0x140040900
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x60], r8
movsxd rax, dword [rax + 8]
imul rsi, rax, 0x38
add rsi, r11
mov rcx, rsi
call fcn.140034870
mov r12, qword [rsp + 0x48]
mov r14, qword [r12 + 0x10]
mov rcx, qword [r14 + 0x50]
test rcx, rcx
je 0x140045fd2
mov rbx, qword [rcx + 0x10]
mov rdi, qword [rbx]
call fcn.1400ad6f0
mov r8, qword [rsp + 0x58]
mov rcx, rbx
movsxd rax, dword [r12 + 4]
mov r9d, dword [r12 + 0xc]
shl rax, 5
mov rdx, qword [r8 + 0x20]
lea r8, [rbp - 0x60]
mov qword [rsp + 0x20], r8
mov r8, qword [r14]
mov rdx, qword [rax + rdx]
call qword [rdi + 0xc0]
mov rcx, qword [r14 + 0x50]
mov r13d, eax
mov dword [rsp + 0x54], eax
call fcn.1400ad700
test r13d, r13d
jne 0x14004678c
mov rdx, qword [rbp - 0x60]
test rdx, rdx
je 0x140046007
lea rax, [fcn.140006df0]
mov r9b, 1
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov rcx, rsi
call fcn.140034c30
jmp 0x140040d66
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rdi, qword [rax + rcx*8]
mov ecx, 0x10
call fcn.140006da0
mov rbx, rax
test rax, rax
je 0x1400469aa
mov rcx, qword [rdi + 0x30]
mov qword [rax], rcx
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0xc]
imul rdx, rcx, 0x38
mov rcx, r15
add rdx, qword [rsp + 0x60]
mov qword [rbx + 8], rdx
mov rdx, rax
call fcn.14003fc20
lea r9, [0x14003cce0]
mov rdx, rbx
lea r8, str.ValueList
mov rcx, rax
mov word [rax + 0x14], 1
call fcn.140034940
mov rdi, qword [rsp + 0x58]
jmp 0x140040900
mov rcx, qword [rsp + 0x48]
mov r12d, 1
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r15 + 0x78]
add rdx, r11
movsxd r9, dword [rdx + 0x38]
lea r11, [rdx + 0x38]
mov r13, qword [rax + rcx*8]
mov rax, qword [rsp + 0x78]
mov edx, dword [rdx]
mov rsi, qword [r13 + 0x30]
mov rdi, qword [rax + 0x70]
mov r15, qword [rsi]
mov r14, qword [r15]
test r9d, r9d
jle 0x140045a09
mov r10d, r12d
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 0x1400459f0
mov rax, qword [rsp + 0x48]
mov rcx, rsi
mov qword [rsp + 0x20], rdi
mov r8, qword [rax + 0x10]
call qword [r14 + 0x40]
mov rdx, r15
mov r15, qword [rsp + 0x78]
mov rcx, r15
mov dword [rsp + 0x54], eax
mov ebx, eax
call fcn.14003b720
test ebx, ebx
jne 0x1400469d6
mov rcx, rsi
call qword [r14 + 0x50]
mov r12, qword [rsp + 0x48]
lea edx, [rbx + 1]
mov rsi, qword [rsp + 0x70]
xor r8d, r8d
mov byte [r13 + 2], bl
mov r13d, ebx
test eax, eax
je 0x140043e90
mov rdi, qword [rsp + 0x58]
jmp 0x140040f86
mov r12, qword [rsp + 0x48]
mov edx, 1
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x58]
jmp 0x140040f86
mov r12, qword [rsp + 0x48]
mov edx, 1
mov rdi, qword [rsp + 0x58]
jmp 0x140040f86
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
xor r8d, r8d
mov edx, 1
mov rdi, qword [rsp + 0x58]
jmp 0x140040f86
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
imul rbx, rax, 0x38
add rbx, r11
cmp byte [rdi + 2], 0
je 0x140045aee
mov rcx, rbx
call fcn.140034870
mov rdi, qword [rsp + 0x58]
jmp 0x140040900
mov rax, qword [rdi + 0x30]
xorps xmm0, xmm0
mov rsi, qword [rax]
xor eax, eax
test byte [rcx + 2], 1
mov r14, qword [rsi]
movups xmmword [rbp + 0x58], xmm0
mov qword [rbp + 0x88], rax
lea rax, [rbp - 0x10]
movups xmmword [rbp + 0x78], xmm0
mov qword [rbp + 0x60], rax
movups xmmword [rbp + 0x68], xmm0
mov qword [rbp + 0x58], rbx
mov byte [rbp + 0x80], r9b
mov qword [rbp - 8], r8
mov dword [rbp - 0xc], 0x1000000
je 0x140045b4e
mov rcx, rbx
call fcn.140034870
mov rcx, qword [rsp + 0x48]
xor r9d, r9d
mov dword [rbx], r9d
mov eax, 0x401
jmp 0x140045b5e
movzx eax, word [rbx + 0x14]
mov edx, 0xf241
and ax, dx
or ax, 1
mov word [rbx + 0x14], ax
lea rdx, [rbp + 0x58]
mov r8d, dword [rcx + 8]
mov rcx, qword [rdi + 0x30]
call qword [r14 + 0x58]
mov rdx, rsi
mov rcx, r15
mov r13d, eax
mov dword [rsp + 0x54], eax
call fcn.14003b720
cmp dword [rbp + 0x7c], 0
jle 0x140045bad
mov rcx, rbx
call fcn.14003be00
mov r8, rax
lea rdx, [0x14011a2c8]
mov rcx, r15
call fcn.1400359c0
mov r13d, dword [rbp + 0x7c]
mov dword [rsp + 0x54], r13d
movzx edx, byte [rsp + 0x40]
mov rcx, rbx
call fcn.140033b70
mov rdi, qword [rsp + 0x58]
test r13d, r13d
jne 0x1400465ef
mov r12, qword [rsp + 0x48]
jmp 0x140040d6b
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x1400462f7
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r15
mov r13d, eax
mov dword [rsp + 0x54], eax
call fcn.14003b720
test r13d, r13d
jne 0x140046423
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
mov rsi, qword [rsp + 0x70]
test eax, eax
jne 0x1400449e5
mov rdi, qword [rsp + 0x58]
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [rsi + rcx*8]
mov qword [rsp + 0x48], rax
mov r12, rax
jmp 0x1400449ef
mov rcx, qword [rsp + 0x48]
mov edi, dword [rdi + 0x30]
mov rax, qword [rsp + 0x58]
and edi, 0x4000000
or qword [rax + 0x30], 0x4000000
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, r11
mov rcx, rbx
call fcn.140033b70
mov r13d, eax
test eax, eax
jne 0x140046423
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 8]
call qword [rax + 0x98]
test edi, edi
mov rdi, qword [rsp + 0x58]
mov r13d, eax
mov dword [rsp + 0x54], eax
jne 0x140045cb8
and qword [rdi + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rcx, r15
call fcn.14003b720
and dword [r15 + 0xc8], 0xfffffffc
test r13d, r13d
jne 0x1400465ef
mov r12, qword [rsp + 0x48]
jmp 0x140040d6b
cmp byte [rdi + 0x67], 0
mov qword [rbp + 0x48], r8
jne 0x1400469af
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x140046781
mov r10, qword [rbx]
test r10, r10
je 0x140046781
cmp qword [r10 + 0x68], 0
mov r12, qword [rsp + 0x48]
movsxd rdx, dword [r12 + 8]
je 0x1400403e2
movsxd rax, dword [r12 + 0xc]
xor r9d, r9d
movzx edi, byte [rdi + 0x6c]
mov r8, qword [r15 + 0x70]
imul rcx, rax, 0x38
mov eax, r9d
add rcx, r11
test edx, edx
jle 0x140045d60
nop dword [rax]
nop word [rax + rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x140045d50
movzx eax, byte [r12 + 2]
lea r9, [rbp + 0x48]
mov rsi, qword [rsp + 0x58]
mov rcx, rbx
mov byte [rsi + 0x6c], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [rsi + 0x6c], dil
mov rcx, r15
mov dword [rsp + 0x54], eax
mov r13d, eax
call fcn.14003b720
test r13d, r13d
jne 0x140045da8
mov rdi, rsi
cmp dword [r12 + 4], r13d
je 0x140045dee
mov rax, qword [rbp + 0x48]
mov qword [rsi + 0x38], rax
jmp 0x140045dee
cmp r13b, 0x13
jne 0x140045deb
mov rax, qword [r12 + 0x10]
cmp byte [rax + 0x1c], 0
je 0x140045deb
movzx ecx, word [r12 + 2]
mov rdi, rsi
cmp ecx, 4
jne 0x1400467c5
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r13d, r8d
mov r10d, dword [rsp + 0x50]
mov dword [rsp + 0x54], r8d
jmp 0x14004058e
mov rdi, rsi
inc qword [r15 + 0x38]
test r13d, r13d
jne 0x1400465ef
jmp 0x140040d6b
mov rdx, qword [rsp + 0x48]
mov rcx, r15
call fcn.14003fc20
mov rcx, qword [rdi + 0x20]
mov rbx, rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
shl rdx, 5
mov rcx, qword [rdx + rcx + 8]
call fcn.140024d90
mov ecx, eax
mov qword [rbx], rcx
jmp 0x140040900
mov rdx, qword [rsp + 0x48]
mov rcx, r15
call fcn.14003fc20
mov r8, qword [rsp + 0x48]
mov rdi, rax
mov rax, qword [rsp + 0x58]
xor r9d, r9d
movsxd rdx, dword [r8 + 4]
mov rcx, qword [rax + 0x20]
mov eax, r9d
shl rdx, 5
mov rbx, qword [rdx + rcx + 8]
cmp dword [r8 + 0xc], r9d
je 0x140045e86
mov rcx, rbx
call fcn.140024d90
mov r12, qword [rsp + 0x48]
cmp eax, dword [r12 + 0xc]
cmovb eax, dword [r12 + 0xc]
jmp 0x140045e89
mov r12, r8
mov edx, eax
mov rcx, rbx
call fcn.140026070
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov eax, eax
mov qword [rdi], rax
mov rdi, qword [rsp + 0x58]
jmp 0x140040593
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, r11
mov qword [rbp + 0x48], rdi
cmp qword [rbx], rdi
je 0x140045f24
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov byte [rbx + 0x28], r9b
sub rdx, 1
mov qword [rbx + 0x18], r15
mov qword [rbx], rdi
lea r9d, [rax - 1]
js 0x140045f24
mov rdi, qword [rsp + 0x48]
lea r8, [rbx + 0x30]
lea r8, [r8 + rdx*8]
nop word [rax + rax]
mov eax, dword [rdi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r11
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x140045f00
mov rdi, qword [rbp + 0x48]
movzx eax, word [rdi + 0x14]
lea r8, [rbx + 0x30]
mov ecx, 0xf241
and ax, cx
mov rcx, rbx
or ax, 1
mov word [rdi + 0x14], ax
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x140045fc8
jle 0x140045f78
mov dl, 1
mov rcx, rdi
call fcn.1400351d0
mov r8, rax
lea rdx, [0x14011a2c8]
mov rcx, r15
call fcn.1400359c0
mov r13d, dword [rbx + 0x24]
mov dword [rsp + 0x54], r13d
mov rax, qword [rsp + 0x48]
lea rdx, [r15 + 0x128]
mov rdi, qword [rsp + 0x58]
mov r8d, dword [rbx + 0x20]
mov rcx, rdi
mov r9d, dword [rax + 4]
call fcn.140039260
xor r8d, r8d
mov dword [rbx + 0x24], r8d
test r13d, r13d
jne 0x1400465ef
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x140040593
mov r13d, dword [rsp + 0x54]
mov rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
xor r8d, r8d
mov r10d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov edx, 1
mov rsi, qword [rsp + 0x70]
jmp case.0x140040175.89
movzx r9d, byte [rsp + 0x40]
xor r8d, r8d
mov rsi, qword [rsp + 0x70]
jmp case.0x140040175.89
mov rdi, qword [rsp + 0x58]
jmp 0x140045fd2
mov rdi, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov rsi, qword [rsp + 0x70]
jmp case.0x140040175.89
mov rdi, rsi
jmp 0x140045fcd
mov rdi, qword [rsp + 0x58]
mov r11, qword [rsp + 0x60]
jmp 0x140045fda
mov rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x140045fda
mov r11, rsi
jmp 0x140045fd7
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xf7ff
and word [rcx + r11 + 0x14], ax
jmp case.0x140040175.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
mov eax, 0x800
add rcx, r11
test word [rdx + r11 + 0x14], ax
je 0x14004163d
movzx edx, byte [rdx + r11 + 0x17]
call fcn.140034920
jmp 0x140040900
mov rcx, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rcx, r11
test byte [rdx + r11 + 0x14], 1
je 0x1400460d8
mov eax, 0xf7ff
and word [rcx + 0x14], ax
jmp 0x140040593
mov eax, 0x800
or word [rcx + 0x14], ax
movzx eax, byte [rdx + r11]
mov byte [rcx + 0x17], al
jmp 0x140040593
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.14003fc50
mov ecx, dword [rbx + 0x10]
xor edx, edx
shl ecx, 3
movsxd r8, ecx
mov rcx, qword [rbx + 8]
div r8
mov r8, rdx
and edx, 7
shr r8, 3
movsx eax, byte [r8 + rcx]
bts eax, edx
mov byte [r8 + rcx], al
jmp 0x140040900
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.14003fc50
mov ecx, dword [rbx + 0x10]
xor edx, edx
mov r12, qword [rsp + 0x48]
shl ecx, 3
movsxd r8, ecx
div r8
mov rax, qword [rbx + 8]
mov rcx, rdx
shr rcx, 3
movsx r8d, byte [rcx + rax]
movzx eax, dl
and al, 7
mov edx, 1
movzx eax, al
bt r8d, eax
jb 0x140046196
inc dword [r15 + 0xf4]
xor r8d, r8d
jmp 0x140040f86
inc dword [r15 + 0xf0]
mov r11, qword [rsp + 0x60]
xor r8d, r8d
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x140040175.89
movzx eax, byte [rdi + 0x6e]
test al, 0x41
je 0x140046274
cmp byte [r15 + 0xc5], 0xfe
je 0x140046274
mov r9, qword [r12 + 0x10]
test r9, r9
jne 0x1400461e9
mov r9, qword [r15 + 0xf8]
test r9, r9
je 0x140046274
test al, 0x40
je 0x140046215
mov rdx, r9
mov rcx, r15
call fcn.14003f1c0
mov rcx, qword [rdi + 0x100]
mov rdx, rax
mov rbx, rax
call qword [rdi + 0xf8]
mov rcx, rbx
call fcn.140006df0
jmp 0x14004626d
cmp dword [rdi + 0xe4], 1
jle 0x140046258
mov r8, r9
lea rdx, str.____s
mov rcx, rdi
call fcn.140009b00
mov rdx, qword [rdi + 0x100]
mov r9, rax
mov r8, r15
mov ecx, 1
mov rbx, rax
call qword [rdi + 0xf8]
mov rdx, rbx
mov rcx, rdi
call fcn.140007090
jmp 0x14004626d
mov rdx, qword [rdi + 0x100]
mov r8, r15
mov ecx, 1
call qword [rdi + 0xf8]
xor r8d, r8d
lea edx, [r8 + 1]
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
mov eax, dword [rax + 4]
cmp eax, dword [0x140139fd8]
jl 0x1400462c7
cmp byte [r12], 0xb8
je 0x140040389
cmp dword [r15 + 0x90], 1
jle 0x1400462c4
mov eax, 0x18
mov rcx, qword [r15 + 0x88]
cmp byte [rax + rcx], 0xf
jne 0x1400462b5
mov dword [rax + rcx + 4], r8d
inc edx
add rax, 0x18
cmp edx, dword [r15 + 0x90]
jl 0x1400462a3
mov eax, r8d
inc eax
mov dword [r12 + 4], eax
inc dword [r15 + 0xec]
jmp 0x140040f81
mov r13d, dword [rsp + 0x54]
xor r8d, r8d
mov rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
jmp 0x140040593
mov rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x48]
jmp case.0x140040175.89
mov r13, qword [rsp + 0x48]
mov ecx, dword [r13 + 4]
mov dword [r15 + 0x34], ecx
movzx eax, byte [r13 + 8]
mov byte [r15 + 0xc4], al
test ecx, ecx
je 0x1400463ce
movzx eax, word [r13 + 2]
mov rcx, r15
test ax, ax
je 0x14004637a
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x120c40]
call fcn.1400359c0
mov r9, qword [r13 + 0x10]
test r9, r9
je 0x14004638a
mov r8, qword [r15 + 0xa8]
lea rdx, str._z:__s
mov rcx, rdi
call fcn.140009b00
mov qword [r15 + 0xa8], rax
jmp 0x14004638a
mov r8, qword [r13 + 0x10]
lea rdx, [0x14011a2c8]
call fcn.1400359c0
mov r9, qword [r15 + 0xf8]
mov rcx, r13
sub rcx, rsi
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [r15 + 0xa8]
mov ecx, dword [r13 + 4]
sar rdx, 2
mov r8, rdx
mov qword [rsp + 0x20], rax
shr r8, 0x3f
add r8, rdx
lea rdx, str.abort_at__d_in___s_:__s
call fcn.140009df0
mov rcx, r15
call fcn.140038bc0
mov rsi, qword [rsp + 0x48]
mov r13d, eax
mov rbx, qword [rsp + 0x68]
mov r12d, 1
cmp eax, 5
jne 0x1400463f7
mov dword [r15 + 0x34], eax
jmp 0x140042844
cmp dword [r15 + 0x34], 0
mov r13d, 0x65
cmovne r13d, r12d
jmp 0x140042844
mov r13d, 0x14
jmp 0x1400465ef
mov ecx, 0x17d04
call fcn.1400d6e30
mov r13d, eax
mov rdi, qword [rsp + 0x58]
jmp 0x1400465ef
movsxd rax, edi
mov rcx, rsi
lea rdi, [rax + rax*2]
mov ebx, dword [r15 + rdi*8 + 8]
shr ebx, 4
and ebx, 0xf
dec ebx
call fcn.14003fff0
mov r8, rax
lea rdx, str.cannot_store__s_value_in__s_column__s._s
mov rax, qword [r15 + rdi*8]
mov r15, qword [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov rcx, r15
mov rax, qword [r14]
mov qword [rsp + 0x20], rax
lea rax, [0x140000000]
mov r9, qword [rax + rbx*8 + 0x13bba0]
call fcn.1400359c0
mov r13d, 0xc13
mov rdi, qword [rsp + 0x58]
mov rsi, r12
jmp 0x1400465f4
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r15
call fcn.1400359c0
mov r13d, 5
mov rdi, rbx
jmp 0x1400465ef
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r15
call fcn.1400359c0
mov r13d, 5
jmp 0x1400465ef
mov byte [rdi + 0x65], 0
jmp 0x1400465ef
mov rsi, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
mov rcx, rsi
mov r13d, 5
sub rcx, qword [rsp + 0x70]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r15 + 0x30], edx
mov byte [rdi + 0x65], 0
mov dword [r15 + 0x34], r13d
jmp 0x140042835
mov r14d, 0xb
bt rax, 0x14
mov r13d, 8
mov rsi, rcx
cmovae r13d, r14d
lea r12d, [r14 - 0xa]
jmp 0x140046600
mov rsi, qword [rsp + 0x48]
mov r12d, 1
mov rbx, qword [rsp + 0x68]
cmp r13b, 5
jne 0x1400467ba
mov rcx, rsi
mov dword [r15 + 0x34], r13d
sub rcx, qword [rsp + 0x70]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r15 + 0x30], edx
jmp 0x140042840
mov rsi, qword [rsp + 0x78]
mov rdx, qword [rsi + 0xa8]
mov rcx, r15
call fcn.140007090
lea rdx, str.database_schema_has_changed
mov rcx, r15
call fcn.140007530
mov qword [rsi + 0xa8], rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rax, qword [r15 + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp + 0x40]
cmp dword [rcx], eax
je 0x1400465d2
mov rcx, r15
call fcn.140067810
mov rbx, rdi
mov eax, dword [rbx]
mov r13d, 0x11
and eax, 0xfffffffd
or eax, 1
and eax, 0xffffffef
mov dword [rbx], eax
mov rdi, qword [rsp + 0x58]
mov r15, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x48]
mov r12d, 1
mov r14d, 0xb
mov rbx, qword [rsp + 0x68]
cmp byte [rdi + 0x67], 0
je 0x140046a2a
mov r13d, 7
jmp 0x140046a5e
mov r13d, 0x204
jmp 0x1400465ef
mov rcx, qword [rbx + 0x10]
call fcn.140025ba0
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x48]
jmp 0x1400465fa
mov r15, qword [rsp + 0x78]
mov rdi, r8
jmp 0x140046650
mov rdi, r8
jmp 0x140046650
mov rdi, qword [rsp + 0x58]
jmp 0x140046650
mov rdi, rax
lea rdx, str.string_or_blob_too_big
mov rcx, r15
call fcn.1400359c0
mov r13d, 0x12
jmp 0x1400465ef
lea r8, str.index_corruption
mov edx, 0x18a5d
mov ecx, 0x30b
call fcn.1400d6e00
mov r13d, eax
mov rsi, r12
jmp 0x1400465f4
lea rax, [0x1401205d4]
mov r14d, 0xb
mov ecx, r14d
mov qword [rsp + 0x20], rax
mov r9d, 0x18b2d
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.140009df0
mov rdi, qword [rsp + 0x58]
lea r12d, [r14 - 0xa]
mov rsi, qword [rsp + 0x48]
mov r13d, r14d
jmp 0x140046600
mov rsi, qword [rsp + 0x48]
mov r13d, 6
mov byte [r15 + 0xc4], 2
jmp 0x1400465fa
call fcn.1400678a0
jmp 0x1400469af
mov rcx, qword [rbp - 0x58]
call fcn.140006df0
mov rdi, qword [rsp + 0x58]
jmp 0x1400465ef
mov r15, qword [rsp + 0x78]
mov r13d, edx
mov rcx, r15
lea rdx, str.too_many_levels_of_trigger_recursion
call fcn.1400359c0
jmp 0x1400465ef
call fcn.14003be00
mov r8, rax
lea rdx, [0x14011a2c8]
mov rcx, r15
call fcn.1400359c0
jmp 0x1400465ef
mov r15, qword [rsp + 0x78]
lea rax, str.into
cmp ebx, 5
lea r8, str.out_of
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov rcx, r15
cmove r8, rax
mov r13d, r12d
call fcn.1400359c0
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x48]
jmp 0x1400465fa
call qword [rdi + 0x38]
jmp 0x1400469aa
mov rdi, qword [rsp + 0x58]
mov r13d, 6
jmp 0x1400465ef
mov rcx, qword [rbp - 0x60]
call fcn.140006df0
mov rdi, qword [rsp + 0x58]
mov rsi, r12
jmp 0x1400465f4
mov rbx, 0xffffffffffffffff
mov r13d, 9
mov rsi, qword [rsp + 0x48]
mov r12d, 1
mov r14d, 0xb
jmp 0x140046605
movzx eax, cl
cmp ecx, 5
mov ecx, 2
mov rsi, r12
cmove eax, ecx
mov byte [r15 + 0xc4], al
jmp 0x1400465f4
mov eax, dword [r15 + 0x2c]
mov r13, qword [rsp + 0x48]
add eax, 2
or eax, 1
mov dword [r15 + 0x2c], eax
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
add rcx, r11
mov qword [r15 + 0xa0], rcx
cmp byte [rdi + 0x67], 0
jne 0x1400469af
test byte [rdi + 0x6e], 4
je 0x14004682e
mov rdx, qword [rdi + 0x100]
xor r9d, r9d
mov r8, r15
lea ecx, [r9 + 4]
call qword [rdi + 0xf8]
mov rcx, r13
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, rsi
mov r13d, 0x64
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [r15 + 0x30], edx
mov rsi, qword [rsp + 0x48]
mov r12d, 1
mov rbx, qword [rsp + 0x68]
jmp 0x140042844
mov r13, qword [rsp + 0x48]
movzx eax, byte [rdi + 0x65]
mov ebx, dword [r13 + 4]
mov ecx, dword [r13 + 8]
cmp ebx, eax
je 0x140046964
test ecx, ecx
je 0x14004689e
mov edx, 0x204
mov rcx, rdi
call fcn.1400d3810
mov al, 1
jmp 0x1400468dc
test ebx, ebx
je 0x1400468c5
cmp dword [rdi + 0xe0], 0
jle 0x1400468c5
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r15
call fcn.1400359c0
mov r13d, 5
jmp 0x1400465ef
mov rcx, r15
call fcn.140038b50
mov r13d, eax
test eax, eax
jne 0x14004685b
mov r13, qword [rsp + 0x48]
movzx eax, bl
mov rcx, r15
mov byte [rdi + 0x65], al
call fcn.140038bc0
cmp eax, 5
jne 0x140046938
mov rcx, r13
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, rsi
mov r12d, 1
mov rsi, qword [rsp + 0x48]
mov r13d, 5
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, r12d
sub al, bl
mov dword [r15 + 0x30], edx
mov rbx, qword [rsp + 0x68]
mov byte [rdi + 0x65], al
mov dword [r15 + 0x34], r13d
jmp 0x140042844
mov rcx, rdi
call fcn.1400d2ff0
cmp dword [r15 + 0x34], 0
mov r13d, 0x65
mov rsi, qword [rsp + 0x48]
mov r12d, 1
mov rbx, qword [rsp + 0x68]
cmovne r13d, r12d
jmp 0x140042844
test ebx, ebx
jne 0x140046971
lea rdx, str.cannot_start_a_transaction_within_a_transaction
jmp 0x140046985
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
cmovne rdx, rax
mov rcx, r15
call fcn.1400359c0
mov rsi, qword [rsp + 0x48]
mov r12d, 1
mov r13d, r12d
jmp 0x1400465fa
mov rdi, r14
jmp 0x1400469af
mov r15, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x68]
mov rcx, rdi
call fcn.1400076c0
lea rdx, [0x140119310]
mov rcx, r15
call fcn.1400359c0
mov r13d, 7
jmp 0x1400467af
mov r13d, dword [rsp + 0x54]
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x48]
jmp 0x1400465fa
mov r13d, dword [rsp + 0x54]
jmp 0x1400465e5
mov r13d, dword [rsp + 0x54]
mov rdi, qword [rsp + 0x58]
jmp 0x1400465ef
mov rdi, rsi
mov rsi, qword [rsp + 0x48]
jmp 0x1400465fa
mov rdi, qword [rsp + 0x58]
mov r15, r12
jmp 0x1400465ef
mov rsi, qword [rsp + 0x48]
mov r12, rdx
jmp 0x1400465fa
cmp r13d, 0x210a
jne 0x140046a5e
lea rax, [0x1401205d4]
mov r9d, 0x19460
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, r14d
call fcn.140009df0
mov r13d, r14d
cmp qword [r15 + 0xa8], 0
jne 0x140046a8b
cmp r13d, 0xc0a
je 0x140046a8b
mov ecx, r13d
call fcn.1400d3980
mov r8, rax
lea rdx, [0x14011a2c8]
mov rcx, r15
call fcn.1400359c0
mov edx, r13d
mov dword [r15 + 0x34], r13d
mov rcx, rdi
call fcn.14000acf0
mov r9, qword [r15 + 0xf8]
mov rcx, rsi
sub rcx, qword [rsp + 0x70]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [r15 + 0xa8]
mov ecx, r13d
sar rdx, 2
mov r8, rdx
mov qword [rsp + 0x20], rax
shr r8, 0x3f
add r8, rdx
lea rdx, str.statement_aborts_at__d:___s___s
call fcn.140009df0
cmp byte [r15 + 0xc7], 2
jne 0x140046af1
mov rcx, r15
call fcn.140038bc0
cmp r13d, 0xc0a
jne 0x140046b04
mov rcx, rdi
call fcn.1400076c0
jmp 0x140046b1e
cmp r13d, 0xb
jne 0x140046b1e
cmp byte [rdi + 0x65], 0
jne 0x140046b1e
movabs rax, 0x200000000
or qword [rdi + 0x30], rax
movzx eax, byte [rbp - 0x80]
mov r13d, r12d
test al, al
je 0x140042840
lea edx, [rax - 1]
mov rcx, rdi
call fcn.140067810
jmp 0x140042840
add dword [r15 + 0xe4], r14d
cmp dword [r15 + 0xd0], 0
movaps xmm7, xmmword [rsp + 0x200]
movaps xmm6, xmmword [rsp + 0x210]
mov r14, qword [rsp + 0x220]
mov r12, qword [rsp + 0x228]
mov rdi, qword [rsp + 0x268]
mov rsi, qword [rsp + 0x260]
mov rbx, qword [rsp + 0x258]
je 0x140046b8e
mov rcx, r15
call fcn.1400371e0
mov eax, r13d
mov rcx, qword [rbp + 0xf8]
xor rcx, rsp
call fcn.1400e4880
add rsp, 0x230
pop r15
pop r13
pop rbp
ret