Function at 0x140215590
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rbp
push rbx
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x58]
sub rsp, 0x158
mov rax, qword [0x1403486d0]
xor rax, rsp
mov qword [rbp + 0x38], rax
mov rbx, qword [rcx + 0x10]
mov r13, r9
mov rax, qword [rcx]
mov r12, r8
mov qword [rsp + 0x70], rcx
mov rdi, rdx
mov qword [rsp + 0x60], rax
mov r14, rcx
mov qword [rbp - 0x20], rbx
test rbx, rbx
jne 0x140215602
cmp qword [rcx + 0xa0], rbx
jne 0x1402155ed
test byte [rax + 0x60], 8
jne 0x1402155ed
mov byte [rcx + 0x23], 1
call fcn.14022a4f0
mov qword [rbp - 0x20], rax
mov rbx, rax
test rax, rax
je 0x140219969
movsxd rcx, dword [rbx + 0x90]
mov qword [rsp + 0x150], rsi
xor esi, esi
mov qword [rsp + 0x148], r15
cmp dword [rbx + 0x94], ecx
jg 0x140215642
mov r15d, 1
mov dword [rsp + 0x20], esi
mov r9d, r15d
mov r8d, r15d
mov edx, 0xa6
mov rcx, rbx
call fcn.1401d32a0
jmp 0x140215670
lea eax, [rcx + 1]
mov edx, 1
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0xa6
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], rdx
mov qword [rax + rcx*8 + 0x10], rsi
lea r9, [rbp - 0x48]
mov dword [r14 + 0x38], 2
mov r8, r12
mov rdx, rdi
mov rcx, r14
call fcn.140226200
movsxd rcx, eax
mov dword [rsp + 0x6c], ecx
test eax, eax
js 0x140219959
mov rax, qword [rsp + 0x60]
mov rdi, rcx
shl rdi, 5
mov r15, rcx
mov qword [rbp - 0x38], rcx
mov qword [rbp - 0x60], rdi
mov r14, qword [rax + 0x20]
add r14, rdi
cmp ecx, 1
jne 0x1402156ce
mov rcx, qword [rsp + 0x70]
call fcn.140211ff0
test eax, eax
jne 0x140219959
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rsp + 0x60]
call fcn.1402117b0
mov qword [rbp - 0x70], rax
test rax, rax
je 0x140219959
cmp dword [rbp + 0xb0], 0
mov rcx, qword [rsp + 0x60]
je 0x140215708
mov r8, r13
lea rdx, [0x1402eb630]
call fcn.140210f40
jmp 0x140215710
mov rdx, r13
call fcn.1402117b0
cmp dword [r12 + 8], 0
mov rcx, rax
mov qword [rbp - 0x80], rax
jbe 0x140215724
mov rax, qword [r14]
jmp 0x140215727
mov rax, rsi
mov r13, qword [rbp - 0x70]
mov r9, rcx
mov rcx, qword [rsp + 0x70]
mov r8, r13
mov edx, reloc.OLEAUT32.dll_SafeArrayGetLBound
mov qword [rbp - 0x78], rax
mov qword [rsp + 0x20], rax
call fcn.1401efda0
test eax, eax
jne 0x140219938
mov r8, qword [rsp + 0x60]
mov rax, qword [rbp - 0x80]
mov qword [rbp + 8], r13
mov r13d, 1
mov qword [rbp], rsi
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], rsi
mov rcx, qword [r8 + 0x18]
mov dword [r8 + 0x290], esi
test rcx, rcx
je 0x14021578b
call qword [0x14034a330]
mov r8, qword [rsp + 0x60]
mov rax, qword [rbp - 0x78]
test rax, rax
je 0x1402157a8
mov rdx, rax
mov rcx, r8
call fcn.140204850
test eax, eax
jns 0x1402157aa
jmp 0x14021583d
mov eax, esi
mov ecx, eax
mov rax, qword [rsp + 0x60]
shl rcx, 5
mov rax, qword [rax + 0x20]
mov r15, qword [rcx + rax + 8]
test r15, r15
je 0x140215839
cmp byte [r15 + 0x11], 0
je 0x1402157dd
inc dword [r15 + 0x14]
cmp byte [r15 + 0x12], 0
jne 0x1402157dd
mov rcx, r15
call fcn.1401bd370
mov rax, qword [r15 + 8]
mov rcx, qword [rax]
mov rax, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x48]
mov eax, dword [rax + 0x290]
mov dword [rsp + 0x78], eax
mov rax, qword [rcx]
test rax, rax
jne 0x140215805
lea r13d, [rax + 0xc]
jmp 0x140215814
lea r8, [rbp]
mov edx, SafeArrayGetDim
call qword [rax + 0x50]
mov r13d, eax
mov rcx, qword [rsp + 0x60]
mov eax, dword [rsp + 0x78]
mov dword [rcx + 0x290], eax
cmp byte [r15 + 0x11], 0
je 0x140215839
sub dword [r15 + 0x14], 1
jne 0x140215839
mov rcx, r15
call fcn.1402477a0
mov r15, qword [rbp - 0x38]
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140215851
call qword [0x14034a340]
test r13d, r13d
jne 0x140215a59
mov r12d, 1
mov rcx, rbx
mov edx, r12d
call fcn.140237b90
mov rax, qword [rbx]
mov rdi, qword [rbp]
cmp byte [rax + 0x67], r13b
jne 0x14021597e
mov r14, qword [rbx + 0x98]
test rdi, rdi
jne 0x1402158ab
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x1402158a1
mov rcx, r14
call fcn.14024ace0
jmp 0x14021597e
mov word [r14 + 0x14], r12w
jmp 0x14021597e
mov rax, qword [r14 + 0x18]
test rax, rax
je 0x1402158bc
mov ecx, dword [rax + 0x88]
jmp 0x1402158c1
mov ecx, 0x3b9aca00
mov r13, 0xffffffffffffffff
nop dword [rax + rax]
inc r13
cmp byte [rdi + r13], 0
jne 0x1402158d0
movsxd rax, ecx
cmp r13, rax
jle 0x14021591e
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x1402158f8
mov rcx, r14
call fcn.14024ace0
jmp 0x1402158fd
mov word [r14 + 0x14], r12w
mov rax, qword [r14 + 0x18]
test rax, rax
je 0x14021597e
mov rax, qword [rax + 0x160]
test rax, rax
je 0x14021597e
inc dword [rax + 0x30]
mov dword [rax + 0x18], SafeArrayGetLBound
jmp 0x14021597e
lea r15, [r13 + 1]
mov eax, 0x20
cmp r15, rax
cmovg eax, r15d
cmp dword [r14 + 0x20], eax
jge 0x140215947
xor r8d, r8d
mov edx, eax
mov rcx, r14
call fcn.140235950
test eax, eax
je 0x140215955
jmp 0x14021597e
mov rax, qword [r14 + 0x28]
and word [r14 + 0x14], 0x2d
mov qword [r14 + 8], rax
mov rcx, qword [r14 + 8]
mov r8, r15
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov edi, 0x7fffffff
mov byte [r14 + 0x16], r12b
and r13d, edi
mov eax, 0x202
mov dword [r14 + 0x10], r13d
mov word [r14 + 0x14], ax
mov r8, qword [rbp]
test r8, r8
je 0x1402159e4
mov edx, r12d
mov rcx, rbx
call fcn.140234ff0
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1402159ba
mov r9d, r12d
mov dword [rsp + 0x20], esi
mov r8d, r12d
mov edx, 0x54
mov rcx, rbx
call fcn.1401d32a0
jmp 0x1402159e4
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x54
mov dword [rax + rcx*8 + 4], r12d
mov qword [rax + rcx*8 + 8], r12
mov qword [rax + rcx*8 + 0x10], rsi
mov rbx, qword [rbp]
test rbx, rbx
je 0x140219938
cmp dword [0x14034a2b0], 0
je 0x140215a4a
mov rcx, qword [0x14037e7f0]
test rcx, rcx
je 0x140215a0c
call qword [0x14034a330]
mov rcx, rbx
call qword [0x14034a2e8]
dec qword [0x14037e788]
mov rcx, rbx
movsxd rdx, eax
sub qword [0x14037e740], rdx
call qword [0x14034a2d8]
mov rcx, qword [0x14037e7f0]
test rcx, rcx
je 0x140219938
call qword [0x14034a340]
jmp 0x140219938
mov rcx, qword [rbp]
call qword [0x14034a2d8]
jmp 0x140219938
cmp r13d, 0xc
je 0x140215b05
mov r8, qword [rbp]
test r8, r8
je 0x140215af4
mov rcx, qword [rsp + 0x70]
lea rdx, [0x140273c80]
call fcn.1401fdeb0
mov rbx, qword [rbp]
test rbx, rbx
je 0x140215af4
cmp dword [0x14034a2b0], 0
je 0x140215aeb
mov rcx, qword [0x14037e7f0]
test rcx, rcx
je 0x140215aa5
call qword [0x14034a330]
mov rcx, rbx
call qword [0x14034a2e8]
dec qword [0x14037e788]
mov rcx, rbx
movsxd rdx, eax
sub qword [0x14037e740], rdx
call qword [0x14034a2d8]
mov rcx, qword [0x14037e7f0]
test rcx, rcx
je 0x140215af4
call qword [0x14034a340]
mov rax, qword [rsp + 0x70]
inc dword [rax + 0x30]
mov dword [rax + 0x18], r13d
jmp 0x140219938
mov rcx, rbx
call qword [0x14034a2d8]
mov rax, qword [rsp + 0x70]
inc dword [rax + 0x30]
mov dword [rax + 0x18], r13d
jmp 0x140219938
mov rcx, qword [rbp - 0x70]
call fcn.1401e2d50
mov r13, rax
test rax, rax
je 0x140219938
test byte [rax + 9], 1
je 0x140215b32
mov rcx, qword [rsp + 0x70]
call fcn.14021b190
test eax, eax
jne 0x140219938
movzx eax, byte [r13 + 9]
test al, 2
jne 0x140215b53
test al, 4
je 0x140215b48
mov r11, qword [rbp - 0x80]
test r11, r11
jne 0x140215b57
mov rdx, r13
mov rcx, rbx
call fcn.1401ec210
mov r11, qword [rbp - 0x80]
movzx eax, byte [r13 + 8]
dec eax
cmp eax, 0x2a
ja case.0x140215b7b.5
cdqe
lea r10, [0x140000000]
mov eax, dword [r10 + rax*4 + 0x219988]
add rax, r10
jmp rax
mov r13d, dword [rsp + 0x6c]
mov rcx, rbx
mov edx, r13d
call fcn.140238470
test r11, r11
jne 0x140215bc9
mov rax, qword [rsp + 0x70]
lea r8, [0x1402df9d8]
xor r9d, r9d
lea edx, [r11 + 9]
add dword [rax + 0x38], 2
call fcn.140229ff0
mov rdx, qword [rbp - 0x70]
mov dword [rax + 4], r13d
mov dword [rax + 0x1c], r13d
mov dword [rax + 0x94], 0xfffff830
jmp 0x14021994f
lea rdx, [rsp + 0x68]
mov dword [rsp + 0x68], esi
mov rcx, r11
call fcn.14020b9b0
mov edi, dword [rsp + 0x68]
test edi, edi
jns 0x140215bf3
cmp edi, 0x80000000
jne 0x140215bf1
mov edi, 0x7fffffff
jmp 0x140215bf3
neg edi
mov rcx, qword [rsp + 0x70]
mov r8d, r13d
xor edx, edx
call fcn.1401f0d90
mov r9d, 3
mov dword [rsp + 0x20], edi
mov r8d, r13d
mov rcx, rbx
lea edx, [r9 + 0x61]
call fcn.140229da0
mov rax, qword [r14 + 0x18]
mov dword [rax + 0x74], edi
mov rax, qword [r14 + 0x18]
mov rcx, qword [r14 + 8]
mov edx, dword [rax + 0x74]
call fcn.1401f4ff0
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rbp - 0x70]
call fcn.1401fb370
mov rdx, qword [rbp - 0x80]
jmp 0x14021994f
mov rdi, qword [r14 + 8]
test r11, r11
jne 0x140215c72
test rdi, rdi
je 0x140215c5e
mov rax, qword [rdi + 8]
mov esi, dword [rax + 0x34]
movsxd rdx, esi
mov rcx, rbx
call fcn.1401e90f0
mov rdx, qword [rbp - 0x70]
jmp 0x14021994f
lea rdx, [rsp + 0x68]
mov dword [rsp + 0x68], esi
mov rcx, r11
call fcn.14020b9b0
mov rax, qword [rsp + 0x60]
xor r9d, r9d
mov edx, dword [rsp + 0x68]
xor r8d, r8d
mov rcx, rdi
mov dword [rax + 0x74], edx
call fcn.1401f5090
cmp eax, 7
jne 0x140219938
mov rcx, qword [rsp + 0x60]
call fcn.140211bb0
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rbp - 0x70]
call fcn.1401fb370
mov rdx, qword [rbp - 0x80]
jmp 0x14021994f
mov r14, qword [r14 + 8]
mov r15, 0xffffffffffffffff
test r11, r11
je 0x140215d09
lea rdx, str.fast
mov rcx, r11
call fcn.1402247b0
test eax, eax
jne 0x140215cf0
lea r15d, [rax + 2]
jmp 0x140215d09
xor r8d, r8d
mov rcx, r11
lea edx, [r8 + 1]
call fcn.1401d3160
mov ecx, esi
test al, al
setne cl
mov r15d, ecx
cmp dword [r12 + 8], 0
jne 0x140215d50
test r15d, r15d
js 0x140215d50
mov rax, qword [rsp + 0x60]
cmp dword [rax + 0x28], 0
jle 0x140215d50
mov rdi, rsi
mov rbx, rax
nop word [rax + rax]
mov rcx, qword [rbx + 0x20]
mov edx, r15d
mov rcx, qword [rdi + rcx + 8]
call fcn.1401f4ed0
inc esi
lea rdi, [rdi + 0x20]
cmp esi, dword [rbx + 0x28]
jl 0x140215d30
mov rbx, qword [rbp - 0x20]
mov edx, r15d
mov rcx, r14
call fcn.1401f4ed0
movsxd rdx, eax
jmp 0x140219930
mov rdi, qword [rsp + 0x70]
mov r13d, dword [rsp + 0x6c]
mov rcx, rdi
mov edx, r13d
mov qword [rbp - 0x60], rsi
call fcn.1401f7ac0
inc dword [rdi + 0x38]
lea r9, [0x140000000]
mov rax, qword [rbp - 0x70]
mov edi, dword [rdi + 0x38]
movzx eax, byte [rax]
cmp byte [rax + r9 + 0x2e1730], 0x70
jne 0x140215db0
mov r9d, edi
mov r8d, r13d
mov edx, 0xb1
mov rcx, rbx
call fcn.140229d30
jmp 0x140215dfa
mov rax, qword [rbp - 0x80]
test rax, rax
je 0x140215de0
lea rdx, [rbp - 0x60]
mov rcx, rax
call fcn.1401fb780
test eax, eax
jne 0x140215de0
mov rax, qword [rbp - 0x60]
test rax, rax
js 0x140215de0
mov ecx, 0xfffffffe
cmp rax, rcx
jle 0x140215de3
mov eax, ecx
jmp 0x140215de3
mov rax, rsi
mov r9d, edi
mov dword [rsp + 0x20], eax
mov r8d, r13d
mov edx, 0xb2
mov rcx, rbx
call fcn.140229da0
mov r9d, 1
mov r8d, edi
mov rcx, rbx
lea edx, [r9 + 0x53]
call fcn.140229d30
jmp 0x140219938
lea rdi, str.normal
lea r10, str.exclusive
test r11, r11
je 0x140215ec3
mov r9, r10
mov rdx, r11
sub r9, r11
nop dword [rax]
nop dword [rax + rax]
movzx r8d, byte [rdx]
movzx eax, byte [r9 + rdx]
cmp r8d, eax
jne 0x140215e59
test r8d, r8d
jne 0x140215e76
lea r9d, [r8 + 1]
jmp 0x140215ec9
lea r15, [0x140000000]
movzx ecx, byte [rax + r15 + 0x2e1730]
movzx eax, byte [r8 + r15 + 0x2e1730]
cmp eax, ecx
jne 0x140215e7b
inc rdx
jmp 0x140215e40
mov r9, rdi
mov rdx, r11
sub r9, r11
nop dword [rax]
nop dword [rax + rax]
movzx r8d, byte [rdx]
movzx eax, byte [r9 + rdx]
cmp r8d, eax
jne 0x140215ea8
test r8d, r8d
jne 0x140215ebe
mov r9d, esi
jmp 0x140215ec9
movzx ecx, byte [rax + r15 + 0x2e1730]
movzx eax, byte [r8 + r15 + 0x2e1730]
cmp eax, ecx
jne 0x140215ec3
inc rdx
jmp 0x140215e90
mov r9d, 0xffffffff
cmp dword [r12 + 8], 0
jne 0x140215f49
cmp r9d, 0xffffffff
jne 0x140215ee2
mov rax, qword [rsp + 0x60]
movzx eax, byte [rax + 0x69]
jmp 0x140215f5c
mov r8, qword [rsp + 0x60]
cmp dword [r8 + 0x28], 2
jle 0x140215f45
mov edx, 0x40
lea r10d, [rdx - 0x3e]
nop word [rax + rax]
mov rax, qword [r8 + 0x20]
mov rcx, qword [rdx + rax + 8]
mov rax, qword [rcx + 8]
mov rcx, qword [rax]
test r9d, r9d
js 0x140215f31
cmp byte [rcx + 0x10], 0
jne 0x140215f31
mov rax, qword [rcx + 0x128]
test rax, rax
je 0x140215f2d
cmp byte [rax + 0x3f], 2
je 0x140215f31
mov byte [rcx + 8], r9b
inc r10d
add rdx, 0x20
cmp r10d, dword [r8 + 0x28]
jl 0x140215f00
lea r10, str.exclusive
mov byte [r8 + 0x69], r9b
mov rax, qword [r14 + 8]
mov edx, r9d
mov rcx, qword [rax + 8]
mov rcx, qword [rcx]
call fcn.140212c30
cmp eax, 1
mov rcx, rbx
cmovne r10, rdi
mov rdx, r10
call fcn.1401e9250
jmp 0x140219938
test r11, r11
jne 0x140215f81
lea r14d, [r11 - 1]
jmp 0x140216053
mov rdi, 0xffffffffffffffff
mov r10, rdi
nop dword [rax + rax]
inc r10
cmp byte [r11 + r10], 0
jne 0x140215f90
and r10d, 0x3fffffff
lea r11, str.delete
mov r14d, esi
lea r15, [0x1402e24b0]
lea r13, [0x140000000]
nop dword [rax]
cmp r11, r15
je 0x140216050
mov r8, qword [r11]
test r8, r8
je 0x140216050
mov r9, qword [rbp - 0x80]
mov edx, r10d
test r10d, r10d
je 0x14021600e
movzx eax, byte [r9]
dec edx
test al, al
je 0x140216010
mov ecx, eax
movzx eax, byte [r8]
movzx eax, byte [rax + r13 + 0x2e1730]
cmp byte [rcx + r13 + 0x2e1730], al
jne 0x140216010
inc r9
inc r8
test edx, edx
jg 0x140215fe1
dec edx
test edx, edx
js 0x14021603b
movzx eax, byte [r9]
movzx ecx, byte [rax + r13 + 0x2e1730]
movzx eax, byte [r8]
movzx eax, byte [rax + r13 + 0x2e1730]
cmp ecx, eax
je 0x14021603b
inc r14d
add r11, 8
jmp 0x140215fc0
cmp r14d, 2
jne 0x140216069
mov rax, qword [rsp + 0x60]
mov eax, dword [rax + 0x30]
bt rax, 0x1c
jae 0x14021606e
mov r14d, edi
cmp dword [r12 + 8], 0
jne 0x14021606e
mov r13d, esi
mov dword [r12 + 8], 1
jmp 0x140216073
cmp r14d, edi
je 0x140216053
mov r13d, dword [rsp + 0x6c]
mov rax, qword [rsp + 0x60]
mov edi, dword [rax + 0x28]
sub edi, 1
js 0x14021610a
movsxd r15, edi
mov rsi, r15
movsxd r13, r13d
shl rsi, 5
mov rax, qword [rax + 0x20]
cmp qword [rsi + rax + 8], 0
je 0x1402160f9
cmp r15, r13
je 0x1402160aa
cmp dword [r12 + 8], 0
jne 0x1402160f9
mov eax, dword [rbx + 0xcc]
bts eax, edi
mov dword [rbx + 0xcc], eax
cmp edi, 1
je 0x1402160df
mov rax, qword [rbx]
mov rcx, qword [rax + 0x20]
mov rax, qword [rcx + rsi + 8]
cmp byte [rax + 0x11], 0
je 0x1402160df
mov eax, dword [rbx + 0xd0]
bts eax, edi
mov dword [rbx + 0xd0], eax
mov r9d, 1
mov dword [rsp + 0x20], r14d
mov r8d, edi
mov rcx, rbx
lea edx, [r9 + 3]
call fcn.140229da0
mov rax, qword [rsp + 0x60]
dec r15
sub rsi, 0x20
sub edi, 1
jns 0x140216091
mov eax, 1
mov rcx, rbx
mov r9d, eax
mov r8d, eax
lea edx, [rax + 0x53]
call fcn.140229d30
jmp 0x140219938
mov rax, qword [r14 + 8]
mov rcx, qword [rax + 8]
mov rax, 0xfffffffffffffffe
mov qword [rbp - 0x60], rax
mov rdi, qword [rcx]
test r11, r11
je 0x14021615e
lea rdx, [rbp - 0x60]
mov rcx, r11
call fcn.1401fb780
mov rax, qword [rbp - 0x60]
mov rcx, 0xffffffffffffffff
cmp rax, rcx
cmovl rax, rcx
cmp rax, 0xffffffffffffffff
jl 0x14021617b
mov rcx, qword [rdi + 0x128]
mov qword [rdi + 0xd0], rax
test rcx, rcx
je 0x14021617b
mov qword [rcx + 0x20], rax
mov rdx, qword [rdi + 0xd0]
jmp 0x140219930
mov rdi, qword [r14 + 8]
test r11, r11
jne 0x1402161ac
mov rcx, rdi
call fcn.1401f2f90
movsxd rdx, eax
mov rcx, rbx
call fcn.1401e90f0
mov rdx, qword [rbp - 0x70]
jmp 0x14021994f
lea rdx, [0x140287b54]
mov r9, r11
sub r9, rdx
nop dword [rax]
movzx r8d, byte [r9 + rdx]
movzx eax, byte [rdx]
cmp r8d, eax
jne 0x1402161db
test r8d, r8d
je 0x1402162a6
inc rdx
jmp 0x1402161c0
movzx ecx, byte [rax + r10 + 0x2e1730]
movzx eax, byte [r8 + r10 + 0x2e1730]
cmp eax, ecx
jne 0x1402161f6
inc rdx
jmp 0x1402161c0
lea r9, str.full
mov rdx, r11
sub r9, r11
nop dword [rax]
nop word [rax + rax]
movzx r8d, byte [rdx]
movzx eax, byte [r9 + rdx]
cmp r8d, eax
jne 0x140216229
test r8d, r8d
jne 0x14021623f
lea esi, [r8 + 1]
jmp 0x1402162a6
movzx ecx, byte [rax + r10 + 0x2e1730]
movzx eax, byte [r8 + r10 + 0x2e1730]
cmp eax, ecx
jne 0x140216244
inc rdx
jmp 0x140216210
lea r9, str.incremental
mov rdx, r11
sub r9, r11
movzx r8d, byte [rdx]
movzx eax, byte [r9 + rdx]
cmp r8d, eax
jne 0x14021626a
test r8d, r8d
jne 0x140216280
lea esi, [r8 + 2]
jmp 0x1402162a6
movzx ecx, byte [rax + r10 + 0x2e1730]
movzx eax, byte [r8 + r10 + 0x2e1730]
cmp eax, ecx
jne 0x140216285
inc rdx
jmp 0x140216251
lea rdx, [rsp + 0x68]
mov dword [rsp + 0x68], esi
mov rcx, r11
call fcn.14020b9b0
mov eax, dword [rsp + 0x68]
cmp eax, 2
movzx ecx, al
cmova ecx, esi
movzx esi, cl
mov rax, qword [rsp + 0x60]
mov edx, esi
mov rcx, rdi
mov byte [rax + 0x6a], sil
call fcn.1401f4f60
test eax, eax
jne 0x140219938
lea eax, [rsi - 1]
cmp eax, 1
ja 0x140219938
mov edi, dword [rbx + 0x90]
lea r8, [0x1402e0288]
xor r9d, r9d
mov rcx, rbx
lea edx, [r9 + 5]
call fcn.140229ff0
mov r13d, dword [rsp + 0x6c]
lea ecx, [rdi + 4]
mov edx, r13d
mov dword [rax + 0x38], ecx
lea ecx, [rsi - 1]
mov dword [rax + 0x6c], ecx
mov rcx, rbx
mov dword [rax + 4], r13d
mov dword [rax + 0x1c], r13d
mov dword [rax + 0x64], r13d
call fcn.140238470
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rbp - 0x70]
call fcn.1401fb370
mov rdx, qword [rbp - 0x80]
jmp 0x14021994f
mov dword [rsp + 0x68], esi
test r11, r11
je 0x14021634a
lea rdx, [rsp + 0x68]
mov rcx, r11
call fcn.14020b9b0
test eax, eax
je 0x14021634a
mov edi, dword [rsp + 0x68]
test edi, edi
jg 0x14021634f
mov edi, 0x7fffffff
mov r8d, dword [rsp + 0x6c]
xor edx, edx
mov rcx, qword [rsp + 0x70]
call fcn.1401f0d90
mov esi, 1
mov r8d, edi
mov r9d, esi
mov rcx, rbx
lea edx, [rsi + 0x46]
call fcn.140229d30
mov r8d, dword [rsp + 0x6c]
lea edx, [rsi + 0x3c]
mov rcx, rbx
call fcn.140229cc0
mov r8d, esi
lea edx, [rsi + 0x53]
mov rcx, rbx
mov edi, eax
call fcn.140229cc0
lea r9d, [rsi - 2]
mov r8d, esi
lea edx, [rsi + 0x55]
mov rcx, rbx
call fcn.140229d30
mov r9d, edi
lea edx, [rsi + 0x30]
mov r8d, esi
mov rcx, rbx
call fcn.140229d30
mov edx, edi
mov rcx, rbx
call fcn.140234c20
jmp 0x140219938
test r11, r11
jne 0x1402163e6
mov rax, qword [r14 + 0x18]
mov rcx, rbx
movsxd rdx, dword [rax + 0x74]
call fcn.1401e90f0
mov rdx, qword [rbp - 0x70]
jmp 0x14021994f
lea rdx, [rsp + 0x68]
mov dword [rsp + 0x68], esi
mov rcx, r11
call fcn.14020b9b0
mov rcx, qword [r14 + 0x18]
mov eax, dword [rsp + 0x68]
mov dword [rcx + 0x74], eax
mov rax, qword [r14 + 0x18]
mov rcx, qword [r14 + 8]
mov edx, dword [rax + 0x74]
call fcn.1401f4ff0
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rbp - 0x70]
call fcn.1401fb370
mov rdx, qword [rbp - 0x80]
jmp 0x14021994f
test r11, r11
jne 0x14021645d
mov rdi, qword [rsp + 0x60]
test byte [rdi + 0x30], 0x20
je 0x140216446
mov rcx, qword [r14 + 8]
xor edx, edx
call fcn.1401f5290
mov esi, eax
movsxd rdx, esi
mov rcx, rbx
call fcn.1401e90f0
mov rdx, qword [rbp - 0x70]
mov rcx, rdi
jmp 0x140219954
mov edi, 1
lea rdx, [rsp + 0x68]
mov rcx, r11
mov dword [rsp + 0x68], edi
call fcn.14020b9b0
mov ebx, dword [rsp + 0x68]
test eax, eax
je 0x140216486
mov rcx, qword [r14 + 8]
mov edx, ebx
call fcn.1401f5290
mov rcx, qword [rbp - 0x80]
test ebx, ebx
mov edx, edi
setne r8b
call fcn.1401d3160
mov r8, qword [rsp + 0x60]
mov rdx, qword [r8 + 0x30]
mov rcx, rdx
and rdx, 0xffffffffffffffdf
or rcx, 0x20
test al, al
cmovne rdx, rcx
mov rcx, r8
mov qword [r8 + 0x30], rdx
call fcn.1401ebe30
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rbp - 0x70]
call fcn.1401fb370
mov rdx, qword [rbp - 0x80]
jmp 0x14021994f
test r11, r11
je 0x1402165a1
lea rdx, [rbp - 0x50]
mov rcx, r11
call fcn.1401fb780
mov rax, qword [rbp - 0x50]
mov rcx, qword [rsp + 0x60]
test rax, rax
cmovs rax, qword [0x14034a3d8]
cmp dword [r12 + 8], 0
mov qword [rbp - 0x50], rax
jne 0x14021650d
mov qword [rcx + 0x40], rax
mov eax, dword [rcx + 0x28]
sub eax, 1
movsxd rsi, eax
js 0x1402165a1
mov rbx, qword [rbp - 0x38]
mov r14, rsi
shl r14, 5
nop word [rax + rax]
mov rax, qword [rcx + 0x20]
mov rdi, qword [r14 + rax + 8]
test rdi, rdi
je 0x140216593
cmp rsi, rbx
je 0x14021654b
cmp dword [r12 + 8], 0
jne 0x140216593
cmp byte [rdi + 0x11], 0
mov r15, qword [rbp - 0x50]
mov r13, qword [rdi + 8]
je 0x14021656a
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], 0
jne 0x14021656a
mov rcx, rdi
call fcn.1401bd370
mov rcx, qword [r13]
mov qword [rcx + 0xa0], r15
call fcn.1401de3b0
cmp byte [rdi + 0x11], 0
je 0x14021658e
sub dword [rdi + 0x14], 1
jne 0x14021658e
mov rcx, rdi
call fcn.1402477a0
mov rcx, qword [rsp + 0x60]
sub r14, 0x20
sub rsi, 1
jns 0x140216530
mov rbx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x78]
lea r9, [rbp - 0x50]
mov rcx, qword [rsp + 0x60]
mov r8d, SafeArrayGetLBound
mov qword [rbp - 0x50], 0xffffffffffffffff
call fcn.14019be60
test eax, eax
jne 0x1402165ce
mov rdx, qword [rbp - 0x50]
jmp 0x140219930
cmp eax, 0xc
je 0x140219938
mov rcx, qword [rsp + 0x70]
inc dword [rcx + 0x30]
mov dword [rcx + 0x18], eax
jmp 0x140219938
test r11, r11
jne 0x140216609
mov rdi, qword [rsp + 0x60]
mov rcx, rbx
movzx edx, byte [rdi + 0x66]
call fcn.1401e90f0
mov rdx, qword [rbp - 0x70]
mov rcx, rdi
jmp 0x140219954
movsx ecx, byte [r11]
lea eax, [rcx - 0x30]
cmp al, 2
ja 0x14021661c
lea edi, [rcx - 0x30]
jmp 0x1402166b6
mov rdx, r11
lea r8, str.file
nop word [rax + rax]
movzx r9d, byte [r8]
movzx eax, cl
cmp eax, r9d
jne 0x140216647
test cl, cl
jne 0x14021665d
mov edi, 1
jmp 0x1402166b6
movzx ecx, byte [rax + r10 + 0x2e1730]
movzx eax, byte [r9 + r10 + 0x2e1730]
cmp ecx, eax
jne 0x140216669
movzx ecx, byte [rdx + 1]
inc rdx
inc r8
jmp 0x140216630
lea r9, str.memory
mov rdx, r11
sub r9, r11
nop word [rax + rax]
movzx r8d, byte [rdx]
movzx eax, byte [r9 + rdx]
cmp r8d, eax
jne 0x140216699
test r8d, r8d
jne 0x1402166af
lea edi, [r8 + 2]
jmp 0x1402166b6
movzx ecx, byte [rax + r10 + 0x2e1730]
movzx eax, byte [r8 + r10 + 0x2e1730]
cmp eax, ecx
jne 0x1402166b4
inc rdx
jmp 0x140216680
mov edi, esi
mov rcx, qword [rsp + 0x70]
mov rbx, qword [rcx]
movzx eax, byte [rbx + 0x66]
cmp eax, edi
je 0x140219938
call fcn.1401d4660
test eax, eax
jne 0x140219938
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rbp - 0x70]
mov byte [rbx + 0x66], dil
call fcn.1401fb370
mov rdx, qword [rbp - 0x80]
jmp 0x14021994f
test r11, r11
jne 0x14021670f
mov rdx, qword [0x14037e660]
mov rcx, rbx
call fcn.1401e9250
mov rdx, qword [rbp - 0x70]
jmp 0x14021994f
cmp byte [r11], 0
mov rbx, qword [rsp + 0x60]
je 0x140216761
mov rax, qword [rbx]
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, r11
mov rcx, rax
call qword [rax + 0x38]
test eax, eax
jne 0x14021673b
cmp dword [rsp + 0x78], eax
jne 0x140216761
mov rcx, qword [rsp + 0x70]
lea rdx, str.not_a_writable_directory
call fcn.1401fdeb0
mov rdx, qword [rbp - 0x70]
mov rcx, rbx
call fcn.1401fb370
mov rdx, qword [rbp - 0x80]
jmp 0x14021994f
cmp byte [rbx + 0x66], 1
ja 0x140216771
mov rcx, qword [rsp + 0x70]
call fcn.1401d4660
mov rcx, qword [0x14037e660]
call fcn.1401b2120
mov rax, qword [rbp - 0x80]
cmp byte [rax], 0
je 0x14021679e
mov rdx, rax
lea rcx, [0x140273c80]
call fcn.1401b1da0
mov qword [0x14037e660], rax
jmp 0x14021674c
mov qword [0x14037e660], rsi
jmp 0x14021674c
test r11, r11
jne 0x1402167c4
mov rdx, qword [0x14037e668]
mov rcx, rbx
call fcn.1401e9250
mov rdx, qword [rbp - 0x70]
jmp 0x14021994f
cmp byte [r11], 0
mov rbx, qword [rsp + 0x60]
je 0x1402167f8
mov rax, qword [rbx]
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, r11
mov rcx, rax
call qword [rax + 0x38]
test eax, eax
jne 0x14021673b
cmp dword [rsp + 0x78], eax
je 0x14021673b
mov rcx, qword [0x14037e668]
call fcn.1401b2120
mov rax, qword [rbp - 0x80]
cmp byte [rax], 0
je 0x140216828
mov rdx, rax
lea rcx, [0x140273c80]
call fcn.1401b1da0
mov qword [0x14037e668], rax
jmp 0x14021674c
mov qword [0x14037e668], rsi
jmp 0x14021674c
test r11, r11
jne 0x140216852
movzx edx, byte [r14 + 0x10]
mov rcx, rbx
dec rdx
call fcn.1401e90f0
mov rdx, qword [rbp - 0x70]
jmp 0x14021994f
mov rdx, qword [rsp + 0x60]
cmp byte [rdx + 0x65], 0
jne 0x140216873
mov rcx, qword [rsp + 0x70]
lea rdx, str.Safety_level_may_not_be_changed_inside_a_transaction
call fcn.1401fdeb0
jmp 0x140219353
cmp dword [rsp + 0x6c], 1
je 0x140219938
mov r8b, 1
xor edx, edx
mov rcx, r11
call fcn.1401d3160
inc eax
mov ecx, 1
and eax, 7
mov byte [r14 + 0x11], cl
cmove eax, ecx
mov byte [r14 + 0x10], al
mov rcx, qword [rsp + 0x60]
call fcn.1401ebe30
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rbp - 0x70]
call fcn.1401fb370
mov rdx, qword [rbp - 0x80]
jmp 0x14021994f
test r11, r11
jne 0x1402168f9
mov rdx, r13
mov rcx, rbx
call fcn.1401ec210
mov rdi, qword [rsp + 0x60]
mov rcx, rbx
mov rax, qword [rdi + 0x30]
test qword [r13 + 0x10], rax
setne sil
mov rdx, rsi
call fcn.1401e90f0
mov rdx, qword [rbp - 0x70]
mov rcx, rdi
jmp 0x140219954
mov rcx, qword [rsp + 0x60]
mov rdi, qword [r13 + 0x10]
btr rdi, 0xe
cmp byte [rcx + 0x65], 0
mov rcx, r11
cmovne rdi, qword [r13 + 0x10]
xor r8d, r8d
lea edx, [r8 + 1]
call fcn.1401d3160
mov r11, qword [rsp + 0x60]
mov rcx, qword [r11 + 0x30]
test al, al
je 0x140216945
or rcx, rdi
mov edx, 0xa6
mov qword [r11 + 0x30], rcx
mov rcx, rbx
call fcn.140229c50
jmp 0x1402168a0
mov rax, rdi
not rax
and rax, rcx
mov qword [r11 + 0x30], rax
cmp rdi, 0x80000
jne 0x140216974
mov edx, 0xa6
mov qword [r11 + 0x2f8], rsi
mov rcx, rbx
call fcn.140229c50
jmp 0x1402168a0
test dil, 1
je 0x140216996
mov rcx, qword [rbp - 0x80]
lea rdx, str.reset
call fcn.1402247b0
test eax, eax
jne 0x140216996
mov rcx, r11
call fcn.14021c9d0
mov edx, 0xa6
mov rcx, rbx
call fcn.140229c50
jmp 0x1402168a0
test r11, r11
je 0x140219938
mov r14, qword [rsp + 0x70]
mov rdx, qword [rbp - 0x78]
mov rcx, r14
call fcn.1401f7a00
mov r9, qword [rbp - 0x78]
mov edx, 2
mov r8, qword [rbp - 0x80]
mov rcx, r14
call fcn.1402107e0
mov r15, rax
test rax, rax
je 0x140219938
mov rcx, rax
mov dword [rbp - 0x3c], esi
mov r12d, esi
call fcn.14021a1e0
mov rcx, r14
mov qword [rbp - 0x48], rax
mov rdx, r15
mov dword [r14 + 0x38], 7
call fcn.140238520
movzx ecx, word [r15 + 0x36]
mov r14d, esi
mov rdi, qword [r15 + 8]
cmp si, cx
jge 0x140219938
mov rdx, 0xffffffffffffffff
lea r8d, [rdx + 9]
nop dword [rax + rax]
movzx r9d, word [rdi + 0x12]
mov r11d, esi
test r9b, 0x62
je 0x140216a6f
cmp qword [r13 + 0x10], 0
jne 0x140216a51
inc r12d
mov dword [rbp - 0x3c], r12d
jmp 0x140216bc2
test r9b, 0x20
je 0x140216a5f
mov r11d, 2
jmp 0x140216a6f
movzx r11d, r9b
and r11d, 0x40
or r11d, 0x20
shr r11d, 5
test r9b, 1
jne 0x140216a7a
mov r10d, esi
jmp 0x140216ac7
mov rax, qword [rbp - 0x48]
test rax, rax
jne 0x140216a89
lea r10d, [rax + 1]
jmp 0x140216ac7
mov r12d, 1
mov r10d, r12d
mov edx, r12d
cmp r12w, cx
jg 0x140216ac0
movsx r8, cx
mov rcx, qword [rax + 8]
movsx eax, word [rcx]
cmp eax, r14d
je 0x140216aba
inc r10d
inc rdx
add rcx, 2
cmp rdx, r8
jle 0x140216aa3
mov r8d, 8
mov rdx, 0xffffffffffffffff
movzx eax, word [rdi + 0x10]
test ax, ax
jne 0x140216ad5
mov rax, rsi
jmp 0x140216b01
cmp byte [r15 + 0x3f], 0
je 0x140216ae1
mov rax, rsi
jmp 0x140216b01
mov rcx, qword [r15 + 0x50]
test rcx, rcx
jne 0x140216aef
mov rax, rsi
jmp 0x140216b01
cmp dword [rcx], eax
jge 0x140216af8
mov rax, rsi
jmp 0x140216b01
shl rax, 5
mov rax, qword [rax + rcx - 0x18]
cmp r11d, 2
jae 0x140216b12
test rax, rax
je 0x140216b12
mov r12, qword [rax + 8]
jmp 0x140216b15
mov r12, rsi
test r9b, 4
je 0x140216b33
mov rcx, qword [rdi]
mov rax, rdx
inc rax
cmp byte [rcx + rax], 0
jne 0x140216b21
lea rdx, [rcx + 1]
add rdx, rax
jmp 0x140216b59
mov eax, dword [rdi + 8]
shr eax, 4
and eax, 0xf
je 0x140216b52
lea ecx, [rax - 1]
lea rax, [0x140000000]
mov rdx, qword [rax + rcx*8 + 0x34a480]
jmp 0x140216b59
lea rdx, [0x140274748]
mov dword [rsp + 0x48], r11d
mov rcx, r8
mov dword [rsp + 0x40], r10d
lea r8, str.issisi
mov rax, rdi
mov qword [rsp + 0x38], r12
mov r9d, r14d
test byte [rax + rcx], 0xf
mov eax, esi
lea rcx, str.issisii
setne al
sub r9d, dword [rbp - 0x3c]
cmp qword [r13 + 0x10], 0
mov dword [rsp + 0x30], eax
mov rax, qword [rdi]
cmovne r8, rcx
mov qword [rsp + 0x28], rdx
mov rcx, rbx
mov edx, 1
mov qword [rsp + 0x20], rax
call fcn.1402368e0
mov r12d, dword [rbp - 0x3c]
mov rdx, 0xffffffffffffffff
lea r8d, [rdx + 9]
movsx ecx, word [r15 + 0x36]
inc r14d
add rdi, 0x18
cmp r14d, ecx
jl 0x140216a30
jmp 0x1402168aa
mov rcx, qword [rsp + 0x70]
mov eax, 6
mov rdi, qword [rbp - 0x78]
mov rdx, rdi
mov dword [rcx + 0x38], eax
call fcn.1401f7a00
mov rdx, qword [rsp + 0x60]
mov r13d, esi
mov dword [rsp + 0x68], esi
cmp dword [rdx + 0x28], 0
jle 0x140219938
mov r12, rsi
lea r11, str.table
mov r15, 0xffffffffffffffff
nop dword [rax]
test rdi, rdi
je 0x140216c4b
mov rax, qword [rdx + 0x20]
mov rdx, qword [r12 + rax]
test rdx, rdx
je 0x140216fc0
mov rcx, rdi
call fcn.1402247b0
mov rdx, qword [rsp + 0x60]
test eax, eax
jne 0x140216f71
mov rax, qword [rdx + 0x20]
mov rcx, qword [rax + r12 + 0x18]
add rcx, 8
mov r14d, dword [rcx + 4]
test r14d, r14d
je 0x140216d3c
mov rbx, qword [rsp + 0x60]
nop word [rax + rax]
mov rax, qword [rcx + 8]
dec r14d
test rax, rax
je 0x140216d2c
mov r8, qword [rax + 0x10]
cmp word [r8 + 0x36], 0
je 0x140216c99
mov rax, qword [rax]
test rax, rax
jne 0x140216c80
jmp 0x140216d2c
mov r8, qword [r8]
lea rdx, str.SELECTFROM__w_
mov rcx, rbx
call fcn.140210f40
mov rdi, rax
test rax, rax
je 0x140216cef
lea rax, [rbp - 0x60]
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov r8d, r15d
mov qword [rsp + 0x20], rsi
mov rdx, rdi
mov qword [rbp - 0x60], rsi
mov rcx, rbx
call fcn.140210a90
mov rcx, qword [rbp - 0x60]
call fcn.1401b4cf0
mov rdx, rdi
mov rcx, rbx
call fcn.1401fb370
cmp byte [rbx + 0x67], 0
je 0x140216d16
mov rcx, qword [rbx + 0x160]
lea rdx, str.out_of_memory
call fcn.1401fdeb0
mov rax, qword [rbx + 0x160]
mov dword [rax + 0x18], 7
mov rax, qword [rbx + 0x20]
mov rcx, qword [rax + r12 + 0x18]
add rcx, 8
test r14d, r14d
jne 0x140216c70
mov rbx, qword [rbp - 0x20]
lea r11, str.table
mov rdx, qword [rsp + 0x60]
mov r15, qword [rcx + 8]
test r15, r15
je 0x140216f6a
mov rsi, qword [rsp + 0x60]
mov r13d, 1
mov rax, qword [rbp - 0x80]
nop dword [rax + rax]
mov r14, qword [r15 + 0x10]
test rax, rax
je 0x140216dc2
mov r8, qword [r14]
test r8, r8
je 0x140216f4b
mov r9, rax
lea r11, [0x140000000]
sub r9, r8
movzx edx, byte [r8 + r9]
movzx eax, byte [r8]
cmp edx, eax
jne 0x140216d98
test edx, edx
je 0x140216db5
inc r8
jmp 0x140216d82
movzx ecx, byte [rax + r11 + 0x2e1730]
movzx edx, byte [rdx + r11 + 0x2e1730]
sub edx, ecx
jne 0x140216db3
inc r8
jmp 0x140216d82
test edx, edx
lea r11, str.table
jne 0x140216f47
movzx eax, byte [r14 + 0x3f]
cmp al, 2
jne 0x140216dd4
lea rdi, str.view
jmp 0x140216df5
cmp al, r13b
jne 0x140216de2
lea rdi, str.virtual
jmp 0x140216df5
test dword [r14 + 0x30], 0x1000
lea rdi, str.shadow
cmove rdi, r11
mov r11, qword [r14]
mov edx, 7
test r11, r11
je 0x140216f00
mov r8, r11
lea r9, str.sqlite_
lea r10, [0x140000000]
nop word [rax + rax]
movzx ecx, byte [r8]
dec edx
test cl, cl
je 0x140216e4d
movzx eax, byte [r9]
movzx eax, byte [rax + r10 + 0x2e1730]
cmp byte [rcx + r10 + 0x2e1730], al
jne 0x140216e4d
inc r8
inc r9
test edx, edx
jg 0x140216e20
dec edx
test edx, edx
js 0x140216e73
movzx eax, byte [r9]
movzx ecx, byte [rax + r10 + 0x2e1730]
movzx eax, byte [r8]
movzx eax, byte [rax + r10 + 0x2e1730]
cmp eax, ecx
jne 0x140216f00
lea rdx, [r11 + 7]
lea r10, [0x1402e8e97]
mov r8, rdx
sub r10, rdx
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r8]
movzx r9d, byte [r8 + r10]
cmp eax, r9d
jne 0x140216eab
test eax, eax
jne 0x140216ed1
lea r11, str.sqlite_schema
jmp 0x140216f00
lea rcx, [0x140000000]
movzx ecx, byte [rax + rcx + 0x2e1730]
mov rax, r9
lea r9, [0x140000000]
movzx eax, byte [rax + r9 + 0x2e1730]
cmp ecx, eax
jne 0x140216ed6
inc r8
jmp 0x140216e90
lea r9, [0x1402ea6e7]
sub r9, rdx
movzx eax, byte [rdx]
movzx r8d, byte [rdx + r9]
cmp eax, r8d
jne 0x140216f97
test eax, eax
jne 0x140216fb8
lea r11, str.sqlite_temp_schema
mov edx, dword [r14 + 0x30]
lea r8, str.sssiii
mov r9, qword [rsi + 0x20]
mov ecx, edx
movsx eax, word [r14 + 0x36]
shr ecx, 0x10
shr edx, 7
and ecx, r13d
mov r9, qword [r9 + r12]
and edx, r13d
mov dword [rsp + 0x40], ecx
mov rcx, rbx
mov dword [rsp + 0x38], edx
mov edx, r13d
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r11
call fcn.1402368e0
mov rax, qword [rbp - 0x80]
mov r15, qword [r15]
lea r11, str.table
test r15, r15
jne 0x140216d60
mov r13d, dword [rsp + 0x68]
xor esi, esi
mov rdx, qword [rsp + 0x60]
mov r15, 0xffffffffffffffff
mov rdi, qword [rbp - 0x78]
lea r11, str.table
inc r13d
add r12, 0x20
mov dword [rsp + 0x68], r13d
cmp r13d, dword [rdx + 0x28]
jl 0x140216c20
jmp 0x140219938
lea r10, [0x140000000]
movzx ecx, byte [rax + r10 + 0x2e1730]
movzx eax, byte [r8 + r10 + 0x2e1730]
cmp ecx, eax
jne 0x140216f00
inc rdx
jmp 0x140216ee0
mov rdx, qword [rsp + 0x60]
jmp 0x140216f71
test r11, r11
je 0x140219938
mov rdi, qword [rbp - 0x78]
mov rdx, r11
mov rcx, qword [rsp + 0x60]
mov r8, rdi
call fcn.140205670
mov r15, qword [rsp + 0x70]
mov r14, rax
test rax, rax
jne 0x14021702a
mov r8, qword [rbp - 0x80]
lea edx, [rax + 2]
mov r9, rdi
mov rcx, r15
call fcn.1402107e0
test rax, rax
je 0x140219938
test byte [rax + 0x30], 0x80
je 0x140219938
mov rcx, rax
call fcn.14021a1e0
mov r14, rax
test rax, rax
je 0x140219938
mov rcx, qword [r14 + 0x30]
mov rdx, 0xffffffffffff8000
test rcx, rcx
je 0x14021705b
mov rax, qword [rsp + 0x60]
mov edx, esi
mov rax, qword [rax + 0x20]
add rax, 0x18
cmp qword [rax], rcx
je 0x14021705b
nop
inc edx
lea rax, [rax + 0x20]
cmp qword [rax], rcx
jne 0x140217050
mov rcx, qword [r13 + 0x10]
test rcx, rcx
je 0x14021706b
movzx edi, word [r14 + 0x60]
jmp 0x140217070
movzx edi, word [r14 + 0x5e]
test rcx, rcx
mov eax, 6
mov r8d, 3
mov rcx, r15
cmove eax, r8d
mov dword [r15 + 0x38], eax
mov rax, qword [r14 + 0x18]
mov qword [rbp - 0x48], rax
call fcn.1401f7ac0
movzx r12d, di
mov r15d, esi
test r12, r12
je 0x140219938
mov rdi, rsi
nop dword [rax]
mov rax, qword [r14 + 8]
movsx rdx, word [rax + rdi*2]
test dx, dx
jns 0x1402170c3
mov rcx, rsi
jmp 0x1402170d3
mov rax, qword [rbp - 0x48]
lea rcx, [rdx + rdx*2]
mov rax, qword [rax + 8]
mov rcx, qword [rax + rcx*8]
mov qword [rsp + 0x28], rcx
lea r8, str.iisX
mov dword [rsp + 0x20], edx
mov r9d, r15d
mov edx, 1
mov rcx, rbx
call fcn.1402368e0
cmp qword [r13 + 0x10], 0
je 0x140217135
movzx eax, word [r14 + 0x5e]
lea r8, str.isiX
mov rcx, qword [r14 + 0x40]
cmp r15d, eax
mov rax, qword [r14 + 0x38]
mov edx, esi
setb dl
mov dword [rsp + 0x28], edx
mov edx, 4
movzx r9d, byte [rax + rdi]
mov rax, qword [rcx + rdi*8]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1402368e0
mov rax, qword [rsp + 0x70]
mov edx, 0x54
mov rcx, rbx
mov r9d, dword [rax + 0x38]
lea r8d, [rdx - 0x53]
call fcn.140229d30
inc r15d
inc rdi
cmp rdi, r12
jl 0x1402170b0
jmp 0x1402168aa
test r11, r11
je 0x140219938
mov r8, qword [rbp - 0x78]
mov rdx, r11
mov rcx, qword [rsp + 0x60]
call fcn.140205790
mov rdi, rax
test rax, rax
je 0x140219938
mov rdx, qword [rax + 0x60]
mov r8, 0xffffffffffff8000
test rdx, rdx
je 0x1402171bc
mov rax, qword [rsp + 0x60]
mov r8d, esi
mov rcx, qword [rax + 0x20]
add rcx, 0x18
cmp qword [rcx], rdx
je 0x1402171bc
nop
inc r8d
lea rcx, [rcx + 0x20]
cmp qword [rcx], rdx
jne 0x1402171b0
mov rax, qword [rsp + 0x70]
mov edx, r8d
mov rcx, rax
mov dword [rax + 0x38], 5
call fcn.1401f7ac0
mov rdi, qword [rdi + 0x10]
mov r14d, esi
test rdi, rdi
je 0x140219938
lea r15, [0x140294ea4]
lea r12, [0x140294dd0]
lea r13, [0x1402e6854]
nop dword [rax + rax]
cmp qword [rdi + 0x48], 0
lea r8, str.isisi
mov eax, dword [rdi + 0x64]
mov edx, esi
setne dl
mov qword [rbp + 0x20], r15
mov dword [rsp + 0x38], edx
and eax, 3
cmp byte [rdi + 0x62], 0
mov ecx, esi
mov qword [rbp + 0x28], r12
mov r9d, r14d
setne cl
mov qword [rbp + 0x30], r13
mov rax, qword [rbp + rax*8 + 0x20]
mov edx, 1
mov qword [rsp + 0x30], rax
mov rax, qword [rdi]
mov dword [rsp + 0x28], ecx
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1402368e0
mov rdi, qword [rdi + 0x28]
inc r14d
test rdi, rdi
jne 0x140217200
jmp 0x1402168aa
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x60]
mov dword [rax + 0x38], 3
cmp dword [rdx + 0x28], 0
jle 0x140219938
mov rdi, rsi
lea r14, [0x1402e126c]
nop dword [rax]
mov rdx, qword [rdx + 0x20]
mov rax, qword [rdx + rdi + 8]
test rax, rax
je 0x1402172da
mov rax, qword [rax + 8]
mov rcx, qword [rax]
mov rax, r14
cmp byte [rcx + 0x13], 0
jne 0x1402172b5
mov rax, qword [rcx + 0xd8]
mov qword [rsp + 0x28], rax
lea r8, [0x1402eb6e8]
mov rax, qword [rdx + rdi]
mov r9d, esi
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.1402368e0
mov rdx, qword [rsp + 0x60]
inc esi
add rdi, 0x20
cmp esi, dword [rdx + 0x28]
jl 0x140217290
jmp 0x140219938
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x60]
mov dword [rax + 0x38], 2
mov rdi, qword [rdx + 0x270]
test rdi, rdi
je 0x140219938
mov rax, qword [rdi + 0x10]
lea r8, [0x1402eb6ec]
mov r9d, esi
mov edx, 1
mov rcx, qword [rax]
mov qword [rsp + 0x20], rcx
mov rcx, rbx
call fcn.1402368e0
mov rdi, qword [rdi]
inc esi
test rdi, rdi
jne 0x140217310
jmp 0x140219938
mov rax, qword [rsp + 0x60]
lea r14, [0x14037e680]
mov rcx, qword [rsp + 0x70]
lea r15, [0x14037e738]
mov qword [rbp - 0x60], r14
mov esi, dword [rax + 0x2c]
mov eax, 6
shr esi, 5
and esi, 1
mov dword [rcx + 0x38], eax
nop
mov rdi, qword [r14]
test rdi, rdi
je 0x14021739e
mov r14d, 1
nop
mov r9d, esi
mov r8d, r14d
mov rdx, rdi
mov rcx, rbx
call fcn.1401e2c50
mov rdi, qword [rdi + 0x40]
test rdi, rdi
jne 0x140217380
mov r14, qword [rbp - 0x60]
add r14, 8
mov qword [rbp - 0x60], r14
cmp r14, r15
jl 0x140217370
mov rdx, qword [rsp + 0x60]
mov rdi, qword [rdx + 0x258]
test rdi, rdi
je 0x140219938
mov rdx, qword [rdi + 0x10]
mov r9d, esi
xor r8d, r8d
mov rcx, rbx
call fcn.1401e2c50
mov rdi, qword [rdi]
test rdi, rdi
jne 0x1402173c0
jmp 0x140219938
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x60]
mov dword [rax + 0x38], 1
mov rdi, qword [rdx + 0x228]
test rdi, rdi
je 0x140219938
mov r9, qword [rdi + 0x10]
lea r8, [0x140294e60]
mov edx, 1
mov rcx, rbx
mov r9, qword [r9 + 8]
call fcn.1402368e0
mov rdi, qword [rdi]
test rdi, rdi
jne 0x140217400
jmp 0x140219938
lea rdi, str.Xi._
lea rsi, [0x1402e0b28]
nop word [rax + rax]
mov r9, qword [rdi]
lea r8, [0x140294e60]
mov edx, 1
mov rcx, rbx
call fcn.1402368e0
add rdi, 0x18
cmp rdi, rsi
jl 0x140217440
jmp 0x140219938
test r11, r11
je 0x140219938
mov r8, qword [rbp - 0x78]
mov rdx, r11
mov rcx, qword [rsp + 0x60]
call fcn.140205790
mov r13, rax
test rax, rax
je 0x140219938
cmp byte [rax + 0x3f], 0
jne 0x140219938
mov rdi, qword [rax + 0x48]
test rdi, rdi
je 0x140219938
mov rcx, qword [rax + 0x60]
mov r8, 0xffffffffffff8000
test rcx, rcx
je 0x1402174dc
mov rax, qword [rsp + 0x60]
mov r8d, esi
mov rax, qword [rax + 0x20]
add rax, 0x18
cmp qword [rax], rcx
je 0x1402174dc
nop word [rax + rax]
inc r8d
lea rax, [rax + 0x20]
cmp qword [rax], rcx
jne 0x1402174d0
mov rax, qword [rsp + 0x70]
mov edx, r8d
mov rcx, rax
mov r12d, esi
mov dword [rax + 0x38], 8
call fcn.1401f7ac0
lea r9, str.NONE
nop dword [rax]
cmp dword [rdi + 0x28], 0
mov r14d, esi
jle 0x140217596
lea r15, [rdi + 0x40]
mov esi, 1
movzx ecx, byte [rdi + 0x2d]
call fcn.1401b6760
movzx ecx, byte [rdi + 0x2e]
mov r8, rax
call fcn.1401b6760
movsxd rcx, dword [r15]
mov qword [rsp + 0x50], r9
mov r9d, r12d
mov qword [rsp + 0x48], r8
lea r8, str.iissssss
mov qword [rsp + 0x40], rax
mov rax, qword [r15 + 8]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r13 + 8]
mov qword [rsp + 0x38], rax
mov rax, qword [rcx + rdx*8]
mov edx, esi
mov qword [rsp + 0x30], rax
mov rcx, rbx
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r14d
call fcn.1402368e0
inc r14d
lea r15, [r15 + 0x10]
lea r9, str.NONE
cmp r14d, dword [rdi + 0x28]
jl 0x140217516
xor esi, esi
lea r9, str.NONE
mov rdi, qword [rdi + 8]
inc r12d
test rdi, rdi
jne 0x140217500
jmp 0x1402168aa
mov r12, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x60]
mov eax, dword [r12 + 0x38]
lea r14d, [rax + 5]
mov dword [r12 + 0x38], r14d
lea ecx, [rax + 1]
mov rax, qword [rdx + 0x20]
mov dword [rsp + 0x6c], ecx
mov dword [rbp - 0x68], r14d
mov rcx, qword [rdi + rax + 0x18]
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x140219938
mov rdi, qword [rbp - 0x78]
mov rax, 0xffffffffffff8000
test r11, r11
je 0x140217618
mov r9, rdi
mov r8, r11
xor edx, edx
mov rcx, r12
call fcn.1402107e0
mov rdx, qword [rsp + 0x60]
mov r15, rax
mov rax, 0xffffffffffff8000
mov rcx, rsi
jmp 0x14021761f
mov r15, qword [rcx + 0x10]
mov rcx, qword [rcx]
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x20], r15
test r15, r15
je 0x140217c96
cmp byte [r15 + 0x3f], 0
jne 0x140217c96
cmp qword [r15 + 0x48], 0
je 0x140217c96
mov rcx, qword [r15 + 0x60]
mov edi, eax
mov r13, rax
test rcx, rcx
je 0x14021767e
mov rax, qword [rdx + 0x20]
mov edi, esi
add rax, 0x18
mov r13, rsi
cmp qword [rax], rcx
je 0x14021767e
nop word [rax + rax]
inc edi
lea rax, [rax + 0x20]
inc r13
cmp qword [rax], rcx
jne 0x140217670
mov rax, qword [rdx + 0x20]
mov rcx, r12
shl r13, 5
mov qword [rbp - 0x60], r13
mov rax, qword [rax + r13]
mov qword [rbp - 0x78], rax
mov rax, qword [r12 + 0xa0]
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x74]
bt eax, edi
jb 0x1402176be
bts eax, edi
mov dword [rcx + 0x74], eax
cmp edi, 1
jne 0x1402176c3
call fcn.140211ff0
jmp 0x1402176ef
cmp edi, 1
je 0x1402176ef
mov rax, qword [r12]
mov rcx, qword [rax + 0x20]
mov rax, qword [rcx + r13 + 8]
cmp byte [rax + 0x11], 0
je 0x1402176ef
mov rax, qword [r15]
xor r9d, r9d
mov r8d, dword [r15 + 0x28]
mov edx, edi
mov rcx, r12
mov qword [rsp + 0x20], rax
call fcn.1401d89b0
movsx ecx, word [r15 + 0x36]
add ecx, r14d
cmp ecx, dword [r12 + 0x38]
jle 0x140217703
mov dword [r12 + 0x38], ecx
mov r9, r15
mov dword [rsp + 0x20], 0x70
mov r8d, edi
xor edx, edx
mov rcx, r12
call fcn.140211c20
mov r14d, dword [rsp + 0x6c]
mov rcx, rbx
mov r8, qword [r15]
mov edx, r14d
call fcn.140234ff0
mov r15, qword [r15 + 0x48]
mov r12d, 1
test r15, r15
je 0x140217820
mov r8, qword [rbp - 0x78]
mov rdx, qword [r15 + 0x10]
mov rcx, qword [rsp + 0x60]
call fcn.140205790
mov r14, rax
test rax, rax
je 0x14021780b
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x50], rsi
cmp edi, 1
je 0x14021779d
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x20]
mov rcx, qword [rdx + r13 + 8]
cmp byte [rcx + 0x11], 0
je 0x14021779d
mov rcx, qword [r14]
xor r9d, r9d
mov r8d, dword [r14 + 0x28]
mov edx, edi
mov qword [rsp + 0x20], rcx
mov rcx, rax
call fcn.1401d89b0
mov rax, qword [rsp + 0x70]
lea r9, [rbp - 0x50]
mov qword [rsp + 0x20], rsi
mov r8, r15
mov rdx, r14
mov rcx, rax
call fcn.140207740
test eax, eax
jne 0x140219938
mov r13, qword [rbp - 0x50]
test r13, r13
jne 0x1402177e2
mov rcx, qword [rsp + 0x70]
mov r9, r14
mov r8d, edi
mov dword [rsp + 0x20], 0x70
mov edx, r12d
call fcn.140211c20
jmp 0x140217807
mov r9d, dword [r13 + 0x58]
mov r8d, r12d
mov edx, 0x70
mov dword [rsp + 0x20], edi
mov rcx, rbx
call fcn.140229da0
mov rcx, qword [rsp + 0x70]
mov rdx, r13
call fcn.140237c50
mov r13, qword [rbp - 0x60]
mov r15, qword [r15 + 8]
inc r12d
test r15, r15
jne 0x140217741
mov r14d, dword [rsp + 0x6c]
mov rdi, qword [rsp + 0x70]
cmp dword [rdi + 0x34], r12d
jge 0x14021782f
mov dword [rdi + 0x34], r12d
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 0x23]
call fcn.140229cc0
mov r12, qword [rbp - 0x20]
mov r15d, eax
mov dword [rbp - 0x24], eax
mov dword [rbp - 0x58], 1
mov r12, qword [r12 + 0x48]
mov qword [rbp - 0x60], r12
test r12, r12
je 0x140217c39
mov rcx, qword [rsp + 0x60]
lea eax, [r14 + 2]
mov dword [rsp + 0x68], eax
jmp 0x140217875
mov rdi, qword [rsp + 0x70]
mov r8, qword [rbp - 0x78]
mov rdx, qword [r12 + 0x10]
call fcn.140205790
mov qword [rbp - 0x48], rax
mov r14, rsi
mov qword [rbp - 0x50], rsi
mov qword [rbp - 0x38], rsi
test rax, rax
je 0x1402178b6
lea rcx, [rbp - 0x38]
mov r8, r12
mov qword [rsp + 0x20], rcx
lea r9, [rbp - 0x50]
mov rcx, rdi
mov rdx, rax
call fcn.140207740
mov r14, qword [rbp - 0x38]
dec dword [rdi + 0x44]
mov ecx, dword [r12 + 0x28]
mov r13d, dword [rbp - 0x68]
add ecx, r13d
mov r15d, dword [rdi + 0x44]
cmp ecx, dword [rdi + 0x38]
jle 0x1402178d1
mov dword [rdi + 0x38], ecx
mov edi, dword [r12 + 0x28]
test edi, edi
jle 0x14021798d
mov edi, r13d
add r12, 0x40
mov r13, r14
nop dword [rax + rax]
mov rdx, qword [rbp - 0x20]
test r14, r14
mov rax, r12
mov dword [rsp + 0x20], edi
cmovne rax, r13
mov rcx, rbx
xor r8d, r8d
mov r9d, dword [rax]
call fcn.1401ff510
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140217938
mov r9d, r15d
mov dword [rsp + 0x20], esi
mov r8d, edi
mov edx, 0x32
mov rcx, rbx
call fcn.1401d32a0
jmp 0x140217965
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x32
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov rax, qword [rbp - 0x60]
inc edi
add r12, 0x10
add r13, 4
mov ecx, dword [rax + 0x28]
mov eax, edi
sub eax, dword [rbp - 0x68]
cmp eax, ecx
jl 0x1402178f0
mov r12, qword [rbp - 0x60]
mov edi, ecx
mov r13d, dword [rbp - 0x68]
mov rdx, qword [rbp - 0x50]
test rdx, rdx
je 0x1402179e9
mov rcx, qword [rsp + 0x60]
call fcn.14020d040
mov r9d, dword [r12 + 0x28]
mov r8d, r13d
mov dword [rsp + 0x30], edi
mov edx, 0x60
mov qword [rsp + 0x28], rax
mov rcx, rbx
mov dword [rsp + 0x20], esi
call fcn.140229e10
mov eax, dword [r12 + 0x28]
mov r9d, r15d
mov dword [rsp + 0x28], eax
mov edx, 0x1c
mov dword [rsp + 0x20], r13d
mov rcx, rbx
mov r13d, dword [rbp - 0x58]
mov r8d, r13d
call fcn.140229f50
jmp 0x140217a25
cmp qword [rbp - 0x48], 0
je 0x140217a21
mov r9d, dword [rbx + 0x90]
mov edx, 0x1d
mov dword [rsp + 0x20], r13d
add r9d, 2
mov r13d, dword [rbp - 0x58]
mov rcx, rbx
mov r8d, r13d
call fcn.140229da0
mov edx, r15d
mov rcx, rbx
call fcn.140234560
jmp 0x140217a25
mov r13d, dword [rbp - 0x58]
mov rax, qword [rbp - 0x20]
test byte [rax + 0x30], 0x80
jne 0x140217a90
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140217a5c
mov r9d, dword [rsp + 0x6c]
xor r8d, r8d
inc r9d
mov dword [rsp + 0x20], esi
mov edx, 0x87
mov rcx, rbx
call fcn.1401d32a0
jmp 0x140217aa7
mov edx, dword [rsp + 0x6c]
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
lea rdi, [rbx + 0x88]
inc edx
mov rax, qword [rdi]
mov qword [rax + rcx*8], 0x87
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
jmp 0x140217aae
mov r9d, dword [rsp + 0x6c]
xor r8d, r8d
inc r9d
mov rcx, rbx
lea edx, [r8 + 0x4b]
call fcn.140229d30
lea rdi, [rbx + 0x88]
mov r9, qword [r12 + 0x10]
lea eax, [r13 - 1]
mov edx, dword [rsp + 0x68]
lea r8, [0x1402eb704]
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.1402368e0
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140217afa
mov r8d, dword [rsp + 0x6c]
mov r9d, 4
mov rcx, rbx
mov dword [rsp + 0x20], esi
lea edx, [r9 + 0x50]
call fcn.1401d32a0
jmp 0x140217b27
mov edx, dword [rsp + 0x6c]
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi]
mov dword [rax + rcx*8], 0x54
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 4
mov qword [rax + rcx*8 + 0x10], rsi
mov rcx, qword [rbx + 0x18]
not r15d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140217b43
mov r8d, r15d
mov rdx, rbx
call fcn.1401e6d90
jmp 0x140217b54
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x90]
movsxd r8, r15d
mov dword [rcx + r8*4], eax
mov rcx, qword [rsp + 0x60]
test r14, r14
je 0x140217c1a
cmp qword [rcx + 0x300], 0
je 0x140217b79
mov rdx, r14
call fcn.1401d9e70
jmp 0x140217c15
cmp r14, qword [rcx + 0x1f0]
jae 0x140217bba
cmp r14, qword [rcx + 0x1e0]
jb 0x140217b9e
mov rax, qword [rcx + 0x1d8]
mov qword [r14], rax
mov qword [rcx + 0x1d8], r14
jmp 0x140217c1a
cmp r14, qword [rcx + 0x1e8]
jb 0x140217bba
mov rax, qword [rcx + 0x1c8]
mov qword [r14], rax
mov qword [rcx + 0x1c8], r14
jmp 0x140217c1a
cmp dword [0x14034a2b0], 0
je 0x140217c0c
mov rcx, qword [0x14037e7f0]
test rcx, rcx
je 0x140217bd5
call qword [0x14034a330]
mov rcx, r14
call qword [0x14034a2e8]
dec qword [0x14037e788]
movsxd rcx, eax
sub qword [0x14037e740], rcx
mov rcx, r14
call qword [0x14034a2d8]
mov rcx, qword [0x14037e7f0]
test rcx, rcx
je 0x140217c15
call qword [0x14034a340]
jmp 0x140217c15
mov rcx, r14
call qword [0x14034a2d8]
mov rcx, qword [rsp + 0x60]
mov r12, qword [r12 + 8]
inc r13d
mov dword [rbp - 0x58], r13d
mov qword [rbp - 0x60], r12
test r12, r12
jne 0x140217870
mov r15d, dword [rbp - 0x24]
jmp 0x140217c40
lea rdi, [rbx + 0x88]
xor r8d, r8d
lea r9d, [r15 + 1]
mov rcx, rbx
lea edx, [r8 + 0x26]
call fcn.140229d30
mov edx, dword [rbx + 0x90]
test r15d, r15d
jns 0x140217c62
lea r15d, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x67], 0
je 0x140217c74
lea rax, [0x14037eae0]
jmp 0x140217c82
movsxd rax, r15d
lea rcx, [rax + rax*2]
mov rax, qword [rdi]
lea rax, [rax + rcx*8]
mov r14d, dword [rbp - 0x68]
mov rcx, qword [rbp - 0x30]
mov rdi, qword [rbp - 0x78]
mov r12, qword [rsp + 0x70]
mov dword [rax + 8], edx
test rcx, rcx
je 0x140219938
mov rdx, qword [rsp + 0x60]
mov r11, qword [rbp - 0x80]
jmp 0x1402175e8
test r11, r11
je 0x140219938
xor r8d, r8d
mov rcx, r11
lea edx, [r8 + 1]
call fcn.1401d3160
mov rcx, qword [rsp + 0x60]
test al, al
setne sil
mov edx, esi
call fcn.14021ba90
jmp 0x1402168aa
cmp qword [r12], 0
mov r13d, 0x64
mov r14d, dword [rsp + 0x6c]
mov rax, qword [rbp - 0x70]
mov r12, qword [rsp + 0x70]
mov rdi, qword [rbp - 0x80]
mov qword [rbp - 0x60], rsi
movzx eax, byte [rax]
mov dword [rbp - 0x3c], r13d
mov dword [rbp - 0x40], r13d
movzx eax, byte [rax + r10 + 0x2e1730]
mov byte [rbp - 0x64], al
mov rax, 0xffffffffffffffff
cmove r14d, eax
mov eax, 6
mov dword [r12 + 0x38], eax
mov dword [rsp + 0x6c], r14d
test rdi, rdi
je 0x140217d8f
lea rdx, [rbp - 0x40]
mov rcx, rdi
call fcn.14020b9b0
test eax, eax
je 0x140217d58
mov r13d, dword [rbp - 0x40]
mov dword [rbp - 0x3c], r13d
test r13d, r13d
jg 0x140217d8f
mov r13d, 0x64
jmp 0x140217d8b
test r14d, r14d
js 0x140217d73
mov rax, qword [rsp + 0x60]
movsxd rcx, r14d
shl rcx, 5
mov rax, qword [rax + 0x20]
mov r9, qword [rcx + rax]
jmp 0x140217d76
mov r9, rsi
mov r8, rdi
xor edx, edx
mov rcx, r12
call fcn.1402107e0
mov r13d, dword [rbp - 0x40]
mov qword [rbp - 0x60], rax
mov dword [rbp - 0x3c], r13d
mov r15d, 1
lea r8d, [r13 - 1]
mov r9d, r15d
mov rcx, rbx
lea edx, [r15 + 0x46]
call fcn.140229d30
mov rax, qword [rsp + 0x60]
lea rdi, [0x14037eae0]
mov r10d, esi
mov dword [rbp - 0x58], esi
cmp dword [rax + 0x28], 0
jle 0x14021918a
lea r13d, [r15 + 2]
mov edi, esi
test r14d, r14d
js 0x140217dd8
cmp r10d, r14d
jne 0x140219168
mov rax, qword [r12 + 0xa0]
mov rcx, r12
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x74]
bt eax, r10d
jb 0x140217e09
bts eax, r10d
mov dword [rcx + 0x74], eax
cmp r10d, 1
jne 0x140217e09
call fcn.140211ff0
mov r10d, dword [rbp - 0x58]
mov rax, qword [rsp + 0x60]
mov edx, esi
movsxd r14, r10d
shl r14, 5
mov rax, qword [rax + 0x20]
mov r15, qword [r14 + rax + 0x18]
mov r8, qword [r15 + 0x10]
test r8, r8
je 0x14021915e
mov r9, qword [rbp - 0x60]
mov rax, qword [r8 + 0x10]
test r9, r9
je 0x140217e3f
cmp r9, rax
jne 0x140217e64
test byte [rax + 0x30], 0x80
jne 0x140217e47
inc edx
mov rax, qword [rax + 0x10]
mov ecx, esi
test rax, rax
je 0x140217e5f
mov rax, qword [rax + 0x28]
inc edx
inc ecx
test rax, rax
jne 0x140217e52
cmp ecx, edi
cmovg edi, ecx
mov r8, qword [r8]
test r8, r8
jne 0x140217e31
test edx, edx
je 0x14021915e
mov rcx, qword [rsp + 0x60]
lea eax, [rdx + 1]
test r9, r9
cmove eax, edx
movsxd rdx, eax
lea rdx, [rdx*4 + 4]
call fcn.1401fb500
mov r8, rax
test rax, rax
je 0x140219179
mov r11, qword [rbp - 0x60]
mov r9d, esi
mov rdx, rsi
test r11, r11
je 0x140217ebb
mov eax, 1
mov dword [r8 + 4], esi
mov r9d, eax
mov edx, eax
mov r10, qword [r15 + 0x10]
test r10, r10
je 0x140217f0e
mov rcx, qword [r10 + 0x10]
test r11, r11
je 0x140217ed2
cmp r11, rcx
jne 0x140217f06
test byte [rcx + 0x30], 0x80
jne 0x140217ee5
mov eax, dword [rcx + 0x28]
inc r9d
inc rdx
mov dword [r8 + rdx*4], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x140217f06
nop
mov eax, dword [rcx + 0x58]
inc rdx
inc r9d
mov dword [r8 + rdx*4], eax
mov rcx, qword [rcx + 0x28]
test rcx, rcx
jne 0x140217ef0
mov r10, qword [r10]
test r10, r10
jne 0x140217ec4
mov dword [r8], r9d
lea eax, [rdi + 8]
mov ecx, dword [r12 + 0x38]
mov edi, 2
cmp ecx, eax
mov dword [rsp + 0x30], 0xfffffff2
mov qword [rsp + 0x28], r8
mov edx, 0x9b
cmovle ecx, eax
mov byte [r12 + 0x1f], 0
mov dword [r12 + 0x38], ecx
mov r8d, edi
mov rcx, rbx
mov dword [r12 + 0x28], esi
mov dword [rsp + 0x20], 1
call fcn.140229e10
movsxd rax, dword [rbx + 0x90]
lea r12, [rbx + 0x88]
mov qword [rbp - 0x78], r12
test eax, eax
jle 0x140217f7f
movzx edx, byte [rbp - 0x58]
lea rcx, [rax + rax*2]
mov rax, qword [r12]
mov word [rax + rcx*8 - 0x16], dx
mov r8d, edi
mov edx, 0x32
mov rcx, rbx
call fcn.140229cc0
mov edi, eax
lea rdx, str._in_database__s__n
mov rax, qword [rsp + 0x60]
mov rcx, rax
mov r8, qword [rax + 0x20]
mov r8, qword [r14 + r8]
call fcn.140210f40
xor r8d, r8d
mov dword [rsp + 0x30], 0xfffffffa
mov qword [rsp + 0x28], rax
mov r9d, r13d
mov rcx, rbx
mov dword [rsp + 0x20], esi
lea edx, [r8 + 0x75]
call fcn.140229e10
mov edx, 0x6f
mov dword [rsp + 0x20], r13d
mov r9d, r13d
mov rcx, rbx
lea r8d, [rdx - 0x6d]
call fcn.140229da0
mov rcx, rbx
call fcn.1401d4510
mov edx, dword [rbx + 0x90]
test edi, edi
jns 0x140217ffe
lea edi, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x67], 0
je 0x140218010
lea rax, [0x14037eae0]
jmp 0x14021801f
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [r12]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov r15, qword [r15 + 0x10]
mov qword [rbp - 0x48], r15
test r15, r15
je 0x140219155
mov r15, qword [r15 + 0x10]
mov qword [rbp - 0x38], r15
mov qword [rbp - 8], rsi
mov dword [rbp - 0x40], 0xffffffff
cmp byte [r15 + 0x3f], 0
jne 0x14021913d
mov r9, qword [rbp - 0x60]
test r9, r9
je 0x140218063
cmp r9, r15
jne 0x14021913d
test byte [r15 + 0x30], 0x80
jne 0x140218070
mov qword [rbp - 0x50], rsi
jmp 0x140218096
mov rdi, qword [r15 + 0x10]
mov qword [rbp - 0x50], rdi
test rdi, rdi
je 0x140218096
nop dword [rax]
mov eax, dword [rdi + 0x64]
and al, 3
cmp al, 2
je 0x140218092
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x140218080
mov qword [rbp - 0x50], rdi
mov rcx, qword [rsp + 0x70]
lea rax, [rsp + 0x78]
mov qword [rsp + 0x38], rax
xor r9d, r9d
lea rax, [rbp - 0x28]
mov rdx, r15
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rsi
lea r8d, [r9 + 0x70]
mov dword [rsp + 0x20], 1
call fcn.140211d10
mov r9d, 7
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x40]
call fcn.140229d30
mov r14, qword [r15 + 0x10]
test r14, r14
je 0x140218148
mov edi, 8
nop dword [rax]
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140218117
xor r8d, r8d
mov dword [rsp + 0x20], esi
mov r9d, edi
mov rcx, rbx
lea edx, [r8 + 0x47]
call fcn.1401d32a0
jmp 0x14021813d
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12]
mov qword [rax + rcx*8], VarR8FromUI1
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov r14, qword [r14 + 0x28]
inc edi
test r14, r14
jne 0x1402180f0
movsxd rcx, dword [rbx + 0x90]
mov edi, dword [rbp - 0x28]
cmp dword [rbx + 0x94], ecx
jg 0x140218176
xor r9d, r9d
mov dword [rsp + 0x20], esi
mov r8d, edi
mov rcx, rbx
lea edx, [r9 + 0x23]
call fcn.1401d32a0
mov r14, qword [rbp - 0x78]
jmp 0x1402181a3
mov r14, qword [rbp - 0x78]
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14]
mov dword [rax + rcx*8], 0x23
mov dword [rax + rcx*8 + 4], edi
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rsi
movsxd rdx, dword [rbx + 0x90]
mov dword [rsp + 0x68], edx
cmp dword [rbx + 0x94], edx
jg 0x1402181d5
mov edx, 0x56
mov dword [rsp + 0x20], esi
mov rcx, rbx
lea r9d, [rdx - 0x55]
lea r8d, [rdx - 0x4f]
call fcn.1401d32a0
mov dword [rsp + 0x68], eax
jmp 0x140218202
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [r14]
mov dword [rax + rcx*8], 0x56
mov dword [rax + rcx*8 + 4], 7
mov qword [rax + rcx*8 + 8], 1
mov qword [rax + rcx*8 + 0x10], rsi
cmp byte [rbp - 0x64], 0x71
je 0x14021827d
movsx edx, word [r15 + 0x38]
movsxd rcx, dword [rbx + 0x90]
dec edx
cmp dword [rbx + 0x94], ecx
jg 0x140218238
mov r9d, edx
mov dword [rsp + 0x20], r13d
mov edx, 0x5e
mov r8d, edi
mov rcx, rbx
call fcn.1401d32a0
jmp 0x140218261
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14]
mov dword [rax + rcx*8], 0x5e
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], rsi
movsxd rax, dword [rbx + 0x90]
test eax, eax
jle 0x14021827d
lea rcx, [rax + rax*2]
mov edx, 0x80
mov rax, qword [r14]
mov word [rax + rcx*8 - 0x16], dx
movzx ecx, word [r15 + 0x32]
mov r13d, esi
and ecx, 1
mov dword [rbp - 0x68], ecx
cmp si, word [r15 + 0x36]
jge 0x140218735
mov rdi, rsi
mov qword [rbp - 0x18], rsi
jmp 0x1402182a4
mov r14, qword [rbp - 0x78]
mov rdx, qword [rbp - 0x38]
mov r15, qword [r15 + 8]
add r15, rdi
movsx eax, word [rdx + 0x34]
cmp r13d, eax
je 0x140218718
test byte [r15 + 8], 0xf
jne 0x1402182d9
test ecx, ecx
je 0x140218718
mov rax, qword [rsp + 0x70]
dec dword [rax + 0x44]
mov r12d, dword [rax + 0x44]
jmp 0x1402182ee
test ecx, ecx
je 0x1402182eb
mov rax, qword [rsp + 0x70]
dec dword [rax + 0x44]
mov r12d, dword [rax + 0x44]
jmp 0x1402182ee
mov r12d, esi
mov r8d, dword [rbp - 0x28]
mov r9d, r13d
mov rcx, rbx
mov dword [rsp + 0x20], 3
call fcn.1401ff510
mov rax, qword [rbx]
movsxd rdx, dword [rbx + 0x90]
cmp byte [rax + 0x67], 0
je 0x14021831e
lea rax, [0x14037eae0]
jmp 0x14021832d
mov rax, qword [r14]
lea rcx, [rdx + rdx*2]
lea rax, [rax + rcx*8]
add rax, 0xffffffffffffffe8
cmp byte [rax], 0x5e
jne 0x140218347
test edx, edx
jle 0x140218347
mov rax, qword [r14]
lea rcx, [rdx + rdx*2]
mov edx, 0x80
mov word [rax + rcx*8 - 0x16], dx
test byte [r15 + 8], 0xf
je 0x140218522
movsxd r14, dword [rbx + 0x90]
cmp dword [rbx + 0x94], r14d
jg 0x14021837e
xor r9d, r9d
mov dword [rsp + 0x20], esi
mov rcx, rbx
lea edx, [r9 + 0x33]
lea r8d, [r9 + 3]
call fcn.1401d32a0
mov r14d, eax
jmp 0x1402183ac
lea rcx, [r14 + r14*2]
lea eax, [r14 + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
mov dword [rax + rcx*8], 0x33
mov qword [rax + rcx*8 + 4], 3
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov r8, qword [rbp - 0x38]
lea rdx, str.NULL_value_in__s._s
mov r9, qword [r15]
mov rcx, qword [rsp + 0x60]
mov r8, qword [r8]
call fcn.140210f40
movsxd rdx, dword [rbx + 0x90]
mov rdi, rax
cmp dword [rbx + 0x94], edx
jg 0x1402183fa
mov r9d, 3
mov dword [rsp + 0x20], esi
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x72]
call fcn.1401d32a0
mov r8, qword [rbp - 0x78]
mov edx, eax
jmp 0x140218424
mov r8, qword [rbp - 0x78]
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [r8]
mov qword [rax + rcx*8], 0x75
mov qword [rax + rcx*8 + 8], 3
mov qword [rax + rcx*8 + 0x10], rsi
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
je 0x14021843c
test rdi, rdi
je 0x14021847d
mov rdx, rdi
call fcn.1401fb370
jmp 0x14021847d
test edx, edx
jns 0x140218448
mov edx, dword [rbx + 0x90]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [r8]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x140218470
mov r9d, 0xfffffffa
mov r8, rdi
mov rcx, rbx
call fcn.140249ac0
jmp 0x14021847d
test rdi, rdi
je 0x14021847d
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xfa
cmp dword [rbp - 0x68], 0
je 0x1402184e0
mov eax, dword [r15 + 8]
and al, 0xf0
cmp al, 0x10
je 0x1402184e0
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1402184b4
xor r8d, r8d
mov dword [rsp + 0x20], esi
mov r9d, r12d
mov rcx, rbx
lea edx, [r8 + 8]
call fcn.1401d32a0
jmp 0x1402184e8
mov r8, qword [rbp - 0x78]
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r8]
mov qword [rax + rcx*8], 8
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
jmp 0x1402184ec
mov rcx, rbx
call fcn.1401d4510
mov r8, qword [rbp - 0x78]
mov edx, dword [rbx + 0x90]
test r14d, r14d
jns 0x1402184fb
lea r14d, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x67], 0
je 0x14021850d
lea rax, [0x14037eae0]
jmp 0x14021851b
movsxd rax, r14d
lea rcx, [rax + rax*2]
mov rax, qword [r8]
lea rax, [rax + rcx*8]
mov rdi, qword [rbp - 0x18]
mov dword [rax + 8], edx
mov rax, qword [rbp - 0x38]
test dword [rax + 0x30], 0x10000
je 0x140218715
mov eax, dword [r15 + 8]
shr eax, 4
and eax, 0xf
cmp eax, 1
je 0x140218715
movsxd r14, dword [rbx + 0x90]
lea ecx, [rax - 1]
lea rax, [0x140000000]
movsx edx, byte [rcx + rax + 0x2e1b4c]
cmp dword [rbx + 0x94], r14d
jg 0x140218584
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov rcx, rbx
lea edx, [r9 + 0x11]
lea r8d, [r9 + 3]
call fcn.1401d32a0
mov r14d, eax
jmp 0x1402185b2
lea rcx, [r14 + r14*2]
lea eax, [r14 + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
mov dword [rax + rcx*8], SafeArrayGetLBound
mov qword [rax + rcx*8 + 4], 3
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rsi
mov rdx, qword [rbp - 0x38]
mov r8d, dword [r15 + 8]
shr r8d, 4
and r8d, 0xf
mov rcx, qword [rdx + 8]
dec r8d
mov r9, qword [rdx]
lea rdx, str.non__s_value_in__s._s
mov rax, qword [rcx + rdi]
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x20], rax
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x34a480]
call fcn.140210f40
movsxd rdx, dword [rbx + 0x90]
mov rdi, rax
cmp dword [rbx + 0x94], edx
jg 0x140218628
mov r9d, 3
mov dword [rsp + 0x20], esi
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x72]
call fcn.1401d32a0
mov r15, qword [rbp - 0x78]
mov edx, eax
jmp 0x140218652
mov r15, qword [rbp - 0x78]
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [r15]
mov qword [rax + rcx*8], 0x75
mov qword [rax + rcx*8 + 8], 3
mov qword [rax + rcx*8 + 0x10], rsi
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
je 0x14021866a
test rdi, rdi
je 0x1402186ab
mov rdx, rdi
call fcn.1401fb370
jmp 0x1402186ab
test edx, edx
jns 0x140218676
mov edx, dword [rbx + 0x90]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [r15]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x14021869e
mov r9d, 0xfffffffa
mov r8, rdi
mov rcx, rbx
call fcn.140249ac0
jmp 0x1402186ab
test rdi, rdi
je 0x1402186ab
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xfa
mov rcx, qword [rbx + 0x18]
not r12d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1402186c7
mov r8d, r12d
mov rdx, rbx
call fcn.1401e6d90
jmp 0x1402186d7
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x90]
movsxd rdx, r12d
mov dword [rcx + rdx*4], eax
mov rcx, rbx
call fcn.1401d4510
mov edx, dword [rbx + 0x90]
test r14d, r14d
jns 0x1402186ee
lea r14d, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x67], 0
je 0x140218700
lea rax, [0x14037eae0]
jmp 0x14021870e
movsxd rax, r14d
lea rcx, [rax + rax*2]
mov rax, qword [r15]
lea rax, [rax + rcx*8]
mov rdi, qword [rbp - 0x18]
mov dword [rax + 8], edx
mov ecx, dword [rbp - 0x68]
mov r15, qword [rbp - 0x38]
add rdi, 0x18
inc r13d
mov qword [rbp - 0x18], rdi
movsx eax, word [r15 + 0x36]
cmp r13d, eax
jl 0x1402182a0
mov rdx, qword [r15 + 0x20]
test rdx, rdx
je 0x140218932
mov rdi, qword [rsp + 0x60]
mov eax, dword [rdi + 0x30]
bt rax, 9
jb 0x140218932
xor r8d, r8d
mov rcx, rdi
call fcn.1402040d0
cmp byte [rdi + 0x67], 0
mov r13, rax
jne 0x140218922
mov r14, qword [rsp + 0x70]
mov ecx, dword [rbp - 0x28]
inc ecx
mov r15d, dword [r14 + 0x44]
dec r15d
mov dword [r14 + 0x40], ecx
lea r12d, [r15 - 1]
mov dword [r14 + 0x44], r12d
mov eax, dword [rax]
dec eax
movsxd rdi, eax
test eax, eax
jle 0x1402187d6
mov rbx, qword [rsp + 0x70]
mov r14, rdi
shl r14, 5
add r14, 8
add r14, r13
nop dword [rax + rax]
mov rdx, qword [r14]
xor r9d, r9d
mov r8d, r15d
mov rcx, rbx
call fcn.140203070
dec rdi
lea r14, [r14 - 0x20]
test rdi, rdi
jg 0x1402187b0
mov rbx, qword [rbp - 0x20]
mov r14, qword [rsp + 0x70]
mov rdx, qword [r13 + 8]
mov r9d, reloc.OLEAUT32.dll_SafeArrayGetDim
mov r8d, r12d
mov rcx, r14
call fcn.140203480
mov rcx, qword [rbx + 0x18]
not r15d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140218807
mov r8d, r15d
mov rdx, rbx
call fcn.1401e6d90
jmp 0x140218817
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x90]
movsxd rdx, r15d
mov dword [rcx + rdx*4], eax
mov r15, qword [rbp - 0x38]
lea rdx, str.CHECK_constraint_failed_in__s
mov rcx, qword [rsp + 0x60]
mov dword [r14 + 0x40], esi
mov r8, qword [r15]
call fcn.140210f40
movsxd rdx, dword [rbx + 0x90]
mov rdi, rax
cmp dword [rbx + 0x94], edx
jg 0x140218866
mov r9d, 3
mov dword [rsp + 0x20], esi
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x72]
call fcn.1401d32a0
mov r8, qword [rbp - 0x78]
mov edx, eax
jmp 0x140218890
mov r8, qword [rbp - 0x78]
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [r8]
mov qword [rax + rcx*8], 0x75
mov qword [rax + rcx*8 + 8], 3
mov qword [rax + rcx*8 + 0x10], rsi
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
je 0x1402188a8
test rdi, rdi
je 0x1402188e9
mov rdx, rdi
call fcn.1401fb370
jmp 0x1402188e9
test edx, edx
jns 0x1402188b4
mov edx, dword [rbx + 0x90]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [r8]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1402188dc
mov r9d, 0xfffffffa
mov r8, rdi
mov rcx, rbx
call fcn.140249ac0
jmp 0x1402188e9
test rdi, rdi
je 0x1402188e9
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xfa
mov rcx, rbx
call fcn.1401d4510
mov rcx, qword [rbx + 0x18]
not r12d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14021890d
mov r8d, r12d
mov rdx, rbx
call fcn.1401e6d90
jmp 0x14021891d
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x90]
movsxd rdx, r12d
mov dword [rcx + rdx*4], eax
mov rdi, qword [rsp + 0x60]
test r13, r13
je 0x140218932
mov rdx, r13
mov rcx, rdi
call fcn.1401cab80
movzx r14d, byte [rbp - 0x64]
cmp r14b, 0x71
je 0x140218ec5
mov r13, qword [r15 + 0x10]
test r13, r13
je 0x140218ec5
mov r15d, dword [rsp + 0x78]
mov r14d, 8
mov rax, qword [rsp + 0x70]
sub r14d, r15d
mov rcx, qword [rbp - 0x50]
mov dword [rbp - 0x24], r14d
mov dword [rbp - 0x68], r15d
nop dword [rax]
dec dword [rax + 0x44]
mov edi, dword [rax + 0x44]
cmp rcx, r13
je 0x140218eac
mov ecx, dword [rbp - 0x40]
xor r9d, r9d
mov r8d, dword [rbp - 0x28]
mov rdx, r13
mov dword [rsp + 0x38], ecx
mov rcx, qword [rbp - 8]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp - 0x30]
mov qword [rsp + 0x28], rcx
mov rcx, rax
mov dword [rsp + 0x20], esi
call fcn.14020ab30
movsxd rcx, dword [rbx + 0x90]
lea edx, [r15 + r14]
mov r12d, eax
mov dword [rbp - 0x40], eax
mov qword [rbp - 8], r13
cmp dword [rbx + 0x94], ecx
jg 0x1402189ea
mov r9d, 1
mov dword [rsp + 0x20], esi
mov r8d, edx
mov rcx, rbx
lea edx, [r9 + 0x55]
call fcn.1401d32a0
mov r14, qword [rbp - 0x78]
jmp 0x140218a17
mov r14, qword [rbp - 0x78]
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14]
mov dword [rax + rcx*8], 0x56
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 1
mov qword [rax + rcx*8 + 0x10], rsi
movzx eax, word [r13 + 0x60]
mov r9d, edi
mov dword [rsp + 0x28], eax
mov r8d, r15d
mov edx, 0x1c
mov dword [rsp + 0x20], r12d
mov rcx, rbx
call fcn.140229f50
mov r12d, 3
lea r8, str.row
mov edx, r12d
mov rcx, rbx
mov edi, eax
call fcn.140234ff0
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140218a7d
mov r9d, r12d
mov dword [rsp + 0x20], r12d
lea edx, [r12 + 0x6c]
mov rcx, rbx
lea r8d, [r12 + 4]
call fcn.1401d32a0
jmp 0x140218aab
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14]
mov dword [rax + rcx*8], 0x6f
mov dword [rax + rcx*8 + 4], 7
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], rsi
lea r8, str._missing_from_index
mov edx, 4
mov rcx, rbx
call fcn.140234ff0
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140218ae9
mov edx, 0x6f
mov dword [rsp + 0x20], r12d
mov r9d, r12d
mov rcx, rbx
lea r8d, [rdx - 0x6b]
call fcn.1401d32a0
jmp 0x140218b17
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14]
mov dword [rax + rcx*8], 0x6f
mov dword [rax + rcx*8 + 4], 4
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], rsi
mov r8, qword [r13]
mov edx, 4
mov rcx, rbx
call fcn.140234ff0
movsxd rcx, dword [rbx + 0x90]
mov r12d, eax
mov dword [rbp - 0x18], eax
cmp dword [rbx + 0x94], ecx
jg 0x140218b5a
mov eax, 3
mov rcx, rbx
mov r9d, eax
mov dword [rsp + 0x20], eax
lea edx, [rax + 0x6c]
lea r8d, [rax + 1]
call fcn.1401d32a0
jmp 0x140218b8b
lea eax, [rcx + 1]
mov edx, 3
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14]
mov dword [rax + rcx*8], 0x6f
mov dword [rax + rcx*8 + 4], 4
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rsi
mov rcx, rbx
call fcn.1401d4510
mov edx, dword [rbx + 0x90]
mov r14d, eax
mov dword [rbp - 0x10], eax
test edi, edi
jns 0x140218ba6
lea edi, [rdx - 1]
mov rcx, qword [rbx]
mov r8, qword [rbp - 0x78]
cmp byte [rcx + 0x67], 0
je 0x140218bbc
lea rcx, [0x14037eae0]
jmp 0x140218bca
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [r8]
lea rcx, [rax + rcx*8]
mov dword [rcx + 8], edx
cmp byte [r13 + 0x62], 0
je 0x140218e2d
mov rax, qword [rsp + 0x70]
dec dword [rax + 0x44]
mov r15d, dword [rax + 0x44]
cmp si, word [r13 + 0x5e]
jae 0x140218c95
mov edi, dword [rbp - 0x40]
mov r14, rsi
mov r12d, edi
neg r12d
nop dword [rax + rax]
mov rax, qword [r13 + 8]
movsx rcx, word [r14 + rax]
test cx, cx
js 0x140218c21
mov rax, qword [rbp - 0x38]
lea rcx, [rcx + rcx*2]
mov rax, qword [rax + 8]
test byte [rax + rcx*8 + 8], 0xf
jne 0x140218c72
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140218c49
mov r9d, r15d
mov dword [rsp + 0x20], esi
mov r8d, edi
mov edx, 0x32
mov rcx, rbx
call fcn.1401d32a0
jmp 0x140218c72
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r8]
mov dword [rax + rcx*8], 0x32
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
movzx eax, word [r13 + 0x5e]
inc edi
mov r8, qword [rbp - 0x78]
add r14, 2
lea ecx, [r12 + rdi]
cmp ecx, eax
jl 0x140218c00
mov r14d, dword [rbp - 0x10]
mov r12d, dword [rbp - 0x18]
movsxd rdi, dword [rbx + 0x90]
cmp dword [rbx + 0x94], edi
jg 0x140218cc3
mov r8d, dword [rbp - 0x68]
xor r9d, r9d
mov rcx, rbx
mov dword [rsp + 0x20], esi
lea edx, [r9 + 0x26]
call fcn.1401d32a0
mov r8, qword [rbp - 0x78]
mov edi, eax
jmp 0x140218cf3
mov r8, qword [rbp - 0x78]
lea rcx, [rdi + rdi*2]
mov edx, dword [rbp - 0x68]
lea eax, [rdi + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [r8]
mov dword [rax + rcx*8], 0x26
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rsi
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140218d1e
xor r8d, r8d
mov dword [rsp + 0x20], esi
mov r9d, r15d
mov rcx, rbx
lea edx, [r8 + 8]
call fcn.1401d32a0
mov r8, qword [rbp - 0x78]
jmp 0x140218d44
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r8]
mov qword [rax + rcx*8], 8
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov edx, dword [rbx + 0x90]
test edi, edi
jns 0x140218d51
lea edi, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x67], 0
je 0x140218d63
lea rax, [0x14037eae0]
jmp 0x140218d71
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [r8]
lea rax, [rax + rcx*8]
mov r8d, dword [rbp - 0x68]
mov r9d, r15d
mov dword [rax + 8], edx
mov rcx, rbx
movzx eax, word [r13 + 0x5e]
mov edx, 0x28
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x40]
mov dword [rsp + 0x20], eax
call fcn.140229f50
lea r8, str.non_unique_entry_in_index
mov edx, 3
mov rcx, rbx
call fcn.140234ff0
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140218dd3
xor r8d, r8d
mov dword [rsp + 0x20], esi
mov r9d, r12d
mov rcx, rbx
lea edx, [r8 + 8]
call fcn.1401d32a0
jmp 0x140218dfd
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
mov qword [rax + rcx*8], 8
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov rcx, qword [rbx + 0x18]
not r15d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140218e19
mov r8d, r15d
mov rdx, rbx
call fcn.1401e6d90
jmp 0x140218e29
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x90]
movsxd rdx, r15d
mov dword [rcx + rdx*4], eax
mov r15d, dword [rbp - 0x68]
mov edx, dword [rbx + 0x90]
test r14d, r14d
jns 0x140218e3c
lea r14d, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x67], 0
je 0x140218e4e
lea rax, [0x14037eae0]
jmp 0x140218e60
movsxd rax, r14d
lea rcx, [rax + rax*2]
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
lea rax, [rax + rcx*8]
mov r8d, dword [rbp - 0x30]
mov dword [rax + 8], edx
mov rax, qword [rsp + 0x70]
test r8d, r8d
je 0x140218ea4
mov r9, qword [rax + 0x10]
not r8d
mov rcx, qword [r9 + 0x18]
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140218e8e
mov rdx, r9
call fcn.1401e6d90
jmp 0x140218e9f
mov rcx, qword [rcx + 0x50]
mov eax, dword [r9 + 0x90]
movsxd rdx, r8d
mov dword [rcx + rdx*4], eax
mov rax, qword [rsp + 0x70]
mov r14d, dword [rbp - 0x24]
mov rcx, qword [rbp - 0x50]
mov r13, qword [r13 + 0x28]
inc r15d
mov dword [rbp - 0x68], r15d
test r13, r13
jne 0x140218970
movzx r14d, byte [rbp - 0x64]
movsxd rcx, dword [rbx + 0x90]
mov edi, dword [rsp + 0x68]
cmp dword [rbx + 0x94], ecx
jg 0x140218ef6
mov r8d, dword [rbp - 0x28]
mov r9d, edi
mov edx, 0x26
mov dword [rsp + 0x20], esi
mov rcx, rbx
call fcn.1401d32a0
mov r13, qword [rbp - 0x78]
jmp 0x140218f26
mov r13, qword [rbp - 0x78]
lea eax, [rcx + 1]
mov edx, dword [rbp - 0x28]
lea rcx, [rcx + rcx*2]
mov dword [rbx + 0x90], eax
mov rax, qword [r13]
mov dword [rax + rcx*8], 0x26
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov rax, qword [rbx]
lea ecx, [rdi - 1]
mov edx, dword [rbx + 0x90]
cmp byte [rax + 0x67], 0
je 0x140218f41
lea rax, [0x14037eae0]
jmp 0x140218f58
test ecx, ecx
mov eax, edx
cmovns eax, edi
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r13]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
cmp r14b, 0x71
je 0x140219137
lea r8, str.wrong__of_entries_in_index
mov edx, 2
mov rcx, rbx
call fcn.140234ff0
mov rax, qword [rbp - 0x38]
mov r14, qword [rax + 0x10]
test r14, r14
je 0x140219137
mov r12d, dword [rsp + 0x78]
mov r15d, 8
mov rax, qword [rbp - 0x50]
add r12d, 0xfffffff8
nop dword [rax]
cmp rax, r14
je 0x140219127
movsxd rcx, dword [rbx + 0x90]
lea edx, [r15 + r12]
cmp dword [rbx + 0x94], ecx
jg 0x140218fdc
mov r9d, 3
mov dword [rsp + 0x20], esi
mov r8d, edx
mov rcx, rbx
lea edx, [r9 + 0x5f]
call fcn.1401d32a0
mov edx, 3
jmp 0x140219007
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r13]
mov dword [rax + rcx*8 + 4], edx
mov edx, 3
mov qword [rax + rcx*8 + 8], rdx
mov dword [rax + rcx*8], 0x62
mov qword [rax + rcx*8 + 0x10], rsi
movsxd rdi, dword [rbx + 0x90]
cmp dword [rbx + 0x94], edi
jg 0x140219030
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, r15d
mov rcx, rbx
lea edx, [r9 + 0x35]
call fcn.1401d32a0
mov edi, eax
jmp 0x14021905a
lea rcx, [rdi + rdi*2]
lea eax, [rdi + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [r13]
mov dword [rax + rcx*8], 0x35
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rsi
movsxd rax, dword [rbx + 0x90]
test eax, eax
jle 0x140219077
lea rcx, [rax + rax*2]
mov edx, 0x90
mov rax, qword [r13]
mov word [rax + rcx*8 - 0x16], dx
mov r8, qword [r14]
mov edx, 4
mov rcx, rbx
call fcn.140234ff0
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1402190b5
mov edx, 0x6f
mov dword [rsp + 0x20], 3
mov rcx, rbx
lea r9d, [rdx - 0x6d]
lea r8d, [rdx - 0x6b]
call fcn.1401d32a0
jmp 0x1402190ea
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r13]
mov dword [rax + rcx*8], 0x6f
mov dword [rax + rcx*8 + 4], 4
mov dword [rax + rcx*8 + 8], 2
mov dword [rax + rcx*8 + 0xc], 3
mov qword [rax + rcx*8 + 0x10], rsi
mov rcx, rbx
call fcn.1401d4510
mov edx, dword [rbx + 0x90]
test edi, edi
jns 0x1402190ff
lea edi, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x67], 0
je 0x140219111
lea rax, [0x14037eae0]
jmp 0x140219120
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [r13]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov rax, qword [rbp - 0x50]
mov r14, qword [r14 + 0x28]
inc r15d
test r14, r14
jne 0x140218fa0
mov r13d, 3
mov r15, qword [rbp - 0x48]
mov r12, qword [rbp - 0x78]
mov r15, qword [r15]
mov qword [rbp - 0x48], r15
test r15, r15
jne 0x140218033
mov r10d, dword [rbp - 0x58]
mov r12, qword [rsp + 0x70]
mov r14d, dword [rsp + 0x6c]
mov rax, qword [rsp + 0x60]
inc r10d
mov dword [rbp - 0x58], r10d
cmp r10d, dword [rax + 0x28]
jl 0x140217dc8
mov r13d, dword [rbp - 0x3c]
lea rdi, [0x14037eae0]
mov r15d, 1
xor r9d, r9d
lea r8, [0x1402e0ba8]
mov rcx, rbx
lea edx, [r9 + 7]
call fcn.140229ff0
test rax, rax
je 0x1402191cd
lea rcx, [0x14029dd40]
mov byte [rax + 0x31], 0xff
mov qword [rax + 0x40], rcx
sub r15d, r13d
lea rcx, str.database_disk_image_is_malformed
mov dword [rax + 8], r15d
mov qword [rax + 0x88], rcx
mov byte [rax + 0x79], 0xff
mov rax, qword [rbx]
mov ecx, dword [rbx + 0x90]
sub ecx, 2
cmp byte [rax + 0x67], 0
jne 0x1402191e6
mov rdi, qword [rbx + 0x88]
mov dword [rdi + 0xc], ecx
jmp 0x140219938
test r11, r11
jne 0x14021922e
mov rdi, qword [rsp + 0x70]
mov rcx, rdi
call fcn.14021b190
test eax, eax
jne 0x140219938
mov rax, qword [rdi]
mov rcx, rbx
lea rdi, str._d__
movzx edx, byte [rax + 0x64]
add rdx, rdx
mov rdx, qword [rdi + rdx*8]
call fcn.1401e9250
mov rdx, qword [rbp - 0x70]
jmp 0x14021994f
mov rdx, qword [rsp + 0x60]
test byte [rdx + 0x2c], 0x40
jne 0x140219938
mov r9, qword [str._d__]
lea rdi, str._d__
test r9, r9
je 0x1402192a9
mov rdx, r11
sub r9, r11
nop word [rax + rax]
movzx r8d, byte [rdx]
movzx eax, byte [r9 + rdx]
cmp r8d, eax
jne 0x1402192c2
test r8d, r8d
jne 0x1402192d8
movzx eax, byte [rdi + 8]
mov edx, 2
mov r8, qword [rsp + 0x60]
test al, al
cmovne edx, eax
mov rax, qword [r8 + 0x20]
mov rcx, qword [rax + 0x18]
mov byte [rcx + 0x71], dl
mov rcx, r8
call fcn.140222cf0
mov r9, qword [rdi]
mov r11, qword [rbp - 0x80]
test r9, r9
jne 0x140219938
mov rcx, qword [rsp + 0x70]
lea rdx, str.unsupported_encoding:__s
mov r8, r11
call fcn.1401fdeb0
jmp 0x1402168aa
movzx ecx, byte [rax + r10 + 0x2e1730]
movzx eax, byte [r8 + r10 + 0x2e1730]
cmp eax, ecx
jne 0x1402192dd
inc rdx
jmp 0x140219260
mov r9, qword [rdi + 0x10]
add rdi, 0x10
test r9, r9
jne 0x140219250
jmp 0x1402192a9
mov r14d, dword [rsp + 0x6c]
mov rcx, rbx
mov edi, dword [r13 + 0x10]
mov edx, r14d
call fcn.140238470
test r11, r11
je 0x14021936a
test byte [r13 + 9], 8
jne 0x14021936a
xor r9d, r9d
lea r8, [0x1402e0468]
lea edx, [r9 + 2]
call fcn.140229ff0
mov rcx, qword [rbp - 0x80]
lea rdx, [rsp + 0x78]
mov rbx, rax
mov dword [rsp + 0x78], esi
mov dword [rax + 4], r14d
mov dword [rax + 0x1c], r14d
mov dword [rax + 0x20], edi
call fcn.14020b9b0
mov ecx, dword [rsp + 0x78]
mov eax, 1
mov word [rbx + 0x1a], ax
mov dword [rbx + 0x24], ecx
mov rdx, qword [rbp - 0x70]
mov rcx, qword [rsp + 0x60]
call fcn.1401fb370
mov rdx, qword [rbp - 0x80]
jmp 0x14021994f
xor r9d, r9d
lea r8, [0x1402e0dd0]
lea edx, [r9 + 3]
call fcn.140229ff0
mov dword [rax + 4], r14d
mov dword [rax + 0x1c], r14d
mov dword [rax + 0x24], edi
mov rcx, rbx
call fcn.1402378e0
jmp 0x140219938
mov rax, qword [rsp + 0x70]
mov edi, 1
mov dword [rax + 0x38], edi
cmp rsi, 0x23
ja 0x140219388
mov r8, qword [r10 + rsi*8 + 0x2e1370]
inc rsi
test r8, r8
je 0x140219388
mov edx, edi
mov rcx, rbx
call fcn.140234ff0
mov r9d, edi
mov r8d, edi
mov edx, 0x54
mov rcx, rbx
call fcn.140229d30
lea r10, [0x140000000]
jmp 0x1402193a2
cmp qword [r12], 0
mov r11d, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov rax, qword [rbp - 0x80]
mov edi, 3
cmovne r11d, dword [rsp + 0x6c]
test rax, rax
je 0x140219445
lea rdx, str.full
mov rcx, rax
call fcn.1402247b0
test eax, eax
jne 0x140219415
lea esi, [rdi - 2]
jmp 0x140219445
mov r15, qword [rbp - 0x80]
lea rdx, str.restart
mov rcx, r15
call fcn.1402247b0
test eax, eax
jne 0x140219431
lea esi, [rax + 2]
jmp 0x140219445
lea rdx, str.truncate
mov rcx, r15
call fcn.1402247b0
test eax, eax
cmove esi, edi
mov rax, qword [rsp + 0x70]
mov r9d, esi
mov r8d, r11d
mov dword [rsp + 0x20], 1
mov edx, edi
mov rcx, rbx
mov dword [rax + 0x38], edi
call fcn.140229da0
mov edx, 0x54
mov r9d, edi
mov rcx, rbx
lea r8d, [rdx - 0x53]
call fcn.140229d30
jmp 0x140219938
test r11, r11
je 0x1402194a2
lea rdx, [rsp + 0x78]
mov dword [rsp + 0x78], esi
mov rcx, r11
call fcn.14020b9b0
mov edx, dword [rsp + 0x78]
mov rcx, qword [rsp + 0x60]
call fcn.14019f900
mov rax, qword [rsp + 0x60]
lea rcx, [0x140239fc0]
cmp qword [rax + 0x168], rcx
jne 0x1402194bd
mov esi, dword [rax + 0x170]
movsxd rdx, esi
jmp 0x140219930
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1402194d9
call qword [0x14034a330]
mov rcx, qword [rsp + 0x60]
cmp byte [rcx + 0x6f], 0
jne 0x1402194ee
call fcn.1401bcfd0
mov rcx, qword [rsp + 0x60]
cmp dword [rcx + 0x28], 0
jle 0x140219536
mov rbx, rsi
nop word [rax + rax]
mov rax, qword [rcx + 0x20]
mov rax, qword [rbx + rax + 8]
test rax, rax
je 0x14021952b
mov rax, qword [rax + 8]
mov rcx, qword [rax]
mov rcx, qword [rcx + 0x120]
mov rcx, qword [rcx + 0x40]
call qword [0x14034a3b8]
mov rcx, qword [rsp + 0x60]
inc esi
add rbx, 0x20
cmp esi, dword [rcx + 0x28]
jl 0x140219500
cmp byte [rcx + 0x6f], 0
jne 0x140219546
call fcn.1401bd310
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x140219938
call qword [0x14034a340]
jmp 0x140219938
test r11, r11
je 0x140219585
lea rdx, [rsp + 0x78]
mov dword [rsp + 0x78], esi
mov rcx, r11
call fcn.14020b9b0
mov r13d, dword [rsp + 0x78]
test r13b, 2
je 0x140219938
jmp 0x14021958b
mov r13d, 0xfffe
cmp qword [rbp - 0x78], 0
mov r14, qword [rsp + 0x70]
mov r11d, dword [rsp + 0x6c]
mov r10, qword [rsp + 0x60]
mov edx, dword [r14 + 0x34]
mov dword [rsp + 0x68], edx
lea eax, [rdx + 1]
mov dword [r14 + 0x34], eax
je 0x1402195b5
mov eax, r11d
jmp 0x1402195bb
mov eax, dword [r10 + 0x28]
dec eax
movsxd r9, eax
cmp r15, r9
jg 0x1402197bd
mov ecx, r11d
mov r8d, 1
rol r8d, cl
sub r9, r15
inc r9
mov dword [rsp + 0x78], r8d
mov qword [rbp - 0x48], r9
cmp r11d, 1
je 0x140219797
mov rax, qword [r14 + 0xa0]
mov rcx, r14
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x74]
test r8d, eax
jne 0x14021960c
bts eax, r11d
mov dword [rcx + 0x74], eax
mov rax, qword [r10 + 0x20]
mov rcx, qword [rdi + rax + 0x18]
mov r12, qword [rcx + 0x10]
test r12, r12
je 0x140219797
mov r14, qword [r12 + 0x10]
test dword [r14 + 0x30], 0x100
je 0x140219778
movzx r15d, word [r14 + 0x3a]
mov rax, qword [r14 + 0x10]
add r15w, 0x2e
test rax, rax
je 0x140219657
test byte [rax + 0x64], 0x80
je 0x1402196aa
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x140219648
test r15w, r15w
je 0x1402196aa
mov rcx, qword [rsp + 0x70]
mov r9, r14
mov r8d, r11d
mov dword [rsp + 0x20], 0x70
call fcn.140211c20
mov r9d, dword [rbx + 0x90]
mov edi, r13d
mov r8d, dword [rsp + 0x68]
add r9d, 2
movsx ecx, r15w
and edi, 1
mov dword [rsp + 0x20], ecx
add r9d, edi
mov edx, 0x20
mov rcx, rbx
call fcn.140229da0
mov r10, qword [rsp + 0x60]
jmp 0x1402196b0
mov edi, r13d
and edi, 1
mov r8, qword [r10 + 0x20]
lea rdx, str.ANALYZE___w_.__w_
mov rax, qword [rbp - 0x60]
mov rcx, r10
mov r9, qword [r14]
mov r8, qword [rax + r8]
call fcn.140210f40
mov rdx, rax
test edi, edi
je 0x140219746
mov r14, qword [rsp + 0x70]
movzx ecx, byte [r14 + 0x1f]
test cl, cl
jne 0x1402196ed
inc dword [r14 + 0x38]
mov edi, dword [r14 + 0x38]
jmp 0x1402196fe
dec cl
movzx eax, cl
mov byte [r14 + 0x1f], al
mov edi, dword [r14 + rax*4 + 0xd8]
xor r8d, r8d
mov dword [rsp + 0x30], 0xfffffffa
mov qword [rsp + 0x28], rdx
mov r9d, edi
mov rcx, rbx
mov dword [rsp + 0x20], esi
lea edx, [r8 + 0x75]
call fcn.140229e10
mov r9d, 1
mov r8d, edi
mov rcx, rbx
lea edx, [r9 + 0x53]
call fcn.140229d30
mov edx, dword [rsp + 0x68]
mov r10, qword [rsp + 0x60]
mov r11d, dword [rsp + 0x6c]
jmp 0x14021977d
mov dword [rsp + 0x30], 0xfffffffa
xor r9d, r9d
mov qword [rsp + 0x28], rdx
xor r8d, r8d
mov edx, 0x94
mov dword [rsp + 0x20], esi
mov rcx, rbx
call fcn.140229e10
mov edx, dword [rsp + 0x68]
mov r10, qword [rsp + 0x60]
mov r11d, dword [rsp + 0x6c]
mov r14, qword [rsp + 0x70]
mov r12, qword [r12]
test r12, r12
jne 0x140219622
mov rdi, qword [rbp - 0x60]
mov r8d, dword [rsp + 0x78]
mov r9, qword [rbp - 0x48]
inc r11d
rol r8d, 1
add rdi, 0x20
mov dword [rsp + 0x6c], r11d
sub r9, 1
mov dword [rsp + 0x78], r8d
mov qword [rbp - 0x48], r9
mov qword [rbp - 0x60], rdi
jne 0x1402195e2
mov edx, 0xa6
mov rcx, rbx
call fcn.140229c50
jmp 0x140219938
test r11, r11
je 0x1402197ed
lea rdx, [rbp - 0x48]
mov rcx, r11
call fcn.1401fb780
test eax, eax
jne 0x1402197ed
mov rcx, qword [rbp - 0x48]
call fcn.140199520
mov rcx, 0xffffffffffffffff
call fcn.140199520
mov rdx, rax
jmp 0x140219930
mov rdi, 0xffffffffffffffff
test r11, r11
je 0x14021983d
lea rdx, [rbp - 0x48]
mov rcx, r11
call fcn.1401fb780
test eax, eax
jne 0x14021983d
mov rcx, rdi
call fcn.140199600
mov rcx, qword [rbp - 0x48]
test rcx, rcx
jle 0x14021983d
test rax, rax
je 0x140219838
cmp rax, rcx
jle 0x14021983d
call fcn.140199600
mov rcx, rdi
call fcn.140199600
mov rdx, rax
jmp 0x140219930
test r11, r11
je 0x140219887
lea rdx, [rbp - 0x48]
mov rcx, r11
call fcn.1401fb780
test eax, eax
jne 0x140219887
mov rax, qword [rbp - 0x48]
test rax, rax
js 0x140219887
mov ecx, 8
mov edi, 0x7fffffff
and eax, edi
cmp eax, ecx
cmova eax, ecx
mov rcx, qword [rsp + 0x60]
mov dword [rcx + 0xb4], eax
mov rax, qword [rsp + 0x60]
movsxd rdx, dword [rax + 0xb4]
jmp 0x140219930
test r11, r11
je 0x1402198c8
lea rdx, [rbp - 0x48]
mov rcx, r11
call fcn.1401fb780
test eax, eax
jne 0x1402198c8
mov rax, qword [rbp - 0x48]
test rax, rax
js 0x1402198c8
mov rcx, qword [rsp + 0x60]
mov edi, 0x7fffffff
and eax, edi
mov dword [rcx + 0x2e0], eax
mov rax, qword [rsp + 0x60]
movsxd rdx, dword [rax + 0x2e0]
jmp 0x140219930
test r11, r11
je 0x140219924
lea rdx, [rsp + 0x78]
mov dword [rsp + 0x78], esi
mov rcx, r11
call fcn.14020b9b0
mov edi, dword [rsp + 0x78]
test edi, edi
jle 0x140219915
mov r8, qword [rsp + 0x60]
lea rdx, [0x1402462b0]
mov rcx, r8
call fcn.1401b18a0
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x2e4], edi
jmp 0x140219929
mov rcx, qword [rsp + 0x60]
xor r8d, r8d
xor edx, edx
call fcn.1401b18a0
mov rax, qword [rsp + 0x60]
movsxd rdx, dword [rax + 0x2e4]
mov rcx, rbx
call fcn.1401e90f0
mov rdx, qword [rbp - 0x70]
mov rcx, qword [rsp + 0x60]
call fcn.1401fb370
mov rdx, qword [rbp - 0x80]
test rdx, rdx
je 0x140219959
mov rcx, qword [rsp + 0x60]
call fcn.1401fb370
mov rsi, qword [rsp + 0x150]
mov r15, qword [rsp + 0x148]
mov rcx, qword [rbp + 0x38]
xor rcx, rsp
call fcn.1400e6b50
add rsp, 0x158
pop r14
pop r13
pop r12
pop rdi
pop rbx
pop rbp
ret