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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xd0]
sub rsp, 0x1d0
mov rax, qword [0x1400e8040]
xor rax, rsp
mov qword [rbp + 0xc8], rax
mov eax, dword [rcx + 0x200]
mov r12d, 1
mov rbx, qword [rcx]
mov r13, r8
mov dword [rsp + 0x70], eax
mov rdi, rdx
mov eax, dword [rcx + 0x204]
mov r15, rcx
mov dword [rcx + 0x200], eax
inc eax
mov qword [rbp - 0x68], r8
mov qword [rsp + 0x68], rdx
mov qword [rbp - 0x18], rcx
mov qword [rbp - 0x78], r12
mov dword [rcx + 0x204], eax
mov qword [rbp - 0x30], rbx
test rdx, rdx
je 0x1400a25df
cmp byte [rbx + 0x50], 0
jne 0x1400a25df
cmp dword [rcx + 0x4c], 0
jne 0x1400a25df
xor r14d, r14d
cmp byte [rbx + 0xa1], r14b
jne 0x1400a0152
cmp byte [rcx + 0x1f3], r14b
jne 0x1400a0152
mov r10, qword [rbx + 0x178]
test r10, r10
je 0x1400a0152
mov rax, qword [rcx + 0x230]
xor r9d, r9d
mov rcx, qword [rbx + 0x180]
xor r8d, r8d
mov qword [rsp + 0x28], rax
mov edx, 0x15
mov qword [rsp + 0x20], r14
call r10
mov esi, eax
cmp eax, r12d
jne 0x1400a012d
lea rdx, str.not_authorized
mov rcx, r15
call fcn.140030ff0
mov dword [r15 + 0x18], 0x17
jmp 0x1400a014a
test eax, 0xfffffffd
je 0x1400a014a
lea rdx, str.authorizer_malfunction
mov rcx, r15
mov esi, r12d
call fcn.140030ff0
mov dword [r15 + 0x18], r12d
test esi, esi
jne 0x1400a25df
cmp byte [r13], 8
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
movups xmmword [rbp + 0x50], xmm0
ja 0x1400a02f5
mov r12, qword [rdi + 0x48]
test r12, r12
je 0x1400a02e8
mov r13d, r14d
mov rsi, qword [r12 + 8]
cmp dword [r12], r14d
jle 0x1400a024a
nop
mov rdx, qword [rsi]
mov rcx, rbx
call fcn.140066fc0
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x1400a01ea
cmp qword [rbx + 0x320], r14
je 0x1400a01ba
mov rdx, rcx
mov rcx, rbx
call fcn.14002dcd0
jmp 0x1400a01ea
cmp rcx, qword [rbx + 0x168]
jb 0x1400a01e5
cmp rcx, qword [rbx + 0x170]
jae 0x1400a01e5
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400a01ea
call fcn.14002dc30
mov rcx, qword [rsi + 0x10]
test rcx, rcx
je 0x1400a0239
cmp qword [rbx + 0x320], r14
je 0x1400a0209
mov rdx, rcx
mov rcx, rbx
call fcn.14002dcd0
jmp 0x1400a0239
cmp rcx, qword [rbx + 0x168]
jb 0x1400a0234
cmp rcx, qword [rbx + 0x170]
jae 0x1400a0234
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400a0239
call fcn.14002dc30
inc r13d
add rsi, 0x28
cmp r13d, dword [r12]
jl 0x1400a0190
mov rcx, qword [r12 + 8]
test rcx, rcx
je 0x1400a029a
cmp qword [rbx + 0x320], r14
je 0x1400a026a
mov rdx, rcx
mov rcx, rbx
call fcn.14002dcd0
jmp 0x1400a029a
cmp rcx, qword [rbx + 0x168]
jb 0x1400a0295
cmp rcx, qword [rbx + 0x170]
jae 0x1400a0295
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400a029a
call fcn.14002dc30
cmp qword [rbx + 0x320], r14
je 0x1400a02b0
mov rdx, r12
mov rcx, rbx
call fcn.14002dcd0
jmp 0x1400a02e4
cmp r12, qword [rbx + 0x168]
jb 0x1400a02dc
cmp r12, qword [rbx + 0x170]
jae 0x1400a02dc
mov rax, qword [rbx + 0x160]
mov qword [r12], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], r12
jmp 0x1400a02e4
mov rcx, r12
call fcn.14002dc30
mov r13, qword [rbp - 0x68]
mov eax, 0xfffe
mov qword [rdi + 0x48], r14
and word [rdi + 0xa], ax
xor r8d, r8d
mov rdx, rdi
mov rcx, r15
call fcn.14009fab0
xorps xmm0, xmm0
mov rax, qword [rdi + 0x48]
mov rdx, qword [rdi + 0x28]
mov rsi, qword [rdi]
movdqu xmmword [rbp], xmm0
mov qword [rbp - 8], rax
mov qword [rbp - 0x60], rdx
mov qword [rbp + 0x10], r14
cmp dword [r15 + 0x4c], r14d
jne 0x1400a03c0
cmp byte [rbx + 0x50], r14b
jne 0x1400a03c0
mov r12, qword [r15 + 0x10]
movzx eax, word [rdi + 0xa]
shr eax, 2
and eax, 1
mov qword [rbp - 0x38], r12
mov dword [rsp + 0x58], eax
test r12, r12
jne 0x1400a03a1
mov rcx, r15
call fcn.140050a70
mov qword [rbp - 0x38], rax
mov r12, rax
mov qword [r15 + 0x10], rax
test rax, rax
je 0x1400a0381
xor r9d, r9d
mov dword [rsp + 0x20], r14d
xor r8d, r8d
mov edx, 0x99
mov rcx, rax
call fcn.140050c60
mov rdx, qword [rbp - 0x60]
cmp qword [r15 + 0x1c0], r14
jne 0x1400a039c
mov rax, qword [r15]
test byte [rax + 0x4c], 8
jne 0x1400a039c
mov byte [r15 + 0x23], 1
test r12, r12
je 0x1400a03c0
cmp dword [rsi], 1
movzx eax, byte [r13]
jle 0x1400a03fb
sub al, 0xa
cmp al, 1
ja 0x1400a03fb
lea rdx, str.only_a_single_result_allowed_for_a_SELECT_that_is_part_of_an_expression
mov rcx, r15
call fcn.140030ff0
mov ecx, dword [rsp + 0x70]
mov edi, 1
mov dword [r15 + 0x200], ecx
mov rcx, qword [rbp + 0x40]
test rcx, rcx
je 0x1400a257f
cmp qword [rbx + 0x320], 0
je 0x1400a254f
mov rdx, rcx
mov rcx, rbx
call fcn.14002dcd0
jmp 0x1400a257f
mov rcx, qword [rdi + 0x50]
mov r13d, r14d
mov dword [rsp + 0x5c], r14d
test rcx, rcx
jne 0x1400a076b
mov rax, r14
mov qword [rsp + 0x78], rax
cmp dword [rdx], r14d
jle 0x1400a076b
imul rsi, rax, 0x78
add rsi, rdx
mov r11, qword [rsi + 0x30]
mov qword [rbp - 0x28], r11
test r11, r11
je 0x1400a0741
mov r9d, dword [rsi + 0x38]
test r9d, r9d
je 0x1400a046b
test byte [rsi + 0x48], 4
jne 0x1400a0741
mov r8d, dword [rsi + 0x3c]
mov edx, 0x11
mov rcx, r12
mov dword [rsp + 0x20], r14d
call fcn.140050c60
mov rdx, qword [rbp - 0x60]
jmp 0x1400a0741
lea rdx, [rbp + 0x98]
mov dword [rbp + 0x98], r14d
mov rcx, rdi
call fcn.1400662b0
mov eax, dword [rbp + 0x98]
mov rdx, rdi
add dword [r15 + 0x1fc], eax
mov rcx, r15
movzx r13d, word [r11 + 0xa]
mov r9d, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x5c]
shr r13d, 2
and r13d, 1
mov dword [rsp + 0x20], r13d
call fcn.14009d440
test eax, eax
je 0x1400a04df
test r13d, r13d
je 0x1400a04cb
or word [rdi + 0xa], 4
mov dword [rsp + 0x58], 1
mov r13d, 0xffffffff
mov qword [rsp + 0x78], 0xffffffffffffffff
jmp 0x1400a06f4
mov rax, qword [rbp - 0x60]
cmp dword [rax], 1
jne 0x1400a05ce
mov eax, 0x100
test word [rbx + 0x4c], ax
jne 0x1400a05ce
mov eax, dword [r12 + 0x3c]
xor r9d, r9d
inc dword [r15 + 0x54]
mov edx, 0x14
mov r8d, dword [r15 + 0x54]
mov rcx, r12
mov dword [rsp + 0x54], eax
lea edi, [rax + 1]
mov dword [rsi + 0x3c], r8d
mov dword [rsp + 0x20], edi
call fcn.140050c60
mov eax, dword [rsi + 0x3c]
lea r8, [rbp + 0xb0]
mov r13, qword [rbp - 0x28]
mov rcx, r15
mov dword [rsi + 0x38], edi
mov rdx, r13
mov dword [rbp + 0xb4], eax
movzx eax, byte [r15 + 0x204]
mov word [rbp + 0xb0], 0xd
mov qword [rbp + 0xb8], r14
mov byte [rsi + 0x4c], al
call fcn.1400a0030
mov rcx, qword [r13 + 0x20]
call fcn.1400321a0
mov rcx, qword [rsi + 0x28]
xor r9d, r9d
mov edx, 0x15
mov dword [rsp + 0x20], r14d
mov word [rcx + 0x38], ax
mov rcx, r12
or dword [rsi + 0x48], 4
mov eax, dword [rbp + 0xb8]
mov r8d, dword [rsi + 0x3c]
mov dword [rsi + 0x40], eax
call fcn.140050c60
mov eax, dword [rsp + 0x54]
mov edx, dword [r12 + 0x3c]
cmp edx, eax
jbe 0x1400a05b5
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 8]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [r12 + 0x3c]
mov rax, qword [r12 + 0x30]
dec ecx
mov rdi, qword [rsp + 0x68]
mov dword [rax + 0x64], ecx
jmp 0x1400a06e7
mov r9d, dword [r15 + 0x54]
xor r8d, r8d
inc r9d
mov dword [rbp + 0x98], r14d
mov dword [r15 + 0x54], r9d
mov edx, 0x19
mov rcx, r12
mov dword [rsi + 0x3c], r9d
mov dword [rsp + 0x20], r14d
call fcn.140050c60
test byte [rsi + 0x48], 2
mov dword [rsp + 0x54], eax
lea ecx, [rax + 1]
mov dword [rsi + 0x38], ecx
jne 0x1400a0638
mov rcx, r15
call fcn.14009a050
mov r8d, dword [r15 + 0x5c]
xor r9d, r9d
mov edx, 0x2c
mov dword [rsp + 0x20], r14d
lea ecx, [r8 + 1]
mov dword [r15 + 0x5c], ecx
mov rcx, rax
call fcn.140050c60
mov dword [rbp + 0x98], eax
mov ecx, dword [rsi + 0x50]
lea r8, [rbp + 0xb0]
mov r13, qword [rbp - 0x28]
mov dword [rbp + 0xb4], ecx
mov rdx, r13
movzx ecx, byte [r15 + 0x204]
mov word [rbp + 0xb0], 0xc
mov qword [rbp + 0xb8], r14
mov byte [rsi + 0x4c], cl
mov rcx, r15
call fcn.1400a0030
mov rcx, qword [r13 + 0x20]
call fcn.1400321a0
mov rcx, qword [rsi + 0x28]
mov word [rcx + 0x38], ax
mov eax, dword [rbp + 0x98]
test eax, eax
je 0x1400a06b2
mov edx, dword [r12 + 0x3c]
cmp edx, eax
jbe 0x1400a06a3
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 8]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [r12 + 0x3c]
mov rax, qword [r12 + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
mov r8d, dword [rsi + 0x3c]
xor r9d, r9d
mov edx, 0x12
mov dword [rsp + 0x20], r14d
mov rcx, r12
call fcn.140050c60
mov r8d, eax
mov eax, dword [rsp + 0x54]
cmp dword [r12 + 0x3c], eax
jbe 0x1400a06e7
mov rcx, qword [r12 + 8]
lea rdx, [rax + rax*2]
mov dword [rcx + rdx*8 + 4], r8d
mov r13d, dword [rsp + 0x5c]
mov dword [r15 + 0x44], r14d
mov byte [r15 + 0x1f], r14b
cmp byte [rbx + 0x50], r14b
jne 0x1400a03c0
lea rdx, [rbp + 0x98]
mov dword [rbp + 0x98], r14d
mov rcx, rdi
call fcn.1400662b0
mov edx, dword [r15 + 0x1fc]
sub edx, dword [rbp + 0x98]
mov rax, qword [rbp - 0x68]
mov dword [r15 + 0x1fc], edx
mov rdx, qword [rdi + 0x28]
mov qword [rbp - 0x60], rdx
cmp byte [rax], 8
jbe 0x1400a0741
mov rax, qword [rdi + 0x48]
mov qword [rbp - 8], rax
mov rax, qword [rsp + 0x78]
inc r13d
mov rcx, qword [rdi + 0x50]
inc rax
mov dword [rsp + 0x5c], r13d
mov qword [rsp + 0x78], rax
test rcx, rcx
jne 0x1400a076b
mov rcx, r14
cmp r13d, dword [rdx]
jl 0x1400a0421
mov rax, qword [rdi + 0x30]
mov r8, qword [rdi]
mov r13, qword [rdi + 0x38]
mov rdx, qword [rdi + 0x40]
mov qword [rbp - 0x50], rax
movzx eax, byte [rdi + 0xa]
and al, 1
mov qword [rsp + 0x78], r8
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x28], rdx
mov byte [rbp + 0xa0], al
test rcx, rcx
je 0x1400a07bb
mov r8, qword [rbp - 0x68]
mov rdx, rdi
mov rcx, r15
call fcn.14009ac30
mov ecx, dword [rsp + 0x70]
mov dword [r15 + 0x200], ecx
jmp 0x1400a25e2
movzx eax, byte [rdi + 0xa]
and al, 5
cmp al, 1
jne 0x1400a07db
mov rcx, qword [rbp - 8]
mov qword [rbp - 0x10], rcx
test rcx, rcx
jne 0x1400a0850
test r8, r8
je 0x1400a08c6
mov rdx, qword [rbp - 8]
test rdx, rdx
je 0x1400a08ec
xor r9d, r9d
xor r8d, r8d
mov rcx, r15
call fcn.140098770
mov r8d, dword [r15 + 0x50]
mov rsi, rax
mov r9, qword [rsp + 0x78]
mov dword [rbp + 4], r8d
mov dword [rsp + 0x20], r14d
lea ecx, [r8 + 1]
mov dword [r15 + 0x50], ecx
mov rcx, qword [rbp - 8]
mov r9d, dword [r9]
mov edx, dword [rcx]
mov rcx, r12
inc edx
add r9d, edx
mov edx, 0x39
call fcn.140050c60
mov r9d, 0xfffffffa
mov r8, rsi
mov edx, eax
mov rcx, r12
mov edi, eax
call fcn.140051290
mov dword [rbp + 0x10], edi
mov rdi, qword [rsp + 0x68]
jmp 0x1400a08f3
test r8, r8
je 0x1400a07db
mov rax, qword [rbp - 8]
mov edx, dword [rax]
cmp edx, dword [r8]
jne 0x1400a07db
mov dword [rbp + 0x98], r14d
test edx, edx
jle 0x1400a08c6
mov rsi, r14
mov rdx, qword [r8 + 8]
mov rcx, qword [rcx + 8]
movzx eax, byte [rdx + rsi + 0x18]
cmp byte [rcx + rsi + 0x18], al
jne 0x1400a07db
mov rdx, qword [rdx + rsi]
mov r8d, 0xffffffff
mov rcx, qword [rcx + rsi]
call fcn.14006d3f0
test eax, eax
jne 0x1400a07db
mov ecx, dword [rbp + 0x98]
add rsi, 0x28
mov rax, qword [rbp - 0x10]
inc ecx
mov r8, qword [rsp + 0x78]
mov dword [rbp + 0x98], ecx
cmp ecx, dword [rax]
mov rcx, rax
jl 0x1400a0872
mov rdx, qword [rdi]
mov ecx, 0xfffe
and word [rdi + 0xa], cx
xor r8d, r8d
mov rcx, rbx
call fcn.1400678d0
mov r13, rax
mov qword [rbp - 0x70], rax
mov qword [rdi + 0x38], rax
mov qword [rbp - 8], r14
mov dword [rbp + 0x10], 0xffffffff
mov rcx, qword [rbp - 0x68]
cmp byte [rcx], 0xc
jne 0x1400a091a
mov rax, qword [rsp + 0x78]
mov edx, 0x39
mov r8d, dword [rcx + 4]
mov rcx, r12
mov dword [rsp + 0x20], r14d
mov r9d, dword [rax]
call fcn.140050c60
mov rcx, r12
call fcn.140050da0
movabs rcx, 0x7fffffffffffffff
mov dword [rbp - 0x10], eax
mov qword [rdi + 0x20], rcx
mov r8d, eax
mov rcx, r15
mov rdx, rdi
call fcn.14009a0d0
cmp dword [rdi + 0xc], r14d
jne 0x1400a0976
movsxd rdx, dword [rbp + 0x10]
test edx, edx
js 0x1400a0976
mov rcx, qword [r12]
cmp byte [rcx + 0x50], r14b
je 0x1400a0962
lea rax, [0x1400eb3d0]
jmp 0x1400a096f
mov rax, qword [r12 + 8]
lea rcx, [rdx + rdx*2]
lea rax, [rax + rcx*8]
mov byte [rax], 0x3a
or byte [rbp + 0x14], 1
test byte [rdi + 0xa], 1
je 0x1400a0a01
mov eax, dword [r15 + 0x50]
xor r9d, r9d
mov dword [rbp + 0xa4], eax
xor r8d, r8d
inc eax
mov rcx, r15
mov dword [r15 + 0x50], eax
mov rdx, qword [rdi]
call fcn.140098770
mov r8d, dword [rbp + 0xa4]
xor r9d, r9d
mov edx, 0x39
mov dword [rsp + 0x20], r14d
mov rcx, r12
mov rsi, rax
call fcn.140050c60
mov r9d, 0xfffffffa
mov r8, rsi
mov edx, eax
mov rcx, r12
mov edi, eax
call fcn.140051290
mov dword [rbp + 0xa8], edi
mov rdx, qword [r12 + 8]
test rdx, rdx
je 0x1400a09f3
movsxd rax, dword [r12 + 0x3c]
lea rcx, [rax + rax*2]
mov byte [rdx + rcx*8 - 0x15], 8
mov rdi, qword [rsp + 0x68]
mov byte [rbp + 0xa1], 3
jmp 0x1400a0a08
mov byte [rbp + 0xa1], r14b
cmp dword [rsp + 0x58], r14d
jne 0x1400a0b66
test r13, r13
jne 0x1400a0b66
movzx eax, byte [rbp + 0xa0]
mov r9, qword [rbp - 8]
neg al
mov rax, qword [rdi]
mov r8, qword [rbp - 0x50]
sbb cx, cx
mov rdx, qword [rbp - 0x60]
and cx, 0x400
mov dword [rsp + 0x30], r14d
mov word [rsp + 0x28], cx
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.1400b5040
mov rsi, rax
test rax, rax
je 0x1400a03c0
mov rcx, rax
call fcn.1400ab350
cmp rax, qword [rdi + 0x20]
jae 0x1400a0a79
mov rcx, rsi
call fcn.1400ab350
mov qword [rdi + 0x20], rax
cmp byte [rbp + 0xa0], r14b
je 0x1400a0a98
movzx ecx, byte [rsi + 0x38]
movzx eax, byte [rbp + 0xa1]
test cl, cl
cmovne eax, ecx
mov byte [rbp + 0xa1], al
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x1400a0ab2
movsx eax, byte [rsi + 0x34]
mov dword [rbp], eax
cmp eax, dword [rcx]
cmove rcx, r14
mov qword [rbp - 8], rcx
movsxd r13, dword [rbp + 0x10]
test r13d, r13d
js 0x1400a0b12
test rcx, rcx
jne 0x1400a0b12
cmp r13d, dword [r12 + 0x3c]
jge 0x1400a0b12
mov rax, qword [r12 + 8]
lea rcx, [r13*2]
add rcx, r13
movsx edx, byte [rax + rcx*8 + 1]
lea rdi, [rax + rcx*8]
mov r8, qword [rdi + 0x10]
mov rcx, qword [r12]
call fcn.140051060
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rax
mov byte [rdi], 0x9a
mov eax, dword [r12 + 0x3c]
mov rdi, qword [rsp + 0x68]
dec eax
cmp r13d, eax
jne 0x1400a0b12
mov dword [r12 + 0x3c], eax
mov eax, dword [rsi + 0x44]
mov r9d, 0xffffffff
mov r8, qword [rsp + 0x78]
mov rdx, rdi
mov dword [rsp + 0x40], eax
mov rcx, r15
mov eax, dword [rsi + 0x40]
mov dword [rsp + 0x38], eax
mov rax, qword [rbp - 0x68]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 8]
mov qword [rsp + 0x20], rax
call fcn.140097b60
mov rcx, rsi
call fcn.1400b5a60
mov r13, qword [rsp + 0x68]
jmp 0x1400a23fb
mov dword [rsp + 0x74], r14d
mov dword [rsp + 0x50], r14d
test r13, r13
je 0x1400a0c3d
mov rax, qword [rdi]
mov ecx, dword [rax]
mov rdx, qword [rax + 8]
test ecx, ecx
jle 0x1400a0b9e
lea rax, [rdx + 0x22]
nop word [rax + rax]
dec ecx
mov word [rax], r14w
lea rax, [rax + 0x28]
test ecx, ecx
jg 0x1400a0b90
mov eax, dword [r13]
mov rcx, qword [r13 + 8]
test eax, eax
jle 0x1400a0bbe
add rcx, 0x22
nop
dec eax
mov word [rcx], r14w
lea rcx, [rcx + 0x28]
test eax, eax
jg 0x1400a0bb0
cmp qword [rdi + 0x20], 0x64
jbe 0x1400a0bcd
mov qword [rdi + 0x20], 0x64
mov rdx, qword [rbp - 8]
mov qword [rbp - 0x80], rdx
test rdx, rdx
je 0x1400a0c50
mov eax, dword [r13]
cmp eax, dword [rdx]
jne 0x1400a0c50
mov dword [rbp + 0x98], r14d
test eax, eax
jle 0x1400a0c36
mov rsi, r14
mov rdx, qword [rdx + 8]
mov rcx, qword [r13 + 8]
movzx eax, byte [rdx + rsi + 0x18]
cmp byte [rcx + rsi + 0x18], al
jne 0x1400a0c50
mov rdx, qword [rdx + rsi]
mov r8d, 0xffffffff
mov rcx, qword [rcx + rsi]
call fcn.14006d3f0
test eax, eax
jne 0x1400a0c50
mov ecx, dword [rbp + 0x98]
add rsi, 0x28
mov rdx, qword [rbp - 0x80]
inc ecx
mov dword [rbp + 0x98], ecx
cmp ecx, dword [r13]
jl 0x1400a0bf0
mov dword [rsp + 0x60], r14d
jmp 0x1400a0c58
mov qword [rdi + 0x20], 1
mov dword [rsp + 0x60], r14d
cmp qword [rbp - 8], r14
je 0x1400a0c58
mov dword [rsp + 0x60], 1
mov rcx, r12
call fcn.140050da0
mov dword [rsp + 0x5c], eax
xorps xmm0, xmm0
mov rax, qword [rbp - 0x60]
mov qword [rbp + 0x68], rax
lea rax, [rbp + 0x20]
mov qword [rbp + 0x78], rax
mov eax, dword [r15 + 0x54]
inc eax
mov qword [rbp + 0x70], r14
mov qword [rbp + 0x90], r14
mov qword [rbp + 0x60], r15
mov dword [rbp + 0x30], eax
movdqu xmmword [rbp + 0x80], xmm0
test r13, r13
je 0x1400a0ca5
mov eax, dword [r13]
mov dword [rbp + 0x2c], eax
jmp 0x1400a0ca9
mov dword [rbp + 0x2c], r14d
mov rax, qword [rsp + 0x78]
mov qword [rbp + 0x38], r13
test rax, rax
je 0x1400a0cf0
mov rsi, qword [rax + 8]
cmp dword [rax], r14d
jle 0x1400a0cf0
mov r15d, r14d
mov rbx, rax
nop word [rax + rax]
mov rdx, qword [rsi]
lea rcx, [rbp + 0x60]
call fcn.14006da60
inc r15d
lea rsi, [rsi + 0x28]
cmp r15d, dword [rbx]
jl 0x1400a0cd0
mov rbx, qword [rbp - 0x30]
mov r15, qword [rbp - 0x18]
mov rax, qword [rbp - 8]
test rax, rax
je 0x1400a0d31
mov rsi, qword [rax + 8]
cmp dword [rax], r14d
jle 0x1400a0d31
mov edi, r14d
mov r13, rax
nop dword [rax + rax]
mov rdx, qword [rsi]
lea rcx, [rbp + 0x60]
call fcn.14006da60
inc edi
lea rsi, [rsi + 0x28]
cmp edi, dword [r13]
jl 0x1400a0d10
mov rdi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x70]
mov rax, qword [rbp - 0x28]
test rax, rax
je 0x1400a0d46
mov rdx, rax
lea rcx, [rbp + 0x60]
call fcn.14006da60
mov r8d, dword [rbp + 0x58]
mov r9d, r14d
mov eax, dword [rbp + 0x48]
mov dword [rbp + 0x4c], eax
mov dword [rbp + 0x98], r14d
test r8d, r8d
jle 0x1400a0e09
movzx edx, word [rbp + 0x90]
mov r15, r14
mov r12d, 0xfff7
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rbp + 0x50]
or dx, 8
mov word [rbp + 0x90], dx
mov rcx, qword [r15 + rax]
mov r13, qword [rcx + 0x20]
test r13, r13
je 0x1400a0dda
mov esi, r14d
mov rdi, qword [r13 + 8]
cmp dword [r13], r14d
jle 0x1400a0dda
nop dword [rax]
mov rdx, qword [rdi]
lea rcx, [rbp + 0x60]
call fcn.14006da60
inc esi
lea rdi, [rdi + 0x28]
cmp esi, dword [r13]
jl 0x1400a0db0
mov r8d, dword [rbp + 0x58]
movzx edx, word [rbp + 0x90]
mov r9d, dword [rbp + 0x98]
and dx, r12w
inc r9d
add r15, 0x18
mov word [rbp + 0x90], dx
mov dword [rbp + 0x98], r9d
cmp r9d, r8d
jl 0x1400a0d80
mov r15, qword [rbp - 0x18]
mov r12, qword [rbp - 0x38]
mov rdi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x70]
mov eax, dword [r15 + 0x54]
mov dword [rbp + 0x34], eax
cmp byte [rbx + 0x50], r14b
jne 0x1400a03c0
test r13, r13
je 0x1400a1769
mov eax, dword [r15 + 0x50]
xor r9d, r9d
mov dword [rbp + 0x24], eax
xor r8d, r8d
inc eax
mov rdx, r13
mov rcx, r15
mov dword [r15 + 0x50], eax
call fcn.140098770
mov r9d, dword [rbp + 0x2c]
mov edx, 0x3a
mov r8d, dword [rbp + 0x24]
mov rcx, r12
mov rsi, rax
mov qword [rbp - 0x58], rax
mov dword [rsp + 0x20], r14d
call fcn.140050c60
mov r9d, 0xfffffffa
mov dword [rbp - 0x70], eax
mov r8, rsi
mov edx, eax
mov rcx, r12
call fcn.140051290
mov eax, dword [r15 + 0x54]
mov rcx, r12
inc eax
mov dword [rsp + 0x58], eax
inc eax
mov dword [rbp - 0x20], eax
inc eax
mov dword [rbp - 0x40], eax
mov dword [r15 + 0x54], eax
call fcn.140050da0
mov dword [rbp - 0x78], eax
mov rcx, r12
mov eax, dword [r15 + 0x54]
inc eax
mov dword [rbp + 0x98], eax
mov dword [r15 + 0x54], eax
call fcn.140050da0
mov ecx, dword [r15 + 0x54]
mov esi, eax
mov edx, dword [r13]
xor r8d, r8d
mov r9d, dword [rbp - 0x20]
add edx, ecx
mov dword [r15 + 0x54], edx
mov dword [rsp + 0x54], eax
lea eax, [rcx + 1]
mov ecx, dword [r13]
add ecx, edx
mov dword [rbp - 0x48], eax
lea eax, [rdx + 1]
mov dword [r15 + 0x54], ecx
mov rcx, r12
mov dword [rbp - 0x44], eax
mov edx, 0x19
mov dword [rsp + 0x20], r14d
call fcn.140050c60
mov r9d, dword [rsp + 0x58]
xor r8d, r8d
mov edx, 0x19
mov dword [rsp + 0x20], r14d
mov rcx, r12
call fcn.140050c60
mov edx, dword [rbp - 0x48]
xor r8d, r8d
mov r9d, edx
lea ecx, [rdx - 1]
mov edx, 0x1c
add ecx, dword [r13]
mov dword [rsp + 0x20], ecx
mov rcx, r12
call fcn.140050c60
mov r8d, dword [rbp + 0x98]
mov r9d, esi
mov edx, 0x11
mov dword [rsp + 0x20], r14d
mov rcx, r12
call fcn.140050c60
mov ecx, 0x900
cmp dword [rsp + 0x60], r14d
mov eax, 0x100
mov r8, qword [rbp - 0x50]
mov r9, r13
mov rdx, qword [rbp - 0x60]
cmove ax, cx
mov dword [rsp + 0x30], r14d
mov rcx, r15
mov word [rsp + 0x28], ax
mov qword [rsp + 0x20], r14
call fcn.1400b5040
mov qword [rbp - 0x38], rax
mov rdx, rax
test rax, rax
je 0x1400a03c0
movsx ecx, byte [rax + 0x34]
cmp ecx, dword [r13]
jne 0x1400a0fa7
mov eax, r14d
mov dword [rbp - 0x50], eax
jmp 0x1400a122c
cmp byte [rbp + 0xa0], r14b
je 0x1400a0fbd
test byte [rdi + 0xa], 1
lea rdx, str.DISTINCT
je 0x1400a0fc4
lea rdx, str.GROUP_BY
mov rcx, r15
call fcn.140098830
mov edi, dword [r13]
mov esi, edi
mov ecx, dword [rbp + 0x48]
mov edx, edi
mov dword [rbp - 0x50], 1
test ecx, ecx
jle 0x1400a100d
mov r8, qword [rbp + 0x40]
mov r9d, ecx
add r8, 0x10
nop dword [rax]
cmp dword [r8], edx
lea eax, [rsi + 1]
lea r8, [r8 + 0x20]
cmovl eax, esi
mov esi, eax
lea eax, [rdx + 1]
cmovl eax, edx
mov edx, eax
sub r9, 1
jne 0x1400a0ff0
mov ecx, dword [r15 + 0x44]
mov r10d, dword [r15 + 0x48]
mov dword [rsp + 0x50], r10d
cmp esi, ecx
jg 0x1400a102e
lea eax, [r10 + rsi]
sub ecx, esi
mov dword [r15 + 0x48], eax
mov dword [r15 + 0x44], ecx
jmp 0x1400a1041
mov eax, dword [r15 + 0x54]
lea r10d, [rax + 1]
add eax, esi
mov dword [r15 + 0x54], eax
mov dword [rsp + 0x50], r10d
mov rcx, r15
call fcn.14006b290
xor r9d, r9d
mov r8d, r10d
mov rdx, r13
call fcn.14006c8b0
mov r9d, dword [rbp + 0x48]
mov r8d, r14d
mov dword [rsp + 0x74], r14d
test r9d, r9d
jle 0x1400a10f2
mov r10d, dword [rsp + 0x50]
mov rcx, r14
mov qword [rbp - 0x80], rcx
add edi, r10d
nop dword [rax + rax]
mov rdx, qword [rbp + 0x40]
mov eax, edi
add rdx, rcx
sub eax, r10d
cmp dword [rdx + 0x10], eax
jl 0x1400a10dd
mov r9d, dword [rdx + 8]
mov rcx, r15
mov r8d, dword [rdx + 0xc]
mov rdx, qword [rdx]
mov byte [rsp + 0x28], r14b
mov dword [rsp + 0x20], edi
call fcn.14006b120
cmp edi, eax
je 0x1400a10c9
mov r9d, edi
mov dword [rsp + 0x20], r14d
mov r8d, eax
mov edx, 0x22
mov rcx, r12
call fcn.140050c60
mov r9d, dword [rbp + 0x48]
inc edi
mov rcx, qword [rbp - 0x80]
mov r8d, dword [rsp + 0x74]
mov r10d, dword [rsp + 0x50]
inc r8d
add rcx, 0x20
mov dword [rsp + 0x74], r8d
mov qword [rbp - 0x80], rcx
cmp r8d, r9d
jl 0x1400a1080
movzx eax, byte [r15 + 0x1f]
test al, al
jne 0x1400a1107
mov edi, dword [r15 + 0x54]
inc edi
mov dword [r15 + 0x54], edi
jmp 0x1400a1115
dec al
movzx eax, al
mov byte [r15 + 0x1f], al
mov edi, dword [r15 + rax*4 + 0x24]
mov r8d, dword [rsp + 0x50]
mov r9d, esi
mov edx, 0x31
mov dword [rsp + 0x20], edi
mov rcx, r12
call fcn.140050c60
mov r8d, dword [rbp + 0x24]
mov r9d, edi
mov edx, 0x6d
mov dword [rsp + 0x20], r14d
mov rcx, r12
call fcn.140050c60
test edi, edi
je 0x1400a1184
cmp byte [r15 + 0x1f], 8
jae 0x1400a1184
mov ecx, r14d
lea rax, [r15 + 0x88]
nop dword [rax]
cmp dword [rax + 0xc], edi
je 0x1400a1180
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x1400a1160
movzx eax, byte [r15 + 0x1f]
mov dword [r15 + rax*4 + 0x24], edi
inc byte [r15 + 0x1f]
jmp 0x1400a1184
mov byte [rax + 6], 1
mov r11d, dword [rsp + 0x50]
mov r8d, esi
mov edx, r11d
mov rcx, r15
call fcn.14006aba0
cmp esi, dword [r15 + 0x44]
jle 0x1400a11a5
mov dword [r15 + 0x44], esi
mov dword [r15 + 0x48], r11d
mov rcx, qword [rbp - 0x38]
call fcn.1400b5a60
mov ecx, dword [r15 + 0x50]
mov dword [rsp + 0x74], ecx
mov dword [rbp + 0x28], ecx
lea eax, [rcx + 1]
mov dword [r15 + 0x50], eax
movzx eax, byte [r15 + 0x1f]
test al, al
jne 0x1400a11d5
mov eax, dword [r15 + 0x54]
inc eax
mov dword [r15 + 0x54], eax
jmp 0x1400a11e3
dec al
movzx eax, al
mov byte [r15 + 0x1f], al
mov eax, dword [r15 + rax*4 + 0x24]
mov r8d, ecx
mov dword [rsp + 0x50], eax
mov rcx, r12
mov dword [rsp + 0x20], esi
mov r9d, eax
mov edx, 0x3c
call fcn.140050c60
mov r9d, dword [rsp + 0x5c]
mov edx, 0x6a
mov r8d, dword [rbp + 0x24]
mov rcx, r12
mov dword [rsp + 0x20], r14d
call fcn.140050c60
mov rcx, r15
mov byte [rbp + 0x21], 1
call fcn.14006b290
mov eax, dword [rbp - 0x50]
mov rdx, qword [rbp - 0x38]
cmp dword [rsp + 0x60], r14d
jne 0x1400a1290
test byte [rbx + 0x4c], 4
jne 0x1400a1290
test eax, eax
jne 0x1400a1243
cmp byte [rdx + 0x35], r14b
je 0x1400a1290
movsxd rsi, dword [rbp + 0x10]
mov qword [rbp - 8], r14
cmp esi, dword [r12 + 0x3c]
jge 0x1400a1290
mov rax, qword [r12 + 8]
lea rcx, [rsi + rsi*2]
movsx edx, byte [rax + rcx*8 + 1]
lea rdi, [rax + rcx*8]
mov r8, qword [rdi + 0x10]
mov rcx, qword [r12]
call fcn.140051060
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rax
mov byte [rdi], 0x9a
mov eax, dword [r12 + 0x3c]
dec eax
cmp esi, eax
jne 0x1400a1290
mov dword [r12 + 0x3c], eax
mov eax, dword [r12 + 0x3c]
mov rcx, r15
mov dword [rsp + 0x60], eax
call fcn.14006b290
mov eax, dword [rbp - 0x50]
test eax, eax
je 0x1400a12c9
mov eax, dword [rsp + 0x74]
mov edx, 0x64
mov r9d, dword [rsp + 0x50]
mov rcx, r12
mov r8d, dword [rbp + 0x24]
mov dword [rsp + 0x20], eax
call fcn.140050c60
mov eax, dword [rbp - 0x50]
mov edi, r14d
cmp dword [r13], r14d
jle 0x1400a136d
mov ebx, dword [rbp - 0x44]
mov rsi, r14
nop dword [rax]
test eax, eax
je 0x1400a133e
mov ecx, dword [r12 + 0x3c]
mov rax, qword [r12 + 0x30]
mov dword [rsp + 0x50], ecx
cmp dword [rax + 0x60], ecx
jg 0x1400a1307
mov rcx, r12
call fcn.140050bb0
test eax, eax
jne 0x1400a1356
mov ecx, dword [rsp + 0x50]
inc dword [r12 + 0x3c]
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 8]
mov word [rax + rcx*8], 0x2f
mov byte [rax + rcx*8 + 3], r14b
mov dword [rax + rcx*8 + 8], edi
lea rdx, [rax + rcx*8]
mov eax, dword [rsp + 0x74]
mov qword [rdx + 0x10], r14
mov dword [rdx + 4], eax
lea eax, [rdi + rbx]
mov dword [rdx + 0xc], eax
jmp 0x1400a1356
mov byte [rbp + 0x20], 1
lea r8d, [rdi + rbx]
mov rdx, qword [r13 + 8]
mov rcx, r15
mov rdx, qword [rdx + rsi]
call fcn.14006c850
mov eax, dword [rbp - 0x50]
inc edi
add rsi, 0x28
cmp edi, dword [r13]
jl 0x1400a12e0
mov rbx, qword [rbp - 0x30]
mov rdi, qword [rbp - 0x58]
test rdi, rdi
je 0x1400a1378
inc dword [rdi]
mov eax, dword [r13]
mov edx, 0x2a
mov r9d, dword [rbp - 0x44]
mov rcx, r12
mov r8d, dword [rbp - 0x48]
mov dword [rsp + 0x20], eax
call fcn.140050c60
mov r9d, 0xfffffffa
mov r8, rdi
mov edx, eax
mov rcx, r12
call fcn.140051290
mov rax, qword [r12 + 0x30]
mov esi, dword [r12 + 0x3c]
cmp dword [rax + 0x60], esi
jg 0x1400a13c3
mov rcx, r12
call fcn.140050bb0
test eax, eax
jne 0x1400a13f7
inc dword [r12 + 0x3c]
movsxd rax, esi
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 8]
mov word [rax + rcx*8], 0x2b
mov byte [rax + rcx*8 + 3], r14b
mov dword [rax + rcx*8 + 8], r14d
lea r8, [rax + rcx*8]
lea eax, [rsi + 1]
mov qword [r8 + 0x10], r14
mov dword [r8 + 4], eax
mov dword [r8 + 0xc], eax
mov edi, dword [r13]
mov edx, 0x20
mov r9d, dword [rbp - 0x48]
mov r8d, dword [rbp - 0x44]
mov rcx, qword [r15 + 0x10]
mov dword [rsp + 0x20], edi
call fcn.140050c60
mov edx, dword [rbp - 0x44]
mov r8d, edi
mov rcx, r15
call fcn.14006aba0
mov r13d, dword [rbp - 0x78]
mov edx, 0x11
mov r8d, dword [rbp - 0x40]
mov r9d, r13d
mov rcx, r12
mov dword [rsp + 0x20], r14d
call fcn.140050c60
mov r9d, dword [rsp + 0x5c]
mov edx, 0x89
mov r8d, dword [rbp - 0x20]
mov rcx, r12
mov dword [rsp + 0x20], r14d
call fcn.140050c60
mov r9d, dword [rsp + 0x54]
mov edx, 0x11
mov r8d, dword [rbp + 0x98]
mov rcx, r12
mov dword [rsp + 0x20], r14d
call fcn.140050c60
mov edx, dword [r12 + 0x3c]
cmp edx, esi
jbe 0x1400a148f
mov rax, qword [r12 + 8]
lea rcx, [rsi + rsi*2]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [r12 + 0x3c]
lea rdx, [rbp + 0x20]
mov rax, qword [r12 + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
mov rcx, r15
call fcn.14009fd10
mov edi, dword [rsp + 0x58]
mov edx, 0x19
mov r9d, edi
mov dword [rsp + 0x20], r14d
mov r8d, 1
mov rcx, r12
call fcn.140050c60
cmp dword [rbp - 0x50], r14d
je 0x1400a14ec
mov r9d, dword [rsp + 0x60]
mov edx, 5
mov r8d, dword [rbp + 0x24]
mov rcx, r12
mov dword [rsp + 0x20], r14d
call fcn.140050c60
jmp 0x1400a1542
mov rcx, qword [rbp - 0x38]
call fcn.1400b5a60
movsxd rsi, dword [rbp - 0x70]
cmp esi, dword [r12 + 0x3c]
jge 0x1400a1542
mov rax, qword [r12 + 8]
lea rcx, [rsi + rsi*2]
movsx edx, byte [rax + rcx*8 + 1]
lea rdi, [rax + rcx*8]
mov r8, qword [rdi + 0x10]
mov rcx, qword [r12]
call fcn.140051060
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rax
mov byte [rdi], 0x9a
mov eax, dword [r12 + 0x3c]
mov edi, dword [rsp + 0x58]
dec eax
cmp esi, eax
jne 0x1400a1542
mov dword [r12 + 0x3c], eax
mov esi, dword [rbp - 0x40]
mov r9d, r13d
mov r8d, esi
mov dword [rsp + 0x20], r14d
mov edx, 0x11
mov rcx, r12
call fcn.140050c60
mov r9d, dword [rsp + 0x5c]
xor r8d, r8d
mov edx, 0x10
mov dword [rsp + 0x20], r14d
mov rcx, r12
call fcn.140050c60
mov eax, dword [r12 + 0x3c]
lea r9d, [rdi + 1]
mov edx, 0x19
mov dword [rbp - 0x78], eax
mov r8d, 1
mov dword [rsp + 0x20], r14d
mov rcx, r12
call fcn.140050c60
xor r9d, r9d
mov dword [rsp + 0x20], r14d
mov r8d, esi
mov edx, 0x12
mov rcx, r12
call fcn.140050c60
mov r10, qword [r12 + 0x30]
not r13d
test r13d, r13d
js 0x1400a15d8
mov r9, qword [r10 + 0x80]
test r9, r9
je 0x1400a15d8
mov eax, dword [r12 + 0x3c]
movsxd rcx, r13d
mov dword [r9 + rcx*4], eax
mov eax, dword [r12 + 0x3c]
mov r8d, edi
dec eax
mov dword [rsp + 0x20], r14d
mov dword [r10 + 0x64], eax
mov edx, 0x89
mov eax, dword [r12 + 0x3c]
mov rcx, r12
mov dword [rbp - 0x70], eax
lea r9d, [rax + 2]
call fcn.140050c60
xor r9d, r9d
mov dword [rsp + 0x20], r14d
mov r8d, esi
mov edx, 0x12
mov rcx, r12
call fcn.140050c60
mov r13d, r14d
mov rax, qword [r15 + 0x10]
cmp dword [rbp + 0x58], r14d
jle 0x1400a1695
mov rsi, qword [rbp + 0x50]
mov r15, rax
add rsi, 0x10
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rsi - 0x10]
mov rcx, qword [rax + 0x20]
test rcx, rcx
je 0x1400a1652
mov r9d, dword [rcx]
jmp 0x1400a1655
mov r9d, r14d
mov r8d, dword [rsi]
mov edx, 0x8c
mov rdi, qword [rsi - 8]
mov rcx, r15
mov dword [rsp + 0x20], r14d
call fcn.140050c60
mov r9d, 0xfffffffb
mov r8, rdi
mov edx, eax
mov rcx, r15
call fcn.140051290
inc r13d
add rsi, 0x18
cmp r13d, dword [rbp + 0x58]
jl 0x1400a1640
mov r15, qword [rbp - 0x18]
mov esi, dword [rbp - 0x40]
mov edi, dword [rbp - 0x70]
mov r9d, 0x10
mov rdx, qword [rbp - 0x28]
inc edi
mov r8d, edi
mov rcx, r15
call fcn.14006cfc0
mov eax, dword [rbp - 0x78]
mov r9d, 0xffffffff
mov r13, qword [rsp + 0x68]
mov rcx, r15
mov dword [rsp + 0x40], eax
mov rdx, r13
mov rax, qword [rbp - 0x68]
mov dword [rsp + 0x38], edi
mov r8, qword [r13]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 8]
mov qword [rsp + 0x20], rax
call fcn.140097b60
xor r9d, r9d
mov dword [rsp + 0x20], r14d
mov r8d, esi
mov edx, 0x12
mov rcx, r12
call fcn.140050c60
mov eax, dword [rsp + 0x54]
mov r10, qword [r12 + 0x30]
not eax
test eax, eax
js 0x1400a1731
mov r9, qword [r10 + 0x80]
test r9, r9
je 0x1400a1731
movsxd rcx, eax
mov eax, dword [r12 + 0x3c]
mov dword [r9 + rcx*4], eax
mov eax, dword [r12 + 0x3c]
lea rdx, [rbp + 0x20]
dec eax
mov rcx, r15
mov dword [r10 + 0x64], eax
call fcn.14009fc10
mov r8d, dword [rbp + 0x98]
xor r9d, r9d
mov edx, 0x12
mov dword [rsp + 0x20], r14d
mov rcx, r12
call fcn.140050c60
jmp 0x1400a23ca
mov r13, r14
mov r10d, 0x10
cmp qword [rdi + 0x30], r14
jne 0x1400a1a73
mov rax, qword [rdi]
cmp dword [rax], 1
jne 0x1400a1a73
mov rdx, qword [rdi + 0x28]
cmp dword [rdx], 1
jne 0x1400a1a73
cmp qword [rdx + 0x30], r14
jne 0x1400a1a73
mov rdx, qword [rdx + 0x28]
mov rax, qword [rax + 8]
mov r9, qword [rax]
test byte [rdx + 0x48], r10b
jne 0x1400a1a73
cmp byte [r9], 0x9b
jne 0x1400a1a73
test r8d, r8d
je 0x1400a1a73
mov rax, qword [rbp + 0x50]
mov rcx, qword [rax + 8]
mov eax, 0x100
test word [rcx + 2], ax
je 0x1400a1a73
test byte [r9 + 4], r10b
jne 0x1400a1a73
test rdx, rdx
je 0x1400a1a73
mov r8, qword [rdx + 0x70]
mov r10d, 0xfff0bdc0
mov dword [rsp + 0x58], r10d
mov rsi, rdx
test r8, r8
je 0x1400a1849
mov rax, qword [r15]
mov r10d, r14d
mov dword [rsp + 0x58], r14d
movsxd rcx, dword [rax + 0x28]
test ecx, ecx
jle 0x1400a1849
mov rax, qword [rax + 0x20]
mov r9, rcx
add rax, 0x18
mov rcx, r14
nop dword [rax]
cmp qword [rax], r8
je 0x1400a1844
inc r10d
inc rcx
add rax, 0x20
cmp rcx, r9
jl 0x1400a1830
mov dword [rsp + 0x58], r10d
mov eax, dword [r15 + 0x50]
mov rcx, r15
mov dword [rbp + 0x98], eax
mov rdi, r14
inc eax
mov qword [rbp - 0x80], r14
mov dword [r15 + 0x50], eax
mov eax, dword [rsi + 0x3c]
mov dword [rsp + 0x54], eax
mov rax, qword [r15 + 0x1c0]
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x16c]
bt eax, r10d
jb 0x1400a18be
bts eax, r10d
movsxd r9, r10d
mov dword [rcx + 0x16c], eax
mov r8, r9
mov rax, qword [rcx]
shl r8, 5
mov rdx, qword [rax + 0x20]
mov rax, qword [r8 + rdx + 0x18]
mov edx, dword [rax]
mov dword [rcx + r9*4 + 0x170], edx
cmp r10d, 1
jne 0x1400a18be
call fcn.14007c750
mov r10d, dword [rsp + 0x58]
mov rax, qword [rsi]
xor r9d, r9d
mov r8d, dword [rsi + 0x3c]
mov edx, r10d
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.140073380
test byte [rsi + 0x48], 0x20
je 0x1400a18f9
mov rdi, qword [rsi + 0x10]
test rdi, rdi
je 0x1400a18f9
mov eax, dword [rdi + 0x64]
and al, 3
cmp al, 2
je 0x1400a18f9
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x1400a18e7
mov rax, qword [rsi + 0x10]
test rax, rax
je 0x1400a192f
test byte [rax + 0x64], 4
jne 0x1400a1926
movzx ecx, word [rax + 0x5c]
cmp cx, word [rsi + 0x46]
jge 0x1400a1926
cmp qword [rax + 0x48], r13
jne 0x1400a1926
test rdi, rdi
je 0x1400a1923
cmp cx, word [rdi + 0x5c]
jge 0x1400a1926
mov rdi, rax
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1400a1902
test rdi, rdi
je 0x1400a194a
mov eax, dword [rdi + 0x58]
mov rdx, rdi
mov rcx, r15
mov dword [rsp + 0x54], eax
call fcn.14007d530
mov qword [rbp - 0x80], rax
mov ecx, dword [rsp + 0x58]
mov edx, 0x36
mov r9d, dword [rsp + 0x54]
mov r8d, dword [rbp + 0x98]
mov dword [rsp + 0x20], ecx
mov rcx, r12
call fcn.140050c60
mov r9d, 0xfffffff2
mov r8d, 1
mov edx, eax
mov rcx, r12
call fcn.140051290
mov rax, qword [rbp - 0x80]
test rax, rax
je 0x1400a19a0
mov r9d, 0xfffffffa
mov r8, rax
mov edx, 0xffffffff
mov rcx, r12
call fcn.140051290
mov r9, qword [rbp + 0x50]
mov edx, 0x32
mov r8d, dword [rbp + 0x98]
mov rcx, r12
mov dword [rsp + 0x20], r14d
mov r9d, dword [r9 + 0x10]
call fcn.140050c60
mov r8d, dword [rbp + 0x98]
xor r9d, r9d
mov edx, 0x3d
mov dword [rsp + 0x20], r14d
mov rcx, r12
call fcn.140050c60
cmp byte [r15 + 0x1f2], 2
jne 0x1400a2208
lea r9, [0x1400c8b81]
test rdi, rdi
je 0x1400a1a0b
test byte [rsi + 0x48], 0x20
je 0x1400a1a06
mov eax, dword [rdi + 0x64]
and al, 3
cmp al, 2
je 0x1400a1a0b
mov rax, qword [rdi]
jmp 0x1400a1a12
mov dword [rbp - 0x78], r14d
mov rax, r9
cmp dword [rbp - 0x78], r13d
lea rcx, str._USING_COVERING_INDEX
mov r8, qword [rsi]
lea rdx, str.SCAN_TABLE__s_s_s
cmovne r9, rcx
mov qword [rsp + 0x20], rax
mov rcx, qword [r15]
call fcn.14002fe30
mov rsi, qword [r15 + 0x10]
xor r9d, r9d
mov r8d, dword [r15 + 0x200]
mov rcx, rsi
mov edx, 0x9b
mov dword [rsp + 0x20], r14d
mov rdi, rax
call fcn.140050c60
mov r9d, 0xffffffff
mov r8, rdi
mov edx, eax
mov rcx, rsi
call fcn.140051290
jmp 0x1400a2208
mov rsi, r14
mov byte [rsp + 0x50], sil
cmp qword [rdi + 0x40], r14
jne 0x1400a1ccb
mov dword [rsp + 0x50], r14d
mov r11d, r14d
mov qword [rbp - 0x78], r14
cmp r8d, 1
jne 0x1400a1b9d
mov rax, qword [rbp + 0x50]
mov rdx, qword [rax]
mov r10, qword [rdx + 0x20]
test r10, r10
je 0x1400a1b97
cmp dword [r10], r8d
jne 0x1400a1b97
mov rax, qword [r10 + 8]
mov rcx, qword [rax]
cmp byte [rcx], 0x9c
jne 0x1400a1b97
mov rdx, qword [rdx + 8]
lea r8, [0x1400ce6c4]
mov r9, rdx
movzx ecx, byte [rdx]
test cl, cl
je 0x1400a1b13
lea rbx, [0x1400d2790]
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r8]
movzx ecx, cl
movzx eax, byte [rax + rbx]
cmp byte [rcx + rbx], al
jne 0x1400a1b0f
movzx ecx, byte [r9 + 1]
inc r9
inc r8
test cl, cl
jne 0x1400a1af0
mov rbx, qword [rbp - 0x30]
movzx eax, byte [r8]
lea rcx, [0x1400d2790]
movzx ecx, byte [rax + rcx]
movzx eax, byte [r9]
lea r9, [0x1400d2790]
movzx eax, byte [rax + r9]
cmp eax, ecx
jne 0x1400a1b3e
mov r11d, 1
jmp 0x1400a1b8b
movzx eax, byte [rdx]
lea r8, [0x1400ce6c8]
test al, al
je 0x1400a1b70
nop dword [rax]
movzx ecx, al
movzx eax, byte [r8]
movzx eax, byte [rax + r9]
cmp byte [rcx + r9], al
jne 0x1400a1b70
movzx eax, byte [rdx + 1]
inc rdx
inc r8
test al, al
jne 0x1400a1b50
movzx eax, byte [r8]
movzx ecx, byte [rax + r9]
movzx eax, byte [rdx]
movzx eax, byte [rax + r9]
cmp eax, ecx
jne 0x1400a1b97
mov r11d, 2
mov qword [rbp - 0x78], r10
mov rsi, r10
mov dword [rsp + 0x50], r11d
mov r10d, 0x10
test r11b, r11b
je 0x1400a1ccb
test rsi, rsi
je 0x1400a1cc8
cmp byte [rbx + 0x50], r13b
jne 0x1400a1cc5
cmp byte [rbx + 0x14a], r13b
je 0x1400a1bd2
cmp r10w, word [rbx + 0x148]
jbe 0x1400a1c26
inc dword [rbx + 0x158]
mov rcx, r10
call fcn.14002d7e0
mov qword [rbp - 0x80], rax
mov r13, rax
test rax, rax
jne 0x1400a1bea
mov byte [rbx + 0x50], 1
mov rdx, r13
test r13, r13
je 0x1400a1cc5
mov eax, dword [rsi]
mov dword [r13], eax
mov eax, 1
mov ecx, dword [rsi]
cmp ecx, eax
jle 0x1400a1c0d
add eax, eax
cmp eax, ecx
jl 0x1400a1c07
cdqe
lea rcx, [rax + rax*4]
shl rcx, 3
cmp byte [rbx + 0x50], r14b
je 0x1400a1c70
mov qword [rdx + 8], r14
jmp 0x1400a1cad
mov r13, qword [rbx + 0x160]
mov qword [rbp - 0x80], r13
test r13, r13
jne 0x1400a1c3e
inc dword [rbx + 0x15c]
jmp 0x1400a1bd2
mov rax, qword [r13]
mov qword [rbx + 0x160], rax
mov eax, dword [rbx + 0x14c]
inc eax
mov dword [rbx + 0x14c], eax
inc dword [rbx + 0x154]
cmp eax, dword [rbx + 0x150]
jle 0x1400a1c6b
mov dword [rbx + 0x150], eax
mov rdx, r13
jmp 0x1400a1bf6
cmp byte [rbx + 0x14a], r14b
je 0x1400a1c8f
movzx eax, word [rbx + 0x148]
cmp rcx, rax
jbe 0x1400a1d57
inc dword [rbx + 0x158]
call fcn.14002d7e0
mov rsi, rax
test rax, rax
jne 0x1400a1ca0
mov byte [rbx + 0x50], 1
mov qword [r13 + 8], rax
test rax, rax
jne 0x1400a1d9e
cmp qword [rbx + 0x320], r14
je 0x1400a1de7
mov rdx, r13
mov rcx, rbx
call fcn.14002dcd0
mov r13, r14
mov rsi, r14
lea rdx, [rbp + 0x20]
mov rcx, r15
call fcn.14009fc10
movzx eax, byte [rsp + 0x50]
mov r9, rsi
mov r8, qword [rbp - 0x50]
mov rcx, r15
mov rdx, qword [rbp - 0x60]
mov dword [rsp + 0x30], r14d
mov word [rsp + 0x28], ax
mov qword [rsp + 0x20], r14
call fcn.1400b5040
mov rsi, rax
test rax, rax
jne 0x1400a215c
test r13, r13
je 0x1400a03c0
mov rdi, qword [r13 + 8]
cmp dword [r13], r14d
jle 0x1400a20b6
mov rdx, qword [rdi]
mov rcx, rbx
call fcn.140066fc0
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x1400a2055
cmp qword [rbx + 0x320], 0
je 0x1400a2025
mov rdx, rcx
mov rcx, rbx
call fcn.14002dcd0
jmp 0x1400a2055
mov rsi, qword [rbx + 0x160]
test rsi, rsi
jne 0x1400a1d6e
inc dword [rbx + 0x15c]
jmp 0x1400a1c8f
mov rax, qword [rsi]
mov qword [rbx + 0x160], rax
mov eax, dword [rbx + 0x14c]
inc eax
mov dword [rbx + 0x14c], eax
inc dword [rbx + 0x154]
cmp eax, dword [rbx + 0x150]
jle 0x1400a1d9a
mov dword [rbx + 0x150], eax
mov qword [rdx + 8], rsi
mov rcx, qword [rbp - 0x78]
mov rax, qword [rcx + 8]
cmp dword [rcx], r14d
jle 0x1400a1ffa
add rsi, 0x1c
mov r15, rax
mov r12, rcx
mov r13d, r14d
nop dword [rax]
mov rdx, qword [r15]
xor r8d, r8d
mov rcx, rbx
call fcn.1400678c0
mov qword [rsi - 0x1c], rax
mov rcx, qword [r15 + 8]
mov qword [rbp - 0x58], rcx
test rcx, rcx
jne 0x1400a1e23
mov rdi, r14
jmp 0x1400a1edd
cmp r13, qword [rbx + 0x168]
jb 0x1400a1e16
cmp r13, qword [rbx + 0x170]
jae 0x1400a1e16
mov rax, qword [rbx + 0x160]
mov qword [r13], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], r13
jmp 0x1400a1cc5
mov rcx, r13
call fcn.14002dc30
jmp 0x1400a1cc5
mov rax, rcx
cmp byte [rcx], r14b
je 0x1400a1e38
nop dword [rax + rax]
inc rax
cmp byte [rax], r14b
jne 0x1400a1e30
sub eax, ecx
and eax, 0x3fffffff
lea edx, [rax + 1]
mov qword [rbp - 0x30], rdx
cmp byte [rbx + 0x50], r14b
je 0x1400a1e54
mov rdi, r14
jmp 0x1400a1edd
cmp byte [rbx + 0x14a], r14b
je 0x1400a1e6f
movzx eax, word [rbx + 0x148]
cmp rdx, rax
jbe 0x1400a1e85
inc dword [rbx + 0x158]
mov rcx, rdx
call fcn.14002d7e0
mov rdi, rax
test rax, rax
jne 0x1400a1ec7
mov byte [rbx + 0x50], 1
jmp 0x1400a1edd
mov rdi, qword [rbx + 0x160]
test rdi, rdi
jne 0x1400a1e99
inc dword [rbx + 0x15c]
jmp 0x1400a1e6f
mov rax, qword [rdi]
mov qword [rbx + 0x160], rax
mov eax, dword [rbx + 0x14c]
inc eax
mov dword [rbx + 0x14c], eax
inc dword [rbx + 0x154]
cmp eax, dword [rbx + 0x150]
jle 0x1400a1ecf
mov dword [rbx + 0x150], eax
jmp 0x1400a1ecf
mov rcx, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x30]
mov r8, rdx
mov rdx, rcx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsi - 0x14], rdi
mov rcx, qword [r15 + 0x10]
mov qword [rbp - 0x58], rcx
test rcx, rcx
jne 0x1400a1ef6
mov rdi, r14
jmp 0x1400a1fad
mov rax, rcx
cmp byte [rcx], r14b
je 0x1400a1f08
nop
inc rax
cmp byte [rax], r14b
jne 0x1400a1f00
sub eax, ecx
and eax, 0x3fffffff
lea edx, [rax + 1]
mov qword [rbp - 0x30], rdx
cmp byte [rbx + 0x50], r14b
je 0x1400a1f24
mov rdi, r14
jmp 0x1400a1fad
cmp byte [rbx + 0x14a], r14b
je 0x1400a1f3f
movzx eax, word [rbx + 0x148]
cmp rdx, rax
jbe 0x1400a1f55
inc dword [rbx + 0x158]
mov rcx, rdx
call fcn.14002d7e0
mov rdi, rax
test rax, rax
jne 0x1400a1f97
mov byte [rbx + 0x50], 1
jmp 0x1400a1fad
mov rdi, qword [rbx + 0x160]
test rdi, rdi
jne 0x1400a1f69
inc dword [rbx + 0x15c]
jmp 0x1400a1f3f
mov rax, qword [rdi]
mov qword [rbx + 0x160], rax
mov eax, dword [rbx + 0x14c]
inc eax
mov dword [rbx + 0x14c], eax
inc dword [rbx + 0x154]
cmp eax, dword [rbx + 0x150]
jle 0x1400a1f9f
mov dword [rbx + 0x150], eax
jmp 0x1400a1f9f
mov rcx, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x30]
mov r8, rdx
mov rdx, rcx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [rsi]
inc r13d
mov qword [rsi - 0xc], rdi
and ecx, 0xfffffffe
movzx eax, byte [r15 + 0x18]
mov byte [rsi - 4], al
mov eax, ecx
mov dword [rsi], ecx
xor eax, dword [r15 + 0x1c]
and eax, 2
xor eax, ecx
mov dword [rsi], eax
mov eax, dword [r15 + 0x20]
add r15, 0x28
mov dword [rsi + 4], eax
add rsi, 0x28
cmp r13d, dword [r12]
jl 0x1400a1dc0
mov r15, qword [rbp - 0x18]
mov r12, qword [rbp - 0x38]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x68]
mov rsi, r13
cmp byte [rbx + 0x50], r14b
jne 0x1400a1ccb
mov rax, qword [r13 + 8]
cmp byte [rsp + 0x50], 1
setne cl
mov byte [rax + 0x18], cl
mov rax, qword [r13 + 8]
mov rcx, qword [rax]
mov byte [rcx], 0x9a
jmp 0x1400a1ccb
cmp rcx, qword [rbx + 0x168]
jb 0x1400a2050
cmp rcx, qword [rbx + 0x170]
jae 0x1400a2050
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400a2055
call fcn.14002dc30
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x1400a20a5
cmp qword [rbx + 0x320], 0
je 0x1400a2075
mov rdx, rcx
mov rcx, rbx
call fcn.14002dcd0
jmp 0x1400a20a5
cmp rcx, qword [rbx + 0x168]
jb 0x1400a20a0
cmp rcx, qword [rbx + 0x170]
jae 0x1400a20a0
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400a20a5
call fcn.14002dc30
inc r14d
add rdi, 0x28
cmp r14d, dword [r13]
jl 0x1400a1d21
mov rcx, qword [r13 + 8]
test rcx, rcx
je 0x1400a2106
cmp qword [rbx + 0x320], 0
je 0x1400a20d6
mov rdx, rcx
mov rcx, rbx
call fcn.14002dcd0
jmp 0x1400a2106
cmp rcx, qword [rbx + 0x168]
jb 0x1400a2101
cmp rcx, qword [rbx + 0x170]
jae 0x1400a2101
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400a2106
call fcn.14002dc30
cmp qword [rbx + 0x320], 0
je 0x1400a2120
mov rdx, r13
mov rcx, rbx
call fcn.14002dcd0
jmp 0x1400a03c0
cmp r13, qword [rbx + 0x168]
jb 0x1400a214f
cmp r13, qword [rbx + 0x170]
jae 0x1400a214f
mov rax, qword [rbx + 0x160]
mov qword [r13], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], r13
jmp 0x1400a03c0
mov rcx, r13
call fcn.14002dc30
jmp 0x1400a03c0
lea rdx, [rbp + 0x20]
mov rcx, r15
call fcn.14009fd10
cmp byte [rsi + 0x34], r14b
jle 0x1400a2187
mov r9d, dword [rsi + 0x44]
xor r8d, r8d
mov edx, 0x10
mov dword [rsp + 0x20], r14d
mov rcx, r12
call fcn.140050c60
mov rcx, rsi
call fcn.1400b5a60
mov rax, qword [r15 + 0x10]
mov dword [rsp + 0x54], r14d
cmp dword [rbp + 0x58], r14d
jle 0x1400a220d
mov rsi, qword [rbp + 0x50]
mov r15, rax
add rsi, 0x10
nop dword [rax]
mov rax, qword [rsi - 0x10]
mov rcx, qword [rax + 0x20]
test rcx, rcx
je 0x1400a21c2
mov r9d, dword [rcx]
jmp 0x1400a21c5
mov r9d, r14d
mov r8d, dword [rsi]
mov edx, 0x8c
mov rdi, qword [rsi - 8]
mov rcx, r15
mov dword [rsp + 0x20], r14d
call fcn.140050c60
mov r9d, 0xfffffffb
mov r8, rdi
mov edx, eax
mov rcx, r15
call fcn.140051290
mov edx, dword [rsp + 0x54]
add rsi, 0x18
inc edx
mov dword [rsp + 0x54], edx
cmp edx, dword [rbp + 0x58]
jl 0x1400a21b0
mov r15, qword [rbp - 0x18]
mov rdi, qword [rsp + 0x68]
mov esi, dword [rsp + 0x5c]
mov r9d, 0x10
mov rdx, qword [rbp - 0x28]
mov r8d, esi
mov rcx, r15
mov qword [rbp - 8], r14
call fcn.14006cfc0
mov rax, qword [rbp - 0x68]
mov r9d, 0xffffffff
mov r8, qword [rdi]
mov rdx, rdi
mov dword [rsp + 0x40], esi
mov rcx, r15
mov dword [rsp + 0x38], esi
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r14
call fcn.140097b60
test r13, r13
je 0x1400a23c5
mov esi, r14d
mov rdi, qword [r13 + 8]
cmp dword [r13], r14d
jle 0x1400a232c
mov rdx, qword [rdi]
mov rcx, rbx
call fcn.140066fc0
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x1400a22cd
cmp qword [rbx + 0x320], r14
je 0x1400a229d
mov rdx, rcx
mov rcx, rbx
call fcn.14002dcd0
jmp 0x1400a22cd
cmp rcx, qword [rbx + 0x168]
jb 0x1400a22c8
cmp rcx, qword [rbx + 0x170]
jae 0x1400a22c8
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400a22cd
call fcn.14002dc30
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x1400a231c
cmp qword [rbx + 0x320], r14
je 0x1400a22ec
mov rdx, rcx
mov rcx, rbx
call fcn.14002dcd0
jmp 0x1400a231c
cmp rcx, qword [rbx + 0x168]
jb 0x1400a2317
cmp rcx, qword [rbx + 0x170]
jae 0x1400a2317
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400a231c
call fcn.14002dc30
inc esi
add rdi, 0x28
cmp esi, dword [r13]
jl 0x1400a2273
mov rcx, qword [r13 + 8]
test rcx, rcx
je 0x1400a237b
cmp qword [rbx + 0x320], r14
je 0x1400a234b
mov rdx, rcx
mov rcx, rbx
call fcn.14002dcd0
jmp 0x1400a237b
cmp rcx, qword [rbx + 0x168]
jb 0x1400a2376
cmp rcx, qword [rbx + 0x170]
jae 0x1400a2376
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400a237b
call fcn.14002dc30
cmp qword [rbx + 0x320], r14
je 0x1400a2391
mov rdx, r13
mov rcx, rbx
call fcn.14002dcd0
jmp 0x1400a23c5
cmp r13, qword [rbx + 0x168]
jb 0x1400a23bd
cmp r13, qword [rbx + 0x170]
jae 0x1400a23bd
mov rax, qword [rbx + 0x160]
mov qword [r13], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], r13
jmp 0x1400a23c5
mov rcx, r13
call fcn.14002dc30
mov r13, qword [rsp + 0x68]
mov eax, dword [rsp + 0x5c]
mov r9, qword [r12 + 0x30]
not eax
test eax, eax
js 0x1400a23f0
mov rdx, qword [r9 + 0x80]
test rdx, rdx
je 0x1400a23f0
movsxd rcx, eax
mov eax, dword [r12 + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [r12 + 0x3c]
dec eax
mov dword [r9 + 0x64], eax
cmp byte [rbp + 0xa1], 3
jne 0x1400a245a
cmp byte [r15 + 0x1f2], 2
jne 0x1400a245a
mov rcx, qword [r15]
lea r8, str.DISTINCT
mov rsi, qword [r15 + 0x10]
lea rdx, str.USE_TEMP_B_TREE_FOR__s
call fcn.14002fe30
mov r8d, dword [r15 + 0x200]
xor r9d, r9d
mov edx, 0x9b
mov dword [rsp + 0x20], r14d
mov rcx, rsi
mov rdi, rax
call fcn.140050c60
mov r9d, 0xffffffff
mov r8, rdi
mov edx, eax
mov rcx, rsi
call fcn.140051290
cmp qword [rbp - 8], r14
je 0x1400a24eb
cmp dword [rbp], r14d
lea rax, str.RIGHT_PART_OF_ORDER_BY
lea r8, str.ORDER_BY
cmovg r8, rax
cmp byte [r15 + 0x1f2], 2
jne 0x1400a24c9
mov rcx, qword [r15]
lea rdx, str.USE_TEMP_B_TREE_FOR__s
mov rsi, qword [r15 + 0x10]
call fcn.14002fe30
mov r8d, dword [r15 + 0x200]
xor r9d, r9d
mov edx, 0x9b
mov dword [rsp + 0x20], r14d
mov rcx, rsi
mov rdi, rax
call fcn.140050c60
mov r9d, 0xffffffff
mov r8, rdi
mov edx, eax
mov rcx, rsi
call fcn.140051290
mov rax, qword [rbp - 0x68]
lea r8, [rbp - 8]
mov rsi, qword [rsp + 0x78]
mov rdx, r13
mov rcx, r15
mov qword [rsp + 0x20], rax
mov r9d, dword [rsi]
call fcn.140098980
jmp 0x1400a24f0
mov rsi, qword [rsp + 0x78]
mov eax, dword [rbp - 0x10]
mov r8, qword [r12 + 0x30]
not eax
test eax, eax
js 0x1400a2515
mov rdx, qword [r8 + 0x80]
test rdx, rdx
je 0x1400a2515
movsxd rcx, eax
mov eax, dword [r12 + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [r12 + 0x3c]
mov edi, r14d
mov ecx, dword [rsp + 0x70]
dec eax
mov dword [r8 + 0x64], eax
mov rax, qword [rbp - 0x68]
mov dword [r15 + 0x200], ecx
cmp byte [rax], 9
jne 0x1400a03d0
mov rdx, qword [rbp - 0x60]
mov r8, rsi
mov rcx, r15
call fcn.1400990d0
jmp 0x1400a03d0
cmp rcx, qword [rbx + 0x168]
jb 0x1400a257a
cmp rcx, qword [rbx + 0x170]
jae 0x1400a257a
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400a257f
call fcn.14002dc30
mov rcx, qword [rbp + 0x50]
test rcx, rcx
je 0x1400a25db
cmp qword [rbx + 0x320], 0
je 0x1400a25a1
mov rdx, rcx
mov rcx, rbx
call fcn.14002dcd0
mov eax, edi
jmp 0x1400a25e2
mov rcx, qword [rbp + 0x50]
cmp rcx, qword [rbx + 0x168]
jb 0x1400a25d2
cmp rcx, qword [rbx + 0x170]
jae 0x1400a25d2
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
mov eax, edi
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400a25e2
mov rcx, qword [rbp + 0x50]
call fcn.14002dc30
mov eax, edi
jmp 0x1400a25e2
mov eax, r12d
mov rcx, qword [rbp + 0xc8]
xor rcx, rsp
call fcn.1400c3af0
mov rbx, qword [rsp + 0x228]
add rsp, 0x1d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret