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

Disassembly:
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0xec8
mov rdi, rsp
mov ecx, 0x3b2
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xee0]
mov rax, qword [0x14031fcd0]
xor rax, rsp
mov qword [rsp + 0xeb8], rax
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x68]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x40], 0
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax]
mov qword [rsp + 0x48], rax
mov byte [rsp + 0x50], 0
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x5e]
mov byte [rsp + 0x51], al
mov dword [rsp + 0x54], 0
mov dword [rsp + 0x58], 0
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x80], 0
mov rcx, qword [rsp + 0xee0]
call fcn.14020e160
mov rax, qword [rsp + 0xee0]
cmp dword [rax + 0x38], 7
jne 0x14020e3d4
jmp 0x140217f74
mov rax, qword [rsp + 0xee0]
mov qword [rax + 0x48], 0
mov rax, qword [rsp + 0xee0]
mov qword [rax + 0x88], 0
mov rax, qword [rsp + 0x48]
mov dword [rax + 0x238], 0
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x160]
test eax, eax
je 0x14020e41a
jmp 0x140217f9f
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x1b0], 0
je 0x14020e473
mov eax, 4
imul rax, rax, 4
mov rcx, qword [rsp + 0xee0]
mov eax, dword [rcx + rax + 0xd0]
mov dword [rsp + 0x88], eax
xor edx, edx
mov eax, dword [rsp + 0x88]
mov rcx, qword [rsp + 0x48]
div dword [rcx + 0x1c0]
mov eax, edx
mov rcx, qword [rsp + 0x48]
mov ecx, dword [rcx + 0x1c0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x5c], eax
jmp 0x14020e47b
mov dword [rsp + 0x5c], 0xffffffff
mov rax, qword [rsp + 0xee0]
movsxd rax, dword [rax + 0x34]
imul rax, rax, 0x18
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
jmp 0x14020e4ab
mov rax, qword [rsp + 0x38]
add rax, 0x18
mov qword [rsp + 0x38], rax
xor eax, eax
cmp eax, 1
je 0x140217e06
mov eax, dword [rsp + 0x58]
inc eax
mov dword [rsp + 0x58], eax
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
mov dword [rsp + 0xcc8], eax
cmp dword [rsp + 0xcc8], 0xa7
ja case.0x14020e4f9.82
movsxd rax, dword [rsp + 0xcc8]
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0x218034]
add rax, rcx
jmp rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
dec eax
cdqe
imul rax, rax, 0x18
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x160]
test eax, eax
je 0x14020e52f
jmp 0x140217f9f
mov eax, dword [rsp + 0x5c]
cmp dword [rsp + 0x58], eax
jb 0x14020e5c7
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x1b0], 0
je 0x14020e5c7
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x1c0]
mov ecx, dword [rsp + 0x58]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xccc], eax
xor edx, edx
mov eax, dword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
div dword [rcx + 0x1c0]
mov eax, edx
mov ecx, dword [rsp + 0xccc]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x5c], eax
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x1b0]
mov qword [rsp + 0xcd0], rax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x1b8]
mov rax, qword [rsp + 0xcd0]
call qword [str.PS_]
test eax, eax
je 0x14020e5c7
mov dword [rsp + 0x40], 9
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov eax, 4
mov rcx, qword [rsp + 0x68]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
sub rcx, rax
mov rax, rcx
cqo
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
idiv rcx
cdqe
mov rcx, qword [rsp + 0x68]
mov qword [rcx], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
dec eax
cdqe
imul rax, rax, 0x18
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
imul rax, qword [rax], 0x18
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
mov eax, 0x80
mov rcx, qword [rsp + 0x68]
mov word [rcx + 8], ax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
dec eax
cdqe
mov rcx, qword [rsp + 0x80]
mov qword [rcx], rax
mov eax, 4
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x38]
cmp dword [rax + 8], 0
je 0x14020e6e1
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
imul rax, qword [rax], 0x18
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x90]
mov eax, dword [rax + 8]
dec eax
cdqe
imul rax, rax, 0x18
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
mov eax, 0x80
mov rcx, qword [rsp + 0x68]
mov word [rcx + 8], ax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov eax, 4
mov rcx, qword [rsp + 0x68]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x68]
mov eax, dword [rax]
mov dword [rsp + 0x98], eax
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
sub rcx, rax
mov rax, rcx
cqo
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
idiv rcx
cdqe
mov rcx, qword [rsp + 0x68]
mov qword [rcx], rax
movsxd rax, dword [rsp + 0x98]
imul rax, rax, 0x18
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
movzx eax, word [rax + 8]
and eax, 1
test eax, eax
jne case.0x14020e4f9.65
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
sub rcx, rax
mov rax, rcx
cqo
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
idiv rcx
mov dword [rsp + 0xa8], eax
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 0
jne 0x14020e937
mov rax, qword [rsp + 0xee0]
cmp qword [rax + 0x100], 0
je 0x14020e937
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0xa0]
mov rcx, qword [rcx + 8]
mov qword [rax + 0x100], rcx
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0x110]
dec eax
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x110], eax
mov rax, qword [rsp + 0xee0]
mov edx, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x48]
call fcn.14021df20
mov rcx, qword [rsp + 0xa0]
call fcn.140218ad0
mov dword [rsp + 0xa8], eax
mov rax, qword [rsp + 0x38]
cmp dword [rax + 8], 4
jne 0x14020e8f4
movsxd rax, dword [rsp + 0xa8]
imul rax, rax, 0x18
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x68]
mov eax, dword [rcx + rax + 8]
dec eax
mov dword [rsp + 0xa8], eax
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x68]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x60], rax
movsxd rax, dword [rsp + 0xa8]
imul rax, rax, 0x18
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx + 4]
mov dword [rax + 0x38], ecx
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0x38]
movzx ecx, byte [rcx + 8]
mov byte [rax + 0xbe], cl
mov rax, qword [rsp + 0xee0]
mov ecx, dword [rsp + 0xa8]
mov dword [rax + 0x34], ecx
mov rax, qword [rsp + 0xee0]
cmp dword [rax + 0x38], 0
je 0x14020ea60
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
test eax, eax
je 0x14020ea04
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
dec eax
cdqe
lea rcx, str.NOT_NULL
mov r8, qword [rcx + rax*8]
lea rdx, str._s_constraint_failed
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x10], 0
je 0x14020ea02
mov rax, qword [rsp + 0x38]
mov r9, qword [rax + 0x10]
mov rax, qword [rsp + 0xee0]
mov r8, qword [rax + 0x90]
lea rdx, str._z:__s
mov rcx, qword [rsp + 0x48]
call fcn.1401f1f40
mov rcx, qword [rsp + 0xee0]
mov qword [rcx + 0x90], rax
jmp 0x14020ea21
mov rax, qword [rsp + 0x38]
mov r8, qword [rax + 0x10]
lea rdx, [0x140323a14]
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x90]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0xee0]
mov r9, qword [rax + 0xf0]
mov r8d, dword [rsp + 0xa8]
lea rdx, str.abort_at__d_in___s_:__s
mov rax, qword [rsp + 0x38]
mov ecx, dword [rax + 4]
call fcn.14018de00
mov rcx, qword [rsp + 0xee0]
call fcn.140218e70
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 5
jne 0x14020ea89
mov rax, qword [rsp + 0xee0]
mov dword [rax + 0x38], 5
jmp 0x14020eaba
mov rax, qword [rsp + 0xee0]
cmp dword [rax + 0x38], 0
je 0x14020eaa4
mov dword [rsp + 0xcd8], 1
jmp 0x14020eaaf
mov dword [rsp + 0xcd8], 0x65
mov eax, dword [rsp + 0xcd8]
mov dword [rsp + 0x40], eax
jmp 0x140217f09
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0x80]
mov qword [rcx], rax
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov rcx, qword [rsp + 0x80]
mov rax, qword [rax]
mov qword [rcx], rax
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov eax, 8
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov rcx, qword [rsp + 0x80]
movsd xmm0, qword [rax]
movsd qword [rcx], xmm0
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
mov byte [rax], 0x45
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax + 0x10]
call fcn.140206680
mov rcx, qword [rsp + 0x38]
mov dword [rcx + 4], eax
movzx eax, byte [rsp + 0x51]
cmp eax, 1
je 0x14020ec7d
mov qword [rsp + 0x20], 0
mov r9b, 1
mov r8d, 0xffffffff
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax + 0x10]
mov rcx, qword [rsp + 0x80]
call fcn.14021b600
mov dword [rsp + 0x40], eax
movzx eax, byte [rsp + 0x51]
mov edx, eax
mov rcx, qword [rsp + 0x80]
call fcn.14020d630
test eax, eax
je 0x14020ec00
jmp 0x140217f74
mov rax, qword [rsp + 0x80]
mov dword [rax + 0x20], 0
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
bts eax, 0xb
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x38]
movsx eax, byte [rax + 1]
cmp eax, 0xfffffff9
jne 0x14020ec4c
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax + 0x10]
mov rcx, qword [rsp + 0x48]
call fcn.1401dba20
mov rax, qword [rsp + 0x38]
mov byte [rax + 1], 0xf9
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x80]
mov rcx, qword [rcx + 0x10]
mov qword [rax + 0x10], rcx
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x80]
mov ecx, dword [rcx + 0xc]
mov dword [rax + 4], ecx
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x48]
mov eax, dword [rdx + rax + 0x7c]
cmp dword [rcx + 4], eax
jle case.0x14020e4f9.68
jmp 0x140217f53
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov eax, 0xa02
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x38]
mov rcx, qword [rcx + 0x10]
mov qword [rax + 0x10], rcx
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx + 4]
mov dword [rax + 0xc], ecx
mov rax, qword [rsp + 0x80]
movzx ecx, byte [rsp + 0x51]
mov byte [rax + 0xa], cl
mov rax, qword [rsp + 0x38]
cmp dword [rax + 0xc], 0
jle 0x14020ed4d
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
mov rcx, qword [rsp + 0x78]
cmp qword [rcx], rax
jne 0x14020ed4d
mov eax, 0xa10
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx + 8]
mov eax, dword [rax + 0xc]
sub eax, ecx
mov dword [rsp + 0xac], eax
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 0
je 0x14020ed9d
mov dword [rsp + 0xcdc], 0x101
jmp 0x14020eda8
mov dword [rsp + 0xcdc], 1
movzx eax, word [rsp + 0xcdc]
mov word [rsp + 0xb0], ax
mov rax, qword [rsp + 0x80]
movzx ecx, word [rsp + 0xb0]
mov word [rax + 8], cx
mov rax, qword [rsp + 0x80]
mov dword [rax + 0xc], 0
cmp dword [rsp + 0xac], 0
jle 0x14020ee3b
mov rax, qword [rsp + 0x80]
add rax, 0x38
mov qword [rsp + 0x80], rax
mov rcx, qword [rsp + 0x80]
call fcn.14021b430
mov rax, qword [rsp + 0x80]
movzx ecx, word [rsp + 0xb0]
mov word [rax + 8], cx
mov rax, qword [rsp + 0x80]
mov dword [rax + 0xc], 0
mov eax, dword [rsp + 0xac]
dec eax
mov dword [rsp + 0xac], eax
jmp 0x14020eddb
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0xffffff60
or eax, 1
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov rax, qword [rsp + 0x38]
mov r8d, dword [rax + 4]
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax + 0x10]
mov rcx, qword [rsp + 0x80]
call fcn.14021b600
mov rax, qword [rsp + 0x80]
movzx ecx, byte [rsp + 0x51]
mov byte [rax + 0xa], cl
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 4]
dec eax
cdqe
imul rax, rax, 0x38
mov rcx, qword [rsp + 0xee0]
add rax, qword [rcx + 0xa0]
mov qword [rsp + 0xb8], rax
mov rcx, qword [rsp + 0xb8]
call fcn.14021bc10
test eax, eax
je 0x14020ef1c
jmp 0x140217f53
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov r8d, 0x800
mov rdx, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x80]
call fcn.14021ba30
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0xc0], eax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 4]
mov dword [rsp + 0xc4], eax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
mov dword [rsp + 0xc8], eax
movsxd rax, dword [rsp + 0xc4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
movsxd rax, dword [rsp + 0xc8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x80]
call fcn.14021b0c0
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0x1000
test eax, eax
je 0x14020f001
mov rcx, qword [rsp + 0x80]
call fcn.14021b000
test eax, eax
je 0x14020f001
jmp 0x140217f74
mov rax, qword [rsp + 0x68]
add rax, 0x38
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x80]
add rax, 0x38
mov qword [rsp + 0x80], rax
mov eax, dword [rsp + 0xc0]
dec eax
mov dword [rsp + 0xc0], eax
cmp dword [rsp + 0xc0], 0
jne 0x14020efc4
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0xcc], eax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
xor eax, eax
cmp eax, 1
je 0x14020f14f
mov r8d, 0x1000
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x80]
call fcn.14021ba30
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0x1000
test eax, eax
je 0x14020f0dc
mov rcx, qword [rsp + 0x80]
call fcn.14021b000
test eax, eax
je 0x14020f0dc
jmp 0x140217f74
mov eax, dword [rsp + 0xcc]
mov dword [rsp + 0xce0], eax
mov eax, dword [rsp + 0xcc]
dec eax
mov dword [rsp + 0xcc], eax
cmp dword [rsp + 0xce0], 0
jne 0x14020f111
mov dword [rsp + 0xce4], 1
jmp 0x14020f11c
mov dword [rsp + 0xce4], 0
cmp dword [rsp + 0xce4], 0
je 0x14020f128
jmp 0x14020f14f
mov rax, qword [rsp + 0x80]
add rax, 0x38
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x68]
add rax, 0x38
mov qword [rsp + 0x68], rax
jmp 0x14020f08e
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov r8d, 0x1000
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x80]
call fcn.14021ba30
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x68]
mov rdx, qword [rax]
mov rcx, qword [rsp + 0x80]
call fcn.14021b3c0
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x1b0], 0
je 0x14020f25d
mov eax, dword [rsp + 0x5c]
cmp dword [rsp + 0x58], eax
jb 0x14020f25d
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x1b0]
mov qword [rsp + 0xce8], rax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x1b8]
mov rax, qword [rsp + 0xce8]
call qword [str.PS_]
test eax, eax
je 0x14020f25d
mov dword [rsp + 0x40], 9
jmp 0x140217e06
xor edx, edx
mov rcx, qword [rsp + 0xee0]
call fcn.14020d9f0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x14020f27c
jmp 0x140217e06
mov edx, 1
mov rcx, qword [rsp + 0xee0]
call fcn.14020dbe0
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0x30]
add eax, 2
or eax, 1
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x30], eax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov qword [rsp + 0xcf0], rcx
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0xcf0]
mov qword [rax + 0x88], rcx
mov rax, qword [rsp + 0xcf0]
mov qword [rsp + 0xd0], rax
mov dword [rsp + 0xd8], 0
jmp 0x14020f30f
mov eax, dword [rsp + 0xd8]
inc eax
mov dword [rsp + 0xd8], eax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
cmp dword [rsp + 0xd8], eax
jge 0x14020f394
movsxd rax, dword [rsp + 0xd8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0xd0]
movzx eax, word [rcx + rax + 8]
and eax, 0x1000
test eax, eax
je 0x14020f36d
movsxd rax, dword [rsp + 0xd8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0xd0]
add rcx, rax
mov rax, rcx
mov rcx, rax
call fcn.14021b000
test eax, eax
je 0x14020f36d
jmp 0x140217f74
movsxd rax, dword [rsp + 0xd8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0xd0]
add rcx, rax
mov rax, rcx
mov rcx, rax
call fcn.14021b120
jmp 0x14020f2ff
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x61]
test eax, eax
je 0x14020f3a6
jmp 0x140217f74
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x68]
and eax, 4
test eax, eax
je 0x14020f3f4
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0xe0]
mov qword [rsp + 0xcf8], rax
xor r9d, r9d
mov r8, qword [rsp + 0xee0]
mov rax, qword [rsp + 0x48]
mov rdx, qword [rax + 0xe8]
mov ecx, 4
mov rax, qword [rsp + 0xcf8]
call qword [str.PS_]
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
sub rcx, rax
mov rax, rcx
cqo
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
idiv rcx
inc eax
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x34], eax
mov dword [rsp + 0x40], 0x64
jmp 0x140217f09
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
mov rcx, qword [rsp + 0x70]
movzx ecx, word [rcx + 8]
or eax, ecx
and eax, 1
test eax, eax
je 0x14020f4af
mov rcx, qword [rsp + 0x80]
call fcn.14021b430
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 0x4000
test eax, eax
je 0x14020f4d4
mov rcx, qword [rsp + 0x68]
call fcn.14021a910
mov dword [rsp + 0xd00], eax
jmp 0x14020f4df
mov dword [rsp + 0xd00], 0
cmp dword [rsp + 0xd00], 0
jne 0x14020f523
mov rax, qword [rsp + 0x70]
movzx eax, word [rax + 8]
and eax, 0x4000
test eax, eax
je 0x14020f50e
mov rcx, qword [rsp + 0x70]
call fcn.14021a910
mov dword [rsp + 0xd04], eax
jmp 0x14020f519
mov dword [rsp + 0xd04], 0
cmp dword [rsp + 0xd04], 0
je 0x14020f528
jmp 0x140217f74
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 0x12
test eax, eax
jne 0x14020f553
xor r8d, r8d
movzx edx, byte [rsp + 0x51]
mov rcx, qword [rsp + 0x68]
call fcn.14021bae0
test eax, eax
je 0x14020f553
jmp 0x140217f74
mov rax, qword [rsp + 0x70]
movzx eax, word [rax + 8]
and eax, 0x12
test eax, eax
jne 0x14020f57e
xor r8d, r8d
movzx edx, byte [rsp + 0x51]
mov rcx, qword [rsp + 0x70]
call fcn.14021bae0
test eax, eax
je 0x14020f57e
jmp 0x140217f74
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x70]
add eax, dword [rcx + 0xc]
cdqe
mov qword [rsp + 0xe0], rax
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + rax + 0x7c]
cmp qword [rsp + 0xe0], rax
jle 0x14020f5ba
jmp 0x140217f53
mov rax, qword [rsp + 0x70]
cmp qword [rsp + 0x80], rax
jne 0x14020f5d6
mov dword [rsp + 0xd08], 1
jmp 0x14020f5e1
mov dword [rsp + 0xd08], 0
mov eax, dword [rsp + 0xe0]
add eax, 2
mov r8d, dword [rsp + 0xd08]
mov edx, eax
mov rcx, qword [rsp + 0x80]
call fcn.14021ac20
test eax, eax
je 0x14020f60b
jmp 0x140217f74
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0xffff3e00
or eax, 2
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x70]
cmp qword [rsp + 0x80], rax
je 0x14020f65d
mov rax, qword [rsp + 0x70]
movsxd rax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x70]
mov rdi, qword [rcx + 0x10]
mov rsi, qword [rdx + 0x10]
mov rcx, rax
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x68]
movsxd rax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x70]
movsxd rcx, dword [rcx + 0xc]
mov rdx, qword [rsp + 0x80]
mov rdx, qword [rdx + 0x10]
add rdx, rcx
mov rcx, rdx
mov rdx, qword [rsp + 0x68]
mov rdi, rcx
mov rsi, qword [rdx + 0x10]
mov rcx, rax
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x80]
mov rax, qword [rax + 0x10]
mov rcx, qword [rsp + 0xe0]
mov byte [rax + rcx], 0
mov rax, qword [rsp + 0x80]
mov rax, qword [rax + 0x10]
mov rcx, qword [rsp + 0xe0]
mov byte [rax + rcx + 1], 0
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
bts eax, 9
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x80]
mov ecx, dword [rsp + 0xe0]
mov dword [rax + 0xc], ecx
mov rax, qword [rsp + 0x80]
movzx ecx, byte [rsp + 0x51]
mov byte [rax + 0xa], cl
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rcx, qword [rsp + 0x68]
call fcn.1401bc2a0
mov word [rsp + 0xf0], ax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
call fcn.1401bc2a0
mov word [rsp + 0xf4], ax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
mov rcx, qword [rsp + 0x70]
movzx ecx, word [rcx + 8]
or eax, ecx
mov word [rsp + 0xec], ax
movzx eax, word [rsp + 0xf0]
movzx ecx, word [rsp + 0xf4]
and eax, ecx
and eax, 4
test eax, eax
je 0x14020f956
mov rax, qword [rsp + 0x68]
mov rax, qword [rax]
mov qword [rsp + 0xf8], rax
mov rax, qword [rsp + 0x70]
mov rax, qword [rax]
mov qword [rsp + 0x108], rax
mov byte [rsp + 0xe8], 1
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
mov byte [rsp + 0xd0c], al
cmp byte [rsp + 0xd0c], 0x58
je 0x14020f821
cmp byte [rsp + 0xd0c], 0x59
je 0x14020f844
cmp byte [rsp + 0xd0c], 0x5a
je 0x14020f867
cmp byte [rsp + 0xd0c], 0x5b
je 0x14020f88a
jmp 0x14020f8da
mov rdx, qword [rsp + 0xf8]
lea rcx, [rsp + 0x108]
call fcn.1401cd470
test eax, eax
je 0x14020f83f
jmp 0x14020f977
jmp 0x14020f91e
mov rdx, qword [rsp + 0xf8]
lea rcx, [rsp + 0x108]
call fcn.1402066e0
test eax, eax
je 0x14020f862
jmp 0x14020f977
jmp 0x14020f91e
mov rdx, qword [rsp + 0xf8]
lea rcx, [rsp + 0x108]
call fcn.1401f2980
test eax, eax
je 0x14020f885
jmp 0x14020f977
jmp 0x14020f91e
cmp qword [rsp + 0xf8], 0
jne 0x14020f89a
jmp 0x14020fb5e
cmp qword [rsp + 0xf8], 0xffffffffffffffff
jne 0x14020f8be
movabs rax, 0x8000000000000000
cmp qword [rsp + 0x108], rax
jne 0x14020f8be
jmp 0x14020f977
mov rax, qword [rsp + 0x108]
cqo
idiv qword [rsp + 0xf8]
mov qword [rsp + 0x108], rax
jmp 0x14020f91e
cmp qword [rsp + 0xf8], 0
jne 0x14020f8ea
jmp 0x14020fb5e
cmp qword [rsp + 0xf8], 0xffffffffffffffff
jne 0x14020f901
mov qword [rsp + 0xf8], 1
mov rax, qword [rsp + 0x108]
cqo
idiv qword [rsp + 0xf8]
mov rax, rdx
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x108]
mov qword [rax], rcx
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0xffff3e00
or eax, 4
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
jmp 0x14020fb59
movzx eax, word [rsp + 0xec]
and eax, 1
test eax, eax
je 0x14020f96f
jmp 0x14020fb5e
mov byte [rsp + 0xe8], 0
mov rcx, qword [rsp + 0x68]
call fcn.14021c9f0
movsd qword [rsp + 0x118], xmm0
mov rcx, qword [rsp + 0x70]
call fcn.14021c9f0
movsd qword [rsp + 0x120], xmm0
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
mov byte [rsp + 0xd10], al
cmp byte [rsp + 0xd10], 0x58
je 0x14020f9d9
cmp byte [rsp + 0xd10], 0x59
je 0x14020f9f9
cmp byte [rsp + 0xd10], 0x5a
je 0x14020fa19
cmp byte [rsp + 0xd10], 0x5b
je 0x14020fa39
jmp 0x14020fa70
movsd xmm0, qword [rsp + 0x120]
addsd xmm0, qword [rsp + 0x118]
movsd qword [rsp + 0x120], xmm0
jmp 0x14020fade
movsd xmm0, qword [rsp + 0x120]
subsd xmm0, qword [rsp + 0x118]
movsd qword [rsp + 0x120], xmm0
jmp 0x14020fade
movsd xmm0, qword [rsp + 0x120]
mulsd xmm0, qword [rsp + 0x118]
movsd qword [rsp + 0x120], xmm0
jmp 0x14020fade
movsd xmm0, qword [rsp + 0x118]
ucomisd xmm0, qword [0x14027e490]
jp 0x14020fa53
jne 0x14020fa53
jmp 0x14020fb5e
movsd xmm0, qword [rsp + 0x120]
divsd xmm0, qword [rsp + 0x118]
movsd qword [rsp + 0x120], xmm0
jmp 0x14020fade
cvttsd2si rax, qword [rsp + 0x118]
mov qword [rsp + 0xf8], rax
cvttsd2si rax, qword [rsp + 0x120]
mov qword [rsp + 0x108], rax
cmp qword [rsp + 0xf8], 0
jne 0x14020faa4
jmp 0x14020fb5e
cmp qword [rsp + 0xf8], 0xffffffffffffffff
jne 0x14020fabb
mov qword [rsp + 0xf8], 1
mov rax, qword [rsp + 0x108]
cqo
idiv qword [rsp + 0xf8]
mov rax, rdx
cvtsi2sd xmm0, rax
movsd qword [rsp + 0x120], xmm0
movsd xmm0, qword [rsp + 0x120]
call fcn.1401f02e0
test eax, eax
je 0x14020faf2
jmp 0x14020fb5e
mov rax, qword [rsp + 0x80]
movsd xmm0, qword [rsp + 0x120]
movsd qword [rax], xmm0
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0xffff3e00
or eax, 8
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
movzx eax, word [rsp + 0xf0]
movzx ecx, word [rsp + 0xf4]
or eax, ecx
and eax, 8
test eax, eax
jne 0x14020fb59
movsx eax, byte [rsp + 0xe8]
test eax, eax
jne 0x14020fb59
mov rcx, qword [rsp + 0x80]
call fcn.140219800
jmp case.0x14020e4f9.82
mov rcx, qword [rsp + 0x80]
call fcn.14021b430
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 0
je 0x14020fb9d
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
xor edx, edx
mov rcx, rax
call fcn.14021b3c0
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
mov rcx, qword [rsp + 0x70]
movzx ecx, word [rcx + 8]
or eax, ecx
and eax, 1
test eax, eax
je 0x14020fc29
mov rcx, qword [rsp + 0x80]
call fcn.14021b430
jmp case.0x14020e4f9.82
mov rcx, qword [rsp + 0x70]
call fcn.140219780
mov qword [rsp + 0x128], rax
mov rcx, qword [rsp + 0x68]
call fcn.140219780
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
mov byte [rsp + 0x140], al
movzx eax, byte [rsp + 0x140]
cmp eax, 0x54
jne 0x14020fc8c
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x128]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x128], rax
jmp 0x14020fe30
movzx eax, byte [rsp + 0x140]
cmp eax, 0x55
jne 0x14020fcbc
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x128]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x128], rax
jmp 0x14020fe30
cmp qword [rsp + 0x138], 0
je 0x14020fe30
cmp qword [rsp + 0x138], 0
jge 0x14020fd2a
movzx eax, byte [rsp + 0x140]
mov ecx, 0xad
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x140], al
cmp qword [rsp + 0x138], 0xffffffffffffffc0
jle 0x14020fd0e
mov rax, qword [rsp + 0x138]
neg rax
mov qword [rsp + 0xd18], rax
jmp 0x14020fd1a
mov qword [rsp + 0xd18], 0x40
mov rax, qword [rsp + 0xd18]
mov qword [rsp + 0x138], rax
cmp qword [rsp + 0x138], 0x40
jl 0x14020fd7a
cmp qword [rsp + 0x128], 0
jge 0x14020fd5a
movzx eax, byte [rsp + 0x140]
cmp eax, 0x56
je 0x14020fd5a
mov dword [rsp + 0xd20], 0xffffffff
jmp 0x14020fd65
mov dword [rsp + 0xd20], 0
movsxd rax, dword [rsp + 0xd20]
mov qword [rsp + 0x128], rax
jmp 0x14020fe30
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x130], rax
movzx eax, byte [rsp + 0x140]
cmp eax, 0x56
jne 0x14020fdb7
mov rax, qword [rsp + 0x138]
movzx ecx, al
mov rax, qword [rsp + 0x130]
shl rax, cl
mov qword [rsp + 0x130], rax
jmp 0x14020fe20
mov rax, qword [rsp + 0x138]
movzx ecx, al
mov rax, qword [rsp + 0x130]
shr rax, cl
mov qword [rsp + 0x130], rax
cmp qword [rsp + 0x128], 0
jge 0x14020fe20
mov eax, 0x40
sub rax, qword [rsp + 0x138]
mov rcx, 0xffffffffffffffff
mov qword [rsp + 0xd28], rcx
movzx ecx, al
mov rax, qword [rsp + 0xd28]
shl rax, cl
mov rcx, qword [rsp + 0x130]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x128], rax
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x128]
mov qword [rax], rcx
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0xffff3e00
or eax, 4
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rcx, qword [rsp + 0x68]
call fcn.14021afa0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
mov rcx, qword [rsp + 0x68]
add rax, qword [rcx]
mov rcx, qword [rsp + 0x68]
mov qword [rcx], rax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 4
test eax, eax
jne 0x14020ff1b
movzx r8d, byte [rsp + 0x51]
mov dl, 0x43
mov rcx, qword [rsp + 0x68]
call fcn.140198ed0
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 4
test eax, eax
jne 0x14020ff1b
mov rax, qword [rsp + 0x38]
cmp dword [rax + 8], 0
jne 0x14020ff16
mov dword [rsp + 0x40], SafeArrayGetElement
jmp 0x140217e06
jmp 0x14020e61b
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 0xffff3e00
or eax, 4
mov rcx, qword [rsp + 0x68]
mov word [rcx + 8], ax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 4
test eax, eax
je 0x14020ff71
mov rcx, qword [rsp + 0x68]
call fcn.14021b2b0
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 0x4000
test eax, eax
je 0x14020ffb8
mov rcx, qword [rsp + 0x68]
call fcn.14021a910
mov dword [rsp + 0xd30], eax
jmp 0x14020ffc3
mov dword [rsp + 0xd30], 0
mov eax, dword [rsp + 0xd30]
mov dword [rsp + 0x40], eax
movzx r8d, byte [rsp + 0x51]
mov rax, qword [rsp + 0x38]
movzx edx, byte [rax + 8]
mov rcx, qword [rsp + 0x68]
call fcn.14021a670
cmp dword [rsp + 0x40], 0
je 0x14020fff3
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
mov word [rsp + 0x150], ax
mov rax, qword [rsp + 0x78]
movzx eax, word [rax + 8]
mov word [rsp + 0x154], ax
movzx eax, word [rsp + 0x150]
movzx ecx, word [rsp + 0x154]
or eax, ecx
and eax, 1
test eax, eax
je 0x140210140
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 0x80
test eax, eax
je 0x1402100c7
movzx eax, word [rsp + 0x150]
movzx ecx, word [rsp + 0x154]
and eax, ecx
and eax, 1
test eax, eax
je 0x1402100ba
movzx eax, word [rsp + 0x154]
and eax, 0x100
test eax, eax
jne 0x1402100ba
mov dword [rsp + 0x144], 0
jmp 0x1402100c5
mov dword [rsp + 0x144], 1
jmp 0x14021013b
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 0x20
test eax, eax
je 0x140210121
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov dword [rsp + 0x54], 1
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0xffff3e00
or eax, 1
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
jmp 0x140210136
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 0x10
test eax, eax
je 0x140210136
jmp 0x14020e61b
jmp case.0x14020e4f9.82
jmp 0x140210316
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 0x47
mov byte [rsp + 0x14c], al
movsx eax, byte [rsp + 0x14c]
cmp eax, 0x43
jl 0x14021023a
movzx eax, word [rsp + 0x150]
movzx ecx, word [rsp + 0x154]
or eax, ecx
and eax, 2
test eax, eax
je 0x1402101c6
movzx eax, word [rsp + 0x150]
and eax, 0xe
cmp eax, 2
jne 0x1402101aa
xor edx, edx
mov rcx, qword [rsp + 0x68]
call fcn.140198fb0
mov rax, qword [rsp + 0x78]
movzx eax, word [rax + 8]
mov word [rsp + 0x154], ax
movzx eax, word [rsp + 0x154]
and eax, 0xe
cmp eax, 2
jne 0x1402101c6
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.140198fb0
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
mov rcx, qword [rsp + 0x78]
movzx ecx, word [rcx + 8]
and eax, ecx
and eax, 4
test eax, eax
je 0x140210235
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
cmp qword [rax], rcx
jle 0x140210203
mov dword [rsp + 0x144], 1
jmp 0x140210316
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
cmp qword [rax], rcx
jge 0x140210225
mov dword [rsp + 0x144], 0xffffffff
jmp 0x140210316
mov dword [rsp + 0x144], 0
jmp 0x140210316
jmp 0x1402102f7
movsx eax, byte [rsp + 0x14c]
cmp eax, 0x42
jne 0x1402102f7
movzx eax, word [rsp + 0x150]
and eax, 2
test eax, eax
jne 0x1402102a1
movzx eax, word [rsp + 0x150]
and eax, 0xc
test eax, eax
je 0x1402102a1
mov r8b, 1
movzx edx, byte [rsp + 0x51]
mov rcx, qword [rsp + 0x68]
call fcn.14021bae0
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 0xffff3e00
movzx ecx, word [rsp + 0x150]
and ecx, 0xc1ff
or eax, ecx
mov word [rsp + 0x150], ax
movzx eax, word [rsp + 0x154]
and eax, 2
test eax, eax
jne 0x1402102f7
movzx eax, word [rsp + 0x154]
and eax, 0xc
test eax, eax
je 0x1402102f7
mov r8b, 1
movzx edx, byte [rsp + 0x51]
mov rcx, qword [rsp + 0x78]
call fcn.14021bae0
mov rax, qword [rsp + 0x78]
movzx eax, word [rax + 8]
and eax, 0xffff3e00
movzx ecx, word [rsp + 0x154]
and ecx, 0xc1ff
or eax, ecx
mov word [rsp + 0x154], ax
mov rax, qword [rsp + 0x38]
mov r8, qword [rax + 0x10]
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x78]
call fcn.1401f26b0
mov dword [rsp + 0x144], eax
cmp dword [rsp + 0x144], 0
jge 0x140210341
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
sub eax, 0x34
cdqe
lea rcx, [0x1402b0aa4]
movzx eax, byte [rcx + rax]
mov dword [rsp + 0x148], eax
jmp 0x14021038b
cmp dword [rsp + 0x144], 0
jne 0x14021036c
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
sub eax, 0x34
cdqe
lea rcx, [0x1402b0aac]
movzx eax, byte [rcx + rax]
mov dword [rsp + 0x148], eax
jmp 0x14021038b
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
sub eax, 0x34
cdqe
lea rcx, [0x1402b0ab4]
movzx eax, byte [rcx + rax]
mov dword [rsp + 0x148], eax
mov rax, qword [rsp + 0x68]
movzx ecx, word [rsp + 0x150]
mov word [rax + 8], cx
mov rax, qword [rsp + 0x78]
movzx ecx, word [rsp + 0x154]
mov word [rax + 8], cx
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 0x20
test eax, eax
je 0x14021046b
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov eax, dword [rsp + 0x144]
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 8
test eax, eax
je 0x140210436
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
cmp eax, 0x35
jne 0x140210416
mov dword [rsp + 0xd34], 1
jmp 0x140210421
mov dword [rsp + 0xd34], 0
mov eax, dword [rsp + 0x148]
cmp dword [rsp + 0xd34], eax
jne 0x140210436
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0xffff3e00
or eax, 4
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
movsxd rax, dword [rsp + 0x148]
mov rcx, qword [rsp + 0x80]
mov qword [rcx], rax
jmp 0x14021047a
cmp dword [rsp + 0x148], 0
je 0x14021047a
jmp 0x14020e61b
jmp case.0x14020e4f9.82
cmp dword [rsp + 0x54], 0
je 0x14021048b
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 1
test eax, eax
jne 0x1402104b3
mov qword [rsp + 0x188], 0
jmp 0x1402104d2
mov eax, reloc.OLEAUT32.dll_SafeArrayGetElement
imul rax, rax, 0xffffffffffffffff
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + rax + 0x10]
add rax, 4
mov qword [rsp + 0x188], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x158], eax
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 4]
mov dword [rsp + 0x160], eax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
mov dword [rsp + 0x164], eax
mov dword [rsp + 0x15c], 0
jmp 0x14021052d
mov eax, dword [rsp + 0x15c]
inc eax
mov dword [rsp + 0x15c], eax
mov eax, dword [rsp + 0x158]
cmp dword [rsp + 0x15c], eax
jge 0x14021063d
cmp qword [rsp + 0x188], 0
je 0x140210568
movsxd rax, dword [rsp + 0x15c]
mov rcx, qword [rsp + 0x188]
mov eax, dword [rcx + rax*4]
mov dword [rsp + 0xd38], eax
jmp 0x140210576
mov eax, dword [rsp + 0x15c]
mov dword [rsp + 0xd38], eax
mov eax, dword [rsp + 0xd38]
mov dword [rsp + 0x170], eax
movsxd rax, dword [rsp + 0x15c]
mov rcx, qword [rsp + 0x168]
mov rax, qword [rcx + rax*8 + 0x20]
mov qword [rsp + 0x178], rax
movsxd rax, dword [rsp + 0x15c]
mov rcx, qword [rsp + 0x168]
mov rcx, qword [rcx + 0x18]
movzx eax, byte [rcx + rax]
mov dword [rsp + 0x180], eax
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x164]
add ecx, eax
mov eax, ecx
cdqe
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov ecx, dword [rsp + 0x170]
mov edx, dword [rsp + 0x160]
add edx, ecx
mov ecx, edx
movsxd rcx, ecx
imul rcx, rcx, 0x38
mov rdx, qword [rsp + 0x60]
add rdx, rcx
mov rcx, rdx
mov r8, qword [rsp + 0x178]
mov rdx, rax
call fcn.1401f26b0
mov dword [rsp + 0x54], eax
cmp dword [rsp + 0x54], 0
je 0x140210638
cmp dword [rsp + 0x180], 0
je 0x140210636
mov eax, dword [rsp + 0x54]
neg eax
mov dword [rsp + 0x54], eax
jmp 0x14021063d
jmp 0x14021051d
jmp case.0x14020e4f9.82
cmp dword [rsp + 0x54], 0
jge 0x14021066b
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 4]
dec eax
cdqe
imul rax, rax, 0x18
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
jmp 0x1402106b4
cmp dword [rsp + 0x54], 0
jne 0x140210694
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
dec eax
cdqe
imul rax, rax, 0x18
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
jmp 0x1402106b4
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
dec eax
cdqe
imul rax, rax, 0x18
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov edx, 2
mov rcx, rax
call fcn.14020d590
mov dword [rsp + 0x190], eax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov edx, 2
mov rcx, rax
call fcn.14020d590
mov dword [rsp + 0x194], eax
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
cmp eax, 0x2c
jne 0x140210743
imul eax, dword [rsp + 0x190], 3
add eax, dword [rsp + 0x194]
cdqe
lea rcx, [0x1402b0ac0]
movzx eax, byte [rcx + rax]
mov dword [rsp + 0x190], eax
jmp 0x140210766
imul eax, dword [rsp + 0x190], 3
add eax, dword [rsp + 0x194]
cdqe
lea rcx, [0x1402b0ad0]
movzx eax, byte [rcx + rax]
mov dword [rsp + 0x190], eax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
cmp dword [rsp + 0x190], 2
jne 0x1402107b2
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0xffff3e00
or eax, 1
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
jmp 0x1402107e5
movsxd rax, dword [rsp + 0x190]
mov rcx, qword [rsp + 0x80]
mov qword [rcx], rax
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0xffff3e00
or eax, 4
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x38]
mov edx, dword [rcx + 0xc]
mov rcx, rax
call fcn.14020d590
mov rcx, qword [rsp + 0x38]
xor eax, dword [rcx + 0x10]
cdqe
mov rcx, qword [rsp + 0x38]
movsxd rcx, dword [rcx + 8]
imul rcx, rcx, 0x38
mov rdx, qword [rsp + 0x60]
add rdx, rcx
mov rcx, rdx
mov rdx, rax
call fcn.14021b3c0
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 1
test eax, eax
jne 0x1402108d0
xor edx, edx
mov rcx, qword [rsp + 0x68]
call fcn.14020d590
test eax, eax
jne 0x1402108ab
mov dword [rsp + 0xd3c], 1
jmp 0x1402108b6
mov dword [rsp + 0xd3c], 0
movsxd rax, dword [rsp + 0xd3c]
mov rdx, rax
mov rcx, qword [rsp + 0x80]
call fcn.14021b3c0
jmp 0x1402108dd
mov rcx, qword [rsp + 0x80]
call fcn.14021b430
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov rcx, qword [rsp + 0x80]
call fcn.14021b430
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 1
test eax, eax
jne 0x140210965
mov eax, 4
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
mov rcx, qword [rsp + 0x68]
call fcn.140219780
not rax
mov rcx, qword [rsp + 0x80]
mov qword [rcx], rax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0xee0]
cmp qword [rax + 0x100], 0
je 0x140210a9a
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x68]
mov rcx, qword [rsp + 0x38]
sub rcx, rax
mov rax, rcx
cqo
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
idiv rcx
mov dword [rsp + 0x198], eax
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0xd40], rax
xor edx, edx
mov eax, dword [rsp + 0x198]
mov ecx, 8
div ecx
mov eax, eax
mov rcx, qword [rsp + 0xd40]
mov rcx, qword [rcx + 0x30]
movzx eax, byte [rcx + rax]
mov ecx, dword [rsp + 0x198]
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, edx
and eax, ecx
test eax, eax
je 0x1402109ff
jmp 0x14020e61b
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0xd48], rax
xor edx, edx
mov eax, dword [rsp + 0x198]
mov ecx, 8
div ecx
mov eax, eax
mov rcx, qword [rsp + 0xd48]
mov rcx, qword [rcx + 0x30]
mov qword [rsp + 0xd50], rcx
mov edx, dword [rsp + 0x198]
and edx, 7
mov edi, 1
movzx ecx, dl
mov edx, edi
shl edx, cl
mov ecx, edx
mov rdx, qword [rsp + 0xd50]
movzx eax, byte [rdx + rax]
or eax, ecx
mov dword [rsp + 0xd58], eax
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x100]
xor edx, edx
mov eax, dword [rsp + 0x198]
mov edi, 8
div edi
mov eax, eax
mov rcx, qword [rcx + 0x30]
mov edx, dword [rsp + 0xd58]
mov byte [rcx + rax], dl
jmp 0x140210ac2
mov eax, reloc.OLEAUT32.dll_SafeArrayGetElement
imul rax, rax, 0
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x68]
mov rdx, qword [rsp + 0x38]
mov edx, dword [rdx + 4]
cmp dword [rcx + rax + 4], edx
jne 0x140210ac2
jmp 0x14020e61b
mov eax, reloc.OLEAUT32.dll_SafeArrayGetElement
imul rax, rax, 0
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x68]
mov rdx, qword [rsp + 0x38]
mov eax, dword [rcx + rax + 4]
mov dword [rdx + 4], eax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x38]
mov edx, dword [rcx + 0xc]
mov rcx, rax
call fcn.14020d590
mov dword [rsp + 0x19c], eax
cmp dword [rsp + 0x19c], 0
je 0x140210b26
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
cmp dword [rax + 0xc], 0
jne 0x140210b43
mov dword [rsp + 0xd5c], 1
jmp 0x140210b4e
mov dword [rsp + 0xd5c], 0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov edx, dword [rsp + 0xd5c]
mov rcx, rax
call fcn.14020d590
test eax, eax
jne 0x140210b86
mov dword [rsp + 0xd60], 1
jmp 0x140210b91
mov dword [rsp + 0xd60], 0
mov eax, dword [rsp + 0xd60]
mov dword [rsp + 0x1a0], eax
cmp dword [rsp + 0x1a0], 0
je 0x140210bae
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 1
test eax, eax
je 0x140210be5
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 1
test eax, eax
jne 0x140210c1c
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 2]
test eax, eax
je 0x140210c6a
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov rcx, rax
call fcn.14021b430
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
mov dword [rsp + 0x1b4], eax
lea rdx, [rsp + 0x1b4]
lea rcx, [rsp + 0x1d8]
call fcn.14020dda0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140210cc7
jmp 0x140217e06
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0x1d8]
mov rax, qword [rax + 0x60]
mov qword [rsp + 0x1f0], rax
mov rax, qword [rsp + 0x1d8]
mov rcx, qword [rsp + 0xee0]
mov ecx, dword [rcx + 0x30]
cmp dword [rax + 0x28], ecx
je 0x140210f7d
mov rax, qword [rsp + 0x1d8]
movzx eax, byte [rax + 2]
test eax, eax
je 0x140210db8
mov rax, qword [rsp + 0x1d8]
movzx eax, byte [rax]
cmp eax, 3
jne 0x140210da4
mov rax, qword [rsp + 0x1d8]
movsxd rax, dword [rax + 0x2c]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x298], rax
mov rax, qword [rsp + 0x1d8]
mov rcx, qword [rsp + 0x298]
mov ecx, dword [rcx + 0xc]
mov dword [rax + 0x74], ecx
mov rax, qword [rsp + 0x1d8]
mov rcx, qword [rsp + 0x1d8]
mov ecx, dword [rcx + 0x74]
mov dword [rax + 0x70], ecx
mov rax, qword [rsp + 0x1d8]
mov rcx, qword [rsp + 0x298]
mov rcx, qword [rcx + 0x10]
mov qword [rax + 0x68], rcx
jmp 0x140210db6
mov rcx, qword [rsp + 0x200]
call fcn.14021b430
jmp 0x14021161e
jmp 0x140210e30
mov rax, qword [rsp + 0x1d8]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x1e8], rax
mov rcx, qword [rsp + 0x1e8]
call fcn.1401d6620
mov rcx, qword [rsp + 0x1d8]
mov dword [rcx + 0x70], eax
mov rax, qword [rsp + 0x1d8]
add rax, 0x74
mov rdx, rax
mov rcx, qword [rsp + 0x1e8]
call fcn.1401d65e0
mov rcx, qword [rsp + 0x1d8]
mov qword [rcx + 0x68], rax
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x1d8]
mov rdx, qword [rsp + 0x48]
mov eax, dword [rdx + rax + 0x7c]
cmp dword [rcx + 0x70], eax
jbe 0x140210e30
jmp 0x140217f53
mov rax, qword [rsp + 0x1d8]
mov rcx, qword [rsp + 0xee0]
mov ecx, dword [rcx + 0x30]
mov dword [rax + 0x28], ecx
mov rax, qword [rsp + 0x1d8]
mov rax, qword [rax + 0x68]
movzx eax, byte [rax]
cmp eax, 0x80
jge 0x140210e8c
mov rax, qword [rsp + 0x1d8]
mov rax, qword [rax + 0x68]
movzx eax, byte [rax]
mov ecx, 4
imul rcx, rcx, 0
mov rdx, qword [rsp + 0x1f0]
mov dword [rdx + rcx], eax
mov dword [rsp + 0xd64], 1
jmp 0x140210ec1
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x1f0]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rax, qword [rsp + 0x1d8]
mov rcx, qword [rax + 0x68]
call fcn.1401ec8b0
movzx eax, al
mov dword [rsp + 0xd64], eax
movzx eax, byte [rsp + 0xd64]
mov rcx, qword [rsp + 0x1d8]
mov dword [rcx + 0x48], eax
xor eax, eax
mov rcx, qword [rsp + 0x1d8]
mov word [rcx + 0x52], ax
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x1d8]
mov rdx, qword [rsp + 0x1f0]
mov eax, dword [rdx + rax]
cmp dword [rcx + 0x74], eax
jae 0x140210f64
mov rax, qword [rsp + 0x1d8]
mov qword [rax + 0x68], 0
mov rax, qword [rsp + 0x1d8]
mov dword [rax + 0x74], 0
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x1f0]
cmp dword [rcx + rax], 0x18003
ja 0x140210f5d
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x1f0]
mov rdx, qword [rsp + 0x1d8]
mov edx, dword [rdx + 0x70]
cmp dword [rcx + rax], edx
jbe 0x140210f62
jmp 0x140211623
jmp 0x140210f7d
mov rax, qword [rsp + 0x1d8]
mov rax, qword [rax + 0x68]
mov qword [rsp + 0x258], rax
jmp 0x140211044
mov rax, qword [rsp + 0x1d8]
movzx eax, word [rax + 0x52]
cmp eax, dword [rsp + 0x1b4]
jg 0x140211340
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x1d8]
mov rdx, qword [rsp + 0x1f0]
mov eax, dword [rdx + rax]
cmp dword [rcx + 0x48], eax
jae 0x1402112e0
mov rax, qword [rsp + 0x1d8]
cmp qword [rax + 0x68], 0
jne 0x140211030
lea rax, [rsp + 0x218]
mov rdi, rax
xor eax, eax
mov ecx, 0x38
rep stosb byte [rdi], al
mov eax, 4
imul rax, rax, 0
lea r9, [rsp + 0x218]
mov rcx, qword [rsp + 0x1f0]
mov r8d, dword [rcx + rax]
xor edx, edx
mov rax, qword [rsp + 0x1d8]
mov rcx, qword [rax + 0x38]
call fcn.14021ab20
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x14021101e
jmp 0x140217e06
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0x258], rax
jmp 0x140211044
mov rax, qword [rsp + 0x1d8]
mov rax, qword [rax + 0x68]
mov qword [rsp + 0x258], rax
mov rax, qword [rsp + 0x1d8]
movzx eax, word [rax + 0x52]
mov dword [rsp + 0x1fc], eax
movsxd rax, dword [rsp + 0x1fc]
mov rcx, qword [rsp + 0x1f0]
mov eax, dword [rcx + rax*4]
mov qword [rsp + 0x270], rax
mov rax, qword [rsp + 0x1d8]
mov eax, dword [rax + 0x48]
mov rcx, qword [rsp + 0x258]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x260], rax
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x1f0]
mov eax, dword [rcx + rax]
mov rcx, qword [rsp + 0x258]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x268], rax
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x260]
movzx eax, byte [rcx + rax]
mov dword [rsp + 0x284], eax
cmp dword [rsp + 0x284], 0x80
jae 0x140211121
mov rax, qword [rsp + 0x260]
inc rax
mov qword [rsp + 0x260], rax
movzx ecx, byte [rsp + 0x284]
call fcn.14021c950
movzx eax, al
mov rcx, qword [rsp + 0x270]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x270], rax
jmp 0x140211173
lea rdx, [rsp + 0x284]
mov rcx, qword [rsp + 0x260]
call fcn.1401ec8b0
movzx eax, al
mov rcx, qword [rsp + 0x260]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x260], rax
mov ecx, dword [rsp + 0x284]
call fcn.14021dee0
mov eax, eax
mov rcx, qword [rsp + 0x270]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x270], rax
movsxd rax, dword [rsp + 0x1fc]
mov rcx, qword [rsp + 0x1d8]
mov edx, dword [rsp + 0x284]
mov dword [rcx + rax*4 + 0x78], edx
mov eax, dword [rsp + 0x1fc]
inc eax
mov dword [rsp + 0x1fc], eax
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x270]
and rcx, rax
mov rax, rcx
movsxd rcx, dword [rsp + 0x1fc]
mov rdx, qword [rsp + 0x1f0]
mov dword [rdx + rcx*4], eax
mov eax, dword [rsp + 0x1b4]
cmp dword [rsp + 0x1fc], eax
jg 0x1402111ea
mov rax, qword [rsp + 0x268]
cmp qword [rsp + 0x260], rax
jb 0x1402110bd
mov rax, qword [rsp + 0x268]
cmp qword [rsp + 0x260], rax
jb 0x140211223
mov rax, qword [rsp + 0x268]
cmp qword [rsp + 0x260], rax
ja 0x140211238
mov rax, qword [rsp + 0x1d8]
mov eax, dword [rax + 0x70]
cmp qword [rsp + 0x270], rax
jne 0x140211238
mov rax, qword [rsp + 0x1d8]
mov eax, dword [rax + 0x70]
cmp qword [rsp + 0x270], rax
jbe 0x14021128d
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x1f0]
cmp dword [rcx + rax], 0
jne 0x14021126c
mov dword [rsp + 0x1fc], 0
mov rax, qword [rsp + 0x268]
mov qword [rsp + 0x260], rax
jmp 0x14021128d
mov rax, qword [rsp + 0x1d8]
cmp qword [rax + 0x68], 0
jne 0x140211288
lea rcx, [rsp + 0x218]
call fcn.14021b310
jmp 0x140211623
mov rax, qword [rsp + 0x1d8]
movzx ecx, word [rsp + 0x1fc]
mov word [rax + 0x52], cx
mov rax, qword [rsp + 0x258]
mov rcx, qword [rsp + 0x260]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x1d8]
mov dword [rcx + 0x48], eax
mov rax, qword [rsp + 0x1d8]
cmp qword [rax + 0x68], 0
jne 0x1402112de
lea rcx, [rsp + 0x218]
call fcn.14021b310
jmp 0x1402112eb
mov dword [rsp + 0x284], 0
mov rax, qword [rsp + 0x1d8]
movzx eax, word [rax + 0x52]
cmp eax, dword [rsp + 0x1b4]
jg 0x14021133e
mov rax, qword [rsp + 0x38]
movsx eax, byte [rax + 1]
cmp eax, 0xfffffff5
jne 0x14021132c
mov r8d, 0x800
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax + 0x10]
mov rcx, qword [rsp + 0x200]
call fcn.14021ba30
jmp 0x140211339
mov rcx, qword [rsp + 0x200]
call fcn.14021b430
jmp 0x14021161e
jmp 0x14021135b
movsxd rax, dword [rsp + 0x1b4]
mov rcx, qword [rsp + 0x1d8]
mov eax, dword [rcx + rax*4 + 0x78]
mov dword [rsp + 0x284], eax
mov rax, qword [rsp + 0x200]
movzx eax, word [rax + 8]
and eax, 0x2460
test eax, eax
je 0x14021137d
mov rcx, qword [rsp + 0x200]
call fcn.14021b430
mov eax, dword [rsp + 0x1b4]
inc eax
cdqe
mov rcx, qword [rsp + 0x1d8]
mov rdx, qword [rsp + 0x1f0]
mov eax, dword [rdx + rax*4]
cmp dword [rcx + 0x74], eax
jb 0x140211515
movsxd rax, dword [rsp + 0x1b4]
mov rcx, qword [rsp + 0x1f0]
mov eax, dword [rcx + rax*4]
mov rcx, qword [rsp + 0x1d8]
add rax, qword [rcx + 0x68]
mov qword [rsp + 0x258], rax
cmp dword [rsp + 0x284], 0xc
jae 0x1402113f6
mov r8, qword [rsp + 0x200]
mov edx, dword [rsp + 0x284]
mov rcx, qword [rsp + 0x258]
call fcn.14021d870
jmp 0x140211510
mov eax, dword [rsp + 0x284]
sub eax, 0xc
xor edx, edx
mov ecx, 2
div ecx
mov dword [rsp + 0x1f8], eax
mov rax, qword [rsp + 0x200]
mov ecx, dword [rsp + 0x1f8]
mov dword [rax + 0xc], ecx
mov rax, qword [rsp + 0x200]
movzx ecx, byte [rsp + 0x51]
mov byte [rax + 0xa], cl
mov eax, dword [rsp + 0x1f8]
add eax, 2
mov rcx, qword [rsp + 0x200]
cmp dword [rcx + 0x20], eax
jge 0x140211481
mov eax, 1
mov rcx, qword [rsp + 0x200]
mov word [rcx + 8], ax
mov eax, dword [rsp + 0x1f8]
add eax, 2
xor r8d, r8d
mov edx, eax
mov rcx, qword [rsp + 0x200]
call fcn.14021ac20
test eax, eax
je 0x14021147f
jmp 0x140217f74
jmp 0x140211499
mov rax, qword [rsp + 0x200]
mov rcx, qword [rsp + 0x200]
mov rcx, qword [rcx + 0x18]
mov qword [rax + 0x10], rcx
movsxd rax, dword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x200]
mov rdi, qword [rcx + 0x10]
mov rsi, qword [rsp + 0x258]
mov rcx, rax
rep movsb byte [rdi], byte [rsi]
movsxd rax, dword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x200]
mov rcx, qword [rcx + 0x10]
mov byte [rcx + rax], 0
mov eax, dword [rsp + 0x1f8]
inc eax
cdqe
mov rcx, qword [rsp + 0x200]
mov rcx, qword [rcx + 0x10]
mov byte [rcx + rax], 0
mov eax, dword [rsp + 0x284]
and eax, 1
mov eax, eax
lea rcx, [0x1402b0a54]
mov rdx, qword [rsp + 0x200]
movzx eax, word [rcx + rax*2]
mov word [rdx + 8], ax
jmp 0x14021161e
mov rax, qword [rsp + 0x200]
movzx ecx, byte [rsp + 0x51]
mov byte [rax + 0xa], cl
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 0xc0
test eax, eax
je 0x140211561
cmp dword [rsp + 0x284], 0xc
jb 0x14021154f
mov eax, dword [rsp + 0x284]
and eax, 1
test eax, eax
je 0x14021157e
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 0x80
test eax, eax
jne 0x14021157e
mov ecx, dword [rsp + 0x284]
call fcn.14021dee0
mov dword [rsp + 0x1f8], eax
cmp dword [rsp + 0x1f8], 0
jne 0x14021159e
mov r8, qword [rsp + 0x200]
mov edx, dword [rsp + 0x284]
lea rcx, [0x14033b9a0]
call fcn.14021d870
jmp 0x14021161e
movsxd rax, dword [rsp + 0x1b4]
mov r9, qword [rsp + 0x200]
mov r8d, dword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x1f0]
mov edx, dword [rcx + rax*4]
mov rax, qword [rsp + 0x1d8]
mov rcx, qword [rax + 0x38]
call fcn.14021ab20
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x1402115e2
jmp 0x140217e06
mov r8, qword [rsp + 0x200]
mov edx, dword [rsp + 0x284]
mov rax, qword [rsp + 0x200]
mov rcx, qword [rax + 0x10]
call fcn.14021d870
mov rax, qword [rsp + 0x200]
movzx eax, word [rax + 8]
btr eax, 0xc
mov rcx, qword [rsp + 0x200]
mov word [rcx + 8], ax
jmp case.0x14020e4f9.82
mov eax, reloc.OLEAUT32.dll_SafeArrayGetElement
imul rax, rax, 0
mov rcx, qword [rsp + 0x30]
cmp dword [rcx + rax + 0xc], 0
jle 0x140211669
mov eax, reloc.OLEAUT32.dll_SafeArrayGetElement
imul rax, rax, 0
mov rcx, qword [rsp + 0x30]
mov eax, dword [rcx + rax + 0xc]
dec eax
cdqe
imul rax, rax, 0x18
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
jmp case.0x14020e4f9.82
mov ecx, 0x14813
call fcn.1401d9620
mov dword [rsp + 0x40], eax
jmp 0x140217e06
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x2a0]
movzx eax, byte [rax]
mov byte [rsp + 0xd68], al
mov rax, qword [rsp + 0x2a0]
inc rax
mov qword [rsp + 0x2a0], rax
movzx r8d, byte [rsp + 0x51]
movzx edx, byte [rsp + 0xd68]
mov rcx, qword [rsp + 0x68]
call fcn.140198ed0
mov rax, qword [rsp + 0x68]
add rax, 0x38
mov qword [rsp + 0x68], rax
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x2a0]
movsx eax, byte [rcx + rax]
test eax, eax
jne 0x1402116aa
jmp case.0x14020e4f9.82
mov qword [rsp + 0x2b8], 0
mov dword [rsp + 0x2c0], 0
mov qword [rsp + 0x2d0], 0
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 4]
mov dword [rsp + 0x2f0], eax
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x2f8], rax
movsxd rax, dword [rsp + 0x2f0]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x2e0], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
mov dword [rsp + 0x2f0], eax
mov eax, dword [rsp + 0x2f0]
dec eax
cdqe
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x2e0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0xee0]
movzx eax, byte [rax + 0xbf]
mov dword [rsp + 0x300], eax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
cmp qword [rsp + 0x2f8], 0
je 0x14021187b
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x2b0], rax
mov rax, qword [rsp + 0x2f8]
movzx eax, byte [rax]
mov byte [rsp + 0xd69], al
mov rax, qword [rsp + 0x2f8]
inc rax
mov qword [rsp + 0x2f8], rax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0xd70], rax
mov rax, qword [rsp + 0x2b0]
add rax, 0x38
mov qword [rsp + 0x2b0], rax
movzx r8d, byte [rsp + 0x51]
movzx edx, byte [rsp + 0xd69]
mov rcx, qword [rsp + 0xd70]
call fcn.140198ed0
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x2f8]
movsx eax, byte [rcx + rax]
test eax, eax
jne 0x1402117fe
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x2b0], rax
lea r8, [rsp + 0x314]
mov edx, dword [rsp + 0x300]
mov rcx, qword [rsp + 0x2b0]
call fcn.14021dcf0
mov dword [rsp + 0x2dc], eax
mov rax, qword [rsp + 0x2b0]
movzx eax, word [rax + 8]
and eax, 0x4000
test eax, eax
je 0x14021193a
cmp dword [rsp + 0x2dc], 0
jne 0x1402118da
mov dword [rsp + 0x2dc], 0xa
jmp 0x14021193a
cmp qword [rsp + 0x2b8], 0
je 0x1402118fd
mov rcx, qword [rsp + 0x2b0]
call fcn.14021a910
test eax, eax
je 0x1402118fb
jmp 0x140217f74
jmp 0x14021193a
mov rax, qword [rsp + 0x2b0]
movsxd rax, dword [rax]
mov rcx, qword [rsp + 0x2d0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x2d0], rax
mov rax, qword [rsp + 0x2b0]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x314]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x314], eax
mov eax, dword [rsp + 0x314]
mov rcx, qword [rsp + 0x2b8]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x2b8], rax
cmp dword [rsp + 0x2dc], 0x7f
ja 0x14021196e
mov dword [rsp + 0xd78], 1
jmp 0x140211983
mov eax, dword [rsp + 0x2dc]
mov ecx, eax
call fcn.14020cde0
mov dword [rsp + 0xd78], eax
mov eax, dword [rsp + 0xd78]
mov ecx, dword [rsp + 0x2c0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2c0], eax
mov rax, qword [rsp + 0x2b0]
mov ecx, dword [rsp + 0x2dc]
mov dword [rax + 0x24], ecx
mov rax, qword [rsp + 0x2e0]
cmp qword [rsp + 0x2b0], rax
jne 0x1402119c2
jmp 0x1402119e1
mov rax, qword [rsp + 0x2b0]
sub rax, 0x38
mov qword [rsp + 0x2b0], rax
xor eax, eax
cmp eax, 1
jne 0x14021188b
cmp dword [rsp + 0x2c0], 0x7e
jg 0x1402119fd
mov eax, dword [rsp + 0x2c0]
inc eax
mov dword [rsp + 0x2c0], eax
jmp 0x140211a56
movsxd rax, dword [rsp + 0x2c0]
mov rcx, rax
call fcn.14020cde0
mov dword [rsp + 0x2d8], eax
mov eax, dword [rsp + 0x2d8]
mov ecx, dword [rsp + 0x2c0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2c0], eax
movsxd rax, dword [rsp + 0x2c0]
mov rcx, rax
call fcn.14020cde0
cmp dword [rsp + 0x2d8], eax
jge 0x140211a56
mov eax, dword [rsp + 0x2c0]
inc eax
mov dword [rsp + 0x2c0], eax
movsxd rax, dword [rsp + 0x2c0]
add rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0x2d0]
mov rcx, qword [rsp + 0x2c8]
add rcx, rax
mov rax, rcx
mov ecx, 4
imul rcx, rcx, 0
mov rdx, qword [rsp + 0x48]
movsxd rcx, dword [rdx + rcx + 0x7c]
cmp rax, rcx
jle 0x140211aa1
jmp 0x140217f53
mov edx, dword [rsp + 0x2c8]
mov rcx, qword [rsp + 0x80]
call fcn.14021a7d0
test eax, eax
je 0x140211abe
jmp 0x140217f74
mov rax, qword [rsp + 0x80]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x2a8], rax
cmp dword [rsp + 0x2c0], 0x80
jae 0x140211afe
mov rax, qword [rsp + 0x2a8]
movzx ecx, byte [rsp + 0x2c0]
mov byte [rax], cl
mov dword [rsp + 0xd7c], 1
jmp 0x140211b1d
movsxd rax, dword [rsp + 0x2c0]
mov rdx, rax
mov rcx, qword [rsp + 0x2a8]
call fcn.1401fe1d0
mov dword [rsp + 0xd7c], eax
movzx eax, byte [rsp + 0xd7c]
mov dword [rsp + 0x304], eax
mov eax, dword [rsp + 0x2c0]
mov dword [rsp + 0x308], eax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x2b0], rax
mov rax, qword [rsp + 0x2b0]
mov eax, dword [rax + 0x24]
mov dword [rsp + 0x2dc], eax
cmp dword [rsp + 0x2dc], 0x80
jae 0x140211b91
movsxd rax, dword [rsp + 0x304]
mov rcx, qword [rsp + 0x2a8]
movzx edx, byte [rsp + 0x2dc]
mov byte [rcx + rax], dl
mov dword [rsp + 0xd80], 1
jmp 0x140211bbc
mov eax, dword [rsp + 0x2dc]
movsxd rcx, dword [rsp + 0x304]
mov rdx, qword [rsp + 0x2a8]
add rdx, rcx
mov rcx, rdx
mov edx, eax
call fcn.1401fe1d0
mov dword [rsp + 0xd80], eax
movzx eax, byte [rsp + 0xd80]
mov ecx, dword [rsp + 0x304]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x304], eax
movsxd rax, dword [rsp + 0x308]
mov rcx, qword [rsp + 0x2a8]
add rcx, rax
mov rax, rcx
mov r8d, dword [rsp + 0x2dc]
mov rdx, qword [rsp + 0x2b0]
mov rcx, rax
call fcn.14021dbe0
mov ecx, dword [rsp + 0x308]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x308], eax
mov rax, qword [rsp + 0x2b0]
add rax, 0x38
mov qword [rsp + 0x2b0], rax
mov rax, qword [rsp + 0x2e8]
cmp qword [rsp + 0x2b0], rax
jbe 0x140211b4a
mov rax, qword [rsp + 0x80]
mov ecx, dword [rsp + 0x2c8]
mov dword [rax + 0xc], ecx
mov eax, send
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
cmp qword [rsp + 0x2d0], 0
je 0x140211c9b
mov rax, qword [rsp + 0x80]
mov ecx, dword [rsp + 0x2d0]
mov dword [rax], ecx
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
bts eax, 0xe
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x348], rax
mov qword [rsp + 0x338], 0
lea rdx, [rsp + 0x338]
mov rcx, qword [rsp + 0x348]
call fcn.1401d2e90
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140211cf9
jmp 0x140217e06
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x338]
mov qword [rax], rcx
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 4]
mov dword [rsp + 0x350], eax
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x358], rax
cmp dword [rsp + 0x350], 0
jne 0x140211ee0
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc4], 0
jle 0x140211d88
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
mov dword [rsp + 0x40], 5
jmp 0x140211edb
mov rcx, qword [rsp + 0x358]
call fcn.140206680
mov dword [rsp + 0x360], eax
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x290]
mov rcx, qword [rsp + 0x48]
add eax, dword [rcx + 0x28c]
mov r8d, eax
xor edx, edx
mov rcx, qword [rsp + 0x48]
call fcn.140220fe0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140211dd1
jmp 0x140217e06
movsxd rax, dword [rsp + 0x360]
add rax, 0x21
mov rdx, rax
mov rcx, qword [rsp + 0x48]
call fcn.1401dbb60
mov qword [rsp + 0x368], rax
cmp qword [rsp + 0x368], 0
je 0x140211edb
mov eax, 0x20
imul rax, rax, 1
mov rcx, qword [rsp + 0x368]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x368]
mov qword [rcx], rax
mov eax, dword [rsp + 0x360]
inc eax
cdqe
mov rcx, qword [rsp + 0x368]
mov rdi, qword [rcx]
mov rsi, qword [rsp + 0x358]
mov rcx, rax
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x5f]
test eax, eax
je 0x140211e67
mov rax, qword [rsp + 0x48]
mov byte [rax + 0x5f], 0
mov rax, qword [rsp + 0x48]
mov byte [rax + 0x67], 1
jmp 0x140211e7f
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x28c]
inc eax
mov rcx, qword [rsp + 0x48]
mov dword [rcx + 0x28c], eax
mov rax, qword [rsp + 0x368]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x280]
mov qword [rax + 0x18], rcx
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x368]
mov qword [rax + 0x280], rcx
mov rax, qword [rsp + 0x368]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x298]
mov qword [rax + 8], rcx
mov rax, qword [rsp + 0x368]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x2a0]
mov qword [rax + 0x10], rcx
jmp 0x14021238d
mov dword [rsp + 0x380], 0
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x280]
mov qword [rsp + 0x370], rax
jmp 0x140211f15
mov rax, qword [rsp + 0x370]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x370], rax
cmp qword [rsp + 0x370], 0
je 0x140211f4e
mov rdx, qword [rsp + 0x358]
mov rax, qword [rsp + 0x370]
mov rcx, qword [rax]
call fcn.140206590
test eax, eax
je 0x140211f4e
mov eax, dword [rsp + 0x380]
inc eax
mov dword [rsp + 0x380], eax
jmp 0x140211f01
cmp qword [rsp + 0x370], 0
jne 0x140211f82
mov r8, qword [rsp + 0x358]
lea rdx, str.no_such_savepoint:__s
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
mov dword [rsp + 0x40], 1
jmp 0x14021238d
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc4], 0
jle 0x140211fbb
cmp dword [rsp + 0x350], 1
jne 0x140211fbb
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
mov dword [rsp + 0x40], 5
jmp 0x14021238d
mov rax, qword [rsp + 0x370]
cmp qword [rax + 0x18], 0
jne 0x140211fe4
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x67]
test eax, eax
je 0x140211fe4
mov dword [rsp + 0xd84], 1
jmp 0x140211fef
mov dword [rsp + 0xd84], 0
mov eax, dword [rsp + 0xd84]
mov dword [rsp + 0x388], eax
cmp dword [rsp + 0x388], 0
je 0x1402120bd
cmp dword [rsp + 0x350], 1
jne 0x1402120bd
mov edx, 1
mov rcx, qword [rsp + 0xee0]
call fcn.14020d9f0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x14021203b
jmp 0x140217f09
mov rax, qword [rsp + 0x48]
mov byte [rax + 0x5f], 1
mov rcx, qword [rsp + 0xee0]
call fcn.140218e70
cmp eax, 5
jne 0x1402120a0
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
sub rcx, rax
mov rax, rcx
cqo
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
idiv rcx
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x34], eax
mov rax, qword [rsp + 0x48]
mov byte [rax + 0x5f], 0
mov dword [rsp + 0x40], 5
mov rax, qword [rsp + 0xee0]
mov ecx, dword [rsp + 0x40]
mov dword [rax + 0x38], ecx
jmp 0x140217f09
mov rax, qword [rsp + 0x48]
mov byte [rax + 0x67], 0
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0x38]
mov dword [rsp + 0x40], eax
jmp 0x14021225a
mov rax, qword [rsp + 0x48]
mov ecx, dword [rsp + 0x380]
mov eax, dword [rax + 0x28c]
sub eax, ecx
dec eax
mov dword [rsp + 0x380], eax
cmp dword [rsp + 0x350], 2
jne 0x1402121b0
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x2c]
and eax, 1
test eax, eax
je 0x140212104
mov dword [rsp + 0xd88], 1
jmp 0x14021210f
mov dword [rsp + 0xd88], 0
mov eax, dword [rsp + 0xd88]
mov dword [rsp + 0x38c], eax
mov dword [rsp + 0x384], 0
jmp 0x14021213a
mov eax, dword [rsp + 0x384]
inc eax
mov dword [rsp + 0x384], eax
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x28]
cmp dword [rsp + 0x384], eax
jge 0x1402121ae
cmp dword [rsp + 0x38c], 0
jne 0x140212162
mov dword [rsp + 0xd8c], 1
jmp 0x14021216d
mov dword [rsp + 0xd8c], 0
movsxd rax, dword [rsp + 0x384]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
mov r8d, dword [rsp + 0xd8c]
mov edx, 0x204
mov rcx, qword [rcx + rax + 8]
call fcn.1401d7260
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x1402121a9
jmp 0x140217e06
jmp 0x14021212a
jmp 0x1402121bb
mov dword [rsp + 0x38c], 0
mov dword [rsp + 0x384], 0
jmp 0x1402121d8
mov eax, dword [rsp + 0x384]
inc eax
mov dword [rsp + 0x384], eax
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x28]
cmp dword [rsp + 0x384], eax
jge 0x140212229
movsxd rax, dword [rsp + 0x384]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
mov r8d, dword [rsp + 0x380]
mov edx, dword [rsp + 0x350]
mov rcx, qword [rcx + rax + 8]
call fcn.1401d6a70
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140212227
jmp 0x140217e06
jmp 0x1402121c8
cmp dword [rsp + 0x38c], 0
je 0x14021225a
mov rcx, qword [rsp + 0x48]
call fcn.1401df300
mov rcx, qword [rsp + 0x48]
call fcn.1401ff2a0
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x2c]
or eax, 1
mov rcx, qword [rsp + 0x48]
mov dword [rcx + 0x2c], eax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x370]
cmp qword [rax + 0x280], rcx
je 0x1402122c8
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x280]
mov qword [rsp + 0x378], rax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x378]
mov rcx, qword [rcx + 0x18]
mov qword [rax + 0x280], rcx
mov rdx, qword [rsp + 0x378]
mov rcx, qword [rsp + 0x48]
call fcn.1401dba20
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x28c]
dec eax
mov rcx, qword [rsp + 0x48]
mov dword [rcx + 0x28c], eax
jmp 0x14021225a
cmp dword [rsp + 0x350], 1
jne 0x140212320
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x370]
mov rcx, qword [rcx + 0x18]
mov qword [rax + 0x280], rcx
mov rdx, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x48]
call fcn.1401dba20
cmp dword [rsp + 0x388], 0
jne 0x14021231e
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x28c]
dec eax
mov rcx, qword [rsp + 0x48]
mov dword [rcx + 0x28c], eax
jmp 0x140212350
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x370]
mov rcx, qword [rcx + 8]
mov qword [rax + 0x298], rcx
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x370]
mov rcx, qword [rcx + 0x10]
mov qword [rax + 0x2a0], rcx
cmp dword [rsp + 0x388], 0
je 0x140212364
cmp dword [rsp + 0x350], 2
jne 0x14021238d
mov r8d, dword [rsp + 0x380]
mov edx, dword [rsp + 0x350]
mov rcx, qword [rsp + 0x48]
call fcn.140220fe0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x14021238d
jmp 0x140217e06
cmp dword [rsp + 0x40], 0
je 0x140212399
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 4]
mov dword [rsp + 0x390], eax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
mov dword [rsp + 0x394], eax
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x5f]
cmp dword [rsp + 0x390], eax
je 0x140212500
cmp dword [rsp + 0x394], 0
je 0x1402123f6
mov edx, 0x204
mov rcx, qword [rsp + 0x48]
call fcn.1401ffc10
mov rax, qword [rsp + 0x48]
mov byte [rax + 0x5f], 1
jmp 0x140212465
cmp dword [rsp + 0x390], 0
je 0x140212431
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc4], 0
jle 0x140212431
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
mov dword [rsp + 0x40], 5
jmp 0x140217e06
mov edx, 1
mov rcx, qword [rsp + 0xee0]
call fcn.14020d9f0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140212455
jmp 0x140217f09
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rsp + 0x390]
mov byte [rax + 0x5f], cl
mov rcx, qword [rsp + 0xee0]
call fcn.140218e70
cmp eax, 5
jne 0x1402124cc
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
sub rcx, rax
mov rax, rcx
cqo
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
idiv rcx
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x34], eax
mov eax, 1
sub eax, dword [rsp + 0x390]
mov rcx, qword [rsp + 0x48]
mov byte [rcx + 0x5f], al
mov dword [rsp + 0x40], 5
mov rax, qword [rsp + 0xee0]
mov ecx, dword [rsp + 0x40]
mov dword [rax + 0x38], ecx
jmp 0x140217f09
mov rcx, qword [rsp + 0x48]
call fcn.1401d7a10
mov rax, qword [rsp + 0xee0]
cmp dword [rax + 0x38], 0
jne 0x1402124ee
mov dword [rsp + 0x40], 0x65
jmp 0x1402124f6
mov dword [rsp + 0x40], 1
jmp 0x140217f09
cmp dword [rsp + 0x390], 0
jne 0x140212517
mov dword [rsp + 0xd90], 1
jmp 0x140212522
mov dword [rsp + 0xd90], 0
cmp dword [rsp + 0xd90], 0
je 0x14021253d
lea rax, str.cannot_start_a_transaction_within_a_transaction
mov qword [rsp + 0xd98], rax
jmp 0x140212577
cmp dword [rsp + 0x394], 0
je 0x140212558
lea rax, str.cannot_rollback___no_transaction_is_active
mov qword [rsp + 0xda0], rax
jmp 0x140212567
lea rax, str.cannot_commit___no_transaction_is_active
mov qword [rsp + 0xda0], rax
mov rax, qword [rsp + 0xda0]
mov qword [rsp + 0xd98], rax
mov rdx, qword [rsp + 0xd98]
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
mov dword [rsp + 0x40], 1
jmp 0x140217e06
mov rax, qword [rsp + 0x38]
cmp dword [rax + 8], 0
je 0x1402125c7
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x30]
and eax, 0x100000
test eax, eax
je 0x1402125c7
mov dword [rsp + 0x40], 8
jmp 0x140217e06
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
mov rax, qword [rcx + rax + 8]
mov qword [rsp + 0x398], rax
cmp qword [rsp + 0x398], 0
je 0x1402127aa
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 8]
mov rcx, qword [rsp + 0x398]
call fcn.1401d21f0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140212665
mov eax, dword [rsp + 0x40]
and eax, 0xff
cmp eax, 5
jne 0x140212660
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
sub rcx, rax
mov rax, rcx
cqo
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
idiv rcx
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x34], eax
mov rax, qword [rsp + 0xee0]
mov ecx, dword [rsp + 0x40]
mov dword [rax + 0x38], ecx
jmp 0x140217f09
jmp 0x140217e06
mov rax, qword [rsp + 0x38]
cmp dword [rax + 8], 0
je 0x140212769
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0xc4]
shr eax, 6
and eax, 1
test eax, eax
je 0x140212769
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x5f]
test eax, eax
je 0x1402126af
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc0], 1
jle 0x140212769
mov rax, qword [rsp + 0xee0]
cmp dword [rax + 0x40], 0
jne 0x1402126f6
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x290]
inc eax
mov rcx, qword [rsp + 0x48]
mov dword [rcx + 0x290], eax
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x28c]
mov rcx, qword [rsp + 0x48]
add eax, dword [rcx + 0x290]
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x40], eax
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0x40]
dec eax
mov r8d, eax
xor edx, edx
mov rcx, qword [rsp + 0x48]
call fcn.140220fe0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
jne 0x140212739
mov rax, qword [rsp + 0xee0]
mov edx, dword [rax + 0x40]
mov rcx, qword [rsp + 0x398]
call fcn.1401d2180
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x298]
mov qword [rax + 0x58], rcx
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x2a0]
mov qword [rax + 0x60], rcx
lea r8, [rsp + 0x3a4]
mov edx, 1
mov rcx, qword [rsp + 0x398]
call fcn.1401d3ca0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
mov rax, qword [rcx + rax + 0x18]
mov eax, dword [rax + 4]
mov dword [rsp + 0x3b4], eax
jmp 0x1402127c3
mov dword [rsp + 0x3a4], 0
mov eax, dword [rsp + 0x3a4]
mov dword [rsp + 0x3b4], eax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
test eax, eax
je 0x140212892
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
cmp dword [rsp + 0x3a4], eax
jne 0x1402127fa
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x10]
cmp dword [rsp + 0x3b4], eax
je 0x140212892
mov rax, qword [rsp + 0xee0]
mov rdx, qword [rax + 0x90]
mov rcx, qword [rsp + 0x48]
call fcn.1401dba20
lea rdx, str.database_schema_has_changed
mov rcx, qword [rsp + 0x48]
call fcn.1401dc030
mov rcx, qword [rsp + 0xee0]
mov qword [rcx + 0x90], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
mov rax, qword [rcx + rax + 0x18]
mov ecx, dword [rsp + 0x3a4]
cmp dword [rax], ecx
je 0x14021286b
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0x48]
call fcn.1401ff360
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0xc4]
or eax, 1
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0xc4], eax
mov dword [rsp + 0x40], SafeArrayGetElement
cmp dword [rsp + 0x40], 0
je 0x14021289e
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 4]
mov dword [rsp + 0x3d4], eax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x3d8], eax
movsxd rax, dword [rsp + 0x3d4]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
lea r8, [rsp + 0x3c4]
mov edx, dword [rsp + 0x3d8]
mov rcx, qword [rcx + rax + 8]
call fcn.1401d3ca0
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
movsxd rax, dword [rsp + 0x3c4]
mov rcx, qword [rsp + 0x80]
mov qword [rcx], rax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
add rax, qword [rcx + 0x20]
mov qword [rsp + 0x3e0], rax
mov rax, qword [rsp + 0x38]
mov r8d, dword [rax + 0xc]
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 8]
mov rax, qword [rsp + 0x3e0]
mov rcx, qword [rax + 8]
call fcn.1401d7370
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x38]
cmp dword [rax + 8], 1
jne 0x14021299b
mov rax, qword [rsp + 0x3e0]
mov rax, qword [rax + 0x18]
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx + 0xc]
mov dword [rax], ecx
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x2c]
or eax, 1
mov rcx, qword [rsp + 0x48]
mov dword [rcx + 0x2c], eax
jmp 0x1402129be
mov rax, qword [rsp + 0x38]
cmp dword [rax + 8], 2
jne 0x1402129be
mov rax, qword [rsp + 0x3e0]
mov rax, qword [rax + 0x18]
mov rcx, qword [rsp + 0x38]
movzx ecx, byte [rcx + 0xc]
mov byte [rax + 0x70], cl
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 1
jne 0x1402129f2
mov rcx, qword [rsp + 0x48]
call fcn.1401df300
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0xc4]
and eax, 0xfffffffe
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0xc4], eax
cmp dword [rsp + 0x40], 0
je 0x1402129fe
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x410], rax
cmp qword [rsp + 0x410], 0
je case.0x14020e4f9.105
mov rax, qword [rsp + 0x410]
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx + 8]
cmp dword [rax + 0x4c], ecx
jne case.0x14020e4f9.105
jmp 0x140212cd9
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0xc4]
and eax, 1
test eax, eax
je 0x140212a6e
mov dword [rsp + 0x40], 0x204
jmp 0x140217e06
mov dword [rsp + 0x3e8], 0
mov qword [rsp + 0x3f0], 0
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
mov dword [rsp + 0x3f8], eax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x3fc], eax
movsxd rax, dword [rsp + 0x3fc]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
add rax, qword [rcx + 0x20]
mov qword [rsp + 0x418], rax
mov rax, qword [rsp + 0x418]
mov rax, qword [rax + 8]
mov qword [rsp + 0x408], rax
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
cmp eax, 0x6b
jne 0x140212b3a
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 8
or eax, 4
mov dword [rsp + 0x400], eax
mov rax, qword [rsp + 0x418]
mov rax, qword [rax + 0x18]
movzx eax, byte [rax + 0x70]
mov rcx, qword [rsp + 0xee0]
movzx ecx, byte [rcx + 0xbf]
cmp eax, ecx
jge 0x140212b38
mov rax, qword [rsp + 0x418]
mov rax, qword [rax + 0x18]
mov rcx, qword [rsp + 0xee0]
movzx eax, byte [rax + 0x70]
mov byte [rcx + 0xbf], al
jmp 0x140212b45
mov dword [rsp + 0x400], 0
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 0x10
test eax, eax
je 0x140212b89
movsxd rax, dword [rsp + 0x3f8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
call fcn.14021afa0
mov rax, qword [rsp + 0x70]
mov eax, dword [rax]
mov dword [rsp + 0x3f8], eax
mov rax, qword [rsp + 0x38]
movsx eax, byte [rax + 1]
cmp eax, 0xfffffff7
jne 0x140212bbd
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x3f0], rax
mov rax, qword [rsp + 0x3f0]
movzx eax, word [rax + 8]
mov dword [rsp + 0x3e8], eax
jmp 0x140212bda
mov rax, qword [rsp + 0x38]
movsx eax, byte [rax + 1]
cmp eax, 0xfffffffd
jne 0x140212bda
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x3e8], eax
mov byte [rsp + 0x20], 0
mov r9d, dword [rsp + 0x3fc]
mov r8d, dword [rsp + 0x3e8]
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
call fcn.140196dd0
mov qword [rsp + 0x410], rax
cmp qword [rsp + 0x410], 0
jne 0x140212c1c
jmp 0x140217f74
mov rax, qword [rsp + 0x410]
mov byte [rax + 2], 1
mov rax, qword [rsp + 0x410]
mov eax, dword [rax + 8]
or eax, 4
mov rcx, qword [rsp + 0x410]
mov dword [rcx + 8], eax
mov rax, qword [rsp + 0x410]
mov ecx, dword [rsp + 0x3f8]
mov dword [rax + 0x4c], ecx
mov rax, qword [rsp + 0x410]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x3f0]
mov r8d, dword [rsp + 0x400]
mov edx, dword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x408]
call fcn.1401d30d0
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x410]
mov rcx, qword [rsp + 0x3f0]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x38]
movsx eax, byte [rax + 1]
cmp eax, 0xfffffff7
je 0x140212cbb
mov dword [rsp + 0xda8], 1
jmp 0x140212cc6
mov dword [rsp + 0xda8], 0
mov rax, qword [rsp + 0x410]
movzx ecx, byte [rsp + 0xda8]
mov byte [rax + 4], cl
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 3
mov edx, eax
mov rax, qword [rsp + 0x410]
mov rcx, qword [rax + 0x38]
call fcn.1401d3200
cmp dword [rsp + 0x40], 0
je 0x140212d04
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x420], rax
mov rax, qword [rsp + 0x420]
movsx eax, word [rax + 0x50]
mov byte [rsp + 0x20], 0
mov r9d, 0xffffffff
mov r8d, eax
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
call fcn.140196dd0
mov qword [rsp + 0x428], rax
cmp qword [rsp + 0x428], 0
jne 0x140212d74
jmp 0x140217f74
mov rax, qword [rsp + 0x428]
mov byte [rax + 2], 1
mov rax, qword [rsp + 0x428]
mov eax, dword [rax + 8]
or eax, 1
mov rcx, qword [rsp + 0x428]
mov dword [rcx + 8], eax
mov rax, qword [rsp + 0x428]
mov rcx, qword [rsp + 0x420]
mov rcx, qword [rcx + 0x40]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x428]
mov rcx, qword [rsp + 0x420]
movzx ecx, byte [rcx + 4]
mov byte [rax + 4], cl
mov rax, qword [rsp + 0x428]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x428]
mov r9, qword [rax + 0x40]
mov r8d, 4
mov edx, 1
mov rax, qword [rsp + 0x420]
mov rcx, qword [rax + 0x10]
call fcn.1401d30d0
mov dword [rsp + 0x40], eax
jmp case.0x14020e4f9.82
mov byte [rsp + 0x20], 0
mov r9d, 0xffffffff
mov rax, qword [rsp + 0x38]
mov r8d, dword [rax + 8]
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
call fcn.140196dd0
mov qword [rsp + 0x430], rax
cmp qword [rsp + 0x430], 0
jne 0x140212e4b
jmp 0x140217f74
mov rax, qword [rsp + 0x430]
mov byte [rax + 2], 1
mov rax, qword [rsp + 0x430]
mov eax, dword [rax + 8]
or eax, 1
mov rcx, qword [rsp + 0x430]
mov dword [rcx + 8], eax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
or eax, 5
mov rcx, qword [rsp + 0x430]
add rcx, 0x10
mov edx, dword [0x1402b0a64]
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], eax
mov r9, rcx
mov r8, qword [rsp + 0x48]
xor edx, edx
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax]
call fcn.1401d59e0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
jne 0x140212ed2
mov edx, 1
mov rax, qword [rsp + 0x430]
mov rcx, qword [rax + 0x10]
call fcn.1401d21f0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
jne 0x140212fc9
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x438], rax
mov rax, qword [rsp + 0x430]
mov rcx, qword [rsp + 0x438]
mov qword [rax + 0x40], rcx
cmp qword [rsp + 0x438], 0
je 0x140212f89
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
or eax, 2
mov r8d, eax
lea rdx, [rsp + 0x444]
mov rax, qword [rsp + 0x430]
mov rcx, qword [rax + 0x10]
call fcn.1401d3070
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
jne 0x140212f7b
mov rax, qword [rsp + 0x430]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x438]
mov r8d, 4
mov edx, dword [rsp + 0x444]
mov rax, qword [rsp + 0x430]
mov rcx, qword [rax + 0x10]
call fcn.1401d30d0
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x430]
mov byte [rax + 4], 0
jmp 0x140212fc9
mov rax, qword [rsp + 0x430]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, 4
mov edx, 1
mov rax, qword [rsp + 0x430]
mov rcx, qword [rax + 0x10]
call fcn.1401d30d0
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x430]
mov byte [rax + 4], 1
cmp dword [rsp + 0x40], 0
je 0x140212fd5
jmp 0x140217e06
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
cmp eax, 8
je 0x140212ff0
mov dword [rsp + 0xdac], 1
jmp 0x140212ffb
mov dword [rsp + 0xdac], 0
mov eax, dword [rsp + 0xdac]
and eax, 1
shl eax, 2
mov rcx, qword [rsp + 0x430]
mov ecx, dword [rcx + 8]
and ecx, 0xfffffffb
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x430]
mov dword [rcx + 8], eax
jmp case.0x14020e4f9.82
mov byte [rsp + 0x20], 1
mov r9d, 0xffffffff
mov rax, qword [rsp + 0x38]
mov r8d, dword [rax + 8]
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
call fcn.140196dd0
mov qword [rsp + 0x458], rax
cmp qword [rsp + 0x458], 0
jne 0x14021306b
jmp 0x140217f74
mov rax, qword [rsp + 0x458]
mov rcx, qword [rsp + 0x38]
mov rcx, qword [rcx + 0x10]
mov qword [rax + 0x40], rcx
mov r8, qword [rsp + 0x458]
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 0xc]
mov rcx, qword [rsp + 0x48]
call fcn.14021e490
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x1402130aa
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x460], rax
mov rax, qword [rsp + 0x460]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0xdb0], rax
mov rax, qword [rsp + 0x460]
mov rax, qword [rax + 0x18]
inc rax
mov rcx, qword [rsp + 0x460]
mov qword [rcx + 0x18], rax
cmp qword [rsp + 0xdb0], 0
jne 0x14021311a
mov dword [rsp + 0xdb8], 1
jmp 0x140213125
mov dword [rsp + 0xdb8], 0
cmp dword [rsp + 0xdb8], 0
je 0x140213134
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov byte [rsp + 0x20], 3
mov r9d, 0xffffffff
mov rax, qword [rsp + 0x38]
mov r8d, dword [rax + 0xc]
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
call fcn.140196dd0
mov qword [rsp + 0x468], rax
cmp qword [rsp + 0x468], 0
jne 0x14021317a
jmp 0x140217f74
mov rax, qword [rsp + 0x468]
mov byte [rax + 2], 1
mov rax, qword [rsp + 0x468]
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx + 8]
mov dword [rax + 0x2c], ecx
mov rax, qword [rsp + 0x468]
mov byte [rax + 4], 1
call fcn.1401d3ad0
mov rcx, qword [rsp + 0x468]
mov qword [rcx + 0x38], rax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rdx, qword [rcx + rax*8]
mov rcx, qword [rsp + 0xee0]
call fcn.140218c00
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov qword [rcx + rax*8], 0
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x488], rax
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
mov dword [rsp + 0x484], eax
mov dword [rsp + 0x4c0], 0
mov rax, qword [rsp + 0x488]
mov byte [rax + 2], 0
mov rax, qword [rsp + 0x488]
movzx eax, byte [rax + 4]
test eax, eax
je 0x1402133a2
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
movzx eax, word [rax + 8]
and eax, 0xe
cmp eax, 2
jne 0x1402132a1
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.140198fb0
mov rcx, qword [rsp + 0x78]
call fcn.140219780
mov qword [rsp + 0x4b8], rax
mov rax, qword [rsp + 0x78]
movzx eax, word [rax + 8]
and eax, 4
test eax, eax
jne 0x14021334e
mov rax, qword [rsp + 0x78]
movzx eax, word [rax + 8]
and eax, 8
test eax, eax
jne 0x1402132e1
jmp 0x14020e61b
cvtsi2sd xmm0, qword [rsp + 0x4b8]
mov rax, qword [rsp + 0x78]
comisd xmm0, xmmword [rax]
jbe 0x140213317
mov eax, dword [rsp + 0x484]
and eax, 1
cmp eax, 1
jne 0x140213315
mov eax, dword [rsp + 0x484]
dec eax
mov dword [rsp + 0x484], eax
jmp 0x14021334e
cvtsi2sd xmm0, qword [rsp + 0x4b8]
mov rax, qword [rsp + 0x78]
movsd xmm1, qword [rax]
comisd xmm1, xmm0
jbe 0x14021334e
mov eax, dword [rsp + 0x484]
and eax, 1
test eax, eax
jne 0x14021334e
mov eax, dword [rsp + 0x484]
inc eax
mov dword [rsp + 0x484], eax
lea rax, [rsp + 0x474]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x4b8]
xor edx, edx
mov rax, qword [rsp + 0x488]
mov rcx, qword [rax + 0x38]
call fcn.1401d5000
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x4b8]
mov qword [rax + 0x58], rcx
cmp dword [rsp + 0x40], 0
je 0x14021339d
jmp 0x140217e06
jmp 0x1402134b1
mov edx, 2
mov rax, qword [rsp + 0x488]
mov rcx, qword [rax + 0x38]
call fcn.1401d3160
test eax, eax
je 0x1402133c7
mov dword [rsp + 0x4c0], 1
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x4b4], eax
mov rax, qword [rsp + 0x488]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x498], rax
movzx eax, word [rsp + 0x4b4]
mov word [rsp + 0x4a8], ax
mov eax, dword [rsp + 0x484]
sub eax, 0x18
and eax, 1
test eax, eax
je 0x140213418
mov dword [rsp + 0xdbc], 0xffffffff
jmp 0x140213423
mov dword [rsp + 0xdbc], 1
movzx eax, byte [rsp + 0xdbc]
mov byte [rsp + 0x4aa], al
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x4a0], rax
mov byte [rsp + 0x4ae], 0
lea rax, [rsp + 0x474]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x498]
mov rax, qword [rsp + 0x488]
mov rcx, qword [rax + 0x38]
call fcn.1401d5000
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140213496
jmp 0x140217e06
cmp dword [rsp + 0x4c0], 0
je 0x1402134b1
movzx eax, byte [rsp + 0x4ae]
test eax, eax
jne 0x1402134b1
jmp 0x1402135d2
mov rax, qword [rsp + 0x488]
mov byte [rax + 3], 0
mov rax, qword [rsp + 0x488]
mov dword [rax + 0x28], 0
cmp dword [rsp + 0x484], 0x1a
jl 0x140213550
cmp dword [rsp + 0x474], 0
jl 0x1402134f4
cmp dword [rsp + 0x474], 0
jne 0x140213540
cmp dword [rsp + 0x484], 0x1b
jne 0x140213540
mov dword [rsp + 0x474], 0
xor edx, edx
mov rax, qword [rsp + 0x488]
mov rcx, qword [rax + 0x38]
call fcn.1401d58f0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x14021353e
cmp dword [rsp + 0x40], 0x65
jne 0x140213539
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x474], 1
jmp 0x14021353e
jmp 0x140217e06
jmp 0x14021354b
mov dword [rsp + 0x474], 0
jmp 0x1402135d2
cmp dword [rsp + 0x474], 0
jg 0x14021356e
cmp dword [rsp + 0x474], 0
jne 0x1402135ba
cmp dword [rsp + 0x484], 0x18
jne 0x1402135ba
mov dword [rsp + 0x474], 0
xor edx, edx
mov rax, qword [rsp + 0x488]
mov rcx, qword [rax + 0x38]
call fcn.1401d6660
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x1402135b8
cmp dword [rsp + 0x40], 0x65
jne 0x1402135b3
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x474], 1
jmp 0x1402135b8
jmp 0x140217e06
jmp 0x1402135d2
mov rax, qword [rsp + 0x488]
mov rcx, qword [rax + 0x38]
call fcn.1401d31b0
mov dword [rsp + 0x474], eax
cmp dword [rsp + 0x474], 0
je 0x1402135e3
jmp 0x14020e61b
cmp dword [rsp + 0x4c0], 0
je 0x1402135fb
mov rax, qword [rsp + 0x38]
add rax, 0x18
mov qword [rsp + 0x38], rax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x4d0], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x38]
cmp dword [rax + 0x10], 0
jle 0x14021369f
mov rax, qword [rsp + 0x4d0]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x518], rax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 0x10]
mov word [rsp + 0x528], ax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x520], rax
lea rax, [rsp + 0x518]
mov qword [rsp + 0x500], rax
mov qword [rsp + 0x4f8], 0
jmp 0x140213749
mov rax, qword [rsp + 0x78]
movzx eax, word [rax + 8]
and eax, 0x4000
test eax, eax
je 0x1402136c4
mov rcx, qword [rsp + 0x78]
call fcn.14021a910
mov dword [rsp + 0xdc0], eax
jmp 0x1402136cf
mov dword [rsp + 0xdc0], 0
mov eax, dword [rsp + 0xdc0]
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x1402136e6
jmp 0x140217f74
mov rax, qword [rsp + 0x4d0]
mov rcx, qword [rax + 0x40]
call fcn.14020d440
mov qword [rsp + 0x500], rax
mov rax, qword [rsp + 0x500]
mov qword [rsp + 0x4f8], rax
cmp qword [rsp + 0x500], 0
jne 0x14021371f
jmp 0x140217f74
mov r9, qword [rsp + 0x500]
mov rax, qword [rsp + 0x78]
mov r8, qword [rax + 0x10]
mov rax, qword [rsp + 0x78]
mov edx, dword [rax + 0xc]
mov rax, qword [rsp + 0x4d0]
mov rcx, qword [rax + 0x40]
call fcn.14021d380
mov rax, qword [rsp + 0x500]
mov byte [rax + 0x12], 0
mov dword [rsp + 0x4c8], 0
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
cmp eax, 0x1c
jne 0x1402137d2
mov dword [rsp + 0x4cc], 0
jmp 0x14021378a
mov eax, dword [rsp + 0x4cc]
inc eax
mov dword [rsp + 0x4cc], eax
mov rax, qword [rsp + 0x500]
movzx eax, word [rax + 0x10]
cmp dword [rsp + 0x4cc], eax
jge 0x1402137d2
movsxd rax, dword [rsp + 0x4cc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x500]
mov rcx, qword [rcx + 8]
movzx eax, word [rcx + rax + 8]
and eax, 1
test eax, eax
je 0x1402137d0
mov dword [rsp + 0x4c8], 1
jmp 0x1402137d2
jmp 0x14021377a
lea rax, [rsp + 0x4e4]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x500]
mov rax, qword [rsp + 0x4d0]
mov rcx, qword [rax + 0x38]
call fcn.1401d5000
mov dword [rsp + 0x40], eax
cmp qword [rsp + 0x4f8], 0
je 0x14021381f
mov rdx, qword [rsp + 0x4f8]
mov rcx, qword [rsp + 0x48]
call fcn.1401dba60
cmp dword [rsp + 0x40], 0
je 0x14021382b
jmp 0x140217e06
mov rax, qword [rsp + 0x4d0]
mov ecx, dword [rsp + 0x4e4]
mov dword [rax + 0x2c], ecx
cmp dword [rsp + 0x4e4], 0
jne 0x140213854
mov dword [rsp + 0xdc4], 1
jmp 0x14021385f
mov dword [rsp + 0xdc4], 0
mov eax, dword [rsp + 0xdc4]
mov dword [rsp + 0x4c4], eax
mov eax, 1
sub eax, dword [rsp + 0x4c4]
mov rcx, qword [rsp + 0x4d0]
mov byte [rcx + 2], al
mov rax, qword [rsp + 0x4d0]
mov byte [rax + 3], 0
mov rax, qword [rsp + 0x4d0]
mov dword [rax + 0x28], 0
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
cmp eax, 0x1e
jne 0x1402138bd
cmp dword [rsp + 0x4c4], 0
je 0x1402138bb
jmp 0x14020e61b
jmp 0x1402138d6
cmp dword [rsp + 0x4c8], 0
jne 0x1402138d1
cmp dword [rsp + 0x4c4], 0
jne 0x1402138d6
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
movzx eax, word [rax + 8]
and eax, 4
test eax, eax
jne case.0x14020e4f9.31
movzx r8d, byte [rsp + 0x51]
mov dl, 0x43
mov rcx, qword [rsp + 0x78]
call fcn.140198ed0
mov rax, qword [rsp + 0x78]
movzx eax, word [rax + 8]
and eax, 4
test eax, eax
jne case.0x14020e4f9.31
jmp 0x14020e61b
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x538], rax
mov rax, qword [rsp + 0x538]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x540], rax
mov dword [rsp + 0x554], 0
mov rax, qword [rsp + 0x78]
mov rax, qword [rax]
mov qword [rsp + 0x568], rax
lea rax, [rsp + 0x554]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x568]
xor edx, edx
mov rcx, qword [rsp + 0x540]
call fcn.1401d5000
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x538]
mov rcx, qword [rsp + 0x568]
mov qword [rax + 0x58], rcx
mov rax, qword [rsp + 0x538]
mov byte [rax + 2], 0
mov rax, qword [rsp + 0x538]
mov dword [rax + 0x28], 0
mov rax, qword [rsp + 0x538]
mov byte [rax + 3], 0
mov rax, qword [rsp + 0x538]
mov ecx, dword [rsp + 0x554]
mov dword [rax + 0x2c], ecx
cmp dword [rsp + 0x554], 0
je 0x140213a41
mov rax, qword [rsp + 0x38]
cmp dword [rax + 8], 0
jne 0x140213a3c
mov ecx, 0x14e1f
call fcn.1401d9620
mov dword [rsp + 0x40], eax
jmp 0x140213a41
jmp 0x14020e61b
cmp dword [rsp + 0x40], 0
je 0x140213a4d
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov rcx, qword [rsp + 0x80]
mov rax, qword [rax + 0x18]
mov qword [rcx], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x18]
inc rax
mov rcx, qword [rsp + 0x38]
movsxd rcx, dword [rcx + 4]
mov rdx, qword [rsp + 0xee0]
mov rdx, qword [rdx + 0x98]
mov rcx, qword [rdx + rcx*8]
mov qword [rcx + 0x18], rax
jmp case.0x14020e4f9.82
mov qword [rsp + 0x578], 0
mov dword [rsp + 0x594], 0
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x588], rax
mov rax, qword [rsp + 0x588]
movzx eax, byte [rax + 4]
test eax, eax
jne 0x140213b57
mov ecx, 0x14e57
call fcn.1401d9620
mov dword [rsp + 0x40], eax
jmp 0x140217e06
mov rax, qword [rsp + 0x588]
mov eax, dword [rax + 8]
shr eax, 1
and eax, 1
test eax, eax
jne 0x140213c0b
lea rdx, [rsp + 0x594]
mov rax, qword [rsp + 0x588]
mov rcx, qword [rax + 0x38]
call fcn.1401d4d10
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140213b98
jmp 0x140217e06
cmp dword [rsp + 0x594], 0
je 0x140213bb0
mov qword [rsp + 0x578], 1
jmp 0x140213c0b
mov rax, qword [rsp + 0x588]
mov rcx, qword [rax + 0x38]
call fcn.1401d46f0
mov qword [rsp + 0x578], rax
movabs rax, 0x7fffffffffffffff
cmp qword [rsp + 0x578], rax
jl 0x140213bf8
mov rax, qword [rsp + 0x588]
mov eax, dword [rax + 8]
or eax, 2
mov rcx, qword [rsp + 0x588]
mov dword [rcx + 8], eax
jmp 0x140213c0b
mov rax, qword [rsp + 0x578]
inc rax
mov qword [rsp + 0x578], rax
mov rax, qword [rsp + 0x38]
cmp dword [rax + 0xc], 0
je 0x140213d33
mov rax, qword [rsp + 0xee0]
cmp qword [rax + 0x100], 0
je 0x140213c8d
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0x5b0], rax
jmp 0x140213c59
mov rax, qword [rsp + 0x5b0]
mov rax, qword [rax + 8]
mov qword [rsp + 0x5b0], rax
mov rax, qword [rsp + 0x5b0]
cmp qword [rax + 8], 0
je 0x140213c6a
jmp 0x140213c45
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x5b0]
add rax, qword [rcx + 0x20]
mov qword [rsp + 0x5a8], rax
jmp 0x140213cad
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x5a8], rax
mov rcx, qword [rsp + 0x5a8]
call fcn.14021afa0
mov rax, qword [rsp + 0x5a8]
movabs rcx, 0x7fffffffffffffff
cmp qword [rax], rcx
je 0x140213ce5
mov rax, qword [rsp + 0x588]
mov eax, dword [rax + 8]
shr eax, 1
and eax, 1
test eax, eax
je 0x140213cf2
mov dword [rsp + 0x40], reloc.WS2_32.dll_listen
jmp 0x140217e06
mov rax, qword [rsp + 0x5a8]
mov rax, qword [rax]
inc rax
cmp qword [rsp + 0x578], rax
jge 0x140213d20
mov rax, qword [rsp + 0x5a8]
mov rax, qword [rax]
inc rax
mov qword [rsp + 0x578], rax
mov rax, qword [rsp + 0x5a8]
mov rcx, qword [rsp + 0x578]
mov qword [rax], rcx
mov rax, qword [rsp + 0x588]
mov eax, dword [rax + 8]
shr eax, 1
and eax, 1
test eax, eax
je 0x140213e1c
mov dword [rsp + 0x5a4], 0
lea rdx, [rsp + 0x578]
mov ecx, 8
call fcn.140186130
movabs rax, 0x3fffffffffffffff
mov rcx, qword [rsp + 0x578]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x578], rax
mov rax, qword [rsp + 0x578]
inc rax
mov qword [rsp + 0x578], rax
lea rax, [rsp + 0x594]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x578]
xor edx, edx
mov rax, qword [rsp + 0x588]
mov rcx, qword [rax + 0x38]
call fcn.1401d5000
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
jne 0x140213df9
cmp dword [rsp + 0x594], 0
jne 0x140213df9
mov eax, dword [rsp + 0x5a4]
inc eax
mov dword [rsp + 0x5a4], eax
cmp dword [rsp + 0x5a4], 0x64
jl 0x140213d56
cmp dword [rsp + 0x40], 0
je 0x140213e05
jmp 0x140217e06
cmp dword [rsp + 0x594], 0
jne 0x140213e1c
mov dword [rsp + 0x40], reloc.WS2_32.dll_listen
jmp 0x140217e06
mov rax, qword [rsp + 0x588]
mov byte [rax + 3], 0
mov rax, qword [rsp + 0x588]
mov dword [rax + 0x28], 0
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x578]
mov qword [rax], rcx
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x5b8], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x5c8], rax
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
cmp eax, 0x76
jne 0x140213ed5
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x5c0], rax
mov rax, qword [rsp + 0x5c0]
mov rax, qword [rax]
mov qword [rsp + 0x600], rax
jmp 0x140213ee6
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
mov qword [rsp + 0x600], rax
mov rax, qword [rsp + 0x38]
movsx eax, byte [rax + 1]
cmp eax, 0xfffffffa
jne 0x140213f3c
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x128], 0
je 0x140213f3c
mov rax, qword [rsp + 0x5c8]
movsx rax, byte [rax + 1]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
mov rax, qword [rcx + rax]
mov qword [rsp + 0x5d8], rax
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x5e0], rax
jmp 0x140213f54
mov qword [rsp + 0x5e0], 0
mov qword [rsp + 0x5d8], 0
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 1
test eax, eax
je 0x140213f7c
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0x3c]
inc eax
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x3c], eax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 0x20
test eax, eax
je 0x140213f9d
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x600]
mov qword [rax + 0x38], rcx
mov rax, qword [rsp + 0x5b8]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x608], rax
mov rax, qword [rsp + 0x5b8]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x61c], eax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 0x10
test eax, eax
je 0x140213fe7
mov rax, qword [rsp + 0x5c8]
mov eax, dword [rax + 0x2c]
mov dword [rsp + 0xdc8], eax
jmp 0x140213ff2
mov dword [rsp + 0xdc8], 0
mov eax, dword [rsp + 0xdc8]
mov dword [rsp + 0x5d0], eax
mov rax, qword [rsp + 0x5b8]
movzx eax, word [rax + 8]
and eax, 0x4000
test eax, eax
je 0x140214028
mov rax, qword [rsp + 0x5b8]
mov eax, dword [rax]
mov dword [rsp + 0x620], eax
jmp 0x140214033
mov dword [rsp + 0x620], 0
mov qword [rsp + 0x5f8], 0
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 0xa
mov r9d, dword [rsp + 0x5d0]
mov r8d, eax
lea rdx, [rsp + 0x5f8]
mov rax, qword [rsp + 0x5c8]
mov rcx, qword [rax + 0x38]
call fcn.1401d3fb0
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x5c8]
mov byte [rax + 3], 0
mov rax, qword [rsp + 0x5c8]
mov dword [rax + 0x28], 0
cmp dword [rsp + 0x40], 0
je 0x14021409a
jmp 0x140217e06
cmp qword [rsp + 0x5e0], 0
je 0x140214122
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 4
test eax, eax
je 0x1402140c2
mov dword [rsp + 0xdcc], 0x17
jmp 0x1402140cd
mov dword [rsp + 0xdcc], 0x12
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x128]
mov qword [rsp + 0xdd0], rax
mov rax, qword [rsp + 0x600]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x5e0]
mov r9, qword [rax]
mov r8, qword [rsp + 0x5d8]
mov edx, dword [rsp + 0xdcc]
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x120]
mov rax, qword [rsp + 0xdd0]
call qword [str.PS_]
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
mov dword [rsp + 0x650], eax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x638], rax
mov rax, qword [rsp + 0x38]
movsx eax, byte [rax + 1]
cmp eax, 0xfffffffa
jne 0x1402141f1
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x128], 0
je 0x1402141f1
mov rax, qword [rsp + 0x638]
movsx rax, byte [rax + 1]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
mov rax, qword [rcx + rax]
mov qword [rsp + 0x640], rax
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x648], rax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 2
test eax, eax
je 0x1402141ef
mov rax, qword [rsp + 0x638]
movzx eax, byte [rax + 4]
test eax, eax
je 0x1402141ef
mov rax, qword [rsp + 0x638]
mov rcx, qword [rax + 0x38]
call fcn.1401d46f0
mov rcx, qword [rsp + 0x638]
mov qword [rcx + 0x58], rax
jmp 0x140214209
mov qword [rsp + 0x640], 0
mov qword [rsp + 0x648], 0
mov rax, qword [rsp + 0x38]
movzx edx, byte [rax + 2]
mov rax, qword [rsp + 0x638]
mov rcx, qword [rax + 0x38]
call fcn.1401d3340
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x638]
mov dword [rax + 0x28], 0
mov rax, qword [rsp + 0x638]
mov dword [rax + 0x2c], 0
cmp dword [rsp + 0x40], 0
je 0x140214251
jmp 0x140217e06
mov eax, dword [rsp + 0x650]
and eax, 1
test eax, eax
je 0x1402142f3
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0x3c]
inc eax
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x3c], eax
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x128], 0
je 0x1402142f3
mov rax, qword [rsp + 0x648]
mov eax, dword [rax + 0x40]
and eax, 0x20
test eax, eax
jne 0x1402142f3
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x128]
mov qword [rsp + 0xdd8], rax
mov rax, qword [rsp + 0x638]
mov rax, qword [rax + 0x58]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x648]
mov r9, qword [rax]
mov r8, qword [rsp + 0x640]
mov edx, 9
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x120]
mov rax, qword [rsp + 0xdd8]
call qword [str.PS_]
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0xee0]
mov edx, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x48]
call fcn.14021df20
mov rax, qword [rsp + 0xee0]
mov dword [rax + 0x3c], 0
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x658], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x674], eax
mov dword [rsp + 0x664], 0
lea r9, [rsp + 0x664]
mov r8d, dword [rsp + 0x674]
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x658]
call fcn.14021e2f0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x1402143ae
jmp 0x140217e06
cmp dword [rsp + 0x664], 0
je 0x1402143bd
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x678], rax
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x678]
call fcn.14021ebf0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x14021442b
jmp 0x140217e06
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov dword [rax + 0x28], 0
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x680], rax
mov rax, qword [rsp + 0x680]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x688], rax
mov rcx, qword [rsp + 0x688]
call fcn.1401d6620
mov dword [rsp + 0x690], eax
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x48]
mov eax, dword [rcx + rax + 0x7c]
cmp dword [rsp + 0x690], eax
jbe 0x1402144d9
jmp 0x140217f53
mov r9, qword [rsp + 0x80]
mov r8d, dword [rsp + 0x690]
xor edx, edx
mov rcx, qword [rsp + 0x688]
call fcn.14021ab20
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140214508
jmp 0x140217e06
mov rax, qword [rsp + 0x38]
cmp dword [rax + 0xc], 0
jne 0x14021453e
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0x1000
test eax, eax
je 0x14021453e
mov rcx, qword [rsp + 0x80]
call fcn.14021b000
test eax, eax
je 0x14021453e
jmp 0x140217f74
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x698], rax
mov rax, qword [rsp + 0x698]
movzx eax, byte [rax + 2]
test eax, eax
je 0x1402145ac
mov eax, 1
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x698]
movzx eax, byte [rax + 3]
test eax, eax
je 0x1402145d5
mov rax, qword [rsp + 0x698]
mov rax, qword [rax + 0x58]
mov qword [rsp + 0x6a8], rax
jmp 0x1402146cc
mov rax, qword [rsp + 0x698]
movzx eax, byte [rax]
cmp eax, 2
jne 0x140214670
mov rax, qword [rsp + 0x698]
mov rax, qword [rax + 0x38]
mov rax, qword [rax]
mov qword [rsp + 0x6b8], rax
mov rax, qword [rsp + 0x6b8]
mov rax, qword [rax]
mov qword [rsp + 0x6c0], rax
mov rax, qword [rsp + 0x6c0]
mov rax, qword [rax + 0x60]
mov qword [rsp + 0xde0], rax
lea rdx, [rsp + 0x6a8]
mov rax, qword [rsp + 0x698]
mov rcx, qword [rax + 0x38]
mov rax, qword [rsp + 0xde0]
call qword [str.PS_]
mov dword [rsp + 0x40], eax
mov rdx, qword [rsp + 0x6b8]
mov rcx, qword [rsp + 0xee0]
call fcn.140220a50
cmp dword [rsp + 0x40], 0
je 0x14021466e
jmp 0x140217e06
jmp 0x1402146cc
mov rcx, qword [rsp + 0x698]
call fcn.14020de60
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x14021468d
jmp 0x140217e06
mov rax, qword [rsp + 0x698]
movzx eax, byte [rax + 2]
test eax, eax
je 0x1402146b3
mov eax, 1
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x698]
mov rcx, qword [rax + 0x38]
call fcn.1401d46f0
mov qword [rsp + 0x6a8], rax
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x6a8]
mov qword [rax], rcx
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x6c8], rax
mov rax, qword [rsp + 0x6c8]
mov byte [rax + 2], 1
mov rax, qword [rsp + 0x6c8]
mov dword [rax + 0x28], 0
mov rax, qword [rsp + 0x6c8]
movzx eax, byte [rax]
test eax, eax
jne 0x140214743
mov rax, qword [rsp + 0x6c8]
mov rcx, qword [rax + 0x38]
call fcn.1401d26c0
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x6d0], rax
mov rax, qword [rsp + 0x6d0]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x6d8], rax
mov dword [rsp + 0x6e4], 0
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
cmp eax, 0x7f
jne 0x1402147bd
mov rax, qword [rsp + 0x6d0]
mov dword [rax + 0x2c], 0xffffffff
mov rcx, qword [rsp + 0x6d8]
call fcn.1401d3220
test eax, eax
je 0x1402147bd
jmp case.0x14020e4f9.82
lea rdx, [rsp + 0x6e4]
mov rcx, qword [rsp + 0x6d8]
call fcn.1401d4d10
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x6d0]
movzx ecx, byte [rsp + 0x6e4]
mov byte [rax + 2], cl
mov rax, qword [rsp + 0x6d0]
mov byte [rax + 3], 0
mov rax, qword [rsp + 0x6d0]
mov dword [rax + 0x28], 0
cmp dword [rsp + 0x40], 0
je 0x140214810
jmp 0x140217e06
mov rax, qword [rsp + 0x38]
cmp dword [rax + 8], 0
jle 0x14021482a
cmp dword [rsp + 0x6e4], 0
je 0x14021482a
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x6f8], rax
mov rax, qword [rsp + 0x6f8]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x700], rax
lea rdx, [rsp + 0x714]
mov rcx, qword [rsp + 0x700]
call fcn.1401d3ae0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x14021488c
jmp 0x140217e06
cmp dword [rsp + 0x714], 0
jne 0x1402148d9
mov rcx, qword [rsp + 0x700]
call fcn.1401d69b0
mov qword [rsp + 0x728], rax
cmp qword [rsp + 0x728], 0
jl 0x1402148d9
mov rcx, qword [rsp + 0x728]
call fcn.1401f1c40
cwde
mov rcx, qword [rsp + 0x38]
cmp eax, dword [rcx + 0xc]
jge 0x1402148d9
mov dword [rsp + 0x714], 1
cmp dword [rsp + 0x714], 0
je 0x1402148e8
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov eax, 4
imul rax, rax, 2
mov rcx, qword [rsp + 0xee0]
mov eax, dword [rcx + rax + 0xd0]
inc eax
mov ecx, 4
imul rcx, rcx, 2
mov rdx, qword [rsp + 0xee0]
mov dword [rdx + rcx + 0xd0], eax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x730], rax
mov dword [rsp + 0x744], 1
mov rax, qword [rsp + 0x730]
movzx eax, byte [rax]
cmp eax, 1
jne 0x140214979
lea rdx, [rsp + 0x744]
mov rcx, qword [rsp + 0x730]
call fcn.14021eb00
mov dword [rsp + 0x40], eax
jmp 0x1402149c1
mov rax, qword [rsp + 0x730]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x738], rax
lea rdx, [rsp + 0x744]
mov rcx, qword [rsp + 0x738]
call fcn.1401d3ae0
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x730]
mov byte [rax + 3], 0
mov rax, qword [rsp + 0x730]
mov dword [rax + 0x28], 0
cmp dword [rsp + 0x40], 0
je 0x1402149cd
jmp 0x140217e06
mov rax, qword [rsp + 0x730]
movzx ecx, byte [rsp + 0x744]
mov byte [rax + 2], cl
cmp dword [rsp + 0x744], 0
je 0x1402149ef
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x758], rax
mov rdx, qword [rsp + 0x758]
mov rcx, qword [rsp + 0x48]
call fcn.14021e830
mov dword [rsp + 0x40], eax
jmp 0x140214aaf
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
cmp qword [rcx + rax*8], 0
jne case.0x14020e4f9.5
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x758], rax
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xde8], rax
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 0xc]
mov rax, qword [rsp + 0x758]
mov rcx, qword [rax + 0x38]
mov rax, qword [rsp + 0xde8]
call qword [str.PS_]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x758]
mov dword [rax + 0x28], 0
cmp dword [rsp + 0x40], 0
jne 0x140214b08
mov rax, qword [rsp + 0x758]
mov byte [rax + 2], 0
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
mov rcx, qword [rsp + 0xee0]
mov eax, dword [rcx + rax*4 + 0xd0]
inc eax
mov rcx, qword [rsp + 0x38]
movzx ecx, word [rcx + 2]
mov rdx, qword [rsp + 0xee0]
mov dword [rdx + rcx*4 + 0xd0], eax
jmp case.0x14020e4f9.12
cmp dword [rsp + 0x40], 0x65
je 0x140214b14
jmp 0x140217e06
mov dword [rsp + 0x40], 0
mov rax, qword [rsp + 0x758]
mov byte [rax + 2], 1
jmp 0x14020e51b
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x760], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 1
test eax, eax
je 0x140214b96
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0x3c]
inc eax
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x3c], eax
mov rax, qword [rsp + 0x70]
movzx eax, word [rax + 8]
and eax, 0x4000
test eax, eax
je 0x140214bbb
mov rcx, qword [rsp + 0x70]
call fcn.14021a910
mov dword [rsp + 0xdf0], eax
jmp 0x140214bc6
mov dword [rsp + 0xdf0], 0
mov eax, dword [rsp + 0xdf0]
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140214bdd
jmp 0x140217e06
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
cmp eax, 0x80
jne 0x140214c07
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x760]
call fcn.14021ece0
mov dword [rsp + 0x40], eax
jmp 0x140214ccc
mov rax, qword [rsp + 0x70]
movsxd rax, dword [rax + 0xc]
mov qword [rsp + 0x780], rax
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x778], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x790], rax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 0x10]
mov word [rsp + 0x798], ax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 0x10
test eax, eax
je 0x140214c7e
mov rax, qword [rsp + 0x760]
mov eax, dword [rax + 0x2c]
mov dword [rsp + 0xdf4], eax
jmp 0x140214c89
mov dword [rsp + 0xdf4], 0
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
and eax, 0xa
mov r9d, dword [rsp + 0xdf4]
mov r8d, eax
lea rdx, [rsp + 0x778]
mov rax, qword [rsp + 0x760]
mov rcx, qword [rax + 0x38]
call fcn.1401d3fb0
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x760]
mov dword [rax + 0x28], 0
cmp dword [rsp + 0x40], 0
je 0x140214cd8
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x7b8], rax
mov rax, qword [rsp + 0x7b8]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x7c0], rax
mov rax, qword [rsp + 0x7b8]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x7f8], rax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 0xc]
mov word [rsp + 0x808], ax
mov byte [rsp + 0x80a], 0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x800], rax
lea rax, [rsp + 0x7d4]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x7f8]
mov rcx, qword [rsp + 0x7c0]
call fcn.1401d5000
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140214d9a
jmp 0x140217e06
cmp dword [rsp + 0x7d4], 0
jne 0x140214dc3
mov dl, 4
mov rcx, qword [rsp + 0x7c0]
call fcn.1401d3340
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140214dc3
jmp 0x140217e06
mov rax, qword [rsp + 0x7b8]
mov dword [rax + 0x28], 0
mov rax, qword [rsp + 0x7b8]
mov dword [rax + 0x2c], 0
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x818], rax
mov rcx, qword [rsp + 0x818]
call fcn.14020de60
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140214e27
jmp 0x140217e06
mov rax, qword [rsp + 0x818]
movzx eax, byte [rax + 2]
test eax, eax
jne 0x140214f2e
mov qword [rsp + 0x838], 0
lea r8, [rsp + 0x838]
mov rax, qword [rsp + 0x818]
mov rdx, qword [rax + 0x38]
mov rcx, qword [rsp + 0x48]
call fcn.140219530
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140214e75
jmp 0x140217e06
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
cmp eax, 0x83
jne 0x140214eff
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x820], rax
mov rax, qword [rsp + 0x820]
mov byte [rax + 2], 0
mov rax, qword [rsp + 0x820]
mov rcx, qword [rsp + 0x838]
mov qword [rax + 0x58], rcx
mov rax, qword [rsp + 0x820]
mov byte [rax + 3], 1
mov rax, qword [rsp + 0x820]
mov rcx, qword [rsp + 0x38]
mov rcx, qword [rcx + 0x10]
mov qword [rax + 0x20], rcx
mov rax, qword [rsp + 0x820]
mov rcx, qword [rsp + 0x818]
mov qword [rax + 0x30], rcx
jmp 0x140214f2c
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x838]
mov qword [rax], rcx
jmp 0x140214f4e
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov rcx, rax
call fcn.14021b430
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x848], rax
mov rax, qword [rsp + 0x848]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x878], rax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 0x10]
mov word [rsp + 0x888], ax
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
cmp eax, 0x28
jge 0x140214fb3
mov byte [rsp + 0x88a], 0xff
jmp 0x140214fbb
mov byte [rsp + 0x88a], 0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x880], rax
mov dword [rsp + 0x854], 0
lea r9, [rsp + 0x854]
lea r8, [rsp + 0x878]
mov rdx, qword [rsp + 0x848]
mov rcx, qword [rsp + 0x48]
call fcn.1402193f0
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
and eax, 1
test eax, eax
jne 0x14021502d
mov eax, dword [rsp + 0x854]
neg eax
mov dword [rsp + 0x854], eax
jmp 0x14021503d
mov eax, dword [rsp + 0x854]
inc eax
mov dword [rsp + 0x854], eax
cmp dword [rsp + 0x40], 0
je 0x140215049
jmp 0x140217e06
cmp dword [rsp + 0x854], 0
jle 0x140215058
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov eax, 1
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0xcc]
inc eax
mov rcx, qword [rsp + 0x48]
cmp dword [rcx + 0xc0], eax
jle 0x1402150c3
mov dword [rsp + 0x40], 6
mov rax, qword [rsp + 0xee0]
mov byte [rax + 0xbe], 2
jmp 0x140217e06
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x8b4], eax
mov dword [rsp + 0x8a4], 0
movsxd rax, dword [rsp + 0x8b4]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
lea r8, [rsp + 0x8a4]
mov rdx, qword [rsp + 0x38]
mov edx, dword [rdx + 4]
mov rcx, qword [rcx + rax + 8]
call fcn.1401d3990
mov dword [rsp + 0x40], eax
mov eax, 4
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
movsxd rax, dword [rsp + 0x8a4]
mov rcx, qword [rsp + 0x80]
mov qword [rcx], rax
cmp dword [rsp + 0x40], 0
je 0x140215140
jmp 0x140217e06
cmp dword [rsp + 0x8a4], 0
je 0x140215179
mov rax, qword [rsp + 0x38]
mov r9d, dword [rax + 4]
mov r8d, dword [rsp + 0x8a4]
mov edx, dword [rsp + 0x8b4]
mov rcx, qword [rsp + 0x48]
call fcn.1401ffde0
mov eax, dword [rsp + 0x8b4]
inc eax
mov byte [rsp + 0x50], al
jmp case.0x14020e4f9.82
mov dword [rsp + 0x8c4], 0
mov rax, qword [rsp + 0x38]
cmp dword [rax + 0xc], 0
je 0x1402151a6
lea rax, [rsp + 0x8c4]
mov qword [rsp + 0xdf8], rax
jmp 0x1402151b2
mov qword [rsp + 0xdf8], 0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
mov r8, qword [rsp + 0xdf8]
mov rdx, qword [rsp + 0x38]
mov edx, dword [rdx + 4]
mov rcx, qword [rcx + rax + 8]
call fcn.1401d2710
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x38]
cmp dword [rax + 0xc], 0
je 0x140215250
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0x3c]
add eax, dword [rsp + 0x8c4]
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x3c], eax
mov rax, qword [rsp + 0x38]
cmp dword [rax + 0xc], 0
jle 0x140215250
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
movsxd rcx, dword [rsp + 0x8c4]
mov rdx, qword [rsp + 0x60]
add rcx, qword [rdx + rax]
mov rax, rcx
mov rcx, qword [rsp + 0x38]
movsxd rcx, dword [rcx + 0xc]
imul rcx, rcx, 0x38
mov rdx, qword [rsp + 0x60]
mov qword [rdx + rcx], rax
cmp dword [rsp + 0x40], 0
je 0x14021525c
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x8d8], rax
mov rax, qword [rsp + 0x8d8]
movzx eax, byte [rax]
cmp eax, 1
jne 0x1402152ad
mov rax, qword [rsp + 0x8d8]
mov rdx, qword [rax + 0x38]
mov rcx, qword [rsp + 0x48]
call fcn.14021e9a0
jmp 0x1402152ce
mov rax, qword [rsp + 0x8d8]
mov rcx, qword [rax + 0x38]
call fcn.1401d27b0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x1402152ce
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov dword [rsp + 0x8e4], 0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
add rax, qword [rcx + 0x20]
mov qword [rsp + 0x8f8], rax
mov rax, qword [rsp + 0x38]
mov r8d, dword [rax + 0xc]
lea rdx, [rsp + 0x8e4]
mov rax, qword [rsp + 0x8f8]
mov rcx, qword [rax + 8]
call fcn.1401d3070
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140215348
jmp 0x140217e06
movsxd rax, dword [rsp + 0x8e4]
mov rcx, qword [rsp + 0x80]
mov qword [rcx], rax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x6a]
inc al
mov rcx, qword [rsp + 0x48]
mov byte [rcx + 0x6a], al
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax + 0x10]
mov rcx, qword [rsp + 0x48]
call fcn.1401846f0
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x6a]
dec al
mov rcx, qword [rsp + 0x48]
mov byte [rcx + 0x6a], al
cmp dword [rsp + 0x40], 0
je 0x1402153b8
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 4]
mov dword [rsp + 0x900], eax
lea rax, [0x1403244a0]
mov qword [rsp + 0x908], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x928], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 4]
mov dword [rsp + 0x938], eax
mov rax, qword [rsp + 0xee0]
add rax, 0x90
mov qword [rsp + 0x930], rax
movsxd rax, dword [rsp + 0x900]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
mov rdx, qword [rsp + 0x38]
mov rdx, qword [rdx + 0x10]
mov qword [rsp + 0x20], rdx
mov r9, qword [rsp + 0x908]
mov r8, qword [rcx + rax]
lea rdx, str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s_ORDER_BY_rowid
mov rcx, qword [rsp + 0x48]
call fcn.1401f1f40
mov qword [rsp + 0x910], rax
cmp qword [rsp + 0x910], 0
jne 0x14021546a
mov dword [rsp + 0x40], 7
jmp 0x1402154df
mov rax, qword [rsp + 0x48]
mov byte [rax + 0xb5], 1
mov dword [rsp + 0x93c], 0
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x928]
lea r8, [fcn.1401ed810]
mov rdx, qword [rsp + 0x910]
mov rcx, qword [rsp + 0x48]
call fcn.1401846f0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
jne 0x1402154c1
mov eax, dword [rsp + 0x93c]
mov dword [rsp + 0x40], eax
mov rdx, qword [rsp + 0x910]
mov rcx, qword [rsp + 0x48]
call fcn.1401dba60
mov rax, qword [rsp + 0x48]
mov byte [rax + 0xb5], 0
cmp dword [rsp + 0x40], 0
je 0x140215501
mov rcx, qword [rsp + 0x48]
call fcn.1401ff2a0
cmp dword [rsp + 0x40], 7
jne 0x1402154fc
jmp 0x140217f74
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0x48]
call fcn.1401cec40
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140215528
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov r8, qword [rax + 0x10]
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0x48]
call fcn.140207a50
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov r8, qword [rax + 0x10]
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0x48]
call fcn.140207920
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov r8, qword [rax + 0x10]
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0x48]
call fcn.140207ae0
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
mov dword [rsp + 0x944], eax
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x948], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x970], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x970]
mov eax, dword [rax]
inc eax
mov ecx, 4
imul rcx, rcx, 1
mov rdx, qword [rsp + 0x948]
add rdx, rcx
mov rcx, rdx
mov rdx, qword [rsp + 0x38]
movzx edx, word [rdx + 2]
imul rdx, rdx, 0x20
mov qword [rsp + 0xe00], rdx
mov rdi, qword [rsp + 0x48]
mov rdi, qword [rdi + 0x20]
lea rsi, [rsp + 0x954]
mov qword [rsp + 0x20], rsi
mov r9d, eax
mov r8d, dword [rsp + 0x944]
mov rdx, rcx
mov rax, qword [rsp + 0xe00]
mov rcx, qword [rdi + rax + 8]
call fcn.1401d4730
mov qword [rsp + 0x968], rax
mov rcx, qword [rsp + 0x68]
call fcn.14021b430
cmp dword [rsp + 0x954], 0
jne 0x140215676
jmp 0x1402156d6
cmp qword [rsp + 0x968], 0
jne 0x140215688
jmp 0x140217f74
mov eax, dword [rsp + 0x954]
dec eax
cdqe
mov rcx, qword [rsp + 0x970]
mov rcx, qword [rcx]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x970]
mov qword [rcx], rax
lea rax, [fcn.140185f30]
mov qword [rsp + 0x20], rax
mov r9b, 1
mov r8d, 0xffffffff
mov rdx, qword [rsp + 0x968]
mov rcx, qword [rsp + 0x68]
call fcn.14021b600
movzx eax, byte [rsp + 0x51]
mov edx, eax
mov rcx, qword [rsp + 0x68]
call fcn.14020d630
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 0x20
test eax, eax
jne 0x140215755
mov rcx, qword [rsp + 0x68]
call fcn.14021b530
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 0x20
test eax, eax
jne 0x140215755
jmp 0x140217f74
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax]
mov rax, qword [rsp + 0x68]
mov rcx, qword [rax]
call fcn.140200070
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 0x20
test eax, eax
je 0x1402157b5
lea rdx, [rsp + 0x988]
mov rax, qword [rsp + 0x68]
mov rcx, qword [rax]
call fcn.140200140
test eax, eax
jne 0x1402157c6
mov rcx, qword [rsp + 0x68]
call fcn.14021b430
jmp case.0x14020e4f9.12
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov rdx, qword [rsp + 0x988]
mov rcx, rax
call fcn.14021b3c0
jmp 0x14020e51b
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x994], eax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 0x20
test eax, eax
jne 0x14021586b
mov rcx, qword [rsp + 0x68]
call fcn.14021b530
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 8]
and eax, 0x20
test eax, eax
jne 0x14021586b
jmp 0x140217f74
cmp dword [rsp + 0x994], 0
je 0x1402158a7
mov rax, qword [rsp + 0x78]
mov r8, qword [rax]
mov edx, dword [rsp + 0x994]
mov rax, qword [rsp + 0x68]
mov rcx, qword [rax]
call fcn.140200210
mov dword [rsp + 0x998], eax
cmp dword [rsp + 0x998], 0
je 0x1402158a7
jmp 0x14020e61b
cmp dword [rsp + 0x994], 0
jl 0x1402158c6
mov rax, qword [rsp + 0x78]
mov rdx, qword [rax]
mov rax, qword [rsp + 0x68]
mov rcx, qword [rax]
call fcn.140200070
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x9c8], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x9a8], rax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
test eax, eax
je 0x14021597d
mov rax, qword [rsp + 0x9c8]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x9d0], rax
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0x9c0], rax
jmp 0x14021594a
mov rax, qword [rsp + 0x9c0]
mov rax, qword [rax + 8]
mov qword [rsp + 0x9c0], rax
cmp qword [rsp + 0x9c0], 0
je 0x14021596d
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0x9d0]
cmp qword [rax + 0x38], rcx
je 0x14021596d
jmp 0x140215936
cmp qword [rsp + 0x9c0], 0
je 0x14021597d
jmp case.0x14020e4f9.82
mov eax, 4
imul rax, rax, 0xa
mov rcx, qword [rsp + 0xee0]
mov rdx, qword [rsp + 0x48]
mov eax, dword [rdx + rax + 0x7c]
cmp dword [rcx + 0x110], eax
jl 0x1402159c0
mov dword [rsp + 0x40], 1
lea rdx, str.too_many_levels_of_trigger_recursion
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
jmp 0x140217e06
mov rax, qword [rsp + 0x9a8]
movzx eax, word [rax + 8]
and eax, 0x40
test eax, eax
jne 0x140215c6c
mov rax, qword [rsp + 0x9c8]
mov eax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x9c8]
add eax, dword [rcx + 0x10]
mov dword [rsp + 0x99c], eax
mov rax, qword [rsp + 0x9c8]
cmp dword [rax + 0x10], 0
jne 0x140215a12
mov eax, dword [rsp + 0x99c]
inc eax
mov dword [rsp + 0x99c], eax
movsxd rax, dword [rsp + 0x99c]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x9c8]
movsxd rcx, dword [rcx + 0x10]
lea rax, [rax + rcx*8 + 0x70]
mov qword [rsp + 0xe08], rax
mov rcx, qword [rsp + 0x9c8]
mov ecx, dword [rcx + 8]
add ecx, 7
mov eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
cdqe
mov rcx, qword [rsp + 0xe08]
add rcx, rax
mov rax, rcx
mov dword [rsp + 0x9a0], eax
movsxd rax, dword [rsp + 0x9a0]
mov rdx, rax
mov rcx, qword [rsp + 0x48]
call fcn.1401dbd70
mov qword [rsp + 0x9c0], rax
cmp qword [rsp + 0x9c0], 0
jne 0x140215a94
jmp 0x140217f74
mov rcx, qword [rsp + 0x9a8]
call fcn.14021b310
mov eax, 0x40
mov rcx, qword [rsp + 0x9a8]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x9a8]
mov rcx, qword [rsp + 0x9c0]
mov qword [rax], rcx
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0xee0]
mov qword [rax], rcx
mov rax, qword [rsp + 0x9c0]
mov ecx, dword [rsp + 0x99c]
mov dword [rax + 0x60], ecx
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0x9c8]
mov ecx, dword [rcx + 0x10]
mov dword [rax + 0x64], ecx
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
sub rcx, rax
mov rax, rcx
cqo
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
idiv rcx
mov rcx, qword [rsp + 0x9c0]
mov dword [rcx + 0x54], eax
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x70]
mov qword [rax + 0x20], rcx
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0xee0]
mov ecx, dword [rcx + 0x28]
mov dword [rax + 0x5c], ecx
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov qword [rax + 0x28], rcx
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0xee0]
mov ecx, dword [rcx + 0x2c]
mov dword [rax + 0x50], ecx
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x68]
mov qword [rax + 0x10], rcx
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0xee0]
mov ecx, dword [rcx + 0xb8]
mov dword [rax + 0x58], ecx
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0x9c8]
mov rcx, qword [rcx + 0x20]
mov qword [rax + 0x38], rcx
mov eax, 1
imul rax, rax, 0x70
mov rcx, qword [rsp + 0x9c0]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x9c0]
movsxd rcx, dword [rcx + 0x60]
imul rcx, rcx, 0x38
add rax, rcx
mov qword [rsp + 0x9b8], rax
mov eax, 1
imul rax, rax, 0x70
mov rcx, qword [rsp + 0x9c0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x9b0], rax
jmp 0x140215c34
mov rax, qword [rsp + 0x9b0]
add rax, 0x38
mov qword [rsp + 0x9b0], rax
mov rax, qword [rsp + 0x9b8]
cmp qword [rsp + 0x9b0], rax
je 0x140215c6a
mov eax, 0x80
mov rcx, qword [rsp + 0x9b0]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x9b0]
mov rcx, qword [rsp + 0x48]
mov qword [rax + 0x28], rcx
jmp 0x140215c20
jmp 0x140215c7f
mov rax, qword [rsp + 0x9a8]
mov rax, qword [rax]
mov qword [rsp + 0x9c0], rax
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0x110]
inc eax
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x110], eax
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x100]
mov qword [rax + 8], rcx
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x38]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0xee0]
mov ecx, dword [rcx + 0x3c]
mov dword [rax + 0x68], ecx
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x9c0]
mov eax, dword [rax + 0x74]
mov dword [rcx + 0x6c], eax
mov rax, qword [rsp + 0x9c0]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x120]
mov qword [rax + 0x48], rcx
mov rax, qword [rsp + 0xee0]
mov qword [rax + 0x120], 0
mov rax, qword [rsp + 0xee0]
mov dword [rax + 0x3c], 0
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0x9c0]
mov qword [rax + 0x100], rcx
mov eax, 1
imul rax, rax, 0x70
mov rcx, qword [rsp + 0x9c0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0x60]
mov qword [rax + 0x70], rcx
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0x9c0]
mov ecx, dword [rcx + 0x60]
mov dword [rax + 0x28], ecx
mov rax, qword [rsp + 0x9c0]
movzx eax, word [rax + 0x64]
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x2c], eax
mov rax, qword [rsp + 0xee0]
movsxd rax, dword [rax + 0x28]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0xee0]
mov qword [rcx + 0x98], rax
mov rax, qword [rsp + 0x9c8]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
lea rax, [rcx + rax*8]
mov rcx, qword [rsp + 0x9c0]
mov qword [rcx + 0x30], rax
mov rax, qword [rsp + 0x9c8]
mov eax, dword [rax + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
sar eax, 3
cdqe
mov qword [rsp + 0xe10], rax
mov rcx, qword [rsp + 0x9c0]
mov rdi, qword [rcx + 0x30]
xor eax, eax
mov rcx, qword [rsp + 0xe10]
rep stosb byte [rdi], al
mov rax, qword [rsp + 0x9c8]
mov rax, qword [rax]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0x30]
mov qword [rax + 0x68], rcx
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0x9c8]
mov ecx, dword [rcx + 8]
mov dword [rax + 0xb8], ecx
mov eax, reloc.OLEAUT32.dll_SafeArrayGetElement
imul rax, rax, 0xffffffffffffffff
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0x9d8], rax
mov rax, qword [rsp + 0x9d8]
movsxd rax, dword [rax + 0x54]
imul rax, rax, 0x18
mov rcx, qword [rsp + 0x9d8]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x38]
mov edx, dword [rdx + 4]
add edx, dword [rcx + rax + 4]
mov eax, edx
cdqe
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x9d8]
add rax, qword [rcx + 0x20]
mov qword [rsp + 0x9e0], rax
mov r8d, 0x1000
mov rdx, qword [rsp + 0x9e0]
mov rcx, qword [rsp + 0x80]
call fcn.14021ba30
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x30]
and eax, 0x80000
test eax, eax
je 0x140215f59
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
mov rcx, qword [rsp + 0x48]
add rax, qword [rcx + 0x2a0]
mov rcx, qword [rsp + 0x48]
mov qword [rcx + 0x2a0], rax
jmp 0x140215fa8
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 0
je 0x140215f87
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
mov rcx, qword [rsp + 0x48]
add rax, qword [rcx + 0x298]
mov rcx, qword [rsp + 0x48]
mov qword [rcx + 0x298], rax
jmp 0x140215fa8
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
mov rcx, qword [rsp + 0xee0]
add rax, qword [rcx + 0x50]
mov rcx, qword [rsp + 0xee0]
mov qword [rcx + 0x50], rax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 0
je 0x140215fdd
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x298], 0
jne 0x140215fdb
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x2a0], 0
jne 0x140215fdb
jmp 0x14020e61b
jmp 0x140216000
mov rax, qword [rsp + 0xee0]
cmp qword [rax + 0x50], 0
jne 0x140216000
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x2a0], 0
jne 0x140216000
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0xee0]
cmp qword [rax + 0x100], 0
je 0x140216075
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0x9e8], rax
jmp 0x140216044
mov rax, qword [rsp + 0x9e8]
mov rax, qword [rax + 8]
mov qword [rsp + 0x9e8], rax
mov rax, qword [rsp + 0x9e8]
cmp qword [rax + 8], 0
je 0x140216055
jmp 0x140216030
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x9e8]
add rax, qword [rcx + 0x20]
mov qword [rsp + 0x68], rax
jmp 0x140216092
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rcx, qword [rsp + 0x68]
call fcn.14021afa0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
call fcn.14021afa0
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x70]
mov rcx, qword [rcx]
cmp qword [rax], rcx
jge 0x1402160e5
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x70]
mov rcx, qword [rcx]
mov qword [rax], rcx
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
cmp qword [rax], 0
jle 0x140216136
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x68]
mov qword [rcx], rax
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x68]
mov rax, qword [rax]
mov qword [rsp + 0x9f8], rax
cmp qword [rsp + 0x9f8], 0
jle 0x1402161ec
mov rax, qword [rsp + 0x78]
cmp qword [rax], 0
jle 0x1402161c7
mov rax, qword [rsp + 0x78]
mov rax, qword [rax]
mov qword [rsp + 0xe18], rax
jmp 0x1402161d3
mov qword [rsp + 0xe18], 0
mov rdx, qword [rsp + 0xe18]
lea rcx, [rsp + 0x9f8]
call fcn.1401cd470
test eax, eax
je 0x1402161fd
mov rax, qword [rsp + 0x80]
mov qword [rax], 0xffffffffffffffff
jmp 0x140216210
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x9f8]
mov qword [rax], rcx
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
cmp qword [rax], 0
je 0x140216260
mov rax, qword [rsp + 0x68]
cmp qword [rax], 0
jle 0x14021625b
mov rax, qword [rsp + 0x68]
mov rax, qword [rax]
dec rax
mov rcx, qword [rsp + 0x68]
mov qword [rcx], rax
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
movabs rcx, 0x8000000000000000
cmp qword [rax], rcx
jle 0x1402162a9
mov rax, qword [rsp + 0x68]
mov rax, qword [rax]
dec rax
mov rcx, qword [rsp + 0x68]
mov qword [rcx], rax
mov rax, qword [rsp + 0x68]
cmp qword [rax], 0
jne 0x1402162b9
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
mov dword [rsp + 0xa04], eax
movsxd rax, dword [rsp + 0xa04]
lea rax, [rax*8 + 0x68]
mov rdx, rax
mov rcx, qword [rsp + 0x48]
call fcn.1401dbb60
mov qword [rsp + 0xa08], rax
cmp qword [rsp + 0xa08], 0
jne 0x140216303
jmp 0x140217f74
mov rax, qword [rsp + 0xa08]
mov qword [rax + 0x10], 0
movsxd rax, dword [rsp + 0xa04]
mov rcx, qword [rsp + 0xa08]
lea rax, [rcx + rax*8 + 0x30]
mov rcx, qword [rsp + 0xa08]
mov qword [rcx], rax
mov r8w, 1
mov rdx, qword [rsp + 0x48]
mov rax, qword [rsp + 0xa08]
mov rcx, qword [rax]
call fcn.14021af60
mov rax, qword [rsp + 0xa08]
mov rcx, qword [rsp + 0x38]
mov rcx, qword [rcx + 0x10]
mov qword [rax + 8], rcx
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
sub rcx, rax
mov rax, rcx
cqo
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
idiv rcx
mov rcx, qword [rsp + 0xa08]
mov dword [rcx + 0x20], eax
mov rax, qword [rsp + 0xa08]
mov rcx, qword [rsp + 0xee0]
mov qword [rax + 0x18], rcx
mov rax, qword [rsp + 0xa08]
mov byte [rax + 0x28], 0
mov rax, qword [rsp + 0xa08]
mov dword [rax + 0x24], 0
mov rax, qword [rsp + 0xa08]
movzx ecx, byte [rsp + 0xa04]
mov byte [rax + 0x29], cl
mov rax, qword [rsp + 0x38]
mov byte [rax + 1], 0xf0
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xa08]
mov qword [rax + 0x10], rcx
mov rax, qword [rsp + 0x38]
mov byte [rax], 0x97
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xa18], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xa20], rax
mov rax, qword [rsp + 0xa18]
mov rcx, qword [rsp + 0xa20]
cmp qword [rax + 0x10], rcx
je 0x1402164ae
mov rax, qword [rsp + 0xa18]
mov rcx, qword [rsp + 0xa20]
mov qword [rax + 0x10], rcx
mov rax, qword [rsp + 0xa18]
movzx eax, byte [rax + 0x29]
dec eax
mov dword [rsp + 0xa10], eax
jmp 0x14021646d
mov eax, dword [rsp + 0xa10]
dec eax
mov dword [rsp + 0xa10], eax
cmp dword [rsp + 0xa10], 0
jl 0x1402164ae
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
add eax, dword [rsp + 0xa10]
cdqe
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
movsxd rcx, dword [rsp + 0xa10]
mov rdx, qword [rsp + 0xa18]
mov qword [rdx + rcx*8 + 0x30], rax
jmp 0x14021645d
mov rax, qword [rsp + 0xa20]
mov eax, dword [rax + 0xc]
inc eax
mov rcx, qword [rsp + 0xa20]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0xa18]
add rax, 0x30
mov rcx, qword [rsp + 0xa18]
movzx ecx, byte [rcx + 0x29]
mov rdx, qword [rsp + 0xa18]
mov rdx, qword [rdx + 8]
mov rdx, qword [rdx + 0x18]
mov qword [rsp + 0xe20], rdx
mov r8, rax
mov edx, ecx
mov rcx, qword [rsp + 0xa18]
mov rax, qword [rsp + 0xe20]
call qword [str.PS_]
mov rax, qword [rsp + 0xa18]
cmp dword [rax + 0x24], 0
je 0x140216609
mov rax, qword [rsp + 0xa18]
cmp dword [rax + 0x24], 0
jle 0x140216567
mov rax, qword [rsp + 0xa18]
mov rcx, qword [rax]
call fcn.140188ba0
mov r8, rax
lea rdx, [0x140323a3c]
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
mov rax, qword [rsp + 0xa18]
mov eax, dword [rax + 0x24]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0xa18]
movzx eax, byte [rax + 0x28]
test eax, eax
je 0x1402165ca
mov eax, reloc.OLEAUT32.dll_SafeArrayGetElement
imul rax, rax, 0xffffffffffffffff
mov rcx, qword [rsp + 0x38]
mov eax, dword [rcx + rax + 4]
mov dword [rsp + 0xa10], eax
cmp dword [rsp + 0xa10], 0
je 0x1402165be
movsxd rax, dword [rsp + 0xa10]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov edx, 1
mov rcx, rax
call fcn.14021b3c0
mov rax, qword [rsp + 0xa18]
mov byte [rax + 0x28], 0
mov rax, qword [rsp + 0xa18]
mov rcx, qword [rax]
call fcn.14021b310
mov rax, qword [rsp + 0xa18]
mov rax, qword [rax]
mov ecx, 1
mov word [rax + 8], cx
mov rax, qword [rsp + 0xa18]
mov dword [rax + 0x24], 0
cmp dword [rsp + 0x40], 0
je 0x140216609
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xa28], rax
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax + 0x10]
mov rcx, qword [rsp + 0xa28]
call fcn.14021a9e0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140216678
mov rcx, qword [rsp + 0xa28]
call fcn.140188ba0
mov r8, rax
lea rdx, [0x140323db4]
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
jmp 0x140217e06
movzx eax, byte [rsp + 0x51]
mov edx, eax
mov rcx, qword [rsp + 0xa28]
call fcn.14020d630
mov rcx, qword [rsp + 0xa28]
call fcn.14021bc10
test eax, eax
je 0x1402166a2
jmp 0x140217f53
jmp case.0x14020e4f9.82
mov eax, 4
imul rax, rax, 0
mov dword [rsp + rax + 0xa48], 0
mov eax, 4
imul rax, rax, 2
mov dword [rsp + rax + 0xa48], 0xffffffff
mov eax, 4
imul rax, rax, 1
mov dword [rsp + rax + 0xa48], 0xffffffff
mov eax, 4
imul rax, rax, 2
lea rax, [rsp + rax + 0xa48]
mov ecx, 4
imul rcx, rcx, 1
lea rcx, [rsp + rcx + 0xa48]
mov qword [rsp + 0x20], rax
mov r9, rcx
mov rax, qword [rsp + 0x38]
mov r8d, dword [rax + 8]
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0x48]
call fcn.1401d7620
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x14021675b
cmp dword [rsp + 0x40], 5
je 0x14021673f
jmp 0x140217e06
mov dword [rsp + 0x40], 0
mov eax, 4
imul rax, rax, 0
mov dword [rsp + rax + 0xa48], 1
mov dword [rsp + 0xa30], 0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xa68], rax
jmp 0x1402167ac
mov eax, dword [rsp + 0xa30]
inc eax
mov dword [rsp + 0xa30], eax
mov rax, qword [rsp + 0xa68]
add rax, 0x38
mov qword [rsp + 0xa68], rax
cmp dword [rsp + 0xa30], 3
jge 0x1402167d8
movsxd rax, dword [rsp + 0xa30]
movsxd rax, dword [rsp + rax*4 + 0xa48]
mov rdx, rax
mov rcx, qword [rsp + 0xa68]
call fcn.14021b3c0
jmp 0x140216788
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0xa80], eax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
mov rax, qword [rcx + rax + 8]
mov qword [rsp + 0xa70], rax
mov rcx, qword [rsp + 0xa70]
call fcn.1401d64e0
mov qword [rsp + 0xa78], rax
mov rcx, qword [rsp + 0xa78]
call fcn.1401f55a0
mov dword [rsp + 0xa84], eax
cmp dword [rsp + 0xa80], 0xffffffff
jne 0x14021686a
mov eax, dword [rsp + 0xa84]
mov dword [rsp + 0xa80], eax
mov rcx, qword [rsp + 0xa78]
call fcn.1401f5b20
test eax, eax
jne 0x140216889
mov eax, dword [rsp + 0xa84]
mov dword [rsp + 0xa80], eax
mov edx, 1
mov rcx, qword [rsp + 0xa78]
call fcn.1401f53f0
mov qword [rsp + 0xa88], rax
cmp dword [rsp + 0xa80], 5
jne 0x1402168dd
mov rcx, qword [rsp + 0xa88]
call fcn.140206680
test eax, eax
je 0x1402168cf
mov rcx, qword [rsp + 0xa78]
call fcn.1401f7840
test eax, eax
jne 0x1402168dd
mov eax, dword [rsp + 0xa84]
mov dword [rsp + 0xa80], eax
mov eax, dword [rsp + 0xa84]
cmp dword [rsp + 0xa80], eax
je 0x140216a16
cmp dword [rsp + 0xa84], 5
je 0x140216909
cmp dword [rsp + 0xa80], 5
jne 0x140216a16
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x5f]
test eax, eax
je 0x140216924
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc0], 1
jle 0x14021697c
mov dword [rsp + 0x40], 1
cmp dword [rsp + 0xa80], 5
jne 0x140216947
lea rax, str.into
mov qword [rsp + 0xe28], rax
jmp 0x140216956
lea rax, str.out_of
mov qword [rsp + 0xe28], rax
mov r8, qword [rsp + 0xe28]
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
jmp 0x140217e06
cmp dword [rsp + 0xa84], 5
jne 0x1402169b9
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0xa78]
call fcn.1401f4c60
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
jne 0x1402169b7
mov edx, dword [rsp + 0xa80]
mov rcx, qword [rsp + 0xa78]
call fcn.1401f6d30
jmp 0x1402169d5
cmp dword [rsp + 0xa84], 4
jne 0x1402169d5
mov edx, 2
mov rcx, qword [rsp + 0xa78]
call fcn.1401f6d30
cmp dword [rsp + 0x40], 0
jne 0x140216a16
cmp dword [rsp + 0xa80], 5
jne 0x1402169f3
mov dword [rsp + 0xe30], 2
jmp 0x1402169fe
mov dword [rsp + 0xe30], 1
mov edx, dword [rsp + 0xe30]
mov rcx, qword [rsp + 0xa70]
call fcn.1401d70f0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140216a2b
mov eax, dword [rsp + 0xa84]
mov dword [rsp + 0xa80], eax
mov edx, dword [rsp + 0xa80]
mov rcx, qword [rsp + 0xa78]
call fcn.1401f6d30
mov dword [rsp + 0xa80], eax
mov eax, 0xa02
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
mov ecx, dword [rsp + 0xa80]
call fcn.1401f0750
mov rcx, qword [rsp + 0x80]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0x80]
mov rcx, qword [rax + 0x10]
call fcn.140206680
mov rcx, qword [rsp + 0x80]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x80]
mov byte [rax + 0xa], 1
movzx eax, byte [rsp + 0x51]
mov edx, eax
mov rcx, qword [rsp + 0x80]
call fcn.14020d630
cmp dword [rsp + 0x40], 0
je 0x140216ab7
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0xee0]
add rax, 0x90
mov rcx, qword [rsp + 0x38]
mov r8d, dword [rcx + 4]
mov rdx, qword [rsp + 0x48]
mov rcx, rax
call fcn.140200b40
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140216af0
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
mov rax, qword [rcx + rax + 8]
mov qword [rsp + 0xa90], rax
mov rcx, qword [rsp + 0xa90]
call fcn.1401d3e10
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140216b49
cmp dword [rsp + 0x40], 0x65
je 0x140216b3c
jmp 0x140217e06
mov dword [rsp + 0x40], 0
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 0
jne 0x140216b65
mov rcx, qword [rsp + 0x48]
call fcn.1401df300
jmp 0x140216b84
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0xc4]
or eax, 1
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0xc4], eax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax + 0xc]
mov byte [rsp + 0xa98], al
movzx eax, byte [rsp + 0xa98]
test eax, eax
jne 0x140216bba
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x30]
and eax, 0x400
test eax, eax
jne 0x140216c44
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 4]
mov dword [rsp + 0xa9c], eax
movsxd rax, dword [rsp + 0xa9c]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
movzx r8d, byte [rsp + 0xa98]
mov rdx, qword [rsp + 0x38]
mov edx, dword [rdx + 8]
mov rcx, qword [rcx + rax + 8]
call fcn.1401d4f00
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140216c44
mov eax, dword [rsp + 0x40]
and eax, 0xff
cmp eax, 6
jne 0x140216c3f
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xaa0], rax
mov r8, qword [rsp + 0xaa0]
lea rdx, str.database_table_is_locked:__s
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xaa8], rax
mov rdx, qword [rsp + 0xaa8]
mov rcx, qword [rsp + 0x48]
call fcn.14021fa50
mov dword [rsp + 0x40], eax
cmp qword [rsp + 0xaa8], 0
je 0x140216c94
mov rax, qword [rsp + 0xaa8]
mov rdx, qword [rax + 0x10]
mov rcx, qword [rsp + 0xee0]
call fcn.140220a50
cmp dword [rsp + 0x40], 0
je 0x140216ca0
jmp 0x140217e06
jmp case.0x14020e4f9.82
lea rax, [rsp + 0xab8]
mov rdi, rax
xor eax, eax
mov ecx, 0x38
rep stosb byte [rdi], al
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0xae0], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov rdx, rax
lea rcx, [rsp + 0xab8]
call fcn.14021a850
mov dword [rsp + 0x40], eax
lea rcx, [rsp + 0xab8]
call fcn.140188ba0
mov qword [rsp + 0xaf8], rax
cmp qword [rsp + 0xaf8], 0
je 0x140216d41
mov rax, qword [rsp + 0xee0]
add rax, 0x90
mov r9, rax
mov r8, qword [rsp + 0xaf8]
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0x48]
call fcn.14021ff30
mov dword [rsp + 0x40], eax
lea rcx, [rsp + 0xab8]
call fcn.14021b310
cmp dword [rsp + 0x40], 0
je 0x140216d5a
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0xcc]
inc eax
mov rcx, qword [rsp + 0x48]
mov dword [rcx + 0xcc], eax
mov rax, qword [rsp + 0x38]
mov r8, qword [rax + 0x10]
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0x48]
call fcn.1402200a0
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0xcc]
dec eax
mov rcx, qword [rsp + 0x48]
mov dword [rcx + 0xcc], eax
cmp dword [rsp + 0x40], 0
je 0x140216dba
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov qword [rsp + 0xb00], 0
mov qword [rsp + 0xb18], 0
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xb28], rax
cmp qword [rsp + 0xb28], 0
je 0x140216e05
mov rax, qword [rsp + 0xb28]
cmp qword [rax], 0
jne 0x140216e12
mov dword [rsp + 0x40], 6
jmp 0x140217e06
mov rax, qword [rsp + 0xb28]
mov rax, qword [rax]
mov qword [rsp + 0xb30], rax
mov rax, qword [rsp + 0xb30]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0xe38], rax
lea rdx, [rsp + 0xb18]
mov rcx, qword [rsp + 0xb28]
mov rax, qword [rsp + 0xe38]
call qword [str.PS_]
mov dword [rsp + 0x40], eax
mov rdx, qword [rsp + 0xb28]
mov rcx, qword [rsp + 0xee0]
call fcn.140220a50
cmp dword [rsp + 0x40], 0
je 0x140216e7c
jmp 0x140217e06
mov rax, qword [rsp + 0xb18]
mov rcx, qword [rsp + 0xb28]
mov qword [rax], rcx
mov byte [rsp + 0x20], 2
mov r9d, 0xffffffff
xor r8d, r8d
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
call fcn.140196dd0
mov qword [rsp + 0xb00], rax
cmp qword [rsp + 0xb00], 0
je 0x140216ef3
mov rax, qword [rsp + 0xb00]
mov rcx, qword [rsp + 0xb18]
mov qword [rax + 0x38], rcx
mov rax, qword [rsp + 0xb28]
mov eax, dword [rax + 8]
inc eax
mov rcx, qword [rsp + 0xb28]
mov dword [rcx + 8], eax
jmp 0x140216f22
mov rax, qword [rsp + 0xb30]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0xe40], rax
mov rcx, qword [rsp + 0xb18]
mov rax, qword [rsp + 0xe40]
call qword [str.PS_]
jmp 0x140217f74
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xb48], rax
mov eax, 0x38
imul rax, rax, 1
mov rcx, qword [rsp + 0xb48]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xb50], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0xb68], rax
mov rax, qword [rsp + 0xb68]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0xb58], rax
mov rax, qword [rsp + 0xb58]
mov rax, qword [rax]
mov qword [rsp + 0xb60], rax
mov rax, qword [rsp + 0xb60]
mov rax, qword [rax]
mov qword [rsp + 0xb40], rax
mov rax, qword [rsp + 0xb50]
mov eax, dword [rax]
mov dword [rsp + 0xb38], eax
mov rax, qword [rsp + 0xb48]
mov eax, dword [rax]
mov dword [rsp + 0xb3c], eax
mov dword [rsp + 0xb70], 0
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x78]
mov qword [rsp + 0xb78], rax
mov dword [rsp + 0xb74], 0
jmp 0x140217022
mov eax, dword [rsp + 0xb74]
inc eax
mov dword [rsp + 0xb74], eax
mov eax, dword [rsp + 0xb38]
cmp dword [rsp + 0xb74], eax
jge 0x140217065
mov eax, dword [rsp + 0xb74]
inc eax
cdqe
imul rax, rax, 0x38
mov rcx, qword [rsp + 0xb50]
add rcx, rax
mov rax, rcx
movsxd rcx, dword [rsp + 0xb74]
mov rdx, qword [rsp + 0xb78]
mov qword [rdx + rcx*8], rax
jmp 0x140217012
mov rax, qword [rsp + 0xb40]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0xe48], rax
mov rax, qword [rsp + 0xb78]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0xb38]
mov rax, qword [rsp + 0x38]
mov r8, qword [rax + 0x10]
mov edx, dword [rsp + 0xb3c]
mov rcx, qword [rsp + 0xb58]
mov rax, qword [rsp + 0xe48]
call qword [str.PS_]
mov dword [rsp + 0x40], eax
mov rdx, qword [rsp + 0xb60]
mov rcx, qword [rsp + 0xee0]
call fcn.140220a50
cmp dword [rsp + 0x40], 0
je 0x1402170d9
jmp 0x140217e06
mov rax, qword [rsp + 0xb40]
mov rax, qword [rax + 0x50]
mov qword [rsp + 0xe50], rax
mov rcx, qword [rsp + 0xb58]
mov rax, qword [rsp + 0xe50]
call qword [str.PS_]
mov dword [rsp + 0xb70], eax
mov rax, qword [rsp + 0xb68]
mov byte [rax + 2], 0
cmp dword [rsp + 0xb70], 0
je 0x140217125
jmp 0x14020e61b
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0xbe8], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xb90], rax
mov rax, qword [rsp + 0xbe8]
movzx eax, byte [rax + 2]
test eax, eax
je 0x140217190
mov rcx, qword [rsp + 0xb90]
call fcn.14021b430
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0xbe8]
mov rax, qword [rax + 0x38]
mov rax, qword [rax]
mov qword [rsp + 0xb80], rax
mov rax, qword [rsp + 0xb80]
mov rax, qword [rax]
mov qword [rsp + 0xb88], rax
lea rax, [rsp + 0xba8]
mov rdi, rax
xor eax, eax
mov ecx, 0x38
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xb90]
mov qword [rsp + 0xba8], rax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
test eax, eax
je 0x140217219
mov rcx, qword [rsp + 0xb90]
call fcn.14021b430
mov eax, 0x4001
mov rcx, qword [rsp + 0xb90]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0xb90]
mov dword [rax], 0
jmp 0x140217239
mov rax, qword [rsp + 0xb90]
movzx eax, word [rax + 8]
and eax, 0xffff3e00
or eax, 1
mov rcx, qword [rsp + 0xb90]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0xb88]
mov rax, qword [rax + 0x58]
mov qword [rsp + 0xe58], rax
mov rax, qword [rsp + 0x38]
mov r8d, dword [rax + 8]
lea rdx, [rsp + 0xba8]
mov rax, qword [rsp + 0xbe8]
mov rcx, qword [rax + 0x38]
mov rax, qword [rsp + 0xe58]
call qword [str.PS_]
mov dword [rsp + 0x40], eax
mov rdx, qword [rsp + 0xb80]
mov rcx, qword [rsp + 0xee0]
call fcn.140220a50
cmp dword [rsp + 0xbcc], 0
jle 0x1402172ca
mov rcx, qword [rsp + 0xb90]
call fcn.140188ba0
mov r8, rax
lea rdx, [0x140323dcc]
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
mov eax, dword [rsp + 0xbcc]
mov dword [rsp + 0x40], eax
movzx eax, byte [rsp + 0x51]
mov edx, eax
mov rcx, qword [rsp + 0xb90]
call fcn.14020d630
mov rcx, qword [rsp + 0xb90]
call fcn.14021bc10
test eax, eax
je 0x1402172f4
jmp 0x140217f53
cmp dword [rsp + 0x40], 0
je 0x140217300
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov dword [rsp + 0xc00], 0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0xc08], rax
mov rax, qword [rsp + 0xc08]
movzx eax, byte [rax + 2]
test eax, eax
je 0x140217349
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0xc08]
mov rax, qword [rax + 0x38]
mov rax, qword [rax]
mov qword [rsp + 0xbf0], rax
mov rax, qword [rsp + 0xbf0]
mov rax, qword [rax]
mov qword [rsp + 0xbf8], rax
mov rax, qword [rsp + 0xbf8]
mov rax, qword [rax + 0x48]
mov qword [rsp + 0xe60], rax
mov rax, qword [rsp + 0xc08]
mov rcx, qword [rax + 0x38]
mov rax, qword [rsp + 0xe60]
call qword [str.PS_]
mov dword [rsp + 0x40], eax
mov rdx, qword [rsp + 0xbf0]
mov rcx, qword [rsp + 0xee0]
call fcn.140220a50
cmp dword [rsp + 0x40], 0
je 0x1402173c6
jmp 0x140217e06
mov rax, qword [rsp + 0xbf8]
mov rax, qword [rax + 0x50]
mov qword [rsp + 0xe68], rax
mov rax, qword [rsp + 0xc08]
mov rcx, qword [rax + 0x38]
mov rax, qword [rsp + 0xe68]
call qword [str.PS_]
mov dword [rsp + 0xc00], eax
cmp dword [rsp + 0xc00], 0
jne 0x14021740a
jmp case.0x14020e4f9.12
jmp 0x14020e51b
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xc10], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xc18], rax
mov edx, 1
mov rcx, qword [rsp + 0xc18]
call fcn.14020d630
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x140217466
jmp 0x140217e06
mov rax, qword [rsp + 0xc10]
mov rax, qword [rax]
mov rax, qword [rax + 0x98]
mov qword [rsp + 0xe70], rax
mov rax, qword [rsp + 0xc18]
mov rdx, qword [rax + 0x10]
mov rcx, qword [rsp + 0xc10]
mov rax, qword [rsp + 0xe70]
call qword [str.PS_]
mov dword [rsp + 0x40], eax
mov rdx, qword [rsp + 0xc10]
mov rcx, qword [rsp + 0xee0]
call fcn.140220a50
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0xc4]
and eax, 0xfffffffe
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0xc4], eax
cmp dword [rsp + 0x40], 0
je 0x1402174e6
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xc20], rax
cmp qword [rsp + 0xc20], 0
je 0x140217519
mov rax, qword [rsp + 0xc20]
cmp qword [rax], 0
jne 0x140217526
mov dword [rsp + 0x40], 6
jmp 0x140217e06
mov rax, qword [rsp + 0xc20]
mov rax, qword [rax]
mov qword [rsp + 0xc28], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
mov dword [rsp + 0xc30], eax
mov rax, qword [rsp + 0xc28]
cmp qword [rax + 0x68], 0
je 0x14021773a
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x66]
mov byte [rsp + 0xc68], al
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0x78]
mov qword [rsp + 0xc58], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xc60], rax
mov dword [rsp + 0xc34], 0
jmp 0x1402175bc
mov eax, dword [rsp + 0xc34]
inc eax
mov dword [rsp + 0xc34], eax
mov eax, dword [rsp + 0xc30]
cmp dword [rsp + 0xc34], eax
jge 0x1402175fe
movsxd rax, dword [rsp + 0xc34]
mov rcx, qword [rsp + 0xc58]
mov rdx, qword [rsp + 0xc60]
mov qword [rcx + rax*8], rdx
mov rax, qword [rsp + 0xc60]
add rax, 0x38
mov qword [rsp + 0xc60], rax
jmp 0x1402175ac
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x38]
movzx ecx, byte [rcx + 2]
mov byte [rax + 0x66], cl
mov rax, qword [rsp + 0xc28]
mov rax, qword [rax + 0x68]
mov qword [rsp + 0xe78], rax
lea r9, [rsp + 0xc48]
mov r8, qword [rsp + 0xc58]
mov edx, dword [rsp + 0xc30]
mov rcx, qword [rsp + 0xc20]
mov rax, qword [rsp + 0xe78]
call qword [str.PS_]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rsp + 0xc68]
mov byte [rax + 0x66], cl
mov rdx, qword [rsp + 0xc20]
mov rcx, qword [rsp + 0xee0]
call fcn.140220a50
cmp dword [rsp + 0x40], 0
jne 0x14021769c
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 0
je 0x14021769c
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0xc48]
mov qword [rax + 0x38], rcx
mov eax, dword [rsp + 0x40]
and eax, 0xff
cmp eax, 0x13
jne 0x140217716
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
movzx eax, byte [rax + 0x1c]
test eax, eax
je 0x140217716
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
cmp eax, 4
jne 0x1402176d3
mov dword [rsp + 0x40], 0
jmp 0x140217714
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
cmp eax, 5
jne 0x1402176ee
mov dword [rsp + 0xe80], 2
jmp 0x1402176fe
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
mov dword [rsp + 0xe80], eax
mov rax, qword [rsp + 0xee0]
movzx ecx, byte [rsp + 0xe80]
mov byte [rax + 0xbe], cl
jmp 0x14021772e
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0x3c]
inc eax
mov rcx, qword [rsp + 0xee0]
mov dword [rcx + 0x3c], eax
cmp dword [rsp + 0x40], 0
je 0x14021773a
jmp 0x140217e06
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
mov rcx, qword [rcx + rax + 8]
call fcn.1401d4de0
mov eax, eax
mov rcx, qword [rsp + 0x80]
mov qword [rcx], rax
jmp case.0x14020e4f9.82
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xee0]
call fcn.1401bcec0
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x20]
mov rax, qword [rcx + rax + 8]
mov qword [rsp + 0xc70], rax
mov dword [rsp + 0xc6c], 0
mov rax, qword [rsp + 0x38]
cmp dword [rax + 0xc], 0
je 0x140217812
mov rcx, qword [rsp + 0xc70]
call fcn.1401d4de0
mov dword [rsp + 0xc6c], eax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
cmp dword [rsp + 0xc6c], eax
jae 0x140217812
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0xc6c], eax
mov edx, dword [rsp + 0xc6c]
mov rcx, qword [rsp + 0xc70]
call fcn.1401d4fa0
cdqe
mov rcx, qword [rsp + 0x80]
mov qword [rcx], rax
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
mov dword [rsp + 0xc78], eax
mov eax, dword [rsp + 0xc78]
dec eax
cdqe
lea rax, [rax*8 + 0x38]
mov rdx, rax
mov rcx, qword [rsp + 0x48]
call fcn.1401dbb60
mov qword [rsp + 0xc80], rax
cmp qword [rsp + 0xc80], 0
jne 0x140217880
jmp 0x140217f74
mov rax, qword [rsp + 0xc80]
mov qword [rax], 0
mov rax, qword [rsp + 0xc80]
mov rcx, qword [rsp + 0x38]
mov rcx, qword [rcx + 0x10]
mov qword [rax + 8], rcx
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
sub rcx, rax
mov rax, rcx
cqo
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
idiv rcx
mov rcx, qword [rsp + 0xc80]
mov dword [rcx + 0x20], eax
mov rax, qword [rsp + 0xc80]
mov rcx, qword [rsp + 0xee0]
mov qword [rax + 0x18], rcx
mov rax, qword [rsp + 0xc80]
mov dword [rax + 0x24], 0
mov rax, qword [rsp + 0xc80]
movzx ecx, byte [rsp + 0xc78]
mov byte [rax + 0x29], cl
mov rax, qword [rsp + 0x38]
mov byte [rax + 1], 0xf0
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xc80]
mov qword [rax + 0x10], rcx
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
add eax, 2
mov rcx, qword [rsp + 0x38]
mov byte [rcx], al
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xc90], rax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0xc90]
mov rcx, qword [rsp + 0x80]
cmp qword [rax], rcx
je 0x1402179ec
mov rax, qword [rsp + 0xc90]
mov rcx, qword [rsp + 0x80]
mov qword [rax], rcx
mov rax, qword [rsp + 0xc90]
movzx eax, byte [rax + 0x29]
dec eax
mov dword [rsp + 0xc88], eax
jmp 0x1402179ab
mov eax, dword [rsp + 0xc88]
dec eax
mov dword [rsp + 0xc88], eax
cmp dword [rsp + 0xc88], 0
jl 0x1402179ec
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
add eax, dword [rsp + 0xc88]
cdqe
imul rax, rax, 0x38
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
movsxd rcx, dword [rsp + 0xc88]
mov rdx, qword [rsp + 0xc90]
mov qword [rdx + rcx*8 + 0x30], rax
jmp 0x14021799b
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0xffff3e00
or eax, 1
mov rcx, qword [rsp + 0x80]
mov word [rcx + 8], ax
mov rax, qword [rsp + 0xc90]
add rax, 0x30
mov rcx, qword [rsp + 0xc90]
movzx ecx, byte [rcx + 0x29]
mov rdx, qword [rsp + 0xc90]
mov rdx, qword [rdx + 8]
mov rdx, qword [rdx + 0x18]
mov qword [rsp + 0xe88], rdx
mov r8, rax
mov edx, ecx
mov rcx, qword [rsp + 0xc90]
mov rax, qword [rsp + 0xe88]
call qword [str.PS_]
mov rax, qword [rsp + 0xc90]
cmp dword [rax + 0x24], 0
je 0x140217af5
mov rax, qword [rsp + 0xc90]
cmp dword [rax + 0x24], 0
jle 0x140217aaa
mov rcx, qword [rsp + 0x80]
call fcn.140188ba0
mov r8, rax
lea rdx, [0x140323dec]
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
mov rax, qword [rsp + 0xc90]
mov eax, dword [rax + 0x24]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0xee0]
add rax, 0x120
mov rcx, qword [rsp + 0x38]
mov r9d, dword [rcx + 4]
mov rcx, qword [rsp + 0xc90]
mov r8d, dword [rcx + 0x20]
mov rdx, rax
mov rcx, qword [rsp + 0x48]
call fcn.14020df70
mov rax, qword [rsp + 0xc90]
mov dword [rax + 0x24], 0
cmp dword [rsp + 0x40], 0
je 0x140217af5
jmp 0x140217e06
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + 8]
and eax, 0x12
test eax, eax
je 0x140217b32
movzx eax, byte [rsp + 0x51]
mov edx, eax
mov rcx, qword [rsp + 0x80]
call fcn.14020d630
mov rcx, qword [rsp + 0x80]
call fcn.14021bc10
test eax, eax
je 0x140217b32
jmp 0x140217f53
jmp case.0x14020e4f9.82
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x68]
and eax, 0x81
test eax, eax
je 0x140217d0d
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0xc4]
shr eax, 1
and eax, 1
test eax, eax
jne 0x140217d0d
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x10], 0
je 0x140217b87
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xe90], rax
jmp 0x140217b9e
mov rax, qword [rsp + 0xee0]
mov rax, qword [rax + 0xf0]
mov qword [rsp + 0xe90], rax
mov rax, qword [rsp + 0xe90]
mov qword [rsp + 0xca0], rax
cmp qword [rsp + 0xca0], 0
je 0x140217d0d
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x68]
and eax, 0x80
test eax, eax
je 0x140217c44
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0xe0]
mov qword [rsp + 0xca8], rax
mov rdx, qword [rsp + 0xca0]
mov rcx, qword [rsp + 0xee0]
call fcn.1402182e0
mov qword [rsp + 0xcb0], rax
mov rax, qword [rsp + 0xca8]
mov qword [rsp + 0xe98], rax
mov rdx, qword [rsp + 0xcb0]
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0xe8]
mov rax, qword [rsp + 0xe98]
call qword [str.PS_]
mov rcx, qword [rsp + 0xcb0]
call fcn.140185f30
jmp 0x140217d0d
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc8], 1
jle 0x140217cca
mov r8, qword [rsp + 0xca0]
lea rdx, [0x140323dfc]
mov rcx, qword [rsp + 0x48]
call fcn.1401f1f40
mov qword [rsp + 0xcb8], rax
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0xe0]
mov qword [rsp + 0xea0], rax
mov r9, qword [rsp + 0xcb8]
mov r8, qword [rsp + 0xee0]
mov rax, qword [rsp + 0x48]
mov rdx, qword [rax + 0xe8]
mov ecx, 1
mov rax, qword [rsp + 0xea0]
call qword [str.PS_]
mov rdx, qword [rsp + 0xcb8]
mov rcx, qword [rsp + 0x48]
call fcn.1401dba20
jmp 0x140217d0d
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0xe0]
mov qword [rsp + 0xea8], rax
mov r9, qword [rsp + 0xca0]
mov r8, qword [rsp + 0xee0]
mov rax, qword [rsp + 0x48]
mov rdx, qword [rax + 0xe8]
mov ecx, 1
mov rax, qword [rsp + 0xea8]
call qword [str.PS_]
mov rax, qword [rsp + 0x38]
mov ecx, dword [0x140321814]
cmp dword [rax + 4], ecx
jl 0x140217db8
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
cmp eax, 0xa7
jne 0x140217d35
jmp case.0x14020e4f9.82
mov dword [rsp + 0xc98], 1
jmp 0x140217d52
mov eax, dword [rsp + 0xc98]
inc eax
mov dword [rsp + 0xc98], eax
mov rax, qword [rsp + 0xee0]
mov eax, dword [rax + 0xb8]
cmp dword [rsp + 0xc98], eax
jge 0x140217dac
movsxd rax, dword [rsp + 0xc98]
imul rax, rax, 0x18
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x68]
movzx eax, byte [rcx + rax]
cmp eax, 0x14
jne 0x140217daa
movsxd rax, dword [rsp + 0xc98]
imul rax, rax, 0x18
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x68]
mov dword [rcx + rax + 4], 0
jmp 0x140217d42
mov rax, qword [rsp + 0x38]
mov dword [rax + 4], 0
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 4]
inc eax
mov rcx, qword [rsp + 0x38]
mov dword [rcx + 4], eax
mov eax, 4
imul rax, rax, 6
mov rcx, qword [rsp + 0xee0]
mov eax, dword [rcx + rax + 0xd0]
inc eax
mov ecx, 4
imul rcx, rcx, 6
mov rdx, qword [rsp + 0xee0]
mov dword [rdx + rcx + 0xd0], eax
jmp 0x14020e61b
jmp 0x14020e49d
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x61]
test eax, eax
je 0x140217e1b
mov dword [rsp + 0x40], 7
mov rax, qword [rsp + 0xee0]
cmp qword [rax + 0x90], 0
jne 0x140217e57
cmp dword [rsp + 0x40], 0xc0a
je 0x140217e57
mov ecx, dword [rsp + 0x40]
call fcn.1401def30
mov r8, rax
lea rdx, [0x140323e04]
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
mov rax, qword [rsp + 0xee0]
mov ecx, dword [rsp + 0x40]
mov dword [rax + 0x38], ecx
mov edx, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
call fcn.1402067c0
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
sub rcx, rax
mov rax, rcx
cqo
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
idiv rcx
mov rcx, qword [rsp + 0xee0]
mov rcx, qword [rcx + 0x90]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0xee0]
mov r9, qword [rcx + 0xf0]
mov r8d, eax
lea rdx, str.statement_aborts_at__d:___s___s
mov ecx, dword [rsp + 0x40]
call fcn.14018de00
mov rcx, qword [rsp + 0xee0]
call fcn.140218e70
cmp dword [rsp + 0x40], 0xc0a
jne 0x140217ee5
mov rcx, qword [rsp + 0x48]
call fcn.1401f2fe0
mov dword [rsp + 0x40], 1
movzx eax, byte [rsp + 0x50]
test eax, eax
jle 0x140217f09
movzx eax, byte [rsp + 0x50]
dec eax
mov edx, eax
mov rcx, qword [rsp + 0x48]
call fcn.1401ff360
mov eax, 4
imul rax, rax, 4
mov rcx, qword [rsp + 0xee0]
mov eax, dword [rcx + rax + 0xd0]
add eax, dword [rsp + 0x58]
mov ecx, 4
imul rcx, rcx, 4
mov rdx, qword [rsp + 0xee0]
mov dword [rdx + rcx + 0xd0], eax
mov rcx, qword [rsp + 0xee0]
call fcn.1402198f0
mov eax, dword [rsp + 0x40]
jmp 0x140218003
lea rdx, str.string_or_blob_too_big
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
mov dword [rsp + 0x40], SafeArrayGetElement
jmp 0x140217e06
mov rcx, qword [rsp + 0x48]
call fcn.1401f2fe0
lea rdx, [0x1403245b0]
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
mov dword [rsp + 0x40], 7
jmp 0x140217e06
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x61]
test eax, eax
je 0x140217fb9
mov dword [rsp + 0xeb0], 7
jmp 0x140217fc4
mov dword [rsp + 0xeb0], 9
mov eax, dword [rsp + 0xeb0]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0xee0]
mov ecx, dword [rsp + 0x40]
mov dword [rax + 0x38], ecx
mov ecx, dword [rsp + 0x40]
call fcn.1401def30
mov r8, rax
lea rdx, [0x140323e24]
mov rcx, qword [rsp + 0xee0]
call fcn.14020e240
jmp 0x140217e06
mov rdi, rax
mov rcx, rsp
lea rdx, [0x1402b6980]
call fcn.1402629dc
mov rax, rdi
mov rcx, qword [rsp + 0xeb8]
xor rcx, rsp
call fcn.1400b1670
add rsp, 0xec8
pop rdi
pop rsi
ret