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

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x90]
sub rsp, 0x190
mov r15, qword [rcx + 0x10]
xor ebx, ebx
mov rax, qword [rcx]
mov r12d, 1
mov dword [rbp - 0x64], r12d
mov r14, r8
mov qword [rbp + 0x70], rbx
mov r13, rdx
mov qword [rsp + 0x60], rax
mov rsi, rcx
mov qword [rsp + 0x68], r15
test r15, r15
jne 0x140149da8
cmp qword [rcx + 0x98], rbx
jne 0x140149d9b
test byte [rax + 0x60], 8
jne 0x140149d9b
mov byte [rcx + 0x23], r12b
call fcn.1400e6f50
mov r15, rax
mov qword [rsp + 0x68], rax
test r13, r13
je 0x14014c79c
cmp dword [rsi + 0x30], ebx
jne 0x14014c79c
xor r9d, r9d
mov qword [rsp + 0x20], rbx
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x15]
call fcn.140116a80
test eax, eax
jne 0x14014c79c
cmp byte [r14], 6
ja 0x140149e0a
mov r8, qword [r13 + 0x48]
test r8, r8
je 0x140149dfb
lea rdx, [fcn.1401051c0]
mov rcx, rsi
call fcn.14013c420
mov qword [r13 + 0x48], rbx
mov eax, dword [r13 + 4]
and eax, 0xfffffffe
bts eax, 0x16
mov dword [r13 + 4], eax
xor r8d, r8d
mov qword [rsp + 0x188], rdi
mov rdx, r13
mov rcx, rsi
call fcn.140148b40
lea rdx, [0x1409b3370]
cmp dword [rsi + 0x30], ebx
jne 0x14014a0db
mov r10d, dword [r13 + 4]
bt r10d, 0x17
jae 0x140149e7c
mov rdx, qword [r13 + 0x28]
lea r11, [rdx + 8]
mov rcx, r11
call fcn.140149b80
test eax, eax
je 0x140149e73
mov r8, qword [r11 + 0x18]
test r8, r8
jne 0x140149e5f
mov rax, qword [r11 + 0x20]
mov r8, qword [rax]
lea rdx, str.target_object_alias_may_not_appear_in_FROM_clause:__s
mov rcx, rsi
call fcn.1400bdaa0
jmp 0x14014a0d4
btr r10d, 0x17
mov dword [r13 + 4], r10d
cmp byte [r14], 9
jne 0x140149e8d
mov rdx, r13
mov rcx, rsi
call fcn.140140d10
mov rdx, r13
mov rcx, rsi
call fcn.14016df60
test eax, eax
jne 0x14014a0d4
mov eax, dword [r13 + 4]
mov ecx, ebx
mov rdi, qword [r13 + 0x28]
xorps xmm0, xmm0
shr eax, 3
xorps xmm1, xmm1
and eax, r12d
mov qword [rbp + 0x28], rbx
mov dword [rsp + 0x70], eax
mov rax, qword [r13 + 0x48]
mov qword [rbp], rax
movdqu xmmword [rbp + 8], xmm0
mov dword [rbp + 0xe8], ebx
movdqu xmmword [rbp + 0x18], xmm1
cmp qword [r13 + 0x50], rcx
jne 0x14014a07b
mov r10, qword [rsp + 0x60]
mov rax, rbx
mov qword [rsp + 0x78], rbx
nop dword [rax]
cmp ecx, dword [rdi]
jge 0x14014a110
imul r14, rax, 0x68
add r14, rdi
movzx eax, byte [r14 + 0x44]
mov r9, qword [r14 + 0x28]
and al, 0x18
mov r12, qword [r14 + 0x30]
mov qword [rbp - 0x78], r9
cmp al, 8
jne 0x140149f5b
mov edx, dword [r14 + 0x4c]
mov rcx, qword [r13 + 0x30]
call fcn.14010cf30
mov r10, qword [rsp + 0x60]
test eax, eax
je 0x140149f51
test dword [r10 + 0x60], 0x2000
jne 0x140149f51
and byte [r14 + 0x44], 0xd7
movzx r8d, byte [rdi + 0x44]
mov edx, dword [r14 + 0x4c]
and r8d, 0x40
mov rcx, qword [r13 + 0x30]
call fcn.14013dd00
mov ecx, dword [rbp + 0xe8]
mov r9, qword [rbp - 0x78]
test r12, r12
je 0x14014a055
mov rax, qword [r12 + 0x20]
movsx r8d, word [r9 + 0x36]
mov edx, dword [rax]
cmp r8d, edx
jne 0x14014a0b8
mov eax, dword [r12 + 4]
test al, 8
jne 0x14014a055
mov r8, qword [r12 + 0x48]
test r8, r8
je 0x140149fee
cmp qword [r13 + 0x48], rbx
jne 0x140149f9b
cmp dword [rdi], 1
jle 0x140149fd2
cmp qword [r12 + 0x60], rbx
jne 0x140149fd2
bt eax, 0x1b
jb 0x140149fd2
test dword [r13 + 4], 0x8000000
jne 0x140149fd2
test dword [r10 + 0x60], 0x40000
jne 0x140149fd2
lea rdx, [fcn.1401051c0]
mov rcx, rsi
call fcn.14013c420
mov qword [r12 + 0x48], rbx
jmp 0x140149fee
test ecx, ecx
jne 0x140149fee
test dword [r13 + 4], 0x40000
je 0x140149fee
cmp dword [rdi], 1
je 0x14014a055
test byte [rdi + 0xac], 0x22
jne 0x14014a055
mov r9d, dword [rsp + 0x70]
mov rdx, r13
mov r8d, dword [rbp + 0xe8]
mov rcx, rsi
call fcn.140145700
test eax, eax
je 0x14014a025
cmp dword [rsi + 0x30], ebx
jne 0x14014a0ce
mov dword [rbp + 0xe8], 0xffffffff
mov qword [rsp + 0x78], 0xffffffffffffffff
mov r10, qword [rsp + 0x60]
mov rdi, qword [r13 + 0x28]
cmp byte [r10 + 0x67], bl
jne 0x14014a0ce
mov r14, qword [rbp + 0xe0]
mov ecx, dword [rbp + 0xe8]
cmp byte [r14], 8
jbe 0x14014a05c
mov rax, qword [r13 + 0x48]
mov qword [rbp], rax
jmp 0x14014a05c
mov r14, qword [rbp + 0xe0]
mov rax, qword [rsp + 0x78]
inc ecx
inc rax
mov dword [rbp + 0xe8], ecx
mov qword [rsp + 0x78], rax
cmp qword [r13 + 0x50], rbx
je 0x140149ef0
mov r8, r14
mov rdx, r13
mov rcx, rsi
call fcn.1401425c0
mov r9d, eax
cmp qword [r13 + 0x58], rbx
jne 0x14014a09a
mov rcx, rsi
call fcn.1400e7e80
mov eax, r9d
mov rdi, qword [rsp + 0x188]
add rsp, 0x190
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbx
pop rbp
ret
mov r9, qword [r9]
mov rcx, rsi
mov dword [rsp + 0x20], edx
lea rdx, str.expected__d_columns_for__s_but_got__d
call fcn.1400bdaa0
mov r12d, 1
lea rdx, [0x1409b3370]
movsxd rcx, dword [rsi + 0x128]
test ecx, ecx
je 0x14014a105
mov r8, qword [rsi + 0x10]
mov rax, qword [r8]
cmp byte [rax + 0x67], 0
jne 0x14014a102
lea rdx, [rcx + rcx*2]
mov rcx, qword [r8 + 0x88]
lea rdx, [rcx + rdx*8]
mov ebx, dword [rdx + 8]
mov dword [rsi + 0x128], ebx
mov eax, r12d
jmp 0x14014a09d
mov rax, qword [r13 + 0x30]
mov r14, rdi
mov qword [rsp + 0x48], rdi
test rax, rax
je 0x14014a1fc
cmp byte [rax], 0x2c
mov qword [rsp + 0x48], rdi
jne 0x14014a1fc
test dword [r10 + 0x60], 0x8000
mov qword [rsp + 0x48], rdi
jne 0x14014a1fc
mov rax, qword [rsi]
lea r15, [fcn.140007590]
add rax, 0x67
mov qword [rsp + 0x48], rdi
mov qword [rbp + 0x38], rax
lea rdi, [0x1401463b0]
mov qword [rbp + 0x30], rsi
mov r12d, 1
nop
mov rax, qword [r13 + 0x28]
mov qword [rbp + 0x40], rbx
mov qword [rbp + 0x50], rbx
mov dword [rbp + 0x48], ebx
test rax, rax
je 0x14014a195
cmp dword [rax], ebx
jle 0x14014a195
test byte [rax + 0x44], 0x40
mov dword [rbp + 0x4c], 3
jne 0x14014a199
mov dword [rbp + 0x4c], r12d
mov rdx, qword [r13 + 0x30]
lea rcx, [rbp + 0x30]
call fcn.140146170
cmp dword [rbp + 0x40], ebx
je 0x14014a1ee
mov rdx, qword [r13 + 0x30]
lea rax, [rbp + 0x30]
mov qword [rbp - 0x10], rbx
mov qword [rbp - 0x30], rsi
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], rbx
mov qword [rbp - 8], rax
test rdx, rdx
je 0x14014a1d9
lea rcx, [rbp - 0x30]
call fcn.1400fd410
mov rdx, qword [rbp + 0x50]
test rdx, rdx
je 0x14014a1ee
mov rcx, qword [rbp + 0x30]
mov rcx, qword [rcx]
call fcn.1400b8fc0
cmp dword [rbp + 0x44], ebx
jne 0x14014a170
mov r15, qword [rsp + 0x68]
lea rcx, [0x1406308db]
mov edi, ebx
mov dword [rbp + 0xe8], ebx
cmp dword [r14], ebx
jle 0x14014a685
mov rax, rbx
mov qword [rbp - 0x78], rbx
nop dword [rax + rax]
imul rax, rax, 0x68
add r14, 8
add r14, rax
cmp qword [r14 + 0x50], rbx
jne 0x14014a253
mov r8, qword [r14 + 0x10]
test r8, r8
je 0x14014a253
mov rax, qword [r14 + 8]
mov r9, rcx
mov rcx, rsi
mov qword [rsp + 0x20], rax
mov edx, 0x14
call fcn.140116a80
mov r12, qword [r14 + 0x28]
test r12, r12
je 0x14014a65d
mov eax, dword [rsi + 0x124]
mov dword [rsi + 0x124], eax
mov rax, qword [rsp + 0x60]
test dword [rax + 0x60], 0x1000
jne 0x14014a2a4
test dword [r14 + 0x40], 0x100
je 0x14014a292
mov rax, qword [r14 + 0x60]
cmp byte [rax + 0x12], bl
je 0x14014a2a4
cmp dword [rax], 2
jge 0x14014a2a4
mov r8, qword [r13 + 0x30]
mov r9, r14
mov rdx, r12
mov rcx, rsi
call fcn.1401466a0
mov rax, qword [rsi + 0x160]
mov qword [rbp - 0x48], rax
mov rax, qword [r14 + 0x10]
mov qword [rsi + 0x160], rax
mov eax, dword [r14 + 0x40]
and eax, 0x100
mov dword [rsp + 0x44], eax
je 0x14014a2df
mov rax, qword [r14 + 0x60]
movzx ecx, byte [rax + 0x12]
test cl, cl
je 0x14014a349
cmp dword [rax], 2
jl 0x14014a2df
cmp cl, 2
jne 0x14014a349
mov rcx, qword [rsp + 0x48]
test byte [rcx + 0x44], 0x40
jne 0x14014a33f
mov rax, qword [rsi]
test dword [rax + 0x60], 0x2000000
jne 0x14014a33f
mov r8d, dword [rbp + 0xe8]
mov rdx, r14
mov r9d, dword [rcx]
inc r8d
call fcn.140149a60
test rax, rax
jne 0x14014a33f
cmp qword [rbp - 0x78], rbx
jne 0x14014a394
mov rcx, qword [rsp + 0x48]
cmp dword [rcx], 1
je 0x14014a3ce
test byte [rcx + 0xac], 2
jne 0x14014a3ce
test dword [r13 + 4], 0x10000000
je 0x14014a3ce
cmp dword [rsp + 0x44], ebx
je 0x14014a4a7
mov rdi, qword [r14 + 0x60]
mov r9d, dword [rdi + 4]
test r9d, r9d
jle 0x14014a4a7
mov r8d, dword [rdi + 8]
mov edx, 0xa
mov rcx, r15
call fcn.1400e7680
mov r9d, dword [rdi + 0xc]
mov r8d, dword [r14 + 0x44]
cmp r8d, r9d
je 0x14014a385
mov edx, 0x73
mov rcx, r15
call fcn.1400e7680
movzx eax, word [rdi + 0x10]
mov word [r12 + 2], ax
jmp 0x14014a63e
test dword [r13 + 4], 0x10000000
jne 0x14014a33f
test byte [r14 + 0x3c], 0x22
lea rax, [r14 + 0x3c]
jne 0x14014a33f
nop dword [rax]
test edi, edi
je 0x14014a3ce
sub rax, 0x68
dec edi
cmp qword [rax - 0x14], rbx
jne 0x14014a33f
test byte [rax], 0x22
je 0x14014a3b0
jmp 0x14014a33f
mov eax, dword [r15 + 0x90]
xor r9d, r9d
inc dword [rsi + 0x38]
mov rcx, r15
mov r8d, dword [rsi + 0x38]
mov dword [rsp + 0x44], eax
lea edi, [rax + 1]
mov dword [r14 + 0x34], r8d
lea edx, [r9 + 0xb]
mov dword [rsp + 0x20], edi
call fcn.1400e7530
mov eax, dword [r14 + 0x34]
lea r8, str.CO_ROUTINE___S
mov r9, r14
mov dword [rbp + 0x34], eax
mov edx, 1
mov dword [r14 + 0x30], edi
mov rcx, rsi
mov byte [rbp + 0x30], 0xd
mov qword [rbp + 0x38], rbx
mov qword [rbp + 0x48], rbx
mov dword [rbp + 0x40], ebx
call fcn.1400e7d20
lea r8, [rbp + 0x30]
mov rdx, r12
mov rcx, rsi
call fcn.140149d30
movzx eax, word [r12 + 2]
mov rcx, qword [r14 + 0x20]
mov word [rcx + 0x3a], ax
mov rcx, r15
mov eax, dword [rbp + 0x3c]
mov edx, dword [r14 + 0x34]
or dword [r14 + 0x40], 0x20
mov dword [r14 + 0x38], eax
call fcn.1400e80d0
mov rax, qword [r15]
mov edx, dword [r15 + 0x90]
cmp byte [rax + 0x67], bl
je 0x14014a484
lea rax, [0x1409b3370]
mov dword [rax + 8], edx
mov byte [rsi + 0x1f], bl
mov dword [rsi + 0x28], ebx
jmp 0x14014a63e
movsxd rax, dword [rsp + 0x44]
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8 + 8], edx
mov byte [rsi + 0x1f], bl
mov dword [rsi + 0x28], ebx
lea rax, [rax + rcx*8]
jmp 0x14014a63e
mov r9d, dword [rbp + 0xe8]
xor r8d, r8d
mov rcx, qword [rsp + 0x48]
mov rdx, r14
call fcn.140149a60
mov rdi, rax
test rax, rax
je 0x14014a508
mov r9d, dword [rax + 0x30]
test r9d, r9d
je 0x14014a4e0
mov r8d, dword [rax + 0x34]
mov edx, 0xa
mov rcx, r15
call fcn.1400e7680
mov r9d, dword [rdi + 0x44]
mov edx, 0x73
mov r8d, dword [r14 + 0x44]
mov rcx, r15
call fcn.1400e7680
mov rax, qword [rdi + 0x28]
movzx ecx, word [rax + 2]
mov word [r12 + 2], cx
jmp 0x14014a63e
inc dword [rsi + 0x38]
mov edx, 9
mov eax, dword [rsi + 0x38]
mov rcx, r15
mov dword [r14 + 0x34], eax
mov edi, ebx
call fcn.1400e75a0
or dword [r14 + 0x40], 0x10
mov dword [rsp + 0x44], eax
inc eax
test byte [r14 + 0x40], 8
mov dword [r14 + 0x30], eax
jne 0x14014a546
mov edx, 0xf
mov rcx, r15
call fcn.1400e75a0
mov edi, eax
mov ecx, dword [r14 + 0x44]
lea r8, str.MATERIALIZE___S
mov dword [rbp + 0x34], ecx
mov r9, r14
mov rcx, rsi
mov byte [rbp + 0x30], 0xc
mov edx, 1
mov qword [rbp + 0x38], rbx
mov qword [rbp + 0x48], rbx
mov dword [rbp + 0x40], ebx
call fcn.1400e7d20
lea r8, [rbp + 0x30]
mov rdx, r12
mov rcx, rsi
call fcn.140149d30
mov rcx, qword [r14 + 0x20]
movzx eax, word [r12 + 2]
mov word [rcx + 0x3a], ax
test edi, edi
je 0x14014a5c1
mov rax, qword [r15]
mov edx, dword [r15 + 0x90]
cmp byte [rax + 0x67], bl
je 0x14014a5ac
lea rax, [0x1409b3370]
jmp 0x14014a5be
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
movsxd rdi, dword [rsp + 0x44]
mov edx, 0x43
mov r8d, dword [r14 + 0x34]
mov rcx, r15
lea r9d, [rdi + 1]
call fcn.1400e7680
mov rax, qword [r15]
mov edx, dword [r15 + 0x90]
cmp byte [rax + 0x67], bl
je 0x14014a5f3
lea rax, [0x1409b3370]
jmp 0x14014a602
mov rax, qword [r15 + 0x88]
lea rcx, [rdi + rdi*2]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov byte [rsi + 0x1f], bl
mov dword [rsi + 0x28], ebx
mov eax, dword [r14 + 0x40]
and eax, 0x108
cmp eax, 0x100
jne 0x14014a63e
mov eax, dword [r14 + 0x30]
mov rcx, qword [r14 + 0x60]
mov dword [rcx + 4], eax
mov eax, dword [r14 + 0x34]
mov dword [rcx + 8], eax
mov eax, dword [r14 + 0x44]
mov dword [rcx + 0xc], eax
movzx eax, word [r12 + 2]
mov word [rcx + 0x10], ax
mov rax, qword [rsp + 0x60]
cmp byte [rax + 0x67], bl
jne 0x14014a0ce
mov rax, qword [rbp - 0x48]
mov edi, dword [rbp + 0xe8]
mov qword [rsi + 0x160], rax
mov rax, qword [rbp - 0x78]
lea rcx, [0x1406308db]
mov r14, qword [rsp + 0x48]
inc edi
inc rax
mov dword [rbp + 0xe8], edi
mov qword [rbp - 0x78], rax
cmp edi, dword [r14]
jl 0x14014a220
mov rax, qword [r13 + 0x30]
mov r14, qword [r13 + 0x20]
mov r12, qword [r13 + 0x38]
mov qword [rsp + 0x78], rax
mov rax, qword [r13 + 0x40]
mov qword [rbp - 0x78], rax
movzx eax, byte [r13 + 4]
and al, 1
mov qword [rbp - 0x38], r14
mov byte [rbp - 0x60], al
mov eax, dword [r13 + 4]
and al, 9
mov qword [rbp - 0x80], r12
cmp al, 1
jne 0x14014a6ff
mov rcx, qword [rbp]
mov r8d, 0xffffffff
mov rdx, r14
call fcn.14010c9a0
test eax, eax
jne 0x14014a6ff
cmp qword [r13 + 0x70], rbx
jne 0x14014a6ff
mov rcx, qword [rsp + 0x60]
xor r8d, r8d
and dword [r13 + 4], 0xfffffffe
mov rdx, r14
call fcn.140104140
or dword [r13 + 4], 8
mov r12, rax
mov qword [rbp - 0x80], rax
mov qword [r13 + 0x38], rax
mov byte [rbp - 0x60], 2
mov rdi, qword [rbp]
test rdi, rdi
je 0x14014a759
mov r9d, dword [r14]
xor r8d, r8d
mov rdx, rdi
mov rcx, rsi
call fcn.14013fed0
mov r8d, dword [rsi + 0x34]
mov dword [rbp + 0xc], r8d
mov dword [rsp + 0x30], 0xfffffff8
mov qword [rsp + 0x28], rax
lea ecx, [r8 + 1]
mov dword [rsp + 0x20], ebx
mov dword [rsi + 0x34], ecx
mov rcx, qword [rbp]
mov r9d, dword [r14]
mov edx, dword [rcx]
mov rcx, r15
inc edx
add r9d, edx
mov edx, 0x76
call fcn.1400e7980
mov dword [rbp + 0x18], eax
jmp 0x14014a760
mov dword [rbp + 0x18], 0xffffffff
mov rax, qword [rbp + 0xe0]
cmp byte [rax], 0xc
jne 0x14014a81d
mov r9d, dword [r14]
mov edx, 0x76
mov r8d, dword [rax + 4]
mov rcx, r15
call fcn.1400e7680
test dword [r13 + 4], 0x800
je 0x14014a81d
mov ecx, dword [r14]
mov r8, r14
lea eax, [rcx - 1]
movsxd r14, eax
test eax, eax
jle 0x14014a7fc
mov r12, qword [rsp + 0x60]
mov rdi, r14
shl rdi, 5
nop
test byte [rdi + r8 + 0x1c], 0x40
jne 0x14014a7f8
mov rdx, qword [rdi + r8 + 8]
test rdx, rdx
je 0x14014a7ce
mov rcx, r12
call fcn.140103880
mov r8, qword [rbp - 0x38]
mov rdx, qword [rdi + r8 + 0x10]
test rdx, rdx
je 0x14014a7e4
mov rcx, r12
call fcn.1400b8fc0
mov r8, qword [rbp - 0x38]
mov ecx, dword [r8]
dec r14
dec ecx
sub rdi, 0x20
mov dword [r8], ecx
test r14, r14
jg 0x14014a7b0
mov r12, qword [rbp - 0x80]
mov edx, ebx
test ecx, ecx
jle 0x14014a81d
lea rcx, [r8 + 8]
test byte [rcx + 0x14], 0x40
jne 0x14014a812
mov rax, qword [rcx]
mov byte [rax], 0x79
inc edx
add rcx, 0x20
cmp edx, dword [r8]
jl 0x14014a806
mov eax, dword [rsi + 0x44]
mov r14d, 0x4000
dec eax
mov dword [rsi + 0x44], eax
mov dword [rbp + 0x68], eax
test dword [r13 + 4], r14d
jne 0x14014a83e
mov ecx, 0x140
mov word [r13 + 2], cx
cmp qword [r13 + 0x60], rbx
je 0x14014a852
mov r8d, eax
mov rdx, r13
mov rcx, rsi
call fcn.140141980
cmp dword [r13 + 8], ebx
jne 0x14014a888
cmp dword [rbp + 0x18], ebx
jl 0x14014a888
mov rax, qword [r15]
cmp byte [rax + 0x67], bl
je 0x14014a86e
lea rax, [0x1409b3370]
jmp 0x14014a881
movsxd rax, dword [rbp + 0x18]
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rax, [rax + rcx*8]
mov byte [rax], 0x77
or byte [rbp + 0x24], 1
test byte [r13 + 4], 1
je 0x14014a8f9
mov eax, dword [rsi + 0x34]
xor r9d, r9d
mov dword [rbp - 0x5c], eax
xor r8d, r8d
inc eax
mov rcx, rsi
mov dword [rsi + 0x34], eax
mov rdx, qword [r13 + 0x20]
call fcn.14013fed0
mov r8d, dword [rbp - 0x5c]
xor r9d, r9d
mov dword [rsp + 0x30], 0xfffffff8
mov rcx, r15
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebx
lea edx, [r9 + 0x76]
call fcn.1400e7980
mov dword [rbp - 0x58], eax
movsxd rax, dword [r15 + 0x90]
test eax, eax
jle 0x14014a8f3
lea rcx, [rax + rax*2]
mov edx, 8
mov rax, qword [r15 + 0x88]
mov word [rax + rcx*8 - 0x16], dx
mov byte [rbp - 0x5f], 3
jmp 0x14014a8fc
mov byte [rbp - 0x5f], bl
cmp dword [rsp + 0x70], ebx
jne 0x14014abaa
test r12, r12
jne 0x14014abaa
movzx eax, byte [rbp - 0x60]
neg al
movzx eax, word [r13 + 4]
sbb di, di
and ax, r14w
mov r14, qword [r13 + 0x70]
and di, 0x100
or di, ax
test r14, r14
je 0x14014a93d
mov rdx, r13
mov rcx, rsi
call fcn.14016f7a0
movsx eax, word [r13 + 2]
mov rcx, rsi
mov r9, qword [rbp]
mov r8, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x48]
mov dword [rsp + 0x38], eax
mov rax, qword [r13 + 0x20]
mov word [rsp + 0x30], di
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rax
call fcn.14016a820
mov rdi, rax
test rax, rax
je 0x14014a0ce
movzx eax, word [rax + 0x48]
cmp ax, word [r13 + 2]
jge 0x14014a98b
mov word [r13 + 2], ax
cmp byte [rbp - 0x60], bl
je 0x14014a9a0
movzx ecx, byte [rdi + 0x43]
movzx eax, byte [rbp - 0x5f]
test cl, cl
cmovne eax, ecx
mov byte [rbp - 0x5f], al
mov rdx, qword [rbp]
test rdx, rdx
je 0x14014a9f6
movsx eax, byte [rdi + 0x41]
test al, al
jns 0x14014a9b9
mov r8d, ebx
mov dword [rbp + 8], ebx
jmp 0x14014a9bf
mov r8d, eax
mov dword [rbp + 8], eax
test byte [rdi + 0x44], 4
jne 0x14014a9ca
mov eax, dword [rdi + 0x30]
jmp 0x14014a9e8
movzx eax, byte [rdi + 0x40]
imul rcx, rax, 0x70
cmp qword [rcx + rdi + 0x328], rbx
je 0x14014a9e1
mov eax, dword [rdi + 0x30]
jmp 0x14014a9e8
mov eax, dword [rcx + rdi + 0x300]
mov dword [rbp + 0x20], eax
cmp r8d, dword [rdx]
cmove rdx, rbx
mov qword [rbp], rdx
mov eax, dword [rbp + 0x18]
test eax, eax
js 0x14014aa0c
test rdx, rdx
jne 0x14014aa0c
mov edx, eax
mov rcx, r15
call fcn.1400e89f0
mov rdx, r13
test r14, r14
je 0x14014ab5d
mov r12d, dword [rsi + 0x44]
mov r8, rdi
inc dword [rsi + 0x38]
mov ecx, dword [rsi + 0x38]
mov r9d, ecx
mov dword [rbp + 0xe8], ecx
mov rcx, rsi
lea eax, [r12 - 1]
sub r12d, 2
mov dword [rbp + 0xd0], eax
mov dword [rsp + 0x20], eax
lea r14d, [r12 - 1]
mov dword [rbp + 0xd8], r14d
mov dword [rsi + 0x44], r14d
call fcn.140173810
xor r8d, r8d
mov r9d, r14d
mov rcx, r15
lea edx, [r8 + 9]
call fcn.1400e7680
mov r9, qword [r15 + 0x18]
lea rdi, [r15 + 0x18]
mov ecx, dword [rbp + 0xd0]
not ecx
mov eax, dword [r9 + 0x48]
add eax, dword [r9 + 0x44]
jns 0x14014aa9c
mov r8d, ecx
mov rdx, r15
mov rcx, r9
call fcn.1400e8160
lea r14, [r15 + 0x90]
jmp 0x14014aab0
movsxd rdx, ecx
lea r14, [r15 + 0x90]
mov rcx, qword [r9 + 0x50]
mov eax, dword [r14]
mov dword [rcx + rdx*4], eax
mov eax, dword [rbp + 0xd8]
lea r9, [rbp]
mov dword [rsp + 0x38], eax
mov r8d, 0xffffffff
mov rax, qword [rbp + 0xe0]
mov rdx, r13
mov dword [rsp + 0x30], r12d
mov rcx, rsi
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x20], ebx
call fcn.14013f240
mov rcx, qword [rdi]
not r12d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14014ab07
mov r8d, r12d
mov rdx, r15
call fcn.1400e8160
jmp 0x14014ab15
mov rcx, qword [rcx + 0x50]
mov eax, dword [r14]
movsxd r9, r12d
mov dword [rcx + r9*4], eax
mov r8d, dword [rbp + 0xe8]
mov edx, 0x43
mov rcx, r15
call fcn.1400e7610
mov r9, qword [rdi]
mov ecx, dword [rbp + 0xd8]
not ecx
mov eax, dword [r9 + 0x48]
add eax, dword [r9 + 0x44]
jns 0x14014ab51
mov r8d, ecx
mov rdx, r15
mov rcx, r9
call fcn.1400e8160
jmp 0x14014c6f2
movsxd rdx, ecx
mov rcx, qword [r9 + 0x50]
jmp 0x14014c6ec
mov eax, dword [rdi + 0x34]
lea r9, [rbp]
mov dword [rsp + 0x38], eax
mov r8d, 0xffffffff
mov eax, dword [rdi + 0x30]
mov rcx, rsi
mov dword [rsp + 0x30], eax
mov rax, qword [rbp + 0xe0]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
call fcn.14013f240
mov rcx, rdi
call fcn.14016bb70
lea rdi, [r15 + 0x18]
lea r14, [r15 + 0x90]
jmp 0x14014c6f2
mov dword [rsp + 0x40], ebx
mov dword [rsp + 0x50], ebx
mov dword [rsp + 0x70], ebx
test r12, r12
je 0x14014acbf
mov rcx, qword [r13 + 0x20]
mov eax, dword [rcx]
test eax, eax
jle 0x14014abdd
add rcx, 0x22
nop dword [rax]
dec eax
mov word [rcx], bx
lea rcx, [rcx + 0x20]
test eax, eax
jg 0x14014abd0
mov eax, dword [r12]
lea r14, [r12 + 8]
test eax, eax
jle 0x14014abfd
lea rcx, [r14 + 0x1a]
nop
dec eax
mov word [rcx], bx
lea rcx, [rcx + 0x20]
test eax, eax
jg 0x14014abf0
cmp word [r13 + 2], 0x42
jle 0x14014ac0f
mov eax, 0x42
mov word [r13 + 2], ax
mov rdi, qword [rbp]
test rdi, rdi
je 0x14014acc4
mov eax, dword [r12]
cmp eax, dword [rdi]
jne 0x14014acc4
mov r8d, ebx
test eax, eax
jle 0x14014ac61
mov rdx, rbx
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rbp]
lea rdx, [rdx + 0x20]
inc r8d
movzx ecx, byte [rdx + rax - 8]
and cl, 1
mov byte [r12 + rdx - 8], cl
mov eax, dword [r12]
cmp r8d, eax
jl 0x14014ac40
mov rdi, qword [rbp]
test rdi, rdi
je 0x14014acc4
cmp eax, dword [rdi]
jne 0x14014acc4
mov r12d, ebx
test eax, eax
jle 0x14014acb5
add rdi, 8
nop dword [rax]
movzx eax, byte [rdi + 0x10]
cmp byte [r14 + 0x10], al
jne 0x14014acc4
mov r8, qword [rdi]
mov r9d, 0xffffffff
mov rdx, qword [r14]
xor ecx, ecx
call fcn.14010c6c0
test eax, eax
jne 0x14014acc4
mov rax, qword [rbp - 0x80]
inc r12d
add rdi, 0x20
add r14, 0x20
cmp r12d, dword [rax]
jl 0x14014ac80
mov dword [rsp + 0x70], 1
jmp 0x14014acc4
mov word [r13 + 2], bx
dec dword [rsi + 0x44]
mov r14, qword [rsp + 0x60]
mov eax, dword [rsi + 0x44]
mov dword [rsp + 0x58], eax
test r14, r14
je 0x14014ace7
mov edx, 0x38
mov rcx, r14
call fcn.1400b94e0
jmp 0x14014acf1
mov ecx, 0x38
call fcn.1400b8c60
mov r12, rax
test rax, rax
je 0x14014ada6
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r12], xmm0
movups xmmword [r12 + 0x10], xmm0
movups xmmword [r12 + 0x20], xmm0
mov qword [r12 + 0x30], rax
mov rcx, qword [rsi]
test rcx, rcx
je 0x14014ad2a
lea edx, [rax + 0x18]
call fcn.1400b94e0
jmp 0x14014ad34
mov ecx, 0x18
call fcn.1400b8c60
mov rcx, rax
test rax, rax
je 0x14014ad68
mov rax, qword [rsi + 0xb0]
mov qword [rcx], rax
lea rax, [0x140149b30]
mov qword [rsi + 0xb0], rcx
mov qword [rcx + 0x10], rax
mov qword [rcx + 8], r12
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x48], rcx
jmp 0x14014adab
mov rdx, qword [r12 + 0x18]
mov rdi, qword [rsi]
test rdx, rdx
je 0x14014ad7d
mov rcx, rdi
call fcn.1400b8fc0
mov rdx, qword [r12 + 0x28]
test rdx, rdx
je 0x14014ad8f
mov rcx, rdi
call fcn.1400b8fc0
mov rdx, r12
mov rcx, rdi
call fcn.1400b8fc0
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x48], rcx
jmp 0x14014adab
mov rcx, qword [rsp + 0x48]
cmp byte [r14 + 0x67], bl
jne 0x14014a0ce
mov eax, dword [r13 + 0x10]
xorps xmm0, xmm0
mov dword [r12 + 0x34], eax
xorps xmm1, xmm1
mov qword [rbp + 0x38], rcx
mov rcx, qword [rbp - 0x80]
mov qword [rbp + 0x30], rsi
mov qword [rbp + 0x40], r12
movdqu xmmword [rbp + 0x48], xmm0
movdqu xmmword [rbp + 0x58], xmm1
test rcx, rcx
je 0x14014ade7
mov eax, dword [rcx]
jmp 0x14014ade9
mov eax, ebx
mov word [r12 + 2], ax
mov rax, qword [rbp - 0x38]
mov qword [r12 + 0x10], rcx
test rax, rax
je 0x14014ae6f
lea rdi, [rax + 8]
mov r14d, ebx
cmp dword [rax], ebx
jle 0x14014ae6f
lea r13, [0x14010d810]
lea rsi, [0x1400fd9a0]
lea r15, [0x1400fd9b0]
nop dword [rax]
mov rdx, qword [rdi]
lea rcx, [rbp + 0x30]
mov qword [rbp - 0x28], r13
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x18], r15
mov dword [rbp - 0x10], ebx
mov qword [rbp - 8], rcx
mov qword [rbp - 0x30], rbx
test rdx, rdx
je 0x14014ae50
lea rcx, [rbp - 0x30]
call fcn.1400fd410
mov rax, qword [rbp - 0x38]
inc r14d
add rdi, 0x20
cmp r14d, dword [rax]
jl 0x14014ae20
mov rsi, qword [rbp + 0xd0]
mov r15, qword [rsp + 0x68]
mov r13, qword [rbp + 0xd8]
mov rax, qword [rbp]
mov qword [rbp + 0xe8], rax
test rax, rax
je 0x14014aef2
lea rdi, [rax + 8]
mov r14d, ebx
cmp dword [rax], ebx
jle 0x14014aef2
lea r13, [0x14010d810]
lea rsi, [0x1400fd9a0]
lea r15, [0x1400fd9b0]
nop
mov rdx, qword [rdi]
lea rcx, [rbp + 0x30]
mov qword [rbp - 0x28], r13
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x18], r15
mov dword [rbp - 0x10], ebx
mov qword [rbp - 8], rcx
mov qword [rbp - 0x30], rbx
test rdx, rdx
je 0x14014aed3
lea rcx, [rbp - 0x30]
call fcn.1400fd410
mov rax, qword [rbp + 0xe8]
inc r14d
add rdi, 0x20
cmp r14d, dword [rax]
jl 0x14014aea0
mov rsi, qword [rbp + 0xd0]
mov r15, qword [rsp + 0x68]
mov r13, qword [rbp + 0xd8]
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x14014af7f
cmp qword [rbp - 0x80], rbx
je 0x14014af43
mov rdx, qword [r13 + 0x40]
lea rax, [0x140149800]
mov qword [rbp - 0x10], rbx
xorps xmm0, xmm0
mov qword [rbp - 0x30], rsi
mov qword [rbp - 0x28], rax
mov qword [rbp - 8], r13
movdqu xmmword [rbp - 0x20], xmm0
test rdx, rdx
je 0x14014af3a
lea rcx, [rbp - 0x30]
call fcn.1400fd410
mov rcx, qword [rbp - 0x78]
mov rax, qword [r13 + 0x30]
mov qword [rsp + 0x78], rax
lea rax, [0x14010d810]
mov dword [rbp - 0x10], ebx
mov qword [rbp - 0x28], rax
mov rdx, rcx
lea rax, [0x1400fd9a0]
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x20], rax
lea rcx, [rbp - 0x30]
lea rax, [0x1400fd9b0]
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x30]
mov qword [rbp - 8], rax
call fcn.1400fd410
mov eax, dword [r12 + 0x20]
mov dword [r12 + 0x24], eax
cmp qword [r13 + 0x38], rbx
jne 0x14014b04c
cmp qword [r13 + 0x40], rbx
jne 0x14014b04c
cmp dword [r12 + 0x30], 1
jne 0x14014b04c
mov rax, qword [r12 + 0x28]
mov rcx, qword [rax]
mov r11, qword [rcx + 0x20]
test r11, r11
je 0x14014b04c
cmp dword [r11], 1
jne 0x14014b04c
test dword [rcx + 4], 0x1000000
jne 0x14014b04c
mov r14, qword [rsp + 0x60]
test dword [r14 + 0x60], 0x10000
jne 0x14014b04c
mov rdi, qword [rcx + 8]
lea rdx, [0x14063c9ec]
mov rcx, rdi
call fcn.1400bdd40
test eax, eax
jne 0x14014b012
mov rcx, qword [r11 + 8]
call fcn.1401059e0
neg eax
mov byte [rbp + 0xd0], 1
sbb dil, dil
and dil, 2
jmp 0x14014b02f
lea rdx, [0x14063c9f0]
mov rcx, rdi
call fcn.1400bdd40
test eax, eax
jne 0x14014b04c
mov dil, 1
mov byte [rbp + 0xd0], 2
xor r8d, r8d
mov rdx, r11
mov rcx, r14
call fcn.140104140
mov qword [rbp + 0x70], rax
test rax, rax
je 0x14014b052
mov byte [rax + 0x18], dil
jmp 0x14014b052
mov byte [rbp + 0xd0], bl
lea rdx, [rbp + 0x30]
mov rcx, r12
call fcn.140148c60
mov r14, qword [rsp + 0x60]
cmp byte [r14 + 0x67], bl
jne 0x14014b302
mov rdi, qword [rbp - 0x80]
test rdi, rdi
je 0x14014c14d
cmp dword [r12 + 0x30], 1
mov qword [rbp - 0x40], rbx
mov word [rbp + 0xd0], bx
jne 0x14014b16d
mov rax, qword [r12 + 0x28]
cmp dword [rax + 0x10], ebx
jl 0x14014b16d
mov rax, qword [rax]
test rax, rax
je 0x14014b16d
test dword [rax + 4], 0x1000
jne 0x14014b16d
mov rcx, qword [rax + 0x20]
test rcx, rcx
je 0x14014b16d
mov rdx, qword [rcx + 8]
test rdx, rdx
je 0x14014b0e1
xor r9d, r9d
xor r8d, r8d
mov rcx, r14
call fcn.140103be0
mov rdi, rax
jmp 0x14014b0e4
mov rdi, rbx
mov rdx, qword [rbp - 0x80]
xor r8d, r8d
mov rcx, r14
call fcn.140104140
mov qword [rbp - 0x40], rax
mov rdx, rax
test rax, rax
jne 0x14014b113
mov rcx, qword [rsi]
mov rdx, rdi
call fcn.140104a80
mov rdx, rax
mov qword [rbp - 0x40], rax
jmp 0x14014b155
movsxd rax, dword [rax]
lea ecx, [rax + 1]
cmp dword [rdx + 4], ecx
jge 0x14014b132
mov rcx, qword [rsi]
mov r8, rdi
call fcn.140104b60
mov rdx, rax
mov qword [rbp - 0x40], rax
jmp 0x14014b155
movups xmm0, xmmword [0x140632b78]
shl rax, 5
movups xmm1, xmmword [0x140632b88]
mov dword [rdx], ecx
movups xmmword [rax + rdx + 8], xmm0
movups xmmword [rax + rdx + 0x18], xmm1
mov qword [rax + rdx + 8], rdi
mov rdi, qword [rbp - 0x80]
mov rax, rdx
neg rax
sbb ax, ax
and ax, 0x500
mov word [rbp + 0xd0], ax
mov eax, dword [rsi + 0x34]
xor r8d, r8d
mov dword [r12 + 4], eax
mov rdx, rdi
inc dword [rsi + 0x34]
mov rcx, rsi
mov r9d, dword [r12 + 0x20]
call fcn.14013fed0
movzx r9d, word [r12 + 2]
mov edx, 0x77
mov r8d, dword [r12 + 4]
mov rcx, r15
mov dword [rsp + 0x30], 0xfffffff8
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebx
mov qword [rbp - 0x48], rax
call fcn.1400e7980
mov ecx, dword [rsi + 0x44]
xor r8d, r8d
mov dword [rbp - 0x4c], eax
mov eax, dword [rsi + 0x38]
inc eax
mov dword [rsp + 0x20], ebx
dec ecx
mov dword [rbp - 0x68], eax
mov dword [rbp - 0x6c], ecx
lea edx, [rax + 1]
lea eax, [rcx - 1]
mov dword [rbp + 0xe8], edx
lea r14d, [rdx + 2]
mov dword [rsi + 0x44], eax
mov dword [rsi + 0x38], r14d
mov r9d, edx
mov ecx, dword [rdi]
lea edx, [r8 + 0x47]
add ecx, r14d
mov dword [rbp - 0x50], eax
mov dword [rsi + 0x38], ecx
mov dword [rsp + 0x54], r14d
lea eax, [rcx + 1]
add ecx, dword [rdi]
mov dword [rsi + 0x38], ecx
mov rcx, r15
mov dword [rbp - 0x70], eax
call fcn.1400e7530
mov edx, dword [rdi]
lea r8d, [r14 + 1]
dec edx
lea r14, [r15 + 0x90]
movsxd rcx, dword [r14]
add edx, r8d
cmp dword [r15 + 0x94], ecx
jg 0x14014b249
mov r9d, r8d
mov dword [rsp + 0x20], edx
xor r8d, r8d
mov rcx, r15
lea edx, [r8 + 0x4b]
call fcn.1400e74d0
jmp 0x14014b270
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rbx
mov r9d, dword [rbp - 0x50]
mov edx, 0xa
mov r8d, dword [rsp + 0x54]
mov rcx, r15
call fcn.1400e7680
mov eax, dword [rsp + 0x70]
mov edx, pe_nt_image_headers64
mov r8, qword [rsp + 0x78]
neg eax
mov dword [rsp + 0x38], ebx
mov eax, 0x40
sbb cx, cx
mov r9, rdi
and cx, 0x200
cmp byte [rbp - 0x60], 2
cmove ax, dx
mov rdx, qword [rsp + 0x48]
or cx, ax
mov rax, qword [rbp - 0x40]
or cx, word [rbp + 0xd0]
mov word [rsp + 0x30], cx
mov rcx, rsi
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rax
call fcn.14016a820
mov qword [rsp + 0x78], rax
mov rcx, rax
test rax, rax
jne 0x14014b325
mov rax, qword [rbp - 0x40]
mov r14, qword [rsp + 0x60]
test rax, rax
je 0x14014b302
mov rdx, rax
mov rcx, r14
call fcn.140105090
mov r12d, 1
mov rax, qword [rbp + 0x70]
test rax, rax
je 0x14014a0d4
mov rdx, rax
mov rcx, r14
call fcn.140105090
jmp 0x14014a0d4
cmp qword [rsi + 0x60], rbx
je 0x14014b378
movsxd rax, dword [r12 + 0x24]
mov dword [r12 + 0x20], eax
cmp word [r12 + 2], bx
jbe 0x14014b367
test eax, eax
jne 0x14014b350
mov rax, qword [r13 + 0x38]
movzx ecx, word [rax]
mov word [r12 + 2], cx
jmp 0x14014b367
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x18]
movzx edx, word [rax + rcx*8 - 2]
inc dx
mov word [r12 + 2], dx
lea rdx, [rbp + 0x30]
mov rcx, r12
call fcn.140148c60
mov rcx, qword [rsp + 0x78]
mov eax, dword [rsi + 0x38]
inc eax
mov dword [r12 + 0xc], eax
mov eax, dword [r12 + 0x30]
add eax, dword [r12 + 0x20]
add dword [rsi + 0x38], eax
movsx edx, byte [rcx + 0x41]
movzx eax, byte [rcx + 0x43]
test dl, dl
mov ecx, ebx
mov dword [rbp - 0x64], eax
cmovns ecx, edx
cmp ecx, dword [rdi]
jne 0x14014b3ae
mov dword [rsp + 0x48], ebx
jmp 0x14014b74d
cmp byte [rbp - 0x60], bl
je 0x14014b3c1
test byte [r13 + 4], 1
lea r9, str.DISTINCT
je 0x14014b3c8
lea r9, str.GROUP_BY
lea r8, str.USE_TEMP_B_TREE_FOR__s
xor edx, edx
mov rcx, rsi
call fcn.1400e7d20
mov edx, dword [rdi]
mov edi, edx
mov eax, dword [r12 + 0x20]
mov dword [rsp + 0x48], 1
mov dword [rsp + 0x44], edx
test eax, eax
jle 0x14014b420
mov r8, qword [r12 + 0x18]
mov r9d, eax
add r8, 0x16
nop
movsx ecx, word [r8]
lea eax, [rdi + 1]
cmp ecx, edx
lea r8, [r8 + 0x18]
cmovl eax, edi
mov edi, eax
lea eax, [rdx + 1]
cmovl eax, edx
mov edx, eax
sub r9, 1
jne 0x14014b400
cmp edi, 1
jne 0x14014b456
movzx eax, byte [rsi + 0x1f]
lea rcx, [rsi + 0x1f]
mov qword [rsp + 0x68], rcx
test al, al
jne 0x14014b442
inc dword [rsi + 0x38]
mov eax, dword [rsi + 0x38]
mov dword [rsp + 0x40], eax
jmp 0x14014b489
dec al
movzx eax, al
mov byte [rcx], al
mov eax, dword [rsi + rax*4 + 0xd0]
mov dword [rsp + 0x40], eax
jmp 0x14014b489
mov edx, dword [rsi + 0x28]
mov ecx, dword [rsi + 0x2c]
mov dword [rsp + 0x40], ecx
cmp edi, edx
jg 0x14014b471
lea eax, [rcx + rdi]
sub edx, edi
mov dword [rsi + 0x2c], eax
mov dword [rsi + 0x28], edx
jmp 0x14014b480
mov eax, dword [rsi + 0x38]
lea ecx, [rax + 1]
add eax, edi
mov dword [rsi + 0x38], eax
mov dword [rsp + 0x40], ecx
lea rax, [rsi + 0x1f]
mov qword [rsp + 0x68], rax
mov r8d, dword [rsp + 0x40]
xor r9d, r9d
mov rdx, qword [rbp - 0x80]
mov rcx, rsi
mov byte [rsp + 0x20], bl
call fcn.14010b7b0
mov r8d, ebx
mov byte [r12], 1
mov dword [rsp + 0x50], ebx
cmp dword [r12 + 0x20], ebx
jle 0x14014b533
mov r14d, dword [rsp + 0x44]
mov rcx, rbx
mov qword [rsp + 0x68], rbx
mov ebx, dword [rsp + 0x40]
nop word [rax + rax]
mov rdx, qword [r12 + 0x18]
movsx eax, word [rdx + rcx + 0x16]
cmp eax, r14d
jl 0x14014b4fd
mov rdx, qword [rdx + rcx + 8]
lea r8d, [rbx + r14]
mov rcx, rsi
call fcn.14010b600
mov rcx, qword [rsp + 0x68]
inc r14d
mov r8d, dword [rsp + 0x50]
inc r8d
lea rax, [rsi + 0x1f]
add rcx, 0x18
mov dword [rsp + 0x50], r8d
mov qword [rsp + 0x68], rcx
cmp r8d, dword [r12 + 0x20]
jl 0x14014b4d0
mov r13, qword [rbp + 0xd8]
lea r14, [r15 + 0x90]
mov rcx, rax
mov qword [rsp + 0x68], rax
xor ebx, ebx
jmp 0x14014b537
lea rcx, [rsi + 0x1f]
mov byte [r12], 0
movzx eax, byte [rcx]
test al, al
jne 0x14014b54c
inc dword [rsi + 0x38]
mov r8d, dword [rsi + 0x38]
jmp 0x14014b55b
dec al
movzx eax, al
mov byte [rcx], al
mov r8d, dword [rsi + rax*4 + 0xd0]
movsxd rcx, dword [r14]
mov dword [rsp + 0x50], r8d
cmp dword [r15 + 0x94], ecx
jg 0x14014b58d
mov dword [rsp + 0x20], r8d
mov r9d, edi
mov r8d, dword [rsp + 0x40]
mov edx, 0x61
mov rcx, r15
call fcn.1400e74d0
mov r8d, dword [rsp + 0x50]
jmp 0x14014b5bb
mov edx, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x61
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [r14]
mov edx, dword [r12 + 4]
cmp dword [r15 + 0x94], ecx
jg 0x14014b5ea
mov r9d, r8d
mov dword [rsp + 0x20], ebx
mov r8d, edx
mov rcx, r15
mov edx, 0x8b
call fcn.1400e74d0
mov r8d, dword [rsp + 0x50]
jmp 0x14014b614
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x8b
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov rcx, qword [rsp + 0x68]
test r8d, r8d
je 0x14014b62f
movzx eax, byte [rcx]
cmp al, 8
jae 0x14014b62f
mov dword [rsi + rax*4 + 0xd0], r8d
inc byte [rcx]
cmp edi, 1
jne 0x14014b64e
mov edx, dword [rsp + 0x40]
test edx, edx
je 0x14014b65d
movzx eax, byte [rcx]
cmp al, 8
jae 0x14014b65d
mov dword [rsi + rax*4 + 0xd0], edx
inc byte [rcx]
jmp 0x14014b65d
cmp edi, dword [rsi + 0x28]
jle 0x14014b65d
mov eax, dword [rsp + 0x40]
mov dword [rsi + 0x2c], eax
mov dword [rsi + 0x28], edi
mov rcx, qword [rsp + 0x78]
call fcn.14016bb70
mov edx, dword [rsi + 0x34]
mov rcx, qword [rsp + 0x68]
mov dword [r12 + 8], edx
inc dword [rsi + 0x34]
mov dword [rsp + 0x40], edx
movzx eax, byte [rcx]
test al, al
jne 0x14014b68b
inc dword [rsi + 0x38]
mov r8d, dword [rsi + 0x38]
jmp 0x14014b69a
dec al
movzx eax, al
mov byte [rcx], al
mov r8d, dword [rsi + rax*4 + 0xd0]
movsxd rcx, dword [r14]
mov dword [rsp + 0x50], r8d
cmp dword [r15 + 0x94], ecx
jg 0x14014b6c4
mov r9d, r8d
mov dword [rsp + 0x20], edi
mov r8d, edx
mov rcx, r15
mov edx, 0x79
call fcn.1400e74d0
jmp 0x14014b6ee
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x79
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [r14]
mov edx, dword [r12 + 4]
cmp dword [r15 + 0x94], ecx
jg 0x14014b71a
mov r9d, dword [rsp + 0x58]
mov r8d, edx
mov edx, 0x22
mov dword [rsp + 0x20], ebx
mov rcx, r15
call fcn.1400e74d0
jmp 0x14014b747
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x58]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0x22
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov byte [r12 + 1], 1
cmp qword [rsi + 0x60], 0
je 0x14014b7bc
cmp dword [r12 + 0x30], 0
lea rax, [0x140148db0]
xorps xmm0, xmm0
mov qword [rbp - 0x28], rax
xorps xmm1, xmm1
mov qword [rbp - 0x30], rbx
movdqu xmmword [rbp - 0x20], xmm0
mov ecx, ebx
mov dword [rsp + 0x44], ebx
movdqu xmmword [rbp - 0x10], xmm1
jle 0x14014b7bc
mov rdi, rbx
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [r12 + 0x28]
mov rdx, qword [rdi + rax]
test rdx, rdx
je 0x14014b7ab
lea rcx, [rbp - 0x30]
call fcn.1400fd410
mov ecx, dword [rsp + 0x44]
inc ecx
add rdi, 0x18
mov dword [rsp + 0x44], ecx
cmp ecx, dword [r12 + 0x30]
jl 0x14014b790
cmp dword [rsp + 0x70], 0
mov r9d, dword [rsp + 0x48]
je 0x14014b820
mov rax, qword [rsp + 0x60]
test byte [rax + 0x60], 4
jne 0x14014b820
test r9d, r9d
jne 0x14014b7e3
mov rax, qword [rsp + 0x78]
test byte [rax + 0x44], 8
je 0x14014b820
mov qword [rbp], rbx
mov rcx, qword [r15]
cmp byte [rcx + 0x67], 0
jne 0x14014b820
movsxd rax, dword [rbp + 0x18]
lea rdx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
mov r8, qword [rax + rdx*8 + 0x10]
lea rdi, [rax + rdx*8]
movsx edx, byte [rax + rdx*8 + 1]
call fcn.1400e8830
mov r9d, dword [rsp + 0x48]
mov word [rdi], 0xb8
mov qword [rdi + 0x10], rbx
movsxd rcx, dword [r14]
mov dword [rsp + 0x44], ecx
test r9d, r9d
je 0x14014b85c
mov edx, dword [r12 + 4]
cmp dword [r15 + 0x94], ecx
jg 0x14014b8b6
mov eax, dword [rsp + 0x40]
mov r8d, edx
mov r9d, dword [rsp + 0x50]
mov edx, 0x85
mov rcx, r15
mov dword [rsp + 0x20], eax
call fcn.1400e74d0
mov r9d, dword [rsp + 0x48]
mov edx, dword [rsp + 0x40]
mov rax, qword [rbp - 0x80]
mov edi, ebx
cmp dword [rax], 0
jle 0x14014b94d
lea r13, [rax + 8]
nop dword [rax]
nop word [rax + rax]
mov r8d, dword [rbp - 0x70]
add r8d, edi
test r9d, r9d
je 0x14014b91a
movsxd rcx, dword [r14]
cmp dword [r15 + 0x94], ecx
jg 0x14014b8ee
mov dword [rsp + 0x20], r8d
mov r9d, edi
mov r8d, edx
mov rcx, r15
mov edx, 0x5e
call fcn.1400e74d0
jmp 0x14014b92b
mov r8d, dword [rsp + 0x50]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x40]
mov dword [rax + rcx*8 + 0xc], edx
mov dword [rax + rcx*8], 0x85
mov dword [rax + rcx*8 + 8], r8d
mov qword [rax + rcx*8 + 0x10], rbx
jmp 0x14014b860
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x5e
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], rbx
jmp 0x14014b934
mov byte [r12], 1
mov rcx, rsi
mov rdx, qword [r13]
call fcn.14010b600
mov r9d, dword [rsp + 0x48]
mov edx, dword [rsp + 0x40]
mov rax, qword [rbp - 0x80]
inc edi
add r13, 0x20
cmp edi, dword [rax]
jl 0x14014b880
mov r13, qword [rbp + 0xd8]
mov r10, qword [rbp - 0x48]
test r10, r10
je 0x14014b959
inc dword [r10]
movsxd rdx, dword [r14]
mov r8d, dword [rax]
cmp dword [r15 + 0x94], edx
jg 0x14014b98e
mov r9d, dword [rbp - 0x70]
mov edx, 0x5a
mov dword [rsp + 0x20], r8d
mov rcx, r15
mov r8d, dword [rsp + 0x54]
inc r8d
call fcn.1400e74d0
mov r10, qword [rbp - 0x48]
mov edx, eax
jmp 0x14014b9c6
mov r9d, dword [rsp + 0x54]
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
inc r9d
mov dword [r14], eax
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8 + 4], r9d
mov r9d, dword [rbp - 0x70]
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8], 0x5a
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], rbx
mov rax, qword [r15]
cmp byte [rax + 0x67], 0
je 0x14014b9f2
cmp qword [rax + 0x2e8], 0
jne 0x14014ba34
test r10, r10
je 0x14014ba34
add dword [r10], 0xffffffff
jne 0x14014ba34
mov rcx, qword [r10 + 0x10]
mov rdx, r10
call fcn.1400b90a0
jmp 0x14014ba34
test edx, edx
jns 0x14014b9fb
mov edx, dword [r14]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x14014ba27
mov r9d, 0xfffffff8
mov r8, r10
mov rcx, r15
call fcn.1400e8a80
jmp 0x14014ba34
test r10, r10
je 0x14014ba34
mov qword [rdx + 0x10], r10
mov byte [rdx + 1], 0xf8
movsxd rdi, dword [r14]
lea edx, [rdi + 1]
cmp dword [r15 + 0x94], edi
jg 0x14014ba5b
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, edx
mov rcx, r15
lea edx, [r9 + 0xe]
call fcn.1400e74d0
jmp 0x14014ba81
mov rax, qword [r15 + 0x88]
lea rcx, [rdi + rdi*2]
mov dword [r14], edx
mov dword [rax + rcx*8], 0xe
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rbx
mov r10, qword [rsi + 0x10]
mov rax, qword [rbp - 0x80]
mov r8d, dword [rbp - 0x70]
movsxd rcx, dword [r10 + 0x90]
mov edx, dword [rax]
cmp dword [r10 + 0x94], ecx
jg 0x14014baba
mov r9d, dword [rsp + 0x54]
mov rcx, r10
mov dword [rsp + 0x20], edx
inc r9d
mov edx, 0x4f
call fcn.1400e74d0
jmp 0x14014baf1
lea eax, [rcx + 1]
mov dword [r10 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r10 + 0x88]
mov dword [rax + rcx*8 + 4], r8d
mov r8d, dword [rsp + 0x54]
inc r8d
mov dword [rax + rcx*8], 0x4f
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [r14]
mov r8d, dword [rbp + 0xe8]
cmp dword [r15 + 0x94], ecx
jg 0x14014bb25
mov r9d, dword [rbp - 0x6c]
inc r8d
mov edx, 0xa
mov dword [rsp + 0x20], ebx
mov rcx, r15
call fcn.1400e74d0
mov r8d, dword [rbp + 0xe8]
jmp 0x14014bb55
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
lea edx, [r8 + 1]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rbp - 0x6c]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [r14]
cmp dword [r15 + 0x94], ecx
jg 0x14014bb79
mov r9d, dword [rsp + 0x58]
mov edx, 0x3b
mov rcx, r15
mov dword [rsp + 0x20], ebx
call fcn.1400e74d0
jmp 0x14014bba7
mov edx, dword [rsp + 0x58]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x3b
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [r14]
cmp dword [r15 + 0x94], ecx
jg 0x14014bbcf
mov r9d, dword [rbp - 0x50]
mov edx, 0xa
mov r8d, dword [rsp + 0x54]
mov rcx, r15
mov dword [rsp + 0x20], ebx
call fcn.1400e74d0
jmp 0x14014bbff
mov edx, dword [rsp + 0x54]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rbp - 0x50]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov rax, qword [r15]
mov edx, dword [r14]
cmp byte [rax + 0x67], 0
je 0x14014bc14
lea rax, [0x1409b3370]
jmp 0x14014bc23
mov rax, qword [r15 + 0x88]
lea rcx, [rdi + rdi*2]
lea rax, [rax + rcx*8]
mov edi, dword [rbp - 0x68]
mov r8, r12
mov r9d, dword [rbp - 0x64]
mov rcx, rsi
mov dword [rax + 8], edx
mov edx, edi
call fcn.1401491a0
movsxd rcx, dword [r14]
cmp dword [r15 + 0x94], ecx
jg 0x14014bc60
mov edx, 0x47
mov dword [rsp + 0x20], ebx
mov r9d, edi
mov rcx, r15
lea r8d, [rdx - 0x46]
call fcn.1400e74d0
jmp 0x14014bc8d
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
cmp dword [rsp + 0x48], 0
je 0x14014bcf1
movsxd rcx, dword [r14]
mov edx, dword [r12 + 4]
cmp dword [r15 + 0x94], ecx
jg 0x14014bcc0
mov r9d, dword [rsp + 0x44]
mov r8d, edx
mov edx, 0x25
mov dword [rsp + 0x20], ebx
mov rcx, r15
call fcn.1400e74d0
jmp 0x14014bd2f
mov r8d, dword [rsp + 0x44]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x25
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
jmp 0x14014bd2f
mov rcx, qword [rsp + 0x78]
call fcn.14016bb70
mov rcx, qword [r15]
cmp byte [rcx + 0x67], 0
jne 0x14014bd2f
movsxd rax, dword [rbp - 0x4c]
lea rdx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
mov r8, qword [rax + rdx*8 + 0x10]
lea rdi, [rax + rdx*8]
movsx edx, byte [rax + rdx*8 + 1]
call fcn.1400e8830
mov word [rdi], 0xb8
mov qword [rdi + 0x10], rbx
mov rax, qword [rbp - 0x40]
test rax, rax
je 0x14014bd45
mov rcx, qword [rsp + 0x60]
mov rdx, rax
call fcn.140105090
mov edi, dword [rbp + 0xe8]
movsxd rcx, dword [r14]
inc edi
cmp dword [r15 + 0x94], ecx
jg 0x14014bd73
mov r9d, dword [rbp - 0x6c]
mov r8d, edi
mov edx, 0xa
mov dword [rsp + 0x20], ebx
mov rcx, r15
call fcn.1400e74d0
jmp 0x14014bd9f
mov edx, dword [rbp - 0x6c]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [r14]
cmp dword [r15 + 0x94], ecx
jg 0x14014bdc5
mov r9d, dword [rsp + 0x58]
xor r8d, r8d
mov rcx, r15
mov dword [rsp + 0x20], ebx
lea edx, [r8 + 9]
call fcn.1400e74d0
jmp 0x14014bdef
mov edx, dword [rsp + 0x58]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [r14]
mov dword [rbp - 0x4c], ecx
cmp dword [r15 + 0x94], ecx
jg 0x14014be1c
mov r9d, dword [rbp + 0xe8]
mov edx, 0x47
mov rcx, r15
mov dword [rsp + 0x20], ebx
lea r8d, [rdx - 0x46]
call fcn.1400e74d0
jmp 0x14014be4f
mov edx, dword [rbp + 0xe8]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [r14]
cmp dword [r15 + 0x94], ecx
jg 0x14014be73
xor r9d, r9d
mov dword [rsp + 0x20], ebx
mov r8d, edi
mov rcx, r15
lea edx, [r9 + 0x43]
call fcn.1400e74d0
jmp 0x14014be9d
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], edi
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rbx
mov rcx, qword [r15 + 0x18]
lea rdi, [r15 + 0x18]
mov edx, dword [rbp - 0x6c]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14014bebf
mov r8d, edx
mov rdx, r15
call fcn.1400e8160
jmp 0x14014becd
mov rcx, qword [rcx + 0x50]
mov eax, dword [r14]
movsxd r8, edx
mov dword [rcx + r8*4], eax
movsxd rax, dword [r14]
lea ecx, [rax + 1]
lea r8d, [rax + 2]
mov dword [rbp + 0xd8], ecx
cmp dword [r15 + 0x94], eax
jg 0x14014bf00
mov r9d, r8d
mov dword [rsp + 0x20], ebx
mov r8d, dword [rbp - 0x68]
mov edx, 0x3b
mov rcx, r15
call fcn.1400e74d0
jmp 0x14014bf2a
mov edx, dword [rbp - 0x68]
mov dword [r14], ecx
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x3b
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [r14]
cmp dword [r15 + 0x94], ecx
jg 0x14014bf55
mov r8d, dword [rbp + 0xe8]
xor r9d, r9d
inc r8d
mov dword [rsp + 0x20], ebx
mov rcx, r15
lea edx, [r9 + 0x43]
call fcn.1400e74d0
jmp 0x14014bf87
mov edx, dword [rbp + 0xe8]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
inc edx
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rbx
mov rdx, r12
mov rcx, rsi
call fcn.140149080
mov r8d, dword [rbp + 0xd8]
mov r9d, 0x10
mov rdx, qword [rbp - 0x78]
mov rcx, rsi
call fcn.14010c020
mov eax, dword [rbp - 0x4c]
lea r9, [rbp]
mov dword [rsp + 0x38], eax
mov r8d, 0xffffffff
mov eax, dword [rbp + 0xd8]
mov rdx, r13
mov dword [rsp + 0x30], eax
mov rcx, rsi
mov rax, qword [rbp + 0xe0]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
call fcn.14013f240
movsxd rcx, dword [r14]
cmp dword [r15 + 0x94], ecx
jg 0x14014c011
mov r8d, dword [rbp + 0xe8]
xor r9d, r9d
inc r8d
mov dword [rsp + 0x20], ebx
mov rcx, r15
lea edx, [r9 + 0x43]
call fcn.1400e74d0
jmp 0x14014c043
mov edx, dword [rbp + 0xe8]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
inc edx
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rbx
mov rcx, qword [rdi]
mov edx, dword [rbp - 0x50]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14014c060
mov r8d, edx
mov rdx, r15
call fcn.1400e8160
jmp 0x14014c06e
mov rcx, qword [rcx + 0x50]
mov eax, dword [r14]
movsxd r8, edx
mov dword [rcx + r8*4], eax
mov rdx, r12
mov rcx, rsi
call fcn.140148ea0
movsxd rcx, dword [r14]
cmp dword [r15 + 0x94], ecx
jg 0x14014c09e
mov r9d, dword [rbp - 0x68]
xor r8d, r8d
mov rcx, r15
mov dword [rsp + 0x20], ebx
lea edx, [r8 + 0x47]
call fcn.1400e74d0
jmp 0x14014c0c7
mov edx, dword [rbp - 0x68]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [r14]
cmp dword [r15 + 0x94], ecx
jg 0x14014c0ed
mov r8d, dword [rsp + 0x54]
xor r9d, r9d
mov rcx, r15
mov dword [rsp + 0x20], ebx
lea edx, [r9 + 0x43]
call fcn.1400e74d0
jmp 0x14014c11b
mov edx, dword [rsp + 0x54]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rbx
cmp word [rbp + 0xd0], 0
je 0x14014c143
mov ecx, dword [rbp - 0x64]
test ecx, ecx
je 0x14014c143
mov rax, qword [r12 + 0x28]
mov edx, ecx
mov rcx, rsi
mov r9d, dword [rax + 0x14]
mov r8d, dword [rax + 0x10]
call fcn.14013f170
mov r12d, dword [rsp + 0x58]
jmp 0x14014c6bf
cmp qword [r13 + 0x30], rbx
jne 0x14014c4af
mov rdx, qword [r13 + 0x20]
cmp dword [rdx], 1
jne 0x14014c4af
mov r14, qword [r13 + 0x28]
cmp dword [r14], 1
jne 0x14014c4af
cmp qword [r14 + 0x30], rbx
jne 0x14014c4af
cmp dword [r12 + 0x30], 1
jne 0x14014c4af
cmp qword [r13 + 0x40], rbx
jne 0x14014c4af
mov r14, qword [r14 + 0x28]
mov qword [rsp + 0x68], r14
cmp byte [r14 + 0x3f], bl
jne 0x14014c4af
mov rdx, qword [rdx + 8]
cmp byte [rdx], 0xa8
jne 0x14014c4af
cmp qword [rdx + 0x38], r12
jne 0x14014c4af
mov rax, qword [r12 + 0x28]
mov rcx, qword [rax + 8]
test dword [rcx + 4], 0x100
je 0x14014c4af
test dword [rdx + 4], 0x1000004
jne 0x14014c4af
mov r8, qword [r14 + 0x60]
mov edx, 0xffff8000
mov dword [rbp + 0xd8], edx
test r8, r8
je 0x14014c221
mov rax, qword [rsi]
mov edx, ebx
mov dword [rbp + 0xd8], ebx
mov rcx, qword [rax + 0x20]
add rcx, 0x18
cmp qword [rcx], r8
je 0x14014c221
nop dword [rax + rax]
inc edx
lea rcx, [rcx + 0x20]
cmp qword [rcx], r8
jne 0x14014c210
mov dword [rbp + 0xd8], edx
mov eax, dword [rsi + 0x34]
mov rcx, rsi
mov dword [rbp + 0xe8], eax
mov r8, rbx
inc eax
mov qword [rbp - 0x48], rbx
mov dword [rsi + 0x34], eax
mov rdi, rbx
mov eax, dword [r14 + 0x28]
mov dword [rbp + 0xd0], eax
mov rax, qword [rsi + 0x98]
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x7c]
bt eax, edx
jb 0x14014c26f
bts eax, edx
mov dword [rcx + 0x7c], eax
cmp edx, 1
jne 0x14014c26f
call fcn.1401207b0
mov r8, rbx
test byte [r14 + 0x30], 0x80
je 0x14014c292
mov rdi, qword [r14 + 0x10]
test rdi, rdi
je 0x14014c292
nop
mov eax, dword [rdi + 0x64]
and al, 3
cmp al, 2
je 0x14014c292
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x14014c280
mov rax, qword [r13 + 0x28]
test byte [rax + 0x48], 1
jne 0x14014c2d3
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x14014c2d3
test byte [rax + 0x64], 4
jne 0x14014c2ca
movzx ecx, word [rax + 0x5c]
cmp cx, word [r14 + 0x3c]
jge 0x14014c2ca
cmp qword [rax + 0x48], rbx
jne 0x14014c2ca
test rdi, rdi
je 0x14014c2c7
cmp cx, word [rdi + 0x5c]
jge 0x14014c2ca
mov rdi, rax
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x14014c2a5
test rdi, rdi
je 0x14014c2f3
mov eax, dword [rdi + 0x58]
mov rdx, rdi
mov rcx, rsi
mov dword [rbp + 0xd0], eax
call fcn.1401213a0
mov r8, rax
mov qword [rbp - 0x48], rax
lea r14, [r15 + 0x90]
movsxd r10, dword [r14]
cmp dword [r15 + 0x94], r10d
jg 0x14014c334
mov edx, dword [rbp + 0xd8]
mov rcx, r15
mov r9d, dword [rbp + 0xd0]
mov r8d, dword [rbp + 0xe8]
mov dword [rsp + 0x20], edx
mov edx, 0x70
call fcn.1400e74d0
mov r8, qword [rbp - 0x48]
mov r10d, eax
jmp 0x14014c370
mov edx, dword [rbp + 0xe8]
lea rcx, [r10 + r10*2]
lea eax, [r10 + 1]
mov dword [r14], eax
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rbp + 0xd0]
mov dword [rax + rcx*8 + 8], edx
mov edx, dword [rbp + 0xd8]
mov dword [rax + rcx*8 + 0xc], edx
mov dword [rax + rcx*8], 0x70
mov qword [rax + rcx*8 + 0x10], rbx
mov rax, qword [r15]
cmp byte [rax + 0x67], bl
jne 0x14014c393
movsxd rax, r10d
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
mov byte [rax + rcx*8 + 1], 0xfd
mov dword [rax + rcx*8 + 0x10], 1
test r8, r8
je 0x14014c3f1
mov rax, qword [r15]
cmp byte [rax + 0x67], bl
je 0x14014c3bd
cmp qword [rax + 0x2e8], rbx
jne 0x14014c3f1
add dword [r8], 0xffffffff
jne 0x14014c3f1
mov rcx, qword [r8 + 0x10]
mov rdx, r8
call fcn.1400b90a0
jmp 0x14014c3f1
movsxd rax, dword [r14]
lea rdx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rdx, [rdx - 3]
cmp byte [rax + rdx*8 + 1], bl
lea rdx, [rax + rdx*8]
je 0x14014c3e9
mov r9d, 0xfffffff8
mov rcx, r15
call fcn.1400e8a80
jmp 0x14014c3f1
mov qword [rdx + 0x10], r8
mov byte [rdx + 1], 0xf8
mov eax, dword [rsi + 0x38]
mov edx, 0x62
mov r8d, dword [rbp + 0xe8]
inc eax
mov dword [r12 + 0xc], eax
mov rcx, r15
mov eax, dword [r12 + 0x20]
add eax, dword [r12 + 0x30]
add dword [rsi + 0x38], eax
mov r9d, dword [r12 + 0x20]
add r9d, dword [r12 + 0xc]
mov dword [rsp + 0x20], ebx
call fcn.1400e7530
mov r8d, dword [rbp + 0xe8]
mov edx, 0x7a
mov rcx, r15
call fcn.1400e7610
cmp byte [rsi + 0x11b], 2
jne 0x14014c670
mov r9, qword [rsp + 0x68]
test rdi, rdi
je 0x14014c471
test byte [r9 + 0x30], 0x80
je 0x14014c465
mov eax, dword [rdi + 0x64]
and al, 3
cmp al, 2
je 0x14014c471
mov rax, qword [rdi]
lea rcx, [0x1406308db]
jmp 0x14014c47e
lea rcx, [0x1406308db]
mov dword [rbp - 0x64], ebx
mov rax, rcx
cmp dword [rbp - 0x64], ebx
lea rdx, str._USING_COVERING_INDEX
mov r9, qword [r9]
lea r8, str.SCAN__s_s_s
cmovne rcx, rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
xor edx, edx
mov rcx, rsi
call fcn.1400e7d20
jmp 0x14014c670
mov r14d, ebx
mov r8d, dword [r12 + 0x30]
movzx edi, bx
mov qword [rbp + 0xd8], rbx
cmp dword [r12 + 0x24], ebx
je 0x14014c521
mov edx, ebx
test r8d, r8d
jle 0x14014c4f5
mov rcx, qword [r12 + 0x28]
mov rax, qword [rcx]
test dword [rax + 4], 0x1000000
jne 0x14014c4ea
mov rax, qword [rcx + 8]
test byte [rax + 4], 0x20
jne 0x14014c4f5
inc edx
add rcx, 0x18
cmp edx, r8d
jl 0x14014c4d4
cmp edx, r8d
jne 0x14014c51c
inc dword [rsi + 0x38]
xor r8d, r8d
mov r14d, dword [rsi + 0x38]
mov rcx, r15
mov r9d, r14d
mov dword [rsp + 0x20], ebx
lea edx, [r8 + 0x47]
call fcn.1400e7530
mov r8d, dword [r12 + 0x30]
mov ecx, r8d
jmp 0x14014c54d
mov ecx, r8d
cmp r8d, 1
jne 0x14014c54d
mov rax, qword [r12 + 0x28]
cmp dword [rax + 0x10], ebx
jl 0x14014c54d
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
mov qword [rbp + 0xd8], rax
neg rax
sbb di, di
and di, 0x500
mov eax, dword [rsi + 0x38]
mov rdx, r12
inc eax
mov dword [r12 + 0xc], eax
mov eax, dword [r12 + 0x20]
add eax, ecx
mov rcx, rsi
add dword [rsi + 0x38], eax
call fcn.140148ea0
movzx eax, byte [rbp + 0xd0]
mov rcx, rsi
mov r9, qword [rbp + 0x70]
or ax, di
mov r8, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x48]
mov dword [rsp + 0x38], ebx
mov word [rsp + 0x30], ax
mov rax, qword [rbp + 0xd8]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rax
call fcn.14016a820
mov rdi, rax
test rax, rax
je 0x14014c78c
movzx eax, byte [rax + 0x43]
mov r8, r12
mov r9d, eax
mov dword [rbp + 0xd8], eax
mov edx, r14d
mov rcx, rsi
call fcn.1401491a0
mov edx, dword [rbp + 0xd8]
test edx, edx
je 0x14014c5f1
mov rax, qword [r12 + 0x28]
test rax, rax
je 0x14014c5f1
mov r9d, dword [rax + 0x14]
mov rcx, rsi
mov r8d, dword [rax + 0x10]
call fcn.14013f170
test r14d, r14d
je 0x14014c60a
mov edx, 0x47
mov r9d, r14d
mov rcx, r15
lea r8d, [rdx - 0x46]
call fcn.1400e7680
cmp byte [rbp + 0xd0], bl
je 0x14014c656
test byte [rdi + 0x44], 4
je 0x14014c656
cmp byte [rdi + 0x41], bl
je 0x14014c656
movzx edx, byte [rdi + 0x40]
sub rdx, 1
js 0x14014c64b
imul rcx, rdx, 0x70
add rcx, rdi
nop
mov rax, qword [rcx + 0x3c0]
test byte [rax + 0x38], 4
jne 0x14014c6da
sub rcx, 0x70
sub rdx, 1
jns 0x14014c630
mov edx, dword [rdi + 0x34]
mov rcx, r15
call fcn.1400e76f0
mov rcx, rdi
call fcn.14016bb70
mov rdx, r12
mov rcx, rsi
call fcn.140149080
lea r14, [r15 + 0x90]
mov r12d, dword [rsp + 0x58]
mov r9d, 0x10
mov rdx, qword [rbp - 0x78]
mov r8d, r12d
mov rcx, rsi
mov qword [rbp], rbx
call fcn.14010c020
mov rax, qword [rbp + 0xe0]
xor r9d, r9d
mov dword [rsp + 0x38], r12d
mov rdx, r13
mov dword [rsp + 0x30], r12d
mov rcx, rsi
mov qword [rsp + 0x28], rax
lea r8d, [r9 - 1]
mov qword [rsp + 0x20], rbx
call fcn.14013f240
lea rdi, [r15 + 0x18]
mov rcx, qword [rdi]
not r12d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14014c6e5
mov r8d, r12d
mov rdx, r15
call fcn.1400e8160
jmp 0x14014c6f2
mov edx, dword [rcx + 0x370]
jmp 0x14014c64e
mov rcx, qword [rcx + 0x50]
movsxd rdx, r12d
mov eax, dword [r14]
mov dword [rcx + rdx*4], eax
cmp byte [rbp - 0x5f], 3
jne 0x14014c710
lea r9, str.DISTINCT
xor edx, edx
lea r8, str.USE_TEMP_B_TREE_FOR__s
mov rcx, rsi
call fcn.1400e7d20
cmp qword [rbp], 0
je 0x14014c739
mov rax, qword [rbp + 0xe0]
lea r8, [rbp]
mov qword [rsp + 0x20], rax
mov rdx, r13
mov rax, qword [rbp - 0x38]
mov rcx, rsi
mov r9d, dword [rax]
call fcn.14013fff0
mov rcx, qword [rdi]
mov edx, dword [rbp + 0x68]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14014c769
mov r8d, edx
mov rdx, r15
call fcn.1400e8160
cmp dword [rsi + 0x30], 0
mov r12d, ebx
mov r14, qword [rsp + 0x60]
setg r12b
jmp 0x14014b308
mov eax, dword [r14]
mov r12d, ebx
mov r8, qword [rcx + 0x50]
mov r14, qword [rsp + 0x60]
movsxd r9, edx
mov dword [r8 + r9*4], eax
cmp dword [rsi + 0x30], 0
setg r12b
jmp 0x14014b308
mov r14, qword [rsp + 0x60]
mov r12d, 1
jmp 0x14014b308
mov eax, r12d
jmp 0x14014a0a5